voyager-ionic-core 7.7.3 → 8.0.0-beta.2

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 (1003) hide show
  1. package/components/action-sheet.js +6 -6
  2. package/components/alert.js +4 -4
  3. package/components/backdrop.js +1 -13
  4. package/components/button-active.js +1 -1
  5. package/components/button.js +4 -4
  6. package/components/buttons.js +3 -3
  7. package/components/checkbox.js +8 -80
  8. package/components/data.js +24 -39
  9. package/components/gesture-controller.js +1 -1
  10. package/components/hardware-back-button.js +3 -3
  11. package/components/helpers.js +2 -9
  12. package/components/index9.js +1 -1
  13. package/components/input-shims.js +8 -1
  14. package/components/input.utils.js +12 -0
  15. package/components/ion-accordion-group.js +1 -1
  16. package/components/ion-app.js +4 -4
  17. package/components/ion-avatar.js +1 -1
  18. package/components/ion-back-button.js +3 -3
  19. package/components/ion-badge.js +4 -4
  20. package/components/ion-breadcrumb.js +4 -4
  21. package/components/ion-breadcrumbs.js +2 -2
  22. package/components/ion-card-content.js +1 -1
  23. package/components/ion-card-header.js +2 -2
  24. package/components/ion-card-subtitle.js +4 -4
  25. package/components/ion-card-title.js +3 -3
  26. package/components/ion-card.js +3 -3
  27. package/components/ion-chip.js +2 -2
  28. package/components/ion-col.js +2 -2
  29. package/components/ion-content.js +5 -6
  30. package/components/ion-datetime-button.js +15 -14
  31. package/components/ion-datetime.js +109 -111
  32. package/components/ion-fab-button.js +4 -4
  33. package/components/ion-fab-list.js +3 -3
  34. package/components/ion-fab.js +2 -2
  35. package/components/ion-footer.js +3 -3
  36. package/components/ion-grid.js +2 -2
  37. package/components/ion-header.js +3 -3
  38. package/components/ion-img.js +1 -1
  39. package/components/ion-infinite-scroll-content.js +4 -4
  40. package/components/ion-infinite-scroll.js +1 -1
  41. package/components/ion-input.js +7 -93
  42. package/components/ion-item-divider.js +4 -4
  43. package/components/ion-item-group.js +1 -1
  44. package/components/ion-item-option.js +4 -4
  45. package/components/ion-item-options.js +4 -4
  46. package/components/ion-item-sliding.js +2 -2
  47. package/components/ion-loading.js +4 -4
  48. package/components/ion-menu-button.js +3 -3
  49. package/components/ion-menu-toggle.js +2 -2
  50. package/components/ion-menu.js +29 -44
  51. package/components/ion-modal.js +43 -28
  52. package/components/ion-nav-link.js +1 -1
  53. package/components/ion-nav.js +9 -5
  54. package/components/ion-note.js +43 -1
  55. package/components/ion-picker-column-option.d.ts +11 -0
  56. package/components/ion-picker-column-option.js +9 -0
  57. package/components/ion-picker-column.js +2 -2
  58. package/components/ion-picker-legacy-column.d.ts +11 -0
  59. package/components/ion-picker-legacy-column.js +9 -0
  60. package/components/{ion-picker-internal.d.ts → ion-picker-legacy.d.ts} +4 -4
  61. package/components/ion-picker-legacy.js +321 -0
  62. package/components/ion-picker.js +1 -315
  63. package/components/ion-progress-bar.js +7 -4
  64. package/components/ion-range.js +160 -109
  65. package/components/ion-refresher-content.js +1 -1
  66. package/components/ion-refresher.js +4 -4
  67. package/components/ion-reorder-group.js +1 -1
  68. package/components/ion-reorder.js +1 -1
  69. package/components/ion-router-link.js +3 -3
  70. package/components/ion-router-outlet.js +2 -2
  71. package/components/ion-router.js +1 -1
  72. package/components/ion-row.js +1 -1
  73. package/components/ion-searchbar.js +36 -7
  74. package/components/ion-segment-button.js +5 -5
  75. package/components/ion-segment.js +2 -2
  76. package/components/ion-select-option.js +1 -1
  77. package/components/ion-select.js +83 -183
  78. package/components/ion-skeleton-text.js +2 -2
  79. package/components/ion-split-pane.js +28 -17
  80. package/components/ion-tab-bar.js +4 -4
  81. package/components/ion-tab-button.js +4 -4
  82. package/components/ion-tab.js +2 -2
  83. package/components/ion-tabs.js +1 -1
  84. package/components/ion-text.js +2 -2
  85. package/components/ion-textarea.js +7 -70
  86. package/components/ion-thumbnail.js +1 -1
  87. package/components/ion-title.js +3 -3
  88. package/components/ion-toast.js +12 -6
  89. package/components/ion-toggle.js +7 -64
  90. package/components/ion-toolbar.js +4 -4
  91. package/components/item.js +29 -95
  92. package/components/label.js +5 -5
  93. package/components/list-header.js +4 -4
  94. package/components/list.js +2 -2
  95. package/components/overlays.js +151 -59
  96. package/components/picker-column-option.js +124 -0
  97. package/components/picker-column.js +367 -324
  98. package/components/picker-column2.js +381 -0
  99. package/components/{picker-internal.js → picker.js} +33 -26
  100. package/components/popover.js +6 -6
  101. package/components/radio-group.js +1 -1
  102. package/components/radio.js +8 -81
  103. package/components/refresher.utils.js +1 -1
  104. package/components/ripple-effect.js +1 -1
  105. package/components/select-popover.js +14 -20
  106. package/components/spinner.js +1 -1
  107. package/components/swipe-back.js +1 -1
  108. package/css/core.css +90 -27
  109. package/css/core.css.map +1 -1
  110. package/css/display.css.map +1 -1
  111. package/css/float-elements.css.map +1 -1
  112. package/css/global.bundle.css +1 -1
  113. package/css/global.bundle.css.map +1 -1
  114. package/css/ionic-swiper.css.map +1 -1
  115. package/css/ionic.bundle.css +1 -1
  116. package/css/ionic.bundle.css.map +1 -1
  117. package/css/padding.css.map +1 -1
  118. package/css/structure.css.map +1 -1
  119. package/css/text-alignment.css.map +1 -1
  120. package/css/text-transformation.css.map +1 -1
  121. package/css/themes/dark.always.css +160 -0
  122. package/css/themes/dark.always.css.map +1 -0
  123. package/css/themes/dark.class.css +160 -0
  124. package/css/themes/dark.class.css.map +1 -0
  125. package/css/themes/dark.css +3 -0
  126. package/css/themes/dark.css.map +1 -0
  127. package/css/themes/dark.system.css +162 -0
  128. package/css/themes/dark.system.css.map +1 -0
  129. package/css/themes/high-contrast-dark.always.css +180 -0
  130. package/css/themes/high-contrast-dark.always.css.map +1 -0
  131. package/css/themes/high-contrast-dark.class.css +180 -0
  132. package/css/themes/high-contrast-dark.class.css.map +1 -0
  133. package/css/themes/high-contrast-dark.css +3 -0
  134. package/css/themes/high-contrast-dark.css.map +1 -0
  135. package/css/themes/high-contrast-dark.system.css +182 -0
  136. package/css/themes/high-contrast-dark.system.css.map +1 -0
  137. package/css/themes/high-contrast.always.css +101 -0
  138. package/css/themes/high-contrast.always.css.map +1 -0
  139. package/css/themes/high-contrast.class.css +101 -0
  140. package/css/themes/high-contrast.class.css.map +1 -0
  141. package/css/themes/high-contrast.css +3 -0
  142. package/css/themes/high-contrast.css.map +1 -0
  143. package/css/themes/high-contrast.system.css +103 -0
  144. package/css/themes/high-contrast.system.css.map +1 -0
  145. package/css/typography.css +1 -1
  146. package/css/typography.css.map +1 -1
  147. package/css/utils.bundle.css.map +1 -1
  148. package/dist/cjs/{animation-c2840aea.js → animation-3e7bb91e.js} +1 -1
  149. package/dist/cjs/{app-globals-92ad1b3d.js → app-globals-e132c781.js} +1 -1
  150. package/dist/cjs/{button-active-2d6520ec.js → button-active-60ecf64d.js} +3 -3
  151. package/dist/cjs/{data-a5109f09.js → data-21dc0f81.js} +23 -40
  152. package/dist/cjs/{framework-delegate-e0e13baa.js → framework-delegate-0499d444.js} +1 -1
  153. package/dist/cjs/{gesture-controller-c40c045a.js → gesture-controller-9436f482.js} +1 -0
  154. package/dist/cjs/{hardware-back-button-2696acaf.js → hardware-back-button-1c67a5a2.js} +5 -5
  155. package/dist/cjs/{helpers-da4c0ed1.js → helpers-668b3d95.js} +1 -9
  156. package/dist/cjs/{index-62290fec.js → index-275cc12e.js} +1 -1
  157. package/dist/cjs/{index-0ffe376d.js → index-2d21d526.js} +443 -14
  158. package/dist/cjs/{index-4c96691f.js → index-ba7ba0af.js} +4 -4
  159. package/dist/cjs/{index-bef98850.js → index-c49cb371.js} +1 -1
  160. package/dist/cjs/{index-9bfcb6e8.js → index-e4b6c97e.js} +4 -4
  161. package/dist/cjs/{index-d1b59ffa.js → index-ee07ed59.js} +1 -1
  162. package/dist/cjs/index.cjs.js +13 -13
  163. package/dist/cjs/{input-shims-a9a85bb9.js → input-shims-b419f083.js} +10 -3
  164. package/dist/cjs/{input.utils-d7dca90f.js → input.utils-32c0a14a.js} +13 -1
  165. package/dist/cjs/ion-accordion_2.cjs.entry.js +4 -4
  166. package/dist/cjs/ion-action-sheet.cjs.entry.js +16 -16
  167. package/dist/cjs/ion-alert.cjs.entry.js +14 -14
  168. package/dist/cjs/ion-app_8.cjs.entry.js +33 -34
  169. package/dist/cjs/ion-avatar_3.cjs.entry.js +8 -8
  170. package/dist/cjs/ion-back-button.cjs.entry.js +6 -6
  171. package/dist/cjs/ion-backdrop.cjs.entry.js +3 -15
  172. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +9 -9
  173. package/dist/cjs/ion-button_2.cjs.entry.js +7 -7
  174. package/dist/cjs/ion-card_5.cjs.entry.js +16 -16
  175. package/dist/cjs/ion-checkbox.cjs.entry.js +9 -77
  176. package/dist/cjs/ion-chip.cjs.entry.js +4 -4
  177. package/dist/cjs/ion-col_3.cjs.entry.js +7 -7
  178. package/dist/cjs/ion-datetime-button.cjs.entry.js +18 -17
  179. package/dist/cjs/ion-datetime_3.cjs.entry.js +120 -115
  180. package/dist/cjs/ion-fab_3.cjs.entry.js +12 -12
  181. package/dist/cjs/ion-img.cjs.entry.js +4 -4
  182. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +9 -9
  183. package/dist/cjs/ion-input.cjs.entry.js +12 -92
  184. package/dist/cjs/ion-item-option_3.cjs.entry.js +13 -13
  185. package/dist/cjs/ion-item_8.cjs.entry.js +48 -102
  186. package/dist/cjs/ion-loading.cjs.entry.js +12 -11
  187. package/dist/cjs/ion-menu_3.cjs.entry.js +40 -56
  188. package/dist/cjs/ion-modal.cjs.entry.js +53 -38
  189. package/dist/cjs/ion-nav_2.cjs.entry.js +13 -10
  190. package/dist/cjs/ion-picker-column-option.cjs.entry.js +106 -0
  191. package/dist/cjs/{ion-picker-column-internal.cjs.entry.js → ion-picker-column.cjs.entry.js} +124 -93
  192. package/dist/cjs/{ion-picker-internal.cjs.entry.js → ion-picker.cjs.entry.js} +32 -25
  193. package/dist/cjs/ion-popover.cjs.entry.js +13 -12
  194. package/dist/cjs/ion-progress-bar.cjs.entry.js +9 -6
  195. package/dist/cjs/ion-radio_2.cjs.entry.js +10 -79
  196. package/dist/cjs/ion-range.cjs.entry.js +163 -111
  197. package/dist/cjs/ion-refresher_2.cjs.entry.js +12 -12
  198. package/dist/cjs/ion-reorder_2.cjs.entry.js +7 -7
  199. package/dist/cjs/ion-ripple-effect.cjs.entry.js +3 -3
  200. package/dist/cjs/ion-route_4.cjs.entry.js +6 -6
  201. package/dist/cjs/ion-searchbar.cjs.entry.js +33 -9
  202. package/dist/cjs/ion-segment_2.cjs.entry.js +11 -11
  203. package/dist/cjs/ion-select_3.cjs.entry.js +78 -169
  204. package/dist/cjs/ion-spinner.cjs.entry.js +3 -3
  205. package/dist/cjs/ion-split-pane.cjs.entry.js +28 -18
  206. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +11 -11
  207. package/dist/cjs/ion-tab_2.cjs.entry.js +6 -6
  208. package/dist/cjs/ion-text.cjs.entry.js +4 -4
  209. package/dist/cjs/ion-textarea.cjs.entry.js +11 -71
  210. package/dist/cjs/ion-toast.cjs.entry.js +20 -14
  211. package/dist/cjs/ion-toggle.cjs.entry.js +10 -66
  212. package/dist/cjs/{ionic-global-59a10130.js → ionic-global-5762eca9.js} +1 -1
  213. package/dist/cjs/ionic.cjs.js +28 -5
  214. package/dist/cjs/{ios.transition-96679580.js → ios.transition-3e119901.js} +4 -4
  215. package/dist/cjs/loader.cjs.js +4 -4
  216. package/dist/cjs/{md.transition-d6c98822.js → md.transition-c1392f92.js} +4 -4
  217. package/dist/cjs/{notch-controller-bfbcbb7a.js → notch-controller-08a24f39.js} +1 -1
  218. package/dist/cjs/{overlays-db5d96f3.js → overlays-44b8d0e0.js} +153 -60
  219. package/dist/cjs/{status-tap-7ad5f0fb.js → status-tap-32430b3e.js} +3 -3
  220. package/dist/cjs/{swipe-back-dcd0d4a9.js → swipe-back-b8484483.js} +3 -3
  221. package/dist/collection/collection-manifest.json +8 -7
  222. package/dist/collection/components/accordion-group/accordion-group.md.css +4 -26
  223. package/dist/collection/components/action-sheet/action-sheet.ios.css +16 -9
  224. package/dist/collection/components/action-sheet/action-sheet.js +4 -4
  225. package/dist/collection/components/action-sheet/action-sheet.md.css +10 -3
  226. package/dist/collection/components/action-sheet/test/a11y/action-sheet.e2e.js +23 -14
  227. package/dist/collection/components/action-sheet/test/basic/action-sheet-rendering.e2e.js +19 -0
  228. package/dist/collection/components/action-sheet/test/basic/action-sheet.spec.js +22 -0
  229. package/dist/collection/components/alert/alert.ios.css +33 -80
  230. package/dist/collection/components/alert/alert.js +2 -2
  231. package/dist/collection/components/alert/alert.md.css +25 -121
  232. package/dist/collection/components/alert/test/a11y/alert.e2e.js +22 -9
  233. package/dist/collection/components/app/app.js +4 -4
  234. package/dist/collection/components/avatar/avatar.js +1 -1
  235. package/dist/collection/components/back-button/back-button.ios.css +1 -1
  236. package/dist/collection/components/back-button/back-button.js +2 -2
  237. package/dist/collection/components/back-button/test/a11y/back-button.e2e.js +21 -0
  238. package/dist/collection/components/backdrop/backdrop.js +1 -13
  239. package/dist/collection/components/badge/badge.ios.css +1 -1
  240. package/dist/collection/components/badge/badge.js +2 -2
  241. package/dist/collection/components/badge/badge.md.css +1 -1
  242. package/dist/collection/components/badge/test/a11y/badge.e2e.js +18 -0
  243. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +9 -9
  244. package/dist/collection/components/breadcrumb/breadcrumb.js +2 -2
  245. package/dist/collection/components/breadcrumb/breadcrumb.md.css +9 -9
  246. package/dist/collection/components/breadcrumbs/breadcrumbs.js +2 -2
  247. package/dist/collection/components/button/button.ios.css +11 -11
  248. package/dist/collection/components/button/button.js +2 -2
  249. package/dist/collection/components/button/button.md.css +9 -9
  250. package/dist/collection/components/button/test/a11y/button.e2e.js +48 -0
  251. package/dist/collection/components/button/test/wrap/button.e2e.js +12 -24
  252. package/dist/collection/components/buttons/buttons.js +2 -2
  253. package/dist/collection/components/card/card.ios.css +1 -1
  254. package/dist/collection/components/card/card.js +1 -1
  255. package/dist/collection/components/card/card.md.css +1 -1
  256. package/dist/collection/components/card-content/card-content.js +1 -1
  257. package/dist/collection/components/card-header/card-header.js +2 -2
  258. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +1 -1
  259. package/dist/collection/components/card-subtitle/card-subtitle.js +2 -2
  260. package/dist/collection/components/card-subtitle/card-subtitle.md.css +1 -1
  261. package/dist/collection/components/card-title/card-title.js +2 -2
  262. package/dist/collection/components/card-title/card-title.md.css +1 -1
  263. package/dist/collection/components/checkbox/checkbox.ios.css +10 -88
  264. package/dist/collection/components/checkbox/checkbox.js +5 -118
  265. package/dist/collection/components/checkbox/checkbox.md.css +7 -85
  266. package/dist/collection/components/checkbox/test/a11y/checkbox.e2e.js +11 -2
  267. package/dist/collection/components/checkbox/test/basic/checkbox.e2e.js +10 -0
  268. package/dist/collection/components/checkbox/test/checkbox.spec.js +12 -0
  269. package/dist/collection/components/chip/chip.js +2 -2
  270. package/dist/collection/components/col/col.js +2 -2
  271. package/dist/collection/components/content/content.css +0 -4
  272. package/dist/collection/components/content/content.js +3 -4
  273. package/dist/collection/components/datetime/datetime.ios.css +105 -117
  274. package/dist/collection/components/datetime/datetime.js +74 -83
  275. package/dist/collection/components/datetime/datetime.md.css +106 -114
  276. package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +1 -1
  277. package/dist/collection/components/datetime/test/a11y/datetime.spec.js +6 -9
  278. package/dist/collection/components/datetime/test/basic/datetime.e2e.js +90 -1
  279. package/dist/collection/components/datetime/test/datetime.e2e.js +2 -2
  280. package/dist/collection/components/datetime/test/disabled/datetime.spec.js +4 -4
  281. package/dist/collection/components/datetime/test/format.spec.js +65 -15
  282. package/dist/collection/components/datetime/test/locale/datetime.e2e.js +2 -2
  283. package/dist/collection/components/datetime/test/minmax/datetime.e2e.js +6 -6
  284. package/dist/collection/components/datetime/test/month-year-picker/datetime.e2e.js +1 -1
  285. package/dist/collection/components/datetime/test/prefer-wheel/datetime.e2e.js +43 -41
  286. package/dist/collection/components/datetime/test/presentation/datetime.e2e.js +1 -1
  287. package/dist/collection/components/datetime/test/readonly/datetime.e2e.js +4 -4
  288. package/dist/collection/components/datetime/test/values/datetime.e2e.js +15 -12
  289. package/dist/collection/components/datetime/utils/data.js +1 -1
  290. package/dist/collection/components/datetime/utils/format.js +24 -37
  291. package/dist/collection/components/datetime/utils/validate.js +45 -0
  292. package/dist/collection/components/datetime-button/datetime-button.ios.css +107 -0
  293. package/dist/collection/components/datetime-button/datetime-button.js +15 -14
  294. package/dist/collection/components/datetime-button/{datetime-button.css → datetime-button.md.css} +10 -7
  295. package/dist/collection/components/datetime-button/test/basic/datetime-button.e2e.js +77 -0
  296. package/dist/collection/components/fab/fab.js +2 -2
  297. package/dist/collection/components/fab-button/fab-button.ios.css +7 -7
  298. package/dist/collection/components/fab-button/fab-button.js +2 -2
  299. package/dist/collection/components/fab-button/fab-button.md.css +1 -1
  300. package/dist/collection/components/fab-button/test/a11y/fab-button.e2e.js +50 -0
  301. package/dist/collection/components/fab-list/fab-list.css +4 -42
  302. package/dist/collection/components/fab-list/fab-list.js +2 -2
  303. package/dist/collection/components/footer/footer.js +2 -2
  304. package/dist/collection/components/grid/grid.js +2 -2
  305. package/dist/collection/components/header/header.js +2 -2
  306. package/dist/collection/components/img/img.js +1 -1
  307. package/dist/collection/components/infinite-scroll/infinite-scroll.js +1 -1
  308. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +3 -3
  309. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +2 -2
  310. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +3 -3
  311. package/dist/collection/components/input/input.ios.css +13 -104
  312. package/dist/collection/components/input/input.js +6 -144
  313. package/dist/collection/components/input/input.md.css +39 -218
  314. package/dist/collection/components/input/test/a11y/input.e2e.js +41 -3
  315. package/dist/collection/components/input/test/highlight/input.e2e.js +144 -0
  316. package/dist/collection/components/input/test/item/input.e2e.js +21 -0
  317. package/dist/collection/components/item/item.ios.css +8 -224
  318. package/dist/collection/components/item/item.js +22 -169
  319. package/dist/collection/components/item/item.md.css +15 -451
  320. package/dist/collection/components/item/test/a11y/item.e2e.js +0 -40
  321. package/dist/collection/components/item/test/basic/item.e2e.js +0 -5
  322. package/dist/collection/components/item/test/item.spec.js +1 -1
  323. package/dist/collection/components/item-divider/item-divider.ios.css +3 -3
  324. package/dist/collection/components/item-divider/item-divider.js +2 -2
  325. package/dist/collection/components/item-divider/item-divider.md.css +7 -17
  326. package/dist/collection/components/item-group/item-group.js +1 -1
  327. package/dist/collection/components/item-option/item-option.ios.css +2 -2
  328. package/dist/collection/components/item-option/item-option.js +2 -2
  329. package/dist/collection/components/item-option/item-option.md.css +1 -1
  330. package/dist/collection/components/item-options/item-options.ios.css +1 -1
  331. package/dist/collection/components/item-options/item-options.js +1 -1
  332. package/dist/collection/components/item-options/item-options.md.css +1 -1
  333. package/dist/collection/components/item-sliding/item-sliding.js +1 -1
  334. package/dist/collection/components/item-sliding/test/a11y/item-sliding.e2e.js +28 -0
  335. package/dist/collection/components/label/label.ios.css +1 -6
  336. package/dist/collection/components/label/label.js +2 -2
  337. package/dist/collection/components/label/label.md.css +2 -77
  338. package/dist/collection/components/label/test/a11y/label.e2e.js +20 -0
  339. package/dist/collection/components/list/list.js +1 -1
  340. package/dist/collection/components/list/list.md.css +2 -26
  341. package/dist/collection/components/list-header/list-header.ios.css +2 -2
  342. package/dist/collection/components/list-header/list-header.js +2 -2
  343. package/dist/collection/components/list-header/list-header.md.css +1 -1
  344. package/dist/collection/components/loading/loading.ios.css +2 -2
  345. package/dist/collection/components/loading/loading.js +2 -2
  346. package/dist/collection/components/loading/loading.md.css +3 -3
  347. package/dist/collection/components/loading/test/a11y/loading.e2e.js +21 -5
  348. package/dist/collection/components/menu/menu.ios.css +72 -53
  349. package/dist/collection/components/menu/menu.js +35 -43
  350. package/dist/collection/components/menu/menu.md.css +72 -53
  351. package/dist/collection/components/menu-button/menu-button.ios.css +1 -1
  352. package/dist/collection/components/menu-button/menu-button.js +2 -2
  353. package/dist/collection/components/menu-button/test/a11y/menu-button.e2e.js +14 -0
  354. package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
  355. package/dist/collection/components/modal/gestures/swipe-to-close.js +1 -1
  356. package/dist/collection/components/modal/modal.ios.css +9 -38
  357. package/dist/collection/components/modal/modal.js +37 -5
  358. package/dist/collection/components/modal/modal.md.css +1 -1
  359. package/dist/collection/components/modal/test/modal-attributes.spec.js +32 -0
  360. package/dist/collection/components/modal/utils.js +2 -8
  361. package/dist/collection/components/nav/nav.js +23 -3
  362. package/dist/collection/components/nav/test/nav-controller.spec.js +36 -36
  363. package/dist/collection/components/nav-link/nav-link.js +1 -1
  364. package/dist/collection/components/note/note.ios.css +1 -1
  365. package/dist/collection/components/note/note.js +2 -2
  366. package/dist/collection/components/note/note.md.css +1 -1
  367. package/dist/collection/components/picker/picker.ios.css +97 -234
  368. package/dist/collection/components/picker/picker.js +488 -742
  369. package/dist/collection/components/picker/picker.md.css +98 -226
  370. package/dist/collection/components/{picker-internal/test/a11y/picker-internal.e2e.js → picker/test/a11y/picker.e2e.js} +2 -2
  371. package/dist/collection/components/picker/test/basic/picker.e2e.js +99 -13
  372. package/dist/collection/components/picker/test/custom/picker.e2e.js +85 -0
  373. package/dist/collection/components/{picker-internal/test/keyboard-entry/picker-internal.e2e.js → picker/test/keyboard-entry/picker.e2e.js} +79 -42
  374. package/dist/collection/components/{picker-column-internal/picker-column-internal.md.css → picker-column/picker-column.css} +96 -83
  375. package/dist/collection/components/picker-column/picker-column.js +514 -335
  376. package/dist/collection/components/{picker-column-internal/test/basic/picker-column-internal.e2e.js → picker-column/test/basic/picker-column.e2e.js} +8 -8
  377. package/dist/collection/components/picker-column/test/disabled/picker-column.e2e.js +91 -0
  378. package/dist/collection/components/picker-column/test/slots/picker-column.e2e.js +39 -0
  379. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +87 -0
  380. package/dist/collection/components/picker-column-option/picker-column-option.js +173 -0
  381. package/dist/collection/components/{picker-column-internal/picker-column-internal.ios.css → picker-column-option/picker-column-option.md.css} +6 -53
  382. package/dist/collection/components/picker-column-option/test/a11y/picker-column-option.e2e.js +18 -0
  383. package/dist/collection/components/picker-column-option/test/basic/picker-column-option.e2e.js +37 -0
  384. package/dist/collection/components/picker-column-option/test/picker-column-option.spec.js +29 -0
  385. package/dist/collection/components/{picker-internal/picker-internal.ios.css → picker-legacy/picker.ios.css} +155 -117
  386. package/dist/collection/components/picker-legacy/picker.js +821 -0
  387. package/dist/collection/components/{picker-internal/picker-internal.md.css → picker-legacy/picker.md.css} +144 -115
  388. package/dist/collection/components/picker-legacy/test/basic/picker.e2e.js +25 -0
  389. package/dist/collection/components/{picker → picker-legacy}/test/is-open/picker.e2e.js +4 -4
  390. package/dist/collection/components/{picker → picker-legacy}/test/picker-id.spec.js +5 -5
  391. package/dist/collection/components/{picker → picker-legacy}/test/trigger/picker.e2e.js +1 -1
  392. package/dist/collection/components/{picker-column → picker-legacy-column}/picker-column.ios.css +2 -26
  393. package/dist/collection/components/picker-legacy-column/picker-column.js +419 -0
  394. package/dist/collection/components/{picker-column → picker-legacy-column}/picker-column.md.css +3 -27
  395. package/dist/collection/components/{picker-column → picker-legacy-column}/test/picker-column-aria.spec.js +3 -3
  396. package/dist/collection/components/{picker-column → picker-legacy-column}/test/picker-column-dynamic.spec.js +2 -2
  397. package/dist/collection/components/{picker-column → picker-legacy-column}/test/picker-column.spec.js +2 -2
  398. package/dist/collection/components/{picker-column → picker-legacy-column}/test/standalone/picker-column.e2e.js +3 -3
  399. package/dist/collection/components/popover/popover.ios.css +3 -27
  400. package/dist/collection/components/popover/popover.js +5 -4
  401. package/dist/collection/components/progress-bar/progress-bar.ios.css +17 -11
  402. package/dist/collection/components/progress-bar/progress-bar.js +4 -1
  403. package/dist/collection/components/progress-bar/progress-bar.md.css +8 -10
  404. package/dist/collection/components/progress-bar/test/a11y/progress-bar.e2e.js +24 -0
  405. package/dist/collection/components/radio/radio.ios.css +10 -101
  406. package/dist/collection/components/radio/radio.js +5 -119
  407. package/dist/collection/components/radio/radio.md.css +8 -105
  408. package/dist/collection/components/radio/test/a11y/radio.e2e.js +114 -81
  409. package/dist/collection/components/radio-group/radio-group.js +1 -1
  410. package/dist/collection/components/range/range.ios.css +12 -90
  411. package/dist/collection/components/range/range.js +156 -144
  412. package/dist/collection/components/range/range.md.css +22 -152
  413. package/dist/collection/components/range/test/a11y/range.e2e.js +20 -10
  414. package/dist/collection/components/range/test/range-events.e2e.js +28 -1
  415. package/dist/collection/components/range/test/range.spec.js +0 -12
  416. package/dist/collection/components/refresher/refresher.ios.css +4 -27
  417. package/dist/collection/components/refresher/refresher.js +1 -1
  418. package/dist/collection/components/refresher/refresher.md.css +7 -30
  419. package/dist/collection/components/refresher/test/a11y/refresher.e2e.js +26 -0
  420. package/dist/collection/components/refresher-content/refresher-content.js +1 -1
  421. package/dist/collection/components/reorder/reorder.js +1 -1
  422. package/dist/collection/components/reorder-group/reorder-group.js +1 -1
  423. package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
  424. package/dist/collection/components/router-link/router-link.css +1 -1
  425. package/dist/collection/components/router-link/router-link.js +2 -2
  426. package/dist/collection/components/router-link/test/a11y/router-link.e2e.js +23 -0
  427. package/dist/collection/components/router-outlet/router-outlet.js +1 -1
  428. package/dist/collection/components/row/row.js +1 -1
  429. package/dist/collection/components/searchbar/searchbar.ios.css +11 -59
  430. package/dist/collection/components/searchbar/searchbar.js +84 -5
  431. package/dist/collection/components/searchbar/searchbar.md.css +10 -82
  432. package/dist/collection/components/searchbar/test/searchbar.spec.js +20 -2
  433. package/dist/collection/components/segment/segment.js +2 -2
  434. package/dist/collection/components/segment/test/a11y/segment.e2e.js +23 -0
  435. package/dist/collection/components/segment-button/segment-button.ios.css +3 -3
  436. package/dist/collection/components/segment-button/segment-button.js +3 -3
  437. package/dist/collection/components/segment-button/segment-button.md.css +2 -2
  438. package/dist/collection/components/select/select.ios.css +13 -79
  439. package/dist/collection/components/select/select.js +64 -173
  440. package/dist/collection/components/select/select.md.css +42 -196
  441. package/dist/collection/components/select/test/a11y/select.e2e.js +68 -4
  442. package/dist/collection/components/select/test/highlight/select.e2e.js +88 -4
  443. package/dist/collection/components/select-option/select-option.js +1 -1
  444. package/dist/collection/components/select-popover/select-popover.js +1 -1
  445. package/dist/collection/components/select-popover/select-popover.md.css +4 -4
  446. package/dist/collection/components/select-popover/test/a11y/select-popover.e2e.js +32 -0
  447. package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
  448. package/dist/collection/components/spinner/spinner.js +1 -1
  449. package/dist/collection/components/split-pane/split-pane.ios.css +3 -55
  450. package/dist/collection/components/split-pane/split-pane.js +48 -14
  451. package/dist/collection/components/split-pane/split-pane.md.css +3 -55
  452. package/dist/collection/components/split-pane/test/wrapped-menu/split-pane.e2e.js +41 -0
  453. package/dist/collection/components/tab/tab.js +2 -2
  454. package/dist/collection/components/tab-bar/tab-bar.ios.css +4 -4
  455. package/dist/collection/components/tab-bar/tab-bar.js +2 -2
  456. package/dist/collection/components/tab-bar/tab-bar.md.css +3 -3
  457. package/dist/collection/components/tab-button/tab-button.ios.css +16 -94
  458. package/dist/collection/components/tab-button/tab-button.js +2 -2
  459. package/dist/collection/components/tab-button/tab-button.md.css +10 -93
  460. package/dist/collection/components/tabs/tabs.js +1 -1
  461. package/dist/collection/components/text/text.js +2 -2
  462. package/dist/collection/components/textarea/test/a11y/textarea.e2e.js +41 -3
  463. package/dist/collection/components/textarea/test/highlight/textarea.e2e.js +144 -0
  464. package/dist/collection/components/textarea/test/item/textarea.e2e.js +21 -0
  465. package/dist/collection/components/textarea/textarea.ios.css +15 -123
  466. package/dist/collection/components/textarea/textarea.js +5 -84
  467. package/dist/collection/components/textarea/textarea.md.css +41 -241
  468. package/dist/collection/components/thumbnail/thumbnail.js +1 -1
  469. package/dist/collection/components/title/title.ios.css +2 -21
  470. package/dist/collection/components/title/title.js +2 -2
  471. package/dist/collection/components/toast/test/a11y/toast.e2e.js +89 -24
  472. package/dist/collection/components/toast/toast.ios.css +8 -55
  473. package/dist/collection/components/toast/toast.js +9 -3
  474. package/dist/collection/components/toast/toast.md.css +10 -57
  475. package/dist/collection/components/toggle/test/a11y/toggle.e2e.js +8 -2
  476. package/dist/collection/components/toggle/toggle.ios.css +11 -90
  477. package/dist/collection/components/toggle/toggle.js +5 -101
  478. package/dist/collection/components/toggle/toggle.md.css +6 -91
  479. package/dist/collection/components/toolbar/toolbar.ios.css +2 -2
  480. package/dist/collection/components/toolbar/toolbar.js +2 -2
  481. package/dist/collection/components/toolbar/toolbar.md.css +1 -1
  482. package/dist/collection/css/test/a11y/typography.e2e.js +18 -0
  483. package/dist/collection/themes/test/colors/theme.e2e.js +170 -0
  484. package/dist/collection/utils/focus-trap.js +78 -0
  485. package/dist/collection/utils/forms/index.js +0 -1
  486. package/dist/collection/utils/gesture/button-active.js +1 -1
  487. package/dist/collection/utils/gesture/gesture-controller.js +1 -1
  488. package/dist/collection/utils/hardware-back-button.js +2 -2
  489. package/dist/collection/utils/helpers.js +1 -8
  490. package/dist/collection/utils/input-shims/input-shims.js +8 -1
  491. package/dist/collection/utils/native/status-bar.js +0 -11
  492. package/dist/collection/utils/overlays.js +75 -57
  493. package/dist/collection/utils/slot-mutation-controller.js +12 -0
  494. package/dist/collection/utils/test/aria.spec.js +2 -1
  495. package/dist/collection/utils/test/overlays/overlays-scroll-blocking.spec.js +65 -0
  496. package/dist/collection/utils/test/overlays/overlays.spec.js +53 -0
  497. package/dist/collection/utils/test/playwright/generator.js +1 -0
  498. package/dist/collection/utils/test/playwright/page/utils/set-content.js +1 -1
  499. package/dist/docs.json +688 -481
  500. package/dist/esm/{animation-6a0c5338.js → animation-9a23ed8d.js} +1 -1
  501. package/dist/esm/{app-globals-5cf6195b.js → app-globals-80842d68.js} +1 -1
  502. package/dist/esm/{button-active-47ac8092.js → button-active-c6e18fac.js} +3 -3
  503. package/dist/esm/{data-0f3ab200.js → data-ae11fd43.js} +24 -39
  504. package/dist/esm/{framework-delegate-ed4ba327.js → framework-delegate-3fd96df8.js} +1 -1
  505. package/dist/esm/{gesture-controller-1bf57181.js → gesture-controller-314a54f6.js} +1 -1
  506. package/dist/esm/{hardware-back-button-b410a047.js → hardware-back-button-fb295e3a.js} +5 -5
  507. package/dist/esm/{helpers-be245865.js → helpers-f51cf76f.js} +2 -9
  508. package/dist/esm/{index-020f5464.js → index-1262064c.js} +1 -1
  509. package/dist/esm/{index-2cf77112.js → index-39782642.js} +2 -2
  510. package/dist/esm/{index-4c30cddd.js → index-5d6a0317.js} +443 -15
  511. package/dist/esm/{index-348ed70a.js → index-6da05eef.js} +4 -4
  512. package/dist/esm/{index-f3946ac1.js → index-86688780.js} +1 -1
  513. package/dist/esm/{index-e1b622e3.js → index-9d7e5d3e.js} +4 -4
  514. package/dist/esm/index.js +13 -13
  515. package/dist/esm/{input-shims-5329bbe8.js → input-shims-2a4ad5a1.js} +10 -3
  516. package/dist/esm/{input.utils-a445f677.js → input.utils-d2dee48e.js} +13 -1
  517. package/dist/esm/ion-accordion_2.entry.js +4 -4
  518. package/dist/esm/ion-action-sheet.entry.js +16 -16
  519. package/dist/esm/ion-alert.entry.js +14 -14
  520. package/dist/esm/ion-app_8.entry.js +33 -34
  521. package/dist/esm/ion-avatar_3.entry.js +8 -8
  522. package/dist/esm/ion-back-button.entry.js +6 -6
  523. package/dist/esm/ion-backdrop.entry.js +3 -15
  524. package/dist/esm/ion-breadcrumb_2.entry.js +9 -9
  525. package/dist/esm/ion-button_2.entry.js +7 -7
  526. package/dist/esm/ion-card_5.entry.js +16 -16
  527. package/dist/esm/ion-checkbox.entry.js +9 -77
  528. package/dist/esm/ion-chip.entry.js +4 -4
  529. package/dist/esm/ion-col_3.entry.js +7 -7
  530. package/dist/esm/ion-datetime-button.entry.js +18 -17
  531. package/dist/esm/ion-datetime_3.entry.js +119 -114
  532. package/dist/esm/ion-fab_3.entry.js +12 -12
  533. package/dist/esm/ion-img.entry.js +4 -4
  534. package/dist/esm/ion-infinite-scroll_2.entry.js +9 -9
  535. package/dist/esm/ion-input.entry.js +12 -92
  536. package/dist/esm/ion-item-option_3.entry.js +13 -13
  537. package/dist/esm/ion-item_8.entry.js +48 -102
  538. package/dist/esm/ion-loading.entry.js +12 -11
  539. package/dist/esm/ion-menu_3.entry.js +41 -57
  540. package/dist/esm/ion-modal.entry.js +53 -38
  541. package/dist/esm/ion-nav_2.entry.js +13 -10
  542. package/dist/esm/ion-picker-column-option.entry.js +102 -0
  543. package/dist/esm/{ion-picker-column-internal.entry.js → ion-picker-column.entry.js} +124 -93
  544. package/dist/esm/{ion-picker-internal.entry.js → ion-picker.entry.js} +32 -25
  545. package/dist/esm/ion-popover.entry.js +13 -12
  546. package/dist/esm/ion-progress-bar.entry.js +9 -6
  547. package/dist/esm/ion-radio_2.entry.js +10 -79
  548. package/dist/esm/ion-range.entry.js +164 -112
  549. package/dist/esm/ion-refresher_2.entry.js +12 -12
  550. package/dist/esm/ion-reorder_2.entry.js +7 -7
  551. package/dist/esm/ion-ripple-effect.entry.js +3 -3
  552. package/dist/esm/ion-route_4.entry.js +6 -6
  553. package/dist/esm/ion-searchbar.entry.js +33 -9
  554. package/dist/esm/ion-segment_2.entry.js +11 -11
  555. package/dist/esm/ion-select_3.entry.js +76 -167
  556. package/dist/esm/ion-spinner.entry.js +3 -3
  557. package/dist/esm/ion-split-pane.entry.js +28 -18
  558. package/dist/esm/ion-tab-bar_2.entry.js +11 -11
  559. package/dist/esm/ion-tab_2.entry.js +6 -6
  560. package/dist/esm/ion-text.entry.js +4 -4
  561. package/dist/esm/ion-textarea.entry.js +12 -72
  562. package/dist/esm/ion-toast.entry.js +21 -15
  563. package/dist/esm/ion-toggle.entry.js +10 -66
  564. package/dist/esm/{ionic-global-ad9a1810.js → ionic-global-a589c12c.js} +1 -1
  565. package/dist/esm/ionic.js +29 -6
  566. package/dist/esm/{ios.transition-7459f819.js → ios.transition-fbde96b0.js} +4 -4
  567. package/dist/esm/loader.js +5 -5
  568. package/dist/esm/{md.transition-b8224313.js → md.transition-76e0020b.js} +4 -4
  569. package/dist/esm/{notch-controller-6bd3e0f9.js → notch-controller-00572cf8.js} +1 -1
  570. package/dist/esm/{overlays-19b26885.js → overlays-b1ac1c63.js} +153 -61
  571. package/dist/esm/{status-tap-b41ece3c.js → status-tap-84b41f36.js} +3 -3
  572. package/dist/esm/{swipe-back-c6d0e5d9.js → swipe-back-4f2e5d47.js} +3 -3
  573. package/dist/esm-es5/{animation-6a0c5338.js → animation-9a23ed8d.js} +1 -1
  574. package/dist/esm-es5/app-globals-80842d68.js +4 -0
  575. package/dist/esm-es5/button-active-c6e18fac.js +4 -0
  576. package/dist/esm-es5/data-ae11fd43.js +4 -0
  577. package/dist/esm-es5/{framework-delegate-ed4ba327.js → framework-delegate-3fd96df8.js} +1 -1
  578. package/dist/esm-es5/{gesture-controller-1bf57181.js → gesture-controller-314a54f6.js} +1 -1
  579. package/dist/esm-es5/hardware-back-button-fb295e3a.js +4 -0
  580. package/dist/esm-es5/helpers-f51cf76f.js +4 -0
  581. package/dist/esm-es5/index-1262064c.js +4 -0
  582. package/dist/esm-es5/{index-2cf77112.js → index-39782642.js} +1 -1
  583. package/dist/esm-es5/index-5d6a0317.js +5 -0
  584. package/dist/esm-es5/{index-348ed70a.js → index-6da05eef.js} +1 -1
  585. package/dist/esm-es5/{index-f3946ac1.js → index-86688780.js} +1 -1
  586. package/dist/esm-es5/{index-e1b622e3.js → index-9d7e5d3e.js} +1 -1
  587. package/dist/esm-es5/index.js +1 -1
  588. package/dist/esm-es5/{input-shims-5329bbe8.js → input-shims-2a4ad5a1.js} +1 -1
  589. package/dist/esm-es5/input.utils-d2dee48e.js +4 -0
  590. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  591. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  592. package/dist/esm-es5/ion-alert.entry.js +1 -1
  593. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  594. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  595. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  596. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  597. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  598. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  599. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  600. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  601. package/dist/esm-es5/ion-chip.entry.js +1 -1
  602. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  603. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  604. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  605. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  606. package/dist/esm-es5/ion-img.entry.js +1 -1
  607. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  608. package/dist/esm-es5/ion-input.entry.js +1 -1
  609. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  610. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  611. package/dist/esm-es5/ion-loading.entry.js +1 -1
  612. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  613. package/dist/esm-es5/ion-modal.entry.js +1 -1
  614. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  615. package/dist/esm-es5/ion-picker-column-option.entry.js +4 -0
  616. package/dist/esm-es5/ion-picker-column.entry.js +4 -0
  617. package/dist/esm-es5/ion-picker.entry.js +4 -0
  618. package/dist/esm-es5/ion-popover.entry.js +1 -1
  619. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  620. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  621. package/dist/esm-es5/ion-range.entry.js +1 -1
  622. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  623. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  624. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  625. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  626. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  627. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  628. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  629. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  630. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  631. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  632. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  633. package/dist/esm-es5/ion-text.entry.js +1 -1
  634. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  635. package/dist/esm-es5/ion-toast.entry.js +1 -1
  636. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  637. package/dist/esm-es5/{ionic-global-ad9a1810.js → ionic-global-a589c12c.js} +1 -1
  638. package/dist/esm-es5/ionic.js +1 -1
  639. package/dist/esm-es5/{ios.transition-7459f819.js → ios.transition-fbde96b0.js} +1 -1
  640. package/dist/esm-es5/loader.js +1 -1
  641. package/dist/esm-es5/md.transition-76e0020b.js +4 -0
  642. package/dist/esm-es5/{notch-controller-6bd3e0f9.js → notch-controller-00572cf8.js} +1 -1
  643. package/dist/esm-es5/overlays-b1ac1c63.js +4 -0
  644. package/dist/esm-es5/{status-tap-b41ece3c.js → status-tap-84b41f36.js} +1 -1
  645. package/dist/esm-es5/{swipe-back-c6d0e5d9.js → swipe-back-4f2e5d47.js} +1 -1
  646. package/dist/html.html-data.json +176 -63
  647. package/dist/ionic/index.esm.js +1 -1
  648. package/dist/ionic/ionic.esm.js +1 -1
  649. package/dist/ionic/ionic.js +1 -1
  650. package/dist/ionic/{p-cbcffe6e.system.js → p-01171ead.system.js} +1 -1
  651. package/dist/ionic/{p-5d7e32ce.js → p-031c5621.js} +1 -1
  652. package/dist/ionic/{p-1a680496.entry.js → p-03f3ebd2.entry.js} +1 -1
  653. package/dist/ionic/{p-f02c41af.system.js → p-04f9ce05.system.js} +1 -1
  654. package/dist/ionic/p-063c093d.system.entry.js +4 -0
  655. package/dist/ionic/p-06e951a9.entry.js +4 -0
  656. package/dist/ionic/{p-822730c4.entry.js → p-070cf7c3.entry.js} +1 -1
  657. package/dist/ionic/p-07a0190a.system.entry.js +4 -0
  658. package/dist/ionic/p-0afaf65b.system.entry.js +4 -0
  659. package/dist/ionic/p-0b175848.entry.js +4 -0
  660. package/dist/ionic/p-0da58e53.entry.js +4 -0
  661. package/dist/ionic/p-0eb381c3.system.js +4 -0
  662. package/dist/ionic/p-144ae947.js +4 -0
  663. package/dist/ionic/{p-a3df16b9.system.entry.js → p-15e2ff5f.system.entry.js} +1 -1
  664. package/dist/ionic/{p-d425b1de.entry.js → p-19243ae6.entry.js} +1 -1
  665. package/dist/ionic/p-1acaf641.entry.js +4 -0
  666. package/dist/ionic/{p-ce1c0a0e.system.entry.js → p-1d1394da.system.entry.js} +2 -2
  667. package/dist/ionic/p-1e5c0c49.js +4 -0
  668. package/dist/ionic/p-2028668d.system.entry.js +4 -0
  669. package/dist/ionic/p-2070f8d8.entry.js +4 -0
  670. package/dist/ionic/{p-c7c8429a.system.js → p-20d469d0.system.js} +1 -1
  671. package/dist/ionic/p-219c17cf.system.entry.js +4 -0
  672. package/dist/ionic/p-21e88629.entry.js +4 -0
  673. package/dist/ionic/p-234dc736.entry.js +4 -0
  674. package/dist/ionic/p-237b1791.system.entry.js +4 -0
  675. package/dist/ionic/{p-ceceac26.js → p-239906f1.js} +1 -1
  676. package/dist/ionic/p-25648922.system.entry.js +4 -0
  677. package/dist/ionic/{p-b727af6a.entry.js → p-29ecf879.entry.js} +1 -1
  678. package/dist/ionic/p-2c560619.system.entry.js +4 -0
  679. package/dist/ionic/p-2e2635b4.system.entry.js +4 -0
  680. package/dist/ionic/p-2f53f47a.entry.js +4 -0
  681. package/dist/ionic/p-30dfa360.system.js +4 -0
  682. package/dist/ionic/p-314ae72a.js +4 -0
  683. package/dist/ionic/{p-97ca0cb9.system.js → p-33e39575.system.js} +1 -1
  684. package/dist/ionic/p-355736ea.js +4 -0
  685. package/dist/ionic/p-373e757d.entry.js +4 -0
  686. package/dist/ionic/{p-bd313b73.system.js → p-3944820a.system.js} +1 -1
  687. package/dist/ionic/{p-02ad4bbe.js → p-39483fc9.js} +1 -1
  688. package/dist/ionic/p-39860681.entry.js +4 -0
  689. package/dist/ionic/{p-a6c0a380.js → p-3a572692.js} +1 -1
  690. package/dist/ionic/{p-31b2326e.system.js → p-3e1e14d9.system.js} +1 -1
  691. package/dist/ionic/p-42d9f81e.entry.js +4 -0
  692. package/dist/ionic/p-45a2b1ee.system.entry.js +4 -0
  693. package/dist/ionic/{p-779aede8.js → p-46a4e4e8.js} +1 -1
  694. package/dist/ionic/{p-7670acd8.entry.js → p-48fef2f1.entry.js} +1 -1
  695. package/dist/ionic/p-493bce1f.entry.js +4 -0
  696. package/dist/ionic/{p-bcd9cad8.system.js → p-4997d7dc.system.js} +1 -1
  697. package/dist/ionic/{p-fe320051.system.js → p-49a205d0.system.js} +1 -1
  698. package/dist/ionic/{p-12a8643e.js → p-4ba6d7d1.js} +1 -1
  699. package/dist/ionic/p-4d6ec139.entry.js +4 -0
  700. package/dist/ionic/p-4d7230bd.system.entry.js +4 -0
  701. package/dist/ionic/{p-2c118b1e.js → p-4da2ae44.js} +1 -1
  702. package/dist/ionic/p-5054b3db.entry.js +4 -0
  703. package/dist/ionic/p-50d19fc7.system.entry.js +4 -0
  704. package/dist/ionic/p-513abaf6.system.entry.js +4 -0
  705. package/dist/ionic/p-517b76cb.entry.js +4 -0
  706. package/dist/ionic/{p-942a9358.js → p-51b1a6be.js} +1 -1
  707. package/dist/ionic/p-53c592ec.system.js +4 -0
  708. package/dist/ionic/{p-abcedc15.system.entry.js → p-566818dd.system.entry.js} +1 -1
  709. package/dist/ionic/p-59e86adb.js +4 -0
  710. package/dist/ionic/p-5f9abba8.system.entry.js +4 -0
  711. package/dist/ionic/p-6042920d.system.entry.js +4 -0
  712. package/dist/ionic/{p-88e9052d.entry.js → p-65374504.entry.js} +1 -1
  713. package/dist/ionic/{p-b6279412.entry.js → p-66596659.entry.js} +1 -1
  714. package/dist/ionic/p-667290b0.system.js +4 -0
  715. package/dist/ionic/{p-337ac0f5.entry.js → p-66e50777.entry.js} +1 -1
  716. package/dist/ionic/{p-62b7320a.system.js → p-67dbcd3b.system.js} +1 -1
  717. package/dist/ionic/p-696db6f4.system.js +4 -0
  718. package/dist/ionic/p-69df28fd.entry.js +4 -0
  719. package/dist/ionic/p-6d0e7669.system.entry.js +4 -0
  720. package/dist/ionic/p-6d1f5de9.system.entry.js +4 -0
  721. package/dist/ionic/p-6d75fbe8.system.entry.js +4 -0
  722. package/dist/ionic/{p-9998cb62.system.entry.js → p-7162350a.system.entry.js} +1 -1
  723. package/dist/ionic/p-7200f2da.entry.js +4 -0
  724. package/dist/ionic/p-739f8b95.system.entry.js +4 -0
  725. package/dist/ionic/p-75addf49.entry.js +4 -0
  726. package/dist/ionic/{p-de55ec45.js → p-78b3da77.js} +1 -1
  727. package/dist/ionic/p-7c7e495d.system.js +4 -0
  728. package/dist/ionic/{p-1b3ffb2f.js → p-7d4f6f18.js} +1 -1
  729. package/dist/ionic/p-824d44c5.system.entry.js +4 -0
  730. package/dist/ionic/p-8c0b08db.entry.js +4 -0
  731. package/dist/ionic/p-8dfe436d.system.js +4 -0
  732. package/dist/ionic/{p-f5d2dc9b.js → p-8ededb41.js} +1 -1
  733. package/dist/ionic/{p-86813176.system.entry.js → p-91567c90.system.entry.js} +1 -1
  734. package/dist/ionic/{p-6e23d039.entry.js → p-95648db9.entry.js} +1 -1
  735. package/dist/ionic/{p-bb3615f7.js → p-9b97df10.js} +1 -1
  736. package/dist/ionic/p-9c970454.entry.js +4 -0
  737. package/dist/ionic/{p-6525a8cd.system.js → p-9e3177a5.system.js} +1 -1
  738. package/dist/ionic/p-a03c993e.entry.js +4 -0
  739. package/dist/ionic/{p-baf8eeac.system.entry.js → p-a37d4fe9.system.entry.js} +1 -1
  740. package/dist/ionic/{p-717e2526.system.entry.js → p-a43fbe0a.system.entry.js} +2 -2
  741. package/dist/ionic/{p-ebc86ce9.system.entry.js → p-a5c33d6b.system.entry.js} +1 -1
  742. package/dist/ionic/{p-079da3df.entry.js → p-a7f788ec.entry.js} +1 -1
  743. package/dist/ionic/p-acd64713.system.entry.js +4 -0
  744. package/dist/ionic/{p-89ca4c4b.system.js → p-af9256a0.system.js} +1 -1
  745. package/dist/ionic/p-b0850af6.system.entry.js +4 -0
  746. package/dist/ionic/p-b0d35de4.system.js +4 -0
  747. package/dist/ionic/p-b996756b.entry.js +4 -0
  748. package/dist/ionic/p-ba9120fe.system.entry.js +4 -0
  749. package/dist/ionic/p-bb78b64e.entry.js +4 -0
  750. package/dist/ionic/{p-2c4bfe1c.entry.js → p-bbc4f653.entry.js} +1 -1
  751. package/dist/ionic/p-c34d1515.js +4 -0
  752. package/dist/ionic/{p-a85d9047.system.entry.js → p-c4390f10.system.entry.js} +1 -1
  753. package/dist/ionic/p-c629d22b.system.js +5 -0
  754. package/dist/ionic/p-c834c535.system.entry.js +4 -0
  755. package/dist/ionic/p-c8675b7b.system.entry.js +4 -0
  756. package/dist/ionic/p-c8f7f923.entry.js +4 -0
  757. package/dist/ionic/p-c962e9ea.entry.js +4 -0
  758. package/dist/ionic/p-cada6331.entry.js +4 -0
  759. package/dist/ionic/p-cc19ecba.system.entry.js +4 -0
  760. package/dist/ionic/p-ce36d285.system.js +4 -0
  761. package/dist/ionic/p-d09c9468.system.entry.js +4 -0
  762. package/dist/ionic/p-d10bbab7.entry.js +4 -0
  763. package/dist/ionic/p-d268f7e2.system.entry.js +4 -0
  764. package/dist/ionic/p-d3c1c23f.entry.js +4 -0
  765. package/dist/ionic/{p-644d03d7.system.entry.js → p-d4be0d81.system.entry.js} +1 -1
  766. package/dist/ionic/p-d5ef3a0a.entry.js +4 -0
  767. package/dist/ionic/p-d60342e3.js +4 -0
  768. package/dist/ionic/{p-657ccdd6.entry.js → p-d85eebc3.entry.js} +1 -1
  769. package/dist/ionic/p-d9dfdbb5.system.entry.js +4 -0
  770. package/dist/ionic/p-da5bbd4f.entry.js +4 -0
  771. package/dist/ionic/p-dad515dc.js +4 -0
  772. package/dist/ionic/{p-3079950e.entry.js → p-de39f314.entry.js} +1 -1
  773. package/dist/ionic/p-de4c700f.entry.js +4 -0
  774. package/dist/ionic/{p-6afef6c1.system.js → p-e01ebeba.system.js} +1 -1
  775. package/dist/ionic/p-e222fdd1.entry.js +4 -0
  776. package/dist/ionic/p-e5e492d8.entry.js +4 -0
  777. package/dist/ionic/{p-4b8a620f.system.entry.js → p-e9412fe7.system.entry.js} +1 -1
  778. package/dist/ionic/{p-2c86025e.system.js → p-ea5173f9.system.js} +1 -1
  779. package/dist/ionic/p-eb546888.entry.js +4 -0
  780. package/dist/ionic/{p-05253db9.js → p-eee87ebb.js} +1 -1
  781. package/dist/ionic/p-f012e8f2.system.entry.js +4 -0
  782. package/dist/ionic/{p-18918a24.system.entry.js → p-f15b0bbc.system.entry.js} +1 -1
  783. package/dist/ionic/{p-288649db.system.entry.js → p-f15f8140.system.entry.js} +1 -1
  784. package/dist/ionic/{p-125f8cdd.system.js → p-f3e8c505.system.js} +1 -1
  785. package/dist/ionic/{p-56ee6d9a.js → p-f5cb9689.js} +1 -1
  786. package/dist/ionic/p-f687573e.system.js +4 -0
  787. package/dist/ionic/p-f6db2e96.system.entry.js +4 -0
  788. package/dist/ionic/p-f8502e85.js +5 -0
  789. package/dist/ionic/p-f8dfae89.system.entry.js +4 -0
  790. package/dist/ionic/p-fcec3b7a.system.entry.js +4 -0
  791. package/dist/ionic/{p-91f4e611.system.entry.js → p-ff740d68.system.entry.js} +2 -2
  792. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +8 -0
  793. package/dist/types/components/backdrop/backdrop.d.ts +0 -3
  794. package/dist/types/components/checkbox/checkbox.d.ts +1 -24
  795. package/dist/types/components/datetime/datetime-interface.d.ts +10 -0
  796. package/dist/types/components/datetime/datetime.d.ts +9 -2
  797. package/dist/types/components/datetime/utils/data.d.ts +11 -7
  798. package/dist/types/components/datetime/utils/format.d.ts +7 -13
  799. package/dist/types/components/datetime/utils/validate.d.ts +8 -0
  800. package/dist/types/components/input/input.d.ts +0 -26
  801. package/dist/types/components/item/item.d.ts +0 -32
  802. package/dist/types/components/menu/menu-interface.d.ts +1 -0
  803. package/dist/types/components/menu/menu.d.ts +14 -6
  804. package/dist/types/components/modal/utils.d.ts +0 -4
  805. package/dist/types/components/nav/nav.d.ts +4 -1
  806. package/dist/types/components/picker/picker-interfaces.d.ts +8 -0
  807. package/dist/types/components/picker/picker.d.ts +75 -133
  808. package/dist/types/components/picker-column/picker-column-interfaces.d.ts +4 -0
  809. package/dist/types/components/picker-column/picker-column.d.ts +99 -39
  810. package/dist/types/components/picker-column-option/picker-column-option.d.ts +66 -0
  811. package/dist/types/components/picker-legacy/picker.d.ts +158 -0
  812. package/dist/types/components/picker-legacy-column/picker-column.d.ts +46 -0
  813. package/dist/types/components/radio/radio.d.ts +1 -24
  814. package/dist/types/components/range/range.d.ts +30 -21
  815. package/dist/types/components/searchbar/searchbar.d.ts +38 -0
  816. package/dist/types/components/select/select.d.ts +0 -15
  817. package/dist/types/components/split-pane/split-pane.d.ts +14 -2
  818. package/dist/types/components/textarea/textarea.d.ts +0 -17
  819. package/dist/types/components/toast/toast-interface.d.ts +0 -4
  820. package/dist/types/components/toggle/toggle.d.ts +1 -21
  821. package/dist/types/components.d.ts +198 -241
  822. package/dist/types/interface.d.ts +1 -1
  823. package/dist/types/utils/config.d.ts +2 -2
  824. package/dist/types/utils/focus-trap.d.ts +35 -0
  825. package/dist/types/utils/forms/index.d.ts +0 -1
  826. package/dist/types/utils/gesture/gesture-controller.d.ts +1 -0
  827. package/dist/types/utils/hardware-back-button.d.ts +1 -1
  828. package/dist/types/utils/helpers.d.ts +0 -1
  829. package/dist/types/utils/native/status-bar.d.ts +0 -1
  830. package/dist/types/utils/overlays.d.ts +5 -8
  831. package/dist/types/utils/test/playwright/generator.d.ts +3 -1
  832. package/hydrate/index.js +2404 -2603
  833. package/package.json +1 -2
  834. package/components/form-controller.js +0 -64
  835. package/components/ion-picker-column-internal.d.ts +0 -11
  836. package/components/ion-picker-column-internal.js +0 -9
  837. package/components/ion-picker-internal.js +0 -9
  838. package/components/note.js +0 -48
  839. package/components/picker-column-internal.js +0 -392
  840. package/dist/cjs/form-controller-c83330c0.js +0 -66
  841. package/dist/collection/components/checkbox/test/legacy/basic/checkbox.e2e.js +0 -68
  842. package/dist/collection/components/checkbox/test/legacy/indeterminate/checkbox.e2e.js +0 -14
  843. package/dist/collection/components/input/test/item/input.spec.js +0 -24
  844. package/dist/collection/components/input/test/legacy/a11y/input.e2e.js +0 -28
  845. package/dist/collection/components/input/test/legacy/basic/input.e2e.js +0 -181
  846. package/dist/collection/components/input/test/legacy/clear-on-edit/input.e2e.js +0 -55
  847. package/dist/collection/components/input/test/legacy/input-events.e2e.js +0 -71
  848. package/dist/collection/components/input/test/legacy/masking/input.e2e.js +0 -26
  849. package/dist/collection/components/input/test/legacy/spec/input.e2e.js +0 -16
  850. package/dist/collection/components/item/test/counter/item.e2e.js +0 -49
  851. package/dist/collection/components/item/test/highlight/item.e2e.js +0 -14
  852. package/dist/collection/components/item/test/legacy/alignment/item.e2e.js +0 -14
  853. package/dist/collection/components/item/test/legacy/disabled/item.e2e.js +0 -14
  854. package/dist/collection/components/item/test/legacy/fill/item.e2e.js +0 -14
  855. package/dist/collection/components/item/test/legacy/form/item.e2e.js +0 -14
  856. package/dist/collection/components/modal/test/a11y/modal.spec.js +0 -22
  857. package/dist/collection/components/picker-column-internal/picker-column-internal.js +0 -566
  858. package/dist/collection/components/picker-column-internal/test/disabled/picker-column-internal.e2e.js +0 -162
  859. package/dist/collection/components/picker-internal/picker-internal.js +0 -560
  860. package/dist/collection/components/picker-internal/test/basic/picker-internal.e2e.js +0 -118
  861. package/dist/collection/components/radio/test/legacy/a11y/radio.e2e.js +0 -53
  862. package/dist/collection/components/radio/test/legacy/basic/radio.e2e.js +0 -127
  863. package/dist/collection/components/radio-group/test/legacy/basic/radio-group.e2e.js +0 -122
  864. package/dist/collection/components/radio-group/test/legacy/form/radio-group.e2e.js +0 -30
  865. package/dist/collection/components/radio-group/test/legacy/search/radio-group.e2e.js +0 -38
  866. package/dist/collection/components/range/test/legacy/a11y/range.e2e.js +0 -49
  867. package/dist/collection/components/range/test/legacy/active-bar-start/range.e2e.js +0 -14
  868. package/dist/collection/components/range/test/legacy/basic/range.e2e.js +0 -75
  869. package/dist/collection/components/range/test/legacy/range-events.e2e.js +0 -90
  870. package/dist/collection/components/range/test/legacy/scroll-target/range.e2e.js +0 -32
  871. package/dist/collection/components/select/test/legacy/async/select.e2e.js +0 -19
  872. package/dist/collection/components/select/test/legacy/basic/select.e2e.js +0 -145
  873. package/dist/collection/components/select/test/legacy/compare-with/select.e2e.js +0 -67
  874. package/dist/collection/components/select/test/legacy/custom/custom.e2e.js +0 -13
  875. package/dist/collection/components/select/test/legacy/single-value/select.e2e.js +0 -16
  876. package/dist/collection/components/select/test/legacy/spec/select.e2e.js +0 -14
  877. package/dist/collection/components/select/test/legacy/standalone/select.e2e.js +0 -18
  878. package/dist/collection/components/select/test/legacy/wrapping/select.e2e.js +0 -39
  879. package/dist/collection/components/textarea/test/legacy/a11y/textarea.e2e.js +0 -31
  880. package/dist/collection/components/textarea/test/legacy/autogrow/textarea.e2e.js +0 -58
  881. package/dist/collection/components/textarea/test/legacy/basic/textarea.e2e.js +0 -43
  882. package/dist/collection/components/textarea/test/legacy/clear-on-edit/textarea.e2e.js +0 -25
  883. package/dist/collection/components/toggle/test/legacy/basic/toggle.e2e.js +0 -83
  884. package/dist/collection/components/toggle/test/legacy/enable-on-off-labels/toggle.e2e.js +0 -37
  885. package/dist/collection/components/toggle/test/legacy/sizes/power-outline.svg +0 -1
  886. package/dist/collection/components/toggle/test/legacy/sizes/toggle.e2e.js +0 -14
  887. package/dist/collection/utils/forms/form-controller.js +0 -61
  888. package/dist/esm/form-controller-21dd62b1.js +0 -64
  889. package/dist/esm-es5/app-globals-5cf6195b.js +0 -4
  890. package/dist/esm-es5/button-active-47ac8092.js +0 -4
  891. package/dist/esm-es5/data-0f3ab200.js +0 -4
  892. package/dist/esm-es5/form-controller-21dd62b1.js +0 -4
  893. package/dist/esm-es5/hardware-back-button-b410a047.js +0 -4
  894. package/dist/esm-es5/helpers-be245865.js +0 -4
  895. package/dist/esm-es5/index-020f5464.js +0 -4
  896. package/dist/esm-es5/index-4c30cddd.js +0 -5
  897. package/dist/esm-es5/input.utils-a445f677.js +0 -4
  898. package/dist/esm-es5/ion-picker-column-internal.entry.js +0 -4
  899. package/dist/esm-es5/ion-picker-internal.entry.js +0 -4
  900. package/dist/esm-es5/md.transition-b8224313.js +0 -4
  901. package/dist/esm-es5/overlays-19b26885.js +0 -4
  902. package/dist/ionic/p-021f9d72.entry.js +0 -4
  903. package/dist/ionic/p-02542247.system.entry.js +0 -4
  904. package/dist/ionic/p-0b34d3a7.system.js +0 -4
  905. package/dist/ionic/p-12527c4b.entry.js +0 -4
  906. package/dist/ionic/p-15a40a0b.system.entry.js +0 -4
  907. package/dist/ionic/p-1636923f.system.js +0 -4
  908. package/dist/ionic/p-16a61810.entry.js +0 -4
  909. package/dist/ionic/p-1846513c.js +0 -4
  910. package/dist/ionic/p-1bc9b5f5.system.js +0 -4
  911. package/dist/ionic/p-1f16d040.entry.js +0 -4
  912. package/dist/ionic/p-1f19958f.system.entry.js +0 -4
  913. package/dist/ionic/p-2178329b.entry.js +0 -4
  914. package/dist/ionic/p-257046d2.system.js +0 -4
  915. package/dist/ionic/p-262024fd.entry.js +0 -4
  916. package/dist/ionic/p-2765a571.system.entry.js +0 -4
  917. package/dist/ionic/p-2ea71956.system.entry.js +0 -4
  918. package/dist/ionic/p-2fd3c3dd.entry.js +0 -4
  919. package/dist/ionic/p-36be3332.js +0 -4
  920. package/dist/ionic/p-437f4d02.system.entry.js +0 -4
  921. package/dist/ionic/p-46bcc2f5.js +0 -4
  922. package/dist/ionic/p-4788693d.entry.js +0 -4
  923. package/dist/ionic/p-479f5926.system.entry.js +0 -4
  924. package/dist/ionic/p-482ea916.system.entry.js +0 -4
  925. package/dist/ionic/p-49f481cc.system.entry.js +0 -4
  926. package/dist/ionic/p-521b3971.entry.js +0 -4
  927. package/dist/ionic/p-5cb5f63d.system.entry.js +0 -4
  928. package/dist/ionic/p-5de920f4.system.entry.js +0 -4
  929. package/dist/ionic/p-5fc8d5ef.system.js +0 -4
  930. package/dist/ionic/p-6812d37d.js +0 -4
  931. package/dist/ionic/p-6b6ca3f5.system.entry.js +0 -4
  932. package/dist/ionic/p-6c45c617.js +0 -4
  933. package/dist/ionic/p-6f59cdbc.system.entry.js +0 -4
  934. package/dist/ionic/p-70fbf4e2.entry.js +0 -4
  935. package/dist/ionic/p-72fa96bf.system.js +0 -5
  936. package/dist/ionic/p-7330c044.system.js +0 -4
  937. package/dist/ionic/p-741a0f0d.system.entry.js +0 -4
  938. package/dist/ionic/p-76b8bcb8.system.entry.js +0 -4
  939. package/dist/ionic/p-7a615a5a.entry.js +0 -4
  940. package/dist/ionic/p-7e16220b.entry.js +0 -4
  941. package/dist/ionic/p-7e838f43.system.entry.js +0 -4
  942. package/dist/ionic/p-7f30ad48.entry.js +0 -4
  943. package/dist/ionic/p-80aed9fb.system.entry.js +0 -4
  944. package/dist/ionic/p-84b85535.entry.js +0 -4
  945. package/dist/ionic/p-85f66c3c.entry.js +0 -4
  946. package/dist/ionic/p-860e2539.system.entry.js +0 -4
  947. package/dist/ionic/p-8cc34120.entry.js +0 -4
  948. package/dist/ionic/p-8e651c29.entry.js +0 -4
  949. package/dist/ionic/p-9056778e.system.entry.js +0 -4
  950. package/dist/ionic/p-96084f36.entry.js +0 -4
  951. package/dist/ionic/p-973b4db3.entry.js +0 -4
  952. package/dist/ionic/p-98aa0553.entry.js +0 -4
  953. package/dist/ionic/p-9de75bac.system.entry.js +0 -4
  954. package/dist/ionic/p-a02ea777.entry.js +0 -4
  955. package/dist/ionic/p-a1036ce7.js +0 -4
  956. package/dist/ionic/p-a1222c24.entry.js +0 -4
  957. package/dist/ionic/p-a4aa6dd2.system.entry.js +0 -4
  958. package/dist/ionic/p-a667dd1f.system.js +0 -4
  959. package/dist/ionic/p-a8459bfb.entry.js +0 -4
  960. package/dist/ionic/p-ae2b3a7a.system.entry.js +0 -4
  961. package/dist/ionic/p-ae828bd9.system.entry.js +0 -4
  962. package/dist/ionic/p-b0aa3806.system.entry.js +0 -4
  963. package/dist/ionic/p-b27bba38.system.entry.js +0 -4
  964. package/dist/ionic/p-b4d2f43c.system.js +0 -4
  965. package/dist/ionic/p-b58686e0.entry.js +0 -4
  966. package/dist/ionic/p-ba0fbecc.entry.js +0 -4
  967. package/dist/ionic/p-bdca4784.js +0 -4
  968. package/dist/ionic/p-c1a871ff.system.entry.js +0 -4
  969. package/dist/ionic/p-c1c7309e.entry.js +0 -4
  970. package/dist/ionic/p-c7288e78.system.entry.js +0 -4
  971. package/dist/ionic/p-cb3065b8.entry.js +0 -4
  972. package/dist/ionic/p-cb9812f7.entry.js +0 -4
  973. package/dist/ionic/p-cfb4d7e0.js +0 -4
  974. package/dist/ionic/p-d143fefa.system.entry.js +0 -4
  975. package/dist/ionic/p-d6c6541b.system.entry.js +0 -4
  976. package/dist/ionic/p-df504a37.system.js +0 -4
  977. package/dist/ionic/p-dff97cfa.entry.js +0 -4
  978. package/dist/ionic/p-e1c52dc6.entry.js +0 -4
  979. package/dist/ionic/p-e4e74b5f.system.entry.js +0 -4
  980. package/dist/ionic/p-e626800f.system.entry.js +0 -4
  981. package/dist/ionic/p-e94c1402.entry.js +0 -4
  982. package/dist/ionic/p-ebc1ca90.system.js +0 -4
  983. package/dist/ionic/p-ed4760ef.entry.js +0 -4
  984. package/dist/ionic/p-ed7a529f.js +0 -5
  985. package/dist/ionic/p-f0e54781.system.entry.js +0 -4
  986. package/dist/ionic/p-f7dce541.js +0 -4
  987. package/dist/ionic/p-fa8d3b01.entry.js +0 -4
  988. package/dist/ionic/p-fbd01db3.system.js +0 -4
  989. package/dist/types/components/picker-column-internal/picker-column-internal-interfaces.d.ts +0 -5
  990. package/dist/types/components/picker-column-internal/picker-column-internal.d.ts +0 -102
  991. package/dist/types/components/picker-internal/picker-internal-interfaces.d.ts +0 -8
  992. package/dist/types/components/picker-internal/picker-internal.d.ts +0 -102
  993. package/dist/types/utils/forms/form-controller.d.ts +0 -15
  994. /package/dist/collection/components/{picker-internal/picker-internal-interfaces.js → picker/picker-interfaces.js} +0 -0
  995. /package/dist/collection/components/{picker-column-internal/picker-column-internal-interfaces.js → picker-column/picker-column-interfaces.js} +0 -0
  996. /package/dist/collection/components/{picker → picker-legacy}/animations/ios.enter.js +0 -0
  997. /package/dist/collection/components/{picker → picker-legacy}/animations/ios.leave.js +0 -0
  998. /package/dist/collection/components/{picker → picker-legacy}/picker-interface.js +0 -0
  999. /package/dist/collection/components/{picker-column → picker-legacy-column}/test/test.utils.js +0 -0
  1000. /package/dist/types/components/{picker → picker-legacy}/animations/ios.enter.d.ts +0 -0
  1001. /package/dist/types/components/{picker → picker-legacy}/animations/ios.leave.d.ts +0 -0
  1002. /package/dist/types/components/{picker → picker-legacy}/picker-interface.d.ts +0 -0
  1003. /package/dist/types/components/{picker-column → picker-legacy-column}/test/test.utils.d.ts +0 -0
