voyager-ionic-core 7.7.2 → 8.0.0-beta.1

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 (944) hide show
  1. package/components/action-sheet.js +4 -4
  2. package/components/alert.js +2 -2
  3. package/components/backdrop.js +1 -13
  4. package/components/button-active.js +1 -1
  5. package/components/button.js +2 -2
  6. package/components/checkbox.js +8 -80
  7. package/components/data.js +1 -1
  8. package/components/gesture-controller.js +1 -1
  9. package/components/helpers.js +2 -2
  10. package/components/index9.js +1 -1
  11. package/components/input-shims.js +8 -1
  12. package/components/ion-accordion-group.js +1 -1
  13. package/components/ion-back-button.js +1 -1
  14. package/components/ion-badge.js +2 -2
  15. package/components/ion-breadcrumb.js +2 -2
  16. package/components/ion-card-subtitle.js +2 -2
  17. package/components/ion-card-title.js +1 -1
  18. package/components/ion-card.js +2 -2
  19. package/components/ion-chip.js +2 -2
  20. package/components/ion-col.js +2 -2
  21. package/components/ion-content.js +5 -6
  22. package/components/ion-datetime-button.js +5 -5
  23. package/components/ion-datetime.js +41 -105
  24. package/components/ion-fab-button.js +4 -4
  25. package/components/ion-fab-list.js +3 -3
  26. package/components/ion-fab.js +2 -2
  27. package/components/ion-footer.js +3 -3
  28. package/components/ion-grid.js +2 -2
  29. package/components/ion-header.js +3 -3
  30. package/components/ion-img.js +1 -1
  31. package/components/ion-infinite-scroll-content.js +4 -4
  32. package/components/ion-infinite-scroll.js +1 -1
  33. package/components/ion-input.js +7 -93
  34. package/components/ion-item-divider.js +4 -4
  35. package/components/ion-item-group.js +1 -1
  36. package/components/ion-item-option.js +4 -4
  37. package/components/ion-item-options.js +4 -4
  38. package/components/ion-item-sliding.js +2 -2
  39. package/components/ion-loading.js +4 -4
  40. package/components/ion-menu-button.js +3 -3
  41. package/components/ion-menu-toggle.js +2 -2
  42. package/components/ion-menu.js +28 -43
  43. package/components/ion-modal.js +43 -28
  44. package/components/ion-nav-link.js +1 -1
  45. package/components/ion-nav.js +9 -5
  46. package/components/ion-picker-column-option.d.ts +11 -0
  47. package/components/ion-picker-column-option.js +9 -0
  48. package/components/ion-picker-column.js +2 -2
  49. package/components/ion-picker-legacy-column.d.ts +11 -0
  50. package/components/ion-picker-legacy-column.js +9 -0
  51. package/components/{ion-picker-internal.d.ts → ion-picker-legacy.d.ts} +4 -4
  52. package/components/ion-picker-legacy.js +321 -0
  53. package/components/ion-picker.js +1 -315
  54. package/components/ion-progress-bar.js +7 -4
  55. package/components/ion-range.js +34 -88
  56. package/components/ion-refresher-content.js +1 -1
  57. package/components/ion-refresher.js +4 -4
  58. package/components/ion-reorder-group.js +1 -1
  59. package/components/ion-reorder.js +1 -1
  60. package/components/ion-router-link.js +3 -3
  61. package/components/ion-router-outlet.js +2 -2
  62. package/components/ion-router.js +1 -1
  63. package/components/ion-row.js +1 -1
  64. package/components/ion-searchbar.js +7 -7
  65. package/components/ion-segment-button.js +5 -5
  66. package/components/ion-segment.js +2 -2
  67. package/components/ion-select-option.js +1 -1
  68. package/components/ion-select.js +67 -161
  69. package/components/ion-skeleton-text.js +2 -2
  70. package/components/ion-split-pane.js +28 -17
  71. package/components/ion-tab-bar.js +4 -4
  72. package/components/ion-tab-button.js +4 -4
  73. package/components/ion-tab.js +2 -2
  74. package/components/ion-tabs.js +1 -1
  75. package/components/ion-text.js +2 -2
  76. package/components/ion-textarea.js +7 -70
  77. package/components/ion-thumbnail.js +1 -1
  78. package/components/ion-title.js +3 -3
  79. package/components/ion-toast.js +12 -6
  80. package/components/ion-toggle.js +7 -64
  81. package/components/ion-toolbar.js +4 -4
  82. package/components/item.js +22 -7
  83. package/components/label.js +3 -3
  84. package/components/list-header.js +4 -4
  85. package/components/list.js +2 -2
  86. package/components/note.js +4 -4
  87. package/components/overlays.js +138 -42
  88. package/components/picker-column-option.js +124 -0
  89. package/components/picker-column.js +367 -324
  90. package/components/picker-column2.js +381 -0
  91. package/components/{picker-internal.js → picker.js} +33 -26
  92. package/components/popover.js +6 -6
  93. package/components/radio-group.js +1 -1
  94. package/components/radio.js +8 -81
  95. package/components/refresher.utils.js +1 -1
  96. package/components/ripple-effect.js +1 -1
  97. package/components/select-popover.js +2 -2
  98. package/components/spinner.js +1 -1
  99. package/components/swipe-back.js +1 -1
  100. package/css/core.css +90 -27
  101. package/css/core.css.map +1 -1
  102. package/css/display.css.map +1 -1
  103. package/css/float-elements.css.map +1 -1
  104. package/css/global.bundle.css +1 -1
  105. package/css/global.bundle.css.map +1 -1
  106. package/css/ionic-swiper.css.map +1 -1
  107. package/css/ionic.bundle.css +1 -1
  108. package/css/ionic.bundle.css.map +1 -1
  109. package/css/padding.css.map +1 -1
  110. package/css/structure.css.map +1 -1
  111. package/css/text-alignment.css.map +1 -1
  112. package/css/text-transformation.css.map +1 -1
  113. package/css/themes/dark.always.css +160 -0
  114. package/css/themes/dark.always.css.map +1 -0
  115. package/css/themes/dark.class.css +160 -0
  116. package/css/themes/dark.class.css.map +1 -0
  117. package/css/themes/dark.css +3 -0
  118. package/css/themes/dark.css.map +1 -0
  119. package/css/themes/dark.system.css +162 -0
  120. package/css/themes/dark.system.css.map +1 -0
  121. package/css/themes/high-contrast-dark.always.css +180 -0
  122. package/css/themes/high-contrast-dark.always.css.map +1 -0
  123. package/css/themes/high-contrast-dark.class.css +180 -0
  124. package/css/themes/high-contrast-dark.class.css.map +1 -0
  125. package/css/themes/high-contrast-dark.css +3 -0
  126. package/css/themes/high-contrast-dark.css.map +1 -0
  127. package/css/themes/high-contrast-dark.system.css +182 -0
  128. package/css/themes/high-contrast-dark.system.css.map +1 -0
  129. package/css/themes/high-contrast.always.css +101 -0
  130. package/css/themes/high-contrast.always.css.map +1 -0
  131. package/css/themes/high-contrast.class.css +101 -0
  132. package/css/themes/high-contrast.class.css.map +1 -0
  133. package/css/themes/high-contrast.css +3 -0
  134. package/css/themes/high-contrast.css.map +1 -0
  135. package/css/themes/high-contrast.system.css +103 -0
  136. package/css/themes/high-contrast.system.css.map +1 -0
  137. package/css/typography.css +1 -1
  138. package/css/typography.css.map +1 -1
  139. package/css/utils.bundle.css.map +1 -1
  140. package/dist/cjs/{animation-fdab9de5.js → animation-4ad55058.js} +1 -1
  141. package/dist/cjs/{app-globals-92ad1b3d.js → app-globals-4d26cb5a.js} +1 -1
  142. package/dist/cjs/{button-active-2d6520ec.js → button-active-e447f58b.js} +3 -3
  143. package/dist/cjs/{data-a5109f09.js → data-e2bf21de.js} +1 -1
  144. package/dist/cjs/{framework-delegate-a3e6d060.js → framework-delegate-53817ef1.js} +1 -1
  145. package/dist/cjs/{gesture-controller-c40c045a.js → gesture-controller-9436f482.js} +1 -0
  146. package/dist/cjs/{hardware-back-button-2696acaf.js → hardware-back-button-4cb049f1.js} +2 -2
  147. package/dist/cjs/{helpers-2e1028fa.js → helpers-b71ca811.js} +2 -3
  148. package/dist/cjs/{index-53d162b2.js → index-347883f6.js} +1 -1
  149. package/dist/cjs/{index-10da82ce.js → index-7574e3d2.js} +1 -1
  150. package/dist/cjs/{index-c3580a90.js → index-92bb95d6.js} +4 -4
  151. package/dist/cjs/{index-a43f7a0f.js → index-bbc5b1f7.js} +4 -4
  152. package/dist/cjs/{index-0ffe376d.js → index-ea266398.js} +2 -2
  153. package/dist/cjs/{index-d1b59ffa.js → index-ee07ed59.js} +1 -1
  154. package/dist/cjs/index.cjs.js +13 -13
  155. package/dist/cjs/{input-shims-6f804705.js → input-shims-679d87bc.js} +10 -3
  156. package/dist/cjs/{input.utils-d693d18a.js → input.utils-5175aea1.js} +1 -1
  157. package/dist/cjs/ion-accordion_2.cjs.entry.js +4 -4
  158. package/dist/cjs/ion-action-sheet.cjs.entry.js +14 -14
  159. package/dist/cjs/ion-alert.cjs.entry.js +12 -12
  160. package/dist/cjs/ion-app_8.cjs.entry.js +28 -29
  161. package/dist/cjs/ion-avatar_3.cjs.entry.js +5 -5
  162. package/dist/cjs/ion-back-button.cjs.entry.js +4 -4
  163. package/dist/cjs/ion-backdrop.cjs.entry.js +3 -15
  164. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +5 -5
  165. package/dist/cjs/ion-button_2.cjs.entry.js +5 -5
  166. package/dist/cjs/ion-card_5.cjs.entry.js +8 -8
  167. package/dist/cjs/ion-checkbox.cjs.entry.js +9 -77
  168. package/dist/cjs/ion-chip.cjs.entry.js +4 -4
  169. package/dist/cjs/ion-col_3.cjs.entry.js +7 -7
  170. package/dist/cjs/ion-datetime-button.cjs.entry.js +9 -9
  171. package/dist/cjs/ion-datetime_3.cjs.entry.js +56 -110
  172. package/dist/cjs/ion-fab_3.cjs.entry.js +12 -12
  173. package/dist/cjs/ion-img.cjs.entry.js +4 -4
  174. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +9 -9
  175. package/dist/cjs/ion-input.cjs.entry.js +12 -92
  176. package/dist/cjs/ion-item-option_3.cjs.entry.js +13 -13
  177. package/dist/cjs/ion-item_8.cjs.entry.js +45 -30
  178. package/dist/cjs/ion-loading.cjs.entry.js +12 -11
  179. package/dist/cjs/ion-menu_3.cjs.entry.js +40 -56
  180. package/dist/cjs/ion-modal.cjs.entry.js +53 -38
  181. package/dist/cjs/ion-nav_2.cjs.entry.js +13 -10
  182. package/dist/cjs/ion-picker-column-option.cjs.entry.js +106 -0
  183. package/dist/cjs/{ion-picker-column-internal.cjs.entry.js → ion-picker-column.cjs.entry.js} +124 -93
  184. package/dist/cjs/{ion-picker-internal.cjs.entry.js → ion-picker.cjs.entry.js} +32 -25
  185. package/dist/cjs/ion-popover.cjs.entry.js +13 -12
  186. package/dist/cjs/ion-progress-bar.cjs.entry.js +9 -6
  187. package/dist/cjs/ion-radio_2.cjs.entry.js +10 -79
  188. package/dist/cjs/ion-range.cjs.entry.js +37 -90
  189. package/dist/cjs/ion-refresher_2.cjs.entry.js +12 -12
  190. package/dist/cjs/ion-reorder_2.cjs.entry.js +7 -7
  191. package/dist/cjs/ion-ripple-effect.cjs.entry.js +3 -3
  192. package/dist/cjs/ion-route_4.cjs.entry.js +6 -6
  193. package/dist/cjs/ion-searchbar.cjs.entry.js +9 -9
  194. package/dist/cjs/ion-segment_2.cjs.entry.js +11 -11
  195. package/dist/cjs/ion-select_3.cjs.entry.js +80 -171
  196. package/dist/cjs/ion-spinner.cjs.entry.js +3 -3
  197. package/dist/cjs/ion-split-pane.cjs.entry.js +28 -18
  198. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +11 -11
  199. package/dist/cjs/ion-tab_2.cjs.entry.js +6 -6
  200. package/dist/cjs/ion-text.cjs.entry.js +4 -4
  201. package/dist/cjs/ion-textarea.cjs.entry.js +11 -71
  202. package/dist/cjs/ion-toast.cjs.entry.js +20 -14
  203. package/dist/cjs/ion-toggle.cjs.entry.js +10 -66
  204. package/dist/cjs/{ionic-global-59a10130.js → ionic-global-59aa7eb7.js} +1 -1
  205. package/dist/cjs/ionic.cjs.js +5 -5
  206. package/dist/cjs/{ios.transition-c3b11cc3.js → ios.transition-997fe325.js} +4 -4
  207. package/dist/cjs/loader.cjs.js +4 -4
  208. package/dist/cjs/{md.transition-82a8c649.js → md.transition-2b76c2c6.js} +4 -4
  209. package/dist/cjs/{notch-controller-db0127c4.js → notch-controller-8e0ae870.js} +1 -1
  210. package/dist/cjs/{overlays-fb7ca451.js → overlays-3d02b54f.js} +141 -44
  211. package/dist/cjs/{status-tap-692f6d32.js → status-tap-3761c2d4.js} +3 -3
  212. package/dist/cjs/{swipe-back-7a848bb8.js → swipe-back-5b71fc62.js} +3 -3
  213. package/dist/collection/collection-manifest.json +8 -7
  214. package/dist/collection/components/accordion-group/accordion-group.md.css +4 -26
  215. package/dist/collection/components/action-sheet/action-sheet.ios.css +16 -9
  216. package/dist/collection/components/action-sheet/action-sheet.js +2 -2
  217. package/dist/collection/components/action-sheet/action-sheet.md.css +10 -3
  218. package/dist/collection/components/action-sheet/test/a11y/action-sheet.e2e.js +23 -14
  219. package/dist/collection/components/action-sheet/test/basic/action-sheet-rendering.e2e.js +19 -0
  220. package/dist/collection/components/action-sheet/test/basic/action-sheet.spec.js +22 -0
  221. package/dist/collection/components/alert/alert.ios.css +33 -80
  222. package/dist/collection/components/alert/alert.md.css +25 -121
  223. package/dist/collection/components/alert/test/a11y/alert.e2e.js +22 -9
  224. package/dist/collection/components/back-button/back-button.ios.css +1 -1
  225. package/dist/collection/components/back-button/test/a11y/back-button.e2e.js +21 -0
  226. package/dist/collection/components/backdrop/backdrop.js +1 -13
  227. package/dist/collection/components/badge/badge.ios.css +1 -1
  228. package/dist/collection/components/badge/badge.md.css +1 -1
  229. package/dist/collection/components/badge/test/a11y/badge.e2e.js +18 -0
  230. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +9 -9
  231. package/dist/collection/components/breadcrumb/breadcrumb.md.css +9 -9
  232. package/dist/collection/components/button/button.ios.css +11 -11
  233. package/dist/collection/components/button/button.md.css +9 -9
  234. package/dist/collection/components/button/test/a11y/button.e2e.js +48 -0
  235. package/dist/collection/components/button/test/wrap/button.e2e.js +12 -24
  236. package/dist/collection/components/card/card.ios.css +1 -1
  237. package/dist/collection/components/card/card.md.css +1 -1
  238. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +1 -1
  239. package/dist/collection/components/card-subtitle/card-subtitle.md.css +1 -1
  240. package/dist/collection/components/card-title/card-title.md.css +1 -1
  241. package/dist/collection/components/checkbox/checkbox.ios.css +10 -88
  242. package/dist/collection/components/checkbox/checkbox.js +5 -118
  243. package/dist/collection/components/checkbox/checkbox.md.css +7 -85
  244. package/dist/collection/components/checkbox/test/a11y/checkbox.e2e.js +11 -2
  245. package/dist/collection/components/checkbox/test/basic/checkbox.e2e.js +10 -0
  246. package/dist/collection/components/chip/chip.js +2 -2
  247. package/dist/collection/components/col/col.js +2 -2
  248. package/dist/collection/components/content/content.css +0 -4
  249. package/dist/collection/components/content/content.js +3 -4
  250. package/dist/collection/components/datetime/datetime.ios.css +105 -117
  251. package/dist/collection/components/datetime/datetime.js +25 -77
  252. package/dist/collection/components/datetime/datetime.md.css +106 -114
  253. package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +1 -1
  254. package/dist/collection/components/datetime/test/a11y/datetime.spec.js +6 -9
  255. package/dist/collection/components/datetime/test/basic/datetime.e2e.js +13 -1
  256. package/dist/collection/components/datetime/test/datetime.e2e.js +2 -2
  257. package/dist/collection/components/datetime/test/disabled/datetime.spec.js +4 -4
  258. package/dist/collection/components/datetime/test/locale/datetime.e2e.js +2 -2
  259. package/dist/collection/components/datetime/test/minmax/datetime.e2e.js +6 -6
  260. package/dist/collection/components/datetime/test/month-year-picker/datetime.e2e.js +1 -1
  261. package/dist/collection/components/datetime/test/prefer-wheel/datetime.e2e.js +43 -41
  262. package/dist/collection/components/datetime/test/presentation/datetime.e2e.js +1 -1
  263. package/dist/collection/components/datetime/test/readonly/datetime.e2e.js +4 -4
  264. package/dist/collection/components/datetime/test/values/datetime.e2e.js +15 -12
  265. package/dist/collection/components/datetime/utils/data.js +1 -1
  266. package/dist/collection/components/datetime-button/datetime-button.ios.css +107 -0
  267. package/dist/collection/components/datetime-button/datetime-button.js +5 -5
  268. package/dist/collection/components/datetime-button/{datetime-button.css → datetime-button.md.css} +10 -7
  269. package/dist/collection/components/datetime-button/test/basic/datetime-button.e2e.js +12 -0
  270. package/dist/collection/components/fab/fab.js +2 -2
  271. package/dist/collection/components/fab-button/fab-button.ios.css +7 -7
  272. package/dist/collection/components/fab-button/fab-button.js +2 -2
  273. package/dist/collection/components/fab-button/fab-button.md.css +1 -1
  274. package/dist/collection/components/fab-button/test/a11y/fab-button.e2e.js +50 -0
  275. package/dist/collection/components/fab-list/fab-list.css +4 -42
  276. package/dist/collection/components/fab-list/fab-list.js +2 -2
  277. package/dist/collection/components/footer/footer.js +2 -2
  278. package/dist/collection/components/grid/grid.js +2 -2
  279. package/dist/collection/components/header/header.js +2 -2
  280. package/dist/collection/components/img/img.js +1 -1
  281. package/dist/collection/components/infinite-scroll/infinite-scroll.js +1 -1
  282. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +3 -3
  283. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +2 -2
  284. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +3 -3
  285. package/dist/collection/components/input/input.ios.css +11 -104
  286. package/dist/collection/components/input/input.js +6 -144
  287. package/dist/collection/components/input/input.md.css +35 -216
  288. package/dist/collection/components/input/test/a11y/input.e2e.js +41 -3
  289. package/dist/collection/components/input/test/item/input.e2e.js +21 -0
  290. package/dist/collection/components/item/item.ios.css +7 -31
  291. package/dist/collection/components/item/item.js +20 -5
  292. package/dist/collection/components/item/item.md.css +29 -112
  293. package/dist/collection/components/item/test/a11y/item.e2e.js +0 -40
  294. package/dist/collection/components/item-divider/item-divider.ios.css +3 -3
  295. package/dist/collection/components/item-divider/item-divider.js +2 -2
  296. package/dist/collection/components/item-divider/item-divider.md.css +7 -17
  297. package/dist/collection/components/item-group/item-group.js +1 -1
  298. package/dist/collection/components/item-option/item-option.ios.css +2 -2
  299. package/dist/collection/components/item-option/item-option.js +2 -2
  300. package/dist/collection/components/item-option/item-option.md.css +1 -1
  301. package/dist/collection/components/item-options/item-options.ios.css +1 -1
  302. package/dist/collection/components/item-options/item-options.js +1 -1
  303. package/dist/collection/components/item-options/item-options.md.css +1 -1
  304. package/dist/collection/components/item-sliding/item-sliding.js +1 -1
  305. package/dist/collection/components/item-sliding/test/a11y/item-sliding.e2e.js +28 -0
  306. package/dist/collection/components/label/label.ios.css +1 -5
  307. package/dist/collection/components/label/label.js +1 -1
  308. package/dist/collection/components/label/label.md.css +2 -6
  309. package/dist/collection/components/label/test/a11y/label.e2e.js +20 -0
  310. package/dist/collection/components/label/test/item/item.e2e.js +24 -0
  311. package/dist/collection/components/list/list.js +1 -1
  312. package/dist/collection/components/list/list.md.css +2 -26
  313. package/dist/collection/components/list-header/list-header.ios.css +2 -2
  314. package/dist/collection/components/list-header/list-header.js +2 -2
  315. package/dist/collection/components/list-header/list-header.md.css +1 -1
  316. package/dist/collection/components/loading/loading.ios.css +2 -2
  317. package/dist/collection/components/loading/loading.js +2 -2
  318. package/dist/collection/components/loading/loading.md.css +3 -3
  319. package/dist/collection/components/loading/test/a11y/loading.e2e.js +21 -5
  320. package/dist/collection/components/menu/menu.ios.css +72 -53
  321. package/dist/collection/components/menu/menu.js +25 -39
  322. package/dist/collection/components/menu/menu.md.css +72 -53
  323. package/dist/collection/components/menu-button/menu-button.ios.css +1 -1
  324. package/dist/collection/components/menu-button/menu-button.js +2 -2
  325. package/dist/collection/components/menu-button/test/a11y/menu-button.e2e.js +14 -0
  326. package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
  327. package/dist/collection/components/modal/gestures/swipe-to-close.js +1 -1
  328. package/dist/collection/components/modal/modal.ios.css +9 -38
  329. package/dist/collection/components/modal/modal.js +37 -5
  330. package/dist/collection/components/modal/modal.md.css +1 -1
  331. package/dist/collection/components/modal/test/modal-attributes.spec.js +32 -0
  332. package/dist/collection/components/modal/utils.js +2 -8
  333. package/dist/collection/components/nav/nav.js +23 -3
  334. package/dist/collection/components/nav/test/nav-controller.spec.js +36 -36
  335. package/dist/collection/components/nav-link/nav-link.js +1 -1
  336. package/dist/collection/components/note/note.ios.css +1 -1
  337. package/dist/collection/components/note/note.js +2 -2
  338. package/dist/collection/components/note/note.md.css +1 -1
  339. package/dist/collection/components/picker/picker.ios.css +97 -234
  340. package/dist/collection/components/picker/picker.js +488 -742
  341. package/dist/collection/components/picker/picker.md.css +98 -226
  342. package/dist/collection/components/{picker-internal/test/a11y/picker-internal.e2e.js → picker/test/a11y/picker.e2e.js} +2 -2
  343. package/dist/collection/components/picker/test/basic/picker.e2e.js +99 -13
  344. package/dist/collection/components/picker/test/custom/picker.e2e.js +85 -0
  345. package/dist/collection/components/{picker-internal/test/keyboard-entry/picker-internal.e2e.js → picker/test/keyboard-entry/picker.e2e.js} +79 -42
  346. package/dist/collection/components/{picker-column-internal/picker-column-internal.md.css → picker-column/picker-column.css} +96 -83
  347. package/dist/collection/components/picker-column/picker-column.js +514 -335
  348. package/dist/collection/components/{picker-column-internal/test/basic/picker-column-internal.e2e.js → picker-column/test/basic/picker-column.e2e.js} +8 -8
  349. package/dist/collection/components/picker-column/test/disabled/picker-column.e2e.js +91 -0
  350. package/dist/collection/components/picker-column/test/slots/picker-column.e2e.js +39 -0
  351. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +87 -0
  352. package/dist/collection/components/picker-column-option/picker-column-option.js +173 -0
  353. package/dist/collection/components/{picker-column-internal/picker-column-internal.ios.css → picker-column-option/picker-column-option.md.css} +6 -53
  354. package/dist/collection/components/picker-column-option/test/a11y/picker-column-option.e2e.js +18 -0
  355. package/dist/collection/components/picker-column-option/test/basic/picker-column-option.e2e.js +37 -0
  356. package/dist/collection/components/picker-column-option/test/picker-column-option.spec.js +29 -0
  357. package/dist/collection/components/{picker-internal/picker-internal.ios.css → picker-legacy/picker.ios.css} +155 -117
  358. package/dist/collection/components/picker-legacy/picker.js +821 -0
  359. package/dist/collection/components/{picker-internal/picker-internal.md.css → picker-legacy/picker.md.css} +144 -115
  360. package/dist/collection/components/picker-legacy/test/basic/picker.e2e.js +25 -0
  361. package/dist/collection/components/{picker → picker-legacy}/test/is-open/picker.e2e.js +4 -4
  362. package/dist/collection/components/{picker → picker-legacy}/test/picker-id.spec.js +5 -5
  363. package/dist/collection/components/{picker → picker-legacy}/test/trigger/picker.e2e.js +1 -1
  364. package/dist/collection/components/{picker-column → picker-legacy-column}/picker-column.ios.css +2 -26
  365. package/dist/collection/components/picker-legacy-column/picker-column.js +419 -0
  366. package/dist/collection/components/{picker-column → picker-legacy-column}/picker-column.md.css +3 -27
  367. package/dist/collection/components/{picker-column → picker-legacy-column}/test/picker-column-aria.spec.js +3 -3
  368. package/dist/collection/components/{picker-column → picker-legacy-column}/test/picker-column-dynamic.spec.js +2 -2
  369. package/dist/collection/components/{picker-column → picker-legacy-column}/test/picker-column.spec.js +2 -2
  370. package/dist/collection/components/{picker-column → picker-legacy-column}/test/standalone/picker-column.e2e.js +3 -3
  371. package/dist/collection/components/popover/popover.ios.css +3 -27
  372. package/dist/collection/components/popover/popover.js +5 -4
  373. package/dist/collection/components/progress-bar/progress-bar.ios.css +17 -11
  374. package/dist/collection/components/progress-bar/progress-bar.js +4 -1
  375. package/dist/collection/components/progress-bar/progress-bar.md.css +8 -10
  376. package/dist/collection/components/progress-bar/test/a11y/progress-bar.e2e.js +24 -0
  377. package/dist/collection/components/radio/radio.ios.css +10 -101
  378. package/dist/collection/components/radio/radio.js +5 -119
  379. package/dist/collection/components/radio/radio.md.css +8 -105
  380. package/dist/collection/components/radio/test/a11y/radio.e2e.js +114 -81
  381. package/dist/collection/components/radio-group/radio-group.js +1 -1
  382. package/dist/collection/components/range/range.ios.css +12 -90
  383. package/dist/collection/components/range/range.js +30 -123
  384. package/dist/collection/components/range/range.md.css +22 -152
  385. package/dist/collection/components/range/test/a11y/range.e2e.js +20 -10
  386. package/dist/collection/components/range/test/range-events.e2e.js +1 -1
  387. package/dist/collection/components/range/test/range.spec.js +0 -12
  388. package/dist/collection/components/refresher/refresher.ios.css +4 -27
  389. package/dist/collection/components/refresher/refresher.js +1 -1
  390. package/dist/collection/components/refresher/refresher.md.css +7 -30
  391. package/dist/collection/components/refresher/test/a11y/refresher.e2e.js +26 -0
  392. package/dist/collection/components/refresher-content/refresher-content.js +1 -1
  393. package/dist/collection/components/reorder/reorder.js +1 -1
  394. package/dist/collection/components/reorder-group/reorder-group.js +1 -1
  395. package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
  396. package/dist/collection/components/router-link/router-link.css +1 -1
  397. package/dist/collection/components/router-link/router-link.js +2 -2
  398. package/dist/collection/components/router-link/test/a11y/router-link.e2e.js +23 -0
  399. package/dist/collection/components/router-outlet/router-outlet.js +1 -1
  400. package/dist/collection/components/row/row.js +1 -1
  401. package/dist/collection/components/searchbar/searchbar.ios.css +11 -59
  402. package/dist/collection/components/searchbar/searchbar.js +4 -4
  403. package/dist/collection/components/searchbar/searchbar.md.css +10 -82
  404. package/dist/collection/components/segment/segment.js +2 -2
  405. package/dist/collection/components/segment/test/a11y/segment.e2e.js +23 -0
  406. package/dist/collection/components/segment-button/segment-button.ios.css +3 -3
  407. package/dist/collection/components/segment-button/segment-button.js +3 -3
  408. package/dist/collection/components/segment-button/segment-button.md.css +2 -2
  409. package/dist/collection/components/select/select.ios.css +10 -81
  410. package/dist/collection/components/select/select.js +66 -175
  411. package/dist/collection/components/select/select.md.css +38 -169
  412. package/dist/collection/components/select/test/a11y/select.e2e.js +68 -4
  413. package/dist/collection/components/select-option/select-option.js +1 -1
  414. package/dist/collection/components/select-popover/select-popover.js +1 -1
  415. package/dist/collection/components/select-popover/select-popover.md.css +4 -4
  416. package/dist/collection/components/select-popover/test/a11y/select-popover.e2e.js +32 -0
  417. package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
  418. package/dist/collection/components/spinner/spinner.js +1 -1
  419. package/dist/collection/components/split-pane/split-pane.ios.css +3 -55
  420. package/dist/collection/components/split-pane/split-pane.js +48 -14
  421. package/dist/collection/components/split-pane/split-pane.md.css +3 -55
  422. package/dist/collection/components/split-pane/test/wrapped-menu/split-pane.e2e.js +41 -0
  423. package/dist/collection/components/tab/tab.js +2 -2
  424. package/dist/collection/components/tab-bar/tab-bar.ios.css +4 -4
  425. package/dist/collection/components/tab-bar/tab-bar.js +2 -2
  426. package/dist/collection/components/tab-bar/tab-bar.md.css +3 -3
  427. package/dist/collection/components/tab-button/tab-button.ios.css +16 -94
  428. package/dist/collection/components/tab-button/tab-button.js +2 -2
  429. package/dist/collection/components/tab-button/tab-button.md.css +10 -93
  430. package/dist/collection/components/tabs/tabs.js +1 -1
  431. package/dist/collection/components/text/text.js +2 -2
  432. package/dist/collection/components/textarea/test/a11y/textarea.e2e.js +41 -3
  433. package/dist/collection/components/textarea/test/item/textarea.e2e.js +21 -0
  434. package/dist/collection/components/textarea/textarea.ios.css +13 -103
  435. package/dist/collection/components/textarea/textarea.js +5 -84
  436. package/dist/collection/components/textarea/textarea.md.css +37 -226
  437. package/dist/collection/components/thumbnail/thumbnail.js +1 -1
  438. package/dist/collection/components/title/title.ios.css +2 -21
  439. package/dist/collection/components/title/title.js +2 -2
  440. package/dist/collection/components/toast/test/a11y/toast.e2e.js +89 -24
  441. package/dist/collection/components/toast/toast.ios.css +8 -55
  442. package/dist/collection/components/toast/toast.js +9 -3
  443. package/dist/collection/components/toast/toast.md.css +10 -57
  444. package/dist/collection/components/toggle/test/a11y/toggle.e2e.js +8 -2
  445. package/dist/collection/components/toggle/toggle.ios.css +11 -90
  446. package/dist/collection/components/toggle/toggle.js +5 -101
  447. package/dist/collection/components/toggle/toggle.md.css +6 -91
  448. package/dist/collection/components/toolbar/toolbar.ios.css +2 -2
  449. package/dist/collection/components/toolbar/toolbar.js +2 -2
  450. package/dist/collection/components/toolbar/toolbar.md.css +1 -1
  451. package/dist/collection/css/test/a11y/typography.e2e.js +18 -0
  452. package/dist/collection/themes/test/colors/theme.e2e.js +170 -0
  453. package/dist/collection/utils/focus-trap.js +78 -0
  454. package/dist/collection/utils/gesture/button-active.js +1 -1
  455. package/dist/collection/utils/gesture/gesture-controller.js +1 -1
  456. package/dist/collection/utils/helpers.js +1 -1
  457. package/dist/collection/utils/input-shims/input-shims.js +8 -1
  458. package/dist/collection/utils/native/status-bar.js +0 -11
  459. package/dist/collection/utils/overlays.js +63 -41
  460. package/dist/collection/utils/test/aria.spec.js +2 -1
  461. package/dist/collection/utils/test/overlays/overlays-scroll-blocking.spec.js +65 -0
  462. package/dist/collection/utils/test/overlays/overlays.e2e.js +89 -0
  463. package/dist/collection/utils/test/playwright/generator.js +1 -0
  464. package/dist/collection/utils/test/playwright/page/utils/set-content.js +1 -1
  465. package/dist/docs.json +569 -331
  466. package/dist/esm/{animation-60dbdd13.js → animation-a4acf150.js} +1 -1
  467. package/dist/esm/{app-globals-5cf6195b.js → app-globals-cfb6787b.js} +1 -1
  468. package/dist/esm/{button-active-47ac8092.js → button-active-454e5c57.js} +3 -3
  469. package/dist/esm/{data-0f3ab200.js → data-691286f1.js} +1 -1
  470. package/dist/esm/{framework-delegate-fed7fe7c.js → framework-delegate-1eb3236c.js} +1 -1
  471. package/dist/esm/{gesture-controller-1bf57181.js → gesture-controller-314a54f6.js} +1 -1
  472. package/dist/esm/{hardware-back-button-b410a047.js → hardware-back-button-3a14f99e.js} +2 -2
  473. package/dist/esm/{helpers-c0b9ca37.js → helpers-ae74b3c9.js} +2 -2
  474. package/dist/esm/{index-47b2066d.js → index-03086279.js} +4 -4
  475. package/dist/esm/{index-d64f34ea.js → index-1f563746.js} +1 -1
  476. package/dist/esm/{index-2cf77112.js → index-39782642.js} +2 -2
  477. package/dist/esm/{index-0b4beb69.js → index-5847f4a9.js} +4 -4
  478. package/dist/esm/{index-eb12ef92.js → index-66871a1d.js} +1 -1
  479. package/dist/esm/{index-4c30cddd.js → index-9b6d6df3.js} +2 -2
  480. package/dist/esm/index.js +13 -13
  481. package/dist/esm/{input-shims-b90ca55f.js → input-shims-56c1f603.js} +10 -3
  482. package/dist/esm/{input.utils-6e9b0046.js → input.utils-482fc893.js} +1 -1
  483. package/dist/esm/ion-accordion_2.entry.js +4 -4
  484. package/dist/esm/ion-action-sheet.entry.js +14 -14
  485. package/dist/esm/ion-alert.entry.js +12 -12
  486. package/dist/esm/ion-app_8.entry.js +28 -29
  487. package/dist/esm/ion-avatar_3.entry.js +5 -5
  488. package/dist/esm/ion-back-button.entry.js +4 -4
  489. package/dist/esm/ion-backdrop.entry.js +3 -15
  490. package/dist/esm/ion-breadcrumb_2.entry.js +5 -5
  491. package/dist/esm/ion-button_2.entry.js +5 -5
  492. package/dist/esm/ion-card_5.entry.js +8 -8
  493. package/dist/esm/ion-checkbox.entry.js +9 -77
  494. package/dist/esm/ion-chip.entry.js +4 -4
  495. package/dist/esm/ion-col_3.entry.js +7 -7
  496. package/dist/esm/ion-datetime-button.entry.js +9 -9
  497. package/dist/esm/ion-datetime_3.entry.js +55 -109
  498. package/dist/esm/ion-fab_3.entry.js +12 -12
  499. package/dist/esm/ion-img.entry.js +4 -4
  500. package/dist/esm/ion-infinite-scroll_2.entry.js +9 -9
  501. package/dist/esm/ion-input.entry.js +12 -92
  502. package/dist/esm/ion-item-option_3.entry.js +13 -13
  503. package/dist/esm/ion-item_8.entry.js +45 -30
  504. package/dist/esm/ion-loading.entry.js +12 -11
  505. package/dist/esm/ion-menu_3.entry.js +41 -57
  506. package/dist/esm/ion-modal.entry.js +53 -38
  507. package/dist/esm/ion-nav_2.entry.js +13 -10
  508. package/dist/esm/ion-picker-column-option.entry.js +102 -0
  509. package/dist/esm/{ion-picker-column-internal.entry.js → ion-picker-column.entry.js} +124 -93
  510. package/dist/esm/{ion-picker-internal.entry.js → ion-picker.entry.js} +32 -25
  511. package/dist/esm/ion-popover.entry.js +13 -12
  512. package/dist/esm/ion-progress-bar.entry.js +9 -6
  513. package/dist/esm/ion-radio_2.entry.js +10 -79
  514. package/dist/esm/ion-range.entry.js +38 -91
  515. package/dist/esm/ion-refresher_2.entry.js +12 -12
  516. package/dist/esm/ion-reorder_2.entry.js +7 -7
  517. package/dist/esm/ion-ripple-effect.entry.js +3 -3
  518. package/dist/esm/ion-route_4.entry.js +6 -6
  519. package/dist/esm/ion-searchbar.entry.js +9 -9
  520. package/dist/esm/ion-segment_2.entry.js +11 -11
  521. package/dist/esm/ion-select_3.entry.js +78 -169
  522. package/dist/esm/ion-spinner.entry.js +3 -3
  523. package/dist/esm/ion-split-pane.entry.js +28 -18
  524. package/dist/esm/ion-tab-bar_2.entry.js +11 -11
  525. package/dist/esm/ion-tab_2.entry.js +6 -6
  526. package/dist/esm/ion-text.entry.js +4 -4
  527. package/dist/esm/ion-textarea.entry.js +12 -72
  528. package/dist/esm/ion-toast.entry.js +21 -15
  529. package/dist/esm/ion-toggle.entry.js +10 -66
  530. package/dist/esm/{ionic-global-ad9a1810.js → ionic-global-c976d684.js} +1 -1
  531. package/dist/esm/ionic.js +6 -6
  532. package/dist/esm/{ios.transition-b76c7020.js → ios.transition-a097dbf5.js} +4 -4
  533. package/dist/esm/loader.js +5 -5
  534. package/dist/esm/{md.transition-564937a7.js → md.transition-b4170ef7.js} +4 -4
  535. package/dist/esm/{notch-controller-15d281a4.js → notch-controller-18bf9f76.js} +1 -1
  536. package/dist/esm/{overlays-04a9a43f.js → overlays-4ba3b255.js} +141 -45
  537. package/dist/esm/{status-tap-5a95077d.js → status-tap-7a12f017.js} +3 -3
  538. package/dist/esm/{swipe-back-fa0ec5cd.js → swipe-back-ae14449a.js} +3 -3
  539. package/dist/esm-es5/{animation-60dbdd13.js → animation-a4acf150.js} +1 -1
  540. package/dist/esm-es5/app-globals-cfb6787b.js +4 -0
  541. package/dist/esm-es5/button-active-454e5c57.js +4 -0
  542. package/dist/esm-es5/{framework-delegate-fed7fe7c.js → framework-delegate-1eb3236c.js} +1 -1
  543. package/dist/esm-es5/{gesture-controller-1bf57181.js → gesture-controller-314a54f6.js} +1 -1
  544. package/dist/esm-es5/{hardware-back-button-b410a047.js → hardware-back-button-3a14f99e.js} +1 -1
  545. package/dist/esm-es5/helpers-ae74b3c9.js +4 -0
  546. package/dist/esm-es5/{index-47b2066d.js → index-03086279.js} +1 -1
  547. package/dist/esm-es5/index-1f563746.js +4 -0
  548. package/dist/esm-es5/{index-2cf77112.js → index-39782642.js} +1 -1
  549. package/dist/esm-es5/{index-0b4beb69.js → index-5847f4a9.js} +1 -1
  550. package/dist/esm-es5/{index-eb12ef92.js → index-66871a1d.js} +1 -1
  551. package/dist/esm-es5/{index-4c30cddd.js → index-9b6d6df3.js} +1 -1
  552. package/dist/esm-es5/index.js +1 -1
  553. package/dist/esm-es5/{input-shims-b90ca55f.js → input-shims-56c1f603.js} +1 -1
  554. package/dist/esm-es5/{input.utils-6e9b0046.js → input.utils-482fc893.js} +1 -1
  555. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  556. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  557. package/dist/esm-es5/ion-alert.entry.js +1 -1
  558. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  559. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  560. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  561. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  562. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  563. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  564. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  565. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  566. package/dist/esm-es5/ion-chip.entry.js +1 -1
  567. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  568. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  569. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  570. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  571. package/dist/esm-es5/ion-img.entry.js +1 -1
  572. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  573. package/dist/esm-es5/ion-input.entry.js +1 -1
  574. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  575. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  576. package/dist/esm-es5/ion-loading.entry.js +1 -1
  577. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  578. package/dist/esm-es5/ion-modal.entry.js +1 -1
  579. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  580. package/dist/esm-es5/ion-picker-column-option.entry.js +4 -0
  581. package/dist/esm-es5/ion-picker-column.entry.js +4 -0
  582. package/dist/esm-es5/ion-picker.entry.js +4 -0
  583. package/dist/esm-es5/ion-popover.entry.js +1 -1
  584. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  585. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  586. package/dist/esm-es5/ion-range.entry.js +1 -1
  587. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  588. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  589. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  590. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  591. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  592. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  593. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  594. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  595. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  596. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  597. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  598. package/dist/esm-es5/ion-text.entry.js +1 -1
  599. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  600. package/dist/esm-es5/ion-toast.entry.js +1 -1
  601. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  602. package/dist/esm-es5/{ionic-global-ad9a1810.js → ionic-global-c976d684.js} +1 -1
  603. package/dist/esm-es5/ionic.js +1 -1
  604. package/dist/esm-es5/{ios.transition-b76c7020.js → ios.transition-a097dbf5.js} +1 -1
  605. package/dist/esm-es5/loader.js +1 -1
  606. package/dist/esm-es5/md.transition-b4170ef7.js +4 -0
  607. package/dist/esm-es5/{notch-controller-15d281a4.js → notch-controller-18bf9f76.js} +1 -1
  608. package/dist/esm-es5/overlays-4ba3b255.js +4 -0
  609. package/dist/esm-es5/{status-tap-5a95077d.js → status-tap-7a12f017.js} +1 -1
  610. package/dist/esm-es5/{swipe-back-fa0ec5cd.js → swipe-back-ae14449a.js} +1 -1
  611. package/dist/html.html-data.json +152 -37
  612. package/dist/ionic/index.esm.js +1 -1
  613. package/dist/ionic/ionic.esm.js +1 -1
  614. package/dist/ionic/ionic.js +1 -1
  615. package/dist/ionic/p-03f63663.system.js +4 -0
  616. package/dist/ionic/p-060fdc03.entry.js +4 -0
  617. package/dist/ionic/{p-b8c685a7.system.js → p-069388dd.system.js} +1 -1
  618. package/dist/ionic/p-06fccad7.entry.js +4 -0
  619. package/dist/ionic/p-09872ec8.system.entry.js +4 -0
  620. package/dist/ionic/p-0ca35c1d.system.entry.js +4 -0
  621. package/dist/ionic/p-134d4936.system.js +4 -0
  622. package/dist/ionic/{p-a3f572a7.js → p-15708968.js} +1 -1
  623. package/dist/ionic/p-1600d68c.system.entry.js +4 -0
  624. package/dist/ionic/p-19e79fe8.entry.js +4 -0
  625. package/dist/ionic/{p-61ba2137.system.js → p-19f6ac6c.system.js} +1 -1
  626. package/dist/ionic/{p-70e34286.system.entry.js → p-1a5ed3fe.system.entry.js} +1 -1
  627. package/dist/ionic/p-1a68de09.entry.js +4 -0
  628. package/dist/ionic/p-1bca443b.system.entry.js +4 -0
  629. package/dist/ionic/p-1c436e95.system.entry.js +4 -0
  630. package/dist/ionic/{p-657ccdd6.entry.js → p-1ce172db.entry.js} +1 -1
  631. package/dist/ionic/p-1e0a18a1.system.entry.js +4 -0
  632. package/dist/ionic/{p-c80c7e90.system.js → p-1ea88de9.system.js} +1 -1
  633. package/dist/ionic/p-1ed99eba.system.entry.js +4 -0
  634. package/dist/ionic/{p-de55ec45.js → p-1fa738c4.js} +1 -1
  635. package/dist/ionic/{p-c7c8429a.system.js → p-20d469d0.system.js} +1 -1
  636. package/dist/ionic/p-22d2a891.js +4 -0
  637. package/dist/ionic/p-239262e4.system.entry.js +4 -0
  638. package/dist/ionic/p-25850474.entry.js +4 -0
  639. package/dist/ionic/{p-ceceac26.js → p-27594fc2.js} +1 -1
  640. package/dist/ionic/{p-f0194418.system.entry.js → p-2b3e0d99.system.entry.js} +1 -1
  641. package/dist/ionic/p-300b2cf1.entry.js +4 -0
  642. package/dist/ionic/{p-6525a8cd.system.js → p-30892e0c.system.js} +1 -1
  643. package/dist/ionic/p-32bd7ed7.entry.js +4 -0
  644. package/dist/ionic/{p-74deb358.system.js → p-3410a9cb.system.js} +1 -1
  645. package/dist/ionic/{p-717e2526.system.entry.js → p-3bac30bf.system.entry.js} +2 -2
  646. package/dist/ionic/{p-31b2326e.system.js → p-3e1e14d9.system.js} +1 -1
  647. package/dist/ionic/p-41970e75.entry.js +4 -0
  648. package/dist/ionic/p-43322b14.js +4 -0
  649. package/dist/ionic/p-4523be60.entry.js +4 -0
  650. package/dist/ionic/p-454b36f7.system.entry.js +4 -0
  651. package/dist/ionic/p-466bdeae.entry.js +4 -0
  652. package/dist/ionic/p-4825e380.entry.js +4 -0
  653. package/dist/ionic/{p-6871553b.system.js → p-4a8f173c.system.js} +1 -1
  654. package/dist/ionic/p-4ad02639.entry.js +4 -0
  655. package/dist/ionic/p-4c2cac66.entry.js +4 -0
  656. package/dist/ionic/{p-eb07b88f.entry.js → p-5a055df4.entry.js} +1 -1
  657. package/dist/ionic/{p-5d7e32ce.js → p-5aa60929.js} +1 -1
  658. package/dist/ionic/p-5afb6e48.entry.js +4 -0
  659. package/dist/ionic/p-5c3991e3.system.entry.js +4 -0
  660. package/dist/ionic/p-602494c6.entry.js +4 -0
  661. package/dist/ionic/{p-ed7a529f.js → p-60efe117.js} +1 -1
  662. package/dist/ionic/p-62f15daf.system.entry.js +4 -0
  663. package/dist/ionic/{p-30cd5e7b.js → p-65d3f0e9.js} +1 -1
  664. package/dist/ionic/p-6657681b.system.entry.js +4 -0
  665. package/dist/ionic/p-6d95943d.system.js +4 -0
  666. package/dist/ionic/p-6e1fa025.js +4 -0
  667. package/dist/ionic/{p-c11bab7e.entry.js → p-6e5eeb35.entry.js} +1 -1
  668. package/dist/ionic/p-6ef5f4da.entry.js +4 -0
  669. package/dist/ionic/{p-c308f773.entry.js → p-6f6d56f1.entry.js} +1 -1
  670. package/dist/ionic/{p-123b4809.js → p-6fd26009.js} +1 -1
  671. package/dist/ionic/p-70218e28.system.entry.js +4 -0
  672. package/dist/ionic/p-72bc2484.system.entry.js +4 -0
  673. package/dist/ionic/p-7541ca9f.system.entry.js +4 -0
  674. package/dist/ionic/{p-31c495c2.js → p-760dbd5e.js} +1 -1
  675. package/dist/ionic/p-7665bbbc.system.entry.js +4 -0
  676. package/dist/ionic/{p-5c580e89.entry.js → p-77982637.entry.js} +1 -1
  677. package/dist/ionic/{p-64856c3c.system.entry.js → p-780ff3b5.system.entry.js} +1 -1
  678. package/dist/ionic/p-7a3fa32c.entry.js +4 -0
  679. package/dist/ionic/{p-88e9052d.entry.js → p-7b44b443.entry.js} +1 -1
  680. package/dist/ionic/p-7b795aee.system.entry.js +4 -0
  681. package/dist/ionic/p-7cc01684.js +4 -0
  682. package/dist/ionic/{p-3c6f02cf.system.js → p-816476b0.system.js} +1 -1
  683. package/dist/ionic/p-81869a97.system.entry.js +4 -0
  684. package/dist/ionic/p-82d459c1.js +4 -0
  685. package/dist/ionic/{p-a85d9047.system.entry.js → p-82f5375e.system.entry.js} +1 -1
  686. package/dist/ionic/p-842777af.js +4 -0
  687. package/dist/ionic/p-85464e28.system.entry.js +4 -0
  688. package/dist/ionic/{p-95d5a097.entry.js → p-85cb4733.entry.js} +1 -1
  689. package/dist/ionic/{p-8794fa00.system.entry.js → p-874510e9.system.entry.js} +1 -1
  690. package/dist/ionic/{p-37c33319.system.js → p-8a50f8d6.system.js} +1 -1
  691. package/dist/ionic/{p-b5839dc2.js → p-8ab308e9.js} +1 -1
  692. package/dist/ionic/{p-3481d54e.system.entry.js → p-8aeed464.system.entry.js} +1 -1
  693. package/dist/ionic/p-8ba5912c.entry.js +4 -0
  694. package/dist/ionic/{p-94be3ad7.js → p-8d4d902b.js} +1 -1
  695. package/dist/ionic/p-8d50220b.system.js +4 -0
  696. package/dist/ionic/{p-72fa96bf.system.js → p-8d602214.system.js} +1 -1
  697. package/dist/ionic/p-8e3ee444.system.entry.js +4 -0
  698. package/dist/ionic/{p-7173ba59.system.entry.js → p-8e83b7f1.system.entry.js} +2 -2
  699. package/dist/ionic/{p-f5d2dc9b.js → p-8ededb41.js} +1 -1
  700. package/dist/ionic/p-91a72ad6.system.entry.js +4 -0
  701. package/dist/ionic/p-9382ebab.entry.js +4 -0
  702. package/dist/ionic/p-942c19cb.entry.js +4 -0
  703. package/dist/ionic/{p-a5951821.system.js → p-95e14c7b.system.js} +1 -1
  704. package/dist/ionic/p-96391c0e.entry.js +4 -0
  705. package/dist/ionic/{p-275705e5.entry.js → p-97135baa.entry.js} +1 -1
  706. package/dist/ionic/{p-bb3615f7.js → p-9b97df10.js} +1 -1
  707. package/dist/ionic/{p-c2289cd1.js → p-9d6f351e.js} +1 -1
  708. package/dist/ionic/{p-fd8ced99.system.js → p-9e3b3f15.system.js} +1 -1
  709. package/dist/ionic/{p-9ec7208d.system.js → p-a06af32c.system.js} +1 -1
  710. package/dist/ionic/p-a375c9f6.system.entry.js +4 -0
  711. package/dist/ionic/p-a58ec401.js +4 -0
  712. package/dist/ionic/p-a5b7a286.entry.js +4 -0
  713. package/dist/ionic/{p-9393a49f.js → p-a6cc38d4.js} +1 -1
  714. package/dist/ionic/{p-2e14c533.system.js → p-a71dc777.system.js} +1 -1
  715. package/dist/ionic/{p-d4cadd34.system.js → p-a8cc0027.system.js} +1 -1
  716. package/dist/ionic/{p-afd6d696.system.entry.js → p-aaca8dd4.system.entry.js} +1 -1
  717. package/dist/ionic/p-ad2b216a.system.entry.js +4 -0
  718. package/dist/ionic/p-add93c7a.entry.js +4 -0
  719. package/dist/ionic/{p-3079950e.entry.js → p-afcd4f49.entry.js} +1 -1
  720. package/dist/ionic/p-b1a9e85a.system.entry.js +4 -0
  721. package/dist/ionic/p-b4bb9cd0.system.entry.js +4 -0
  722. package/dist/ionic/p-baa409f1.system.entry.js +4 -0
  723. package/dist/ionic/p-bcb58446.entry.js +4 -0
  724. package/dist/ionic/p-c2336a9e.system.entry.js +4 -0
  725. package/dist/ionic/p-c38c5dfc.system.js +4 -0
  726. package/dist/ionic/{p-337ac0f5.entry.js → p-c3a2e5cc.entry.js} +1 -1
  727. package/dist/ionic/{p-a3df16b9.system.entry.js → p-c5b77291.system.entry.js} +1 -1
  728. package/dist/ionic/{p-b253ad7f.js → p-c880c809.js} +1 -1
  729. package/dist/ionic/{p-c747f89b.system.entry.js → p-cb0e4100.system.entry.js} +2 -2
  730. package/dist/ionic/{p-e2bb92ed.system.js → p-cb944b1a.system.js} +1 -1
  731. package/dist/ionic/p-cbc3840e.entry.js +4 -0
  732. package/dist/ionic/p-cd366840.system.entry.js +4 -0
  733. package/dist/ionic/p-cf852615.system.entry.js +4 -0
  734. package/dist/ionic/{p-ea25b4c8.system.entry.js → p-d4d0538c.system.entry.js} +1 -1
  735. package/dist/ionic/{p-027f3674.entry.js → p-d504bc71.entry.js} +1 -1
  736. package/dist/ionic/{p-86813176.system.entry.js → p-da83d833.system.entry.js} +1 -1
  737. package/dist/ionic/p-dcfc297d.system.entry.js +4 -0
  738. package/dist/ionic/p-ddc4e717.entry.js +4 -0
  739. package/dist/ionic/p-ded27993.entry.js +4 -0
  740. package/dist/ionic/p-e15eda82.system.js +4 -0
  741. package/dist/ionic/{p-43a5edee.entry.js → p-e38b3c29.entry.js} +1 -1
  742. package/dist/ionic/p-e470466e.entry.js +4 -0
  743. package/dist/ionic/p-e64277c4.entry.js +4 -0
  744. package/dist/ionic/{p-abcedc15.system.entry.js → p-ebe0be94.system.entry.js} +1 -1
  745. package/dist/ionic/{p-89ca4c4b.system.js → p-eec92f77.system.js} +1 -1
  746. package/dist/ionic/{p-23c73017.entry.js → p-ef99a759.entry.js} +1 -1
  747. package/dist/ionic/{p-601e17b4.entry.js → p-f16bfd53.entry.js} +1 -1
  748. package/dist/ionic/{p-b6279412.entry.js → p-f3d6085c.entry.js} +1 -1
  749. package/dist/ionic/p-f6a6b7ef.system.entry.js +4 -0
  750. package/dist/ionic/p-f71082f7.entry.js +4 -0
  751. package/dist/ionic/p-f7ed6a44.system.entry.js +4 -0
  752. package/dist/ionic/p-fc5ddbf6.entry.js +4 -0
  753. package/dist/ionic/p-fd94dd20.system.entry.js +4 -0
  754. package/dist/ionic/p-feb66f6f.entry.js +4 -0
  755. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +8 -0
  756. package/dist/types/components/backdrop/backdrop.d.ts +0 -3
  757. package/dist/types/components/checkbox/checkbox.d.ts +1 -24
  758. package/dist/types/components/datetime/datetime.d.ts +0 -1
  759. package/dist/types/components/datetime/utils/data.d.ts +11 -7
  760. package/dist/types/components/input/input.d.ts +0 -26
  761. package/dist/types/components/menu/menu.d.ts +12 -4
  762. package/dist/types/components/modal/utils.d.ts +0 -4
  763. package/dist/types/components/nav/nav.d.ts +4 -1
  764. package/dist/types/components/picker/picker-interfaces.d.ts +8 -0
  765. package/dist/types/components/picker/picker.d.ts +75 -133
  766. package/dist/types/components/picker-column/picker-column-interfaces.d.ts +4 -0
  767. package/dist/types/components/picker-column/picker-column.d.ts +99 -39
  768. package/dist/types/components/picker-column-option/picker-column-option.d.ts +66 -0
  769. package/dist/types/components/picker-legacy/picker.d.ts +158 -0
  770. package/dist/types/components/picker-legacy-column/picker-column.d.ts +46 -0
  771. package/dist/types/components/radio/radio.d.ts +1 -24
  772. package/dist/types/components/range/range.d.ts +1 -21
  773. package/dist/types/components/select/select.d.ts +0 -15
  774. package/dist/types/components/split-pane/split-pane.d.ts +14 -2
  775. package/dist/types/components/textarea/textarea.d.ts +0 -17
  776. package/dist/types/components/toast/toast-interface.d.ts +0 -4
  777. package/dist/types/components/toggle/toggle.d.ts +1 -21
  778. package/dist/types/components.d.ts +160 -195
  779. package/dist/types/interface.d.ts +1 -1
  780. package/dist/types/utils/config.d.ts +2 -2
  781. package/dist/types/utils/focus-trap.d.ts +35 -0
  782. package/dist/types/utils/gesture/gesture-controller.d.ts +1 -0
  783. package/dist/types/utils/helpers.d.ts +1 -1
  784. package/dist/types/utils/native/status-bar.d.ts +0 -1
  785. package/dist/types/utils/overlays.d.ts +5 -3
  786. package/dist/types/utils/test/playwright/generator.d.ts +3 -1
  787. package/hydrate/index.js +2095 -2398
  788. package/package.json +1 -2
  789. package/components/form-controller.js +0 -64
  790. package/components/ion-picker-column-internal.d.ts +0 -11
  791. package/components/ion-picker-column-internal.js +0 -9
  792. package/components/ion-picker-internal.js +0 -9
  793. package/components/picker-column-internal.js +0 -392
  794. package/dist/cjs/form-controller-7b90d7b7.js +0 -66
  795. package/dist/collection/components/checkbox/test/legacy/basic/checkbox.e2e.js +0 -68
  796. package/dist/collection/components/checkbox/test/legacy/indeterminate/checkbox.e2e.js +0 -14
  797. package/dist/collection/components/input/test/item/input.spec.js +0 -24
  798. package/dist/collection/components/input/test/legacy/a11y/input.e2e.js +0 -28
  799. package/dist/collection/components/input/test/legacy/basic/input.e2e.js +0 -181
  800. package/dist/collection/components/input/test/legacy/clear-on-edit/input.e2e.js +0 -55
  801. package/dist/collection/components/input/test/legacy/input-events.e2e.js +0 -71
  802. package/dist/collection/components/input/test/legacy/masking/input.e2e.js +0 -26
  803. package/dist/collection/components/input/test/legacy/spec/input.e2e.js +0 -16
  804. package/dist/collection/components/item/test/counter/item.e2e.js +0 -49
  805. package/dist/collection/components/item/test/highlight/item.e2e.js +0 -14
  806. package/dist/collection/components/item/test/legacy/alignment/item.e2e.js +0 -14
  807. package/dist/collection/components/item/test/legacy/fill/item.e2e.js +0 -14
  808. package/dist/collection/components/item/test/legacy/form/item.e2e.js +0 -14
  809. package/dist/collection/components/modal/test/a11y/modal.spec.js +0 -22
  810. package/dist/collection/components/picker-column-internal/picker-column-internal.js +0 -566
  811. package/dist/collection/components/picker-column-internal/test/disabled/picker-column-internal.e2e.js +0 -162
  812. package/dist/collection/components/picker-internal/picker-internal.js +0 -560
  813. package/dist/collection/components/picker-internal/test/basic/picker-internal.e2e.js +0 -118
  814. package/dist/collection/components/radio/test/legacy/a11y/radio.e2e.js +0 -53
  815. package/dist/collection/components/radio/test/legacy/basic/radio.e2e.js +0 -127
  816. package/dist/collection/components/radio-group/test/legacy/basic/radio-group.e2e.js +0 -122
  817. package/dist/collection/components/radio-group/test/legacy/form/radio-group.e2e.js +0 -30
  818. package/dist/collection/components/radio-group/test/legacy/search/radio-group.e2e.js +0 -38
  819. package/dist/collection/components/range/test/legacy/a11y/range.e2e.js +0 -49
  820. package/dist/collection/components/range/test/legacy/active-bar-start/range.e2e.js +0 -14
  821. package/dist/collection/components/range/test/legacy/basic/range.e2e.js +0 -75
  822. package/dist/collection/components/range/test/legacy/range-events.e2e.js +0 -90
  823. package/dist/collection/components/range/test/legacy/scroll-target/range.e2e.js +0 -32
  824. package/dist/collection/components/select/test/legacy/async/select.e2e.js +0 -19
  825. package/dist/collection/components/select/test/legacy/basic/select.e2e.js +0 -145
  826. package/dist/collection/components/select/test/legacy/compare-with/select.e2e.js +0 -67
  827. package/dist/collection/components/select/test/legacy/custom/custom.e2e.js +0 -13
  828. package/dist/collection/components/select/test/legacy/single-value/select.e2e.js +0 -16
  829. package/dist/collection/components/select/test/legacy/spec/select.e2e.js +0 -14
  830. package/dist/collection/components/select/test/legacy/standalone/select.e2e.js +0 -18
  831. package/dist/collection/components/select/test/legacy/wrapping/select.e2e.js +0 -39
  832. package/dist/collection/components/textarea/test/legacy/a11y/textarea.e2e.js +0 -31
  833. package/dist/collection/components/textarea/test/legacy/autogrow/textarea.e2e.js +0 -58
  834. package/dist/collection/components/textarea/test/legacy/basic/textarea.e2e.js +0 -43
  835. package/dist/collection/components/textarea/test/legacy/clear-on-edit/textarea.e2e.js +0 -25
  836. package/dist/collection/components/toggle/test/legacy/basic/toggle.e2e.js +0 -83
  837. package/dist/collection/components/toggle/test/legacy/enable-on-off-labels/toggle.e2e.js +0 -37
  838. package/dist/collection/components/toggle/test/legacy/sizes/power-outline.svg +0 -1
  839. package/dist/collection/components/toggle/test/legacy/sizes/toggle.e2e.js +0 -14
  840. package/dist/esm/form-controller-014aa89f.js +0 -64
  841. package/dist/esm-es5/app-globals-5cf6195b.js +0 -4
  842. package/dist/esm-es5/button-active-47ac8092.js +0 -4
  843. package/dist/esm-es5/form-controller-014aa89f.js +0 -4
  844. package/dist/esm-es5/helpers-c0b9ca37.js +0 -4
  845. package/dist/esm-es5/index-d64f34ea.js +0 -4
  846. package/dist/esm-es5/ion-picker-column-internal.entry.js +0 -4
  847. package/dist/esm-es5/ion-picker-internal.entry.js +0 -4
  848. package/dist/esm-es5/md.transition-564937a7.js +0 -4
  849. package/dist/esm-es5/overlays-04a9a43f.js +0 -4
  850. package/dist/ionic/p-0457213c.entry.js +0 -4
  851. package/dist/ionic/p-05d560ec.entry.js +0 -4
  852. package/dist/ionic/p-0b34d3a7.system.js +0 -4
  853. package/dist/ionic/p-0e23c289.system.entry.js +0 -4
  854. package/dist/ionic/p-1131946f.system.entry.js +0 -4
  855. package/dist/ionic/p-1636923f.system.js +0 -4
  856. package/dist/ionic/p-16a61810.entry.js +0 -4
  857. package/dist/ionic/p-18beebdf.system.entry.js +0 -4
  858. package/dist/ionic/p-1924f2e0.system.entry.js +0 -4
  859. package/dist/ionic/p-1f16d040.entry.js +0 -4
  860. package/dist/ionic/p-1f19958f.system.entry.js +0 -4
  861. package/dist/ionic/p-21ca1f1c.js +0 -4
  862. package/dist/ionic/p-2327064c.entry.js +0 -4
  863. package/dist/ionic/p-2e1f014a.system.entry.js +0 -4
  864. package/dist/ionic/p-30d77a91.system.js +0 -4
  865. package/dist/ionic/p-3471a7c0.system.entry.js +0 -4
  866. package/dist/ionic/p-396083cc.entry.js +0 -4
  867. package/dist/ionic/p-3a7de59c.entry.js +0 -4
  868. package/dist/ionic/p-3d961d93.entry.js +0 -4
  869. package/dist/ionic/p-3e9ad72a.system.entry.js +0 -4
  870. package/dist/ionic/p-42a9f663.system.entry.js +0 -4
  871. package/dist/ionic/p-49543c9c.system.js +0 -4
  872. package/dist/ionic/p-49aba878.js +0 -4
  873. package/dist/ionic/p-4f777b5e.js +0 -4
  874. package/dist/ionic/p-4fda5c35.entry.js +0 -4
  875. package/dist/ionic/p-502780e4.entry.js +0 -4
  876. package/dist/ionic/p-508a4c87.entry.js +0 -4
  877. package/dist/ionic/p-5928fac9.system.entry.js +0 -4
  878. package/dist/ionic/p-5b40d967.entry.js +0 -4
  879. package/dist/ionic/p-5c2ae448.js +0 -4
  880. package/dist/ionic/p-5c6a04bd.entry.js +0 -4
  881. package/dist/ionic/p-5cb5f63d.system.entry.js +0 -4
  882. package/dist/ionic/p-5e23bea8.system.entry.js +0 -4
  883. package/dist/ionic/p-5f169eba.entry.js +0 -4
  884. package/dist/ionic/p-64761c90.entry.js +0 -4
  885. package/dist/ionic/p-6486e393.system.entry.js +0 -4
  886. package/dist/ionic/p-64db1331.entry.js +0 -4
  887. package/dist/ionic/p-667e3e2d.entry.js +0 -4
  888. package/dist/ionic/p-68ba8e77.system.entry.js +0 -4
  889. package/dist/ionic/p-7b1ed642.system.entry.js +0 -4
  890. package/dist/ionic/p-7ce40e7b.entry.js +0 -4
  891. package/dist/ionic/p-8e651c29.entry.js +0 -4
  892. package/dist/ionic/p-9056778e.system.entry.js +0 -4
  893. package/dist/ionic/p-91cb3f9a.entry.js +0 -4
  894. package/dist/ionic/p-9cd7ba27.system.js +0 -4
  895. package/dist/ionic/p-a022b684.system.entry.js +0 -4
  896. package/dist/ionic/p-a0b28c69.system.entry.js +0 -4
  897. package/dist/ionic/p-a6e465f5.entry.js +0 -4
  898. package/dist/ionic/p-a8a56449.entry.js +0 -4
  899. package/dist/ionic/p-aaaa615c.system.entry.js +0 -4
  900. package/dist/ionic/p-ae35294f.system.entry.js +0 -4
  901. package/dist/ionic/p-b0ff8075.entry.js +0 -4
  902. package/dist/ionic/p-b2595011.system.entry.js +0 -4
  903. package/dist/ionic/p-ba97a133.system.entry.js +0 -4
  904. package/dist/ionic/p-bd4787eb.entry.js +0 -4
  905. package/dist/ionic/p-bdca4784.js +0 -4
  906. package/dist/ionic/p-bf05cbc7.entry.js +0 -4
  907. package/dist/ionic/p-c1797ec5.system.entry.js +0 -4
  908. package/dist/ionic/p-c39cc96d.system.entry.js +0 -4
  909. package/dist/ionic/p-c858f685.js +0 -4
  910. package/dist/ionic/p-cb9e71e0.entry.js +0 -4
  911. package/dist/ionic/p-cd9a7017.system.entry.js +0 -4
  912. package/dist/ionic/p-cde3ac34.system.entry.js +0 -4
  913. package/dist/ionic/p-d39ab63d.entry.js +0 -4
  914. package/dist/ionic/p-db30f71b.entry.js +0 -4
  915. package/dist/ionic/p-dbcba5a2.js +0 -4
  916. package/dist/ionic/p-dcb5711d.entry.js +0 -4
  917. package/dist/ionic/p-df504a37.system.js +0 -4
  918. package/dist/ionic/p-e04b9647.system.entry.js +0 -4
  919. package/dist/ionic/p-e81bf09e.system.entry.js +0 -4
  920. package/dist/ionic/p-e9f9388e.system.js +0 -4
  921. package/dist/ionic/p-edcada2b.system.entry.js +0 -4
  922. package/dist/ionic/p-f460c7ae.entry.js +0 -4
  923. package/dist/ionic/p-f53d074d.system.entry.js +0 -4
  924. package/dist/ionic/p-f840d817.entry.js +0 -4
  925. package/dist/ionic/p-f8c96502.system.entry.js +0 -4
  926. package/dist/ionic/p-fb9f8495.system.entry.js +0 -4
  927. package/dist/ionic/p-fd2aa50c.js +0 -4
  928. package/dist/types/components/picker-column-internal/picker-column-internal-interfaces.d.ts +0 -5
  929. package/dist/types/components/picker-column-internal/picker-column-internal.d.ts +0 -102
  930. package/dist/types/components/picker-internal/picker-internal-interfaces.d.ts +0 -8
  931. package/dist/types/components/picker-internal/picker-internal.d.ts +0 -102
  932. /package/dist/collection/components/{picker-internal/picker-internal-interfaces.js → picker/picker-interfaces.js} +0 -0
  933. /package/dist/collection/components/{picker-column-internal/picker-column-internal-interfaces.js → picker-column/picker-column-interfaces.js} +0 -0
  934. /package/dist/collection/components/{picker → picker-legacy}/animations/ios.enter.js +0 -0
  935. /package/dist/collection/components/{picker → picker-legacy}/animations/ios.leave.js +0 -0
  936. /package/dist/collection/components/{picker → picker-legacy}/picker-interface.js +0 -0
  937. /package/dist/collection/components/{picker-column → picker-legacy-column}/test/test.utils.js +0 -0
  938. /package/dist/esm-es5/{data-0f3ab200.js → data-691286f1.js} +0 -0
  939. /package/dist/ionic/{p-f7dce541.js → p-5289aade.js} +0 -0
  940. /package/dist/ionic/{p-7330c044.system.js → p-66e6860f.system.js} +0 -0
  941. /package/dist/types/components/{picker → picker-legacy}/animations/ios.enter.d.ts +0 -0
  942. /package/dist/types/components/{picker → picker-legacy}/animations/ios.leave.d.ts +0 -0
  943. /package/dist/types/components/{picker → picker-legacy}/picker-interface.d.ts +0 -0
  944. /package/dist/types/components/{picker-column → picker-legacy-column}/test/test.utils.d.ts +0 -0
