@ionic/core 7.7.2-dev.11707881769.185d2a14 → 7.7.2-dev.11707926434.1affaed4

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 (365) hide show
  1. package/components/action-sheet.js +3 -7
  2. package/components/alert.js +2 -6
  3. package/components/data.js +28 -38
  4. package/components/ion-datetime-button.js +11 -10
  5. package/components/ion-datetime.js +68 -7
  6. package/components/ion-loading.js +2 -6
  7. package/components/ion-modal.js +3 -7
  8. package/components/ion-picker.js +2 -6
  9. package/components/ion-toast.js +2 -6
  10. package/components/item.js +12 -3
  11. package/components/overlays.js +4 -54
  12. package/components/popover.js +2 -6
  13. package/dist/cjs/{app-globals-92ad1b3d.js → app-globals-5a17c5e1.js} +1 -1
  14. package/dist/cjs/{button-active-2d6520ec.js → button-active-b8c3f603.js} +1 -1
  15. package/dist/cjs/{data-a5109f09.js → data-6246812e.js} +27 -39
  16. package/dist/cjs/{hardware-back-button-2696acaf.js → hardware-back-button-d23873bb.js} +2 -2
  17. package/dist/cjs/{index-0ffe376d.js → index-5a471146.js} +22 -25
  18. package/dist/cjs/{index-c3580a90.js → index-84351d21.js} +3 -3
  19. package/dist/cjs/{index-a43f7a0f.js → index-8c679cbf.js} +2 -2
  20. package/dist/cjs/index.cjs.js +8 -8
  21. package/dist/cjs/ion-accordion_2.cjs.entry.js +2 -2
  22. package/dist/cjs/ion-action-sheet.cjs.entry.js +8 -12
  23. package/dist/cjs/ion-alert.cjs.entry.js +7 -11
  24. package/dist/cjs/ion-app_8.cjs.entry.js +6 -6
  25. package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -2
  26. package/dist/cjs/ion-back-button.cjs.entry.js +2 -2
  27. package/dist/cjs/ion-backdrop.cjs.entry.js +2 -2
  28. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +2 -2
  29. package/dist/cjs/ion-button_2.cjs.entry.js +2 -2
  30. package/dist/cjs/ion-card_5.cjs.entry.js +2 -2
  31. package/dist/cjs/ion-checkbox.cjs.entry.js +2 -2
  32. package/dist/cjs/ion-chip.cjs.entry.js +2 -2
  33. package/dist/cjs/ion-col_3.cjs.entry.js +2 -2
  34. package/dist/cjs/ion-datetime-button.cjs.entry.js +13 -12
  35. package/dist/cjs/ion-datetime_3.cjs.entry.js +71 -17
  36. package/dist/cjs/ion-fab_3.cjs.entry.js +2 -2
  37. package/dist/cjs/ion-img.cjs.entry.js +2 -2
  38. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +2 -2
  39. package/dist/cjs/ion-input.cjs.entry.js +2 -2
  40. package/dist/cjs/ion-item-option_3.cjs.entry.js +2 -2
  41. package/dist/cjs/ion-item_8.cjs.entry.js +4 -4
  42. package/dist/cjs/ion-loading.cjs.entry.js +6 -10
  43. package/dist/cjs/ion-menu_3.cjs.entry.js +5 -5
  44. package/dist/cjs/ion-modal.cjs.entry.js +8 -12
  45. package/dist/cjs/ion-nav_2.cjs.entry.js +3 -3
  46. package/dist/cjs/ion-picker-column-internal.cjs.entry.js +2 -2
  47. package/dist/cjs/ion-picker-internal.cjs.entry.js +1 -1
  48. package/dist/cjs/ion-popover.cjs.entry.js +7 -11
  49. package/dist/cjs/ion-progress-bar.cjs.entry.js +2 -2
  50. package/dist/cjs/ion-radio_2.cjs.entry.js +2 -2
  51. package/dist/cjs/ion-range.cjs.entry.js +2 -2
  52. package/dist/cjs/ion-refresher_2.cjs.entry.js +2 -2
  53. package/dist/cjs/ion-reorder_2.cjs.entry.js +2 -2
  54. package/dist/cjs/ion-ripple-effect.cjs.entry.js +2 -2
  55. package/dist/cjs/ion-route_4.cjs.entry.js +2 -2
  56. package/dist/cjs/ion-searchbar.cjs.entry.js +2 -2
  57. package/dist/cjs/ion-segment_2.cjs.entry.js +2 -2
  58. package/dist/cjs/ion-select_3.cjs.entry.js +4 -4
  59. package/dist/cjs/ion-spinner.cjs.entry.js +2 -2
  60. package/dist/cjs/ion-split-pane.cjs.entry.js +2 -2
  61. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +2 -2
  62. package/dist/cjs/ion-tab_2.cjs.entry.js +1 -1
  63. package/dist/cjs/ion-text.cjs.entry.js +2 -2
  64. package/dist/cjs/ion-textarea.cjs.entry.js +2 -2
  65. package/dist/cjs/ion-toast.cjs.entry.js +6 -10
  66. package/dist/cjs/ion-toggle.cjs.entry.js +2 -2
  67. package/dist/cjs/{ionic-global-59a10130.js → ionic-global-7358c23e.js} +1 -1
  68. package/dist/cjs/ionic.cjs.js +7 -7
  69. package/dist/cjs/{ios.transition-c3b11cc3.js → ios.transition-8e40c54e.js} +2 -2
  70. package/dist/cjs/loader.cjs.js +6 -6
  71. package/dist/cjs/{md.transition-82a8c649.js → md.transition-597a2479.js} +2 -2
  72. package/dist/cjs/{overlays-fb7ca451.js → overlays-330df245.js} +6 -56
  73. package/dist/cjs/{status-tap-692f6d32.js → status-tap-b0bfea34.js} +1 -1
  74. package/dist/collection/collection-manifest.json +1 -1
  75. package/dist/collection/components/action-sheet/action-sheet.js +5 -9
  76. package/dist/collection/components/alert/alert.js +4 -8
  77. package/dist/collection/components/datetime/datetime.js +90 -7
  78. package/dist/collection/components/datetime/test/basic/datetime.e2e.js +79 -0
  79. package/dist/collection/components/datetime/test/format.spec.js +65 -1
  80. package/dist/collection/components/datetime/utils/format.js +28 -20
  81. package/dist/collection/components/datetime-button/datetime-button.js +11 -10
  82. package/dist/collection/components/datetime-button/test/basic/datetime-button.e2e.js +66 -0
  83. package/dist/collection/components/item/item.js +12 -3
  84. package/dist/collection/components/loading/loading.js +4 -8
  85. package/dist/collection/components/modal/modal.js +5 -9
  86. package/dist/collection/components/picker/picker.js +4 -8
  87. package/dist/collection/components/popover/popover.js +4 -8
  88. package/dist/collection/components/toast/test/toast.spec.js +0 -12
  89. package/dist/collection/components/toast/toast.js +4 -8
  90. package/dist/collection/utils/overlays.js +4 -54
  91. package/dist/collection/utils/test/overlays/overlays.e2e.js +0 -33
  92. package/dist/collection/utils/test/overlays/overlays.spec.js +0 -51
  93. package/dist/docs.json +66 -23
  94. package/dist/esm/{app-globals-5cf6195b.js → app-globals-47226a12.js} +1 -1
  95. package/dist/esm/{button-active-47ac8092.js → button-active-4bee452c.js} +1 -1
  96. package/dist/esm/{data-0f3ab200.js → data-25d50209.js} +28 -38
  97. package/dist/esm/{hardware-back-button-b410a047.js → hardware-back-button-f42b9c80.js} +2 -2
  98. package/dist/esm/{index-47b2066d.js → index-48209844.js} +2 -2
  99. package/dist/esm/{index-0b4beb69.js → index-4b98143d.js} +3 -3
  100. package/dist/esm/{index-4c30cddd.js → index-73881b51.js} +22 -25
  101. package/dist/esm/index.js +8 -8
  102. package/dist/esm/ion-accordion_2.entry.js +2 -2
  103. package/dist/esm/ion-action-sheet.entry.js +8 -12
  104. package/dist/esm/ion-alert.entry.js +7 -11
  105. package/dist/esm/ion-app_8.entry.js +6 -6
  106. package/dist/esm/ion-avatar_3.entry.js +2 -2
  107. package/dist/esm/ion-back-button.entry.js +2 -2
  108. package/dist/esm/ion-backdrop.entry.js +2 -2
  109. package/dist/esm/ion-breadcrumb_2.entry.js +2 -2
  110. package/dist/esm/ion-button_2.entry.js +2 -2
  111. package/dist/esm/ion-card_5.entry.js +2 -2
  112. package/dist/esm/ion-checkbox.entry.js +2 -2
  113. package/dist/esm/ion-chip.entry.js +2 -2
  114. package/dist/esm/ion-col_3.entry.js +2 -2
  115. package/dist/esm/ion-datetime-button.entry.js +13 -12
  116. package/dist/esm/ion-datetime_3.entry.js +71 -17
  117. package/dist/esm/ion-fab_3.entry.js +2 -2
  118. package/dist/esm/ion-img.entry.js +2 -2
  119. package/dist/esm/ion-infinite-scroll_2.entry.js +2 -2
  120. package/dist/esm/ion-input.entry.js +2 -2
  121. package/dist/esm/ion-item-option_3.entry.js +2 -2
  122. package/dist/esm/ion-item_8.entry.js +4 -4
  123. package/dist/esm/ion-loading.entry.js +6 -10
  124. package/dist/esm/ion-menu_3.entry.js +5 -5
  125. package/dist/esm/ion-modal.entry.js +8 -12
  126. package/dist/esm/ion-nav_2.entry.js +3 -3
  127. package/dist/esm/ion-picker-column-internal.entry.js +2 -2
  128. package/dist/esm/ion-picker-internal.entry.js +1 -1
  129. package/dist/esm/ion-popover.entry.js +7 -11
  130. package/dist/esm/ion-progress-bar.entry.js +2 -2
  131. package/dist/esm/ion-radio_2.entry.js +2 -2
  132. package/dist/esm/ion-range.entry.js +2 -2
  133. package/dist/esm/ion-refresher_2.entry.js +2 -2
  134. package/dist/esm/ion-reorder_2.entry.js +2 -2
  135. package/dist/esm/ion-ripple-effect.entry.js +2 -2
  136. package/dist/esm/ion-route_4.entry.js +2 -2
  137. package/dist/esm/ion-searchbar.entry.js +2 -2
  138. package/dist/esm/ion-segment_2.entry.js +2 -2
  139. package/dist/esm/ion-select_3.entry.js +4 -4
  140. package/dist/esm/ion-spinner.entry.js +2 -2
  141. package/dist/esm/ion-split-pane.entry.js +2 -2
  142. package/dist/esm/ion-tab-bar_2.entry.js +2 -2
  143. package/dist/esm/ion-tab_2.entry.js +1 -1
  144. package/dist/esm/ion-text.entry.js +2 -2
  145. package/dist/esm/ion-textarea.entry.js +2 -2
  146. package/dist/esm/ion-toast.entry.js +6 -10
  147. package/dist/esm/ion-toggle.entry.js +2 -2
  148. package/dist/esm/{ionic-global-ad9a1810.js → ionic-global-778b7863.js} +1 -1
  149. package/dist/esm/ionic.js +8 -8
  150. package/dist/esm/{ios.transition-b76c7020.js → ios.transition-7ff7381d.js} +2 -2
  151. package/dist/esm/loader.js +7 -7
  152. package/dist/esm/{md.transition-564937a7.js → md.transition-28a9a26b.js} +2 -2
  153. package/dist/esm/{overlays-04a9a43f.js → overlays-33ae3ea0.js} +6 -56
  154. package/dist/esm/{status-tap-5a95077d.js → status-tap-2b335fb7.js} +1 -1
  155. package/dist/esm-es5/app-globals-47226a12.js +4 -0
  156. package/dist/esm-es5/{button-active-47ac8092.js → button-active-4bee452c.js} +1 -1
  157. package/dist/esm-es5/data-25d50209.js +4 -0
  158. package/dist/esm-es5/{hardware-back-button-b410a047.js → hardware-back-button-f42b9c80.js} +1 -1
  159. package/dist/esm-es5/{index-47b2066d.js → index-48209844.js} +1 -1
  160. package/dist/esm-es5/{index-0b4beb69.js → index-4b98143d.js} +1 -1
  161. package/dist/esm-es5/{index-4c30cddd.js → index-73881b51.js} +1 -1
  162. package/dist/esm-es5/index.js +1 -1
  163. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  164. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  165. package/dist/esm-es5/ion-alert.entry.js +1 -1
  166. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  167. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  168. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  169. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  170. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  171. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  172. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  173. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  174. package/dist/esm-es5/ion-chip.entry.js +1 -1
  175. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  176. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  177. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  178. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  179. package/dist/esm-es5/ion-img.entry.js +1 -1
  180. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  181. package/dist/esm-es5/ion-input.entry.js +1 -1
  182. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  183. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  184. package/dist/esm-es5/ion-loading.entry.js +1 -1
  185. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  186. package/dist/esm-es5/ion-modal.entry.js +1 -1
  187. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  188. package/dist/esm-es5/ion-picker-column-internal.entry.js +1 -1
  189. package/dist/esm-es5/ion-picker-internal.entry.js +1 -1
  190. package/dist/esm-es5/ion-popover.entry.js +1 -1
  191. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  192. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  193. package/dist/esm-es5/ion-range.entry.js +1 -1
  194. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  195. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  196. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  197. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  198. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  199. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  200. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  201. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  202. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  203. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  204. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  205. package/dist/esm-es5/ion-text.entry.js +1 -1
  206. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  207. package/dist/esm-es5/ion-toast.entry.js +1 -1
  208. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  209. package/dist/esm-es5/{ionic-global-ad9a1810.js → ionic-global-778b7863.js} +1 -1
  210. package/dist/esm-es5/ionic.js +2 -2
  211. package/dist/esm-es5/{ios.transition-b76c7020.js → ios.transition-7ff7381d.js} +1 -1
  212. package/dist/esm-es5/loader.js +2 -2
  213. package/dist/esm-es5/md.transition-28a9a26b.js +4 -0
  214. package/dist/esm-es5/{overlays-04a9a43f.js → overlays-33ae3ea0.js} +1 -1
  215. package/dist/esm-es5/{status-tap-5a95077d.js → status-tap-2b335fb7.js} +1 -1
  216. package/dist/ionic/index.esm.js +1 -1
  217. package/dist/ionic/ionic.esm.js +1 -1
  218. package/dist/ionic/ionic.js +1 -1
  219. package/dist/ionic/{p-df504a37.system.js → p-001010b6.system.js} +1 -1
  220. package/dist/ionic/{p-1924f2e0.system.entry.js → p-016976a7.system.entry.js} +2 -2
  221. package/dist/ionic/{p-a0b28c69.system.entry.js → p-078fd095.system.entry.js} +1 -1
  222. package/dist/ionic/{p-ae35294f.system.entry.js → p-0ae25399.system.entry.js} +1 -1
  223. package/dist/ionic/p-0b955124.system.js +4 -0
  224. package/dist/ionic/{p-3481d54e.system.entry.js → p-0e29919c.system.entry.js} +1 -1
  225. package/dist/ionic/{p-8794fa00.system.entry.js → p-0eef8b34.system.entry.js} +1 -1
  226. package/dist/ionic/{p-fb9f8495.system.entry.js → p-0fd295ef.system.entry.js} +1 -1
  227. package/dist/ionic/{p-508a4c87.entry.js → p-108f730a.entry.js} +1 -1
  228. package/dist/ionic/{p-5d7e32ce.js → p-1aa7c019.js} +1 -1
  229. package/dist/ionic/{p-601e17b4.entry.js → p-1c531ca2.entry.js} +1 -1
  230. package/dist/ionic/{p-91cb3f9a.entry.js → p-1f583f73.entry.js} +1 -1
  231. package/dist/ionic/{p-ea25b4c8.system.entry.js → p-1f6cdf2c.system.entry.js} +1 -1
  232. package/dist/ionic/{p-717e2526.system.entry.js → p-20a6513f.system.entry.js} +1 -1
  233. package/dist/ionic/{p-cde3ac34.system.entry.js → p-20f7a91e.system.entry.js} +1 -1
  234. package/dist/ionic/{p-74deb358.system.js → p-25b08bc4.system.js} +1 -1
  235. package/dist/ionic/p-26138fed.js +4 -0
  236. package/dist/ionic/{p-bf05cbc7.entry.js → p-2da0a76c.entry.js} +1 -1
  237. package/dist/ionic/{p-70e34286.system.entry.js → p-2f66e177.system.entry.js} +1 -1
  238. package/dist/ionic/{p-5cb5f63d.system.entry.js → p-30c9e049.system.entry.js} +1 -1
  239. package/dist/ionic/{p-16a61810.entry.js → p-333f06ed.entry.js} +1 -1
  240. package/dist/ionic/{p-de55ec45.js → p-341b4519.js} +1 -1
  241. package/dist/ionic/{p-bd314f1e.system.entry.js → p-389ff4d2.system.entry.js} +1 -1
  242. package/dist/ionic/{p-1f16d040.entry.js → p-396c1a55.entry.js} +1 -1
  243. package/dist/ionic/{p-5e23bea8.system.entry.js → p-3a54c070.system.entry.js} +1 -1
  244. package/dist/ionic/{p-275705e5.entry.js → p-3a98f8db.entry.js} +1 -1
  245. package/dist/ionic/{p-502780e4.entry.js → p-3cdbaa49.entry.js} +1 -1
  246. package/dist/ionic/{p-49aba878.js → p-3eb2da31.js} +1 -1
  247. package/dist/ionic/{p-6525a8cd.system.js → p-3f028207.system.js} +1 -1
  248. package/dist/ionic/{p-43a5edee.entry.js → p-400574bf.entry.js} +1 -1
  249. package/dist/ionic/{p-18beebdf.system.entry.js → p-48af4316.system.entry.js} +2 -2
  250. package/dist/ionic/{p-ceceac26.js → p-4b2d5b9c.js} +1 -1
  251. package/dist/ionic/{p-a022b684.system.entry.js → p-4c256bc2.system.entry.js} +1 -1
  252. package/dist/ionic/{p-b7efc743.system.entry.js → p-4dfc27eb.system.entry.js} +1 -1
  253. package/dist/ionic/{p-396083cc.entry.js → p-51f08a9f.entry.js} +1 -1
  254. package/dist/ionic/{p-86813176.system.entry.js → p-58e3ae88.system.entry.js} +1 -1
  255. package/dist/ionic/{p-31450f73.entry.js → p-5b6aa59a.entry.js} +1 -1
  256. package/dist/ionic/{p-4fda5c35.entry.js → p-5e60dbc8.entry.js} +1 -1
  257. package/dist/ionic/{p-1636923f.system.js → p-5eea8b4c.system.js} +1 -1
  258. package/dist/ionic/{p-cd9a7017.system.entry.js → p-5f456b3c.system.entry.js} +1 -1
  259. package/dist/ionic/{p-2e1f014a.system.entry.js → p-61c0f8bf.system.entry.js} +1 -1
  260. package/dist/ionic/{p-a5951821.system.js → p-62a3c609.system.js} +1 -1
  261. package/dist/ionic/{p-f53d074d.system.entry.js → p-680f96e8.system.entry.js} +1 -1
  262. package/dist/ionic/p-68ae6719.system.entry.js +4 -0
  263. package/dist/ionic/{p-5b40d967.entry.js → p-6a34980d.entry.js} +1 -1
  264. package/dist/ionic/p-6b02edd6.js +4 -0
  265. package/dist/ionic/{p-afd6d696.system.entry.js → p-6f38d0c5.system.entry.js} +1 -1
  266. package/dist/ionic/{p-42a9f663.system.entry.js → p-70026e8f.system.entry.js} +1 -1
  267. package/dist/ionic/{p-72fa96bf.system.js → p-76893257.system.js} +1 -1
  268. package/dist/ionic/{p-c1797ec5.system.entry.js → p-78edc0cd.system.entry.js} +1 -1
  269. package/dist/ionic/{p-f0194418.system.entry.js → p-7c32fb95.system.entry.js} +1 -1
  270. package/dist/ionic/p-7c5e8706.entry.js +4 -0
  271. package/dist/ionic/{p-05d560ec.entry.js → p-7dc7514a.entry.js} +1 -1
  272. package/dist/ionic/{p-bd4787eb.entry.js → p-84513dfb.entry.js} +1 -1
  273. package/dist/ionic/{p-e04b9647.system.entry.js → p-84879f61.system.entry.js} +1 -1
  274. package/dist/ionic/{p-1131946f.system.entry.js → p-8569d759.system.entry.js} +1 -1
  275. package/dist/ionic/p-87ae4f6c.system.entry.js +4 -0
  276. package/dist/ionic/{p-eb07b88f.entry.js → p-8a671f16.entry.js} +1 -1
  277. package/dist/ionic/{p-123b4809.js → p-8ddc00f7.js} +1 -1
  278. package/dist/ionic/p-8e16390d.system.js +4 -0
  279. package/dist/ionic/{p-a8a56449.entry.js → p-8ebd9951.entry.js} +1 -1
  280. package/dist/ionic/p-8f1ce253.js +4 -0
  281. package/dist/ionic/{p-c747f89b.system.entry.js → p-92c2178e.system.entry.js} +1 -1
  282. package/dist/ionic/{p-9cd7ba27.system.js → p-95c44e02.system.js} +1 -1
  283. package/dist/ionic/{p-95d5a097.entry.js → p-97eca294.entry.js} +1 -1
  284. package/dist/ionic/{p-a85d9047.system.entry.js → p-9a6ab80a.system.entry.js} +1 -1
  285. package/dist/ionic/{p-e9f9388e.system.js → p-9beb5039.system.js} +1 -1
  286. package/dist/ionic/{p-5928fac9.system.entry.js → p-9f5b40c0.system.entry.js} +1 -1
  287. package/dist/ionic/{p-3d961d93.entry.js → p-9f6397ce.entry.js} +1 -1
  288. package/dist/ionic/{p-5c6a04bd.entry.js → p-a02b2d75.entry.js} +1 -1
  289. package/dist/ionic/{p-88e9052d.entry.js → p-a051c371.entry.js} +1 -1
  290. package/dist/ionic/{p-cb9e71e0.entry.js → p-a19f5ae1.entry.js} +1 -1
  291. package/dist/ionic/{p-7b1ed642.system.entry.js → p-a1bfaa5c.system.entry.js} +1 -1
  292. package/dist/ionic/{p-5c580e89.entry.js → p-a2ad515b.entry.js} +1 -1
  293. package/dist/ionic/{p-3079950e.entry.js → p-aa7ae6aa.entry.js} +1 -1
  294. package/dist/ionic/{p-caeefe16.system.entry.js → p-aaa4ffb3.system.entry.js} +1 -1
  295. package/dist/ionic/{p-abcedc15.system.entry.js → p-ac20160b.system.entry.js} +1 -1
  296. package/dist/ionic/{p-ba97a133.system.entry.js → p-ac979ebf.system.entry.js} +1 -1
  297. package/dist/ionic/{p-dbd70d97.system.entry.js → p-b37e4ee5.system.entry.js} +1 -1
  298. package/dist/ionic/{p-c771a6ef.entry.js → p-b498de69.entry.js} +1 -1
  299. package/dist/ionic/{p-30cd5e7b.js → p-b4d8fe47.js} +1 -1
  300. package/dist/ionic/{p-337ac0f5.entry.js → p-b8c4df21.entry.js} +1 -1
  301. package/dist/ionic/{p-89ca4c4b.system.js → p-b94882a9.system.js} +1 -1
  302. package/dist/ionic/{p-edcada2b.system.entry.js → p-b96699d3.system.entry.js} +1 -1
  303. package/dist/ionic/{p-64856c3c.system.entry.js → p-bc2c03d7.system.entry.js} +1 -1
  304. package/dist/ionic/{p-8f872991.entry.js → p-c3790581.entry.js} +1 -1
  305. package/dist/ionic/p-c5c3710c.js +4 -0
  306. package/dist/ionic/{p-2e14c533.system.js → p-c6fef62b.system.js} +1 -1
  307. package/dist/ionic/{p-aaaa615c.system.entry.js → p-c851b204.system.entry.js} +1 -1
  308. package/dist/ionic/{p-d39ab63d.entry.js → p-ccd419ae.entry.js} +1 -1
  309. package/dist/ionic/{p-68ba8e77.system.entry.js → p-cd055d60.system.entry.js} +1 -1
  310. package/dist/ionic/{p-027f3674.entry.js → p-ce2eabd5.entry.js} +1 -1
  311. package/dist/ionic/{p-b0ff8075.entry.js → p-d7260b87.entry.js} +1 -1
  312. package/dist/ionic/{p-f840d817.entry.js → p-d74ca358.entry.js} +1 -1
  313. package/dist/ionic/{p-657ccdd6.entry.js → p-d8607ede.entry.js} +1 -1
  314. package/dist/ionic/{p-c308f773.entry.js → p-d95c8e90.entry.js} +1 -1
  315. package/dist/ionic/{p-c11bab7e.entry.js → p-dbb4c012.entry.js} +1 -1
  316. package/dist/ionic/{p-0457213c.entry.js → p-dce9bc53.entry.js} +1 -1
  317. package/dist/ionic/{p-7173ba59.system.entry.js → p-df281664.system.entry.js} +1 -1
  318. package/dist/ionic/{p-2327064c.entry.js → p-df468a8f.entry.js} +1 -1
  319. package/dist/ionic/p-e1271366.js +5 -0
  320. package/dist/ionic/{p-b2595011.system.entry.js → p-e68980ff.system.entry.js} +1 -1
  321. package/dist/ionic/{p-1f19958f.system.entry.js → p-e6aaff14.system.entry.js} +1 -1
  322. package/dist/ionic/{p-dcb5711d.entry.js → p-ea8fbf09.entry.js} +1 -1
  323. package/dist/ionic/{p-a3df16b9.system.entry.js → p-eda7a1db.system.entry.js} +1 -1
  324. package/dist/ionic/{p-64db1331.entry.js → p-efe9180b.entry.js} +1 -1
  325. package/dist/ionic/{p-64761c90.entry.js → p-f1ad3b3d.entry.js} +1 -1
  326. package/dist/ionic/{p-94ff532b.entry.js → p-f1cc690e.entry.js} +1 -1
  327. package/dist/ionic/{p-8e651c29.entry.js → p-f46775e4.entry.js} +1 -1
  328. package/dist/ionic/p-f74afe3b.entry.js +4 -0
  329. package/dist/ionic/{p-c39cc96d.system.entry.js → p-f7b43141.system.entry.js} +1 -1
  330. package/dist/ionic/{p-3a7de59c.entry.js → p-f88dd429.entry.js} +1 -1
  331. package/dist/ionic/p-f89ae259.js +4 -0
  332. package/dist/ionic/{p-9056778e.system.entry.js → p-f97b9cdd.system.entry.js} +1 -1
  333. package/dist/ionic/{p-9ec7208d.system.js → p-fd36799d.system.js} +1 -1
  334. package/dist/ionic/{p-7ce40e7b.entry.js → p-fd3f475f.entry.js} +1 -1
  335. package/dist/ionic/{p-d4cadd34.system.js → p-fd9a9db3.system.js} +1 -1
  336. package/dist/ionic/{p-b6279412.entry.js → p-fe92da17.entry.js} +1 -1
  337. package/dist/types/components/action-sheet/action-sheet.d.ts +0 -4
  338. package/dist/types/components/alert/alert.d.ts +0 -4
  339. package/dist/types/components/datetime/datetime-interface.d.ts +10 -0
  340. package/dist/types/components/datetime/datetime.d.ts +16 -1
  341. package/dist/types/components/datetime/utils/format.d.ts +7 -1
  342. package/dist/types/components/loading/loading.d.ts +0 -4
  343. package/dist/types/components/modal/modal.d.ts +0 -4
  344. package/dist/types/components/picker/picker.d.ts +0 -4
  345. package/dist/types/components/popover/popover.d.ts +0 -4
  346. package/dist/types/components/toast/toast.d.ts +0 -4
  347. package/dist/types/components.d.ts +17 -9
  348. package/hydrate/index.d.ts +1 -1
  349. package/hydrate/index.js +136 -271
  350. package/package.json +4 -4
  351. package/dist/esm-es5/app-globals-5cf6195b.js +0 -4
  352. package/dist/esm-es5/data-0f3ab200.js +0 -4
  353. package/dist/esm-es5/md.transition-564937a7.js +0 -4
  354. package/dist/ionic/p-0b34d3a7.system.js +0 -4
  355. package/dist/ionic/p-0e23c289.system.entry.js +0 -4
  356. package/dist/ionic/p-21ca1f1c.js +0 -4
  357. package/dist/ionic/p-23c73017.entry.js +0 -4
  358. package/dist/ionic/p-5c2ae448.js +0 -4
  359. package/dist/ionic/p-7330c044.system.js +0 -4
  360. package/dist/ionic/p-a6e465f5.entry.js +0 -4
  361. package/dist/ionic/p-bdca4784.js +0 -4
  362. package/dist/ionic/p-dbcba5a2.js +0 -4
  363. package/dist/ionic/p-e81bf09e.system.entry.js +0 -4
  364. package/dist/ionic/p-ed7a529f.js +0 -5
  365. package/dist/ionic/p-f7dce541.js +0 -4
