@ionic/core 7.7.2-dev.11707425083.192d8103 → 7.7.2-nightly.20240209

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 (774) hide show
  1. package/components/action-sheet.js +10 -6
  2. package/components/alert.js +8 -4
  3. package/components/backdrop.js +13 -1
  4. package/components/button-active.js +1 -1
  5. package/components/button.js +2 -2
  6. package/components/checkbox.js +2 -2
  7. package/components/data.js +1 -1
  8. package/components/gesture-controller.js +1 -1
  9. package/components/ion-back-button.js +1 -1
  10. package/components/ion-badge.js +2 -2
  11. package/components/ion-content.js +5 -4
  12. package/components/ion-datetime-button.js +5 -5
  13. package/components/ion-datetime.js +65 -41
  14. package/components/ion-fab-button.js +4 -4
  15. package/components/ion-fab-list.js +3 -3
  16. package/components/ion-fab.js +2 -2
  17. package/components/ion-footer.js +2 -2
  18. package/components/ion-grid.js +2 -2
  19. package/components/ion-header.js +2 -2
  20. package/components/ion-img.js +1 -1
  21. package/components/ion-infinite-scroll-content.js +2 -2
  22. package/components/ion-infinite-scroll.js +1 -1
  23. package/components/ion-input.js +8 -4
  24. package/components/ion-item-divider.js +2 -2
  25. package/components/ion-item-group.js +1 -1
  26. package/components/ion-item-option.js +4 -4
  27. package/components/ion-item-options.js +1 -1
  28. package/components/ion-item-sliding.js +1 -1
  29. package/components/ion-loading.js +7 -3
  30. package/components/ion-menu-button.js +3 -3
  31. package/components/ion-menu-toggle.js +2 -2
  32. package/components/ion-menu.js +17 -23
  33. package/components/ion-modal.js +8 -4
  34. package/components/ion-nav-link.js +1 -1
  35. package/components/ion-nav.js +4 -8
  36. package/components/ion-picker-column-internal.d.ts +11 -0
  37. package/components/ion-picker-column-internal.js +9 -0
  38. package/components/ion-picker-column.js +2 -2
  39. package/components/{ion-picker-legacy.d.ts → ion-picker-internal.d.ts} +4 -4
  40. package/components/ion-picker-internal.js +9 -0
  41. package/components/ion-picker.js +315 -1
  42. package/components/ion-progress-bar.js +3 -6
  43. package/components/ion-range.js +2 -2
  44. package/components/ion-refresher-content.js +1 -1
  45. package/components/ion-refresher.js +3 -3
  46. package/components/ion-reorder-group.js +1 -1
  47. package/components/ion-reorder.js +1 -1
  48. package/components/ion-router-link.js +3 -3
  49. package/components/ion-router-outlet.js +1 -1
  50. package/components/ion-row.js +1 -1
  51. package/components/ion-searchbar.js +6 -6
  52. package/components/ion-segment-button.js +4 -4
  53. package/components/ion-segment.js +2 -2
  54. package/components/ion-select-option.js +1 -1
  55. package/components/ion-select.js +2 -2
  56. package/components/ion-skeleton-text.js +2 -2
  57. package/components/ion-split-pane.js +17 -28
  58. package/components/ion-tab-bar.js +4 -4
  59. package/components/ion-tab-button.js +4 -4
  60. package/components/ion-tab.js +2 -2
  61. package/components/ion-tabs.js +1 -1
  62. package/components/ion-text.js +2 -2
  63. package/components/ion-textarea.js +70 -7
  64. package/components/ion-thumbnail.js +1 -1
  65. package/components/ion-title.js +3 -3
  66. package/components/ion-toast.js +10 -12
  67. package/components/ion-toggle.js +2 -2
  68. package/components/ion-toolbar.js +2 -2
  69. package/components/item.js +2 -2
  70. package/components/label.js +2 -2
  71. package/components/list-header.js +2 -2
  72. package/components/list.js +2 -2
  73. package/components/note.js +2 -2
  74. package/components/overlays.js +4 -11
  75. package/components/picker-column-internal.js +392 -0
  76. package/components/picker-column.js +324 -352
  77. package/components/{picker.js → picker-internal.js} +26 -33
  78. package/components/popover.js +7 -3
  79. package/components/radio-group.js +1 -1
  80. package/components/radio.js +2 -2
  81. package/components/ripple-effect.js +1 -1
  82. package/components/select-popover.js +2 -2
  83. package/components/spinner.js +1 -1
  84. package/css/core.css +35 -98
  85. package/css/core.css.map +1 -1
  86. package/css/display.css.map +1 -1
  87. package/css/float-elements.css.map +1 -1
  88. package/css/global.bundle.css +1 -1
  89. package/css/global.bundle.css.map +1 -1
  90. package/css/ionic-swiper.css.map +1 -1
  91. package/css/ionic.bundle.css +1 -1
  92. package/css/ionic.bundle.css.map +1 -1
  93. package/css/padding.css.map +1 -1
  94. package/css/structure.css.map +1 -1
  95. package/css/text-alignment.css.map +1 -1
  96. package/css/text-transformation.css.map +1 -1
  97. package/css/typography.css +1 -1
  98. package/css/typography.css.map +1 -1
  99. package/css/utils.bundle.css.map +1 -1
  100. package/dist/cjs/{app-globals-5a17c5e1.js → app-globals-92ad1b3d.js} +1 -1
  101. package/dist/cjs/{button-active-600ed3e2.js → button-active-2d6520ec.js} +3 -3
  102. package/dist/cjs/{data-e2bf21de.js → data-a5109f09.js} +1 -1
  103. package/dist/cjs/{gesture-controller-9436f482.js → gesture-controller-c40c045a.js} +0 -1
  104. package/dist/cjs/{hardware-back-button-d23873bb.js → hardware-back-button-2696acaf.js} +2 -2
  105. package/dist/cjs/{index-5a471146.js → index-0ffe376d.js} +25 -22
  106. package/dist/cjs/{index-8c679cbf.js → index-a43f7a0f.js} +2 -2
  107. package/dist/cjs/{index-84351d21.js → index-c3580a90.js} +3 -3
  108. package/dist/cjs/{index-ee07ed59.js → index-d1b59ffa.js} +1 -1
  109. package/dist/cjs/index.cjs.js +10 -10
  110. package/dist/cjs/ion-accordion_2.cjs.entry.js +2 -2
  111. package/dist/cjs/ion-action-sheet.cjs.entry.js +17 -13
  112. package/dist/cjs/ion-alert.cjs.entry.js +15 -11
  113. package/dist/cjs/ion-app_8.cjs.entry.js +22 -21
  114. package/dist/cjs/ion-avatar_3.cjs.entry.js +5 -5
  115. package/dist/cjs/ion-back-button.cjs.entry.js +3 -3
  116. package/dist/cjs/ion-backdrop.cjs.entry.js +15 -3
  117. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +2 -2
  118. package/dist/cjs/ion-button_2.cjs.entry.js +4 -4
  119. package/dist/cjs/ion-card_5.cjs.entry.js +2 -2
  120. package/dist/cjs/ion-checkbox.cjs.entry.js +4 -4
  121. package/dist/cjs/ion-chip.cjs.entry.js +2 -2
  122. package/dist/cjs/ion-col_3.cjs.entry.js +5 -5
  123. package/dist/cjs/ion-datetime-button.cjs.entry.js +8 -8
  124. package/dist/cjs/ion-datetime_3.cjs.entry.js +77 -53
  125. package/dist/cjs/ion-fab_3.cjs.entry.js +11 -11
  126. package/dist/cjs/ion-img.cjs.entry.js +3 -3
  127. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +5 -5
  128. package/dist/cjs/ion-input.cjs.entry.js +8 -6
  129. package/dist/cjs/ion-item-option_3.cjs.entry.js +9 -9
  130. package/dist/cjs/ion-item_8.cjs.entry.js +17 -17
  131. package/dist/cjs/ion-loading.cjs.entry.js +11 -8
  132. package/dist/cjs/ion-menu_3.cjs.entry.js +29 -34
  133. package/dist/cjs/ion-modal.cjs.entry.js +15 -11
  134. package/dist/cjs/ion-nav_2.cjs.entry.js +8 -11
  135. package/dist/cjs/{ion-picker-column.cjs.entry.js → ion-picker-column-internal.cjs.entry.js} +91 -107
  136. package/dist/cjs/{ion-picker.cjs.entry.js → ion-picker-internal.cjs.entry.js} +24 -31
  137. package/dist/cjs/ion-popover.cjs.entry.js +12 -9
  138. package/dist/cjs/ion-progress-bar.cjs.entry.js +5 -8
  139. package/dist/cjs/ion-radio_2.cjs.entry.js +5 -5
  140. package/dist/cjs/ion-range.cjs.entry.js +5 -5
  141. package/dist/cjs/ion-refresher_2.cjs.entry.js +9 -9
  142. package/dist/cjs/ion-reorder_2.cjs.entry.js +5 -5
  143. package/dist/cjs/ion-ripple-effect.cjs.entry.js +3 -3
  144. package/dist/cjs/ion-route_4.cjs.entry.js +5 -5
  145. package/dist/cjs/ion-searchbar.cjs.entry.js +8 -8
  146. package/dist/cjs/ion-segment_2.cjs.entry.js +9 -9
  147. package/dist/cjs/ion-select_3.cjs.entry.js +9 -10
  148. package/dist/cjs/ion-spinner.cjs.entry.js +3 -3
  149. package/dist/cjs/ion-split-pane.cjs.entry.js +18 -28
  150. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +10 -10
  151. package/dist/cjs/ion-tab_2.cjs.entry.js +4 -4
  152. package/dist/cjs/ion-text.cjs.entry.js +4 -4
  153. package/dist/cjs/ion-textarea.cjs.entry.js +69 -9
  154. package/dist/cjs/ion-toast.cjs.entry.js +15 -17
  155. package/dist/cjs/ion-toggle.cjs.entry.js +5 -5
  156. package/dist/cjs/{ionic-global-7358c23e.js → ionic-global-59a10130.js} +1 -1
  157. package/dist/cjs/ionic.cjs.js +5 -5
  158. package/dist/cjs/{ios.transition-8e40c54e.js → ios.transition-c3b11cc3.js} +2 -2
  159. package/dist/cjs/loader.cjs.js +4 -4
  160. package/dist/cjs/{md.transition-597a2479.js → md.transition-82a8c649.js} +2 -2
  161. package/dist/cjs/{overlays-8f32c4ca.js → overlays-c0b199e9.js} +6 -13
  162. package/dist/cjs/{status-tap-b0bfea34.js → status-tap-692f6d32.js} +1 -1
  163. package/dist/cjs/{swipe-back-f93021d8.js → swipe-back-8411f044.js} +2 -2
  164. package/dist/collection/collection-manifest.json +7 -8
  165. package/dist/collection/components/action-sheet/action-sheet.ios.css +5 -12
  166. package/dist/collection/components/action-sheet/action-sheet.js +10 -6
  167. package/dist/collection/components/action-sheet/action-sheet.md.css +2 -9
  168. package/dist/collection/components/action-sheet/test/a11y/action-sheet.e2e.js +14 -23
  169. package/dist/collection/components/action-sheet/test/basic/action-sheet-rendering.e2e.js +0 -19
  170. package/dist/collection/components/action-sheet/test/basic/action-sheet.spec.js +0 -22
  171. package/dist/collection/components/alert/alert.ios.css +74 -27
  172. package/dist/collection/components/alert/alert.js +8 -4
  173. package/dist/collection/components/alert/alert.md.css +110 -14
  174. package/dist/collection/components/alert/test/a11y/alert.e2e.js +9 -22
  175. package/dist/collection/components/back-button/back-button.ios.css +1 -1
  176. package/dist/collection/components/back-button/test/a11y/back-button.e2e.js +0 -21
  177. package/dist/collection/components/backdrop/backdrop.js +13 -1
  178. package/dist/collection/components/badge/badge.ios.css +1 -1
  179. package/dist/collection/components/badge/badge.md.css +1 -1
  180. package/dist/collection/components/badge/test/a11y/badge.e2e.js +0 -18
  181. package/dist/collection/components/button/button.ios.css +11 -11
  182. package/dist/collection/components/button/button.md.css +9 -9
  183. package/dist/collection/components/button/test/a11y/button.e2e.js +0 -48
  184. package/dist/collection/components/button/test/wrap/button.e2e.js +24 -12
  185. package/dist/collection/components/checkbox/checkbox.ios.css +26 -8
  186. package/dist/collection/components/checkbox/checkbox.md.css +24 -5
  187. package/dist/collection/components/checkbox/test/a11y/checkbox.e2e.js +2 -11
  188. package/dist/collection/components/checkbox/test/basic/checkbox.e2e.js +0 -10
  189. package/dist/collection/components/content/content.css +4 -0
  190. package/dist/collection/components/content/content.js +4 -3
  191. package/dist/collection/components/datetime/datetime.ios.css +67 -99
  192. package/dist/collection/components/datetime/datetime.js +37 -25
  193. package/dist/collection/components/datetime/datetime.md.css +65 -101
  194. package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +1 -1
  195. package/dist/collection/components/datetime/test/a11y/datetime.spec.js +9 -6
  196. package/dist/collection/components/datetime/test/basic/datetime.e2e.js +0 -10
  197. package/dist/collection/components/datetime/test/datetime.e2e.js +2 -2
  198. package/dist/collection/components/datetime/test/disabled/datetime.spec.js +4 -4
  199. package/dist/collection/components/datetime/test/locale/datetime.e2e.js +2 -2
  200. package/dist/collection/components/datetime/test/minmax/datetime.e2e.js +6 -6
  201. package/dist/collection/components/datetime/test/month-year-picker/datetime.e2e.js +1 -1
  202. package/dist/collection/components/datetime/test/prefer-wheel/datetime.e2e.js +41 -43
  203. package/dist/collection/components/datetime/test/presentation/datetime.e2e.js +1 -1
  204. package/dist/collection/components/datetime/test/readonly/datetime.e2e.js +4 -4
  205. package/dist/collection/components/datetime/test/values/datetime.e2e.js +12 -15
  206. package/dist/collection/components/datetime/utils/data.js +1 -1
  207. package/dist/collection/components/datetime-button/{datetime-button.md.css → datetime-button.css} +6 -9
  208. package/dist/collection/components/datetime-button/datetime-button.js +5 -5
  209. package/dist/collection/components/datetime-button/test/basic/datetime-button.e2e.js +0 -12
  210. package/dist/collection/components/fab/fab.js +2 -2
  211. package/dist/collection/components/fab-button/fab-button.ios.css +13 -13
  212. package/dist/collection/components/fab-button/fab-button.js +2 -2
  213. package/dist/collection/components/fab-button/fab-button.md.css +4 -4
  214. package/dist/collection/components/fab-button/test/a11y/fab-button.e2e.js +0 -50
  215. package/dist/collection/components/fab-list/fab-list.css +42 -4
  216. package/dist/collection/components/fab-list/fab-list.js +2 -2
  217. package/dist/collection/components/footer/footer.js +2 -2
  218. package/dist/collection/components/grid/grid.js +2 -2
  219. package/dist/collection/components/header/header.js +2 -2
  220. package/dist/collection/components/img/img.js +1 -1
  221. package/dist/collection/components/infinite-scroll/infinite-scroll.js +1 -1
  222. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +2 -2
  223. package/dist/collection/components/input/input.ios.css +29 -5
  224. package/dist/collection/components/input/input.js +41 -2
  225. package/dist/collection/components/input/input.md.css +76 -9
  226. package/dist/collection/components/input/test/a11y/input.e2e.js +3 -41
  227. package/dist/collection/components/item/item.ios.css +3 -3
  228. package/dist/collection/components/item/item.md.css +25 -6
  229. package/dist/collection/components/item-divider/item-divider.js +2 -2
  230. package/dist/collection/components/item-group/item-group.js +1 -1
  231. package/dist/collection/components/item-option/item-option.ios.css +2 -2
  232. package/dist/collection/components/item-option/item-option.js +2 -2
  233. package/dist/collection/components/item-option/item-option.md.css +1 -1
  234. package/dist/collection/components/item-options/item-options.js +1 -1
  235. package/dist/collection/components/item-sliding/item-sliding.js +1 -1
  236. package/dist/collection/components/item-sliding/test/a11y/item-sliding.e2e.js +0 -28
  237. package/dist/collection/components/label/label.js +1 -1
  238. package/dist/collection/components/label/label.md.css +1 -1
  239. package/dist/collection/components/label/test/a11y/label.e2e.js +0 -20
  240. package/dist/collection/components/list/list.js +1 -1
  241. package/dist/collection/components/list/list.md.css +26 -2
  242. package/dist/collection/components/list-header/list-header.js +2 -2
  243. package/dist/collection/components/loading/loading.js +8 -4
  244. package/dist/collection/components/loading/loading.md.css +1 -1
  245. package/dist/collection/components/loading/test/a11y/loading.e2e.js +5 -21
  246. package/dist/collection/components/menu/menu.ios.css +53 -72
  247. package/dist/collection/components/menu/menu.js +15 -21
  248. package/dist/collection/components/menu/menu.md.css +53 -72
  249. package/dist/collection/components/menu-button/menu-button.ios.css +1 -1
  250. package/dist/collection/components/menu-button/menu-button.js +2 -2
  251. package/dist/collection/components/menu-button/test/a11y/menu-button.e2e.js +0 -14
  252. package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
  253. package/dist/collection/components/modal/gestures/swipe-to-close.js +1 -1
  254. package/dist/collection/components/modal/modal.js +9 -5
  255. package/dist/collection/components/nav/nav.js +3 -23
  256. package/dist/collection/components/nav/test/nav-controller.spec.js +36 -36
  257. package/dist/collection/components/nav-link/nav-link.js +1 -1
  258. package/dist/collection/components/note/note.js +2 -2
  259. package/dist/collection/components/picker/picker.ios.css +234 -97
  260. package/dist/collection/components/picker/picker.js +742 -488
  261. package/dist/collection/components/picker/picker.md.css +226 -98
  262. package/dist/collection/components/picker/test/basic/picker.e2e.js +13 -99
  263. package/dist/collection/components/{picker-legacy → picker}/test/is-open/picker.e2e.js +4 -4
  264. package/dist/collection/components/{picker-legacy → picker}/test/picker-id.spec.js +5 -5
  265. package/dist/collection/components/{picker-legacy → picker}/test/trigger/picker.e2e.js +1 -1
  266. package/dist/collection/components/{picker-legacy-column → picker-column}/picker-column.ios.css +26 -2
  267. package/dist/collection/components/picker-column/picker-column.js +335 -499
  268. package/dist/collection/components/{picker-legacy-column → picker-column}/picker-column.md.css +27 -3
  269. package/dist/collection/components/{picker-legacy-column → picker-column}/test/picker-column-aria.spec.js +3 -3
  270. package/dist/collection/components/{picker-legacy-column → picker-column}/test/picker-column-dynamic.spec.js +2 -2
  271. package/dist/collection/components/{picker-legacy-column → picker-column}/test/picker-column.spec.js +2 -2
  272. package/dist/collection/components/{picker-legacy-column → picker-column}/test/standalone/picker-column.e2e.js +3 -3
  273. package/dist/collection/components/{picker-column-option/picker-column-option.md.css → picker-column-internal/picker-column-internal.ios.css} +53 -6
  274. package/dist/collection/components/picker-column-internal/picker-column-internal.js +566 -0
  275. package/dist/collection/components/{picker-column/picker-column.css → picker-column-internal/picker-column-internal.md.css} +83 -96
  276. package/dist/collection/components/{picker-column/test/basic/picker-column.e2e.js → picker-column-internal/test/basic/picker-column-internal.e2e.js} +8 -8
  277. package/dist/collection/components/picker-column-internal/test/disabled/picker-column-internal.e2e.js +162 -0
  278. package/dist/collection/components/{picker-legacy/picker.md.css → picker-internal/picker-internal.ios.css} +117 -142
  279. package/dist/collection/components/picker-internal/picker-internal.js +560 -0
  280. package/dist/collection/components/{picker-legacy/picker.ios.css → picker-internal/picker-internal.md.css} +115 -157
  281. package/dist/collection/components/{picker/test/a11y/picker.e2e.js → picker-internal/test/a11y/picker-internal.e2e.js} +2 -2
  282. package/dist/collection/components/picker-internal/test/basic/picker-internal.e2e.js +118 -0
  283. package/dist/collection/components/{picker/test/keyboard-entry/picker.e2e.js → picker-internal/test/keyboard-entry/picker-internal.e2e.js} +42 -79
  284. package/dist/collection/components/popover/popover.ios.css +33 -2
  285. package/dist/collection/components/popover/popover.js +8 -4
  286. package/dist/collection/components/progress-bar/progress-bar.ios.css +11 -17
  287. package/dist/collection/components/progress-bar/progress-bar.js +1 -4
  288. package/dist/collection/components/progress-bar/progress-bar.md.css +10 -8
  289. package/dist/collection/components/radio/radio.ios.css +44 -7
  290. package/dist/collection/components/radio/radio.md.css +44 -7
  291. package/dist/collection/components/radio/test/a11y/radio.e2e.js +81 -114
  292. package/dist/collection/components/radio-group/radio-group.js +1 -1
  293. package/dist/collection/components/range/range.ios.css +79 -10
  294. package/dist/collection/components/range/range.md.css +133 -17
  295. package/dist/collection/components/range/test/a11y/range.e2e.js +8 -18
  296. package/dist/collection/components/refresher/refresher.ios.css +26 -3
  297. package/dist/collection/components/refresher/refresher.js +1 -1
  298. package/dist/collection/components/refresher/refresher.md.css +28 -5
  299. package/dist/collection/components/refresher-content/refresher-content.js +1 -1
  300. package/dist/collection/components/reorder/reorder.js +1 -1
  301. package/dist/collection/components/reorder-group/reorder-group.js +1 -1
  302. package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
  303. package/dist/collection/components/router-link/router-link.css +1 -1
  304. package/dist/collection/components/router-link/router-link.js +2 -2
  305. package/dist/collection/components/router-outlet/router-outlet.js +1 -1
  306. package/dist/collection/components/row/row.js +1 -1
  307. package/dist/collection/components/searchbar/searchbar.ios.css +56 -8
  308. package/dist/collection/components/searchbar/searchbar.js +4 -4
  309. package/dist/collection/components/searchbar/searchbar.md.css +78 -6
  310. package/dist/collection/components/segment/segment.js +2 -2
  311. package/dist/collection/components/segment/test/a11y/segment.e2e.js +0 -23
  312. package/dist/collection/components/segment-button/segment-button.js +3 -3
  313. package/dist/collection/components/segment-button/segment-button.md.css +2 -2
  314. package/dist/collection/components/select/select.ios.css +24 -6
  315. package/dist/collection/components/select/select.md.css +71 -10
  316. package/dist/collection/components/select/test/a11y/select.e2e.js +4 -68
  317. package/dist/collection/components/select-option/select-option.js +1 -1
  318. package/dist/collection/components/select-popover/select-popover.js +1 -1
  319. package/dist/collection/components/select-popover/select-popover.md.css +4 -4
  320. package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
  321. package/dist/collection/components/spinner/spinner.js +1 -1
  322. package/dist/collection/components/split-pane/split-pane.ios.css +54 -2
  323. package/dist/collection/components/split-pane/split-pane.js +14 -48
  324. package/dist/collection/components/split-pane/split-pane.md.css +54 -2
  325. package/dist/collection/components/tab/tab.js +2 -2
  326. package/dist/collection/components/tab-bar/tab-bar.ios.css +1 -1
  327. package/dist/collection/components/tab-bar/tab-bar.js +2 -2
  328. package/dist/collection/components/tab-bar/tab-bar.md.css +1 -1
  329. package/dist/collection/components/tab-button/tab-button.ios.css +94 -16
  330. package/dist/collection/components/tab-button/tab-button.js +2 -2
  331. package/dist/collection/components/tab-button/tab-button.md.css +93 -10
  332. package/dist/collection/components/tabs/tabs.js +1 -1
  333. package/dist/collection/components/text/text.js +2 -2
  334. package/dist/collection/components/textarea/test/a11y/textarea.e2e.js +3 -41
  335. package/dist/collection/components/textarea/test/legacy/a11y/textarea.e2e.js +31 -0
  336. package/dist/collection/components/textarea/test/legacy/autogrow/textarea.e2e.js +58 -0
  337. package/dist/collection/components/textarea/test/legacy/basic/textarea.e2e.js +43 -0
  338. package/dist/collection/components/textarea/test/legacy/clear-on-edit/textarea.e2e.js +25 -0
  339. package/dist/collection/components/textarea/textarea.ios.css +98 -9
  340. package/dist/collection/components/textarea/textarea.js +84 -5
  341. package/dist/collection/components/textarea/textarea.md.css +156 -13
  342. package/dist/collection/components/thumbnail/thumbnail.js +1 -1
  343. package/dist/collection/components/title/title.ios.css +21 -2
  344. package/dist/collection/components/title/title.js +2 -2
  345. package/dist/collection/components/toast/test/a11y/toast.e2e.js +24 -56
  346. package/dist/collection/components/toast/test/toast.spec.js +12 -0
  347. package/dist/collection/components/toast/toast.ios.css +53 -6
  348. package/dist/collection/components/toast/toast.js +9 -11
  349. package/dist/collection/components/toast/toast.md.css +54 -7
  350. package/dist/collection/components/toggle/test/a11y/toggle.e2e.js +2 -8
  351. package/dist/collection/components/toggle/toggle.ios.css +29 -11
  352. package/dist/collection/components/toggle/toggle.md.css +23 -5
  353. package/dist/collection/components/toolbar/toolbar.js +2 -2
  354. package/dist/collection/css/test/a11y/typography.e2e.js +0 -18
  355. package/dist/collection/utils/gesture/button-active.js +1 -1
  356. package/dist/collection/utils/gesture/gesture-controller.js +1 -1
  357. package/dist/collection/utils/overlays.js +4 -11
  358. package/dist/collection/utils/test/playwright/generator.js +0 -1
  359. package/dist/collection/utils/test/playwright/page/utils/set-content.js +1 -1
  360. package/dist/docs.json +176 -558
  361. package/dist/esm/{app-globals-47226a12.js → app-globals-5cf6195b.js} +1 -1
  362. package/dist/esm/{button-active-35dc239f.js → button-active-47ac8092.js} +3 -3
  363. package/dist/esm/{data-691286f1.js → data-0f3ab200.js} +1 -1
  364. package/dist/esm/{gesture-controller-314a54f6.js → gesture-controller-1bf57181.js} +1 -1
  365. package/dist/esm/{hardware-back-button-f42b9c80.js → hardware-back-button-b410a047.js} +2 -2
  366. package/dist/esm/{index-4b98143d.js → index-0b4beb69.js} +3 -3
  367. package/dist/esm/{index-39782642.js → index-2cf77112.js} +2 -2
  368. package/dist/esm/{index-48209844.js → index-47b2066d.js} +2 -2
  369. package/dist/esm/{index-73881b51.js → index-4c30cddd.js} +25 -22
  370. package/dist/esm/index.js +10 -10
  371. package/dist/esm/ion-accordion_2.entry.js +2 -2
  372. package/dist/esm/ion-action-sheet.entry.js +17 -13
  373. package/dist/esm/ion-alert.entry.js +15 -11
  374. package/dist/esm/ion-app_8.entry.js +22 -21
  375. package/dist/esm/ion-avatar_3.entry.js +5 -5
  376. package/dist/esm/ion-back-button.entry.js +3 -3
  377. package/dist/esm/ion-backdrop.entry.js +15 -3
  378. package/dist/esm/ion-breadcrumb_2.entry.js +2 -2
  379. package/dist/esm/ion-button_2.entry.js +4 -4
  380. package/dist/esm/ion-card_5.entry.js +2 -2
  381. package/dist/esm/ion-checkbox.entry.js +4 -4
  382. package/dist/esm/ion-chip.entry.js +2 -2
  383. package/dist/esm/ion-col_3.entry.js +5 -5
  384. package/dist/esm/ion-datetime-button.entry.js +8 -8
  385. package/dist/esm/ion-datetime_3.entry.js +76 -52
  386. package/dist/esm/ion-fab_3.entry.js +11 -11
  387. package/dist/esm/ion-img.entry.js +3 -3
  388. package/dist/esm/ion-infinite-scroll_2.entry.js +5 -5
  389. package/dist/esm/ion-input.entry.js +8 -6
  390. package/dist/esm/ion-item-option_3.entry.js +9 -9
  391. package/dist/esm/ion-item_8.entry.js +17 -17
  392. package/dist/esm/ion-loading.entry.js +11 -8
  393. package/dist/esm/ion-menu_3.entry.js +30 -35
  394. package/dist/esm/ion-modal.entry.js +15 -11
  395. package/dist/esm/ion-nav_2.entry.js +8 -11
  396. package/dist/esm/{ion-picker-column.entry.js → ion-picker-column-internal.entry.js} +91 -107
  397. package/dist/esm/{ion-picker.entry.js → ion-picker-internal.entry.js} +24 -31
  398. package/dist/esm/ion-popover.entry.js +12 -9
  399. package/dist/esm/ion-progress-bar.entry.js +5 -8
  400. package/dist/esm/ion-radio_2.entry.js +5 -5
  401. package/dist/esm/ion-range.entry.js +5 -5
  402. package/dist/esm/ion-refresher_2.entry.js +9 -9
  403. package/dist/esm/ion-reorder_2.entry.js +5 -5
  404. package/dist/esm/ion-ripple-effect.entry.js +3 -3
  405. package/dist/esm/ion-route_4.entry.js +5 -5
  406. package/dist/esm/ion-searchbar.entry.js +8 -8
  407. package/dist/esm/ion-segment_2.entry.js +9 -9
  408. package/dist/esm/ion-select_3.entry.js +9 -10
  409. package/dist/esm/ion-spinner.entry.js +3 -3
  410. package/dist/esm/ion-split-pane.entry.js +18 -28
  411. package/dist/esm/ion-tab-bar_2.entry.js +10 -10
  412. package/dist/esm/ion-tab_2.entry.js +4 -4
  413. package/dist/esm/ion-text.entry.js +4 -4
  414. package/dist/esm/ion-textarea.entry.js +70 -10
  415. package/dist/esm/ion-toast.entry.js +16 -18
  416. package/dist/esm/ion-toggle.entry.js +5 -5
  417. package/dist/esm/{ionic-global-778b7863.js → ionic-global-ad9a1810.js} +1 -1
  418. package/dist/esm/ionic.js +6 -6
  419. package/dist/esm/{ios.transition-7ff7381d.js → ios.transition-b76c7020.js} +2 -2
  420. package/dist/esm/loader.js +5 -5
  421. package/dist/esm/{md.transition-28a9a26b.js → md.transition-564937a7.js} +2 -2
  422. package/dist/esm/{overlays-2d8629c6.js → overlays-141e4a0f.js} +6 -13
  423. package/dist/esm/{status-tap-2b335fb7.js → status-tap-5a95077d.js} +1 -1
  424. package/dist/esm/{swipe-back-7f7620ca.js → swipe-back-c06602f2.js} +2 -2
  425. package/dist/esm-es5/app-globals-5cf6195b.js +4 -0
  426. package/dist/esm-es5/button-active-47ac8092.js +4 -0
  427. package/dist/esm-es5/{gesture-controller-314a54f6.js → gesture-controller-1bf57181.js} +1 -1
  428. package/dist/esm-es5/{hardware-back-button-f42b9c80.js → hardware-back-button-b410a047.js} +1 -1
  429. package/dist/esm-es5/{index-4b98143d.js → index-0b4beb69.js} +1 -1
  430. package/dist/esm-es5/{index-39782642.js → index-2cf77112.js} +1 -1
  431. package/dist/esm-es5/{index-48209844.js → index-47b2066d.js} +1 -1
  432. package/dist/esm-es5/{index-73881b51.js → index-4c30cddd.js} +1 -1
  433. package/dist/esm-es5/index.js +1 -1
  434. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  435. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  436. package/dist/esm-es5/ion-alert.entry.js +1 -1
  437. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  438. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  439. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  440. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  441. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  442. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  443. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  444. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  445. package/dist/esm-es5/ion-chip.entry.js +1 -1
  446. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  447. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  448. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  449. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  450. package/dist/esm-es5/ion-img.entry.js +1 -1
  451. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  452. package/dist/esm-es5/ion-input.entry.js +1 -1
  453. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  454. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  455. package/dist/esm-es5/ion-loading.entry.js +1 -1
  456. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  457. package/dist/esm-es5/ion-modal.entry.js +1 -1
  458. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  459. package/dist/esm-es5/ion-picker-column-internal.entry.js +4 -0
  460. package/dist/esm-es5/ion-picker-internal.entry.js +4 -0
  461. package/dist/esm-es5/ion-popover.entry.js +1 -1
  462. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  463. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  464. package/dist/esm-es5/ion-range.entry.js +1 -1
  465. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  466. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  467. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  468. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  469. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  470. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  471. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  472. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  473. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  474. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  475. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  476. package/dist/esm-es5/ion-text.entry.js +1 -1
  477. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  478. package/dist/esm-es5/ion-toast.entry.js +1 -1
  479. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  480. package/dist/esm-es5/{ionic-global-778b7863.js → ionic-global-ad9a1810.js} +1 -1
  481. package/dist/esm-es5/ionic.js +1 -1
  482. package/dist/esm-es5/{ios.transition-7ff7381d.js → ios.transition-b76c7020.js} +1 -1
  483. package/dist/esm-es5/loader.js +1 -1
  484. package/dist/esm-es5/md.transition-564937a7.js +4 -0
  485. package/dist/esm-es5/overlays-141e4a0f.js +4 -0
  486. package/dist/esm-es5/{status-tap-2b335fb7.js → status-tap-5a95077d.js} +1 -1
  487. package/dist/esm-es5/{swipe-back-7f7620ca.js → swipe-back-c06602f2.js} +1 -1
  488. package/dist/html.html-data.json +13 -152
  489. package/dist/ionic/index.esm.js +1 -1
  490. package/dist/ionic/ionic.esm.js +1 -1
  491. package/dist/ionic/ionic.js +1 -1
  492. package/dist/ionic/p-00feeece.entry.js +4 -0
  493. package/dist/ionic/{p-4853de94.entry.js → p-027f3674.entry.js} +1 -1
  494. package/dist/ionic/p-0457213c.entry.js +4 -0
  495. package/dist/ionic/p-08f50365.entry.js +4 -0
  496. package/dist/ionic/{p-a0da38e6.system.js → p-0c2363a9.system.js} +1 -1
  497. package/dist/ionic/p-1131946f.system.entry.js +4 -0
  498. package/dist/ionic/{p-8ddc00f7.js → p-123b4809.js} +1 -1
  499. package/dist/ionic/p-1636923f.system.js +4 -0
  500. package/dist/ionic/p-16a61810.entry.js +4 -0
  501. package/dist/ionic/p-1cc2ce69.system.entry.js +4 -0
  502. package/dist/ionic/p-1f16d040.entry.js +4 -0
  503. package/dist/ionic/p-1f19958f.system.entry.js +4 -0
  504. package/dist/ionic/p-21ca1f1c.js +4 -0
  505. package/dist/ionic/p-2327064c.entry.js +4 -0
  506. package/dist/ionic/{p-fd14f2b4.entry.js → p-23c73017.entry.js} +1 -1
  507. package/dist/ionic/p-275705e5.entry.js +4 -0
  508. package/dist/ionic/{p-c6fef62b.system.js → p-2e14c533.system.js} +1 -1
  509. package/dist/ionic/p-2f30744e.system.entry.js +4 -0
  510. package/dist/ionic/{p-55a4d7cf.entry.js → p-3079950e.entry.js} +1 -1
  511. package/dist/ionic/{p-b4d8fe47.js → p-30cd5e7b.js} +1 -1
  512. package/dist/ionic/p-31450f73.entry.js +4 -0
  513. package/dist/ionic/{p-3e1e14d9.system.js → p-31b2326e.system.js} +1 -1
  514. package/dist/ionic/{p-b8c4df21.entry.js → p-337ac0f5.entry.js} +1 -1
  515. package/dist/ionic/p-33c1d796.system.js +4 -0
  516. package/dist/ionic/{p-364fd2ae.system.entry.js → p-3481d54e.system.entry.js} +1 -1
  517. package/dist/ionic/p-34c60592.system.entry.js +4 -0
  518. package/dist/ionic/p-389a681c.entry.js +4 -0
  519. package/dist/ionic/p-396083cc.entry.js +4 -0
  520. package/dist/ionic/p-3a7de59c.entry.js +4 -0
  521. package/dist/ionic/p-3b2e1fad.system.entry.js +4 -0
  522. package/dist/ionic/p-3d961d93.entry.js +4 -0
  523. package/dist/ionic/p-3eb54fff.system.entry.js +4 -0
  524. package/dist/ionic/p-42a9f663.system.entry.js +4 -0
  525. package/dist/ionic/{p-6028d77a.entry.js → p-43a5edee.entry.js} +1 -1
  526. package/dist/ionic/{p-3eb2da31.js → p-49aba878.js} +1 -1
  527. package/dist/ionic/p-4edfddd3.entry.js +4 -0
  528. package/dist/ionic/p-4fda5c35.entry.js +4 -0
  529. package/dist/ionic/p-502780e4.entry.js +4 -0
  530. package/dist/ionic/p-508a4c87.entry.js +4 -0
  531. package/dist/ionic/p-5928fac9.system.entry.js +4 -0
  532. package/dist/ionic/p-59b06910.entry.js +4 -0
  533. package/dist/ionic/p-5c2ae448.js +4 -0
  534. package/dist/ionic/{p-a2ad515b.entry.js → p-5c580e89.entry.js} +1 -1
  535. package/dist/ionic/{p-a02b2d75.entry.js → p-5c6a04bd.entry.js} +1 -1
  536. package/dist/ionic/p-5cb5f63d.system.entry.js +4 -0
  537. package/dist/ionic/{p-1aa7c019.js → p-5d7e32ce.js} +1 -1
  538. package/dist/ionic/p-5e23bea8.system.entry.js +4 -0
  539. package/dist/ionic/{p-590ecff0.entry.js → p-601e17b4.entry.js} +1 -1
  540. package/dist/ionic/p-62ea79fb.system.js +4 -0
  541. package/dist/ionic/{p-12b75934.system.entry.js → p-64856c3c.system.entry.js} +1 -1
  542. package/dist/ionic/p-64db1331.entry.js +4 -0
  543. package/dist/ionic/{p-3f028207.system.js → p-6525a8cd.system.js} +1 -1
  544. package/dist/ionic/{p-e2f91d98.entry.js → p-657ccdd6.entry.js} +1 -1
  545. package/dist/ionic/p-68ba8e77.system.entry.js +4 -0
  546. package/dist/ionic/{p-2f66e177.system.entry.js → p-70e34286.system.entry.js} +1 -1
  547. package/dist/ionic/{p-8af445b5.system.entry.js → p-7173ba59.system.entry.js} +2 -2
  548. package/dist/ionic/{p-a074634d.system.entry.js → p-717e2526.system.entry.js} +2 -2
  549. package/dist/ionic/p-72e6fbe3.entry.js +4 -0
  550. package/dist/ionic/{p-76893257.system.js → p-72fa96bf.system.js} +1 -1
  551. package/dist/ionic/{p-25b08bc4.system.js → p-74deb358.system.js} +1 -1
  552. package/dist/ionic/p-776b144b.system.js +4 -0
  553. package/dist/ionic/p-77b5178b.system.entry.js +4 -0
  554. package/dist/ionic/p-7888a87b.js +4 -0
  555. package/dist/ionic/p-7b1ed642.system.entry.js +4 -0
  556. package/dist/ionic/p-7b260ba5.entry.js +4 -0
  557. package/dist/ionic/p-7ce40e7b.entry.js +4 -0
  558. package/dist/ionic/{p-58e3ae88.system.entry.js → p-86813176.system.entry.js} +1 -1
  559. package/dist/ionic/{p-dd79d499.system.entry.js → p-8794fa00.system.entry.js} +1 -1
  560. package/dist/ionic/{p-c9de921c.entry.js → p-88e9052d.entry.js} +1 -1
  561. package/dist/ionic/p-8964db8b.entry.js +4 -0
  562. package/dist/ionic/{p-b94882a9.system.js → p-89ca4c4b.system.js} +1 -1
  563. package/dist/ionic/p-8e651c29.entry.js +4 -0
  564. package/dist/ionic/p-8f872991.entry.js +4 -0
  565. package/dist/ionic/p-9056778e.system.entry.js +4 -0
  566. package/dist/ionic/{p-7f19f4cd.entry.js → p-95d5a097.entry.js} +1 -1
  567. package/dist/ionic/{p-95c44e02.system.js → p-9cd7ba27.system.js} +1 -1
  568. package/dist/ionic/{p-fd36799d.system.js → p-9ec7208d.system.js} +1 -1
  569. package/dist/ionic/p-a0b28c69.system.entry.js +4 -0
  570. package/dist/ionic/{p-ac955b58.system.entry.js → p-a3df16b9.system.entry.js} +1 -1
  571. package/dist/ionic/{p-62a3c609.system.js → p-a5951821.system.js} +1 -1
  572. package/dist/ionic/{p-fa667cfb.system.entry.js → p-a85d9047.system.entry.js} +1 -1
  573. package/dist/ionic/{p-445754d1.system.entry.js → p-abcedc15.system.entry.js} +1 -1
  574. package/dist/ionic/p-ae35294f.system.entry.js +4 -0
  575. package/dist/ionic/{p-156299c1.system.entry.js → p-afd6d696.system.entry.js} +1 -1
  576. package/dist/ionic/p-b0ff8075.entry.js +4 -0
  577. package/dist/ionic/p-b2189b67.system.entry.js +4 -0
  578. package/dist/ionic/p-b2595011.system.entry.js +4 -0
  579. package/dist/ionic/{p-5ee49d72.entry.js → p-b6279412.entry.js} +1 -1
  580. package/dist/ionic/{p-9b97df10.js → p-bb3615f7.js} +1 -1
  581. package/dist/ionic/p-bd314f1e.system.entry.js +4 -0
  582. package/dist/ionic/p-bdca4784.js +4 -0
  583. package/dist/ionic/p-bf05cbc7.entry.js +4 -0
  584. package/dist/ionic/{p-b1e1d6dd.entry.js → p-c11bab7e.entry.js} +1 -1
  585. package/dist/ionic/{p-43c2aeae.system.entry.js → p-c1797ec5.system.entry.js} +2 -2
  586. package/dist/ionic/{p-78aade1a.entry.js → p-c308f773.entry.js} +1 -1
  587. package/dist/ionic/p-c39cc96d.system.entry.js +4 -0
  588. package/dist/ionic/p-c65399ff.system.entry.js +4 -0
  589. package/dist/ionic/{p-78dfbc32.system.entry.js → p-c747f89b.system.entry.js} +2 -2
  590. package/dist/ionic/{p-20d469d0.system.js → p-c7c8429a.system.js} +1 -1
  591. package/dist/ionic/p-caedbb0e.entry.js +4 -0
  592. package/dist/ionic/p-cb9e71e0.entry.js +4 -0
  593. package/dist/ionic/{p-5f456b3c.system.entry.js → p-cd9a7017.system.entry.js} +1 -1
  594. package/dist/ionic/{p-0d25b742.js → p-cdc277a6.js} +1 -1
  595. package/dist/ionic/p-cde3ac34.system.entry.js +4 -0
  596. package/dist/ionic/{p-4b2d5b9c.js → p-ceceac26.js} +1 -1
  597. package/dist/ionic/p-dbd70d97.system.entry.js +4 -0
  598. package/dist/ionic/p-dcb5711d.entry.js +4 -0
  599. package/dist/ionic/{p-341b4519.js → p-de55ec45.js} +1 -1
  600. package/dist/ionic/{p-001010b6.system.js → p-df504a37.system.js} +1 -1
  601. package/dist/ionic/p-e02b2365.system.entry.js +4 -0
  602. package/dist/ionic/p-e04b9647.system.entry.js +4 -0
  603. package/dist/ionic/p-e7b4f81d.entry.js +4 -0
  604. package/dist/ionic/p-e81bf09e.system.entry.js +4 -0
  605. package/dist/ionic/{p-5898aad5.system.entry.js → p-ea25b4c8.system.entry.js} +1 -1
  606. package/dist/ionic/{p-8a671f16.entry.js → p-eb07b88f.entry.js} +1 -1
  607. package/dist/ionic/p-ed7a529f.js +5 -0
  608. package/dist/ionic/{p-2569497d.system.entry.js → p-f0194418.system.entry.js} +1 -1
  609. package/dist/ionic/p-f53d074d.system.entry.js +4 -0
  610. package/dist/ionic/{p-8ededb41.js → p-f5d2dc9b.js} +1 -1
  611. package/dist/ionic/p-f7981b54.system.entry.js +4 -0
  612. package/dist/ionic/p-f840d817.entry.js +4 -0
  613. package/dist/ionic/{p-0fd295ef.system.entry.js → p-fb9f8495.system.entry.js} +1 -1
  614. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +0 -8
  615. package/dist/types/components/action-sheet/action-sheet.d.ts +4 -0
  616. package/dist/types/components/alert/alert.d.ts +4 -0
  617. package/dist/types/components/backdrop/backdrop.d.ts +3 -0
  618. package/dist/types/components/datetime/datetime.d.ts +1 -0
  619. package/dist/types/components/datetime/utils/data.d.ts +7 -11
  620. package/dist/types/components/input/input.d.ts +6 -0
  621. package/dist/types/components/loading/loading.d.ts +4 -0
  622. package/dist/types/components/menu/menu.d.ts +2 -12
  623. package/dist/types/components/modal/modal.d.ts +4 -0
  624. package/dist/types/components/nav/nav.d.ts +1 -4
  625. package/dist/types/components/picker/picker.d.ts +133 -75
  626. package/dist/types/components/picker-column/picker-column.d.ts +39 -99
  627. package/dist/types/components/picker-column-internal/picker-column-internal-interfaces.d.ts +5 -0
  628. package/dist/types/components/picker-column-internal/picker-column-internal.d.ts +102 -0
  629. package/dist/types/components/picker-internal/picker-internal-interfaces.d.ts +8 -0
  630. package/dist/types/components/picker-internal/picker-internal.d.ts +102 -0
  631. package/dist/types/components/popover/popover.d.ts +4 -0
  632. package/dist/types/components/split-pane/split-pane.d.ts +2 -14
  633. package/dist/types/components/textarea/textarea.d.ts +17 -0
  634. package/dist/types/components/toast/toast-interface.d.ts +4 -0
  635. package/dist/types/components/toast/toast.d.ts +4 -0
  636. package/dist/types/components.d.ts +149 -166
  637. package/dist/types/interface.d.ts +1 -1
  638. package/dist/types/utils/config.d.ts +2 -2
  639. package/dist/types/utils/gesture/gesture-controller.d.ts +0 -1
  640. package/dist/types/utils/overlays.d.ts +2 -5
  641. package/hydrate/index.js +1547 -1504
  642. package/package.json +3 -3
  643. package/components/ion-picker-column-option.d.ts +0 -11
  644. package/components/ion-picker-column-option.js +0 -9
  645. package/components/ion-picker-legacy-column.d.ts +0 -11
  646. package/components/ion-picker-legacy-column.js +0 -9
  647. package/components/ion-picker-legacy.js +0 -311
  648. package/components/picker-column-option.js +0 -124
  649. package/components/picker-column2.js +0 -381
  650. package/css/themes/dark.always.css +0 -122
  651. package/css/themes/dark.always.css.map +0 -1
  652. package/css/themes/dark.class.css +0 -122
  653. package/css/themes/dark.class.css.map +0 -1
  654. package/css/themes/dark.css +0 -3
  655. package/css/themes/dark.css.map +0 -1
  656. package/css/themes/dark.system.css +0 -124
  657. package/css/themes/dark.system.css.map +0 -1
  658. package/dist/cjs/ion-picker-column-option.cjs.entry.js +0 -106
  659. package/dist/collection/components/datetime-button/datetime-button.ios.css +0 -107
  660. package/dist/collection/components/picker/test/custom/picker.e2e.js +0 -85
  661. package/dist/collection/components/picker-column/test/disabled/picker-column.e2e.js +0 -91
  662. package/dist/collection/components/picker-column/test/slots/picker-column.e2e.js +0 -39
  663. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -87
  664. package/dist/collection/components/picker-column-option/picker-column-option.js +0 -173
  665. package/dist/collection/components/picker-column-option/test/a11y/picker-column-option.e2e.js +0 -18
  666. package/dist/collection/components/picker-column-option/test/basic/picker-column-option.e2e.js +0 -37
  667. package/dist/collection/components/picker-column-option/test/picker-column-option.spec.js +0 -29
  668. package/dist/collection/components/picker-legacy/picker.js +0 -811
  669. package/dist/collection/components/picker-legacy/test/basic/picker.e2e.js +0 -25
  670. package/dist/collection/components/picker-legacy-column/picker-column.js +0 -419
  671. package/dist/collection/components/progress-bar/test/a11y/progress-bar.e2e.js +0 -24
  672. package/dist/collection/components/refresher/test/a11y/refresher.e2e.js +0 -26
  673. package/dist/collection/components/router-link/test/a11y/router-link.e2e.js +0 -23
  674. package/dist/collection/components/select-popover/test/a11y/select-popover.e2e.js +0 -32
  675. package/dist/collection/components/split-pane/test/wrapped-menu/split-pane.e2e.js +0 -41
  676. package/dist/collection/themes/test/colors/theme.e2e.js +0 -114
  677. package/dist/collection/utils/test/overlays/overlays-scroll-blocking.spec.js +0 -65
  678. package/dist/esm/ion-picker-column-option.entry.js +0 -102
  679. package/dist/esm-es5/app-globals-47226a12.js +0 -4
  680. package/dist/esm-es5/button-active-35dc239f.js +0 -4
  681. package/dist/esm-es5/ion-picker-column-option.entry.js +0 -4
  682. package/dist/esm-es5/ion-picker-column.entry.js +0 -4
  683. package/dist/esm-es5/ion-picker.entry.js +0 -4
  684. package/dist/esm-es5/md.transition-28a9a26b.js +0 -4
  685. package/dist/esm-es5/overlays-2d8629c6.js +0 -4
  686. package/dist/ionic/p-04cca62a.system.entry.js +0 -4
  687. package/dist/ionic/p-0543054b.entry.js +0 -4
  688. package/dist/ionic/p-0729b5cd.entry.js +0 -4
  689. package/dist/ionic/p-08bb849b.entry.js +0 -4
  690. package/dist/ionic/p-09fffdb0.system.entry.js +0 -4
  691. package/dist/ionic/p-0b955124.system.js +0 -4
  692. package/dist/ionic/p-0c840add.entry.js +0 -4
  693. package/dist/ionic/p-0caf81c6.system.entry.js +0 -4
  694. package/dist/ionic/p-1029611c.entry.js +0 -4
  695. package/dist/ionic/p-11b295f4.entry.js +0 -4
  696. package/dist/ionic/p-13264eba.system.entry.js +0 -4
  697. package/dist/ionic/p-15639026.entry.js +0 -4
  698. package/dist/ionic/p-156e6059.system.entry.js +0 -4
  699. package/dist/ionic/p-178690c0.system.entry.js +0 -4
  700. package/dist/ionic/p-1831387a.system.entry.js +0 -4
  701. package/dist/ionic/p-19385313.entry.js +0 -4
  702. package/dist/ionic/p-24058a38.system.entry.js +0 -4
  703. package/dist/ionic/p-24ff2729.system.entry.js +0 -4
  704. package/dist/ionic/p-276804d2.entry.js +0 -4
  705. package/dist/ionic/p-2a515f11.system.entry.js +0 -4
  706. package/dist/ionic/p-2c8e5c80.entry.js +0 -4
  707. package/dist/ionic/p-315f773b.system.entry.js +0 -4
  708. package/dist/ionic/p-31d9a349.entry.js +0 -4
  709. package/dist/ionic/p-3c2c3769.system.entry.js +0 -4
  710. package/dist/ionic/p-3f155d29.entry.js +0 -4
  711. package/dist/ionic/p-3fa8e0f9.entry.js +0 -4
  712. package/dist/ionic/p-40314c02.entry.js +0 -4
  713. package/dist/ionic/p-49457fe6.entry.js +0 -4
  714. package/dist/ionic/p-499f2482.entry.js +0 -4
  715. package/dist/ionic/p-4fb92810.system.entry.js +0 -4
  716. package/dist/ionic/p-595c7065.entry.js +0 -4
  717. package/dist/ionic/p-595f9dfe.system.entry.js +0 -4
  718. package/dist/ionic/p-5e175db3.system.entry.js +0 -4
  719. package/dist/ionic/p-5ef79cfe.system.entry.js +0 -4
  720. package/dist/ionic/p-5f739516.system.js +0 -4
  721. package/dist/ionic/p-61c078b4.system.entry.js +0 -4
  722. package/dist/ionic/p-6c48dd91.system.js +0 -4
  723. package/dist/ionic/p-6ea89932.js +0 -4
  724. package/dist/ionic/p-7a89f3f3.system.entry.js +0 -4
  725. package/dist/ionic/p-7dfcdac4.system.entry.js +0 -4
  726. package/dist/ionic/p-7dfdf838.system.entry.js +0 -4
  727. package/dist/ionic/p-7efa91b5.entry.js +0 -4
  728. package/dist/ionic/p-854484fa.entry.js +0 -4
  729. package/dist/ionic/p-892757c2.system.entry.js +0 -4
  730. package/dist/ionic/p-8a0113a9.entry.js +0 -4
  731. package/dist/ionic/p-8bd7a47e.entry.js +0 -4
  732. package/dist/ionic/p-8e58d0a5.system.entry.js +0 -4
  733. package/dist/ionic/p-8f1ce253.js +0 -4
  734. package/dist/ionic/p-90fcbf72.js +0 -4
  735. package/dist/ionic/p-912ee727.entry.js +0 -4
  736. package/dist/ionic/p-938ccce5.entry.js +0 -4
  737. package/dist/ionic/p-951d75bb.entry.js +0 -4
  738. package/dist/ionic/p-ab08eda4.system.entry.js +0 -4
  739. package/dist/ionic/p-b17f058b.system.js +0 -4
  740. package/dist/ionic/p-b27577e5.system.entry.js +0 -4
  741. package/dist/ionic/p-bfcaea5f.entry.js +0 -4
  742. package/dist/ionic/p-c4045831.entry.js +0 -4
  743. package/dist/ionic/p-c4e9201d.entry.js +0 -4
  744. package/dist/ionic/p-c5c3710c.js +0 -4
  745. package/dist/ionic/p-c9f6626c.system.entry.js +0 -4
  746. package/dist/ionic/p-cd5cb2da.system.entry.js +0 -4
  747. package/dist/ionic/p-d8834a0d.entry.js +0 -4
  748. package/dist/ionic/p-db504106.entry.js +0 -4
  749. package/dist/ionic/p-e1054dac.system.entry.js +0 -4
  750. package/dist/ionic/p-e1271366.js +0 -5
  751. package/dist/ionic/p-e82bc15e.entry.js +0 -4
  752. package/dist/ionic/p-e9c2c532.entry.js +0 -4
  753. package/dist/ionic/p-ef065e0d.system.entry.js +0 -4
  754. package/dist/ionic/p-f7d618b7.entry.js +0 -4
  755. package/dist/ionic/p-fa203b3a.system.entry.js +0 -4
  756. package/dist/ionic/p-fe990e42.system.entry.js +0 -4
  757. package/dist/types/components/picker/picker-interfaces.d.ts +0 -8
  758. package/dist/types/components/picker-column/picker-column-interfaces.d.ts +0 -4
  759. package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -66
  760. package/dist/types/components/picker-legacy/picker.d.ts +0 -158
  761. package/dist/types/components/picker-legacy-column/picker-column.d.ts +0 -46
  762. /package/dist/collection/components/{picker-legacy → picker}/animations/ios.enter.js +0 -0
  763. /package/dist/collection/components/{picker-legacy → picker}/animations/ios.leave.js +0 -0
  764. /package/dist/collection/components/picker/{picker-interfaces.js → picker-interface.js} +0 -0
  765. /package/dist/collection/components/{picker-legacy-column → picker-column}/test/test.utils.js +0 -0
  766. /package/dist/collection/components/{picker-column/picker-column-interfaces.js → picker-column-internal/picker-column-internal-interfaces.js} +0 -0
  767. /package/dist/collection/components/{picker-legacy/picker-interface.js → picker-internal/picker-internal-interfaces.js} +0 -0
  768. /package/dist/esm-es5/{data-691286f1.js → data-0f3ab200.js} +0 -0
  769. /package/dist/ionic/{p-66e6860f.system.js → p-7330c044.system.js} +0 -0
  770. /package/dist/ionic/{p-5289aade.js → p-f7dce541.js} +0 -0
  771. /package/dist/types/components/{picker-legacy → picker}/animations/ios.enter.d.ts +0 -0
  772. /package/dist/types/components/{picker-legacy → picker}/animations/ios.leave.d.ts +0 -0
  773. /package/dist/types/components/{picker-legacy → picker}/picker-interface.d.ts +0 -0
  774. /package/dist/types/components/{picker-legacy-column → picker-column}/test/test.utils.d.ts +0 -0
