@ionic/core 7.5.7-dev.11701201960.104b3a1f → 7.5.7-dev.11701203423.1b6a8829

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 (323) hide show
  1. package/components/backdrop.js +12 -0
  2. package/components/data.js +1 -1
  3. package/components/gesture-controller.js +1 -1
  4. package/components/icon.js +14 -23
  5. package/components/index7.js +1 -1
  6. package/components/ion-content.js +1 -1
  7. package/components/ion-datetime.js +61 -28
  8. package/components/ion-picker-column-internal.d.ts +11 -0
  9. package/components/ion-picker-column-internal.js +9 -0
  10. package/components/ion-picker-column.js +2 -2
  11. package/components/{ion-picker-legacy.d.ts → ion-picker-internal.d.ts} +4 -4
  12. package/components/ion-picker-internal.js +9 -0
  13. package/components/ion-picker.js +299 -1
  14. package/components/overlays.js +4 -11
  15. package/components/picker-column-internal.js +390 -0
  16. package/components/picker-column.js +320 -331
  17. package/components/{picker.js → picker-internal.js} +16 -16
  18. package/dist/cjs/{button-active-cd07b55b.js → button-active-af897e0e.js} +1 -1
  19. package/dist/cjs/{data-4845b494.js → data-c8d21093.js} +1 -1
  20. package/dist/cjs/{gesture-controller-d6a3f907.js → gesture-controller-b46721be.js} +0 -1
  21. package/dist/cjs/{index-0f8b33f8.js → index-0ee995e4.js} +1 -1
  22. package/dist/cjs/{index-09471526.js → index-5ea49600.js} +1 -1
  23. package/dist/cjs/index.cjs.js +3 -3
  24. package/dist/cjs/ion-accordion_2.cjs.entry.js +1 -1
  25. package/dist/cjs/ion-action-sheet.cjs.entry.js +4 -4
  26. package/dist/cjs/ion-alert.cjs.entry.js +4 -4
  27. package/dist/cjs/ion-app_8.cjs.entry.js +2 -2
  28. package/dist/cjs/ion-back-button.cjs.entry.js +1 -1
  29. package/dist/cjs/ion-backdrop.cjs.entry.js +12 -0
  30. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +1 -1
  31. package/dist/cjs/ion-button_2.cjs.entry.js +14 -23
  32. package/dist/cjs/ion-datetime-button.cjs.entry.js +1 -1
  33. package/dist/cjs/ion-datetime_3.cjs.entry.js +40 -27
  34. package/dist/cjs/ion-fab_3.cjs.entry.js +1 -1
  35. package/dist/cjs/ion-input.cjs.entry.js +1 -1
  36. package/dist/cjs/ion-item-option_3.cjs.entry.js +1 -1
  37. package/dist/cjs/ion-item_8.cjs.entry.js +1 -1
  38. package/dist/cjs/ion-loading.cjs.entry.js +1 -2
  39. package/dist/cjs/ion-menu_3.cjs.entry.js +4 -4
  40. package/dist/cjs/ion-modal.cjs.entry.js +3 -3
  41. package/dist/cjs/ion-nav_2.cjs.entry.js +1 -1
  42. package/dist/cjs/{ion-picker-column.cjs.entry.js → ion-picker-column-internal.cjs.entry.js} +9 -9
  43. package/dist/cjs/{ion-picker.cjs.entry.js → ion-picker-internal.cjs.entry.js} +13 -13
  44. package/dist/cjs/ion-popover.cjs.entry.js +1 -2
  45. package/dist/cjs/ion-range.cjs.entry.js +1 -1
  46. package/dist/cjs/ion-refresher_2.cjs.entry.js +4 -4
  47. package/dist/cjs/ion-reorder_2.cjs.entry.js +2 -2
  48. package/dist/cjs/ion-searchbar.cjs.entry.js +1 -1
  49. package/dist/cjs/ion-segment_2.cjs.entry.js +1 -1
  50. package/dist/cjs/ion-select_3.cjs.entry.js +2 -3
  51. package/dist/cjs/ion-toast.cjs.entry.js +1 -2
  52. package/dist/cjs/ion-toggle.cjs.entry.js +2 -2
  53. package/dist/cjs/ionic.cjs.js +1 -1
  54. package/dist/cjs/loader.cjs.js +1 -1
  55. package/dist/cjs/{overlays-dbb71984.js → overlays-2ffc5f27.js} +4 -11
  56. package/dist/cjs/{swipe-back-a6dc6e5d.js → swipe-back-d0412fb6.js} +2 -2
  57. package/dist/collection/collection-manifest.json +6 -6
  58. package/dist/collection/components/backdrop/backdrop.js +12 -0
  59. package/dist/collection/components/content/content.css +4 -0
  60. package/dist/collection/components/datetime/datetime.ios.css +25 -84
  61. package/dist/collection/components/datetime/datetime.js +29 -14
  62. package/dist/collection/components/datetime/datetime.md.css +25 -89
  63. package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +1 -1
  64. package/dist/collection/components/datetime/test/a11y/datetime.spec.js +9 -6
  65. package/dist/collection/components/datetime/test/basic/datetime.e2e.js +0 -10
  66. package/dist/collection/components/datetime/test/disabled/datetime.spec.js +4 -4
  67. package/dist/collection/components/datetime/test/minmax/datetime.e2e.js +5 -5
  68. package/dist/collection/components/datetime/test/month-year-picker/datetime.e2e.js +1 -1
  69. package/dist/collection/components/datetime/test/prefer-wheel/datetime.e2e.js +2 -2
  70. package/dist/collection/components/datetime/test/presentation/datetime.e2e.js +1 -1
  71. package/dist/collection/components/datetime/test/readonly/datetime.e2e.js +2 -2
  72. package/dist/collection/components/datetime/test/values/datetime.e2e.js +5 -5
  73. package/dist/collection/components/datetime/utils/data.js +1 -1
  74. package/dist/collection/components/picker/picker.ios.css +205 -100
  75. package/dist/collection/components/picker/picker.js +735 -463
  76. package/dist/collection/components/picker/picker.md.css +194 -98
  77. package/dist/collection/components/picker/test/basic/picker.e2e.js +13 -106
  78. package/dist/collection/components/{picker-legacy → picker}/test/is-open/picker.e2e.js +4 -4
  79. package/dist/collection/components/{picker-legacy → picker}/test/picker-id.spec.js +5 -5
  80. package/dist/collection/components/{picker-legacy → picker}/test/trigger/picker.e2e.js +1 -1
  81. package/dist/collection/components/picker-column/picker-column.ios.css +176 -59
  82. package/dist/collection/components/picker-column/picker-column.js +333 -478
  83. package/dist/collection/components/picker-column/picker-column.md.css +113 -63
  84. package/dist/collection/components/{picker-legacy-column → picker-column}/test/picker-column-aria.spec.js +3 -3
  85. package/dist/collection/components/{picker-legacy-column → picker-column}/test/picker-column-dynamic.spec.js +2 -2
  86. package/dist/collection/components/{picker-legacy-column → picker-column}/test/picker-column.spec.js +2 -2
  87. package/dist/collection/components/{picker-legacy-column → picker-column}/test/standalone/picker-column.e2e.js +3 -3
  88. package/dist/collection/components/picker-column-internal/picker-column-internal.ios.css +138 -0
  89. package/dist/collection/components/picker-column-internal/picker-column-internal.js +565 -0
  90. package/dist/collection/components/{picker-legacy-column/picker-column.md.css → picker-column-internal/picker-column-internal.md.css} +63 -113
  91. package/dist/collection/components/{picker-column/test/basic/picker-column.e2e.js → picker-column-internal/test/basic/picker-column-internal.e2e.js} +7 -7
  92. package/dist/collection/components/{picker-column/test/disabled/picker-column.e2e.js → picker-column-internal/test/disabled/picker-column-internal.e2e.js} +39 -39
  93. package/dist/collection/components/{picker-legacy/picker.md.css → picker-internal/picker-internal.ios.css} +100 -192
  94. package/dist/collection/components/picker-internal/picker-internal.js +544 -0
  95. package/dist/collection/components/{picker-legacy-column/picker-column.ios.css → picker-internal/picker-internal.md.css} +101 -98
  96. package/dist/collection/components/{picker/test/a11y/picker.e2e.js → picker-internal/test/a11y/picker-internal.e2e.js} +2 -2
  97. package/dist/collection/components/picker-internal/test/basic/picker-internal.e2e.js +118 -0
  98. package/dist/collection/components/{picker/test/keyboard-entry/picker.e2e.js → picker-internal/test/keyboard-entry/picker-internal.e2e.js} +20 -20
  99. package/dist/collection/utils/gesture/gesture-controller.js +1 -1
  100. package/dist/collection/utils/overlays.js +4 -11
  101. package/dist/docs.json +40 -322
  102. package/dist/esm/{button-active-5b0516e7.js → button-active-ce5cba4c.js} +1 -1
  103. package/dist/esm/{data-12e24f00.js → data-44d9e816.js} +1 -1
  104. package/dist/esm/{gesture-controller-3723db7c.js → gesture-controller-0fa396c4.js} +1 -1
  105. package/dist/esm/{index-c132c5f1.js → index-d1a56aed.js} +1 -1
  106. package/dist/esm/{index-32cbee52.js → index-ff313b19.js} +2 -2
  107. package/dist/esm/index.js +3 -3
  108. package/dist/esm/ion-accordion_2.entry.js +1 -1
  109. package/dist/esm/ion-action-sheet.entry.js +4 -4
  110. package/dist/esm/ion-alert.entry.js +4 -4
  111. package/dist/esm/ion-app_8.entry.js +2 -2
  112. package/dist/esm/ion-back-button.entry.js +1 -1
  113. package/dist/esm/ion-backdrop.entry.js +12 -0
  114. package/dist/esm/ion-breadcrumb_2.entry.js +1 -1
  115. package/dist/esm/ion-button_2.entry.js +14 -23
  116. package/dist/esm/ion-datetime-button.entry.js +1 -1
  117. package/dist/esm/ion-datetime_3.entry.js +39 -26
  118. package/dist/esm/ion-fab_3.entry.js +1 -1
  119. package/dist/esm/ion-input.entry.js +1 -1
  120. package/dist/esm/ion-item-option_3.entry.js +1 -1
  121. package/dist/esm/ion-item_8.entry.js +1 -1
  122. package/dist/esm/ion-loading.entry.js +1 -2
  123. package/dist/esm/ion-menu_3.entry.js +4 -4
  124. package/dist/esm/ion-modal.entry.js +3 -3
  125. package/dist/esm/ion-nav_2.entry.js +1 -1
  126. package/dist/esm/{ion-picker-column.entry.js → ion-picker-column-internal.entry.js} +9 -9
  127. package/dist/esm/{ion-picker.entry.js → ion-picker-internal.entry.js} +13 -13
  128. package/dist/esm/ion-popover.entry.js +1 -2
  129. package/dist/esm/ion-range.entry.js +1 -1
  130. package/dist/esm/ion-refresher_2.entry.js +4 -4
  131. package/dist/esm/ion-reorder_2.entry.js +2 -2
  132. package/dist/esm/ion-searchbar.entry.js +1 -1
  133. package/dist/esm/ion-segment_2.entry.js +1 -1
  134. package/dist/esm/ion-select_3.entry.js +2 -3
  135. package/dist/esm/ion-toast.entry.js +1 -2
  136. package/dist/esm/ion-toggle.entry.js +2 -2
  137. package/dist/esm/ionic.js +1 -1
  138. package/dist/esm/loader.js +1 -1
  139. package/dist/esm/{overlays-789cd7a7.js → overlays-6c9feb7e.js} +4 -11
  140. package/dist/esm/{swipe-back-cc4c2bcb.js → swipe-back-0f3bfc8e.js} +2 -2
  141. package/dist/esm-es5/{button-active-5b0516e7.js → button-active-ce5cba4c.js} +1 -1
  142. package/dist/esm-es5/{gesture-controller-3723db7c.js → gesture-controller-0fa396c4.js} +1 -1
  143. package/dist/esm-es5/{index-32cbee52.js → index-ff313b19.js} +1 -1
  144. package/dist/esm-es5/index.js +1 -1
  145. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  146. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  147. package/dist/esm-es5/ion-alert.entry.js +1 -1
  148. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  149. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  150. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  151. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  152. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  153. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  154. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  155. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  156. package/dist/esm-es5/ion-input.entry.js +1 -1
  157. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  158. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  159. package/dist/esm-es5/ion-loading.entry.js +1 -1
  160. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  161. package/dist/esm-es5/ion-modal.entry.js +1 -1
  162. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  163. package/dist/esm-es5/ion-picker-column-internal.entry.js +4 -0
  164. package/dist/esm-es5/ion-picker-internal.entry.js +4 -0
  165. package/dist/esm-es5/ion-popover.entry.js +1 -1
  166. package/dist/esm-es5/ion-range.entry.js +1 -1
  167. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  168. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  169. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  170. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  171. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  172. package/dist/esm-es5/ion-toast.entry.js +1 -1
  173. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  174. package/dist/esm-es5/ionic.js +1 -1
  175. package/dist/esm-es5/loader.js +1 -1
  176. package/dist/esm-es5/overlays-6c9feb7e.js +4 -0
  177. package/dist/esm-es5/swipe-back-0f3bfc8e.js +4 -0
  178. package/dist/html.html-data.json +1 -96
  179. package/dist/ionic/index.esm.js +1 -1
  180. package/dist/ionic/ionic.esm.js +1 -1
  181. package/dist/ionic/{p-14aca3fb.entry.js → p-04dca48d.entry.js} +1 -1
  182. package/dist/ionic/{p-a8e68fd9.entry.js → p-0838e6bb.entry.js} +1 -1
  183. package/dist/ionic/{p-a57f223c.system.js → p-09d142b3.system.js} +1 -1
  184. package/dist/ionic/p-0d8e9393.entry.js +4 -0
  185. package/dist/ionic/{p-abacb44b.system.entry.js → p-14923cd7.system.entry.js} +1 -1
  186. package/dist/ionic/p-18e01b30.system.entry.js +4 -0
  187. package/dist/ionic/p-19a7c660.system.entry.js +4 -0
  188. package/dist/ionic/{p-9b5301cc.system.entry.js → p-1cb5f2f8.system.entry.js} +1 -1
  189. package/dist/ionic/p-1e5165db.system.entry.js +4 -0
  190. package/dist/ionic/p-29adc040.entry.js +4 -0
  191. package/dist/ionic/p-29fe18ef.entry.js +4 -0
  192. package/dist/ionic/{p-56224549.entry.js → p-3de79805.entry.js} +1 -1
  193. package/dist/ionic/p-40903d34.system.js +1 -1
  194. package/dist/ionic/{p-664d2b07.system.entry.js → p-42435018.system.entry.js} +1 -1
  195. package/dist/ionic/p-431151f2.entry.js +4 -0
  196. package/dist/ionic/{p-cb62e3fc.system.entry.js → p-4c80afe1.system.entry.js} +1 -1
  197. package/dist/ionic/{p-d3952bd5.system.entry.js → p-4d786d1f.system.entry.js} +1 -1
  198. package/dist/ionic/{p-b6a8588f.entry.js → p-4fa201a7.entry.js} +1 -1
  199. package/dist/ionic/{p-ee800093.entry.js → p-52360c7a.entry.js} +1 -1
  200. package/dist/ionic/p-5bd4e009.entry.js +4 -0
  201. package/dist/ionic/{p-b3e79338.system.entry.js → p-61c30156.system.entry.js} +1 -1
  202. package/dist/ionic/{p-f5a750e4.system.entry.js → p-640efee6.system.entry.js} +1 -1
  203. package/dist/ionic/p-64296b15.entry.js +4 -0
  204. package/dist/ionic/{p-5da0eb3e.system.entry.js → p-6594d76a.system.entry.js} +1 -1
  205. package/dist/ionic/{p-02d8fdba.system.entry.js → p-67e644bd.system.entry.js} +1 -1
  206. package/dist/ionic/{p-3f88eab8.system.entry.js → p-67ed452a.system.entry.js} +1 -1
  207. package/dist/ionic/{p-835e0346.entry.js → p-68166ba6.entry.js} +1 -1
  208. package/dist/ionic/{p-966cf574.system.entry.js → p-6d812360.system.entry.js} +1 -1
  209. package/dist/ionic/{p-a4cda7a8.system.entry.js → p-6e23777e.system.entry.js} +1 -1
  210. package/dist/ionic/{p-2ba9414e.entry.js → p-7176cea3.entry.js} +1 -1
  211. package/dist/ionic/{p-878c7aa5.system.entry.js → p-7b4cd5fc.system.entry.js} +1 -1
  212. package/dist/ionic/{p-4f3e2767.system.entry.js → p-7d7fdaf0.system.entry.js} +1 -1
  213. package/dist/ionic/p-800ef057.js +4 -0
  214. package/dist/ionic/{p-3fb57e1b.system.entry.js → p-8659f9a9.system.entry.js} +1 -1
  215. package/dist/ionic/p-86b2394a.entry.js +4 -0
  216. package/dist/ionic/{p-48d9faa7.entry.js → p-899fb2da.entry.js} +1 -1
  217. package/dist/ionic/{p-baa7cb1e.entry.js → p-8ad82eb3.entry.js} +1 -1
  218. package/dist/ionic/{p-a7e2ac5c.js → p-8b1be026.js} +1 -1
  219. package/dist/ionic/{p-a21b8d05.entry.js → p-8cbf0979.entry.js} +1 -1
  220. package/dist/ionic/{p-477a182e.entry.js → p-8d5a30dd.entry.js} +1 -1
  221. package/dist/ionic/p-8dbdb163.system.js +4 -0
  222. package/dist/ionic/{p-9e6bf9ed.entry.js → p-8e1bded3.entry.js} +1 -1
  223. package/dist/ionic/{p-5ce11143.entry.js → p-965677f1.entry.js} +1 -1
  224. package/dist/ionic/{p-f4cc91f6.entry.js → p-97a96f5f.entry.js} +1 -1
  225. package/dist/ionic/p-97e31c0a.system.js +4 -0
  226. package/dist/ionic/{p-6500b298.system.js → p-9e852ff1.system.js} +1 -1
  227. package/dist/ionic/{p-1e86a71b.entry.js → p-a43603ce.entry.js} +1 -1
  228. package/dist/ionic/{p-c7fd81ba.system.js → p-a936d224.system.js} +1 -1
  229. package/dist/ionic/p-a9c3699b.system.entry.js +4 -0
  230. package/dist/ionic/p-b91fe549.entry.js +4 -0
  231. package/dist/ionic/{p-c1229981.entry.js → p-bd76524d.entry.js} +1 -1
  232. package/dist/ionic/p-beb64be7.system.entry.js +4 -0
  233. package/dist/ionic/{p-07d9e9cd.system.entry.js → p-c429a314.system.entry.js} +1 -1
  234. package/dist/ionic/p-c56b6570.system.entry.js +4 -0
  235. package/dist/ionic/p-c6be7737.system.entry.js +4 -0
  236. package/dist/ionic/p-c919498d.entry.js +4 -0
  237. package/dist/ionic/{p-d21bfe66.system.entry.js → p-cd2808f5.system.entry.js} +1 -1
  238. package/dist/ionic/p-cf425ec5.system.entry.js +4 -0
  239. package/dist/ionic/{p-c31fc05f.system.entry.js → p-db5043df.system.entry.js} +1 -1
  240. package/dist/ionic/{p-22813b28.system.entry.js → p-dbf7d6e5.system.entry.js} +1 -1
  241. package/dist/ionic/p-ddfc4ef4.system.entry.js +4 -0
  242. package/dist/ionic/{p-dd837fa8.entry.js → p-deab76dc.entry.js} +1 -1
  243. package/dist/ionic/{p-100ef961.js → p-e0b06b65.js} +1 -1
  244. package/dist/ionic/{p-302091ab.js → p-e627ed84.js} +1 -1
  245. package/dist/ionic/p-e6b240a0.js +4 -0
  246. package/dist/ionic/{p-b6f8ee31.entry.js → p-ee2469c1.entry.js} +1 -1
  247. package/dist/ionic/{p-939d903b.entry.js → p-f37b4b79.entry.js} +1 -1
  248. package/dist/ionic/{p-06e6d235.system.entry.js → p-f3c82f74.system.entry.js} +2 -2
  249. package/dist/ionic/p-f54ddd19.entry.js +4 -0
  250. package/dist/ionic/{p-2e1794df.system.js → p-fa8d4788.system.js} +1 -1
  251. package/dist/node_modules/ionicons/dist/collection/components/icon/icon.css +1 -0
  252. package/dist/types/components/backdrop/backdrop.d.ts +3 -0
  253. package/dist/types/components/datetime/datetime.d.ts +1 -0
  254. package/dist/types/components/datetime/utils/data.d.ts +2 -2
  255. package/dist/types/components/menu/menu.d.ts +1 -1
  256. package/dist/types/components/picker/picker.d.ts +131 -74
  257. package/dist/types/components/picker-column/picker-column.d.ts +39 -94
  258. package/dist/types/components/picker-column-internal/picker-column-internal.d.ts +102 -0
  259. package/dist/types/components/picker-internal/picker-internal-interfaces.d.ts +8 -0
  260. package/dist/types/components/picker-internal/picker-internal.d.ts +102 -0
  261. package/dist/types/components.d.ts +122 -122
  262. package/dist/types/interface.d.ts +1 -1
  263. package/dist/types/utils/config.d.ts +2 -2
  264. package/dist/types/utils/gesture/gesture-controller.d.ts +0 -1
  265. package/dist/types/utils/overlays.d.ts +2 -5
  266. package/hydrate/index.js +1083 -1067
  267. package/package.json +2 -2
  268. package/components/ion-picker-legacy-column.d.ts +0 -11
  269. package/components/ion-picker-legacy-column.js +0 -9
  270. package/components/ion-picker-legacy.js +0 -309
  271. package/components/picker-column2.js +0 -379
  272. package/dist/collection/components/picker-legacy/picker.ios.css +0 -367
  273. package/dist/collection/components/picker-legacy/picker.js +0 -817
  274. package/dist/collection/components/picker-legacy/test/basic/picker.e2e.js +0 -25
  275. package/dist/collection/components/picker-legacy-column/picker-column.js +0 -419
  276. package/dist/collection/utils/test/overlays/overlays-scroll-blocking.spec.js +0 -65
  277. package/dist/esm-es5/ion-picker-column.entry.js +0 -4
  278. package/dist/esm-es5/ion-picker.entry.js +0 -4
  279. package/dist/esm-es5/overlays-789cd7a7.js +0 -4
  280. package/dist/esm-es5/swipe-back-cc4c2bcb.js +0 -4
  281. package/dist/ionic/p-0c244faf.entry.js +0 -4
  282. package/dist/ionic/p-1dc91702.entry.js +0 -4
  283. package/dist/ionic/p-234b9617.system.entry.js +0 -4
  284. package/dist/ionic/p-25c34422.system.entry.js +0 -4
  285. package/dist/ionic/p-2804781b.entry.js +0 -4
  286. package/dist/ionic/p-2ad38423.system.entry.js +0 -4
  287. package/dist/ionic/p-39074595.entry.js +0 -4
  288. package/dist/ionic/p-439e20ef.entry.js +0 -4
  289. package/dist/ionic/p-6893f6e4.entry.js +0 -4
  290. package/dist/ionic/p-7c66a566.system.entry.js +0 -4
  291. package/dist/ionic/p-8b4ab236.entry.js +0 -4
  292. package/dist/ionic/p-9403b297.system.entry.js +0 -4
  293. package/dist/ionic/p-992d3bad.entry.js +0 -4
  294. package/dist/ionic/p-9c967a65.system.entry.js +0 -4
  295. package/dist/ionic/p-b4cbb736.js +0 -4
  296. package/dist/ionic/p-ba70d455.entry.js +0 -4
  297. package/dist/ionic/p-c32bf078.system.entry.js +0 -4
  298. package/dist/ionic/p-dc565ca3.js +0 -4
  299. package/dist/ionic/p-e88ed07f.system.js +0 -4
  300. package/dist/ionic/p-eb07ec1a.system.entry.js +0 -4
  301. package/dist/ionic/p-eb5697b5.system.js +0 -4
  302. package/dist/ionic/p-f0559c5d.system.entry.js +0 -4
  303. package/dist/ionic/p-fdd22426.entry.js +0 -4
  304. package/dist/types/components/picker/picker-interfaces.d.ts +0 -8
  305. package/dist/types/components/picker-legacy/picker.d.ts +0 -158
  306. package/dist/types/components/picker-legacy-column/picker-column.d.ts +0 -46
  307. /package/dist/collection/components/{picker-legacy → picker}/animations/ios.enter.js +0 -0
  308. /package/dist/collection/components/{picker-legacy → picker}/animations/ios.leave.js +0 -0
  309. /package/dist/collection/components/picker/{picker-interfaces.js → picker-interface.js} +0 -0
  310. /package/dist/collection/components/{picker-legacy-column → picker-column}/test/test.utils.js +0 -0
  311. /package/dist/collection/components/{picker-column/picker-column-interfaces.js → picker-column-internal/picker-column-internal-interfaces.js} +0 -0
  312. /package/dist/collection/components/{picker-legacy/picker-interface.js → picker-internal/picker-internal-interfaces.js} +0 -0
  313. /package/dist/esm-es5/{data-12e24f00.js → data-44d9e816.js} +0 -0
  314. /package/dist/esm-es5/{index-c132c5f1.js → index-d1a56aed.js} +0 -0
  315. /package/dist/ionic/{p-bb849ebb.js → p-17240d90.js} +0 -0
  316. /package/dist/ionic/{p-ea96fa73.js → p-6e383534.js} +0 -0
  317. /package/dist/ionic/{p-8050b9b9.system.js → p-84c6dece.system.js} +0 -0
  318. /package/dist/ionic/{p-e4219e27.system.js → p-b8c3f071.system.js} +0 -0
  319. /package/dist/types/components/{picker-legacy → picker}/animations/ios.enter.d.ts +0 -0
  320. /package/dist/types/components/{picker-legacy → picker}/animations/ios.leave.d.ts +0 -0
  321. /package/dist/types/components/{picker-legacy → picker}/picker-interface.d.ts +0 -0
  322. /package/dist/types/components/{picker-legacy-column → picker-column}/test/test.utils.d.ts +0 -0
  323. /package/dist/types/components/{picker-column/picker-column-interfaces.d.ts → picker-column-internal/picker-column-internal-interfaces.d.ts} +0 -0