@@ -175,38 +175,5 @@ configs({ modes: ['ios'], directions: ['ltr'] }).forEach(({ title, config }) =>
175
175
  await modalInputOne.click();
176
176
  await expect(modalInputOne).toBeFocused();
177
177
  });
178
- test('should not return focus to another element if focus already manually returned', async ({ page, skip, }, testInfo) => {
179
- skip.browser('webkit', 'WebKit does not consider buttons to be focusable, so this test always passes since the input is the only focusable element.');
180
- testInfo.annotations.push({
181
- type: 'issue',
182
- description: 'https://github.com/ionic-team/ionic-framework/issues/28849',
183
- });
184
- await page.setContent(`
185
- <button id="open-action-sheet">open</button>
186
- <ion-action-sheet trigger="open-action-sheet"></ion-action-sheet>
187
- <input id="test-input" />
188
-
189
- <script>
190
- const actionSheet = document.querySelector('ion-action-sheet');
191
-
192
- actionSheet.addEventListener('ionActionSheetWillDismiss', () => {
193
- requestAnimationFrame(() => {
194
- document.querySelector('#test-input').focus();
195
- });
196
- });
197
- </script>
198
- `, config);
199
- const ionActionSheetDidPresent = await page.spyOnEvent('ionActionSheetDidPresent');
200
- const actionSheet = page.locator('ion-action-sheet');
201
- const input = page.locator('#test-input');
202
- const trigger = page.locator('#open-action-sheet');
203
- // present action sheet
204
- await trigger.click();
205
- await ionActionSheetDidPresent.next();
206
- // dismiss action sheet
207
- await actionSheet.evaluate((el) => el.dismiss());
208
- // verify focus is in correct location
209
- await expect(input).toBeFocused();
210
- });
211
178
  });
