@ionic/core 7.6.2-dev.11702914017.1ae72da5 → 7.6.2-dev.11702924017.193c825c

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 (315) hide show
  1. package/components/action-sheet.js +4 -4
  2. package/components/backdrop.js +0 -12
  3. package/components/button-active.js +1 -1
  4. package/components/button.js +2 -2
  5. package/components/data.js +1 -1
  6. package/components/gesture-controller.js +1 -1
  7. package/components/ion-content.js +1 -1
  8. package/components/ion-datetime.js +40 -64
  9. package/components/ion-picker-column-option.d.ts +11 -0
  10. package/components/ion-picker-column-option.js +9 -0
  11. package/components/ion-picker-column.js +2 -2
  12. package/components/ion-picker-legacy-column.d.ts +11 -0
  13. package/components/ion-picker-legacy-column.js +9 -0
  14. package/components/{ion-picker-internal.d.ts → ion-picker-legacy.d.ts} +4 -4
  15. package/components/ion-picker-legacy.js +309 -0
  16. package/components/ion-picker.js +1 -309
  17. package/components/overlays.js +11 -4
  18. package/components/picker-column-option.js +122 -0
  19. package/components/picker-column.js +351 -322
  20. package/components/picker-column2.js +379 -0
  21. package/components/{picker-internal.js → picker.js} +29 -22
  22. package/dist/cjs/{button-active-962fe442.js → button-active-466dfc8a.js} +2 -2
  23. package/dist/cjs/{data-a5109f09.js → data-e2bf21de.js} +1 -1
  24. package/dist/cjs/{gesture-controller-c40c045a.js → gesture-controller-9436f482.js} +1 -0
  25. package/dist/cjs/{index-d1b59ffa.js → index-ee07ed59.js} +1 -1
  26. package/dist/cjs/index.cjs.js +3 -3
  27. package/dist/cjs/ion-action-sheet.cjs.entry.js +8 -8
  28. package/dist/cjs/ion-alert.cjs.entry.js +4 -4
  29. package/dist/cjs/ion-app_8.cjs.entry.js +2 -2
  30. package/dist/cjs/ion-backdrop.cjs.entry.js +0 -12
  31. package/dist/cjs/ion-button_2.cjs.entry.js +2 -2
  32. package/dist/cjs/ion-datetime-button.cjs.entry.js +1 -1
  33. package/dist/cjs/ion-datetime_3.cjs.entry.js +36 -56
  34. package/dist/cjs/ion-item-option_3.cjs.entry.js +1 -1
  35. package/dist/cjs/ion-loading.cjs.entry.js +2 -1
  36. package/dist/cjs/ion-menu_3.cjs.entry.js +3 -3
  37. package/dist/cjs/ion-modal.cjs.entry.js +3 -3
  38. package/dist/cjs/ion-nav_2.cjs.entry.js +1 -1
  39. package/dist/cjs/ion-picker-column-option.cjs.entry.js +104 -0
  40. package/dist/cjs/{ion-picker-column-internal.cjs.entry.js → ion-picker-column.cjs.entry.js} +104 -87
  41. package/dist/cjs/{ion-picker-internal.cjs.entry.js → ion-picker.cjs.entry.js} +26 -19
  42. package/dist/cjs/ion-popover.cjs.entry.js +2 -1
  43. package/dist/cjs/ion-range.cjs.entry.js +1 -1
  44. package/dist/cjs/ion-refresher_2.cjs.entry.js +3 -3
  45. package/dist/cjs/ion-reorder_2.cjs.entry.js +1 -1
  46. package/dist/cjs/ion-segment_2.cjs.entry.js +1 -1
  47. package/dist/cjs/ion-select_3.cjs.entry.js +2 -1
  48. package/dist/cjs/ion-toast.cjs.entry.js +3 -3
  49. package/dist/cjs/ion-toggle.cjs.entry.js +1 -1
  50. package/dist/cjs/ionic.cjs.js +1 -1
  51. package/dist/cjs/loader.cjs.js +1 -1
  52. package/dist/cjs/{overlays-e77cc023.js → overlays-7773cbe1.js} +11 -4
  53. package/dist/cjs/{swipe-back-2a858bbd.js → swipe-back-b8f2330b.js} +2 -2
  54. package/dist/collection/collection-manifest.json +7 -6
  55. package/dist/collection/components/action-sheet/action-sheet.ios.css +9 -2
  56. package/dist/collection/components/action-sheet/action-sheet.js +2 -2
  57. package/dist/collection/components/action-sheet/action-sheet.md.css +9 -2
  58. package/dist/collection/components/action-sheet/test/basic/action-sheet-rendering.e2e.js +20 -0
  59. package/dist/collection/components/backdrop/backdrop.js +0 -12
  60. package/dist/collection/components/button/button.ios.css +1 -1
  61. package/dist/collection/components/button/button.md.css +1 -1
  62. package/dist/collection/components/button/test/wrap/button.e2e.js +12 -24
  63. package/dist/collection/components/content/content.css +0 -4
  64. package/dist/collection/components/datetime/datetime.ios.css +91 -38
  65. package/dist/collection/components/datetime/datetime.js +24 -36
  66. package/dist/collection/components/datetime/datetime.md.css +96 -38
  67. package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +1 -1
  68. package/dist/collection/components/datetime/test/a11y/datetime.spec.js +6 -9
  69. package/dist/collection/components/datetime/test/basic/datetime.e2e.js +10 -0
  70. package/dist/collection/components/datetime/test/datetime.e2e.js +2 -2
  71. package/dist/collection/components/datetime/test/disabled/datetime.spec.js +4 -4
  72. package/dist/collection/components/datetime/test/locale/datetime.e2e.js +2 -2
  73. package/dist/collection/components/datetime/test/minmax/datetime.e2e.js +6 -6
  74. package/dist/collection/components/datetime/test/month-year-picker/datetime.e2e.js +1 -1
  75. package/dist/collection/components/datetime/test/prefer-wheel/datetime.e2e.js +43 -41
  76. package/dist/collection/components/datetime/test/presentation/datetime.e2e.js +1 -1
  77. package/dist/collection/components/datetime/test/readonly/datetime.e2e.js +4 -4
  78. package/dist/collection/components/datetime/test/values/datetime.e2e.js +15 -12
  79. package/dist/collection/components/datetime/utils/data.js +1 -1
  80. package/dist/collection/components/picker/picker.ios.css +112 -211
  81. package/dist/collection/components/picker/picker.js +472 -744
  82. package/dist/collection/components/picker/picker.md.css +108 -198
  83. package/dist/collection/components/{picker-internal/test/a11y/picker-internal.e2e.js → picker/test/a11y/picker.e2e.js} +2 -2
  84. package/dist/collection/components/picker/test/basic/picker.e2e.js +99 -13
  85. package/dist/collection/components/picker/test/custom/picker.e2e.js +85 -0
  86. package/dist/collection/components/{picker-internal/test/keyboard-entry/picker-internal.e2e.js → picker/test/keyboard-entry/picker.e2e.js} +63 -32
  87. package/dist/collection/components/{picker-column-internal/picker-column-internal.md.css → picker-column/picker-column.css} +96 -83
  88. package/dist/collection/components/picker-column/picker-column.js +497 -335
  89. package/dist/collection/components/{picker-column-internal/test/basic/picker-column-internal.e2e.js → picker-column/test/basic/picker-column.e2e.js} +8 -8
  90. package/dist/collection/components/picker-column/test/disabled/picker-column.e2e.js +91 -0
  91. package/dist/collection/components/picker-column/test/slots/picker-column.e2e.js +39 -0
  92. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +87 -0
  93. package/dist/collection/components/picker-column-option/picker-column-option.js +173 -0
  94. package/dist/collection/components/{picker-column-internal/picker-column-internal.ios.css → picker-column-option/picker-column-option.md.css} +6 -53
  95. package/dist/collection/components/picker-column-option/test/a11y/picker-column-option.e2e.js +18 -0
  96. package/dist/collection/components/picker-column-option/test/basic/picker-column-option.e2e.js +37 -0
  97. package/dist/collection/components/picker-column-option/test/picker-column-option.spec.js +29 -0
  98. package/dist/collection/components/{picker-internal/picker-internal.md.css → picker-legacy/picker.ios.css} +207 -98
  99. package/dist/collection/components/picker-legacy/picker.js +817 -0
  100. package/dist/collection/components/{picker-internal/picker-internal.ios.css → picker-legacy/picker.md.css} +192 -100
  101. package/dist/collection/components/picker-legacy/test/basic/picker.e2e.js +25 -0
  102. package/dist/collection/components/{picker → picker-legacy}/test/is-open/picker.e2e.js +4 -4
  103. package/dist/collection/components/{picker → picker-legacy}/test/picker-id.spec.js +5 -5
  104. package/dist/collection/components/{picker → picker-legacy}/test/trigger/picker.e2e.js +1 -1
  105. package/dist/collection/components/picker-legacy-column/picker-column.js +419 -0
  106. package/dist/collection/components/{picker-column → picker-legacy-column}/test/picker-column-aria.spec.js +3 -3
  107. package/dist/collection/components/{picker-column → picker-legacy-column}/test/picker-column-dynamic.spec.js +2 -2
  108. package/dist/collection/components/{picker-column → picker-legacy-column}/test/picker-column.spec.js +2 -2
  109. package/dist/collection/components/{picker-column → picker-legacy-column}/test/standalone/picker-column.e2e.js +3 -3
  110. package/dist/collection/components/refresher/refresher.js +0 -3
  111. package/dist/collection/utils/gesture/button-active.js +1 -1
  112. package/dist/collection/utils/gesture/gesture-controller.js +1 -1
  113. package/dist/collection/utils/overlays.js +11 -4
  114. package/dist/collection/utils/test/overlays/overlays-scroll-blocking.spec.js +65 -0
  115. package/dist/docs.json +485 -69
  116. package/dist/esm/{button-active-308d3edd.js → button-active-2758ff14.js} +2 -2
  117. package/dist/esm/{data-775093f5.js → data-6a31d701.js} +1 -1
  118. package/dist/esm/{gesture-controller-1bf57181.js → gesture-controller-314a54f6.js} +1 -1
  119. package/dist/esm/{index-2cf77112.js → index-39782642.js} +2 -2
  120. package/dist/esm/index.js +3 -3
  121. package/dist/esm/ion-action-sheet.entry.js +8 -8
  122. package/dist/esm/ion-alert.entry.js +4 -4
  123. package/dist/esm/ion-app_8.entry.js +2 -2
  124. package/dist/esm/ion-backdrop.entry.js +0 -12
  125. package/dist/esm/ion-button_2.entry.js +2 -2
  126. package/dist/esm/ion-datetime-button.entry.js +1 -1
  127. package/dist/esm/ion-datetime_3.entry.js +35 -55
  128. package/dist/esm/ion-item-option_3.entry.js +1 -1
  129. package/dist/esm/ion-loading.entry.js +2 -1
  130. package/dist/esm/ion-menu_3.entry.js +3 -3
  131. package/dist/esm/ion-modal.entry.js +3 -3
  132. package/dist/esm/ion-nav_2.entry.js +1 -1
  133. package/dist/esm/ion-picker-column-option.entry.js +100 -0
  134. package/dist/esm/{ion-picker-column-internal.entry.js → ion-picker-column.entry.js} +104 -87
  135. package/dist/esm/{ion-picker-internal.entry.js → ion-picker.entry.js} +26 -19
  136. package/dist/esm/ion-popover.entry.js +2 -1
  137. package/dist/esm/ion-range.entry.js +1 -1
  138. package/dist/esm/ion-refresher_2.entry.js +3 -3
  139. package/dist/esm/ion-reorder_2.entry.js +1 -1
  140. package/dist/esm/ion-segment_2.entry.js +1 -1
  141. package/dist/esm/ion-select_3.entry.js +2 -1
  142. package/dist/esm/ion-toast.entry.js +3 -3
  143. package/dist/esm/ion-toggle.entry.js +1 -1
  144. package/dist/esm/ionic.js +1 -1
  145. package/dist/esm/loader.js +1 -1
  146. package/dist/esm/{overlays-b33f6bca.js → overlays-94dac1cb.js} +11 -4
  147. package/dist/esm/{swipe-back-a6f386fc.js → swipe-back-a8ca7f93.js} +2 -2
  148. package/dist/esm-es5/button-active-2758ff14.js +4 -0
  149. package/dist/esm-es5/{gesture-controller-1bf57181.js → gesture-controller-314a54f6.js} +1 -1
  150. package/dist/esm-es5/{index-2cf77112.js → index-39782642.js} +1 -1
  151. package/dist/esm-es5/index.js +1 -1
  152. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  153. package/dist/esm-es5/ion-alert.entry.js +1 -1
  154. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  155. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  156. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  157. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  158. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  159. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  160. package/dist/esm-es5/ion-loading.entry.js +1 -1
  161. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  162. package/dist/esm-es5/ion-modal.entry.js +1 -1
  163. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  164. package/dist/esm-es5/ion-picker-column-option.entry.js +4 -0
  165. package/dist/esm-es5/ion-picker-column.entry.js +4 -0
  166. package/dist/esm-es5/ion-picker.entry.js +4 -0
  167. package/dist/esm-es5/ion-popover.entry.js +1 -1
  168. package/dist/esm-es5/ion-range.entry.js +1 -1
  169. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  170. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  171. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  172. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  173. package/dist/esm-es5/ion-toast.entry.js +1 -1
  174. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  175. package/dist/esm-es5/ionic.js +1 -1
  176. package/dist/esm-es5/loader.js +1 -1
  177. package/dist/esm-es5/overlays-94dac1cb.js +4 -0
  178. package/dist/esm-es5/swipe-back-a8ca7f93.js +4 -0
  179. package/dist/html.html-data.json +152 -13
  180. package/dist/ionic/index.esm.js +1 -1
  181. package/dist/ionic/ionic.esm.js +1 -1
  182. package/dist/ionic/{p-96d4814f.system.entry.js → p-0e908476.system.entry.js} +1 -1
  183. package/dist/ionic/{p-11786dc7.entry.js → p-10339dcc.entry.js} +1 -1
  184. package/dist/ionic/{p-f2bfd3d7.entry.js → p-13d4dfe7.entry.js} +1 -1
  185. package/dist/ionic/p-19d9ceb8.system.js +1 -1
  186. package/dist/ionic/{p-afa9f205.system.js → p-1ab2642a.system.js} +1 -1
  187. package/dist/ionic/{p-11a3973f.entry.js → p-1b14f0f8.entry.js} +1 -1
  188. package/dist/ionic/{p-c5acfeb1.entry.js → p-20755eb0.entry.js} +1 -1
  189. package/dist/ionic/{p-c7c8429a.system.js → p-20d469d0.system.js} +1 -1
  190. package/dist/ionic/{p-6b0ce9b4.system.entry.js → p-25312768.system.entry.js} +1 -1
  191. package/dist/ionic/p-26ff1180.entry.js +4 -0
  192. package/dist/ionic/p-2f449cdf.system.entry.js +4 -0
  193. package/dist/ionic/p-3717e641.system.entry.js +4 -0
  194. package/dist/ionic/{p-745e3339.system.entry.js → p-3af5faf8.system.entry.js} +1 -1
  195. package/dist/ionic/{p-dc71e4ef.system.entry.js → p-3b434dee.system.entry.js} +1 -1
  196. package/dist/ionic/{p-c1701827.entry.js → p-3dc1b0f9.entry.js} +1 -1
  197. package/dist/ionic/{p-31b2326e.system.js → p-3e1e14d9.system.js} +1 -1
  198. package/dist/ionic/{p-a42ef163.system.entry.js → p-4793c14c.system.entry.js} +1 -1
  199. package/dist/ionic/p-51abefb7.system.js +4 -0
  200. package/dist/ionic/{p-10ec9af7.system.entry.js → p-5ff211d0.system.entry.js} +1 -1
  201. package/dist/ionic/{p-1b27ac67.entry.js → p-642ac927.entry.js} +1 -1
  202. package/dist/ionic/{p-a821750c.system.entry.js → p-6e4c7340.system.entry.js} +1 -1
  203. package/dist/ionic/p-71483cbb.entry.js +4 -0
  204. package/dist/ionic/p-73fbf18d.entry.js +4 -0
  205. package/dist/ionic/p-75a3e35b.entry.js +4 -0
  206. package/dist/ionic/p-77d78f68.system.entry.js +4 -0
  207. package/dist/ionic/p-7c0d778d.system.js +4 -0
  208. package/dist/ionic/p-80ad9792.system.js +4 -0
  209. package/dist/ionic/p-85a67421.system.entry.js +4 -0
  210. package/dist/ionic/p-8ad6d643.entry.js +4 -0
  211. package/dist/ionic/{p-f5d2dc9b.js → p-8ededb41.js} +1 -1
  212. package/dist/ionic/p-9164a09d.entry.js +4 -0
  213. package/dist/ionic/{p-b964aba3.entry.js → p-92bfb607.entry.js} +1 -1
  214. package/dist/ionic/{p-9fda6824.system.entry.js → p-964dcdb2.system.entry.js} +1 -1
  215. package/dist/ionic/{p-bb3615f7.js → p-9b97df10.js} +1 -1
  216. package/dist/ionic/p-a1bd098f.system.entry.js +4 -0
  217. package/dist/ionic/p-a41eaff2.system.entry.js +4 -0
  218. package/dist/ionic/p-a60a1ce5.js +4 -0
  219. package/dist/ionic/{p-2a583966.entry.js → p-b2b5d761.entry.js} +1 -1
  220. package/dist/ionic/{p-767f1a92.entry.js → p-ba5d9e27.entry.js} +1 -1
  221. package/dist/ionic/{p-3e8d5e53.entry.js → p-bb3fd397.entry.js} +1 -1
  222. package/dist/ionic/{p-a3ca2e64.entry.js → p-bec6ae40.entry.js} +1 -1
  223. package/dist/ionic/{p-2df97906.system.entry.js → p-beed2450.system.entry.js} +1 -1
  224. package/dist/ionic/p-c001b24f.entry.js +4 -0
  225. package/dist/ionic/{p-2894d5f6.entry.js → p-c01803db.entry.js} +1 -1
  226. package/dist/ionic/p-c19bf524.entry.js +4 -0
  227. package/dist/ionic/p-c6176849.system.entry.js +4 -0
  228. package/dist/ionic/p-cf350317.entry.js +4 -0
  229. package/dist/ionic/{p-28740823.system.entry.js → p-d2634efe.system.entry.js} +1 -1
  230. package/dist/ionic/p-d3525765.js +4 -0
  231. package/dist/ionic/{p-ddd48faf.system.entry.js → p-db05ecb6.system.entry.js} +1 -1
  232. package/dist/ionic/p-dc63dccb.system.entry.js +4 -0
  233. package/dist/ionic/{p-22827063.system.entry.js → p-e2737fef.system.entry.js} +1 -1
  234. package/dist/ionic/{p-aee39e06.entry.js → p-ed8402d6.entry.js} +1 -1
  235. package/dist/ionic/p-f0717d98.js +4 -0
  236. package/dist/ionic/p-f0dea903.system.entry.js +4 -0
  237. package/dist/ionic/p-f60807dd.system.entry.js +4 -0
  238. package/dist/ionic/{p-06abe918.system.entry.js → p-f6cae0b2.system.entry.js} +1 -1
  239. package/dist/ionic/p-f8c5008f.entry.js +4 -0
  240. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +1 -0
  241. package/dist/types/components/backdrop/backdrop.d.ts +0 -3
  242. package/dist/types/components/datetime/datetime.d.ts +0 -1
  243. package/dist/types/components/datetime/utils/data.d.ts +11 -7
  244. package/dist/types/components/menu/menu.d.ts +1 -1
  245. package/dist/types/components/picker/picker-interfaces.d.ts +8 -0
  246. package/dist/types/components/picker/picker.d.ts +75 -129
  247. package/dist/types/components/picker-column/picker-column-interfaces.d.ts +4 -0
  248. package/dist/types/components/picker-column/picker-column.d.ts +99 -39
  249. package/dist/types/components/picker-column-option/picker-column-option.d.ts +66 -0
  250. package/dist/types/components/picker-legacy/picker.d.ts +158 -0
  251. package/dist/types/components/picker-legacy-column/picker-column.d.ts +46 -0
  252. package/dist/types/components/refresher/refresher.d.ts +0 -3
  253. package/dist/types/components.d.ts +154 -130
  254. package/dist/types/interface.d.ts +1 -1
  255. package/dist/types/utils/config.d.ts +2 -2
  256. package/dist/types/utils/gesture/gesture-controller.d.ts +1 -0
  257. package/dist/types/utils/overlays.d.ts +5 -2
  258. package/hydrate/index.js +1500 -1402
  259. package/package.json +1 -1
  260. package/components/ion-picker-column-internal.d.ts +0 -11
  261. package/components/ion-picker-column-internal.js +0 -9
  262. package/components/ion-picker-internal.js +0 -9
  263. package/components/picker-column-internal.js +0 -390
  264. package/dist/collection/components/picker-column-internal/picker-column-internal.js +0 -565
  265. package/dist/collection/components/picker-column-internal/test/disabled/picker-column-internal.e2e.js +0 -162
  266. package/dist/collection/components/picker-internal/picker-internal.js +0 -544
  267. package/dist/collection/components/picker-internal/test/basic/picker-internal.e2e.js +0 -118
  268. package/dist/esm-es5/button-active-308d3edd.js +0 -4
  269. package/dist/esm-es5/ion-picker-column-internal.entry.js +0 -4
  270. package/dist/esm-es5/ion-picker-internal.entry.js +0 -4
  271. package/dist/esm-es5/overlays-b33f6bca.js +0 -4
  272. package/dist/esm-es5/swipe-back-a6f386fc.js +0 -4
  273. package/dist/ionic/p-0235067a.js +0 -4
  274. package/dist/ionic/p-12a62500.entry.js +0 -4
  275. package/dist/ionic/p-1c249831.entry.js +0 -4
  276. package/dist/ionic/p-35ce400e.system.js +0 -4
  277. package/dist/ionic/p-3671f1b9.system.js +0 -4
  278. package/dist/ionic/p-47bb15a1.entry.js +0 -4
  279. package/dist/ionic/p-4d145435.entry.js +0 -4
  280. package/dist/ionic/p-507ddbfe.system.entry.js +0 -4
  281. package/dist/ionic/p-648ad047.system.entry.js +0 -4
  282. package/dist/ionic/p-6a6477b2.js +0 -4
  283. package/dist/ionic/p-6ab03751.js +0 -4
  284. package/dist/ionic/p-6c277fa2.system.entry.js +0 -4
  285. package/dist/ionic/p-6fba0ce1.system.entry.js +0 -4
  286. package/dist/ionic/p-7dc892f8.entry.js +0 -4
  287. package/dist/ionic/p-85f48531.entry.js +0 -4
  288. package/dist/ionic/p-8f301ac5.system.entry.js +0 -4
  289. package/dist/ionic/p-932f2259.system.entry.js +0 -4
  290. package/dist/ionic/p-b1f29949.system.entry.js +0 -4
  291. package/dist/ionic/p-b7a2ffc9.system.entry.js +0 -4
  292. package/dist/ionic/p-cd1b920b.entry.js +0 -4
  293. package/dist/ionic/p-da5e2652.entry.js +0 -4
  294. package/dist/ionic/p-ec652bc0.system.entry.js +0 -4
  295. package/dist/ionic/p-f6e9c227.system.js +0 -4
  296. package/dist/ionic/p-f894e0ad.entry.js +0 -4
  297. package/dist/types/components/picker-column-internal/picker-column-internal-interfaces.d.ts +0 -5
  298. package/dist/types/components/picker-column-internal/picker-column-internal.d.ts +0 -102
  299. package/dist/types/components/picker-internal/picker-internal-interfaces.d.ts +0 -8
  300. package/dist/types/components/picker-internal/picker-internal.d.ts +0 -102
  301. /package/dist/collection/components/{picker-internal/picker-internal-interfaces.js → picker/picker-interfaces.js} +0 -0
  302. /package/dist/collection/components/{picker-column-internal/picker-column-internal-interfaces.js → picker-column/picker-column-interfaces.js} +0 -0
  303. /package/dist/collection/components/{picker → picker-legacy}/animations/ios.enter.js +0 -0
  304. /package/dist/collection/components/{picker → picker-legacy}/animations/ios.leave.js +0 -0
  305. /package/dist/collection/components/{picker → picker-legacy}/picker-interface.js +0 -0
  306. /package/dist/collection/components/{picker-column → picker-legacy-column}/picker-column.ios.css +0 -0
  307. /package/dist/collection/components/{picker-column → picker-legacy-column}/picker-column.md.css +0 -0
  308. /package/dist/collection/components/{picker-column → picker-legacy-column}/test/test.utils.js +0 -0
  309. /package/dist/esm-es5/{data-775093f5.js → data-6a31d701.js} +0 -0
  310. /package/dist/ionic/{p-87bb3735.system.js → p-7ff4359e.system.js} +0 -0
  311. /package/dist/ionic/{p-18cae04f.js → p-a64accf5.js} +0 -0
  312. /package/dist/types/components/{picker → picker-legacy}/animations/ios.enter.d.ts +0 -0
  313. /package/dist/types/components/{picker → picker-legacy}/animations/ios.leave.d.ts +0 -0
  314. /package/dist/types/components/{picker → picker-legacy}/picker-interface.d.ts +0 -0
  315. /package/dist/types/components/{picker-column → picker-legacy-column}/test/test.utils.d.ts +0 -0