@@ -256,6 +256,10 @@ export declare class Modal implements ComponentInterface, OverlayInterface {
256
256
  *
257
257
  * @param data Any data to emit in the dismiss events.
258
258
  * @param role The role of the element that is dismissing the modal. For example, 'cancel' or 'backdrop'.
259
+ *
260
+ * This is a no-op if the overlay has not been presented yet. If you want
261
+ * to remove an overlay from the DOM that was never presented, use the
262
+ * [remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method.
259
263
  */
260
264
  dismiss(data?: any, role?: string): Promise<boolean>;
261
265
  /**
@@ -181,10 +181,7 @@ export declare class Nav implements NavOutlet {
181
181
  * @param view The view to get.
182
182
  */
183
183
  getPrevious(view?: ViewController): Promise<ViewController | undefined>;
184
- /**
185
- * Returns the number of views in the stack.
186
- */
187
- getLength(): Promise<number>;
184
+ getLength(): number;
188
185
  private getActiveSync;
189
186
  private canGoBackSync;
190
187
  private getPreviousSync;
@@ -1,104 +1,162 @@
1
1
  import type { ComponentInterface, EventEmitter } from '../../stencil-public-runtime';
2
- import type { PickerChangeEventDetail } from './picker-interfaces';
2
+ import type { AnimationBuilder, OverlayInterface, FrameworkDelegate } from '../../interface';
3
+ import type { OverlayEventDetail } from '../../utils/overlays-interface';
4
+ import type { PickerButton, PickerColumn } from './picker-interface';
3
5
  /**
4
6
  * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
5
7
  */
6
- export declare class Picker implements ComponentInterface {
7
- private inputEl?;
8
- private useInputMode;
9
- private inputModeColumn?;
10
- private highlightEl?;
11
- private actionOnClick?;
12
- private destroyKeypressListener?;
13
- private singleColumnSearchTimeout?;
8
+ export declare class Picker implements ComponentInterface, OverlayInterface {
9
+ private readonly delegateController;
10
+ private readonly lockController;
11
+ private readonly triggerController;
12
+ private durationTimeout?;
13
+ lastFocus?: HTMLElement;
14
14
  el: HTMLIonPickerElement;
15
+ presented: boolean;
16
+ /** @internal */
17
+ overlayIndex: number;
18
+ /** @internal */
19
+ delegate?: FrameworkDelegate;
20
+ /** @internal */
21
+ hasController: boolean;
15
22
  /**
16
- * @internal
23
+ * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
17
24
  */
18
- ionInputModeChange: EventEmitter<PickerChangeEventDetail>;
25
+ keyboardClose: boolean;
19
26
  /**
20
- * When the picker is interacted with
21
- * we need to prevent touchstart so other
22
- * gestures do not fire. For example,
23
- * scrolling on the wheel picker
24
- * in ion-datetime should not cause
25
- * a card modal to swipe to close.
27
+ * Animation to use when the picker is presented.
26
28
  */
27
- preventTouchStartPropagation(ev: TouchEvent): void;
28
- componentWillLoad(): void;
29
- private isInHighlightBounds;
29
+ enterAnimation?: AnimationBuilder;
30
+ /**
31
+ * Animation to use when the picker is dismissed.
32
+ */
33
+ leaveAnimation?: AnimationBuilder;
34
+ /**
35
+ * Array of buttons to be displayed at the top of the picker.
36
+ */
37
+ buttons: PickerButton[];
38
+ /**
39
+ * Array of columns to be displayed in the picker.
40
+ */
41
+ columns: PickerColumn[];
42
+ /**
43
+ * Additional classes to apply for custom CSS. If multiple classes are
44
+ * provided they should be separated by spaces.
45
+ */
46
+ cssClass?: string | string[];
47
+ /**
48
+ * Number of milliseconds to wait before dismissing the picker.
49
+ */
50
+ duration: number;
51
+ /**
52
+ * If `true`, a backdrop will be displayed behind the picker.
53
+ */
54
+ showBackdrop: boolean;
55
+ /**
56
+ * If `true`, the picker will be dismissed when the backdrop is clicked.
57
+ */
58
+ backdropDismiss: boolean;
59
+ /**
60
+ * If `true`, the picker will animate.
61
+ */
62
+ animated: boolean;
63
+ /**
64
+ * Additional attributes to pass to the picker.
65
+ */
66
+ htmlAttributes?: {
67
+ [key: string]: any;
68
+ };
69
+ /**
70
+ * If `true`, the picker will open. If `false`, the picker will close.
71
+ * Use this if you need finer grained control over presentation, otherwise
72
+ * just use the pickerController or the `trigger` property.
73
+ * Note: `isOpen` will not automatically be set back to `false` when
74
+ * the picker dismisses. You will need to do that in your code.
75
+ */
76
+ isOpen: boolean;
77
+ onIsOpenChange(newValue: boolean, oldValue: boolean): void;
78
+ /**
79
+ * An ID corresponding to the trigger element that
80
+ * causes the picker to open when clicked.
81
+ */
82
+ trigger: string | undefined;
83
+ triggerChanged(): void;
84
+ /**
85
+ * Emitted after the picker has presented.
86
+ */
87
+ didPresent: EventEmitter<void>;
88
+ /**
89
+ * Emitted before the picker has presented.
90
+ */
91
+ willPresent: EventEmitter<void>;
92
+ /**
93
+ * Emitted before the picker has dismissed.
94
+ */
95
+ willDismiss: EventEmitter<OverlayEventDetail>;
96
+ /**
97
+ * Emitted after the picker has dismissed.
98
+ */
99
+ didDismiss: EventEmitter<OverlayEventDetail>;
30
100
  /**
31
- * If we are no longer focused
32
- * on a picker column, then we should
33
- * exit input mode. An exception is made
34
- * for the input in the picker since having
35
- * that focused means we are still in input mode.
101
+ * Emitted after the picker has presented.
102
+ * Shorthand for ionPickerWillDismiss.
36
103
  */
37
- private onFocusOut;
104
+ didPresentShorthand: EventEmitter<void>;
38
105
  /**
39
- * When picker columns receive focus
40
- * the parent picker needs to determine
41
- * whether to enter/exit input mode.
106
+ * Emitted before the picker has presented.
107
+ * Shorthand for ionPickerWillPresent.
42
108
  */
43
- private onFocusIn;
109
+ willPresentShorthand: EventEmitter<void>;
44
110
  /**
45
- * On click we need to run an actionOnClick
46
- * function that has been set in onPointerDown
47
- * so that we enter/exit input mode correctly.
111
+ * Emitted before the picker has dismissed.
112
+ * Shorthand for ionPickerWillDismiss.
48
113
  */
49
- private onClick;
114
+ willDismissShorthand: EventEmitter<OverlayEventDetail>;
50
115
  /**
51
- * Clicking a column also focuses the column on
52
- * certain browsers, so we use onPointerDown
53
- * to tell the onFocusIn function that users
54
- * are trying to click the column rather than
55
- * focus the column using the keyboard. When the
56
- * user completes the click, the onClick function
57
- * runs and runs the actionOnClick callback.
116
+ * Emitted after the picker has dismissed.
117
+ * Shorthand for ionPickerDidDismiss.
58
118
  */
59
- private onPointerDown;
119
+ didDismissShorthand: EventEmitter<OverlayEventDetail>;
120
+ connectedCallback(): void;
121
+ disconnectedCallback(): void;
122
+ componentWillLoad(): void;
123
+ componentDidLoad(): void;
60
124
  /**
61
- * Enters input mode to allow
62
- * for text entry of numeric values.
63
- * If on mobile, we focus a hidden input
64
- * field so that the on screen keyboard
65
- * is brought up. When tabbing using a
66
- * keyboard, picker columns receive an outline
67
- * to indicate they are focused. As a result,
68
- * we should not focus the hidden input as it
69
- * would cause the outline to go away, preventing
70
- * users from having any visual indication of which
71
- * column is focused.
125
+ * Present the picker overlay after it has been created.
72
126
  */
73
- private enterInputMode;
127
+ present(): Promise<void>;
74
128
  /**
75
- * @internal
76
- * Exits text entry mode for the picker
77
- * This method blurs the hidden input
78
- * and cause the keyboard to dismiss.
129
+ * Dismiss the picker overlay after it has been presented.
130
+ *
131
+ * @param data Any data to emit in the dismiss events.
132
+ * @param role The role of the element that is dismissing the picker.
133
+ * This can be useful in a button handler for determining which button was
134
+ * clicked to dismiss the picker.
135
+ * Some examples include: ``"cancel"`, `"destructive"`, "selected"`, and `"backdrop"`.
136
+ *
137
+ * This is a no-op if the overlay has not been presented yet. If you want
138
+ * to remove an overlay from the DOM that was never presented, use the
139
+ * [remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method.
79
140
  */
80
- exitInputMode(): Promise<void>;
81
- private onKeyPress;
82
- private selectSingleColumn;
141
+ dismiss(data?: any, role?: string): Promise<boolean>;
83
142
  /**
84
- * Searches a list of column items for a particular
85
- * value. This is currently used for numeric values.
86
- * The zeroBehavior can be set to account for leading
87
- * or trailing zeros when looking at the item text.
143
+ * Returns a promise that resolves when the picker did dismiss.
88
144
  */
89
- private searchColumn;
90
- private selectMultiColumn;
145
+ onDidDismiss<T = any>(): Promise<OverlayEventDetail<T>>;
91
146
  /**
92
- * Searches the value of the active column
93
- * to determine which value users are trying
94
- * to select
147
+ * Returns a promise that resolves when the picker will dismiss.
95
148
  */
96
- private onInputChange;
149
+ onWillDismiss<T = any>(): Promise<OverlayEventDetail<T>>;
97
150
  /**
98
- * Emit ionInputModeChange. Picker columns
99
- * listen for this event to determine whether
100
- * or not their column is "active" for text input.
151
+ * Get the column that matches the specified name.
152
+ *
153
+ * @param name The name of the column.
101
154
  */
102
- private emitInputModeChange;
155
+ getColumn(name: string): Promise<PickerColumn | undefined>;
156
+ private buttonClick;
157
+ private callButtonHandler;
158
+ private getSelected;
159
+ private onBackdropTap;
160
+ private dispatchCancelHandler;
103
161
  render(): any;
104
162
  }
@@ -1,106 +1,46 @@
1
1
  import type { ComponentInterface, EventEmitter } from '../../stencil-public-runtime';
2
- import type { Color } from '../../interface';
3
- import type { PickerColumnChangeEventDetail, PickerColumnValue } from './picker-column-interfaces';
2
+ import type { PickerColumn } from '../picker/picker-interface';
4
3
  /**
5
- * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
6
- *
7
- * @slot prefix - Content to show on the left side of the picker options.
8
- * @slot suffix - Content to show on the right side of the picker options.
4
+ * @internal
9
5
  */
10
- export declare class PickerColumn implements ComponentInterface {
11
- private scrollEl?;
12
- private destroyScrollListener?;
13
- private isScrolling;
14
- private scrollEndCallback?;
15
- private isColumnVisible;
16
- private parentEl?;
17
- private canExitInputMode;
18
- isActive: boolean;
19
- el: HTMLIonPickerColumnElement;
20
- /**
21
- * If `true`, the user cannot interact with the picker.
22
- */
23
- disabled: boolean;
24
- /**
25
- * The selected option in the picker.
26
- */
27
- value?: string | number;
28
- /**
29
- * The color to use from your application's color palette.
30
- * Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
31
- * For more information on colors, see [theming](/docs/theming/basics).
32
- */
33
- color?: Color;
34
- /**
35
- * If `true`, tapping the picker will
36
- * reveal a number input keyboard that lets
37
- * the user type in values for each picker
38
- * column. This is useful when working
39
- * with time pickers.
40
- *
41
- * @internal
42
- */
43
- numericInput: boolean;
44
- /**
45
- * Emitted when the value has changed.
46
- */
47
- ionChange: EventEmitter<PickerColumnChangeEventDetail>;
48
- valueChange(): void;
49
- /**
50
- * Only setup scroll listeners
51
- * when the picker is visible, otherwise
52
- * the container will have a scroll
53
- * height of 0px.
54
- */
55
- componentWillLoad(): void;
56
- componentDidRender(): void;
57
- /** @internal */
58
- scrollActiveItemIntoView(smooth?: boolean): Promise<void>;
59
- /**
60
- * Sets the value prop and fires the ionChange event.
61
- * This is used when we need to fire ionChange from
62
- * user-generated events that cannot be caught with normal
63
- * input/change event listeners.
6
+ export declare class PickerColumnCmp implements ComponentInterface {
7
+ private bounceFrom;
8
+ private lastIndex?;
9
+ private minY;
10
+ private maxY;
11
+ private optHeight;
12
+ private rotateFactor;
13
+ private scaleFactor;
14
+ private velocity;
15
+ private y;
16
+ private optsEl?;
17
+ private gesture?;
18
+ private rafId?;
19
+ private tmrId?;
20
+ private noAnimate;
21
+ private colDidChange;
22
+ el: HTMLElement;
23
+ /**
24
+ * Emitted when the selected value has changed
64
25
  * @internal
65
26
  */
66
- setValue(value: PickerColumnValue): Promise<void>;
67
- /**
68
- * Sets focus on the scrollable container within the picker column.
69
- * Use this method instead of the global `pickerColumn.focus()`.
70
- */
71
- setFocus(): Promise<void>;
72
- private centerPickerItemInView;
73
- private setPickerItemActiveState;
74
- /**
75
- * When ionInputModeChange is emitted, each column
76
- * needs to check if it is the one being made available
77
- * for text entry.
78
- */
79
- private inputModeChange;
80
- /**
81
- * Setting isActive will cause a re-render.
82
- * As a result, we do not want to cause the
83
- * re-render mid scroll as this will cause
84
- * the picker column to jump back to
85
- * whatever value was selected at the
86
- * start of the scroll interaction.
87
- */
88
- private setInputModeActive;
89
- /**
90
- * When the column scrolls, the component
91
- * needs to determine which item is centered
92
- * in the view and will emit an ionChange with
93
- * the item object.
94
- */
95
- private initializeScrollListener;
96
- /**
97
- * Tells the parent picker to
98
- * exit text entry mode. This is only called
99
- * when the selected item changes during scroll, so
100
- * we know that the user likely wants to scroll
101
- * instead of type.
102
- */
103
- private exitInputMode;
104
- get activeItem(): HTMLIonPickerColumnOptionElement | undefined;
27
+ ionPickerColChange: EventEmitter<PickerColumn>;
28
+ /** Picker column data */
29
+ col: PickerColumn;
30
+ protected colChanged(): void;
31
+ connectedCallback(): Promise<void>;
32
+ componentDidLoad(): void;
33
+ componentDidUpdate(): void;
34
+ disconnectedCallback(): void;
35
+ private emitColChange;
36
+ private setSelected;
37
+ private update;
38
+ private decelerate;
39
+ private indexForY;
40
+ private onStart;
41
+ private onMove;
42
+ private onEnd;
43
+ private refresh;
44
+ private onDomChange;
105
45
  render(): any;
106
46
  }
@@ -0,0 +1,5 @@
1
+ export interface PickerColumnItem {
2
+ text: string;
3
+ value: string | number;
4
+ disabled?: boolean;
5
+ }
@@ -0,0 +1,102 @@
1
+ import type { ComponentInterface, EventEmitter } from '../../stencil-public-runtime';
2
+ import type { Color } from '../../interface';
3
+ import type { PickerColumnItem } from './picker-column-internal-interfaces';
4
+ /**
5
+ * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
6
+ * @internal
7
+ */
8
+ export declare class PickerColumnInternal implements ComponentInterface {
9
+ private destroyScrollListener?;
10
+ private isScrolling;
11
+ private scrollEndCallback?;
12
+ private isColumnVisible;
13
+ private parentEl?;
14
+ private canExitInputMode;
15
+ isActive: boolean;
16
+ el: HTMLIonPickerColumnInternalElement;
17
+ /**
18
+ * If `true`, the user cannot interact with the picker.
19
+ */
20
+ disabled: boolean;
21
+ /**
22
+ * A list of options to be displayed in the picker
23
+ */
24
+ items: PickerColumnItem[];
25
+ /**
26
+ * The selected option in the picker.
27
+ */
28
+ value?: string | number;
29
+ /**
30
+ * The color to use from your application's color palette.
31
+ * Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
32
+ * For more information on colors, see [theming](/docs/theming/basics).
33
+ */
34
+ color?: Color;
35
+ /**
36
+ * If `true`, tapping the picker will
37
+ * reveal a number input keyboard that lets
38
+ * the user type in values for each picker
39
+ * column. This is useful when working
40
+ * with time pickers.
41
+ *
42
+ * @internal
43
+ */
44
+ numericInput: boolean;
45
+ /**
46
+ * Emitted when the value has changed.
47
+ */
48
+ ionChange: EventEmitter<PickerColumnItem>;
49
+ valueChange(): void;
50
+ /**
51
+ * Only setup scroll listeners
52
+ * when the picker is visible, otherwise
53
+ * the container will have a scroll
54
+ * height of 0px.
55
+ */
56
+ componentWillLoad(): void;
57
+ componentDidRender(): void;
58
+ /** @internal */
59
+ scrollActiveItemIntoView(): Promise<void>;
60
+ /**
61
+ * Sets the value prop and fires the ionChange event.
62
+ * This is used when we need to fire ionChange from
63
+ * user-generated events that cannot be caught with normal
64
+ * input/change event listeners.
65
+ * @internal
66
+ */
67
+ setValue(value?: string | number): Promise<void>;
68
+ private centerPickerItemInView;
69
+ private setPickerItemActiveState;
70
+ /**
71
+ * When ionInputModeChange is emitted, each column
72
+ * needs to check if it is the one being made available
73
+ * for text entry.
74
+ */
75
+ private inputModeChange;
76
+ /**
77
+ * Setting isActive will cause a re-render.
78
+ * As a result, we do not want to cause the
79
+ * re-render mid scroll as this will cause
80
+ * the picker column to jump back to
81
+ * whatever value was selected at the
82
+ * start of the scroll interaction.
83
+ */
84
+ private setInputModeActive;
85
+ /**
86
+ * When the column scrolls, the component
87
+ * needs to determine which item is centered
88
+ * in the view and will emit an ionChange with
89
+ * the item object.
90
+ */
91
+ private initializeScrollListener;
92
+ /**
93
+ * Tells the parent picker to
94
+ * exit text entry mode. This is only called
95
+ * when the selected item changes during scroll, so
96
+ * we know that the user likely wants to scroll
97
+ * instead of type.
98
+ */
99
+ private exitInputMode;
100
+ get activeItem(): HTMLElement | null;
101
+ render(): any;
102
+ }
@@ -0,0 +1,8 @@
1
+ export interface PickerInternalChangeEventDetail {
2
+ useInputMode: boolean;
3
+ inputModeColumn?: HTMLIonPickerColumnInternalElement;
4
+ }
5
+ export interface PickerInternalCustomEvent extends CustomEvent {
6
+ target: HTMLIonPickerInternalElement;
7
+ detail: PickerInternalChangeEventDetail;
8
+ }
@@ -0,0 +1,102 @@
1
+ import type { ComponentInterface, EventEmitter } from '../../stencil-public-runtime';
2
+ import type { PickerInternalChangeEventDetail } from './picker-internal-interfaces';
3
+ /**
4
+ * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
5
+ * @internal
6
+ */
7
+ export declare class PickerInternal implements ComponentInterface {
8
+ private inputEl?;
9
+ private useInputMode;
10
+ private inputModeColumn?;
11
+ private highlightEl?;
12
+ private actionOnClick?;
13
+ private destroyKeypressListener?;
14
+ private singleColumnSearchTimeout?;
15
+ el: HTMLIonPickerInternalElement;
16
+ ionInputModeChange: EventEmitter<PickerInternalChangeEventDetail>;
17
+ /**
18
+ * When the picker is interacted with
19
+ * we need to prevent touchstart so other
20
+ * gestures do not fire. For example,
21
+ * scrolling on the wheel picker
22
+ * in ion-datetime should not cause
23
+ * a card modal to swipe to close.
24
+ */
25
+ preventTouchStartPropagation(ev: TouchEvent): void;
26
+ componentWillLoad(): void;
27
+ private isInHighlightBounds;
28
+ /**
29
+ * If we are no longer focused
30
+ * on a picker column, then we should
31
+ * exit input mode. An exception is made
32
+ * for the input in the picker since having
33
+ * that focused means we are still in input mode.
34
+ */
35
+ private onFocusOut;
36
+ /**
37
+ * When picker columns receive focus
38
+ * the parent picker needs to determine
39
+ * whether to enter/exit input mode.
40
+ */
41
+ private onFocusIn;
42
+ /**
43
+ * On click we need to run an actionOnClick
44
+ * function that has been set in onPointerDown
45
+ * so that we enter/exit input mode correctly.
46
+ */
47
+ private onClick;
48
+ /**
49
+ * Clicking a column also focuses the column on
50
+ * certain browsers, so we use onPointerDown
51
+ * to tell the onFocusIn function that users
52
+ * are trying to click the column rather than
53
+ * focus the column using the keyboard. When the
54
+ * user completes the click, the onClick function
55
+ * runs and runs the actionOnClick callback.
56
+ */
57
+ private onPointerDown;
58
+ /**
59
+ * Enters input mode to allow
60
+ * for text entry of numeric values.
61
+ * If on mobile, we focus a hidden input
62
+ * field so that the on screen keyboard
63
+ * is brought up. When tabbing using a
64
+ * keyboard, picker columns receive an outline
65
+ * to indicate they are focused. As a result,
66
+ * we should not focus the hidden input as it
67
+ * would cause the outline to go away, preventing
68
+ * users from having any visual indication of which
69
+ * column is focused.
70
+ */
71
+ private enterInputMode;
72
+ /**
73
+ * @internal
74
+ * Exits text entry mode for the picker
75
+ * This method blurs the hidden input
76
+ * and cause the keyboard to dismiss.
77
+ */
78
+ exitInputMode(): Promise<void>;
79
+ private onKeyPress;
80
+ private selectSingleColumn;
81
+ /**
82
+ * Searches a list of column items for a particular
83
+ * value. This is currently used for numeric values.
84
+ * The zeroBehavior can be set to account for leading
85
+ * or trailing zeros when looking at the item text.
86
+ */
87
+ private searchColumn;
88
+ private selectMultiColumn;
89
+ /**
90
+ * Searches the value of the active column
91
+ * to determine which value users are trying
92
+ * to select
93
+ */
94
+ private onInputChange;
95
+ /**
96
+ * Emit ionInputModeChange. Picker columns
97
+ * listen for this event to determine whether
98
+ * or not their column is "active" for text input.
99
+ */
100
+ private emitInputModeChange;
101
+ render(): any;
102
+ }
@@ -271,6 +271,10 @@ export declare class Popover implements ComponentInterface, PopoverInterface {
271
271
  * @param role The role of the element that is dismissing the popover. For example, 'cancel' or 'backdrop'.
272
272
  * @param dismissParentPopover If `true`, dismissing this popover will also dismiss
273
273
  * a parent popover if this popover is nested. Defaults to `true`.
274
+ *
275
+ * This is a no-op if the overlay has not been presented yet. If you want
276
+ * to remove an overlay from the DOM that was never presented, use the
277
+ * [remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method.
274
278
  */
275
279
  dismiss(data?: any, role?: string, dismissParentPopover?: boolean): Promise<boolean>;
276
280
  /**
@@ -28,22 +28,10 @@ export declare class SplitPane implements ComponentInterface {
28
28
  visible: boolean;
29
29
  }>;
30
30
  visibleChanged(visible: boolean): void;
31
- /**
32
- * @internal
33
- */
34
- isVisible(): Promise<boolean>;
35
31
  connectedCallback(): Promise<void>;
36
32
  disconnectedCallback(): void;
37
33
  protected updateState(): void;
38
- /**
39
- * Attempt to find the main content
40
- * element inside of the split pane.
41
- * If found, set it as the main node.
42
- *
43
- * We assume that the main node
44
- * is available in the DOM on split
45
- * pane load.
46
- */
47
- private styleMainElement;
34
+ private isPane;
35
+ private styleChildren;
48
36
  render(): any;
49
37
  }