212
179
  });
@@ -100,54 +100,3 @@ describe('setRootAriaHidden()', () => {
100
100
  expect(routerOutlet.hasAttribute('aria-hidden')).toEqual(false);
101
101
  });
102
102
  });
103
- describe('aria-hidden on individual overlays', () => {
104
- it('should hide non-topmost overlays from screen readers', async () => {
105
- const page = await newSpecPage({
106
- components: [Modal],
107
- html: `
108
- <ion-modal id="one"></ion-modal>
109
- <ion-modal id="two"></ion-modal>
110
- `,
111
- });
112
- const modalOne = page.body.querySelector('ion-modal#one');
113
- const modalTwo = page.body.querySelector('ion-modal#two');
114
- await modalOne.present();
115
- await modalTwo.present();
116
- expect(modalOne.hasAttribute('aria-hidden')).toEqual(true);
117
- expect(modalTwo.hasAttribute('aria-hidden')).toEqual(false);
118
- });
119
- it('should unhide new topmost overlay from screen readers when topmost is dismissed', async () => {
120
- const page = await newSpecPage({
121
- components: [Modal],
122
- html: `
123
- <ion-modal id="one"></ion-modal>
124
- <ion-modal id="two"></ion-modal>
125
- `,
126
- });
127
- const modalOne = page.body.querySelector('ion-modal#one');
128
- const modalTwo = page.body.querySelector('ion-modal#two');
129
- await modalOne.present();
130
- await modalTwo.present();
131
- // dismiss modalTwo so that modalOne becomes the new topmost overlay
132
- await modalTwo.dismiss();
133
- expect(modalOne.hasAttribute('aria-hidden')).toEqual(false);
134
- });
135
- it('should not keep overlays hidden from screen readers if presented after being dismissed while non-topmost', async () => {
136
- const page = await newSpecPage({
137
- components: [Modal],
138
- html: `
139
- <ion-modal id="one"></ion-modal>
140
- <ion-modal id="two"></ion-modal>
141
- `,
142
- });
143
- const modalOne = page.body.querySelector('ion-modal#one');
144
- const modalTwo = page.body.querySelector('ion-modal#two');
145
- await modalOne.present();
146
- await modalTwo.present();
147
- // modalOne is not the topmost overlay at this point and is hidden from screen readers
148
- await modalOne.dismiss();
149
- // modalOne will become the topmost overlay; ensure it isn't still hidden from screen readers
150
- await modalOne.present();
151
- expect(modalOne.hasAttribute('aria-hidden')).toEqual(false);
152
- });
153
- });
package/dist/docs.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
- "timestamp": "2024-02-14T03:37:57",
2
+ "timestamp": "2024-02-14T16:02:26",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
- "version": "4.12.2",
5
+ "version": "4.12.0",
6
6
  "typescriptVersion": "5.3.3"