@@ -2,12 +2,88 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { d as doc } from './index5.js';
5
+ import { f as focusVisibleElement, c as componentOnReady, a as addEventListener, b as removeEventListener, g as getElementRoot } from './helpers.js';
5
6
  import { OVERLAY_BACK_BUTTON_PRIORITY, shoudUseCloseWatcher } from './hardware-back-button.js';
6
7
  import { b as getIonMode, c as config } from './ionic-global.js';
7
8
  import { C as CoreDelegate } from './framework-delegate.js';
8
- import { c as componentOnReady, f as focusElement, a as addEventListener, b as removeEventListener, g as getElementRoot } from './helpers.js';
9
+ import { B as BACKDROP_NO_SCROLL } from './gesture-controller.js';
9
10
  import { p as printIonWarning } from './index6.js';
10
11
 
12
+ /**
13
+ * This query string selects elements that
14
+ * are eligible to receive focus. We select
15
+ * interactive elements that meet the following
16
+ * criteria:
17
+ * 1. Element does not have a negative tabindex
18
+ * 2. Element does not have `hidden`
19
+ * 3. Element does not have `disabled` for non-Ionic components.
20
+ * 4. Element does not have `disabled` or `disabled="true"` for Ionic components.
21
+ * Note: We need this distinction because `disabled="false"` is
22
+ * valid usage for the disabled property on ion-button.
23
+ */
24
+ const focusableQueryString = '[tabindex]:not([tabindex^="-"]):not([hidden]):not([disabled]), input:not([type=hidden]):not([tabindex^="-"]):not([hidden]):not([disabled]), textarea:not([tabindex^="-"]):not([hidden]):not([disabled]), button:not([tabindex^="-"]):not([hidden]):not([disabled]), select:not([tabindex^="-"]):not([hidden]):not([disabled]), .ion-focusable:not([tabindex^="-"]):not([hidden]):not([disabled]), .ion-focusable[disabled="false"]:not([tabindex^="-"]):not([hidden])';
25
+ /**
26
+ * Focuses the first descendant in a context
27
+ * that can receive focus. If none exists,
28
+ * a fallback element will be focused.
29
+ * This fallback is typically an ancestor
30
+ * container such as a menu or overlay so focus does not
31
+ * leave the container we are trying to trap focus in.
32
+ *
33
+ * If no fallback is specified then we focus the container itself.
34
+ */
35
+ const focusFirstDescendant = (ref, fallbackElement) => {
36
+ const firstInput = ref.querySelector(focusableQueryString);
37
+ focusElementInContext(firstInput, fallbackElement !== null && fallbackElement !== void 0 ? fallbackElement : ref);
38
+ };
39
+ /**
40
+ * Focuses the last descendant in a context
41
+ * that can receive focus. If none exists,
42
+ * a fallback element will be focused.
43
+ * This fallback is typically an ancestor
44
+ * container such as a menu or overlay so focus does not
45
+ * leave the container we are trying to trap focus in.
46
+ *
47
+ * If no fallback is specified then we focus the container itself.
48
+ */
49
+ const focusLastDescendant = (ref, fallbackElement) => {
50
+ const inputs = Array.from(ref.querySelectorAll(focusableQueryString));
51
+ const lastInput = inputs.length > 0 ? inputs[inputs.length - 1] : null;
52
+ focusElementInContext(lastInput, fallbackElement !== null && fallbackElement !== void 0 ? fallbackElement : ref);
53
+ };
54
+ /**
55
+ * Focuses a particular element in a context. If the element
56
+ * doesn't have anything focusable associated with it then
57
+ * a fallback element will be focused.
58
+ *
59
+ * This fallback is typically an ancestor
60
+ * container such as a menu or overlay so focus does not
61
+ * leave the container we are trying to trap focus in.
62
+ * This should be used instead of the focus() method
63
+ * on most elements because the focusable element
64
+ * may not be the host element.
65
+ *
66
+ * For example, if an ion-button should be focused
67
+ * then we should actually focus the native <button>
68
+ * element inside of ion-button's shadow root, not
69
+ * the host element itself.
70
+ */
71
+ const focusElementInContext = (hostToFocus, fallbackElement) => {
72
+ let elementToFocus = hostToFocus;
73
+ const shadowRoot = hostToFocus === null || hostToFocus === void 0 ? void 0 : hostToFocus.shadowRoot;
74
+ if (shadowRoot) {
75
+ // If there are no inner focusable elements, just focus the host element.
76
+ elementToFocus = shadowRoot.querySelector(focusableQueryString) || hostToFocus;
77
+ }
78
+ if (elementToFocus) {
79
+ focusVisibleElement(elementToFocus);
80
+ }
81
+ else {
82
+ // Focus fallback element instead of letting focus escape
83
+ fallbackElement.focus();
84
+ }
85
+ };
86
+
11
87
  let lastOverlayIndex = 0;