@@ -54,61 +54,61 @@
54
54
  * }
55
55
  */
56
56
  :host {
57
- display: flex;
58
- position: relative;
59
- align-items: center;
60
- justify-content: center;
61
- width: 100%;
62
- height: 200px;
63
57
  /**
64
- * Picker columns should display
65
- * in the order in which developers
66
- * added them and should ignore
67
- * LTR vs RTL directions.
58
+ * @prop --background: Background of the picker
59
+ * @prop --background-rgb: Background of the picker in rgb format
60
+ *
61
+ * @prop --border-radius: Border radius of the picker
62
+ * @prop --border-color: Border color of the picker
63
+ * @prop --border-width: Border width of the picker
64
+ * @prop --border-style: Border style of the picker
65
+ *
66
+ * @prop --min-width: Minimum width of the picker
67
+ * @prop --width: Width of the picker
68
+ * @prop --max-width: Maximum width of the picker
69
+ *
70
+ * @prop --min-height: Minimum height of the picker
71
+ * @prop --height: Height of the picker
72
+ * @prop --max-height: Maximum height of the picker
73
+ *
74
+ * @prop --backdrop-opacity: Opacity of the backdrop
68
75
  */
69
- direction: ltr;
70
- /**
71
- * This is required otherwise the
72
- * highlight will appear behind
73
- * the picker when used inline.
74
- */
75
- z-index: 0;
76
- }
77
-
78
- :host .picker-before,
79
- :host .picker-after {
76
+ --border-radius: 0;
77
+ --border-style: solid;
78
+ --min-width: auto;
79
+ --width: 100%;
80
+ --max-width: 500px;
81
+ --min-height: auto;
82
+ --max-height: auto;
83
+ -moz-osx-font-smoothing: grayscale;
84
+ -webkit-font-smoothing: antialiased;
85
+ top: 0;
86
+ display: block;
80
87
  position: absolute;
81
88
  width: 100%;
82
- /**
83
- * The transform and z-index
84
- * are needed for WebKit otherwise
85
- * the fade will appear underneath the picker.
86
- */
87
- transform: translateZ(0);
88
- z-index: 1;
89
- pointer-events: none;
90
- }
91
-
92
- :host .picker-before {
93
- top: 0;
94
- height: 83px;
89
+ height: 100%;
90
+ outline: none;
91
+ font-family: var(--ion-font-family, inherit);
92
+ contain: strict;
93
+ user-select: none;
94
+ z-index: 1001;
95
95
  }