7
7
  },
8
8
  "components": [
@@ -806,7 +806,7 @@
806
806
  {
807
807
  "name": "role",
808
808
  "type": "string | undefined",
809
- "docs": "The role of the element that is dismissing the action sheet.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the action sheet.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
809
+ "docs": "The role of the element that is dismissing the action sheet.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the action sheet.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`."
810
810
  }
811
811
  ],
812
812
  "references": {
@@ -827,7 +827,7 @@
827
827
  {
828
828
  "name": "role",
829
829
  "type": "string | undefined",
830
- "docs": "The role of the element that is dismissing the action sheet.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the action sheet.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
830
+ "docs": "The role of the element that is dismissing the action sheet.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the action sheet.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`."
831
831
  }
832
832
  ],
833
833
  "docs": "Dismiss the action sheet overlay after it has been presented.",
@@ -838,7 +838,7 @@
838
838
  },
839
839
  {
840
840
  "name": "param",
841
- "text": "role The role of the element that is dismissing the action sheet.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the action sheet.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
841
+ "text": "role The role of the element that is dismissing the action sheet.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the action sheet.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`."
842
842
  }
843
843
  ]
844
844
  },
@@ -1637,7 +1637,7 @@
1637
1637
  {
1638
1638
  "name": "role",
1639
1639
  "type": "string | undefined",
1640
- "docs": "The role of the element that is dismissing the alert.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the alert.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
1640
+ "docs": "The role of the element that is dismissing the alert.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the alert.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`."
1641
1641
  }