12
88
  let lastId = 0;
13
89
  const activeAnimations = new WeakMap();
@@ -28,7 +104,10 @@ const alertController = /*@__PURE__*/ createController('ion-alert');
28
104
  const actionSheetController = /*@__PURE__*/ createController('ion-action-sheet');
29
105
  const loadingController = /*@__PURE__*/ createController('ion-loading');
30
106
  const modalController = /*@__PURE__*/ createController('ion-modal');
31
- const pickerController = /*@__PURE__*/ createController('ion-picker');
107
+ /**
108
+ * @deprecated Use the inline ion-picker component instead.
109
+ */
110
+ const pickerController = /*@__PURE__*/ createController('ion-picker-legacy');
32
111
  const popoverController = /*@__PURE__*/ createController('ion-popover');
33
112
  const toastController = /*@__PURE__*/ createController('ion-toast');
34
113
  /**
@@ -85,45 +164,29 @@ const createOverlay = (tagName, opts) => {
85
164
  }
86
165
  return Promise.resolve();
87
166
  };
167
+ const isOverlayHidden = (overlay) => overlay.classList.contains('overlay-hidden');
88
168
  /**
89
- * This query string selects elements that
90
- * are eligible to receive focus. We select
91
- * interactive elements that meet the following
92
- * criteria:
93
- * 1. Element does not have a negative tabindex
94
- * 2. Element does not have `hidden`
95
- * 3. Element does not have `disabled` for non-Ionic components.
96
- * 4. Element does not have `disabled` or `disabled="true"` for Ionic components.
97
- * Note: We need this distinction because `disabled="false"` is
98
- * valid usage for the disabled property on ion-button.
169
+ * Focuses a particular element in an overlay. If the element
170
+ * doesn't have anything focusable associated with it then
171
+ * the overlay itself will be focused.
172
+ * This should be used instead of the focus() method
173
+ * on most elements because the focusable element
174
+ * may not be the host element.
175
+ *
176
+ * For example, if an ion-button should be focused
177
+ * then we should actually focus the native <button>
178
+ * element inside of ion-button's shadow root, not
179
+ * the host element itself.
99
180
  */