@@ -24,7 +24,6 @@ function _interopNamespace(e) {
24
24
  }
25
25
 
26
26
  const NAMESPACE = 'ionic';
27
- const BUILD = /* ionic */ { allRenderFn: false, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: true, cmpDidUnload: false, cmpDidUpdate: true, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: true, cmpWillUpdate: false, connectedCallback: true, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: true, hostListenerTargetDocument: true, hostListenerTargetParent: false, hostListenerTargetWindow: true, hotModuleReplacement: false, hydrateClientSide: true, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: true, mode: true, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: true, propNumber: true, propString: true, reflect: true, scoped: true, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: true, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: true, state: true, style: true, svg: true, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: true, watchCallback: true };
28
27
 
29
28
  /**
30
29
  * Virtual DOM patching algorithm based on Snabbdom by
@@ -997,14 +996,44 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
997
996
  if (oldVNode && oldVNode.$tag$ === newVNode.$tag$ && oldParentVNode.$elm$) {
998
997
  {
999
998
  // we've got an old slot vnode and the wrapper is being replaced
1000
- // so let's move the old slot content back to its original location
1001
- putBackInOriginalLocation(oldParentVNode.$elm$, false);
999
+ // so let's move the old slot content to the root of the element currently being rendered
1000
+ relocateToHostRoot(oldParentVNode.$elm$);
1002
1001
  }
1003
1002
  }
1004
1003
  }
1005
1004
  }
1006
1005
  return elm;
1007
1006
  };
1007
+ /**
1008
+ * Relocates all child nodes of an element that were a part of a previous slot relocation
1009
+ * to the root of the Stencil component currently being rendered. This happens when a parent
1010
+ * element of a slot reference node dynamically changes and triggers a re-render. We cannot use
1011
+ * `putBackInOriginalLocation()` because that may relocate nodes to elements that will not be re-rendered
1012
+ * and so they will not be relocated again.
1013
+ *
1014
+ * @param parentElm The element potentially containing relocated nodes.
1015
+ */
1016
+ const relocateToHostRoot = (parentElm) => {
1017
+ plt.$flags$ |= 1 /* PLATFORM_FLAGS.isTmpDisconnected */;
1018
+ const host = parentElm.closest(hostTagName.toLowerCase());
1019
+ if (host != null) {
1020
+ const contentRefNode = Array.from(host.childNodes).find((ref) => ref['s-cr']);
1021
+ const childNodeArray = Array.from(parentElm.childNodes);
1022
+ // If we have a content ref, we need to invert the order of the nodes we're relocating
1023
+ // to preserve the correct order of elements in the DOM on future relocations
1024
+ for (const childNode of contentRefNode ? childNodeArray.reverse() : childNodeArray) {
1025
+ // Only relocate nodes that were slotted in
1026
+ if (childNode['s-sh'] != null) {
1027
+ host.insertBefore(childNode, contentRefNode !== null && contentRefNode !== void 0 ? contentRefNode : null);
1028
+ // Reset so we can correctly move the node around again.
1029
+ childNode['s-sh'] = undefined;
1030
+ // Need to tell the render pipeline to check to relocate slot content again
1031
+ checkSlotRelocate = true;
1032
+ }
1033
+ }
1034
+ }
1035
+ plt.$flags$ &= ~1 /* PLATFORM_FLAGS.isTmpDisconnected */;
1036
+ };
1008
1037
  const putBackInOriginalLocation = (parentElm, recursive) => {
1009
1038
  plt.$flags$ |= 1 /* PLATFORM_FLAGS.isTmpDisconnected */;
1010
1039
  const oldSlotChildNodes = parentElm.childNodes;
@@ -1410,7 +1439,12 @@ const patch = (oldVNode, newVNode, isInitialRender = false) => {
1410
1439
  isSvgMode = tag === 'svg' ? true : tag === 'foreignObject' ? false : isSvgMode;
1411
1440
  }
1412
1441
  {
1413
- if (tag === 'slot' && !useNativeShadowDom) ;
1442
+ if (tag === 'slot' && !useNativeShadowDom) {
1443
+ if (oldVNode.$name$ !== newVNode.$name$) {
1444
+ newVNode.$elm$['s-sn'] = newVNode.$name$ || '';
1445
+ relocateToHostRoot(newVNode.$elm$.parentElement);
1446
+ }
1447
+ }
1414
1448
  else {
1415
1449
  // either this is the first render of an element OR it's an update
1416
1450
  // AND we already know it's possible it could have changed
@@ -1545,7 +1579,7 @@ const markSlotContentForRelocation = (elm) => {
1545
1579
  if (!node['s-cn'] &&
1546
1580
  !node['s-nr'] &&
1547
1581
  node['s-hn'] !== childNode['s-hn'] &&
1548
- (!BUILD.experimentalSlotFixes )) {
1582
+ (!node['s-sh'] || node['s-sh'] !== childNode['s-hn'])) {
1549
1583
  // if `node` is located in the slot that `childNode` refers to (via the
1550
1584
  // `'s-sn'` property) then we need to relocate it from it's current spot
1551
1585
  // (under the host element parent) to the right slot location
@@ -1654,7 +1688,7 @@ const nullifyVNodeRefs = (vNode) => {
1654
1688
  * @param isInitialLoad whether or not this is the first call after page load
1655
1689
  */
1656
1690
  const renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
1657
- var _a, _b, _c, _d;
1691
+ var _a, _b, _c, _d, _e;
1658
1692
  const hostElm = hostRef.$hostElement$;
1659
1693
  const cmpMeta = hostRef.$cmpMeta$;
1660
1694
  const oldVNode = hostRef.$vnode$ || newVNode(null, null);
@@ -1740,7 +1774,7 @@ const renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
1740
1774
  // to make sure they get inserted into their new how in the same order they were declared in their original location.
1741
1775
  //
1742
1776
  // TODO(STENCIL-914): Remove `experimentalSlotFixes` check
1743
- {
1777
+ if ((insertBeforeNode && insertBeforeNode.nodeType === 1 /* NODE_TYPE.ElementNode */)) {
1744
1778
  let orgLocationNode = (_a = nodeToRelocate['s-ol']) === null || _a === void 0 ? void 0 : _a.previousSibling;
1745
1779
  while (orgLocationNode) {
1746
1780
  let refNode = (_b = orgLocationNode['s-nr']) !== null && _b !== void 0 ? _b : null;
@@ -1760,10 +1794,6 @@ const renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
1760
1794
  // since that the node to relocate
1761
1795
  // has a different next sibling or parent relocated
1762
1796
  if (nodeToRelocate !== insertBeforeNode) {
1763
- if (!nodeToRelocate['s-hn'] && nodeToRelocate['s-ol']) {
1764
- // probably a component in the index.html that doesn't have its hostname set
1765
- nodeToRelocate['s-hn'] = nodeToRelocate['s-ol'].parentNode.nodeName;
1766
- }
1767
1797
  // Add it back to the dom but in its new home
1768
1798
  // If we get to this point and `insertBeforeNode` is `null`, that means
1769
1799
  // we're just going to append the node as the last child of the parent. Passing
@@ -1801,6 +1831,21 @@ const renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
1801
1831
  // always reset
1802
1832
  relocateNodes.length = 0;
1803
1833
  }
1834
+ // Hide any elements that were projected through, but don't have a slot to go to.
1835
+ // Only an issue if there were no "slots" rendered. Otherwise, nodes are hidden correctly.
1836
+ // This _only_ happens for `scoped` components!
1837
+ if (cmpMeta.$flags$ & 2 /* CMP_FLAGS.scopedCssEncapsulation */) {
1838
+ for (const childNode of rootVnode.$elm$.childNodes) {
1839
+ if (childNode['s-hn'] !== hostTagName && !childNode['s-sh']) {
1840
+ // Store the initial value of `hidden` so we can reset it later when
1841
+ // moving nodes around.
1842
+ if (isInitialLoad && childNode['s-ih'] == null) {
1843
+ childNode['s-ih'] = (_e = childNode.hidden) !== null && _e !== void 0 ? _e : false;
1844
+ }
1845
+ childNode.hidden = true;
1846
+ }
1847
+ }
1848
+ }
1804
1849
  // Clear the content ref so we don't create a memory leak
1805
1850
  contentRef = undefined;
1806
1851
  };
@@ -2289,7 +2334,8 @@ const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
2289
2334
  if ((hostRef.$flags$ & 32 /* HOST_FLAGS.hasInitializedComponent */) === 0) {
2290
2335
  // Let the runtime know that the component has been initialized
2291
2336
  hostRef.$flags$ |= 32 /* HOST_FLAGS.hasInitializedComponent */;
2292
- {
2337
+ const bundleId = cmpMeta.$lazyBundleId$;
2338
+ if (bundleId) {
2293
2339
  // lazy loaded components
2294
2340
  // request the component's implementation to be
2295
2341
  // wired up with the host element
@@ -2336,6 +2382,14 @@ const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
2336
2382
  endNewInstance();
2337
2383
  fireConnectedCallback(hostRef.$lazyInstance$);
2338
2384
  }
2385
+ else {
2386
+ // sync constructor component
2387
+ Cstr = elm.constructor;
2388
+ // wait for the CustomElementRegistry to mark the component as ready before setting `isWatchReady`. Otherwise,
2389
+ // watchers may fire prematurely if `customElements.get()`/`customElements.whenDefined()` resolves _before_
2390
+ // Stencil has completed instantiating the component.
2391
+ customElements.whenDefined(cmpMeta.$tagName$).then(() => (hostRef.$flags$ |= 128 /* HOST_FLAGS.isWatchReady */));
2392
+ }
2339
2393
  if (Cstr.style) {
2340
2394
  // this component has styles but we haven't registered them yet
2341
2395
  let style = Cstr.style;
@@ -2483,6 +2537,370 @@ const disconnectedCallback = async (elm) => {
2483
2537
  }
2484
2538
  }
2485
2539
  };
2540
+ const patchPseudoShadowDom = (hostElementPrototype, descriptorPrototype) => {
2541
+ patchCloneNode(hostElementPrototype);
2542
+ patchSlotAppendChild(hostElementPrototype);
2543
+ patchSlotAppend(hostElementPrototype);
2544
+ patchSlotPrepend(hostElementPrototype);
2545
+ patchSlotInsertAdjacentElement(hostElementPrototype);
2546
+ patchSlotInsertAdjacentHTML(hostElementPrototype);
2547
+ patchSlotInsertAdjacentText(hostElementPrototype);
2548
+ patchTextContent(hostElementPrototype);
2549
+ patchChildSlotNodes(hostElementPrototype, descriptorPrototype);
2550
+ patchSlotRemoveChild(hostElementPrototype);
2551
+ };
2552
+ const patchCloneNode = (HostElementPrototype) => {
2553
+ const orgCloneNode = HostElementPrototype.cloneNode;
2554
+ HostElementPrototype.cloneNode = function (deep) {
2555
+ const srcNode = this;
2556
+ const isShadowDom = srcNode.shadowRoot && supportsShadow ;
2557
+ const clonedNode = orgCloneNode.call(srcNode, isShadowDom ? deep : false);
2558
+ if (!isShadowDom && deep) {
2559
+ let i = 0;
2560
+ let slotted, nonStencilNode;
2561
+ const stencilPrivates = [
2562
+ 's-id',
2563
+ 's-cr',
2564
+ 's-lr',
2565
+ 's-rc',
2566
+ 's-sc',
2567
+ 's-p',
2568
+ 's-cn',
2569
+ 's-sr',
2570
+ 's-sn',
2571
+ 's-hn',
2572
+ 's-ol',
2573
+ 's-nr',
2574
+ 's-si',
2575
+ ];
2576
+ for (; i < srcNode.childNodes.length; i++) {
2577
+ slotted = srcNode.childNodes[i]['s-nr'];
2578
+ nonStencilNode = stencilPrivates.every((privateField) => !srcNode.childNodes[i][privateField]);
2579
+ if (slotted) {
2580
+ if (clonedNode.__appendChild) {
2581
+ clonedNode.__appendChild(slotted.cloneNode(true));
2582
+ }
2583
+ else {
2584
+ clonedNode.appendChild(slotted.cloneNode(true));
2585
+ }
2586
+ }
2587
+ if (nonStencilNode) {
2588
+ clonedNode.appendChild(srcNode.childNodes[i].cloneNode(true));
2589
+ }
2590
+ }
2591
+ }
2592
+ return clonedNode;
2593
+ };
2594
+ };
2595
+ /**
2596
+ * Patches the `appendChild` method on a `scoped` Stencil component.
2597
+ * The patch will attempt to find a slot with the same name as the node being appended
2598
+ * and insert it into the slot reference if found. Otherwise, it falls-back to the original
2599
+ * `appendChild` method.
2600
+ *
2601
+ * @param HostElementPrototype The Stencil component to be patched
2602
+ */
2603
+ const patchSlotAppendChild = (HostElementPrototype) => {
2604
+ HostElementPrototype.__appendChild = HostElementPrototype.appendChild;
2605
+ HostElementPrototype.appendChild = function (newChild) {
2606
+ const slotName = (newChild['s-sn'] = getSlotName(newChild));
2607
+ const slotNode = getHostSlotNode(this.childNodes, slotName);
2608
+ if (slotNode) {
2609
+ const slotChildNodes = getHostSlotChildNodes(slotNode, slotName);
2610
+ const appendAfter = slotChildNodes[slotChildNodes.length - 1];
2611
+ const insertedNode = appendAfter.parentNode.insertBefore(newChild, appendAfter.nextSibling);
2612
+ // Check if there is fallback content that should be hidden
2613
+ updateFallbackSlotVisibility(this);
2614
+ // Force a re-render of the host element
2615
+ forceUpdate(this);
2616
+ return insertedNode;
2617
+ }
2618
+ return this.__appendChild(newChild);
2619
+ };
2620
+ };
2621
+ /**
2622
+ * Patches the `removeChild` method on a `scoped` Stencil component.
2623
+ * This patch attempts to remove the specified node from a slot reference
2624
+ * if the slot exists. Otherwise, it falls-back to the original `removeChild` method.
2625
+ *
2626
+ * @param ElementPrototype The Stencil component to be patched
2627
+ */
2628
+ const patchSlotRemoveChild = (ElementPrototype) => {
2629
+ ElementPrototype.__removeChild = ElementPrototype.removeChild;
2630
+ ElementPrototype.removeChild = function (toRemove) {
2631
+ if (toRemove && typeof toRemove['s-sn'] !== 'undefined') {
2632
+ const slotNode = getHostSlotNode(this.childNodes, toRemove['s-sn']);
2633
+ if (slotNode) {
2634
+ // Get all slot content
2635
+ const slotChildNodes = getHostSlotChildNodes(slotNode, toRemove['s-sn']);
2636
+ // See if any of the slotted content matches the node to remove
2637
+ const existingNode = slotChildNodes.find((n) => n === toRemove);
2638
+ if (existingNode) {
2639
+ existingNode.remove();
2640
+ // Check if there is fallback content that should be displayed if that
2641
+ // was the last node in the slot
2642
+ updateFallbackSlotVisibility(this);
2643
+ return;
2644
+ }
2645
+ }
2646
+ }
2647
+ return this.__removeChild(toRemove);
2648
+ };
2649
+ };
2650
+ /**
2651
+ * Patches the `prepend` method for a slotted node inside a scoped component.
2652
+ *
2653
+ * @param HostElementPrototype the `Element` to be patched
2654
+ */
2655
+ const patchSlotPrepend = (HostElementPrototype) => {
2656
+ const originalPrepend = HostElementPrototype.prepend;
2657
+ HostElementPrototype.prepend = function (...newChildren) {
2658
+ newChildren.forEach((newChild) => {
2659
+ if (typeof newChild === 'string') {
2660
+ newChild = this.ownerDocument.createTextNode(newChild);
2661
+ }
2662
+ const slotName = (newChild['s-sn'] = getSlotName(newChild));
2663
+ const slotNode = getHostSlotNode(this.childNodes, slotName);
2664
+ if (slotNode) {
2665
+ const slotPlaceholder = document.createTextNode('');
2666
+ slotPlaceholder['s-nr'] = newChild;
2667
+ slotNode['s-cr'].parentNode.__appendChild(slotPlaceholder);
2668
+ newChild['s-ol'] = slotPlaceholder;
2669
+ const slotChildNodes = getHostSlotChildNodes(slotNode, slotName);
2670
+ const appendAfter = slotChildNodes[0];
2671
+ return appendAfter.parentNode.insertBefore(newChild, appendAfter.nextSibling);
2672
+ }
2673
+ if (newChild.nodeType === 1 && !!newChild.getAttribute('slot')) {
2674
+ newChild.hidden = true;
2675
+ }
2676
+ return originalPrepend.call(this, newChild);
2677
+ });
2678
+ };
2679
+ };
2680
+ /**
2681
+ * Patches the `append` method for a slotted node inside a scoped component. The patched method uses
2682
+ * `appendChild` under-the-hood while creating text nodes for any new children that passed as bare strings.
2683
+ *
2684
+ * @param HostElementPrototype the `Element` to be patched
2685
+ */
2686
+ const patchSlotAppend = (HostElementPrototype) => {
2687
+ HostElementPrototype.append = function (...newChildren) {
2688
+ newChildren.forEach((newChild) => {
2689
+ if (typeof newChild === 'string') {
2690
+ newChild = this.ownerDocument.createTextNode(newChild);
2691
+ }
2692
+ this.appendChild(newChild);
2693
+ });
2694
+ };
2695
+ };
2696
+ /**
2697
+ * Patches the `insertAdjacentHTML` method for a slotted node inside a scoped component. Specifically,
2698
+ * we only need to patch the behavior for the specific `beforeend` and `afterbegin` positions so the element
2699
+ * gets inserted into the DOM in the correct location.
2700
+ *
2701
+ * @param HostElementPrototype the `Element` to be patched
2702
+ */
2703
+ const patchSlotInsertAdjacentHTML = (HostElementPrototype) => {
2704
+ const originalInsertAdjacentHtml = HostElementPrototype.insertAdjacentHTML;
2705
+ HostElementPrototype.insertAdjacentHTML = function (position, text) {
2706
+ if (position !== 'afterbegin' && position !== 'beforeend') {
2707
+ return originalInsertAdjacentHtml.call(this, position, text);
2708
+ }
2709
+ const container = this.ownerDocument.createElement('_');
2710
+ let node;
2711
+ container.innerHTML = text;
2712
+ if (position === 'afterbegin') {
2713
+ while ((node = container.firstChild)) {
2714
+ this.prepend(node);
2715
+ }
2716
+ }
2717
+ else if (position === 'beforeend') {
2718
+ while ((node = container.firstChild)) {
2719
+ this.append(node);
2720
+ }
2721
+ }
2722
+ };
2723
+ };
2724
+ /**
2725
+ * Patches the `insertAdjacentText` method for a slotted node inside a scoped component. Specifically,
2726
+ * we only need to patch the behavior for the specific `beforeend` and `afterbegin` positions so the text node
2727
+ * gets inserted into the DOM in the correct location.
2728
+ *
2729
+ * @param HostElementPrototype the `Element` to be patched
2730
+ */
2731
+ const patchSlotInsertAdjacentText = (HostElementPrototype) => {
2732
+ HostElementPrototype.insertAdjacentText = function (position, text) {
2733
+ this.insertAdjacentHTML(position, text);
2734
+ };
2735
+ };
2736
+ /**
2737
+ * Patches the `insertAdjacentElement` method for a slotted node inside a scoped component. Specifically,
2738
+ * we only need to patch the behavior for the specific `beforeend` and `afterbegin` positions so the element
2739
+ * gets inserted into the DOM in the correct location.
2740
+ *
2741
+ * @param HostElementPrototype the `Element` to be patched
2742
+ */
2743
+ const patchSlotInsertAdjacentElement = (HostElementPrototype) => {
2744
+ const originalInsertAdjacentElement = HostElementPrototype.insertAdjacentElement;
2745
+ HostElementPrototype.insertAdjacentElement = function (position, element) {
2746
+ if (position !== 'afterbegin' && position !== 'beforeend') {
2747
+ return originalInsertAdjacentElement.call(this, position, element);
2748
+ }
2749
+ if (position === 'afterbegin') {
2750
+ this.prepend(element);
2751
+ return element;
2752
+ }
2753
+ else if (position === 'beforeend') {
2754
+ this.append(element);
2755
+ return element;
2756
+ }
2757
+ return element;
2758
+ };
2759
+ };
2760
+ /**
2761
+ * Patches the text content of an unnamed slotted node inside a scoped component
2762
+ * @param hostElementPrototype the `Element` to be patched
2763
+ */
2764
+ const patchTextContent = (hostElementPrototype) => {
2765
+ const descriptor = Object.getOwnPropertyDescriptor(Node.prototype, 'textContent');
2766
+ Object.defineProperty(hostElementPrototype, '__textContent', descriptor);
2767
+ {
2768
+ // Patch `textContent` to mimic shadow root behavior
2769
+ Object.defineProperty(hostElementPrototype, 'textContent', {
2770
+ // To mimic shadow root behavior, we need to return the text content of all
2771
+ // nodes in a slot reference node
2772
+ get() {
2773
+ const slotRefNodes = getAllChildSlotNodes(this.childNodes);
2774
+ const textContent = slotRefNodes
2775
+ .map((node) => {
2776
+ var _a, _b;
2777
+ const text = [];
2778
+ // Need to get the text content of all nodes in the slot reference node
2779
+ let slotContent = node.nextSibling;
2780
+ while (slotContent && slotContent['s-sn'] === node['s-sn']) {
2781
+ if (slotContent.nodeType === 3 /* NODE_TYPES.TEXT_NODE */ || slotContent.nodeType === 1 /* NODE_TYPES.ELEMENT_NODE */) {
2782
+ text.push((_b = (_a = slotContent.textContent) === null || _a === void 0 ? void 0 : _a.trim()) !== null && _b !== void 0 ? _b : '');
2783
+ }
2784
+ slotContent = slotContent.nextSibling;
2785
+ }
2786
+ return text.filter((ref) => ref !== '').join(' ');
2787
+ })
2788
+ .filter((text) => text !== '')
2789
+ .join(' ');
2790
+ // Pad the string to return
2791
+ return ' ' + textContent + ' ';
2792
+ },
2793
+ // To mimic shadow root behavior, we need to overwrite all nodes in a slot
2794
+ // reference node. If a default slot reference node exists, the text content will be
2795
+ // placed there. Otherwise, the new text node will be hidden
2796
+ set(value) {
2797
+ const slotRefNodes = getAllChildSlotNodes(this.childNodes);
2798
+ slotRefNodes.forEach((node) => {
2799
+ // Remove the existing content of the slot
2800
+ let slotContent = node.nextSibling;
2801
+ while (slotContent && slotContent['s-sn'] === node['s-sn']) {
2802
+ const tmp = slotContent;
2803
+ slotContent = slotContent.nextSibling;
2804
+ tmp.remove();
2805
+ }
2806
+ // If this is a default slot, add the text node in the slot location.
2807
+ // Otherwise, destroy the slot reference node
2808
+ if (node['s-sn'] === '') {
2809
+ const textNode = this.ownerDocument.createTextNode(value);
2810
+ textNode['s-sn'] = '';
2811
+ node.parentElement.insertBefore(textNode, node.nextSibling);
2812
+ }
2813
+ else {
2814
+ node.remove();
2815
+ }
2816
+ });
2817
+ },
2818
+ });
2819
+ }
2820
+ };
2821
+ const patchChildSlotNodes = (elm, cmpMeta) => {
2822
+ class FakeNodeList extends Array {
2823
+ item(n) {
2824
+ return this[n];
2825
+ }
2826
+ }
2827
+ // TODO(STENCIL-854): Remove code related to legacy shadowDomShim field
2828
+ if (cmpMeta.$flags$ & 8 /* CMP_FLAGS.needsShadowDomShim */) {
2829
+ const childNodesFn = elm.__lookupGetter__('childNodes');
2830
+ Object.defineProperty(elm, 'children', {
2831
+ get() {
2832
+ return this.childNodes.map((n) => n.nodeType === 1);
2833
+ },
2834
+ });
2835
+ Object.defineProperty(elm, 'childElementCount', {
2836
+ get() {
2837
+ return elm.children.length;
2838
+ },
2839
+ });
2840
+ Object.defineProperty(elm, 'childNodes', {
2841
+ get() {
2842
+ const childNodes = childNodesFn.call(this);
2843
+ if ((plt.$flags$ & 1 /* PLATFORM_FLAGS.isTmpDisconnected */) === 0 &&
2844
+ getHostRef(this).$flags$ & 2 /* HOST_FLAGS.hasRendered */) {
2845
+ const result = new FakeNodeList();
2846
+ for (let i = 0; i < childNodes.length; i++) {
2847
+ const slot = childNodes[i]['s-nr'];
2848
+ if (slot) {
2849
+ result.push(slot);
2850
+ }
2851
+ }
2852
+ return result;
2853
+ }
2854
+ return FakeNodeList.from(childNodes);
2855
+ },
2856
+ });
2857
+ }
2858
+ };
2859
+ /**
2860
+ * Recursively finds all slot reference nodes ('s-sr') in a series of child nodes.
2861
+ *
2862
+ * @param childNodes The set of child nodes to search for slot reference nodes.
2863
+ * @returns An array of slot reference nodes.
2864
+ */
2865
+ const getAllChildSlotNodes = (childNodes) => {
2866
+ const slotRefNodes = [];
2867
+ for (const childNode of Array.from(childNodes)) {
2868
+ if (childNode['s-sr']) {
2869
+ slotRefNodes.push(childNode);
2870
+ }
2871
+ slotRefNodes.push(...getAllChildSlotNodes(childNode.childNodes));
2872
+ }
2873
+ return slotRefNodes;
2874
+ };
2875
+ const getSlotName = (node) => node['s-sn'] || (node.nodeType === 1 && node.getAttribute('slot')) || '';
2876
+ /**
2877
+ * Recursively searches a series of child nodes for a slot with the provided name.
2878
+ * @param childNodes the nodes to search for a slot with a specific name.
2879
+ * @param slotName the name of the slot to match on.
2880
+ * @returns a reference to the slot node that matches the provided name, `null` otherwise
2881
+ */
2882
+ const getHostSlotNode = (childNodes, slotName) => {
2883
+ let i = 0;
2884
+ let childNode;
2885
+ for (; i < childNodes.length; i++) {
2886
+ childNode = childNodes[i];
2887
+ if (childNode['s-sr'] && childNode['s-sn'] === slotName) {
2888
+ return childNode;
2889
+ }
2890
+ childNode = getHostSlotNode(childNode.childNodes, slotName);
2891
+ if (childNode) {
2892
+ return childNode;
2893
+ }
2894
+ }
2895
+ return null;
2896
+ };
2897
+ const getHostSlotChildNodes = (n, slotName) => {
2898
+ const childNodes = [n];
2899
+ while ((n = n.nextSibling) && n['s-sn'] === slotName) {
2900
+ childNodes.push(n);
2901
+ }
2902
+ return childNodes;
2903
+ };
2486
2904
  const bootstrapLazy = (lazyBundles, options = {}) => {
2487
2905
  var _a;
2488
2906
  const endBootstrap = createTime();
@@ -2579,6 +2997,14 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
2579
2997
  return getHostRef(this).$onReadyPromise$;
2580
2998
  }
2581
2999
  };
3000
+ // TODO(STENCIL-914): this check and `else` block can go away and be replaced by just the `scoped` check
3001
+ {
3002
+ // This check is intentionally not combined with the surrounding `experimentalSlotFixes` check
3003
+ // since, moving forward, we only want to patch the pseudo shadow DOM when the component is scoped
3004
+ if (cmpMeta.$flags$ & 2 /* CMP_FLAGS.scopedCssEncapsulation */) {
3005
+ patchPseudoShadowDom(HostElement.prototype, cmpMeta);
3006
+ }
3007
+ }
2582
3008
  cmpMeta.$lazyBundleId$ = lazyBundle[0];
2583
3009
  if (!exclude.includes(tagName) && !customElements.get(tagName)) {
2584
3010
  cmpTags.push(tagName);
@@ -2591,11 +3017,11 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
2591
3017
  if (cmpTags.length > 0) {
2592
3018
  // Add styles for `slot-fb` elements if any of our components are using slots outside the Shadow DOM
2593
3019
  if (hasSlotRelocation) {
2594
- dataStyles.innerHTML += SLOT_FB_CSS;
3020
+ dataStyles.textContent += SLOT_FB_CSS;
2595
3021
  }
2596
3022
  // Add hydration styles
2597
3023
  {
2598
- dataStyles.innerHTML += cmpTags + HYDRATED_CSS;
3024
+ dataStyles.textContent += cmpTags + HYDRATED_CSS;
2599
3025
  }
2600
3026
  // If we have styles, add them to the DOM
2601
3027
  if (dataStyles.innerHTML.length) {
@@ -2760,6 +3186,8 @@ const styles = /*@__PURE__*/ new Map();
2760
3186
  const modeResolutionChain = [];
2761
3187
  const win = typeof window !== 'undefined' ? window : {};
2762
3188
  const doc = win.document || { head: {} };
3189
+ const H = (win.HTMLElement || class {
3190
+ });
2763
3191
  const plt = {
2764
3192
  $flags$: 0,
2765
3193
  $resourcesUrl$: '',
@@ -2842,6 +3270,7 @@ const readTask = /*@__PURE__*/ queueTask(queueDomReads, false);
2842
3270
  const writeTask = /*@__PURE__*/ queueTask(queueDomWrites, true);
2843
3271
 
2844
3272
  exports.Build = Build;
3273
+ exports.H = H;
2845
3274
  exports.Host = Host;
2846
3275
  exports.bootstrapLazy = bootstrapLazy;
2847
3276
  exports.createEvent = createEvent;
@@ -4,11 +4,11 @@
4
4
  'use strict';
5
5
 
6
6
  const index$1 = require('./index-c8d52405.js');
7
- const hardwareBackButton = require('./hardware-back-button-2696acaf.js');
7
+ const hardwareBackButton = require('./hardware-back-button-1c67a5a2.js');
8
8
  const index = require('./index-5915f9b3.js');
9
- const helpers = require('./helpers-da4c0ed1.js');
10
- const ionicGlobal = require('./ionic-global-59a10130.js');
11
- const animation = require('./animation-c2840aea.js');
9
+ const helpers = require('./helpers-668b3d95.js');
10
+ const ionicGlobal = require('./ionic-global-5762eca9.js');
11
+ const animation = require('./animation-3e7bb91e.js');
12
12
 
13
13
  /**
14
14
  * baseAnimation
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const helpers = require('./helpers-da4c0ed1.js');
6
+ const helpers = require('./helpers-668b3d95.js');
7
7
  const index = require('./index-5915f9b3.js');
8
8
 
9
9
  const ION_CONTENT_TAG_NAME = 'ION-CONTENT';
@@ -3,8 +3,8 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const index = require('./index-0ffe376d.js');
7
- const helpers = require('./helpers-da4c0ed1.js');
6
+ const index = require('./index-2d21d526.js');
7
+ const helpers = require('./helpers-668b3d95.js');
8
8
 
9
9
  const LIFECYCLE_WILL_ENTER = 'ionViewWillEnter';
10
10
  const LIFECYCLE_DID_ENTER = 'ionViewDidEnter';
@@ -12,8 +12,8 @@ const LIFECYCLE_WILL_LEAVE = 'ionViewWillLeave';
12
12
  const LIFECYCLE_DID_LEAVE = 'ionViewDidLeave';
13
13
  const LIFECYCLE_WILL_UNLOAD = 'ionViewWillUnload';
14
14
 
15
- const iosTransitionAnimation = () => Promise.resolve().then(function () { return require('./ios.transition-96679580.js'); });
16
- const mdTransitionAnimation = () => Promise.resolve().then(function () { return require('./md.transition-d6c98822.js'); });
15
+ const iosTransitionAnimation = () => Promise.resolve().then(function () { return require('./ios.transition-3e119901.js'); });
16
+ const mdTransitionAnimation = () => Promise.resolve().then(function () { return require('./md.transition-c1392f92.js'); });
17
17
  // TODO(FW-2832): types
18
18
  const transition = (opts) => {
19
19
  return new Promise((resolve, reject) => {
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const gestureController = require('./gesture-controller-c40c045a.js');
6
+ const gestureController = require('./gesture-controller-9436f482.js');
7
7
 
8
8
  const addEventListener = (el, // TODO(FW-2832): type
9
9
  eventName, callback, opts) => {
@@ -5,24 +5,24 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const animation = require('./animation-c2840aea.js');
9
- const index = require('./index-9bfcb6e8.js');
10
- const ios_transition = require('./ios.transition-96679580.js');
11
- const md_transition = require('./md.transition-d6c98822.js');
8
+ const animation = require('./animation-3e7bb91e.js');
9
+ const index = require('./index-e4b6c97e.js');
10
+ const ios_transition = require('./ios.transition-3e119901.js');
11
+ const md_transition = require('./md.transition-c1392f92.js');
12
12
  const cubicBezier = require('./cubic-bezier-f2dccc53.js');
13
- const index$1 = require('./index-d1b59ffa.js');
14
- const ionicGlobal = require('./ionic-global-59a10130.js');
15
- const helpers = require('./helpers-da4c0ed1.js');
13
+ const index$1 = require('./index-ee07ed59.js');
14
+ const ionicGlobal = require('./ionic-global-5762eca9.js');
15
+ const helpers = require('./helpers-668b3d95.js');
16
16
  const config = require('./config-4f60b98a.js');
17
17
  const theme = require('./theme-d1c573d2.js');
18
- const index$2 = require('./index-4c96691f.js');
19
- const overlays = require('./overlays-db5d96f3.js');
18
+ const index$2 = require('./index-ba7ba0af.js');
19
+ const overlays = require('./overlays-44b8d0e0.js');
20
20
  require('./index-c8d52405.js');
21
- require('./index-0ffe376d.js');
22
- require('./gesture-controller-c40c045a.js');
23
- require('./hardware-back-button-2696acaf.js');
21
+ require('./index-2d21d526.js');
22
+ require('./gesture-controller-9436f482.js');
23
+ require('./hardware-back-button-1c67a5a2.js');
24
24
  require('./index-5915f9b3.js');
25
- require('./framework-delegate-e0e13baa.js');
25
+ require('./framework-delegate-0499d444.js');
26
26
 
27
27
  const IonicSlides = (opts) => {
28
28
  const { swiper, extendParams } = opts;