1642
1642
  ],
1643
1643
  "references": {
@@ -1658,7 +1658,7 @@
1658
1658
  {
1659
1659
  "name": "role",
1660
1660
  "type": "string | undefined",
1661
- "docs": "The role of the element that is dismissing the alert.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the alert.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
1661
+ "docs": "The role of the element that is dismissing the alert.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the alert.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`."
1662
1662
  }
1663
1663
  ],
1664
1664
  "docs": "Dismiss the alert overlay after it has been presented.",
@@ -1669,7 +1669,7 @@
1669
1669
  },
1670
1670
  {
1671
1671
  "name": "param",
1672
- "text": "role The role of the element that is dismissing the alert.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the alert.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
1672
+ "text": "role The role of the element that is dismissing the alert.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the alert.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`."
1673
1673
  }
1674
1674
  ]
1675
1675
  },
@@ -7086,6 +7086,44 @@
7086
7086
  "optional": false,
7087
7087
  "required": false
7088
7088
  },
7089
+ {
7090
+ "name": "formatOptions",
7091
+ "type": "undefined | { date: DateTimeFormatOptions; time?: DateTimeFormatOptions | undefined; } | { date?: DateTimeFormatOptions | undefined; time: DateTimeFormatOptions; }",
7092
+ "complexType": {
7093
+ "original": "FormatOptions",
7094
+ "resolved": "undefined | { date: DateTimeFormatOptions; time?: DateTimeFormatOptions | undefined; } | { date?: DateTimeFormatOptions | undefined; time: DateTimeFormatOptions; }",
7095
+ "references": {
7096
+ "FormatOptions": {
7097
+ "location": "import",
7098
+ "path": "./datetime-interface",
7099
+ "id": "src/components/datetime/datetime-interface.ts::FormatOptions"
7100
+ }
7101
+ }
7102
+ },
7103
+ "mutable": false,
7104
+ "reflectToAttr": false,
7105
+ "docs": "Formatting options for dates and times.\nShould include a 'date' and/or 'time' object, each of which is of type [Intl.DateTimeFormatOptions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#options).",
7106
+ "docsTags": [],
7107
+ "values": [
7108
+ {
7109
+ "type": "undefined"
7110
+ },
7111
+ {
7112
+ "type": "{ date: DateTimeFormatOptions; time?: DateTimeFormatOptions"
7113
+ },
7114
+ {
7115
+ "type": "undefined; }"
7116
+ },
7117
+ {
7118
+ "type": "{ date?: DateTimeFormatOptions"
7119
+ },
7120
+ {
7121
+ "type": "undefined; time: DateTimeFormatOptions; }"
7122
+ }
7123
+ ],
7124
+ "optional": true,
7125
+ "required": false
7126
+ },
7089
7127
  {
7090
7128
  "name": "highlightedDates",
7091
7129
  "type": "((dateIsoString: string) => DatetimeHighlightStyle | undefined) | DatetimeHighlight[] | undefined",
@@ -13797,7 +13835,7 @@
13797
13835
  {
13798
13836
  "name": "role",
13799
13837
  "type": "string | undefined",
13800
- "docs": "The role of the element that is dismissing the loading.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the loading.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
13838
+ "docs": "The role of the element that is dismissing the loading.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the loading.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`."
13801
13839
  }
13802
13840
  ],