100
- const focusableQueryString = '[tabindex]:not([tabindex^="-"]):not([hidden]):not([disabled]), input:not([type=hidden]):not([tabindex^="-"]):not([hidden]):not([disabled]), textarea:not([tabindex^="-"]):not([hidden]):not([disabled]), button:not([tabindex^="-"]):not([hidden]):not([disabled]), select:not([tabindex^="-"]):not([hidden]):not([disabled]), .ion-focusable:not([tabindex^="-"]):not([hidden]):not([disabled]), .ion-focusable[disabled="false"]:not([tabindex^="-"]):not([hidden])';
101
- const focusFirstDescendant = (ref, overlay) => {
102
- let firstInput = ref.querySelector(focusableQueryString);
103
- const shadowRoot = firstInput === null || firstInput === void 0 ? void 0 : firstInput.shadowRoot;
181
+ const focusElementInOverlay = (hostToFocus, overlay) => {
182
+ let elementToFocus = hostToFocus;
183
+ const shadowRoot = hostToFocus === null || hostToFocus === void 0 ? void 0 : hostToFocus.shadowRoot;
104
184
  if (shadowRoot) {
105
185
  // If there are no inner focusable elements, just focus the host element.
106
- firstInput = shadowRoot.querySelector(focusableQueryString) || firstInput;
186
+ elementToFocus = shadowRoot.querySelector(focusableQueryString) || hostToFocus;
107
187
  }
108
- if (firstInput) {
109
- focusElement(firstInput);
110
- }
111
- else {
112
- // Focus overlay instead of letting focus escape
113
- overlay.focus();
114
- }
115
- };
116
- const isOverlayHidden = (overlay) => overlay.classList.contains('overlay-hidden');
117
- const focusLastDescendant = (ref, overlay) => {
118
- const inputs = Array.from(ref.querySelectorAll(focusableQueryString));
119
- let lastInput = inputs.length > 0 ? inputs[inputs.length - 1] : null;
120
- const shadowRoot = lastInput === null || lastInput === void 0 ? void 0 : lastInput.shadowRoot;
121
- if (shadowRoot) {
122
- // If there are no inner focusable elements, just focus the host element.
123
- lastInput = shadowRoot.querySelector(focusableQueryString) || lastInput;
124
- }
125
- if (lastInput) {
126
- lastInput.focus();
188
+ if (elementToFocus) {
189
+ focusVisibleElement(elementToFocus);
127
190
  }
128
191
  else {
129
192
  // Focus overlay instead of letting focus escape
@@ -138,7 +201,7 @@ const focusLastDescendant = (ref, overlay) => {
138
201
  * Should NOT include: Toast
139
202
  */
140
203
  const trapKeyboardFocus = (ev, doc) => {
141
- const lastOverlay = getPresentedOverlay(doc, 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-picker,ion-popover');
204
+ const lastOverlay = getPresentedOverlay(doc, 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-picker-legacy,ion-popover');
142
205
  const target = ev.target;
143
206
  /**
144
207
  * If no active overlay, ignore this event.
@@ -174,6 +237,21 @@ const trapKeyboardFocus = (ev, doc) => {
174
237
  */
175
238
  if (lastOverlay === target) {
176
239
  lastOverlay.lastFocus = undefined;
240
+ /**
241
+ * Toasts can be presented from an overlay.
242
+ * However, focus should still be returned to
243
+ * the overlay when clicking a toast. Normally,
244
+ * focus would be returned to the last focusable
245
+ * descendant in the overlay which may not always be
246
+ * the button that the toast was presented from. In this case,
247
+ * the focus may be returned to an unexpected element.
248
+ * To account for this, we make sure to return focus to the
249
+ * last focused element in the overlay if focus is
250
+ * moved to the toast.
251
+ */
252
+ }
253
+ else if (target.tagName === 'ION-TOAST') {
254
+ focusElementInOverlay(lastOverlay.lastFocus, lastOverlay);
177
255
  /**
178
256
  * Otherwise, we must be focusing an element
179
257
  * inside of the overlay. The two possible options
@@ -245,6 +323,21 @@ const trapKeyboardFocus = (ev, doc) => {
245
323
  */
246
324
  if (lastOverlay.contains(target)) {
247
325
  lastOverlay.lastFocus = target;
326
+ /**
327
+ * Toasts can be presented from an overlay.
328
+ * However, focus should still be returned to
329
+ * the overlay when clicking a toast. Normally,
330
+ * focus would be returned to the last focusable
331
+ * descendant in the overlay which may not always be
332
+ * the button that the toast was presented from. In this case,
333
+ * the focus may be returned to an unexpected element.
334
+ * To account for this, we make sure to return focus to the
335
+ * last focused element in the overlay if focus is
336
+ * moved to the toast.
337
+ */
338
+ }
339
+ else if (target.tagName === 'ION-TOAST') {
340
+ focusElementInOverlay(lastOverlay.lastFocus, lastOverlay);
248
341
  }
249
342
  else {
250
343
  /**
@@ -262,7 +355,7 @@ const trapKeyboardFocus = (ev, doc) => {
262
355
  */
263
356
  const lastFocus = lastOverlay.lastFocus;
264
357
  // Focus the first element in the overlay wrapper
265
- focusFirstDescendant(lastOverlay, lastOverlay);
358
+ focusFirstDescendant(lastOverlay);
266
359
  /**
267
360
  * If the cached last focused element is the
268
361
  * same as the active element, then we need
@@ -273,7 +366,7 @@ const trapKeyboardFocus = (ev, doc) => {
273
366
  * last focus to equal the active element.
274
367
  */
275
368
  if (lastFocus === doc.activeElement) {
276
- focusLastDescendant(lastOverlay, lastOverlay);
369
+ focusLastDescendant(lastOverlay);
277
370
  }
278
371
  lastOverlay.lastFocus = doc.activeElement;
279
372
  }
@@ -342,7 +435,7 @@ const dismissOverlay = (doc, data, role, overlayTag, id) => {
342
435
  */
343
436
  const getOverlays = (doc, selector) => {
344
437
  if (selector === undefined) {
345
- selector = 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-picker,ion-popover,ion-toast';
438
+ selector = 'ion-alert,ion-action-sheet,ion-loading,ion-modal,ion-picker-legacy,ion-popover,ion-toast';
346
439
  }
347
440
  return Array.from(doc.querySelectorAll(selector)).filter((c) => c.overlayIndex > 0);
348
441
  };
@@ -408,6 +501,7 @@ const present = async (overlay, name, iosEnterAnimation, mdEnterAnimation, opts)
408
501
  return;
409
502
  }
410
503
  setRootAriaHidden(true);
504
+ document.body.classList.add(BACKDROP_NO_SCROLL);
411
505
  /**
412
506
  * Hide all other overlays from screen readers so only this one
413
507
  * can be read. Note that presenting an overlay always makes
@@ -513,12 +607,14 @@ const dismiss = async (overlay, data, role, name, iosLeaveAnimation, mdLeaveAnim
513
607
  if (!overlay.presented) {
514
608
  return false;
515
609
  }
610
+ const lastOverlay = doc !== undefined && getPresentedOverlays(doc).length === 1;
516
611
  /**
517
612
  * If this is the last visible overlay then
518
613
  * we want to re-add the root to the accessibility tree.
519
614
  */
520
- if (doc !== undefined && getPresentedOverlays(doc).length === 1) {
615
+ if (lastOverlay) {
521
616
  setRootAriaHidden(false);
617
+ document.body.classList.remove(BACKDROP_NO_SCROLL);
522
618
  }
523
619
  overlay.presented = false;
524
620
  try {
@@ -763,4 +859,4 @@ const createTriggerController = () => {
763
859
  };
764
860
  };
765
861
 
766
- export { BACKDROP as B, GESTURE as G, OVERLAY_GESTURE_PRIORITY as O, alertController as a, actionSheetController as b, popoverController as c, createDelegateController as d, createTriggerController as e, present as f, dismiss as g, eventMethod as h, isCancel as i, prepareOverlay as j, setOverlayId as k, loadingController as l, modalController as m, focusFirstDescendant as n, getPresentedOverlay as o, pickerController as p, safeCall as s, toastController as t };
862
+ export { BACKDROP as B, GESTURE as G, OVERLAY_GESTURE_PRIORITY as O, alertController as a, actionSheetController as b, popoverController as c, createDelegateController as d, createTriggerController as e, present as f, dismiss as g, eventMethod as h, isCancel as i, prepareOverlay as j, setOverlayId as k, loadingController as l, modalController as m, focusFirstDescendant as n, getPresentedOverlay as o, pickerController as p, focusLastDescendant as q, safeCall as s, toastController as t };
@@ -0,0 +1,124 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
5
+ import { d as inheritAttributes } from './helpers.js';
6
+ import { c as createColorClasses } from './theme.js';
7
+ import { b as getIonMode } from './ionic-global.js';
8
+
9
+ const pickerColumnOptionIosCss = "button{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;overflow:hidden}:host(.option-disabled){opacity:0.4}:host(.option-disabled) button{cursor:default}";
10
+ const IonPickerColumnOptionIosStyle0 = pickerColumnOptionIosCss;
11
+
12
+ const pickerColumnOptionMdCss = "button{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;overflow:hidden}:host(.option-disabled){opacity:0.4}:host(.option-disabled) button{cursor:default}:host(.option-active){color:var(--ion-color-base)}";
13
+ const IonPickerColumnOptionMdStyle0 = pickerColumnOptionMdCss;
14
+
15
+ const PickerColumnOption = /*@__PURE__*/ proxyCustomElement(class PickerColumnOption extends HTMLElement {
16
+ constructor() {
17
+ super();
18
+ this.__registerHost();
19
+ this.__attachShadow();
20
+ /**
21
+ * We keep track of the parent picker column
22
+ * so we can update the value of it when
23
+ * clicking an enable option.
24
+ */
25
+ this.pickerColumn = null;
26
+ this.ariaLabel = null;
27
+ this.disabled = false;
28
+ this.value = undefined;
29
+ this.color = 'primary';
30
+ }
31
+ /**
32
+ * The aria-label of the option has changed after the
33
+ * first render and needs to be updated within the component.
34
+ *
35
+ * @param ariaLbl The new aria-label value.
36
+ */
37
+ onAriaLabelChange(ariaLbl) {
38
+ this.ariaLabel = ariaLbl;
39
+ }
40
+ componentWillLoad() {
41
+ const inheritedAttributes = inheritAttributes(this.el, ['aria-label']);
42
+ /**
43
+ * The initial value of `aria-label` needs to be set for
44
+ * the first render.
45
+
46
+ */
47
+ this.ariaLabel = inheritedAttributes['aria-label'] || null;
48
+ }
49
+ connectedCallback() {
50
+ this.pickerColumn = this.el.closest('ion-picker-column');
51
+ }
52
+ disconnectedCallback() {
53
+ this.pickerColumn = null;
54
+ }
55
+ /**
56
+ * The column options can load at any time
57
+ * so the options needs to tell the
58
+ * parent picker column when it is loaded
59
+ * so the picker column can ensure it is
60
+ * centered in the view.
61
+ *
62
+ * We intentionally run this for every
63
+ * option. If we only ran this from
64
+ * the selected option then if the newly
65
+ * loaded options were not selected then
66
+ * scrollActiveItemIntoView would not be called.
67
+ */
68
+ componentDidLoad() {
69
+ const { pickerColumn } = this;
70
+ if (pickerColumn !== null) {
71
+ pickerColumn.scrollActiveItemIntoView();
72
+ }
73
+ }
74
+ /**
75
+ * When an option is clicked, update the
76
+ * parent picker column value. This
77
+ * component will handle centering the option
78
+ * in the column view.
79
+ */
80
+ onClick() {
81
+ const { pickerColumn } = this;
82
+ if (pickerColumn !== null) {
83
+ pickerColumn.setValue(this.value);
84
+ }
85
+ }
86
+ render() {
87
+ const { color, disabled, ariaLabel } = this;
88
+ const mode = getIonMode(this);
89
+ return (h(Host, { key: '1d5358c019c01ca429ddb514b9f9b67a3c89f652', class: createColorClasses(color, {
90
+ [mode]: true,
91
+ ['option-disabled']: disabled,
92
+ }) }, h("button", { key: 'c86794a15b61062a886c6f5113723ccd98238e9f', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, h("slot", { key: 'ab7f80cacdd39b5aedf7d2cc8eddc6288093629a' }))));
93
+ }
94
+ get el() { return this; }
95
+ static get watchers() { return {
96
+ "aria-label": ["onAriaLabelChange"]
97
+ }; }
98
+ static get style() { return {
99
+ ios: IonPickerColumnOptionIosStyle0,
100
+ md: IonPickerColumnOptionMdStyle0
101
+ }; }
102
+ }, [33, "ion-picker-column-option", {
103
+ "disabled": [4],
104
+ "value": [8],
105
+ "color": [513],
106
+ "ariaLabel": [32]
107
+ }, undefined, {
108
+ "aria-label": ["onAriaLabelChange"]
109
+ }]);
110
+ function defineCustomElement() {
111
+ if (typeof customElements === "undefined") {
112
+ return;
113
+ }
114
+ const components = ["ion-picker-column-option"];
115
+ components.forEach(tagName => { switch (tagName) {
116
+ case "ion-picker-column-option":
117
+ if (!customElements.get(tagName)) {
118
+ customElements.define(tagName, PickerColumnOption);
119
+ }
120
+ break;
121
+ } });
122
+ }
123
+
124
+ export { PickerColumnOption as P, defineCustomElement as d };