@ionic/core 7.7.5 → 7.8.1-dev.11710449785.14ebd5a0

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 (326) hide show
  1. package/components/data.js +23 -38
  2. package/components/ion-datetime-button.js +11 -10
  3. package/components/ion-datetime.js +75 -12
  4. package/components/ion-fab-button.js +2 -2
  5. package/components/ion-fab-list.js +2 -2
  6. package/components/ion-fab.js +2 -2
  7. package/components/ion-footer.js +2 -2
  8. package/components/ion-grid.js +2 -2
  9. package/components/ion-header.js +2 -2
  10. package/components/ion-img.js +1 -1
  11. package/components/ion-infinite-scroll-content.js +2 -2
  12. package/components/ion-infinite-scroll.js +1 -1
  13. package/components/ion-item-divider.js +2 -2
  14. package/components/ion-item-group.js +1 -1
  15. package/components/ion-item-option.js +2 -2
  16. package/components/ion-item-options.js +1 -1
  17. package/components/ion-item-sliding.js +1 -1
  18. package/components/ion-loading.js +2 -2
  19. package/components/ion-menu-button.js +2 -2
  20. package/components/ion-menu-toggle.js +2 -2
  21. package/components/ion-menu.js +2 -2
  22. package/components/ion-modal.js +3 -3
  23. package/components/ion-nav-link.js +1 -1
  24. package/components/ion-nav.js +1 -1
  25. package/components/ion-picker.js +2 -2
  26. package/components/ion-progress-bar.js +1 -1
  27. package/components/ion-refresher-content.js +1 -1
  28. package/components/ion-refresher.js +1 -1
  29. package/components/ion-reorder-group.js +1 -1
  30. package/components/ion-reorder.js +1 -1
  31. package/components/ion-router-link.js +2 -2
  32. package/components/ion-router-outlet.js +1 -1
  33. package/components/ion-row.js +1 -1
  34. package/components/ion-searchbar.js +34 -5
  35. package/components/ion-segment-button.js +3 -3
  36. package/components/ion-segment.js +2 -2
  37. package/components/ion-select-option.js +1 -1
  38. package/components/ion-skeleton-text.js +2 -2
  39. package/components/ion-split-pane.js +2 -2
  40. package/components/ion-tab-bar.js +2 -2
  41. package/components/ion-tab-button.js +2 -2
  42. package/components/ion-tab.js +2 -2
  43. package/components/ion-tabs.js +1 -1
  44. package/components/ion-text.js +2 -2
  45. package/components/ion-thumbnail.js +1 -1
  46. package/components/ion-title.js +2 -2
  47. package/components/ion-toast.js +2 -2
  48. package/components/ion-toolbar.js +2 -2
  49. package/components/label.js +1 -1
  50. package/components/list-header.js +2 -2
  51. package/components/list.js +1 -1
  52. package/components/note.js +2 -2
  53. package/components/picker-column-internal.js +8 -4
  54. package/components/picker-column.js +2 -2
  55. package/components/picker-internal.js +2 -2
  56. package/components/popover.js +2 -2
  57. package/components/radio-group.js +1 -1
  58. package/components/ripple-effect.js +1 -1
  59. package/components/select-popover.js +1 -1
  60. package/components/spinner.js +1 -1
  61. package/dist/cjs/{data-a5109f09.js → data-4487a815.js} +22 -39
  62. package/dist/cjs/ion-app_8.cjs.entry.js +9 -9
  63. package/dist/cjs/ion-avatar_3.cjs.entry.js +1 -1
  64. package/dist/cjs/ion-col_3.cjs.entry.js +3 -3
  65. package/dist/cjs/ion-datetime-button.cjs.entry.js +11 -10
  66. package/dist/cjs/ion-datetime_3.cjs.entry.js +76 -16
  67. package/dist/cjs/ion-fab_3.cjs.entry.js +6 -6
  68. package/dist/cjs/ion-img.cjs.entry.js +1 -1
  69. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +3 -3
  70. package/dist/cjs/ion-item-option_3.cjs.entry.js +4 -4
  71. package/dist/cjs/ion-item_8.cjs.entry.js +11 -11
  72. package/dist/cjs/ion-loading.cjs.entry.js +2 -2
  73. package/dist/cjs/ion-menu_3.cjs.entry.js +6 -6
  74. package/dist/cjs/ion-modal.cjs.entry.js +3 -3
  75. package/dist/cjs/ion-nav_2.cjs.entry.js +2 -2
  76. package/dist/cjs/ion-picker-column-internal.cjs.entry.js +8 -4
  77. package/dist/cjs/ion-picker-internal.cjs.entry.js +2 -2
  78. package/dist/cjs/ion-popover.cjs.entry.js +2 -2
  79. package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
  80. package/dist/cjs/ion-radio_2.cjs.entry.js +1 -1
  81. package/dist/cjs/ion-refresher_2.cjs.entry.js +2 -2
  82. package/dist/cjs/ion-reorder_2.cjs.entry.js +2 -2
  83. package/dist/cjs/ion-ripple-effect.cjs.entry.js +1 -1
  84. package/dist/cjs/ion-route_4.cjs.entry.js +2 -2
  85. package/dist/cjs/ion-searchbar.cjs.entry.js +28 -4
  86. package/dist/cjs/ion-segment_2.cjs.entry.js +5 -5
  87. package/dist/cjs/ion-select_3.cjs.entry.js +2 -2
  88. package/dist/cjs/ion-spinner.cjs.entry.js +1 -1
  89. package/dist/cjs/ion-split-pane.cjs.entry.js +2 -2
  90. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +4 -4
  91. package/dist/cjs/ion-tab_2.cjs.entry.js +3 -3
  92. package/dist/cjs/ion-text.cjs.entry.js +2 -2
  93. package/dist/cjs/ion-toast.cjs.entry.js +2 -2
  94. package/dist/cjs/ionic.cjs.js +1 -1
  95. package/dist/cjs/loader.cjs.js +1 -1
  96. package/dist/collection/components/alert/test/a11y/alert.e2e.js +4 -0
  97. package/dist/collection/components/datetime/datetime.js +56 -12
  98. package/dist/collection/components/datetime/test/basic/datetime.e2e.js +77 -0
  99. package/dist/collection/components/datetime/test/format.spec.js +65 -15
  100. package/dist/collection/components/datetime/utils/format.js +24 -37
  101. package/dist/collection/components/datetime/utils/validate.js +45 -0
  102. package/dist/collection/components/datetime-button/datetime-button.js +11 -10
  103. package/dist/collection/components/datetime-button/test/basic/datetime-button.e2e.js +65 -0
  104. package/dist/collection/components/fab/fab.js +2 -2
  105. package/dist/collection/components/fab-button/fab-button.js +2 -2
  106. package/dist/collection/components/fab-list/fab-list.js +2 -2
  107. package/dist/collection/components/footer/footer.js +2 -2
  108. package/dist/collection/components/grid/grid.js +2 -2
  109. package/dist/collection/components/header/header.js +2 -2
  110. package/dist/collection/components/img/img.js +1 -1
  111. package/dist/collection/components/infinite-scroll/infinite-scroll.js +1 -1
  112. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +2 -2
  113. package/dist/collection/components/item-divider/item-divider.js +2 -2
  114. package/dist/collection/components/item-group/item-group.js +1 -1
  115. package/dist/collection/components/item-option/item-option.js +2 -2
  116. package/dist/collection/components/item-options/item-options.js +1 -1
  117. package/dist/collection/components/item-sliding/item-sliding.js +1 -1
  118. package/dist/collection/components/label/label.js +1 -1
  119. package/dist/collection/components/list/list.js +1 -1
  120. package/dist/collection/components/list-header/list-header.js +2 -2
  121. package/dist/collection/components/loading/loading.js +2 -2
  122. package/dist/collection/components/menu/menu.js +2 -2
  123. package/dist/collection/components/menu-button/menu-button.js +2 -2
  124. package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
  125. package/dist/collection/components/modal/modal.js +3 -3
  126. package/dist/collection/components/nav/nav.js +1 -1
  127. package/dist/collection/components/nav-link/nav-link.js +1 -1
  128. package/dist/collection/components/note/note.js +2 -2
  129. package/dist/collection/components/picker/picker.js +2 -2
  130. package/dist/collection/components/picker-column/picker-column.js +2 -2
  131. package/dist/collection/components/picker-column-internal/picker-column-internal.js +8 -4
  132. package/dist/collection/components/picker-internal/picker-internal.js +2 -2
  133. package/dist/collection/components/popover/popover.js +2 -2
  134. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  135. package/dist/collection/components/radio-group/radio-group.js +1 -1
  136. package/dist/collection/components/refresher/refresher.js +1 -1
  137. package/dist/collection/components/refresher-content/refresher-content.js +1 -1
  138. package/dist/collection/components/reorder/reorder.js +1 -1
  139. package/dist/collection/components/reorder-group/reorder-group.js +1 -1
  140. package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
  141. package/dist/collection/components/router-link/router-link.js +2 -2
  142. package/dist/collection/components/router-outlet/router-outlet.js +1 -1
  143. package/dist/collection/components/row/row.js +1 -1
  144. package/dist/collection/components/searchbar/searchbar.js +84 -5
  145. package/dist/collection/components/searchbar/test/searchbar.spec.js +20 -2
  146. package/dist/collection/components/segment/segment.js +2 -2
  147. package/dist/collection/components/segment-button/segment-button.js +3 -3
  148. package/dist/collection/components/select-option/select-option.js +1 -1
  149. package/dist/collection/components/select-popover/select-popover.js +1 -1
  150. package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
  151. package/dist/collection/components/spinner/spinner.js +1 -1
  152. package/dist/collection/components/split-pane/split-pane.js +2 -2
  153. package/dist/collection/components/tab/tab.js +2 -2
  154. package/dist/collection/components/tab-bar/tab-bar.js +2 -2
  155. package/dist/collection/components/tab-button/tab-button.js +2 -2
  156. package/dist/collection/components/tabs/tabs.js +1 -1
  157. package/dist/collection/components/text/text.js +2 -2
  158. package/dist/collection/components/thumbnail/thumbnail.js +1 -1
  159. package/dist/collection/components/title/title.js +2 -2
  160. package/dist/collection/components/toast/toast.js +2 -2
  161. package/dist/collection/components/toggle/toggle.js +1 -1
  162. package/dist/collection/components/toolbar/toolbar.js +2 -2
  163. package/dist/docs.json +114 -2
  164. package/dist/esm/{data-0f3ab200.js → data-bb424ba8.js} +23 -38
  165. package/dist/esm/ion-app_8.entry.js +9 -9
  166. package/dist/esm/ion-avatar_3.entry.js +1 -1
  167. package/dist/esm/ion-col_3.entry.js +3 -3
  168. package/dist/esm/ion-datetime-button.entry.js +11 -10
  169. package/dist/esm/ion-datetime_3.entry.js +76 -16
  170. package/dist/esm/ion-fab_3.entry.js +6 -6
  171. package/dist/esm/ion-img.entry.js +1 -1
  172. package/dist/esm/ion-infinite-scroll_2.entry.js +3 -3
  173. package/dist/esm/ion-item-option_3.entry.js +4 -4
  174. package/dist/esm/ion-item_8.entry.js +11 -11
  175. package/dist/esm/ion-loading.entry.js +2 -2
  176. package/dist/esm/ion-menu_3.entry.js +6 -6
  177. package/dist/esm/ion-modal.entry.js +3 -3
  178. package/dist/esm/ion-nav_2.entry.js +2 -2
  179. package/dist/esm/ion-picker-column-internal.entry.js +8 -4
  180. package/dist/esm/ion-picker-internal.entry.js +2 -2
  181. package/dist/esm/ion-popover.entry.js +2 -2
  182. package/dist/esm/ion-progress-bar.entry.js +1 -1
  183. package/dist/esm/ion-radio_2.entry.js +1 -1
  184. package/dist/esm/ion-refresher_2.entry.js +2 -2
  185. package/dist/esm/ion-reorder_2.entry.js +2 -2
  186. package/dist/esm/ion-ripple-effect.entry.js +1 -1
  187. package/dist/esm/ion-route_4.entry.js +2 -2
  188. package/dist/esm/ion-searchbar.entry.js +29 -5
  189. package/dist/esm/ion-segment_2.entry.js +5 -5
  190. package/dist/esm/ion-select_3.entry.js +2 -2
  191. package/dist/esm/ion-spinner.entry.js +1 -1
  192. package/dist/esm/ion-split-pane.entry.js +2 -2
  193. package/dist/esm/ion-tab-bar_2.entry.js +4 -4
  194. package/dist/esm/ion-tab_2.entry.js +3 -3
  195. package/dist/esm/ion-text.entry.js +2 -2
  196. package/dist/esm/ion-toast.entry.js +2 -2
  197. package/dist/esm/ionic.js +1 -1
  198. package/dist/esm/loader.js +1 -1
  199. package/dist/esm-es5/data-bb424ba8.js +4 -0
  200. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  201. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  202. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  203. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  204. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  205. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  206. package/dist/esm-es5/ion-img.entry.js +1 -1
  207. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  208. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  209. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  210. package/dist/esm-es5/ion-loading.entry.js +1 -1
  211. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  212. package/dist/esm-es5/ion-modal.entry.js +1 -1
  213. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  214. package/dist/esm-es5/ion-picker-column-internal.entry.js +1 -1
  215. package/dist/esm-es5/ion-picker-internal.entry.js +1 -1
  216. package/dist/esm-es5/ion-popover.entry.js +1 -1
  217. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  218. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  219. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  220. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  221. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  222. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  223. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  224. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  225. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  226. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  227. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  228. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  229. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  230. package/dist/esm-es5/ion-text.entry.js +1 -1
  231. package/dist/esm-es5/ion-toast.entry.js +1 -1
  232. package/dist/esm-es5/ionic.js +1 -1
  233. package/dist/esm-es5/loader.js +1 -1
  234. package/dist/html.html-data.json +13 -1
  235. package/dist/ionic/ionic.esm.js +1 -1
  236. package/dist/ionic/{p-08a5d8eb.entry.js → p-0188824c.entry.js} +1 -1
  237. package/dist/ionic/{p-ba385465.system.entry.js → p-079817f9.system.entry.js} +1 -1
  238. package/dist/ionic/{p-b13b7128.system.entry.js → p-0971ee6d.system.entry.js} +1 -1
  239. package/dist/ionic/{p-db6a5af3.system.entry.js → p-0dbbf52a.system.entry.js} +1 -1
  240. package/dist/ionic/{p-f5bc27d6.system.entry.js → p-0eb111e7.system.entry.js} +1 -1
  241. package/dist/ionic/{p-996922b4.system.entry.js → p-0ef05e5d.system.entry.js} +1 -1
  242. package/dist/ionic/{p-86438241.system.entry.js → p-0fa9c8f7.system.entry.js} +1 -1
  243. package/dist/ionic/{p-8f466a2c.system.entry.js → p-11d480a7.system.entry.js} +1 -1
  244. package/dist/ionic/{p-f9f7b24a.system.entry.js → p-1561982b.system.entry.js} +1 -1
  245. package/dist/ionic/{p-45ea497f.entry.js → p-15ced5aa.entry.js} +1 -1
  246. package/dist/ionic/p-2055bdba.entry.js +4 -0
  247. package/dist/ionic/{p-cf88a096.system.entry.js → p-25f56cd7.system.entry.js} +1 -1
  248. package/dist/ionic/{p-6a0a3e18.system.entry.js → p-2791b018.system.entry.js} +1 -1
  249. package/dist/ionic/{p-e59803ca.entry.js → p-2b78245e.entry.js} +1 -1
  250. package/dist/ionic/{p-72c8ca65.system.entry.js → p-2bc25d50.system.entry.js} +2 -2
  251. package/dist/ionic/{p-479402e1.entry.js → p-2c94053b.entry.js} +1 -1
  252. package/dist/ionic/{p-9074a84e.system.entry.js → p-2d88f64e.system.entry.js} +1 -1
  253. package/dist/ionic/p-2fec06f2.entry.js +4 -0
  254. package/dist/ionic/p-327f8d66.entry.js +4 -0
  255. package/dist/ionic/p-3789920e.js +4 -0
  256. package/dist/ionic/{p-c7d8cec2.entry.js → p-3b85bb44.entry.js} +1 -1
  257. package/dist/ionic/{p-059fcb53.system.entry.js → p-43438ce1.system.entry.js} +2 -2
  258. package/dist/ionic/p-45362829.system.entry.js +4 -0
  259. package/dist/ionic/p-46ca8bb1.entry.js +4 -0
  260. package/dist/ionic/{p-08410e29.system.entry.js → p-4e74f845.system.entry.js} +1 -1
  261. package/dist/ionic/{p-7b809cc0.system.entry.js → p-4f73a163.system.entry.js} +1 -1
  262. package/dist/ionic/{p-345e2dac.system.entry.js → p-51dd4f12.system.entry.js} +1 -1
  263. package/dist/ionic/{p-5d8fca58.entry.js → p-51ebe7c6.entry.js} +1 -1
  264. package/dist/ionic/{p-cfe767f1.entry.js → p-526258be.entry.js} +1 -1
  265. package/dist/ionic/{p-fef4907e.system.entry.js → p-58b335fd.system.entry.js} +1 -1
  266. package/dist/ionic/{p-3377236e.entry.js → p-5e3e64b5.entry.js} +1 -1
  267. package/dist/ionic/{p-b9b8e462.system.entry.js → p-5f3fc112.system.entry.js} +1 -1
  268. package/dist/ionic/p-60c9fd9e.system.js +1 -1
  269. package/dist/ionic/{p-3ca0c7f2.entry.js → p-62f36e54.entry.js} +1 -1
  270. package/dist/ionic/{p-e8d46a2e.entry.js → p-65409f36.entry.js} +1 -1
  271. package/dist/ionic/p-6a110cb2.entry.js +4 -0
  272. package/dist/ionic/p-6ec0c1ee.system.entry.js +4 -0
  273. package/dist/ionic/{p-4830fae8.system.entry.js → p-7126abb8.system.entry.js} +1 -1
  274. package/dist/ionic/{p-b0ccd173.system.entry.js → p-7186eb03.system.entry.js} +1 -1
  275. package/dist/ionic/{p-6b5630b9.system.entry.js → p-7c91266e.system.entry.js} +1 -1
  276. package/dist/ionic/{p-f5dce0c6.entry.js → p-80808af6.entry.js} +1 -1
  277. package/dist/ionic/p-8a1b0abb.system.js +4 -0
  278. package/dist/ionic/{p-33dd4d0b.system.entry.js → p-8a21c7b4.system.entry.js} +1 -1
  279. package/dist/ionic/{p-09fc100a.entry.js → p-8be61e52.entry.js} +1 -1
  280. package/dist/ionic/{p-e4bf5d87.system.entry.js → p-8e127a08.system.entry.js} +1 -1
  281. package/dist/ionic/{p-0e7c8334.system.entry.js → p-966a5ae4.system.entry.js} +1 -1
  282. package/dist/ionic/{p-ae3aeb39.entry.js → p-98bac954.entry.js} +1 -1
  283. package/dist/ionic/{p-231a3636.system.entry.js → p-a53d569a.system.entry.js} +1 -1
  284. package/dist/ionic/{p-3270e211.entry.js → p-a7959307.entry.js} +1 -1
  285. package/dist/ionic/{p-7f865669.entry.js → p-ab7c79d9.entry.js} +1 -1
  286. package/dist/ionic/p-b7aec03b.entry.js +4 -0
  287. package/dist/ionic/p-bbb655e2.system.entry.js +4 -0
  288. package/dist/ionic/{p-ca935c03.entry.js → p-bc68a14a.entry.js} +1 -1
  289. package/dist/ionic/{p-36a80e5c.entry.js → p-c0d7aace.entry.js} +1 -1
  290. package/dist/ionic/{p-04721936.system.entry.js → p-c1a58ab3.system.entry.js} +1 -1
  291. package/dist/ionic/{p-84283745.entry.js → p-c63a69cd.entry.js} +1 -1
  292. package/dist/ionic/{p-8ce6d551.entry.js → p-c99bfffe.entry.js} +1 -1
  293. package/dist/ionic/{p-c6f9f608.entry.js → p-d637b857.entry.js} +1 -1
  294. package/dist/ionic/{p-09b047e0.entry.js → p-dd5a925f.entry.js} +1 -1
  295. package/dist/ionic/{p-c711b464.entry.js → p-deb09b58.entry.js} +1 -1
  296. package/dist/ionic/{p-95c2fa04.entry.js → p-e2236935.entry.js} +1 -1
  297. package/dist/ionic/{p-abcc9680.entry.js → p-e631799d.entry.js} +1 -1
  298. package/dist/ionic/{p-e155f315.system.entry.js → p-e6c115f6.system.entry.js} +1 -1
  299. package/dist/ionic/{p-8c74bd0e.system.entry.js → p-e7bdaac8.system.entry.js} +2 -2
  300. package/dist/ionic/p-f520f6a5.entry.js +4 -0
  301. package/dist/ionic/p-f89380a5.system.entry.js +4 -0
  302. package/dist/ionic/p-f98bd898.entry.js +4 -0
  303. package/dist/types/components/datetime/datetime-interface.d.ts +10 -0
  304. package/dist/types/components/datetime/datetime.d.ts +10 -1
  305. package/dist/types/components/datetime/utils/format.d.ts +7 -13
  306. package/dist/types/components/datetime/utils/validate.d.ts +8 -0
  307. package/dist/types/components/searchbar/searchbar.d.ts +38 -0
  308. package/dist/types/components/toggle/toggle.d.ts +1 -1
  309. package/dist/types/components.d.ts +36 -4
  310. package/hydrate/index.js +230 -154
  311. package/package.json +1 -1
  312. package/dist/esm-es5/data-0f3ab200.js +0 -4
  313. package/dist/ionic/p-1522bf28.entry.js +0 -4
  314. package/dist/ionic/p-6f5b32c7.system.entry.js +0 -4
  315. package/dist/ionic/p-7330c044.system.js +0 -4
  316. package/dist/ionic/p-76afa95f.entry.js +0 -4
  317. package/dist/ionic/p-81f18ed1.system.entry.js +0 -4
  318. package/dist/ionic/p-addb7662.entry.js +0 -4
  319. package/dist/ionic/p-b80ef521.entry.js +0 -4
  320. package/dist/ionic/p-c05202a7.entry.js +0 -4
  321. package/dist/ionic/p-c67c9644.entry.js +0 -4
  322. package/dist/ionic/p-d070ab1e.system.entry.js +0 -4
  323. package/dist/ionic/p-de0392f4.entry.js +0 -4
  324. package/dist/ionic/p-e447e552.entry.js +0 -4
  325. package/dist/ionic/p-ef269a56.system.entry.js +0 -4
  326. package/dist/ionic/p-f7dce541.js +0 -4