13803
13841
  "references": {
@@ -13818,7 +13856,7 @@
13818
13856
  {
13819
13857
  "name": "role",
13820
13858
  "type": "string | undefined",
13821
- "docs": "The role of the element that is dismissing the loading.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the loading.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
13859
+ "docs": "The role of the element that is dismissing the loading.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the loading.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`."
13822
13860
  }
13823
13861
  ],
13824
13862
  "docs": "Dismiss the loading overlay after it has been presented.",
@@ -13829,7 +13867,7 @@
13829
13867
  },
13830
13868
  {
13831
13869
  "name": "param",
13832
- "text": "role The role of the element that is dismissing the loading.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the loading.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
13870
+ "text": "role The role of the element that is dismissing the loading.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the loading.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`."
13833
13871
  }
13834
13872
  ]
13835
13873
  },
@@ -15526,7 +15564,7 @@
15526
15564
  {
15527
15565
  "name": "role",
15528
15566
  "type": "string | undefined",
15529
- "docs": "The role of the element that is dismissing the modal. For example, 'cancel' or 'backdrop'.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
15567
+ "docs": "The role of the element that is dismissing the modal. For example, 'cancel' or 'backdrop'."
15530
15568
  }
15531
15569
  ],
15532
15570
  "references": {
@@ -15551,7 +15589,7 @@
15551
15589
  {
15552
15590
  "name": "role",
15553
15591
  "type": "string | undefined",
15554
- "docs": "The role of the element that is dismissing the modal. For example, 'cancel' or 'backdrop'.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
15592
+ "docs": "The role of the element that is dismissing the modal. For example, 'cancel' or 'backdrop'."
15555
15593
  }
15556
15594
  ],
15557
15595
  "docs": "Dismiss the modal overlay after it has been presented.",
@@ -15562,7 +15600,7 @@
15562
15600
  },
15563
15601
  {
15564
15602
  "name": "param",
15565
- "text": "role The role of the element that is dismissing the modal. For example, 'cancel' or 'backdrop'.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
15603
+ "text": "role The role of the element that is dismissing the modal. For example, 'cancel' or 'backdrop'."
15566
15604
  }
15567
15605
  ]
15568
15606
  },
@@ -17787,7 +17825,7 @@
17787
17825
  {
17788
17826
  "name": "role",
17789
17827
  "type": "string | undefined",
17790
- "docs": "The role of the element that is dismissing the picker.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the picker.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
17828
+ "docs": "The role of the element that is dismissing the picker.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the picker.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`."
17791
17829
  }
17792
17830
  ],
17793
17831
  "references": {
@@ -17808,7 +17846,7 @@
17808
17846
  {
17809
17847
  "name": "role",
17810
17848
  "type": "string | undefined",
17811
- "docs": "The role of the element that is dismissing the picker.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the picker.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
17849
+ "docs": "The role of the element that is dismissing the picker.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the picker.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`."
17812
17850
  }
17813
17851
  ],
17814
17852
  "docs": "Dismiss the picker overlay after it has been presented.",
@@ -17819,7 +17857,7 @@
17819
17857
  },
17820
17858
  {
17821
17859
  "name": "param",
17822
- "text": "role The role of the element that is dismissing the picker.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the picker.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
17860
+ "text": "role The role of the element that is dismissing the picker.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the picker.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`."
17823
17861
  }
17824
17862
  ]
17825
17863
  },
@@ -18829,7 +18867,7 @@
18829
18867
  {
18830
18868
  "name": "dismissParentPopover",
18831
18869
  "type": "boolean",
18832
- "docs": "If `true`, dismissing this popover will also dismiss\na parent popover if this popover is nested. Defaults to `true`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
18870
+ "docs": "If `true`, dismissing this popover will also dismiss\na parent popover if this popover is nested. Defaults to `true`."
18833
18871
  }
18834
18872
  ],
18835
18873
  "references": {
@@ -18859,7 +18897,7 @@
18859
18897
  {
18860
18898
  "name": "dismissParentPopover",
18861
18899
  "type": "boolean",
18862
- "docs": "If `true`, dismissing this popover will also dismiss\na parent popover if this popover is nested. Defaults to `true`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
18900
+ "docs": "If `true`, dismissing this popover will also dismiss\na parent popover if this popover is nested. Defaults to `true`."
18863
18901
  }
18864
18902
  ],
18865
18903
  "docs": "Dismiss the popover overlay after it has been presented.",
@@ -18874,7 +18912,7 @@
18874
18912
  },
18875
18913
  {
18876
18914
  "name": "param",
18877
- "text": "dismissParentPopover If `true`, dismissing this popover will also dismiss\na parent popover if this popover is nested. Defaults to `true`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
18915
+ "text": "dismissParentPopover If `true`, dismissing this popover will also dismiss\na parent popover if this popover is nested. Defaults to `true`."
18878
18916
  }
18879
18917
  ]
18880
18918
  },
@@ -28180,7 +28218,7 @@
28180
28218
  {
28181
28219
  "name": "role",
28182
28220
  "type": "string | undefined",
28183
- "docs": "The role of the element that is dismissing the toast.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the toast.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
28221
+ "docs": "The role of the element that is dismissing the toast.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the toast.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`."
28184
28222
  }
28185
28223
  ],
28186
28224
  "references": {
@@ -28206,7 +28244,7 @@
28206
28244
  {
28207
28245
  "name": "role",
28208
28246
  "type": "string | undefined",
28209
- "docs": "The role of the element that is dismissing the toast.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the toast.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
28247
+ "docs": "The role of the element that is dismissing the toast.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the toast.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`."
28210
28248
  }
28211
28249
  ],
28212
28250
  "docs": "Dismiss the toast overlay after it has been presented.",
@@ -28217,7 +28255,7 @@
28217
28255
  },
28218
28256
  {
28219
28257
  "name": "param",
28220
- "text": "role The role of the element that is dismissing the toast.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the toast.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`.\n\nThis is a no-op if the overlay has not been presented yet. If you want\nto remove an overlay from the DOM that was never presented, use the\n[remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method."
28258
+ "text": "role The role of the element that is dismissing the toast.\nThis can be useful in a button handler for determining which button was\nclicked to dismiss the toast.\nSome examples include: ``\"cancel\"`, `\"destructive\"`, \"selected\"`, and `\"backdrop\"`."
28221
28259
  }
