@ionic/core 7.5.7-dev.11701273756.1eb73d4c → 7.5.7-dev.11701896424.13d40ac9

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 (378) hide show
  1. package/components/animation.js +11 -12
  2. package/components/checkbox.js +0 -2
  3. package/components/data.js +64 -14
  4. package/components/index4.js +12 -10
  5. package/components/index5.js +22 -0
  6. package/components/input-shims.js +7 -12
  7. package/components/input.utils.js +2 -3
  8. package/components/ion-datetime.js +38 -19
  9. package/components/ion-input.js +8 -31
  10. package/components/ion-modal.js +2 -2
  11. package/components/ion-range.js +0 -2
  12. package/components/ion-select.js +29 -44
  13. package/components/ion-skeleton-text.js +1 -14
  14. package/components/ion-textarea.js +7 -30
  15. package/components/ion-toast.js +74 -419
  16. package/components/ion-toggle.js +0 -2
  17. package/components/item.js +2 -2
  18. package/components/label.js +2 -2
  19. package/components/overlays.js +1 -2
  20. package/components/picker-column-internal.js +7 -12
  21. package/components/radio-group.js +0 -2
  22. package/components/radio.js +2 -42
  23. package/dist/cjs/{animation-d101aa7a.js → animation-1083855c.js} +12 -13
  24. package/dist/cjs/{button-active-ba107e4e.js → button-active-af897e0e.js} +1 -1
  25. package/dist/cjs/{capacitor-f68447d3.js → capacitor-2ffba62a.js} +1 -1
  26. package/dist/cjs/{data-c8d21093.js → data-912a6f37.js} +64 -14
  27. package/dist/cjs/{haptic-a74c2767.js → haptic-678abc9f.js} +1 -1
  28. package/dist/cjs/index-306a7476.js +32 -0
  29. package/dist/cjs/{index-56d41f51.js → index-573877f3.js} +2 -2
  30. package/dist/cjs/{index-e9634bc9.js → index-9f379eaa.js} +1 -1
  31. package/dist/cjs/{index-4f0c67e1.js → index-d7561763.js} +13 -11
  32. package/dist/cjs/index.cjs.js +8 -8
  33. package/dist/cjs/{input-shims-3e3f35b9.js → input-shims-b0a75a01.js} +10 -15
  34. package/dist/cjs/{input.utils-bdb6953c.js → input.utils-0fe3097c.js} +3 -4
  35. package/dist/cjs/ion-action-sheet.cjs.entry.js +6 -6
  36. package/dist/cjs/ion-alert.cjs.entry.js +6 -6
  37. package/dist/cjs/ion-app_8.cjs.entry.js +8 -8
  38. package/dist/cjs/ion-checkbox.cjs.entry.js +0 -2
  39. package/dist/cjs/ion-datetime-button.cjs.entry.js +1 -1
  40. package/dist/cjs/ion-datetime_3.cjs.entry.js +44 -25
  41. package/dist/cjs/ion-input.cjs.entry.js +11 -34
  42. package/dist/cjs/ion-item_8.cjs.entry.js +4 -17
  43. package/dist/cjs/ion-loading.cjs.entry.js +3 -3
  44. package/dist/cjs/ion-menu_3.cjs.entry.js +5 -5
  45. package/dist/cjs/ion-modal.cjs.entry.js +8 -8
  46. package/dist/cjs/ion-nav_2.cjs.entry.js +1 -1
  47. package/dist/cjs/ion-picker-column-internal.cjs.entry.js +10 -14
  48. package/dist/cjs/ion-popover.cjs.entry.js +4 -4
  49. package/dist/cjs/ion-radio_2.cjs.entry.js +1 -6
  50. package/dist/cjs/ion-range.cjs.entry.js +0 -2
  51. package/dist/cjs/ion-refresher_2.cjs.entry.js +4 -4
  52. package/dist/cjs/ion-reorder_2.cjs.entry.js +3 -3
  53. package/dist/cjs/ion-select_3.cjs.entry.js +35 -51
  54. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +4 -4
  55. package/dist/cjs/ion-textarea.cjs.entry.js +10 -33
  56. package/dist/cjs/ion-toast.cjs.entry.js +92 -434
  57. package/dist/cjs/ion-toggle.cjs.entry.js +3 -5
  58. package/dist/cjs/ionic.cjs.js +1 -1
  59. package/dist/cjs/{ios.transition-f4caf640.js → ios.transition-ac909bc8.js} +3 -3
  60. package/dist/cjs/{keyboard-840107b3.js → keyboard-38f2bb7b.js} +3 -3
  61. package/dist/cjs/{keyboard-controller-019f42df.js → keyboard-controller-50beb83a.js} +2 -2
  62. package/dist/cjs/{keyboard-43df0428.js → keyboard-fd7db491.js} +1 -1
  63. package/dist/cjs/loader.cjs.js +1 -1
  64. package/dist/cjs/{md.transition-33331e93.js → md.transition-907af519.js} +3 -3
  65. package/dist/cjs/{notch-controller-c22d1344.js → notch-controller-f4f6af5d.js} +1 -1
  66. package/dist/cjs/{overlays-4d8897dc.js → overlays-2ffc5f27.js} +1 -3
  67. package/dist/collection/collection-manifest.json +2 -2
  68. package/dist/collection/components/checkbox/checkbox.js +0 -2
  69. package/dist/collection/components/datetime/datetime.ios.css +0 -1
  70. package/dist/collection/components/datetime/datetime.js +36 -17
  71. package/dist/collection/components/datetime/datetime.md.css +0 -1
  72. package/dist/collection/components/datetime/test/manipulation.spec.js +133 -1
  73. package/dist/collection/components/datetime/test/prefer-wheel/datetime.spec.js +27 -0
  74. package/dist/collection/components/datetime/utils/manipulation.js +65 -15
  75. package/dist/collection/components/input/input.ios.css +3 -10
  76. package/dist/collection/components/input/input.js +6 -31
  77. package/dist/collection/components/input/input.md.css +12 -13
  78. package/dist/collection/components/item/item.ios.css +3 -25
  79. package/dist/collection/components/item/item.md.css +3 -25
  80. package/dist/collection/components/item/test/basic/item.e2e.js +1 -1
  81. package/dist/collection/components/item/test/disabled/item.e2e.js +1 -0
  82. package/dist/collection/components/item/test/text/item.e2e.js +14 -0
  83. package/dist/collection/components/label/label.ios.css +3 -14
  84. package/dist/collection/components/label/label.md.css +3 -14
  85. package/dist/collection/components/modal/gestures/swipe-to-close.js +1 -2
  86. package/dist/collection/components/note/test/a11y/note.e2e.js +0 -43
  87. package/dist/collection/components/picker-column-internal/picker-column-internal.ios.css +3 -11
  88. package/dist/collection/components/picker-column-internal/picker-column-internal.js +5 -27
  89. package/dist/collection/components/picker-column-internal/picker-column-internal.md.css +3 -11
  90. package/dist/collection/components/picker-column-internal/test/disabled/picker-column-internal.e2e.js +5 -34
  91. package/dist/collection/components/radio/radio.js +2 -5
  92. package/dist/collection/components/radio-group/radio-group.js +0 -24
  93. package/dist/collection/components/range/range.js +0 -2
  94. package/dist/collection/components/select/select.ios.css +7 -61
  95. package/dist/collection/components/select/select.js +28 -45
  96. package/dist/collection/components/select/select.md.css +19 -64
  97. package/dist/collection/components/select/test/label/select.e2e.js +1 -1
  98. package/dist/collection/components/select/test/legacy/wrapping/select.e2e.js +1 -1
  99. package/dist/collection/components/skeleton-text/skeleton-text.js +0 -39
  100. package/dist/collection/components/textarea/textarea.ios.css +5 -37
  101. package/dist/collection/components/textarea/textarea.js +5 -30
  102. package/dist/collection/components/textarea/textarea.md.css +14 -47
  103. package/dist/collection/components/toast/animations/ios.enter.js +1 -2
  104. package/dist/collection/components/toast/animations/md.enter.js +3 -4
  105. package/dist/collection/components/toast/animations/utils.js +14 -20
  106. package/dist/collection/components/toast/test/toast.spec.js +0 -80
  107. package/dist/collection/components/toast/toast.ios.css +10 -10
  108. package/dist/collection/components/toast/toast.js +1 -104
  109. package/dist/collection/components/toast/toast.md.css +0 -10
  110. package/dist/collection/components/toggle/toggle.js +0 -2
  111. package/dist/collection/utils/animation/animation.js +11 -12
  112. package/dist/collection/utils/animation/test/animation.spec.js +0 -16
  113. package/dist/collection/utils/browser/index.js +22 -0
  114. package/dist/collection/utils/forms/index.js +0 -1
  115. package/dist/collection/utils/input-shims/input-shims.js +6 -12
  116. package/dist/collection/utils/menu-controller/index.js +12 -10
  117. package/dist/collection/utils/overlays.js +0 -1
  118. package/dist/collection/utils/slot-mutation-controller.js +2 -3
  119. package/dist/docs.json +12 -137
  120. package/dist/esm/{animation-cf3dd234.js → animation-8aa13916.js} +12 -13
  121. package/dist/esm/{button-active-47196c40.js → button-active-ce5cba4c.js} +1 -1
  122. package/dist/esm/{capacitor-f1f25364.js → capacitor-b4979570.js} +1 -1
  123. package/dist/esm/{data-44d9e816.js → data-316b33f5.js} +64 -14
  124. package/dist/esm/{haptic-1a66d69f.js → haptic-1243b917.js} +1 -1
  125. package/dist/esm/{index-23c05a55.js → index-0aa6e61f.js} +13 -11
  126. package/dist/esm/{index-702b3cd3.js → index-6a0ccabb.js} +2 -2
  127. package/dist/esm/index-7a14ecec.js +29 -0
  128. package/dist/esm/{index-c9e82353.js → index-f0cc4e14.js} +1 -1
  129. package/dist/esm/index.js +8 -8
  130. package/dist/esm/{input-shims-1d767845.js → input-shims-d0c93e5d.js} +9 -14
  131. package/dist/esm/{input.utils-2cf5e372.js → input.utils-ec063df4.js} +3 -4
  132. package/dist/esm/ion-action-sheet.entry.js +6 -6
  133. package/dist/esm/ion-alert.entry.js +6 -6
  134. package/dist/esm/ion-app_8.entry.js +8 -8
  135. package/dist/esm/ion-checkbox.entry.js +0 -2
  136. package/dist/esm/ion-datetime-button.entry.js +1 -1
  137. package/dist/esm/ion-datetime_3.entry.js +44 -25
  138. package/dist/esm/ion-input.entry.js +11 -34
  139. package/dist/esm/ion-item_8.entry.js +4 -17
  140. package/dist/esm/ion-loading.entry.js +3 -3
  141. package/dist/esm/ion-menu_3.entry.js +5 -5
  142. package/dist/esm/ion-modal.entry.js +8 -8
  143. package/dist/esm/ion-nav_2.entry.js +1 -1
  144. package/dist/esm/ion-picker-column-internal.entry.js +10 -14
  145. package/dist/esm/ion-popover.entry.js +4 -4
  146. package/dist/esm/ion-radio_2.entry.js +1 -6
  147. package/dist/esm/ion-range.entry.js +0 -2
  148. package/dist/esm/ion-refresher_2.entry.js +4 -4
  149. package/dist/esm/ion-reorder_2.entry.js +3 -3
  150. package/dist/esm/ion-select_3.entry.js +31 -47
  151. package/dist/esm/ion-tab-bar_2.entry.js +4 -4
  152. package/dist/esm/ion-textarea.entry.js +10 -33
  153. package/dist/esm/ion-toast.entry.js +75 -417
  154. package/dist/esm/ion-toggle.entry.js +3 -5
  155. package/dist/esm/ionic.js +1 -1
  156. package/dist/esm/{ios.transition-c3e77862.js → ios.transition-1651c430.js} +3 -3
  157. package/dist/esm/{keyboard-b6230bfb.js → keyboard-b063f012.js} +1 -1
  158. package/dist/esm/{keyboard-9f771a04.js → keyboard-b551279d.js} +3 -3
  159. package/dist/esm/{keyboard-controller-3f0faa10.js → keyboard-controller-0c2dce71.js} +2 -2
  160. package/dist/esm/loader.js +1 -1
  161. package/dist/esm/{md.transition-1173eca9.js → md.transition-66f18369.js} +3 -3
  162. package/dist/esm/{notch-controller-3f79197e.js → notch-controller-8c9c0e54.js} +1 -1
  163. package/dist/esm/{overlays-34169295.js → overlays-6c9feb7e.js} +2 -3
  164. package/dist/esm-es5/{animation-cf3dd234.js → animation-8aa13916.js} +1 -1
  165. package/dist/esm-es5/{button-active-47196c40.js → button-active-ce5cba4c.js} +1 -1
  166. package/dist/esm-es5/{capacitor-f1f25364.js → capacitor-b4979570.js} +1 -1
  167. package/dist/esm-es5/data-316b33f5.js +4 -0
  168. package/dist/esm-es5/{haptic-1a66d69f.js → haptic-1243b917.js} +1 -1
  169. package/dist/esm-es5/index-0aa6e61f.js +4 -0
  170. package/dist/esm-es5/{index-702b3cd3.js → index-6a0ccabb.js} +1 -1
  171. package/dist/esm-es5/index-f0cc4e14.js +4 -0
  172. package/dist/esm-es5/index.js +1 -1
  173. package/dist/esm-es5/input-shims-d0c93e5d.js +4 -0
  174. package/dist/esm-es5/input.utils-ec063df4.js +4 -0
  175. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  176. package/dist/esm-es5/ion-alert.entry.js +1 -1
  177. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  178. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  179. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  180. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  181. package/dist/esm-es5/ion-input.entry.js +1 -1
  182. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  183. package/dist/esm-es5/ion-loading.entry.js +1 -1
  184. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  185. package/dist/esm-es5/ion-modal.entry.js +1 -1
  186. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  187. package/dist/esm-es5/ion-picker-column-internal.entry.js +1 -1
  188. package/dist/esm-es5/ion-popover.entry.js +1 -1
  189. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  190. package/dist/esm-es5/ion-range.entry.js +1 -1
  191. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  192. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  193. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  194. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  195. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  196. package/dist/esm-es5/ion-toast.entry.js +1 -1
  197. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  198. package/dist/esm-es5/ionic.js +1 -1
  199. package/dist/esm-es5/{ios.transition-c3e77862.js → ios.transition-1651c430.js} +1 -1
  200. package/dist/esm-es5/{keyboard-b6230bfb.js → keyboard-b063f012.js} +1 -1
  201. package/dist/esm-es5/{keyboard-9f771a04.js → keyboard-b551279d.js} +1 -1
  202. package/dist/esm-es5/{keyboard-controller-3f0faa10.js → keyboard-controller-0c2dce71.js} +1 -1
  203. package/dist/esm-es5/loader.js +1 -1
  204. package/dist/esm-es5/md.transition-66f18369.js +4 -0
  205. package/dist/esm-es5/{notch-controller-3f79197e.js → notch-controller-8c9c0e54.js} +1 -1
  206. package/dist/esm-es5/{overlays-34169295.js → overlays-6c9feb7e.js} +1 -1
  207. package/dist/html.html-data.json +1 -14
  208. package/dist/ionic/index.esm.js +1 -1
  209. package/dist/ionic/ionic.esm.js +1 -1
  210. package/dist/ionic/p-014e8840.system.js +4 -0
  211. package/dist/ionic/{p-83a455fd.system.js → p-09d142b3.system.js} +1 -1
  212. package/dist/ionic/p-0d8e9393.entry.js +4 -0
  213. package/dist/ionic/{p-3abf5b7a.entry.js → p-0dc0d9b5.entry.js} +1 -1
  214. package/dist/ionic/{p-54824705.system.entry.js → p-0e23256e.system.entry.js} +1 -1
  215. package/dist/ionic/{p-e9e5755c.system.js → p-14b4348c.system.js} +1 -1
  216. package/dist/ionic/{p-ea9addc8.system.entry.js → p-18e01b30.system.entry.js} +1 -1
  217. package/dist/ionic/{p-823890d5.system.entry.js → p-1cb5f2f8.system.entry.js} +1 -1
  218. package/dist/ionic/p-1e5165db.system.entry.js +4 -0
  219. package/dist/ionic/p-20cf4994.js +4 -0
  220. package/dist/ionic/p-276afddd.js +4 -0
  221. package/dist/ionic/p-2e8e0045.js +4 -0
  222. package/dist/ionic/{p-d61a2cee.system.entry.js → p-34d2de14.system.entry.js} +1 -1
  223. package/dist/ionic/p-352c0232.system.entry.js +4 -0
  224. package/dist/ionic/p-3602001b.system.js +4 -0
  225. package/dist/ionic/p-3632220b.system.js +4 -0
  226. package/dist/ionic/{p-37c69d34.system.entry.js → p-377c636c.system.entry.js} +1 -1
  227. package/dist/ionic/{p-fce6b76a.system.entry.js → p-39044fe6.system.entry.js} +1 -1
  228. package/dist/ionic/{p-e5fd9f10.js → p-3bad5c1a.js} +1 -1
  229. package/dist/ionic/p-3ce8c3e3.entry.js +4 -0
  230. package/dist/ionic/p-40903d34.system.js +1 -1
  231. package/dist/ionic/{p-958f1c70.system.js → p-41477ad9.system.js} +1 -1
  232. package/dist/ionic/{p-a135e3ba.js → p-419eb426.js} +1 -1
  233. package/dist/ionic/p-4794e0ac.system.entry.js +4 -0
  234. package/dist/ionic/{p-587afb80.system.entry.js → p-4a142496.system.entry.js} +1 -1
  235. package/dist/ionic/p-4cd588b3.system.entry.js +4 -0
  236. package/dist/ionic/p-4dbac22d.entry.js +4 -0
  237. package/dist/ionic/p-4fa201a7.entry.js +4 -0
  238. package/dist/ionic/{p-4c80afe1.system.entry.js → p-587be954.system.entry.js} +1 -1
  239. package/dist/ionic/p-5c299019.entry.js +4 -0
  240. package/dist/ionic/{p-f36112b4.entry.js → p-64296b15.entry.js} +1 -1
  241. package/dist/ionic/{p-1abc74d9.entry.js → p-64ed03a3.entry.js} +1 -1
  242. package/dist/ionic/p-67aab78f.js +4 -0
  243. package/dist/ionic/{p-03ed6107.system.entry.js → p-67e644bd.system.entry.js} +1 -1
  244. package/dist/ionic/{p-cc615985.system.entry.js → p-67ed452a.system.entry.js} +1 -1
  245. package/dist/ionic/p-67eecef4.system.js +4 -0
  246. package/dist/ionic/p-6d812360.system.entry.js +4 -0
  247. package/dist/ionic/{p-67951604.system.js → p-702d85d8.system.js} +1 -1
  248. package/dist/ionic/p-7176cea3.entry.js +4 -0
  249. package/dist/ionic/{p-8b15ca22.entry.js → p-73411c1b.entry.js} +1 -1
  250. package/dist/ionic/p-77e7a9c8.entry.js +4 -0
  251. package/dist/ionic/{p-8ad82eb3.entry.js → p-79e83e0a.entry.js} +1 -1
  252. package/dist/ionic/p-7f85ffa9.js +4 -0
  253. package/dist/ionic/{p-2a41d4d1.js → p-800ef057.js} +1 -1
  254. package/dist/ionic/{p-11cb4e19.js → p-81c818e7.js} +1 -1
  255. package/dist/ionic/p-88980f5f.system.entry.js +4 -0
  256. package/dist/ionic/{p-5885e9af.js → p-8cf94fc1.js} +1 -1
  257. package/dist/ionic/{p-3e655d4c.entry.js → p-8e1bded3.entry.js} +1 -1
  258. package/dist/ionic/p-97c65aa5.js +4 -0
  259. package/dist/ionic/{p-d48872b1.system.js → p-97e31c0a.system.js} +1 -1
  260. package/dist/ionic/p-9ab6f3e6.system.js +4 -0
  261. package/dist/ionic/p-9b89cbde.js +4 -0
  262. package/dist/ionic/{p-fe1f93f2.js → p-a0b6d438.js} +1 -1
  263. package/dist/ionic/p-a21b8d05.entry.js +4 -0
  264. package/dist/ionic/p-a5c1e6ce.entry.js +4 -0
  265. package/dist/ionic/{p-c4de53af.system.js → p-a936d224.system.js} +1 -1
  266. package/dist/ionic/{p-aec8a70a.system.js → p-ab4cff27.system.js} +1 -1
  267. package/dist/ionic/p-b0cee324.entry.js +4 -0
  268. package/dist/ionic/p-b1142133.entry.js +4 -0
  269. package/dist/ionic/p-b203659a.system.entry.js +4 -0
  270. package/dist/ionic/{p-6797887a.entry.js → p-b2a74a72.entry.js} +1 -1
  271. package/dist/ionic/{p-9292fd42.system.js → p-b4b4bb29.system.js} +1 -1
  272. package/dist/ionic/p-b6f8ee31.entry.js +4 -0
  273. package/dist/ionic/{p-31189dae.entry.js → p-b91fe549.entry.js} +1 -1
  274. package/dist/ionic/{p-6a309574.js → p-b923f3d7.js} +1 -1
  275. package/dist/ionic/{p-f9a641fa.system.js → p-bba2ce59.system.js} +1 -1
  276. package/dist/ionic/{p-5e6bc319.system.entry.js → p-bed722c4.system.entry.js} +1 -1
  277. package/dist/ionic/{p-21b4981c.system.js → p-c4042875.system.js} +1 -1
  278. package/dist/ionic/p-cc196b34.js +4 -0
  279. package/dist/ionic/{p-e7d20dfb.system.js → p-ccdcb022.system.js} +1 -1
  280. package/dist/ionic/{p-fcb148dc.system.entry.js → p-cf425ec5.system.entry.js} +1 -1
  281. package/dist/ionic/p-d1de1188.js +4 -0
  282. package/dist/ionic/p-d21bfe66.system.entry.js +4 -0
  283. package/dist/ionic/p-d3952bd5.system.entry.js +4 -0
  284. package/dist/ionic/{p-196f2123.system.entry.js → p-ddfc4ef4.system.entry.js} +1 -1
  285. package/dist/ionic/{p-c1e725db.entry.js → p-deab76dc.entry.js} +1 -1
  286. package/dist/ionic/p-dfa756ed.system.js +4 -0
  287. package/dist/ionic/p-e6b240a0.js +4 -0
  288. package/dist/ionic/{p-64ab3eb3.entry.js → p-f37b4b79.entry.js} +1 -1
  289. package/dist/ionic/{p-7047a40c.system.entry.js → p-f3c82f74.system.entry.js} +1 -1
  290. package/dist/ionic/{p-b673ee9b.entry.js → p-f54ddd19.entry.js} +1 -1
  291. package/dist/ionic/p-ff5a10f9.system.js +4 -0
  292. package/dist/types/components/datetime/utils/manipulation.d.ts +34 -7
  293. package/dist/types/components/input/input.d.ts +0 -2
  294. package/dist/types/components/picker-column-internal/picker-column-internal.d.ts +0 -4
  295. package/dist/types/components/radio-group/radio-group-interface.d.ts +0 -1
  296. package/dist/types/components/radio-group/radio-group.d.ts +1 -8
  297. package/dist/types/components/router/router.d.ts +1 -2
  298. package/dist/types/components/select/select.d.ts +1 -6
  299. package/dist/types/components/skeleton-text/skeleton-text.d.ts +1 -9
  300. package/dist/types/components/textarea/textarea.d.ts +0 -2
  301. package/dist/types/components/toast/animations/utils.d.ts +4 -15
  302. package/dist/types/components/toast/toast-interface.d.ts +0 -2
  303. package/dist/types/components/toast/toast.d.ts +1 -28
  304. package/dist/types/components.d.ts +6 -45
  305. package/dist/types/interface.d.ts +5 -1
  306. package/dist/types/utils/animation/animation-interface.d.ts +4 -4
  307. package/dist/types/utils/browser/index.d.ts +2 -11
  308. package/dist/types/utils/forms/index.d.ts +0 -1
  309. package/dist/types/utils/hardware-back-button.d.ts +0 -4
  310. package/dist/types/utils/overlays.d.ts +0 -1
  311. package/dist/types/utils/slot-mutation-controller.d.ts +2 -2
  312. package/hydrate/index.js +276 -659
  313. package/package.json +1 -1
  314. package/dist/cjs/compare-with-utils-c0444525.js +0 -44
  315. package/dist/cjs/index-c8d52405.js +0 -10
  316. package/dist/collection/components/datetime/test/disabled/datetime.spec.js +0 -33
  317. package/dist/collection/components/input/test/slot/input.e2e.js +0 -51
  318. package/dist/collection/components/radio-group/test/radio-group.spec.js +0 -69
  319. package/dist/collection/components/select/test/slot/select.e2e.js +0 -67
  320. package/dist/collection/components/textarea/test/slot/textarea.e2e.js +0 -51
  321. package/dist/collection/components/toast/gestures/swipe-to-dismiss.js +0 -267
  322. package/dist/collection/components/toast/test/swipe-gesture/toast.e2e.js +0 -84
  323. package/dist/collection/components/toast/test/toast-config.spec.js +0 -25
  324. package/dist/collection/utils/forms/compare-with-utils.js +0 -39
  325. package/dist/esm/compare-with-utils-4928c09d.js +0 -41
  326. package/dist/esm/index-a5d50daf.js +0 -7
  327. package/dist/esm-es5/compare-with-utils-4928c09d.js +0 -4
  328. package/dist/esm-es5/data-44d9e816.js +0 -4
  329. package/dist/esm-es5/index-23c05a55.js +0 -4
  330. package/dist/esm-es5/index-c9e82353.js +0 -4
  331. package/dist/esm-es5/input-shims-1d767845.js +0 -4
  332. package/dist/esm-es5/input.utils-2cf5e372.js +0 -4
  333. package/dist/esm-es5/md.transition-1173eca9.js +0 -4
  334. package/dist/ionic/p-0547e914.entry.js +0 -4
  335. package/dist/ionic/p-131761b4.entry.js +0 -4
  336. package/dist/ionic/p-17240d90.js +0 -4
  337. package/dist/ionic/p-1cf5e8d6.entry.js +0 -4
  338. package/dist/ionic/p-2207f3c2.js +0 -4
  339. package/dist/ionic/p-27eb8a91.system.entry.js +0 -4
  340. package/dist/ionic/p-314c4dee.js +0 -4
  341. package/dist/ionic/p-385c51f8.system.entry.js +0 -4
  342. package/dist/ionic/p-3bc3d880.system.js +0 -4
  343. package/dist/ionic/p-43716898.js +0 -4
  344. package/dist/ionic/p-450a26bf.js +0 -4
  345. package/dist/ionic/p-485668f0.entry.js +0 -4
  346. package/dist/ionic/p-48c59094.system.entry.js +0 -4
  347. package/dist/ionic/p-494e75ad.js +0 -4
  348. package/dist/ionic/p-561cc050.system.js +0 -4
  349. package/dist/ionic/p-671dbd61.js +0 -4
  350. package/dist/ionic/p-70dcf429.js +0 -4
  351. package/dist/ionic/p-710cea83.system.js +0 -4
  352. package/dist/ionic/p-7b44e419.js +0 -4
  353. package/dist/ionic/p-80a9b397.entry.js +0 -4
  354. package/dist/ionic/p-8ddfecbf.entry.js +0 -4
  355. package/dist/ionic/p-9c6787e2.entry.js +0 -4
  356. package/dist/ionic/p-a11c1aff.system.entry.js +0 -4
  357. package/dist/ionic/p-a31099a4.entry.js +0 -4
  358. package/dist/ionic/p-a6bc00ab.entry.js +0 -4
  359. package/dist/ionic/p-ac668fb8.entry.js +0 -4
  360. package/dist/ionic/p-ad4b4f73.system.entry.js +0 -4
  361. package/dist/ionic/p-b8c3f071.system.js +0 -4
  362. package/dist/ionic/p-be0f6600.system.js +0 -4
  363. package/dist/ionic/p-c2db1374.system.js +0 -4
  364. package/dist/ionic/p-c3547c7a.system.js +0 -4
  365. package/dist/ionic/p-c700acef.system.js +0 -4
  366. package/dist/ionic/p-d4fba36b.system.entry.js +0 -4
  367. package/dist/ionic/p-e5b8f2f7.js +0 -4
  368. package/dist/ionic/p-edd07654.system.entry.js +0 -4
  369. package/dist/ionic/p-f43f4102.entry.js +0 -4
  370. package/dist/ionic/p-f5d78105.entry.js +0 -4
  371. package/dist/ionic/p-f7769c83.js +0 -4
  372. package/dist/ionic/p-fcc23f25.system.entry.js +0 -4
  373. package/dist/ionic/p-fdcf04c3.system.entry.js +0 -4
  374. package/dist/types/components/toast/gestures/swipe-to-dismiss.d.ts +0 -9
  375. package/dist/types/utils/forms/compare-with-utils.d.ts +0 -18
  376. /package/dist/esm-es5/{index-a5d50daf.js → index-7a14ecec.js} +0 -0
  377. /package/dist/ionic/{p-792919fd.system.js → p-0e94957a.system.js} +0 -0
  378. /package/dist/ionic/{p-7b30edcc.js → p-b347cfd1.js} +0 -0