@@ -63,7 +63,7 @@ const Label = /*@__PURE__*/ proxyCustomElement(class Label extends HTMLElement {
63
63
  render() {
64
64
  const position = this.position;
65
65
  const mode = getIonMode(this);
66
- return (h(Host, { key: '813192a6460057c6d1e42f50f3f257bee2f550d8', class: createColorClasses(this.color, {
66
+ return (h(Host, { key: 'c80cc1b4dcd56f614efc1e63ca80bca2f20a7151', class: createColorClasses(this.color, {
67
67
  [mode]: true,
68
68
  'in-item-color': hostContext('ion-item.ion-color', this.el),
69
69
  [`label-${position}`]: position !== undefined,
@@ -22,10 +22,10 @@ const ListHeader = /*@__PURE__*/ proxyCustomElement(class ListHeader extends HTM
22
22
  render() {
23
23
  const { lines } = this;
24
24
  const mode = getIonMode(this);
25
- return (h(Host, { key: '1b832a6882307d40fe4afc9a95a5db4fbdff60a3', class: createColorClasses(this.color, {
25
+ return (h(Host, { key: '27a08e9dc880db9377608ea262e254b0856b0d5c', class: createColorClasses(this.color, {
26
26
  [mode]: true,
27
27
  [`list-header-lines-${lines}`]: lines !== undefined,
28
- }) }, h("div", { key: 'a53a3f05727b510d1b912c10c92a4aa58f4fe860', class: "list-header-inner" }, h("slot", { key: '9377dee83f050b2cb2c5b7c5d106668cc81d8f90' }))));
28
+ }) }, h("div", { key: 'edd68f126ee5d815e6ae13e9662e8cedbd2d46e5', class: "list-header-inner" }, h("slot", { key: 'dae94a382ef09bb90d3ff3fbb2306515acfc2014' }))));
29
29
  }
30
30
  static get style() { return {
31
31
  ios: IonListHeaderIosStyle0,
@@ -33,7 +33,7 @@ const List = /*@__PURE__*/ proxyCustomElement(class List extends HTMLElement {
33
33
  render() {
34
34
  const mode = getIonMode(this);
35
35
  const { lines, inset } = this;
36
- return (h(Host, { key: '2cb1b689d9460d9576b471bb8b13d14fe34d1c2c', role: "list", class: {
36
+ return (h(Host, { key: '7f259d2a107807065a440cca848ececa0da60458', role: "list", class: {
37
37
  [mode]: true,
38
38
  // Used internally for styling
39
39
  [`list-${mode}`]: true,
@@ -20,9 +20,9 @@ const Note = /*@__PURE__*/ proxyCustomElement(class Note extends HTMLElement {
20
20
  }
21
21
  render() {
22
22
  const mode = getIonMode(this);
23
- return (h(Host, { key: 'eebc0ea94483a248192408a1546739700281d2ae', class: createColorClasses(this.color, {
23
+ return (h(Host, { key: 'de9f59a3e1700776780e61def3044901e1d1bef5', class: createColorClasses(this.color, {
24
24
  [mode]: true,
25
- }) }, h("slot", { key: '33018e11967398327a0e7c20522547a4d9e8f55b' })));
25
+ }) }, h("slot", { key: '30f98649d4d31a297ab71d23ed38fa021540a8f2' })));
26
26
  }
27
27
  static get style() { return {
28
28
  ios: IonNoteIosStyle0,
@@ -250,7 +250,11 @@ const PickerColumnInternal = /*@__PURE__*/ proxyCustomElement(class PickerColumn
250
250
  */
251
251
  componentWillLoad() {
252
252
  const visibleCallback = (entries) => {
253
- const ev = entries[0];
253
+ /**
254
+ * Browsers will sometimes group multiple IO events into a single callback.
255
+ * As a result, we want to grab the last/most recent event in case there are multiple events.
256
+ */
257
+ const ev = entries[entries.length - 1];
254
258
  if (ev.isIntersecting) {
255
259
  const { activeItem, el } = this;
256
260
  this.isColumnVisible = true;
@@ -339,18 +343,18 @@ const PickerColumnInternal = /*@__PURE__*/ proxyCustomElement(class PickerColumn
339
343
  * the attribute can be moved to datetime.tsx and set on every
340
344
  * instance of ion-picker-column-internal there instead.
341
345
  */
342
- return (h(Host, { key: 'd0e3818aa4ab06aefd988d1b42ae754244727b8f', exportparts: `${PICKER_ITEM_PART}, ${PICKER_ITEM_ACTIVE_PART}`, disabled: pickerDisabled, tabindex: pickerDisabled ? null : 0, class: createColorClasses(color, {
346
+ return (h(Host, { key: 'eeb70e31fca7bff943a2fc29a3da0383520fdd84', exportparts: `${PICKER_ITEM_PART}, ${PICKER_ITEM_ACTIVE_PART}`, disabled: pickerDisabled, tabindex: pickerDisabled ? null : 0, class: createColorClasses(color, {
343
347
  [mode]: true,
344
348
  ['picker-column-active']: isActive,
345
349
  ['picker-column-numeric-input']: numericInput,
346
- }) }, h("div", { key: 'ec3b16415db5f64e3fab37fda023560ebcdc9423', class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '40c78c9a1277807572d73e23048c2730cab88f5a', class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: 'c51fa817f6999356cf3568a46098e954936b45d5', class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), items.map((item, index) => {
350
+ }) }, h("div", { key: '08cffb51ab2ce1a4b83e35b25afd2880d6949d8e', class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '88389ba5287ee5e251fa36a0e13a888c8dfbf8e8', class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '2dc958f37a939a0fbbc35d92482e9c64741d8f5a', class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), items.map((item, index) => {
347
351
  const isItemDisabled = pickerDisabled || item.disabled || false;
348
352
  return (h("button", { tabindex: "-1", class: {
349
353
  'picker-item': true,
350
354
  }, "data-value": item.value, "data-index": index, onClick: (ev) => {
351
355
  this.centerPickerItemInView(ev.target, true);
352
356
  }, disabled: isItemDisabled, part: PICKER_ITEM_PART }, item.text));
353
- }), h("div", { key: '80a7461dfe571f46466219b05007b021711aed32', class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: 'fed82263295f58c51e2b753d0c06c7d71872b8a7', class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: 'e805dff4122cc4e5fb4d7dcb96054fee8ad3bd07', class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0")));
357
+ }), h("div", { key: 'd31f134aa67a10ad1b796a4e1ffbea439b2b3723', class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '3015f7f774b44d349f445e585b73295814c76326', class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: 'df165c76253e51bd6968bdcd8071ad69467bda4c', class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0")));
354
358
  }
355
359
  get el() { return this; }
356
360
  static get watchers() { return {
@@ -343,9 +343,9 @@ const PickerColumnCmp = /*@__PURE__*/ proxyCustomElement(class PickerColumnCmp e
343
343
  render() {
344
344
  const col = this.col;
345
345
  const mode = getIonMode(this);
346
- return (h(Host, { key: '06e2ae483a3bcf4fe721ad0c48cded6a1efdc6c0', class: Object.assign({ [mode]: true, 'picker-col': true, 'picker-opts-left': this.col.align === 'left', 'picker-opts-right': this.col.align === 'right' }, getClassMap(col.cssClass)), style: {
346
+ return (h(Host, { key: 'b0d3c8b8315f130f1bcddcbc53ee9949676423bf', class: Object.assign({ [mode]: true, 'picker-col': true, 'picker-opts-left': this.col.align === 'left', 'picker-opts-right': this.col.align === 'right' }, getClassMap(col.cssClass)), style: {
347
347
  'max-width': this.col.columnWidth,
348
- } }, col.prefix && (h("div", { class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), h("div", { key: '14bea013788d899edf7155eb3cc10f79fe8e4690', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index) => (h("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index }, o.text)))), col.suffix && (h("div", { class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
348
+ } }, col.prefix && (h("div", { class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), h("div", { key: '2c0471c265bc3dfa2d415da77b8a70850e74458e', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index) => (h("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index }, o.text)))), col.suffix && (h("div", { class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
349
349
  }
350
350
  get el() { return this; }
351
351
  static get watchers() { return {
@@ -475,7 +475,7 @@ const PickerInternal = /*@__PURE__*/ proxyCustomElement(class PickerInternal ext
475
475
  this.emitInputModeChange();
476
476
  }
477
477
  render() {
478
- return (h(Host, { key: 'f6b301345583f5ccfc31cce536176af7aeefd193', onPointerDown: (ev) => this.onPointerDown(ev), onClick: () => this.onClick() }, h("input", { key: 'e57fd191d49cc500b719d5b9ad35054d55e96c43', "aria-hidden": "true", tabindex: -1, inputmode: "numeric", type: "number", onKeyDown: (ev) => {
478
+ return (h(Host, { key: '49581a3c11cd7808555c576c46b833ac9d60f71a', onPointerDown: (ev) => this.onPointerDown(ev), onClick: () => this.onClick() }, h("input", { key: '92628e29f76914b955aa11d4e45797a941821159', "aria-hidden": "true", tabindex: -1, inputmode: "numeric", type: "number", onKeyDown: (ev) => {
479
479
  var _a;
480
480
  /**
481
481
  * The "Enter" key represents
@@ -490,7 +490,7 @@ const PickerInternal = /*@__PURE__*/ proxyCustomElement(class PickerInternal ext
490
490
  if (ev.key === 'Enter') {
491
491
  (_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.blur();
492
492
  }
493
- }, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), h("div", { key: '3360e7d913f87293844928e430acde69d399f68e', class: "picker-before" }), h("div", { key: '4db89e681458d4eec5d60ff47d3e0ba9fd116682', class: "picker-after" }), h("div", { key: 'a21b20d77dac8141623995b5a53f416d3d9fc1ef', class: "picker-highlight", ref: (el) => (this.highlightEl = el) }), h("slot", { key: '86c7d926523b615b4769bd1a4e9713b351089369' })));
493
+ }, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), h("div", { key: '455d7ef6dd1425e882d86f49e0d817883fe222b2', class: "picker-before" }), h("div", { key: '0351296cf171d22840542eb178ec3fae1e90f5d5', class: "picker-after" }), h("div", { key: 'b4ecaa88d0bbbd69e72b3d4f27ad3bd91f3da84d', class: "picker-highlight", ref: (el) => (this.highlightEl = el) }), h("slot", { key: 'fac29c179707002861f39d2ba1ea53479d0d9b74' })));
494
494
  }
495
495
  get el() { return this; }
496
496
  static get style() { return {
@@ -1292,9 +1292,9 @@ const Popover = /*@__PURE__*/ proxyCustomElement(class Popover extends HTMLEleme
1292
1292
  const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes } = this;
1293
1293
  const desktop = isPlatform('desktop');
1294
1294
  const enableArrow = arrow && !parentPopover;
1295
- return (h(Host, Object.assign({ key: '104a5bf92a9bbd2efc71d499a8500e5d55f81711', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
1295
+ return (h(Host, Object.assign({ key: 'b35e04a59d2feff922709efc5045e4e9f65db80d', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
1296
1296
  zIndex: `${20000 + this.overlayIndex}`,
1297
- }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && h("ion-backdrop", { tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), h("div", { key: 'ef0baa04c22444d4bc705220235a892308d67586', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && h("div", { class: "popover-arrow", part: "arrow" }), h("div", { key: '5cc5f5c353de614e484e9cfeacecfca9fbfde0e0', class: "popover-content", part: "content" }, h("slot", { key: '2d85c591cdc85efa98afbf40f676525f1402efcf' })))));
1297
+ }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && h("ion-backdrop", { tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), h("div", { key: '99d26b7ebd403061f4fe75c10b8106d5795cbbc0', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && h("div", { class: "popover-arrow", part: "arrow" }), h("div", { key: '6179601846f042b7b3be20c93845464ec8bef98a', class: "popover-content", part: "content" }, h("slot", { key: '2ba4f3ba26adfd3d42fa78ca6b6561d4088be8a8' })))));
1298
1298
  }
1299
1299
  get el() { return this; }
1300
1300
  static get watchers() { return {
@@ -158,7 +158,7 @@ const RadioGroup = /*@__PURE__*/ proxyCustomElement(class RadioGroup extends HTM
158
158
  const { label, labelId, el, name, value } = this;
159
159
  const mode = getIonMode(this);
160
160
  renderHiddenInput(true, el, name, value, false);
161
- return h(Host, { key: 'd8e84feca8f4dbe7605bc4ad096b6e68b482ba68', role: "radiogroup", "aria-labelledby": label ? labelId : null, onClick: this.onClick, class: mode });
161
+ return h(Host, { key: 'c0784903ad0b3914f448cca4b91172ad3af3ed70', role: "radiogroup", "aria-labelledby": label ? labelId : null, onClick: this.onClick, class: mode });
162
162
  }
163
163
  get el() { return this; }
164
164
  static get watchers() { return {
@@ -66,7 +66,7 @@ const RippleEffect = /*@__PURE__*/ proxyCustomElement(class RippleEffect extends
66
66
  }
67
67
  render() {
68
68
  const mode = getIonMode(this);
69
- return (h(Host, { key: 'a9ff1956627908ee4071002ca018eaa80f87cd59', role: "presentation", class: {
69
+ return (h(Host, { key: '9f2578664e5ff8a0a7e27cd90b2339bd430e72b8', role: "presentation", class: {
70
70
  [mode]: true,
71
71
  unbounded: this.unbounded,
72
72
  } }));
@@ -118,7 +118,7 @@ const SelectPopover = /*@__PURE__*/ proxyCustomElement(class SelectPopover exten
118
118
  render() {
119
119
  const { header, message, options, subHeader } = this;
120
120
  const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
121
- return (h(Host, { key: '9d3995131364d4f1d282e0a1fc34e778e94c9f98', class: getIonMode(this) }, h("ion-list", { key: '14244dcd6375eb61d65f3a9450d42a5d7b2d6541' }, header !== undefined && h("ion-list-header", null, header), hasSubHeaderOrMessage && (h("ion-item", null, h("ion-label", { class: "ion-text-wrap" }, subHeader !== undefined && h("h3", null, subHeader), message !== undefined && h("p", null, message)))), this.renderOptions(options))));
121
+ return (h(Host, { key: '46e495ce7001131eb8b54073018de89401a99b81', class: getIonMode(this) }, h("ion-list", { key: 'afdb72359c3751c6b372af1a778398463d1da397' }, header !== undefined && h("ion-list-header", null, header), hasSubHeaderOrMessage && (h("ion-item", null, h("ion-label", { class: "ion-text-wrap" }, subHeader !== undefined && h("h3", null, subHeader), message !== undefined && h("p", null, message)))), this.renderOptions(options))));
122
122
  }
123
123
  get el() { return this; }
124
124
  static get style() { return {
@@ -185,7 +185,7 @@ const Spinner = /*@__PURE__*/ proxyCustomElement(class Spinner extends HTMLEleme
185
185
  svgs.push(buildLine(spinner, duration, i, spinner.lines));
186
186
  }
187
187
  }
188
- return (h(Host, { key: '47cd6cd98e36e5b99fbe263a6a102610cae240c3', class: createColorClasses(self.color, {
188
+ return (h(Host, { key: 'cfd0e19ebf41412300d1ba80721c12b4b8d32263', class: createColorClasses(self.color, {
189
189
  [mode]: true,
190
190
  [`spinner-${spinnerName}`]: true,
191
191
  'spinner-paused': self.paused || config.getBoolean('_testing'),
@@ -834,7 +834,25 @@ const getFormattedDayPeriod = (dayPeriod) => {
834
834
  }
835
835
  return dayPeriod.toUpperCase();
836
836
  };
837
- const getLocalizedTime = (locale, refParts, hourCycle) => {
837
+ /**
838
+ * Including time zone options may lead to the rendered text showing a
839
+ * different time from what was selected in the Datetime, which could cause
840
+ * confusion.
841
+ */
842
+ const stripTimeZone = (formatOptions) => {
843
+ return Object.assign(Object.assign({}, formatOptions), {
844
+ /**
845
+ * Setting the time zone to UTC ensures that the value shown is always the
846
+ * same as what was selected and safeguards against older Safari bugs with
847
+ * Intl.DateTimeFormat.
848
+ */
849
+ timeZone: 'UTC',
850
+ /**
851
+ * We do not want to display the time zone name
852
+ */
853
+ timeZoneName: undefined });
854
+ };
855
+ const getLocalizedTime = (locale, refParts, hourCycle, formatOptions = { hour: 'numeric', minute: 'numeric' }) => {
838
856
  const timeParts = {
839
857
  hour: refParts.hour,
840
858
  minute: refParts.minute,
@@ -842,28 +860,12 @@ const getLocalizedTime = (locale, refParts, hourCycle) => {
842
860
  if (timeParts.hour === undefined || timeParts.minute === undefined) {
843
861
  return 'Invalid Time';
844
862
  }
845
- return new Intl.DateTimeFormat(locale, {
846
- hour: 'numeric',
847
- minute: 'numeric',
848
- /**
849
- * Setting the timeZone to UTC prevents
850
- * new Intl.DatetimeFormat from subtracting
851
- * the user's current timezone offset
852
- * when formatting the time.
853
- */
854
- timeZone: 'UTC',
863
+ return new Intl.DateTimeFormat(locale, Object.assign(Object.assign({}, stripTimeZone(formatOptions)), {
855
864
  /**
856
865
  * We use hourCycle here instead of hour12 due to:
857
866
  * https://bugs.chromium.org/p/chromium/issues/detail?id=1347316&q=hour12&can=2
858
867
  */
859
- hourCycle,
860
- /**
861
- * Setting Z at the end indicates that this
862
- * date string is in the UTC time zone. This
863
- * prevents new Date from adding the time zone
864
- * offset when getting the ISO string.
865
- */
866
- }).format(new Date(convertDataToISO(Object.assign({
868
+ hourCycle })).format(new Date(convertDataToISO(Object.assign({
867
869
  /**
868
870
  * JS uses a simplified ISO 8601 format which allows for
869
871
  * date-only formats and date-time formats, but not
@@ -949,14 +951,6 @@ const generateDayAriaLabel = (locale, today, refParts) => {
949
951
  */
950
952
  return today ? `Today, ${labelString}` : labelString;
951
953
  };
952
- /**
953
- * Gets the day of the week, month, and day
954
- * Used for the header in MD mode.
955
- */
956
- const getMonthAndDay = (locale, refParts) => {
957
- const date = getNormalizedDate(refParts);
958
- return new Intl.DateTimeFormat(locale, { weekday: 'short', month: 'short', day: 'numeric', timeZone: 'UTC' }).format(date);
959
- };
960
954
  /**
961
955
  * Given a locale and a date object,
962
956
  * return a formatted string that includes
@@ -967,15 +961,6 @@ const getMonthAndYear = (locale, refParts) => {
967
961
  const date = getNormalizedDate(refParts);
968
962
  return new Intl.DateTimeFormat(locale, { month: 'long', year: 'numeric', timeZone: 'UTC' }).format(date);
969
963
  };
970
- /**
971
- * Given a locale and a date object,
972
- * return a formatted string that includes
973
- * the short month, numeric day, and full year.
974
- * Example: Apr 22, 2021
975
- */
976
- const getMonthDayAndYear = (locale, refParts) => {
977
- return getLocalizedDateTime(locale, refParts, { month: 'short', day: 'numeric', year: 'numeric' });
978
- };
979
964
  /**
980
965
  * Given a locale and a date object,
981
966
  * return a formatted string that includes
@@ -1025,7 +1010,7 @@ const getNormalizedDate = (refParts) => {
1025
1010
  */
1026
1011
  const getLocalizedDateTime = (locale, refParts, options) => {
1027
1012
  const date = getNormalizedDate(refParts);
1028
- return getDateTimeFormat(locale, options).format(date);
1013
+ return getDateTimeFormat(locale, stripTimeZone(options)).format(date);
1029
1014
  };
1030
1015
  /**
1031
1016
  * Given a locale, DatetimeParts, and options
@@ -1641,10 +1626,8 @@ exports.getEndOfWeek = getEndOfWeek;
1641
1626
  exports.getHourCycle = getHourCycle;
1642
1627
  exports.getLocalizedDateTime = getLocalizedDateTime;
1643
1628
  exports.getLocalizedTime = getLocalizedTime;
1644
- exports.getMonthAndDay = getMonthAndDay;
1645
1629
  exports.getMonthAndYear = getMonthAndYear;
1646
1630
  exports.getMonthColumnData = getMonthColumnData;
1647
- exports.getMonthDayAndYear = getMonthDayAndYear;
1648
1631
  exports.getNextDay = getNextDay;
1649
1632
  exports.getNextMonth = getNextMonth;
1650
1633
  exports.getNextWeek = getNextWeek;
@@ -657,7 +657,7 @@ const Footer = class {
657
657
  const mode = ionicGlobal.getIonMode(this);
658
658
  const tabs = this.el.closest('ion-tabs');
659
659
  const tabBar = tabs === null || tabs === void 0 ? void 0 : tabs.querySelector(':scope > ion-tab-bar');
660
- return (index.h(index.Host, { key: '550b8b8fb614e541e1d369fc1ac5ba1f083913b4', role: "contentinfo", class: {
660
+ return (index.h(index.Host, { key: '6f2827ba2e64d1a889c0631bc2a6d5df97b338ce', role: "contentinfo", class: {
661
661
  [mode]: true,
662
662
  // Used internally for styling
663
663
  [`footer-${mode}`]: true,
@@ -665,7 +665,7 @@ const Footer = class {
665
665
  [`footer-translucent-${mode}`]: translucent,
666
666
  ['footer-toolbar-padding']: !this.keyboardVisible && (!tabBar || tabBar.slot !== 'bottom'),
667
667
  [`footer-collapse-${collapse}`]: collapse !== undefined,
668
- } }, mode === 'ios' && translucent && index.h("div", { class: "footer-background" }), index.h("slot", { key: 'd25187ecc2ce7848ba882af078cb634e9d5e8814' })));
668
+ } }, mode === 'ios' && translucent && index.h("div", { class: "footer-background" }), index.h("slot", { key: 'b07574feb587a1089b001e7d158fd8d05e32304b' })));
669
669
  }
670
670
  get el() { return index.getElement(this); }
671
671
  };
@@ -987,14 +987,14 @@ const Header = class {
987
987
  const collapse = this.collapse || 'none';
988
988
  // banner role must be at top level, so remove role if inside a menu
989
989
  const roleType = theme.hostContext('ion-menu', this.el) ? 'none' : 'banner';
990
- return (index.h(index.Host, Object.assign({ key: 'a33e7e1818cb4718ae36b8bcfa811c4138b85fac', role: roleType, class: {
990
+ return (index.h(index.Host, Object.assign({ key: 'be4386a218c20dc4c18320dbbcfb25574d13d27e', role: roleType, class: {
991
991
  [mode]: true,
992
992
  // Used internally for styling
993
993
  [`header-${mode}`]: true,
994
994
  [`header-translucent`]: this.translucent,
995
995
  [`header-collapse-${collapse}`]: true,
996
996
  [`header-translucent-${mode}`]: this.translucent,
997
- } }, inheritedAttributes), mode === 'ios' && translucent && index.h("div", { class: "header-background" }), index.h("slot", { key: '7e2fa75034f7422a3dc5691e9b3c25393e16c0ca' })));
997
+ } }, inheritedAttributes), mode === 'ios' && translucent && index.h("div", { class: "header-background" }), index.h("slot", { key: '74c401fb331aeb40c733605fd580949ad53989b8' })));
998
998
  }
999
999
  get el() { return index.getElement(this); }
1000
1000
  };
@@ -1178,7 +1178,7 @@ const RouterOutlet = class {
1178
1178
  return true;
1179
1179
  }
1180
1180
  render() {
1181
- return index.h("slot", { key: '69b452a0dc0c10440bdd8700cf4843c43154c707' });
1181
+ return index.h("slot", { key: 'e4eaa40478f70742d0ff7602ed5f83879da9f1b4' });
1182
1182
  }
1183
1183
  get el() { return index.getElement(this); }
1184
1184
  static get watchers() { return {
@@ -1218,11 +1218,11 @@ const ToolbarTitle = class {
1218
1218
  render() {
1219
1219
  const mode = ionicGlobal.getIonMode(this);
1220
1220
  const size = this.getSize();
1221
- return (index.h(index.Host, { key: 'b68a272a33ec81d282629a569676f64d3215a0c7', class: theme.createColorClasses(this.color, {
1221
+ return (index.h(index.Host, { key: '2642d433ba678b67503b7f1e9d0ae0390250bec8', class: theme.createColorClasses(this.color, {
1222
1222
  [mode]: true,
1223
1223
  [`title-${size}`]: true,
1224
1224
  'title-rtl': document.dir === 'rtl',
1225
- }) }, index.h("div", { key: '9069816a14e6e358695c5bd465787cf297c761bc', class: "toolbar-title" }, index.h("slot", { key: '8894bd04f2292b54050ee864abb5396deadf9874' }))));
1225
+ }) }, index.h("div", { key: '355184542e26b53296f7143d099cfebc3de7b569', class: "toolbar-title" }, index.h("slot", { key: 'aed07a34c22e4b1f34cdf40fea35481674d8941f' }))));
1226
1226
  }
1227
1227
  get el() { return index.getElement(this); }
1228
1228
  static get watchers() { return {
@@ -1290,10 +1290,10 @@ const Toolbar = class {
1290
1290
  this.childrenStyles.forEach((value) => {
1291
1291
  Object.assign(childStyles, value);
1292
1292
  });
1293
- return (index.h(index.Host, { key: 'afac0f08f3981483c072984ce047df5dc9cc1e99', class: Object.assign(Object.assign({}, childStyles), theme.createColorClasses(this.color, {
1293
+ return (index.h(index.Host, { key: 'fdd8621b4f69ce650b5aaf4fb6bffde29aa5ad65', class: Object.assign(Object.assign({}, childStyles), theme.createColorClasses(this.color, {
1294
1294
  [mode]: true,
1295
1295
  'in-toolbar': theme.hostContext('ion-toolbar', this.el),
1296
- })) }, index.h("div", { key: '30d4f1d0ec01cc646398301b5f7d469391eb35d2', class: "toolbar-background" }), index.h("div", { key: '175d1f283e670b57a9bf8fd2a8c5e7d0da749aa8', class: "toolbar-container" }, index.h("slot", { key: '4853b18092737b32b5995457536fa5a7fc2816ef', name: "start" }), index.h("slot", { key: '6eb4921200aad02d7977d134edad6cff2aad91ad', name: "secondary" }), index.h("div", { key: '024e0339c74c4b9a886d49e96723243719643dc2', class: "toolbar-content" }, index.h("slot", { key: 'b6452c84692fedd6efe33ac67907d01253b76f8f' })), index.h("slot", { key: '636e56eeaa318ce45a9c3854a30b8eb2819a33e0', name: "primary" }), index.h("slot", { key: 'a45c19b93dca3719d75bd4d99acc49de87137a7d', name: "end" }))));
1296
+ })) }, index.h("div", { key: 'c6ad5434546e2046a83574ea92a03a3f77d0a9e3', class: "toolbar-background" }), index.h("div", { key: '3b79dd20c3e8252cacfd46a82428df9ba0b8b86e', class: "toolbar-container" }, index.h("slot", { key: '514259a8b76db9f3a587a7667b5e37fd8ade9481', name: "start" }), index.h("slot", { key: 'd9ab68f0626f4ac8b83d21663eb67a47b76d809b', name: "secondary" }), index.h("div", { key: '2c21da88b67a7d7eef280e517bda9982264c7be4', class: "toolbar-content" }, index.h("slot", { key: 'ac2b7c8f20c5ac755df9032809c73eab9e767e36' })), index.h("slot", { key: '2ddd3b7e3803f2d56c32743dcfc114ddcb8684a2', name: "primary" }), index.h("slot", { key: '27483847d4333b4492506da33185c9ba1aa824a7', name: "end" }))));
1297
1297
  }
1298
1298
  get el() { return index.getElement(this); }
1299
1299
  };
@@ -59,7 +59,7 @@ const Thumbnail = class {
59
59
  index.registerInstance(this, hostRef);
60
60
  }
61
61
  render() {
62
- return (index.h(index.Host, { key: '2b3d5139161f4b9075dce537c14b4087986b37c4', class: ionicGlobal.getIonMode(this) }, index.h("slot", { key: '3c4838c43e1230f9413a3cb66584417fd11382b2' })));
62
+ return (index.h(index.Host, { key: 'a12bfff6f372b19f6890a81f93ca6137701ee360', class: ionicGlobal.getIonMode(this) }, index.h("slot", { key: 'f546320896fee05677cc30f13aa7fa7c0360d69d' })));
63
63
  }
64
64
  };
65
65
  Thumbnail.style = IonThumbnailStyle0;
@@ -157,10 +157,10 @@ const Grid = class {
157
157
  }
158
158
  render() {
159
159
  const mode = ionicGlobal.getIonMode(this);
160
- return (index.h(index.Host, { key: '03a8975bb9320192033219fc9e06fe7afa4fae4a', class: {
160
+ return (index.h(index.Host, { key: '265ab989098511c0b7e7d99edc792081f3ac7dfe', class: {
161
161
  [mode]: true,
162
162
  'grid-fixed': this.fixed,
163
- } }, index.h("slot", { key: '8d95abb4614e73a46a274668c13fe7c7f011c537' })));
163
+ } }, index.h("slot", { key: '83e3ea4d1a60d1a6dab6b592e70a98924c0cfd7c' })));
164
164
  }
165
165
  };
166
166
  Grid.style = IonGridStyle0;
@@ -173,7 +173,7 @@ const Row = class {
173
173
  index.registerInstance(this, hostRef);
174
174
  }
175
175
  render() {
176
- return (index.h(index.Host, { key: 'de94b93c001a93b2a88bcb8e959f421fd5ad4a65', class: ionicGlobal.getIonMode(this) }, index.h("slot", { key: '41fa951758d3644bb77d80002caf6e25a79393ce' })));
176
+ return (index.h(index.Host, { key: '36d12784e6f8339a1d03ff6f03af5c7b3f437293', class: ionicGlobal.getIonMode(this) }, index.h("slot", { key: '54cc627f95bb091d31a550aca00b14ab73d2f1bf' })));
177
177
  }
178
178
  };
179
179
  Row.style = IonRowStyle0;
@@ -10,7 +10,7 @@ const helpers = require('./helpers-da4c0ed1.js');
10
10
  const index$1 = require('./index-5915f9b3.js');
11
11
  const theme = require('./theme-d1c573d2.js');
12
12
  const ionicGlobal = require('./ionic-global-34d0d04a.js');
13
- const data = require('./data-a5109f09.js');
13
+ const data = require('./data-4487a815.js');
14
14
 
15
15
  const iosDatetimeButtonCss = ":host{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}:host button{border-radius:8px;-webkit-padding-start:12px;padding-inline-start:12px;-webkit-padding-end:12px;padding-inline-end:12px;padding-top:6px;padding-bottom:6px;-webkit-margin-start:2px;margin-inline-start:2px;-webkit-margin-end:2px;margin-inline-end:2px;margin-top:0px;margin-bottom:0px;position:relative;-webkit-transition:150ms color ease-in-out;transition:150ms color ease-in-out;border:none;background:var(--ion-color-step-300, #edeef0);color:var(--ion-text-color, #000);font-family:inherit;font-size:1rem;cursor:pointer;overflow:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none}:host(.time-active) #time-button,:host(.date-active) #date-button{color:var(--ion-color-base)}:host(.datetime-button-disabled){pointer-events:none}:host(.datetime-button-disabled) button{opacity:0.4}";
16
16
  const IonDatetimeButtonIosStyle0 = iosDatetimeButtonCss;
@@ -44,11 +44,12 @@ const DatetimeButton = class {
44
44
  * to the locale specified on ion-datetime.
45
45
  */
46
46
  this.setDateTimeText = () => {
47
+ var _a, _b, _c, _d, _e;
47
48
  const { datetimeEl, datetimePresentation } = this;
48
49
  if (!datetimeEl) {
49
50
  return;
50
51
  }
51
- const { value, locale, hourCycle, preferWheel, multiple, titleSelectedDatesFormatter } = datetimeEl;
52
+ const { value, locale, formatOptions, hourCycle, preferWheel, multiple, titleSelectedDatesFormatter } = datetimeEl;
52
53
  const parsedValues = this.getParsedDateValues(value);
53
54
  /**
54
55
  * Both ion-datetime and ion-datetime-button default
@@ -71,8 +72,8 @@ const DatetimeButton = class {
71
72
  switch (datetimePresentation) {
72
73
  case 'date-time':
73
74
  case 'time-date':
74
- const dateText = data.getMonthDayAndYear(locale, firstParsedDatetime);
75
- const timeText = data.getLocalizedTime(locale, firstParsedDatetime, computedHourCycle);
75
+ const dateText = data.getLocalizedDateTime(locale, firstParsedDatetime, (_a = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.date) !== null && _a !== void 0 ? _a : { month: 'short', day: 'numeric', year: 'numeric' });
76
+ const timeText = data.getLocalizedTime(locale, firstParsedDatetime, computedHourCycle, formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.time);
76
77
  if (preferWheel) {
77
78
  this.dateText = `${dateText} ${timeText}`;
78
79
  }
@@ -95,20 +96,20 @@ const DatetimeButton = class {
95
96
  this.dateText = headerText;
96
97
  }
97
98
  else {
98
- this.dateText = data.getMonthDayAndYear(locale, firstParsedDatetime);
99
+ this.dateText = data.getLocalizedDateTime(locale, firstParsedDatetime, (_b = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.date) !== null && _b !== void 0 ? _b : { month: 'short', day: 'numeric', year: 'numeric' });
99
100
  }
100
101
  break;
101
102
  case 'time':
102
- this.timeText = data.getLocalizedTime(locale, firstParsedDatetime, computedHourCycle);
103
+ this.timeText = data.getLocalizedTime(locale, firstParsedDatetime, computedHourCycle, formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.time);
103
104
  break;
104
105
  case 'month-year':
105
- this.dateText = data.getMonthAndYear(locale, firstParsedDatetime);
106
+ this.dateText = data.getLocalizedDateTime(locale, firstParsedDatetime, (_c = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.date) !== null && _c !== void 0 ? _c : { month: 'long', year: 'numeric' });
106
107
  break;
107
108
  case 'month':
108
- this.dateText = data.getLocalizedDateTime(locale, firstParsedDatetime, { month: 'long' });
109
+ this.dateText = data.getLocalizedDateTime(locale, firstParsedDatetime, (_d = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.time) !== null && _d !== void 0 ? _d : { month: 'long' });
109
110
  break;
110
111
  case 'year':
111
- this.dateText = data.getLocalizedDateTime(locale, firstParsedDatetime, { year: 'numeric' });
112
+ this.dateText = data.getLocalizedDateTime(locale, firstParsedDatetime, (_e = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.time) !== null && _e !== void 0 ? _e : { year: 'numeric' });
112
113
  break;
113
114
  }
114
115
  };
@@ -337,7 +338,7 @@ const DatetimeButton = class {
337
338
  render() {
338
339
  const { color, dateText, timeText, selectedButton, datetimeActive, disabled } = this;
339
340
  const mode = ionicGlobal.getIonMode(this);
340
- return (index.h(index.Host, { key: '36fe34d4225940611d74bdef5b954d54749d2dca', class: theme.createColorClasses(color, {
341
+ return (index.h(index.Host, { key: 'a38773e24ea0a28315be89baf0ef97f564b5d74b', class: theme.createColorClasses(color, {
341
342
  [mode]: true,
342
343
  [`${selectedButton}-active`]: datetimeActive,
343
344
  ['datetime-button-disabled']: disabled,