28222
28260
  ]
28223
28261
  },
@@ -29369,6 +29407,11 @@
29369
29407
  "docstring": "",
29370
29408
  "path": "src/components/content/content-interface.ts"
29371
29409
  },
29410
+ "src/components/datetime/datetime-interface.ts::FormatOptions": {
29411
+ "declaration": "export type FormatOptions =\n | {\n date: Intl.DateTimeFormatOptions;\n time?: Intl.DateTimeFormatOptions;\n }\n | {\n date?: Intl.DateTimeFormatOptions;\n time: Intl.DateTimeFormatOptions;\n };",
29412
+ "docstring": "",
29413
+ "path": "src/components/datetime/datetime-interface.ts"
29414
+ },
29372
29415
  "src/components/datetime/datetime-interface.ts::DatetimePresentation": {
29373
29416
  "declaration": "export type DatetimePresentation = 'date-time' | 'time-date' | 'date' | 'time' | 'month' | 'year' | 'month-year';",
29374
29417
  "docstring": "",
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { i as initialize } from './ionic-global-ad9a1810.js';
4
+ import { i as initialize } from './ionic-global-778b7863.js';
5
5
 
6
6
  const globalScripts = initialize;
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { w as writeTask } from './index-4c30cddd.js';
4
+ import { w as writeTask } from './index-73881b51.js';
5
5
  import { h as hapticSelectionEnd, a as hapticSelectionStart, b as hapticSelectionChanged } from './haptic-554688a5.js';
6
6
  import { createGesture } from './index-2cf77112.js';
7
7
 
@@ -832,7 +832,25 @@ const getFormattedDayPeriod = (dayPeriod) => {
832
832
  }
833
833
  return dayPeriod.toUpperCase();
834
834
  };