96
96
  @supports (inset-inline-start: 0) {
97
- :host .picker-before {
97
+ :host {
98
98
  inset-inline-start: 0;
99
99
  }
100
100
  }
101
101
  @supports not (inset-inline-start: 0) {
102
- :host .picker-before {
102
+ :host {
103
103
  left: 0;
104
104
  }
105
- :host-context([dir=rtl]) .picker-before {
105
+ :host-context([dir=rtl]) {
106
106
  left: unset;
107
107
  right: unset;
108
108
  right: 0;
109
109
  }
110
110
  @supports selector(:dir(rtl)) {
111
- :host(:dir(rtl)) .picker-before {
111
+ :host(:dir(rtl)) {
112
112
  left: unset;
113
113
  right: unset;
114
114
  right: 0;
@@ -116,82 +116,69 @@
116
116
  }
117
117
  }
118
118
 
119
- :host .picker-after {
120
- top: 116px;
121
- height: 84px;
122
- }
123
- @supports (inset-inline-start: 0) {
124
- :host .picker-after {
125
- inset-inline-start: 0;
126
- }
127
- }
128
- @supports not (inset-inline-start: 0) {
129
- :host .picker-after {
130
- left: 0;
131
- }
132
- :host-context([dir=rtl]) .picker-after {
133
- left: unset;
134
- right: unset;
135
- right: 0;
136
- }
137
- @supports selector(:dir(rtl)) {
138
- :host(:dir(rtl)) .picker-after {
139
- left: unset;
140
- right: unset;
141
- right: 0;
142
- }
143
- }
119
+ :host(.overlay-hidden) {
120
+ display: none;
144
121
  }
145
122
 
146
- :host .picker-highlight {
147
- border-radius: 8px;
123
+ .picker-wrapper {
124
+ border-radius: var(--border-radius);
148
125
  left: 0;
149
126
  right: 0;
150
- top: 50%;
151
127
  bottom: 0;
152
128
  -webkit-margin-start: auto;
153
129
  margin-inline-start: auto;
154
130
  -webkit-margin-end: auto;
155
131
  margin-inline-end: auto;
156
- margin-top: 0;
157
- margin-bottom: 0;
132
+ margin-top: auto;
133
+ margin-bottom: auto;
134
+ transform: translate3d(0, 100%, 0);
135
+ display: flex;
158
136
  position: absolute;
159
- width: calc(100% - 16px);
160
- height: 34px;
161
- transform: translateY(-50%);
162
- background: var(--wheel-highlight-background);
163
- z-index: -1;
137
+ flex-direction: column;
138
+ width: var(--width);
139
+ min-width: var(--min-width);
140
+ max-width: var(--max-width);
141
+ height: var(--height);
142
+ min-height: var(--min-height);
143
+ max-height: var(--max-height);
144
+ border-width: var(--border-width);
145
+ border-style: var(--border-style);
146
+ border-color: var(--border-color);
147
+ background: var(--background);
148
+ contain: strict;
149
+ overflow: hidden;
150
+ z-index: 10;
164
151
  }
165
152
 
166
- :host input {
167
- position: absolute;
168
- top: 0;
169
- left: 0;
170
- right: 0;
171
- bottom: 0;
153
+ .picker-toolbar {
172
154
  width: 100%;
173
- height: 100%;
174
- margin: 0;
175
- padding: 0;
155
+ background: transparent;
156
+ contain: strict;
157
+ z-index: 1;
158
+ }
159
+
160
+ .picker-button {
176
161
  border: 0;
177
- outline: 0;
178
- clip: rect(0 0 0 0);
179
- opacity: 0;
180
- overflow: hidden;
181
- -webkit-appearance: none;
182
- -moz-appearance: none;
162
+ font-family: inherit;
183
163
  }
184
164
 
185
- :host ::slotted(ion-picker-column-internal:first-of-type) {
186
- text-align: start;
165
+ .picker-button:active, .picker-button:focus {
166
+ outline: none;
187
167
  }
188
168
 
189
- :host ::slotted(ion-picker-column-internal:last-of-type) {
190
- text-align: end;
169
+ .picker-columns {
170
+ display: flex;
171
+ position: relative;
172
+ justify-content: center;
173
+ margin-bottom: var(--ion-safe-area-bottom, 0);
174
+ contain: strict;
175
+ overflow: hidden;
191
176
  }
192
177
 
193
- :host ::slotted(ion-picker-column-internal:only-child) {
194
- text-align: center;
178
+ .picker-above-highlight,
179
+ .picker-below-highlight {
180
+ display: none;
181
+ pointer-events: none;
195
182
  }
196
183
 
197
184
  /**
@@ -249,14 +236,119 @@
249
236
  * }
250
237
  * }
251
238
  */
252
- :host .picker-before {
253
- background: linear-gradient(to bottom, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8) 100%);
239
+ :host {
240
+ --background: var(--ion-background-color, #fff);
241
+ --border-width: 0.55px 0 0;
242
+ --border-color: var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-150, rgba(0, 0, 0, 0.13))));
243
+ --height: 260px;
244
+ --backdrop-opacity: var(--ion-backdrop-opacity, 0.26);
245
+ color: var(--ion-item-color, var(--ion-text-color, #000));
254
246
  }
255
247
 
256
- :host .picker-after {
257
- background: linear-gradient(to top, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8) 100%);
248
+ .picker-toolbar {
249
+ display: flex;
250
+ justify-content: flex-end;
251
+ height: 44px;
258
252
  }
259
253
 
260
- :host .picker-highlight {
261
- background: var(--wheel-highlight-background, var(--ion-color-step-150, #eeeeef));
254
+ .picker-button,
255
+ .picker-button.ion-activated {
256
+ margin-left: 0;
257
+ margin-right: 0;
258
+ margin-top: 0;
259
+ margin-bottom: 0;
260
+ -webkit-padding-start: 1.1em;
261
+ padding-inline-start: 1.1em;
262
+ -webkit-padding-end: 1.1em;
263
+ padding-inline-end: 1.1em;
264
+ padding-top: 0;
265
+ padding-bottom: 0;
266
+ height: 44px;
267
+ background: transparent;
268
+ color: var(--ion-color-primary, #3880ff);
269
+ font-size: 14px;
270
+ font-weight: 500;
271
+ text-transform: uppercase;
272
+ box-shadow: none;
273
+ }
274
+
275
+ .picker-columns {
276
+ height: 216px;
277
+ perspective: 1800px;
278
+ }
279
+
280
+ .picker-above-highlight {
281
+ top: 0;
282
+ transform: translate3d(0, 0, 90px);
283
+ position: absolute;
284
+ width: 100%;
285
+ height: 81px;
286
+ border-bottom: 1px solid var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-150, rgba(0, 0, 0, 0.13))));
287
+ background: linear-gradient(to bottom, var(--ion-background-color, #fff) 20%, rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8) 100%);
288
+ z-index: 10;
289
+ }
290
+ @supports (inset-inline-start: 0) {
291
+ .picker-above-highlight {
292
+ inset-inline-start: 0;
293
+ }
294
+ }
295
+ @supports not (inset-inline-start: 0) {
296
+ .picker-above-highlight {
297
+ left: 0;
298
+ }
299
+ :host-context([dir=rtl]) .picker-above-highlight {
300
+ left: unset;
301
+ right: unset;
302
+ right: 0;
303
+ }
304
+ [dir=rtl] .picker-above-highlight {
305
+ left: unset;
306
+ right: unset;
307
+ right: 0;
308
+ }
309
+ @supports selector(:dir(rtl)) {
310
+ .picker-above-highlight:dir(rtl) {
311
+ left: unset;
312
+ right: unset;
313
+ right: 0;
314
+ }
315
+ }
316
+ }
317
+
318
+ .picker-below-highlight {
319
+ top: 115px;
320
+ transform: translate3d(0, 0, 90px);
321
+ position: absolute;
322
+ width: 100%;
323
+ height: 119px;
324
+ border-top: 1px solid var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-150, rgba(0, 0, 0, 0.13))));
325
+ background: linear-gradient(to top, var(--ion-background-color, #fff) 30%, rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8) 100%);
326
+ z-index: 11;
327
+ }
328
+ @supports (inset-inline-start: 0) {
329
+ .picker-below-highlight {
330
+ inset-inline-start: 0;
331
+ }
332
+ }
333
+ @supports not (inset-inline-start: 0) {
334
+ .picker-below-highlight {
335
+ left: 0;
336
+ }
337
+ :host-context([dir=rtl]) .picker-below-highlight {
338
+ left: unset;
339
+ right: unset;
340
+ right: 0;
341
+ }
342
+ [dir=rtl] .picker-below-highlight {
343
+ left: unset;
344
+ right: unset;
345
+ right: 0;
346
+ }
347
+ @supports selector(:dir(rtl)) {
348
+ .picker-below-highlight:dir(rtl) {
349
+ left: unset;
350
+ right: unset;
351
+ right: 0;
352
+ }
353
+ }
262
354
  }
@@ -0,0 +1,25 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ import { expect } from "@playwright/test";
5
+ import { configs, test } from "../../../../utils/test/playwright/index";
6
+ configs().forEach(({ title, screenshot, config }) => {
7
+ test.describe(title('picker: basic'), () => {
8
+ test('should not have visual regressions', async ({ page }) => {
9
+ await page.goto('/src/components/picker-legacy/test/basic', config);
10
+ const didPresent = await page.spyOnEvent('ionPickerDidPresent');
11
+ const didDismiss = await page.spyOnEvent('ionPickerDidDismiss');
12
+ await page.click('#basic');
13
+ await didPresent.next();
14
+ await page.waitForChanges();
15
+ await expect(page).toHaveScreenshot(screenshot(`picker-basic`));
16
+ await page.click('.picker-opt:nth-child(2)');
17
+ await page.click('ion-picker-legacy .save-btn');
18
+ await didDismiss.next();
19
+ await page.click('#basic');
20
+ await didPresent.next();
21
+ await page.waitForChanges();
22
+ await expect(page).toHaveScreenshot(screenshot(`picker-value-selected`));
23
+ });
24
+ });
25
+ });
@@ -9,10 +9,10 @@ import { configs, test } from "../../../../utils/test/playwright/index";
9
9
  configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) => {
10
10
  test.describe(title('picker: isOpen'), () => {
11
11
  test('should open and close the picker', async ({ page }) => {
12
- await page.goto('/src/components/picker/test/is-open', config);
12
+ await page.goto('/src/components/picker-legacy/test/is-open', config);
13
13
  const ionPickerDidPresent = await page.spyOnEvent('ionPickerDidPresent');
14
14
  const ionPickerDidDismiss = await page.spyOnEvent('ionPickerDidDismiss');
15
- const picker = page.locator('ion-picker');
15
+ const picker = page.locator('ion-picker-legacy');
16
16
  await page.click('#default');
17
17
  await ionPickerDidPresent.next();
18
18
  await expect(picker).toBeVisible();
@@ -21,8 +21,8 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
21
21
  await expect(picker).toBeHidden();
22
22
  });
23
23
  test('should open if isOpen is true on load', async ({ page }) => {
24
- await page.setContent('<ion-picker is-open="true"></ion-picker>', config);
25
- await expect(page.locator('ion-picker')).toBeVisible();
24
+ await page.setContent('<ion-picker-legacy is-open="true"></ion-picker-legacy>', config);
25
+ await expect(page.locator('ion-picker-legacy')).toBeVisible();
26
26
  });
27
27
  });
28
28
  });
@@ -6,27 +6,27 @@ import { Picker } from "../picker";
6
6
  it('picker should be assigned an incrementing id', async () => {
7
7
  const page = await newSpecPage({
8
8
  components: [Picker],
9
- html: `<ion-picker is-open="true"></ion-picker>`,
9
+ html: `<ion-picker-legacy is-open="true"></ion-picker-legacy>`,
10
10
  });
11
11
  let picker;
12
- picker = page.body.querySelector('ion-picker');
12
+ picker = page.body.querySelector('ion-picker-legacy');
13
13
  expect(picker).not.toBe(null);
14
14
  expect(picker.getAttribute('id')).toBe('ion-overlay-1');
15
15
  // Remove the picker from the DOM
16
16
  picker.remove();
17
17
  await page.waitForChanges();
18
18
  // Create a new picker to verify the id is incremented
19
- picker = document.createElement('ion-picker');
19
+ picker = document.createElement('ion-picker-legacy');
20
20
  picker.isOpen = true;
21
21
  page.body.appendChild(picker);
22
22
  await page.waitForChanges();
23
- picker = page.body.querySelector('ion-picker');
23
+ picker = page.body.querySelector('ion-picker-legacy');
24
24
  expect(picker.getAttribute('id')).toBe('ion-overlay-2');
25
25
  // Presenting the same picker again should reuse the existing id
26
26
  picker.isOpen = false;
27
27
  await page.waitForChanges();
28
28
  picker.isOpen = true;
29
29
  await page.waitForChanges();
30
- picker = page.body.querySelector('ion-picker');
30
+ picker = page.body.querySelector('ion-picker-legacy');
31
31
  expect(picker.getAttribute('id')).toBe('ion-overlay-2');
32
32
  });
@@ -9,7 +9,7 @@ import { configs, test } from "../../../../utils/test/playwright/index";
9
9
  configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) => {
10
10
  test.describe(title('picker: trigger'), () => {
11
11
  test.beforeEach(async ({ page }) => {
12
- await page.goto('/src/components/picker/test/trigger', config);
12
+ await page.goto('/src/components/picker-legacy/test/trigger', config);
13
13
  });
14
14
  test('should open the picker', async ({ page }) => {
15
15
  const ionPickerDidPresent = await page.spyOnEvent('ionPickerDidPresent');