@@ -80,7 +80,7 @@
80
80
  * widest item in the column. Setting a minimum
81
81
  * width avoids this layout shifting.
82
82
  */
83
- ion-picker-column {
83
+ ion-picker-column-internal {
84
84
  min-width: 26px;
85
85
  }
86
86
 
@@ -94,7 +94,7 @@ ion-picker-column {
94
94
  }
95
95
 
96
96
  /**
97
- * This ensures that the picker is appropriately
97
+ * This ensures that the picker is apppropriately
98
98
  * sized and never truncates the text.
99
99
  */
100
100
  :host(.datetime-size-fixed.datetime-prefer-wheel) {
@@ -317,8 +317,23 @@ ion-picker-column {
317
317
  justify-content: space-between;
318
318
  }
319
319
 
320
+ :host .calendar-action-buttons ion-item,
320
321
  :host .calendar-action-buttons ion-button {
321
- --background: transparent;
322
+ --background: translucent;
323
+ }
324
+
325
+ :host .calendar-action-buttons ion-item ion-label {
326
+ display: flex;
327
+ align-items: center;
328
+ }
329
+
330
+ :host .calendar-action-buttons ion-item ion-icon {
331
+ -webkit-padding-start: 4px;
332
+ padding-inline-start: 4px;
333
+ -webkit-padding-end: 0;
334
+ padding-inline-end: 0;
335
+ padding-top: 0;
336
+ padding-bottom: 0;
322
337
  }
323
338
 
324
339
  :host .calendar-days-of-week {
@@ -500,66 +515,8 @@ ion-picker-column {
500
515
  position: static;
501
516
  }
502
517
 
503
- :host(.show-month-and-year) .calendar-action-buttons .calendar-month-year-toggle {
504
- color: var(--ion-color-base);
505
- }
506
-
507
- .calendar-month-year {
508
- min-width: 0;
509
- }
510
-
511
- .calendar-month-year-toggle {
512
- font-family: inherit;
513
- font-size: inherit;
514
- font-style: inherit;
515
- font-weight: inherit;
516
- letter-spacing: inherit;
517
- text-decoration: inherit;
518
- text-indent: inherit;
519
- text-overflow: inherit;
520
- text-transform: inherit;
521
- text-align: inherit;
522
- white-space: inherit;
523
- color: inherit;
524
- position: relative;
525
- border: 0;
526
- outline: none;
527
- background: transparent;
528
- cursor: pointer;
529
- z-index: 1;
530
- }
531
- .calendar-month-year-toggle::after {
532
- left: 0;
533
- right: 0;
534
- top: 0;
535
- bottom: 0;
536
- position: absolute;
537
- content: "";
538
- opacity: 0;
539
- transition: opacity 15ms linear, background-color 15ms linear;
540
- z-index: -1;
541
- }
542
- .calendar-month-year-toggle.ion-focused::after {
543
- background: currentColor;
544
- }
545
- .calendar-month-year-toggle:disabled {
546
- opacity: 0.3;
547
- pointer-events: none;
548
- }
549
-
550
- .calendar-month-year-toggle ion-icon {
551
- -webkit-padding-start: 4px;
552
- padding-inline-start: 4px;
553
- -webkit-padding-end: 0;
554
- padding-inline-end: 0;
555
- padding-top: 0;
556
- padding-bottom: 0;
557
- flex-shrink: 0;
558
- }
559
-
560
- .calendar-month-year-toggle #toggle-wrapper {
561
- display: inline-flex;
562
- align-items: center;
518
+ :host(.show-month-and-year) .calendar-action-buttons ion-item {
519
+ --color: var(--ion-color-base);
563
520
  }
564
521
 
565
522
  /**
@@ -643,36 +600,15 @@ ion-picker-column {
643
600
  font-size: 2.125rem;
644
601
  }
645
602
 
646
- :host .calendar-action-buttons ion-button {
647
- --color: var(--ion-color-step-650, #595959);
648
- }
649
-
650
- .calendar-month-year-toggle {
651
- -webkit-padding-start: 20px;
652
- padding-inline-start: 20px;
653
- -webkit-padding-end: 16px;
654
- padding-inline-end: 16px;
655
- padding-top: 12px;
656
- padding-bottom: 12px;
657
- min-height: 48px;
658
- background: transparent;
659
- color: var(--ion-color-step-650, #595959);
660
- z-index: 1;
661
- }
662
- .calendar-month-year-toggle.ion-focused::after {
663
- opacity: 0.04;
603
+ :host .datetime-calendar .calendar-action-buttons ion-item {
604
+ --padding-start: 20px;
664
605
  }
665
606
 
666
- .calendar-month-year-toggle ion-ripple-effect {
667
- color: currentColor;
607
+ :host .calendar-action-buttons ion-item,
608
+ :host .calendar-action-buttons ion-button {
609
+ --color: var(--ion-color-step-650, #595959);
668
610
  }
669
611
 
670
- @media (any-hover: hover) {
671
- .calendar-month-year-toggle.ion-activatable:not(.ion-focused):hover::after {
672
- background: currentColor;
673
- opacity: 0.04;
674
- }
675
- }
676
612
  :host .calendar-days-of-week {
677
613
  -webkit-padding-start: 10px;
678
614
  padding-inline-start: 10px;
@@ -38,7 +38,7 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
38
38
  `, config);
39
39
  const tabKey = browserName === 'webkit' ? 'Alt+Tab' : 'Tab';
40
40
  const datetime = page.locator('ion-datetime');
41
- const monthYearButton = page.locator('.calendar-month-year-toggle');
41
+ const monthYearButton = page.locator('.calendar-month-year ion-item');
42
42
  const prevButton = page.locator('.calendar-next-prev ion-button:nth-child(1)');
43
43
  const nextButton = page.locator('.calendar-next-prev ion-button:nth-child(2)');
44
44
  await page.keyboard.press(tabKey);
@@ -2,6 +2,7 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { newSpecPage } from "@stencil/core/testing";
5
+ import { Item } from "../../../item/item";
5
6
  import { Datetime } from "../../datetime";
6
7
  describe('datetime', () => {
7
8
  beforeEach(() => {
@@ -17,23 +18,25 @@ describe('datetime', () => {
17
18
  let page;
18
19
  beforeEach(async () => {
19
20
  page = await newSpecPage({
20
- components: [Datetime],
21
+ components: [Datetime, Item],
21
22
  html: `<ion-datetime></ion-datetime>`,
22
23
  });
23
24
  });
24
25
  it('should have aria-label "Show year picker" when collapsed', async () => {
25
26
  const datetime = page.body.querySelector('ion-datetime');
26
- const monthYearToggleBtn = datetime.shadowRoot.querySelector('.calendar-month-year .calendar-month-year-toggle');
27
+ const item = datetime.shadowRoot.querySelector('.calendar-month-year ion-item');
28
+ const monthYearToggleBtn = item.shadowRoot.querySelector('button');
27
29
  const ariaLabel = monthYearToggleBtn.getAttribute('aria-label');
28
30
  expect(ariaLabel).toContain('Show year picker');
29
31
  });
30
32
  it('should have aria-label "Hide year picker" when expanded', async () => {
31
33
  const datetime = page.body.querySelector('ion-datetime');
32
- const monthYearToggleBtn = datetime.shadowRoot.querySelector('.calendar-month-year .calendar-month-year-toggle');
33
- monthYearToggleBtn.click();
34
+ const item = datetime.shadowRoot.querySelector('.calendar-month-year ion-item');
35
+ item.click();
34
36
  await page.waitForChanges();
35
- const monthYearToggleBtnAfter = datetime.shadowRoot.querySelector('.calendar-month-year .calendar-month-year-toggle');
36
- const ariaLabel = monthYearToggleBtnAfter.getAttribute('aria-label');
37
+ const itemAfter = datetime.shadowRoot.querySelector('.calendar-month-year ion-item');
38
+ const monthYearToggleBtn = itemAfter.shadowRoot.querySelector('button');
39
+ const ariaLabel = monthYearToggleBtn.getAttribute('aria-label');
37
40
  expect(ariaLabel).toContain('Hide year picker');
38
41
  });
39
42
  });
@@ -372,14 +372,4 @@ configs({ directions: ['ltr'] }).forEach(({ title, screenshot, config }) => {
372
372
  await expect(datetime).toHaveScreenshot(screenshot(`datetime-focus-calendar-day`));
373
373
  });
374
374
  });
375
- test.describe(title('datetime: calendar month toggle'), () => {
376
- test('should have focus styles', async ({ page }) => {
377
- await page.setContent('<ion-datetime value="2021-01-01"></ion-datetime>', config);
378
- const datetime = page.locator('ion-datetime');
379
- await page.waitForSelector('.datetime-ready');
380
- const monthYearToggle = datetime.locator('.calendar-month-year-toggle');
381
- monthYearToggle.evaluate((el) => el.classList.add('ion-focused'));
382
- await expect(datetime).toHaveScreenshot(screenshot(`date-month-toggle-focused`));
383
- });
384
- });
385
375
  });
@@ -4,8 +4,8 @@
4
4
  import { h } from "@stencil/core";
5
5
  import { newSpecPage } from "@stencil/core/testing";
6
6
  import { Datetime } from "../../../datetime/datetime";
7
- import { PickerColumn } from "../../../picker-column/picker-column";
8
- import { Picker } from "../../../picker/picker";
7
+ import { PickerColumnInternal } from "../../../picker-column-internal/picker-column-internal";
8
+ import { PickerInternal } from "../../../picker-internal/picker-internal";
9
9
  describe('ion-datetime disabled', () => {
10
10
  beforeEach(() => {
11
11
  // IntersectionObserver isn't available in test environment
@@ -19,12 +19,12 @@ describe('ion-datetime disabled', () => {
19
19
  });
20
20
  it('picker should be disabled in prefer wheel mode', async () => {
21
21
  const page = await newSpecPage({
22
- components: [Datetime, PickerColumn, Picker],
22
+ components: [Datetime, PickerColumnInternal, PickerInternal],
23
23
  template: () => (h("ion-datetime", { id: "inline-datetime-wheel", disabled: true, "prefer-wheel": true, value: "2022-04-21T00:00:00" })),
24
24
  });
25
25
  await page.waitForChanges();
26
26
  const datetime = page.body.querySelector('ion-datetime');
27
- const columns = datetime.shadowRoot.querySelectorAll('ion-picker-column');
27
+ const columns = datetime.shadowRoot.querySelectorAll('ion-picker-column-internal');
28
28
  await expect(columns.length).toEqual(4);
29
29
  columns.forEach((column) => {
30
30
  expect(column.disabled).toBe(true);
@@ -81,8 +81,8 @@ configs({ directions: ['ltr'], modes: ['ios'] }).forEach(({ title, config }) =>
81
81
  const ionPopoverDidPresent = await page.spyOnEvent('ionPopoverDidPresent');
82
82
  await page.click('.time-body');
83
83
  await ionPopoverDidPresent.next();
84
- const hours = page.locator('ion-popover ion-picker-column:nth-child(1) .picker-item:not(.picker-item-empty)');
85
- const minutes = page.locator('ion-popover ion-picker-column:nth-child(2) .picker-item:not(.picker-item-empty)');
84
+ const hours = page.locator('ion-popover ion-picker-column-internal:nth-child(1) .picker-item:not(.picker-item-empty)');
85
+ const minutes = page.locator('ion-popover ion-picker-column-internal:nth-child(2) .picker-item:not(.picker-item-empty)');
86
86
  expect(await hours.count()).toBe(12);
87
87
  expect(await minutes.count()).toBe(60);
88
88
  });
@@ -159,7 +159,7 @@ configs({ directions: ['ltr'], modes: ['ios'] }).forEach(({ title, config }) =>
159
159
  value="2022-04-25T08:30:00"
160
160
  ></ion-datetime>
161
161
  `, config);
162
- const hourPickerItems = page.locator('ion-datetime ion-picker-column:first-of-type .picker-item:not(.picker-item-empty)');
162
+ const hourPickerItems = page.locator('ion-datetime ion-picker-column-internal:first-of-type .picker-item:not(.picker-item-empty)');
163
163
  await expect(hourPickerItems).toHaveText(['8', '9', '10', '11']);
164
164
  });
165
165
  test('should include 12PM when minimum is greater than 12', async ({ page }) => {
@@ -175,7 +175,7 @@ configs({ directions: ['ltr'], modes: ['ios'] }).forEach(({ title, config }) =>
175
175
  value="2022-07-29T12:00:00"
176
176
  ></ion-datetime>
177
177
  `, config);
178
- const hourPickerItems = page.locator('ion-datetime ion-picker-column:first-of-type .picker-item:not(.picker-item-empty)');
178
+ const hourPickerItems = page.locator('ion-datetime ion-picker-column-internal:first-of-type .picker-item:not(.picker-item-empty)');
179
179
  await expect(hourPickerItems).toHaveText(['12', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11']);
180
180
  });
181
181
  test.describe('minmax value adjustment when out of bounds', () => {
@@ -258,7 +258,7 @@ configs({ directions: ['ltr'], modes: ['ios'] }).forEach(({ title, config }) =>
258
258
  const timeButton = page.locator('ion-datetime .time-body');
259
259
  await timeButton.click();
260
260
  await ionPopoverDidPresent.next();
261
- const hours = page.locator('ion-popover ion-picker-column:nth-child(1) .picker-item:not(.picker-item-empty)');
261
+ const hours = page.locator('ion-popover ion-picker-column-internal:nth-child(1) .picker-item:not(.picker-item-empty)');
262
262
  await expect(await hours.count()).toBe(4);
263
263
  });
264
264
  });
@@ -16,7 +16,7 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
16
16
  test('should hide the footer when picker is open', async ({ page }) => {
17
17
  const datetimeFooter = page.locator('#date-time .datetime-footer');
18
18
  await expect(datetimeFooter).toBeVisible();
19
- const pickerButton = page.locator('#date-time .calendar-month-year > .calendar-month-year-toggle');
19
+ const pickerButton = page.locator('#date-time .calendar-month-year > ion-item');
20
20
  await pickerButton.click();
21
21
  await page.waitForChanges();
22
22
  await expect(datetimeFooter).not.toBeVisible();
@@ -228,7 +228,7 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
228
228
  ></ion-datetime>
229
229
  `, config);
230
230
  await page.waitForSelector('.datetime-ready');
231
- const columns = page.locator('ion-picker-column');
231
+ const columns = page.locator('ion-picker-column-internal');
232
232
  await expect(columns.nth(0)).toHaveClass(/month-column/);
233
233
  await expect(columns.nth(1)).toHaveClass(/day-column/);
234
234
  await expect(columns.nth(2)).toHaveClass(/year-column/);
@@ -243,7 +243,7 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, config }) => {
243
243
  ></ion-datetime>
244
244
  `, config);
245
245
  await page.waitForSelector('.datetime-ready');
246
- const columns = page.locator('ion-picker-column');
246
+ const columns = page.locator('ion-picker-column-internal');
247
247
  await expect(columns.nth(0)).toHaveClass(/day-column/);
248
248
  await expect(columns.nth(1)).toHaveClass(/month-column/);
249
249
  await expect(columns.nth(2)).toHaveClass(/year-column/);
@@ -161,7 +161,7 @@ class TimePickerFixture {
161
161
  await this.page.waitForChanges();
162
162
  }
163
163
  async expectTime(hour, minute, ampm) {
164
- const pickerColumns = this.timePicker.locator('ion-picker-column');
164
+ const pickerColumns = this.timePicker.locator('ion-picker-column-internal');
165
165
  await expect(pickerColumns.nth(0)).toHaveJSProperty('value', hour);
166
166
  await expect(pickerColumns.nth(1)).toHaveJSProperty('value', minute);
167
167
  await expect(pickerColumns.nth(2)).toHaveJSProperty('value', ampm);
@@ -46,7 +46,7 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config, scree
46
46
  const tabKey = browserName === 'webkit' ? 'Alt+Tab' : 'Tab';
47
47
  await page.waitForSelector('.datetime-ready');
48
48
  const calendarMonthYear = page.locator('ion-datetime .calendar-month-year');
49
- const monthYearButton = page.locator('.calendar-month-year-toggle');
49
+ const monthYearButton = page.locator('.calendar-month-year ion-item');
50
50
  await expect(calendarMonthYear).toHaveText('February 2022');
51
51
  await page.keyboard.press(tabKey);
52
52
  await expect(monthYearButton).toBeFocused();
@@ -75,7 +75,7 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config, scree
75
75
  `, config);
76
76
  const tabKey = browserName === 'webkit' ? 'Alt+Tab' : 'Tab';
77
77
  const datetime = page.locator('ion-datetime');
78
- const monthYearButton = page.locator('.calendar-month-year-toggle');
78
+ const monthYearButton = page.locator('.calendar-month-year ion-item');
79
79
  const prevButton = page.locator('.calendar-next-prev ion-button:nth-child(1)');
80
80
  const nextButton = page.locator('.calendar-next-prev ion-button:nth-child(2)');
81
81
  const calendarMonthYear = page.locator('ion-datetime .calendar-month-year');
@@ -36,14 +36,14 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
36
36
  await page.setContent(`
37
37
  <ion-datetime locale="en-US" presentation="time" hour-values="1,2,3"></ion-datetime>
38
38
  `, config);
39
- const items = page.locator('ion-picker-column:first-of-type .picker-item:not(.picker-item-empty)');
39
+ const items = page.locator('ion-picker-column-internal:first-of-type .picker-item:not(.picker-item-empty)');
40
40
  await expect(items).toHaveText(['1', '2', '3']);
41
41
  });
42
42
  test('should render correct minutes', async ({ page }) => {
43
43
  await page.setContent(`
44
44
  <ion-datetime locale="en-US" presentation="time" minute-values="1,2,3"></ion-datetime>
45
45
  `, config);
46
- const items = page.locator('ion-picker-column:nth-of-type(2) .picker-item:not(.picker-item-empty)');
46
+ const items = page.locator('ion-picker-column-internal:nth-of-type(2) .picker-item:not(.picker-item-empty)');
47
47
  await expect(items).toHaveText(['01', '02', '03']);
48
48
  });
49
49
  test('should adjust default parts for allowed hour and minute values', async ({ page }) => {
@@ -69,17 +69,17 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
69
69
  </script>
70
70
  `, config);
71
71
  await page.waitForSelector('.datetime-ready');
72
- const minuteItems = page.locator('ion-picker-column:nth-of-type(2) .picker-item:not(.picker-item-empty)');
72
+ const minuteItems = page.locator('ion-picker-column-internal:nth-of-type(2) .picker-item:not(.picker-item-empty)');
73
73
  await expect(minuteItems).toHaveText(['00', '15', '30', '45']);
74
74
  await expect(minuteItems.nth(1)).toHaveClass(/picker-item-active/);
75
- const hourItems = page.locator('ion-picker-column:nth-of-type(1) .picker-item:not(.picker-item-empty)');
75
+ const hourItems = page.locator('ion-picker-column-internal:nth-of-type(1) .picker-item:not(.picker-item-empty)');
76
76
  await expect(hourItems).toHaveText(['2']);
77
77
  await expect(hourItems.nth(0)).toHaveClass(/picker-item-active/);
78
78
  /**
79
79
  * Since the allowed hour is 2AM, the time period
80
80
  * should switch from PM to AM.
81
81
  */
82
- const ampmItems = page.locator('ion-picker-column:nth-of-type(3) .picker-item:not(.picker-item-empty)');
82
+ const ampmItems = page.locator('ion-picker-column-internal:nth-of-type(3) .picker-item:not(.picker-item-empty)');
83
83
  await expect(ampmItems).toHaveText(['AM', 'PM']);
84
84
  await expect(ampmItems.nth(0)).toHaveClass(/picker-item-active/);
85
85
  });
@@ -323,7 +323,7 @@ export const getMonthColumnData = (locale, refParts, minParts, maxParts, monthVa
323
323
  * @param minParts The minimum bound on the date that can be returned
324
324
  * @param maxParts The maximum bound on the date that can be returned
325
325
  * @param dayValues The allowed date values
326
- * @returns Date data to be used in ion-picker-column
326
+ * @returns Date data to be used in ion-picker-column-internal
327
327
  */
328
328
  export const getDayColumnData = (locale, refParts, minParts, maxParts, dayValues, formatOptions = {
329
329
  day: 'numeric',