835
- const getLocalizedTime = (locale, refParts, hourCycle) => {
835
+ /**
836
+ * Including time zone options may lead to the rendered text showing a
837
+ * different time from what was selected in the Datetime, which could cause
838
+ * confusion.
839
+ */
840
+ const stripTimeZone = (formatOptions) => {
841
+ /**
842
+ * We do not want to display the time zone name
843
+ */
844
+ delete formatOptions.timeZoneName;
845
+ /**
846
+ * Setting the time zone to UTC ensures that the value shown is always the
847
+ * same as what was selected and safeguards against older Safari bugs with
848
+ * Intl.DateTimeFormat.
849
+ */
850
+ formatOptions.timeZone = 'UTC';
851
+ return formatOptions;
852
+ };
853
+ const getLocalizedTime = (locale, refParts, hourCycle, formatOptions) => {
836
854
  const timeParts = {
837
855
  hour: refParts.hour,
838
856
  minute: refParts.minute,
@@ -840,28 +858,17 @@ const getLocalizedTime = (locale, refParts, hourCycle) => {
840
858
  if (timeParts.hour === undefined || timeParts.minute === undefined) {
841
859
  return 'Invalid Time';
842
860
  }
843
- return new Intl.DateTimeFormat(locale, {
844
- hour: 'numeric',
845
- minute: 'numeric',
846
- /**
847
- * Setting the timeZone to UTC prevents
848
- * new Intl.DatetimeFormat from subtracting
849
- * the user's current timezone offset
850
- * when formatting the time.
851
- */
852
- timeZone: 'UTC',
861
+ const defaultFormatOptions = { hour: 'numeric', minute: 'numeric' };
862
+ /**
863
+ * If any options are provided, don't use any of the defaults.
864
+ */
865
+ const options = stripTimeZone(formatOptions !== null && formatOptions !== void 0 ? formatOptions : defaultFormatOptions);
866
+ return new Intl.DateTimeFormat(locale, Object.assign(Object.assign({}, options), {
853
867
  /**
854
868
  * We use hourCycle here instead of hour12 due to:
855
869
  * https://bugs.chromium.org/p/chromium/issues/detail?id=1347316&q=hour12&can=2
856
870
  */
857
- hourCycle,
858
- /**
859
- * Setting Z at the end indicates that this
860
- * date string is in the UTC time zone. This
861
- * prevents new Date from adding the time zone
862
- * offset when getting the ISO string.
863
- */
864
- }).format(new Date(convertDataToISO(Object.assign({
871
+ hourCycle })).format(new Date(convertDataToISO(Object.assign({
865
872
  /**
866
873
  * JS uses a simplified ISO 8601 format which allows for
867
874
  * date-only formats and date-time formats, but not
@@ -947,14 +954,6 @@ const generateDayAriaLabel = (locale, today, refParts) => {
947
954
  */
948
955
  return today ? `Today, ${labelString}` : labelString;
949
956
  };
950
- /**
951
- * Gets the day of the week, month, and day
952
- * Used for the header in MD mode.
953
- */
954
- const getMonthAndDay = (locale, refParts) => {
955
- const date = getNormalizedDate(refParts);
956
- return new Intl.DateTimeFormat(locale, { weekday: 'short', month: 'short', day: 'numeric', timeZone: 'UTC' }).format(date);
957
- };
958
957
  /**
959
958
  * Given a locale and a date object,
960
959
  * return a formatted string that includes
@@ -965,15 +964,6 @@ const getMonthAndYear = (locale, refParts) => {
965
964
  const date = getNormalizedDate(refParts);
966
965
  return new Intl.DateTimeFormat(locale, { month: 'long', year: 'numeric', timeZone: 'UTC' }).format(date);
967
966
  };
968
- /**
969
- * Given a locale and a date object,
970
- * return a formatted string that includes
971
- * the short month, numeric day, and full year.
972
- * Example: Apr 22, 2021
973
- */
974
- const getMonthDayAndYear = (locale, refParts) => {
975
- return getLocalizedDateTime(locale, refParts, { month: 'short', day: 'numeric', year: 'numeric' });
976
- };
977
967
  /**
978
968
  * Given a locale and a date object,
979
969
  * return a formatted string that includes
@@ -1023,7 +1013,7 @@ const getNormalizedDate = (refParts) => {
1023
1013
  */
1024
1014
  const getLocalizedDateTime = (locale, refParts, options) => {
1025
1015
  const date = getNormalizedDate(refParts);
1026
- return getDateTimeFormat(locale, options).format(date);
1016
+ return getDateTimeFormat(locale, stripTimeZone(options)).format(date);
1027
1017
  };
1028
1018
  /**
1029
1019
  * Given a locale, DatetimeParts, and options
@@ -1622,4 +1612,4 @@ const getTimeColumnsData = (locale, refParts, hourCycle, minParts, maxParts, all
1622
1612
  };
1623
1613
  };
1624
1614
 
1625
- export { getNumDaysInMonth as A, getCombinedDateColumnData as B, getMonthColumnData as C, getDayColumnData as D, getYearColumnData as E, isMonthFirstLocale as F, getTimeColumnsData as G, isLocaleDayPeriodRTL as H, getDaysOfWeek as I, getMonthAndYear as J, getDaysOfMonth as K, getHourCycle as L, getLocalizedTime as M, getMonthAndDay as N, formatValue as O, clampDate as P, parseAmPm as Q, calculateHourFromAMPM as R, getLocalizedDateTime as S, getMonthDayAndYear as T, getDay as a, isAfter as b, isSameDay as c, getPreviousMonth as d, getNextMonth as e, getPartsFromCalendarDay as f, generateDayAriaLabel as g, getNextYear as h, isBefore as i, getPreviousYear as j, getEndOfWeek as k, getStartOfWeek as l, getPreviousDay as m, getNextDay as n, getPreviousWeek as o, getNextWeek as p, parseMinParts as q, parseMaxParts as r, parseDate as s, convertToArrayOfNumbers as t, convertDataToISO as u, validateParts as v, warnIfValueOutOfBounds as w, getToday as x, getClosestValidDate as y, generateMonths as z };
1615
+ export { getNumDaysInMonth as A, getCombinedDateColumnData as B, getMonthColumnData as C, getDayColumnData as D, getYearColumnData as E, isMonthFirstLocale as F, getTimeColumnsData as G, isLocaleDayPeriodRTL as H, getDaysOfWeek as I, getMonthAndYear as J, getDaysOfMonth as K, getHourCycle as L, getLocalizedTime as M, getLocalizedDateTime as N, formatValue as O, clampDate as P, parseAmPm as Q, calculateHourFromAMPM as R, getDay as a, isAfter as b, isSameDay as c, getPreviousMonth as d, getNextMonth as e, getPartsFromCalendarDay as f, generateDayAriaLabel as g, getNextYear as h, isBefore as i, getPreviousYear as j, getEndOfWeek as k, getStartOfWeek as l, getPreviousDay as m, getNextDay as n, getPreviousWeek as o, getNextWeek as p, parseMinParts as q, parseMaxParts as r, parseDate as s, convertToArrayOfNumbers as t, convertDataToISO as u, validateParts as v, warnIfValueOutOfBounds as w, getToday as x, getClosestValidDate as y, generateMonths as z };
@@ -2,8 +2,8 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { w as win } from './index-a5d50daf.js';
5
- import { c as config } from './ionic-global-ad9a1810.js';
6
- import './index-4c30cddd.js';
5
+ import { c as config } from './ionic-global-778b7863.js';
6
+ import './index-73881b51.js';
7
7
 
8
8
  /**
9
9
  * CloseWatcher is a newer API that lets
@@ -2,10 +2,10 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { d as doc } from './index-a5d50daf.js';
5
- import { MENU_BACK_BUTTON_PRIORITY } from './hardware-back-button-b410a047.js';
5
+ import { MENU_BACK_BUTTON_PRIORITY } from './hardware-back-button-f42b9c80.js';
6
6
  import { p as printIonWarning } from './index-9b0d46f4.js';
7
7
  import { c as componentOnReady } from './helpers-c0b9ca37.js';
8
- import { b as getIonMode } from './ionic-global-ad9a1810.js';
8
+ import { b as getIonMode } from './ionic-global-778b7863.js';
9
9
  import { c as createAnimation } from './animation-60dbdd13.js';
10
10
 
11
11
  /**
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { w as writeTask, B as Build } from './index-4c30cddd.js';
4
+ import { w as writeTask, B as Build } from './index-73881b51.js';
5
5
  import { r as raf } from './helpers-c0b9ca37.js';
6
6
 
7
7
  const LIFECYCLE_WILL_ENTER = 'ionViewWillEnter';
@@ -10,8 +10,8 @@ const LIFECYCLE_WILL_LEAVE = 'ionViewWillLeave';
10
10
  const LIFECYCLE_DID_LEAVE = 'ionViewDidLeave';
11
11
  const LIFECYCLE_WILL_UNLOAD = 'ionViewWillUnload';
12
12
 
13
- const iosTransitionAnimation = () => import('./ios.transition-b76c7020.js');
14
- const mdTransitionAnimation = () => import('./md.transition-564937a7.js');
13
+ const iosTransitionAnimation = () => import('./ios.transition-7ff7381d.js');
14
+ const mdTransitionAnimation = () => import('./md.transition-28a9a26b.js');
15
15
  // TODO(FW-2832): types
16
16
  const transition = (opts) => {
17
17
  return new Promise((resolve, reject) => {
@@ -1388,7 +1388,8 @@ const patch = (oldVNode, newVNode, isInitialRender = false) => {
1388
1388
  isSvgMode = tag === 'svg' ? true : tag === 'foreignObject' ? false : isSvgMode;
1389
1389
  }
1390
1390
  {
1391
- if (tag === 'slot' && !useNativeShadowDom) ;
1391
+ if (tag === 'slot')
1392
+ ;
1392
1393
  else {
1393
1394
  // either this is the first render of an element OR it's an update
1394
1395
  // AND we already know it's possible it could have changed
@@ -1675,9 +1676,9 @@ const renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
1675
1676
  {
1676
1677
  scopeId = hostElm['s-sc'];
1677
1678
  }
1678
- useNativeShadowDom = (cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */) !== 0;
1679
1679
  {
1680
1680
  contentRef = hostElm['s-cr'];
1681
+ useNativeShadowDom = (cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */) !== 0;
1681
1682
  // always reset
1682
1683
  checkSlotFallbackVisibility = false;
1683
1684
  }
@@ -2564,29 +2565,25 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
2564
2565
  }
2565
2566
  });
2566
2567
  });
2567
- // Only bother generating CSS if we have components
2568
- // TODO(STENCIL-1118): Add test cases for CSS content based on conditionals
2569
- if (cmpTags.length > 0) {
2570
- // Add styles for `slot-fb` elements if any of our components are using slots outside the Shadow DOM
2571
- if (hasSlotRelocation) {
2572
- dataStyles.innerHTML += SLOT_FB_CSS;
2573
- }
2574
- // Add hydration styles
2575
- {
2576
- dataStyles.innerHTML += cmpTags + HYDRATED_CSS;
2577
- }
2578
- // If we have styles, add them to the DOM
2579
- if (dataStyles.innerHTML.length) {
2580
- dataStyles.setAttribute('data-styles', '');
2581
- // Apply CSP nonce to the style tag if it exists
2582
- const nonce = (_a = plt.$nonce$) !== null && _a !== void 0 ? _a : queryNonceMetaTagContent(doc);
2583
- if (nonce != null) {
2584
- dataStyles.setAttribute('nonce', nonce);
2585
- }
2586
- // Insert the styles into the document head
2587
- // NOTE: this _needs_ to happen last so we can ensure the nonce (and other attributes) are applied
2588
- head.insertBefore(dataStyles, metaCharset ? metaCharset.nextSibling : head.firstChild);
2589
- }
2568
+ // Add styles for `slot-fb` elements if any of our components are using slots outside the Shadow DOM
2569
+ if (hasSlotRelocation) {
2570
+ dataStyles.innerHTML += SLOT_FB_CSS;
2571
+ }
2572
+ // Add hydration styles
2573
+ {
2574
+ dataStyles.innerHTML += cmpTags + HYDRATED_CSS;
2575
+ }
2576
+ // If we have styles, add them to the DOM
2577
+ if (dataStyles.innerHTML.length) {
2578
+ dataStyles.setAttribute('data-styles', '');
2579
+ // Apply CSP nonce to the style tag if it exists
2580
+ const nonce = (_a = plt.$nonce$) !== null && _a !== void 0 ? _a : queryNonceMetaTagContent(doc);
2581
+ if (nonce != null) {
2582
+ dataStyles.setAttribute('nonce', nonce);
2583
+ }
2584
+ // Insert the styles into the document head
2585
+ // NOTE: this _needs_ to happen last so we can ensure the nonce (and other attributes) are applied
2586
+ head.insertBefore(dataStyles, metaCharset ? metaCharset.nextSibling : head.firstChild);
2590
2587
  }
2591
2588
  // Process deferred connectedCallbacks now all components have been registered
2592
2589
  isBootstrapping = false;