@@ -1,9 +1,8 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { doc } from "../browser/index";
5
- import { MENU_BACK_BUTTON_PRIORITY } from "../hardware-back-button";
6
4
  import { printIonWarning } from "../logging/index";
5
+ import { MENU_BACK_BUTTON_PRIORITY } from "../hardware-back-button";
7
6
  import { componentOnReady } from "../helpers";
8
7
  import { menuOverlayAnimation } from "./animations/overlay";
9
8
  import { menuPushAnimation } from "./animations/push";
@@ -185,14 +184,17 @@ const createMenuController = () => {
185
184
  registerAnimation('reveal', menuRevealAnimation);
186
185
  registerAnimation('push', menuPushAnimation);
187
186
  registerAnimation('overlay', menuOverlayAnimation);
188
- doc === null || doc === void 0 ? void 0 : doc.addEventListener('ionBackButton', (ev) => {
189
- const openMenu = _getOpenSync();
190
- if (openMenu) {
191
- ev.detail.register(MENU_BACK_BUTTON_PRIORITY, () => {
192
- return openMenu.close();
193
- });
194
- }
195
- });
187
+ if (typeof document !== 'undefined') {
188
+ document.addEventListener('ionBackButton', (ev) => {
189
+ // TODO(FW-2832): type
190
+ const openMenu = _getOpenSync();
191
+ if (openMenu) {
192
+ ev.detail.register(MENU_BACK_BUTTON_PRIORITY, () => {
193
+ return openMenu.close();
194
+ });
195
+ }
196
+ });
197
+ }
196
198
  return {
197
199
  registerAnimation,
198
200
  get,
@@ -562,7 +562,6 @@ export const safeCall = (handler, arg) => {
562
562
  };
563
563
  export const BACKDROP = 'backdrop';
564
564
  export const GESTURE = 'gesture';
565
- export const OVERLAY_GESTURE_PRIORITY = 39;
566
565
  /**
567
566
  * Creates a delegate controller.
568
567
  *
@@ -9,14 +9,13 @@ import { raf } from "./helpers";
9
9
  * This is not needed for components using native slots in the Shadow DOM.
10
10
  * @internal
11
11
  * @param el The host element to observe
12
- * @param slotName mutationCallback will fire when nodes on these slot(s) change
12
+ * @param slotName mutationCallback will fire when nodes on this slot change
13
13
  * @param mutationCallback The callback to fire whenever the slotted content changes
14
14
  */
15
15
  export const createSlotMutationController = (el, slotName, mutationCallback) => {
16
16
  let hostMutationObserver;
17
17
  let slottedContentMutationObserver;
18
18
  if (win !== undefined && 'MutationObserver' in win) {
19
- const slots = Array.isArray(slotName) ? slotName : [slotName];
20
19
  hostMutationObserver = new MutationObserver((entries) => {
21
20
  for (const entry of entries) {
22
21
  for (const node of entry.addedNodes) {
@@ -24,7 +23,7 @@ export const createSlotMutationController = (el, slotName, mutationCallback) =>
24
23
  * Check to see if the added node
25
24
  * is our slotted content.
26
25
  */
27
- if (node.nodeType === Node.ELEMENT_NODE && slots.includes(node.slot)) {
26
+ if (node.nodeType === Node.ELEMENT_NODE && node.slot === slotName) {
28
27
  /**
29
28
  * If so, we want to watch the slotted
30
29
  * content itself for changes. This lets us
package/dist/docs.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2023-11-29T16:04:28",
2
+ "timestamp": "2023-12-06T21:02:17",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
5
  "version": "4.7.2",
@@ -9657,14 +9657,6 @@
9657
9657
  {
9658
9658
  "name": "slot",
9659
9659
  "text": "label - The label text to associate with the input. Use the `labelPlacement` property to control where the label is placed relative to the input. Use this if you need to render a label with custom HTML. (EXPERIMENTAL)"
9660
- },
9661
- {
9662
- "name": "slot",
9663
- "text": "start - Content to display at the leading edge of the input. (EXPERIMENTAL)"
9664
- },
9665
- {
9666
- "name": "slot",
9667
- "text": "end - Content to display at the trailing edge of the input. (EXPERIMENTAL)"
9668
9660
  }
9669
9661
  ],
9670
9662
  "usage": {},
@@ -11159,17 +11151,9 @@
11159
11151
  }
11160
11152
  ],
11161
11153
  "slots": [
11162
- {
11163
- "name": "end",
11164
- "docs": "Content to display at the trailing edge of the input. (EXPERIMENTAL)"
11165
- },
11166
11154
  {
11167
11155
  "name": "label",
11168
11156
  "docs": "The label text to associate with the input. Use the `labelPlacement` property to control where the label is placed relative to the input. Use this if you need to render a label with custom HTML. (EXPERIMENTAL)"
11169
- },
11170
- {
11171
- "name": "start",
11172
- "docs": "Content to display at the leading edge of the input. (EXPERIMENTAL)"
11173
11157
  }
11174
11158
  ],
11175
11159
  "parts": [],
@@ -19727,42 +19711,6 @@
19727
19711
  "optional": false,
19728
19712
  "required": false
19729
19713
  },
19730
- {
19731
- "name": "compareWith",
19732
- "type": "((currentValue: any, compareValue: any) => boolean) | null | string | undefined",
19733
- "complexType": {
19734
- "original": "string | RadioGroupCompareFn | null",
19735
- "resolved": "((currentValue: any, compareValue: any) => boolean) | null | string | undefined",
19736
- "references": {
19737
- "RadioGroupCompareFn": {
19738
- "location": "import",
19739
- "path": "./radio-group-interface",
19740
- "id": "src/components/radio-group/radio-group-interface.ts::RadioGroupCompareFn"
19741
- }
19742
- }
19743
- },
19744
- "mutable": false,
19745
- "attr": "compare-with",
19746
- "reflectToAttr": false,
19747
- "docs": "This property allows developers to specify a custom function or property\nname for comparing objects when determining the selected option in the\nion-radio-group. When not specified, the default behavior will use strict\nequality (===) for comparison.",
19748
- "docsTags": [],
19749
- "values": [
19750
- {
19751
- "type": "((currentValue: any, compareValue: any) => boolean)"
19752
- },
19753
- {
19754
- "type": "null"
19755
- },
19756
- {
19757
- "type": "string"
19758
- },
19759
- {
19760
- "type": "undefined"
19761
- }
19762
- ],
19763
- "optional": true,
19764
- "required": false
19765
- },
19766
19714
  {
19767
19715
  "name": "name",
19768
19716
  "type": "string",
@@ -23833,14 +23781,6 @@
23833
23781
  "name": "slot",
23834
23782
  "text": "label - The label text to associate with the select. Use the `labelPlacement` property to control where the label is placed relative to the select. Use this if you need to render a label with custom HTML."
23835
23783
  },
23836
- {
23837
- "name": "slot",
23838
- "text": "start - Content to display at the leading edge of the select."
23839
- },
23840
- {
23841
- "name": "slot",
23842
- "text": "end - Content to display at the trailing edge of the select."
23843
- },
23844
23784
  {
23845
23785
  "name": "part",
23846
23786
  "text": "placeholder - The text displayed in the select when there is no value."
@@ -23969,7 +23909,7 @@
23969
23909
  "mutable": false,
23970
23910
  "attr": "compare-with",
23971
23911
  "reflectToAttr": false,
23972
- "docs": "This property allows developers to specify a custom function or property\nname for comparing objects when determining the selected option in the\nion-select. When not specified, the default behavior will use strict\nequality (===) for comparison.",
23912
+ "docs": "A property name or function used to compare object values",
23973
23913
  "docsTags": [],
23974
23914
  "values": [
23975
23915
  {
@@ -24656,17 +24596,9 @@
24656
24596
  }
24657
24597
  ],
24658
24598
  "slots": [
24659
- {
24660
- "name": "end",
24661
- "docs": "Content to display at the trailing edge of the select."
24662
- },
24663
24599
  {
24664
24600
  "name": "label",
24665
24601
  "docs": "The label text to associate with the select. Use the `labelPlacement` property to control where the label is placed relative to the select. Use this if you need to render a label with custom HTML."
24666
- },
24667
- {
24668
- "name": "start",
24669
- "docs": "Content to display at the leading edge of the select."
24670
24602
  }
24671
24603
  ],
24672
24604
  "parts": [
@@ -26109,14 +26041,6 @@
26109
26041
  {
26110
26042
  "name": "slot",
26111
26043
  "text": "label - The label text to associate with the textarea. Use the `labelPlacement` property to control where the label is placed relative to the textarea. Use this if you need to render a label with custom HTML. (EXPERIMENTAL)"
26112
- },
26113
- {
26114
- "name": "slot",
26115
- "text": "start - Content to display at the leading edge of the textarea. (EXPERIMENTAL)"
26116
- },
26117
- {
26118
- "name": "slot",
26119
- "text": "end - Content to display at the trailing edge of the textarea. (EXPERIMENTAL)"
26120
26044
  }
26121
26045
  ],
26122
26046
  "usage": {},
@@ -27167,17 +27091,9 @@
27167
27091
  }
27168
27092
  ],
27169
27093
  "slots": [
27170
- {
27171
- "name": "end",
27172
- "docs": "Content to display at the trailing edge of the textarea. (EXPERIMENTAL)"
27173
- },
27174
27094
  {
27175
27095
  "name": "label",
27176
27096
  "docs": "The label text to associate with the textarea. Use the `labelPlacement` property to control where the label is placed relative to the textarea. Use this if you need to render a label with custom HTML. (EXPERIMENTAL)"
27177
- },
27178
- {
27179
- "name": "start",
27180
- "docs": "Content to display at the leading edge of the textarea. (EXPERIMENTAL)"
27181
27097
  }
27182
27098
  ],
27183
27099
  "parts": [],
@@ -27869,37 +27785,6 @@
27869
27785
  "optional": true,
27870
27786
  "required": false
27871
27787
  },
27872
- {
27873
- "name": "swipeGesture",
27874
- "type": "\"vertical\" | undefined",
27875
- "complexType": {
27876
- "original": "ToastSwipeGestureDirection",
27877
- "resolved": "\"vertical\" | undefined",
27878
- "references": {
27879
- "ToastSwipeGestureDirection": {
27880
- "location": "import",
27881
- "path": "./toast-interface",
27882
- "id": "src/components/toast/toast-interface.ts::ToastSwipeGestureDirection"
27883
- }
27884
- }
27885
- },
27886
- "mutable": false,
27887
- "attr": "swipe-gesture",
27888
- "reflectToAttr": false,
27889
- "docs": "If set to 'vertical', the Toast can be dismissed with\na swipe gesture. The swipe direction is determined by\nthe value of the `position` property:\n`top`: The Toast can be swiped up to dismiss.\n`bottom`: The Toast can be swiped down to dismiss.\n`middle`: The Toast can be swiped up or down to dismiss.",
27890
- "docsTags": [],
27891
- "values": [
27892
- {
27893
- "value": "vertical",
27894
- "type": "string"
27895
- },
27896
- {
27897
- "type": "undefined"
27898
- }
27899
- ],
27900
- "optional": true,
27901
- "required": false
27902
- },
27903
27788
  {
27904
27789
  "name": "translucent",
27905
27790
  "type": "boolean",
@@ -29173,16 +29058,6 @@
29173
29058
  "docstring": "",
29174
29059
  "path": "src/components/datetime/datetime-interface.ts"
29175
29060
  },
29176
- "src/components/picker-column-internal/picker-column-internal-interfaces.ts::PickerColumnItem": {
29177
- "declaration": "export interface PickerColumnItem {\n text: string;\n value: string | number;\n disabled?: boolean;\n}",
29178
- "docstring": "",
29179
- "path": "src/components/picker-column-internal/picker-column-internal-interfaces.ts"
29180
- },
29181
- "src/components/picker-internal/picker-internal-interfaces.ts::PickerInternalChangeEventDetail": {
29182
- "declaration": "export interface PickerInternalChangeEventDetail {\n useInputMode: boolean;\n inputModeColumn?: HTMLIonPickerColumnInternalElement;\n}",
29183
- "docstring": "",
29184
- "path": "src/components/picker-internal/picker-internal-interfaces.ts"
29185
- },
29186
29061
  "src/components/spinner/spinner-configs.ts::SpinnerTypes": {
29187
29062
  "declaration": "\"bubbles\" | \"circles\" | \"circular\" | \"crescent\" | \"dots\" | \"lines\" | \"lines-small\" | \"lines-sharp\" | \"lines-sharp-small\"",
29188
29063
  "docstring": "",
@@ -29208,11 +29083,6 @@
29208
29083
  "docstring": "Values are converted to strings when emitted which is\nwhy we do not have a `number` type here even though the\n`value` prop accepts a `number` type.",
29209
29084
  "path": "src/components/input/input-interface.ts"
29210
29085
  },
29211
- "src/components/radio-group/radio-group-interface.ts::RadioGroupCompareFn": {
29212
- "declaration": "(currentValue: any, compareValue: any) => boolean",
29213
- "docstring": "",
29214
- "path": "src/components/radio-group/radio-group-interface.ts"
29215
- },
29216
29086
  "src/components/radio-group/radio-group-interface.ts::RadioGroupChangeEventDetail": {
29217
29087
  "declaration": "export interface RadioGroupChangeEventDetail<T = any> {\n value: T;\n event?: Event;\n}",
29218
29088
  "docstring": "",
@@ -29298,6 +29168,16 @@
29298
29168
  "docstring": "",
29299
29169
  "path": "src/components/picker/picker-interface.ts"
29300
29170
  },
29171
+ "src/components/picker-column-internal/picker-column-internal-interfaces.ts::PickerColumnItem": {
29172
+ "declaration": "export interface PickerColumnItem {\n text: string;\n value: string | number;\n disabled?: boolean;\n}",
29173
+ "docstring": "",
29174
+ "path": "src/components/picker-column-internal/picker-column-internal-interfaces.ts"
29175
+ },
29176
+ "src/components/picker-internal/picker-internal-interfaces.ts::PickerInternalChangeEventDetail": {
29177
+ "declaration": "export interface PickerInternalChangeEventDetail {\n useInputMode: boolean;\n inputModeColumn?: HTMLIonPickerColumnInternalElement;\n}",
29178
+ "docstring": "",
29179
+ "path": "src/components/picker-internal/picker-internal-interfaces.ts"
29180
+ },
29301
29181
  "src/components/popover/popover-interface.ts::TriggerAction": {
29302
29182
  "declaration": "export type TriggerAction = 'click' | 'hover' | 'context-menu';",
29303
29183
  "docstring": "",
@@ -29463,11 +29343,6 @@
29463
29343
  "docstring": "",
29464
29344
  "path": "src/components/toast/toast-interface.ts"
29465
29345
  },
29466
- "src/components/toast/toast-interface.ts::ToastSwipeGestureDirection": {
29467
- "declaration": "\"vertical\"",
29468
- "docstring": "",
29469
- "path": "src/components/toast/toast-interface.ts"
29470
- },
29471
29346
  "src/components/toast/toast-interface.ts::ToastPresentOptions": {
29472
29347
  "declaration": "export type ToastPresentOptions = ToastPositionAlias & ToastAnimationPosition;",
29473
29348
  "docstring": "",
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { w as win } from './index-a5d50daf.js';
4
+ import { w as win } from './index-7a14ecec.js';
5
5
  import { r as raf } from './helpers-3379ba19.js';
6
6
 
7
7
  let animationPrefix;
@@ -586,16 +586,6 @@ const createAnimation = (animationId) => {
586
586
  }
587
587
  }
588
588
  });
589
- /**
590
- * Clean up any value coercion before
591
- * the user callbacks fire otherwise
592
- * they may get stale values. For example,
593
- * if someone calls progressStart(0) the
594
- * animation may still be reversed.
595
- */
596
- forceDurationValue = undefined;
597
- forceDirectionValue = undefined;
598
- forceDelayValue = undefined;
599
589
  onFinishCallbacks.forEach((onFinishCallback) => {
600
590
  return onFinishCallback.c(currentStep, ani);
601
591
  });
@@ -800,8 +790,17 @@ const createAnimation = (animationId) => {
800
790
  update(false, false);
801
791
  }
802
792
  }
803
- if (playTo !== undefined && !parentAnimation) {
804
- play();
793
+ if (playTo !== undefined) {
794
+ onFinish(() => {
795
+ forceDurationValue = undefined;
796
+ forceDirectionValue = undefined;
797
+ forceDelayValue = undefined;
798
+ }, {
799
+ oneTimeCallback: true,
800
+ });
801
+ if (!parentAnimation) {
802
+ play();
803
+ }
805
804
  }
806
805
  return ani;
807
806
  };
@@ -2,7 +2,7 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { w as writeTask } from './index-7c9b1bca.js';
5
- import { h as hapticSelectionEnd, a as hapticSelectionStart, b as hapticSelectionChanged } from './haptic-1a66d69f.js';
5
+ import { h as hapticSelectionEnd, a as hapticSelectionStart, b as hapticSelectionChanged } from './haptic-1243b917.js';
6
6
  import { createGesture } from './index-ff313b19.js';
7
7
 
8
8
  const createButtonActiveGesture = (el, isButton) => {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { w as win } from './index-a5d50daf.js';
4
+ import { w as win } from './index-7a14ecec.js';
5
5
 
6
6
  const getCapacitor = () => {
7
7
  if (win !== undefined) {
@@ -716,32 +716,82 @@ const validateParts = (parts, minParts, maxParts) => {
716
716
  * Returns the closest date to refParts
717
717
  * that also meets the constraints of
718
718
  * the *Values params.
719
- * @param refParts The reference date
720
- * @param monthValues The allowed month values
721
- * @param dayValues The allowed day (of the month) values
722
- * @param yearValues The allowed year values
723
- * @param hourValues The allowed hour values
724
- * @param minuteValues The allowed minute values
725
719
  */
726
- const getClosestValidDate = (refParts, monthValues, dayValues, yearValues, hourValues, minuteValues) => {
720
+ const getClosestValidDate = ({ refParts, monthValues, dayValues, yearValues, hourValues, minuteValues, minParts, maxParts, }) => {
727
721
  const { hour, minute, day, month, year } = refParts;
728
722
  const copyParts = Object.assign(Object.assign({}, refParts), { dayOfWeek: undefined });
723
+ if (yearValues !== undefined) {
724
+ // Filters out years that are out of the min/max bounds
725
+ const filteredYears = yearValues.filter((year) => {
726
+ if (minParts !== undefined && year < minParts.year) {
727
+ return false;
728
+ }
729
+ if (maxParts !== undefined && year > maxParts.year) {
730
+ return false;
731
+ }
732
+ return true;
733
+ });
734
+ copyParts.year = findClosestValue(year, filteredYears);
735
+ }
729
736
  if (monthValues !== undefined) {
730
- copyParts.month = findClosestValue(month, monthValues);
737
+ // Filters out months that are out of the min/max bounds
738
+ const filteredMonths = monthValues.filter((month) => {
739
+ if (minParts !== undefined && copyParts.year === minParts.year && month < minParts.month) {
740
+ return false;
741
+ }
742
+ if (maxParts !== undefined && copyParts.year === maxParts.year && month > maxParts.month) {
743
+ return false;
744
+ }
745
+ return true;
746
+ });
747
+ copyParts.month = findClosestValue(month, filteredMonths);
731
748
  }
732
749
  // Day is nullable but cannot be undefined
733
750
  if (day !== null && dayValues !== undefined) {
734
- copyParts.day = findClosestValue(day, dayValues);
735
- }
736
- if (yearValues !== undefined) {
737
- copyParts.year = findClosestValue(year, yearValues);
751
+ // Filters out days that are out of the min/max bounds
752
+ const filteredDays = dayValues.filter((day) => {
753
+ if (minParts !== undefined && isBefore(Object.assign(Object.assign({}, copyParts), { day }), minParts)) {
754
+ return false;
755
+ }
756
+ if (maxParts !== undefined && isAfter(Object.assign(Object.assign({}, copyParts), { day }), maxParts)) {
757
+ return false;
758
+ }
759
+ return true;
760
+ });
761
+ copyParts.day = findClosestValue(day, filteredDays);
738
762
  }
739
763
  if (hour !== undefined && hourValues !== undefined) {
740
- copyParts.hour = findClosestValue(hour, hourValues);
764
+ // Filters out hours that are out of the min/max bounds
765
+ const filteredHours = hourValues.filter((hour) => {
766
+ if ((minParts === null || minParts === void 0 ? void 0 : minParts.hour) !== undefined && isSameDay(copyParts, minParts) && hour < minParts.hour) {
767
+ return false;
768
+ }
769
+ if ((maxParts === null || maxParts === void 0 ? void 0 : maxParts.hour) !== undefined && isSameDay(copyParts, maxParts) && hour > maxParts.hour) {
770
+ return false;
771
+ }
772
+ return true;
773
+ });
774
+ copyParts.hour = findClosestValue(hour, filteredHours);
741
775
  copyParts.ampm = parseAmPm(copyParts.hour);
742
776
  }
743
777
  if (minute !== undefined && minuteValues !== undefined) {
744
- copyParts.minute = findClosestValue(minute, minuteValues);
778
+ // Filters out minutes that are out of the min/max bounds
779
+ const filteredMinutes = minuteValues.filter((minute) => {
780
+ if ((minParts === null || minParts === void 0 ? void 0 : minParts.minute) !== undefined &&
781
+ isSameDay(copyParts, minParts) &&
782
+ copyParts.hour === minParts.hour &&
783
+ minute < minParts.minute) {
784
+ return false;
785
+ }
786
+ if ((maxParts === null || maxParts === void 0 ? void 0 : maxParts.minute) !== undefined &&
787
+ isSameDay(copyParts, maxParts) &&
788
+ copyParts.hour === maxParts.hour &&
789
+ minute > maxParts.minute) {
790
+ return false;
791
+ }
792
+ return true;
793
+ });
794
+ copyParts.minute = findClosestValue(minute, filteredMinutes);
745
795
  }
746
796
  return copyParts;
747
797
  };
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { g as getCapacitor } from './capacitor-f1f25364.js';
4
+ import { g as getCapacitor } from './capacitor-b4979570.js';
5
5
 
6
6
  var ImpactStyle;
7
7
  (function (ImpactStyle) {
@@ -1,12 +1,11 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { d as doc } from './index-a5d50daf.js';
5
- import { MENU_BACK_BUTTON_PRIORITY } from './hardware-back-button-39299f84.js';
6
4
  import { p as printIonWarning } from './index-595d62c9.js';
5
+ import { MENU_BACK_BUTTON_PRIORITY } from './hardware-back-button-39299f84.js';
7
6
  import { c as componentOnReady } from './helpers-3379ba19.js';
8
7
  import { b as getIonMode } from './ionic-global-40e42e7f.js';
9
- import { c as createAnimation } from './animation-cf3dd234.js';
8
+ import { c as createAnimation } from './animation-8aa13916.js';
10
9
 
11
10
  /**
12
11
  * baseAnimation
@@ -273,14 +272,17 @@ const createMenuController = () => {
273
272
  registerAnimation('reveal', menuRevealAnimation);
274
273
  registerAnimation('push', menuPushAnimation);
275
274
  registerAnimation('overlay', menuOverlayAnimation);
276
- doc === null || doc === void 0 ? void 0 : doc.addEventListener('ionBackButton', (ev) => {
277
- const openMenu = _getOpenSync();
278
- if (openMenu) {
279
- ev.detail.register(MENU_BACK_BUTTON_PRIORITY, () => {
280
- return openMenu.close();
281
- });
282
- }
283
- });
275
+ if (typeof document !== 'undefined') {
276
+ document.addEventListener('ionBackButton', (ev) => {
277
+ // TODO(FW-2832): type
278
+ const openMenu = _getOpenSync();
279
+ if (openMenu) {
280
+ ev.detail.register(MENU_BACK_BUTTON_PRIORITY, () => {
281
+ return openMenu.close();
282
+ });
283
+ }
284
+ });
285
+ }
284
286
  return {
285
287
  registerAnimation,
286
288
  get,
@@ -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-c3e77862.js');
14
- const mdTransitionAnimation = () => import('./md.transition-1173eca9.js');
13
+ const iosTransitionAnimation = () => import('./ios.transition-1651c430.js');
14
+ const mdTransitionAnimation = () => import('./md.transition-66f18369.js');
15
15
  // TODO(FW-2832): types
16
16
  const transition = (opts) => {
17
17
  return new Promise((resolve, reject) => {
@@ -0,0 +1,29 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ /**
5
+ * When accessing the document or window, it is important
6
+ * to account for SSR applications where the
7
+ * window is not available. Code that accesses
8
+ * window when it is not available will crash.
9
+ * Even checking if `window === undefined` will cause
10
+ * apps to crash in SSR.
11
+ *
12
+ * Use win below to access an SSR-safe version
13
+ * of the window.
14
+ *
15
+ * Example 1:
16
+ * Before:
17
+ * if (window.innerWidth > 768) { ... }
18
+ *
19
+ * After:
20
+ * import { win } from 'path/to/this/file';
21
+ * if (win?.innerWidth > 768) { ... }
22
+ *
23
+ * Note: Code inside of this if-block will
24
+ * not run in an SSR environment.
25
+ */
26
+ const win = typeof window !== 'undefined' ? window : undefined;
27
+ const doc = typeof document !== 'undefined' ? document : undefined;
28
+
29
+ export { doc as d, win as w };
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { d as doc } from './index-a5d50daf.js';
4
+ import { d as doc } from './index-7a14ecec.js';
5
5
  import { u as now, v as pointerCoord } from './helpers-3379ba19.js';
6
6
 
7
7
  const startTapClick = (config) => {
package/dist/esm/index.js CHANGED
@@ -1,23 +1,23 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- export { c as createAnimation } from './animation-cf3dd234.js';
5
- export { a as LIFECYCLE_DID_ENTER, c as LIFECYCLE_DID_LEAVE, L as LIFECYCLE_WILL_ENTER, b as LIFECYCLE_WILL_LEAVE, d as LIFECYCLE_WILL_UNLOAD, g as getIonPageElement } from './index-702b3cd3.js';
6
- export { iosTransitionAnimation } from './ios.transition-c3e77862.js';
7
- export { mdTransitionAnimation } from './md.transition-1173eca9.js';
4
+ export { c as createAnimation } from './animation-8aa13916.js';
5
+ export { a as LIFECYCLE_DID_ENTER, c as LIFECYCLE_DID_LEAVE, L as LIFECYCLE_WILL_ENTER, b as LIFECYCLE_WILL_LEAVE, d as LIFECYCLE_WILL_UNLOAD, g as getIonPageElement } from './index-6a0ccabb.js';
6
+ export { iosTransitionAnimation } from './ios.transition-1651c430.js';
7
+ export { mdTransitionAnimation } from './md.transition-66f18369.js';
8
8
  export { g as getTimeGivenProgression } from './cubic-bezier-66542bc5.js';
9
9
  export { createGesture } from './index-ff313b19.js';
10
10
  export { g as getPlatforms, i as initialize, a as isPlatform } from './ionic-global-40e42e7f.js';
11
11
  export { c as componentOnReady } from './helpers-3379ba19.js';
12
12
  export { I as IonicSafeString, g as getMode, s as setupConfig } from './config-96c9ace3.js';
13
13
  export { o as openURL } from './theme-17531cdf.js';
14
- export { m as menuController } from './index-23c05a55.js';
15
- export { b as actionSheetController, a as alertController, l as loadingController, m as modalController, p as pickerController, c as popoverController, t as toastController } from './overlays-34169295.js';
16
- import './index-a5d50daf.js';
14
+ export { m as menuController } from './index-0aa6e61f.js';
15
+ export { b as actionSheetController, a as alertController, l as loadingController, m as modalController, p as pickerController, c as popoverController, t as toastController } from './overlays-6c9feb7e.js';
16
+ import './index-7a14ecec.js';
17
17
  import './index-7c9b1bca.js';
18
18
  import './gesture-controller-0fa396c4.js';
19
- import './hardware-back-button-39299f84.js';
20
19
  import './index-595d62c9.js';
20
+ import './hardware-back-button-39299f84.js';
21
21
  import './framework-delegate-aa433dea.js';
22
22
 
23
23
  const IonicSlides = (opts) => {