@ionic/core 7.5.8 → 7.6.1-dev.11701921257.1d512d3c

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 (381) hide show
  1. package/components/animation.js +12 -11
  2. package/components/checkbox.js +5 -3
  3. package/components/index4.js +10 -12
  4. package/components/index5.js +0 -22
  5. package/components/input-shims.js +12 -7
  6. package/components/input.utils.js +3 -2
  7. package/components/ion-datetime.js +2 -2
  8. package/components/ion-infinite-scroll.js +11 -3
  9. package/components/ion-input.js +31 -8
  10. package/components/ion-modal.js +2 -2
  11. package/components/ion-range.js +5 -3
  12. package/components/ion-select.js +44 -29
  13. package/components/ion-skeleton-text.js +14 -1
  14. package/components/ion-textarea.js +30 -7
  15. package/components/ion-toast.js +419 -74
  16. package/components/ion-toggle.js +5 -3
  17. package/components/item.js +2 -2
  18. package/components/label.js +2 -2
  19. package/components/overlays.js +2 -1
  20. package/components/radio-group.js +2 -0
  21. package/components/radio.js +45 -5
  22. package/dist/cjs/{animation-cc40e39c.js → animation-9b401d39.js} +13 -12
  23. package/dist/cjs/{button-active-417ccdcb.js → button-active-a5185907.js} +1 -1
  24. package/dist/cjs/{capacitor-46980811.js → capacitor-c04564bf.js} +1 -1
  25. package/dist/cjs/compare-with-utils-df1001d7.js +44 -0
  26. package/dist/cjs/{haptic-216df36c.js → haptic-b882e0bb.js} +1 -1
  27. package/dist/cjs/{index-8c1e77d6.js → index-b4f986cd.js} +1 -1
  28. package/dist/cjs/index-c8d52405.js +10 -0
  29. package/dist/cjs/{index-5cbb20f9.js → index-ce101dc9.js} +11 -13
  30. package/dist/cjs/{index-d4c2e02c.js → index-f8f13389.js} +2 -2
  31. package/dist/cjs/index.cjs.js +8 -8
  32. package/dist/cjs/{input-shims-87102b6a.js → input-shims-a23bb0f4.js} +15 -10
  33. package/dist/cjs/{input.utils-2a11c1fe.js → input.utils-3d0166a2.js} +4 -3
  34. package/dist/cjs/ion-action-sheet.cjs.entry.js +6 -6
  35. package/dist/cjs/ion-alert.cjs.entry.js +6 -6
  36. package/dist/cjs/ion-app_8.cjs.entry.js +8 -8
  37. package/dist/cjs/ion-checkbox.cjs.entry.js +5 -3
  38. package/dist/cjs/ion-datetime_3.cjs.entry.js +7 -7
  39. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +11 -3
  40. package/dist/cjs/ion-input.cjs.entry.js +34 -11
  41. package/dist/cjs/ion-item_8.cjs.entry.js +17 -4
  42. package/dist/cjs/ion-loading.cjs.entry.js +3 -3
  43. package/dist/cjs/ion-menu_3.cjs.entry.js +5 -5
  44. package/dist/cjs/ion-modal.cjs.entry.js +8 -8
  45. package/dist/cjs/ion-nav_2.cjs.entry.js +1 -1
  46. package/dist/cjs/ion-picker-column-internal.cjs.entry.js +3 -3
  47. package/dist/cjs/ion-popover.cjs.entry.js +4 -4
  48. package/dist/cjs/ion-radio_2.cjs.entry.js +9 -4
  49. package/dist/cjs/ion-range.cjs.entry.js +5 -3
  50. package/dist/cjs/ion-refresher_2.cjs.entry.js +4 -4
  51. package/dist/cjs/ion-reorder_2.cjs.entry.js +3 -3
  52. package/dist/cjs/ion-select_3.cjs.entry.js +51 -35
  53. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +4 -4
  54. package/dist/cjs/ion-textarea.cjs.entry.js +33 -10
  55. package/dist/cjs/ion-toast.cjs.entry.js +434 -92
  56. package/dist/cjs/ion-toggle.cjs.entry.js +8 -6
  57. package/dist/cjs/ionic.cjs.js +1 -1
  58. package/dist/cjs/{ios.transition-a4ffb5a2.js → ios.transition-6787b799.js} +3 -3
  59. package/dist/cjs/{keyboard-9390928c.js → keyboard-0272231f.js} +1 -1
  60. package/dist/cjs/{keyboard-7d621ee9.js → keyboard-af1bb365.js} +3 -3
  61. package/dist/cjs/{keyboard-controller-2158b478.js → keyboard-controller-c05e747a.js} +2 -2
  62. package/dist/cjs/loader.cjs.js +1 -1
  63. package/dist/cjs/{md.transition-292abe1c.js → md.transition-e033d20a.js} +3 -3
  64. package/dist/cjs/{notch-controller-1dce508a.js → notch-controller-9735e7ac.js} +1 -1
  65. package/dist/cjs/{overlays-5c379703.js → overlays-27a6fb16.js} +3 -1
  66. package/dist/collection/components/checkbox/checkbox.ios.css +0 -6
  67. package/dist/collection/components/checkbox/checkbox.js +4 -1
  68. package/dist/collection/components/checkbox/checkbox.md.css +0 -6
  69. package/dist/collection/components/checkbox/test/checkbox.spec.js +14 -0
  70. package/dist/collection/components/datetime/datetime.ios.css +1 -0
  71. package/dist/collection/components/datetime/datetime.md.css +1 -0
  72. package/dist/collection/components/infinite-scroll/infinite-scroll.js +11 -3
  73. package/dist/collection/components/infinite-scroll/test/small-dom-update/infinite-scroll.e2e.js +31 -0
  74. package/dist/collection/components/input/input.ios.css +10 -3
  75. package/dist/collection/components/input/input.js +31 -6
  76. package/dist/collection/components/input/input.md.css +13 -12
  77. package/dist/collection/components/input/test/slot/input.e2e.js +51 -0
  78. package/dist/collection/components/item/item.ios.css +41 -3
  79. package/dist/collection/components/item/item.md.css +41 -3
  80. package/dist/collection/components/item/test/basic/item.e2e.js +1 -1
  81. package/dist/collection/components/item/test/disabled/item.e2e.js +0 -1
  82. package/dist/collection/components/label/label.ios.css +14 -3
  83. package/dist/collection/components/label/label.md.css +14 -3
  84. package/dist/collection/components/modal/gestures/swipe-to-close.js +2 -1
  85. package/dist/collection/components/note/test/a11y/note.e2e.js +43 -0
  86. package/dist/collection/components/radio/radio.ios.css +0 -6
  87. package/dist/collection/components/radio/radio.js +7 -3
  88. package/dist/collection/components/radio/radio.md.css +0 -6
  89. package/dist/collection/components/radio/test/radio.spec.js +14 -0
  90. package/dist/collection/components/radio-group/radio-group.js +24 -0
  91. package/dist/collection/components/radio-group/test/radio-group.spec.js +69 -0
  92. package/dist/collection/components/range/range.ios.css +0 -6
  93. package/dist/collection/components/range/range.js +4 -1
  94. package/dist/collection/components/range/range.md.css +0 -6
  95. package/dist/collection/components/range/test/range.spec.js +16 -0
  96. package/dist/collection/components/select/select.ios.css +60 -7
  97. package/dist/collection/components/select/select.js +45 -28
  98. package/dist/collection/components/select/select.md.css +63 -19
  99. package/dist/collection/components/select/test/item/select.e2e.js +15 -0
  100. package/dist/collection/components/select/test/label/select.e2e.js +1 -1
  101. package/dist/collection/components/select/test/legacy/wrapping/select.e2e.js +1 -1
  102. package/dist/collection/components/select/test/slot/select.e2e.js +67 -0
  103. package/dist/collection/components/skeleton-text/skeleton-text.js +39 -0
  104. package/dist/collection/components/textarea/test/slot/textarea.e2e.js +51 -0
  105. package/dist/collection/components/textarea/textarea.ios.css +37 -5
  106. package/dist/collection/components/textarea/textarea.js +30 -5
  107. package/dist/collection/components/textarea/textarea.md.css +47 -14
  108. package/dist/collection/components/toast/animations/ios.enter.js +2 -1
  109. package/dist/collection/components/toast/animations/md.enter.js +4 -3
  110. package/dist/collection/components/toast/animations/utils.js +20 -14
  111. package/dist/collection/components/toast/gestures/swipe-to-dismiss.js +267 -0
  112. package/dist/collection/components/toast/test/swipe-gesture/toast.e2e.js +84 -0
  113. package/dist/collection/components/toast/test/toast-config.spec.js +25 -0
  114. package/dist/collection/components/toast/test/toast.spec.js +80 -0
  115. package/dist/collection/components/toast/toast.ios.css +10 -10
  116. package/dist/collection/components/toast/toast.js +104 -1
  117. package/dist/collection/components/toast/toast.md.css +10 -0
  118. package/dist/collection/components/toggle/test/toggle.spec.js +12 -0
  119. package/dist/collection/components/toggle/toggle.ios.css +0 -6
  120. package/dist/collection/components/toggle/toggle.js +4 -1
  121. package/dist/collection/components/toggle/toggle.md.css +0 -6
  122. package/dist/collection/utils/animation/animation.js +12 -11
  123. package/dist/collection/utils/animation/test/animation.spec.js +16 -0
  124. package/dist/collection/utils/browser/index.js +0 -22
  125. package/dist/collection/utils/forms/compare-with-utils.js +39 -0
  126. package/dist/collection/utils/forms/index.js +1 -0
  127. package/dist/collection/utils/input-shims/input-shims.js +12 -6
  128. package/dist/collection/utils/menu-controller/index.js +10 -12
  129. package/dist/collection/utils/overlays.js +1 -0
  130. package/dist/collection/utils/slot-mutation-controller.js +3 -2
  131. package/dist/docs.json +159 -2
  132. package/dist/esm/{animation-fb0e0f6f.js → animation-dde8cc0d.js} +13 -12
  133. package/dist/esm/{button-active-3fdf3e4f.js → button-active-c6ee4f50.js} +1 -1
  134. package/dist/esm/{capacitor-b0e5fe83.js → capacitor-59395cbd.js} +1 -1
  135. package/dist/esm/compare-with-utils-a96ff2ea.js +41 -0
  136. package/dist/esm/{haptic-152c4172.js → haptic-554688a5.js} +1 -1
  137. package/dist/esm/{index-80492ed3.js → index-0c12c22b.js} +11 -13
  138. package/dist/esm/{index-d8817fb0.js → index-1932b201.js} +2 -2
  139. package/dist/esm/{index-ba9976bb.js → index-82eeb47f.js} +1 -1
  140. package/dist/esm/index-a5d50daf.js +7 -0
  141. package/dist/esm/index.js +8 -8
  142. package/dist/esm/{input-shims-0a2e541d.js → input-shims-6539ce13.js} +14 -9
  143. package/dist/esm/{input.utils-2846d430.js → input.utils-a5a2d164.js} +4 -3
  144. package/dist/esm/ion-action-sheet.entry.js +6 -6
  145. package/dist/esm/ion-alert.entry.js +6 -6
  146. package/dist/esm/ion-app_8.entry.js +8 -8
  147. package/dist/esm/ion-checkbox.entry.js +5 -3
  148. package/dist/esm/ion-datetime_3.entry.js +7 -7
  149. package/dist/esm/ion-infinite-scroll_2.entry.js +11 -3
  150. package/dist/esm/ion-input.entry.js +34 -11
  151. package/dist/esm/ion-item_8.entry.js +17 -4
  152. package/dist/esm/ion-loading.entry.js +3 -3
  153. package/dist/esm/ion-menu_3.entry.js +5 -5
  154. package/dist/esm/ion-modal.entry.js +8 -8
  155. package/dist/esm/ion-nav_2.entry.js +1 -1
  156. package/dist/esm/ion-picker-column-internal.entry.js +3 -3
  157. package/dist/esm/ion-popover.entry.js +4 -4
  158. package/dist/esm/ion-radio_2.entry.js +9 -4
  159. package/dist/esm/ion-range.entry.js +5 -3
  160. package/dist/esm/ion-refresher_2.entry.js +4 -4
  161. package/dist/esm/ion-reorder_2.entry.js +3 -3
  162. package/dist/esm/ion-select_3.entry.js +47 -31
  163. package/dist/esm/ion-tab-bar_2.entry.js +4 -4
  164. package/dist/esm/ion-textarea.entry.js +33 -10
  165. package/dist/esm/ion-toast.entry.js +417 -75
  166. package/dist/esm/ion-toggle.entry.js +8 -6
  167. package/dist/esm/ionic.js +1 -1
  168. package/dist/esm/{ios.transition-fd16bec1.js → ios.transition-802a84a6.js} +3 -3
  169. package/dist/esm/{keyboard-c402e885.js → keyboard-52278bd7.js} +3 -3
  170. package/dist/esm/{keyboard-dbb05fb9.js → keyboard-73175e24.js} +1 -1
  171. package/dist/esm/{keyboard-controller-5d90929a.js → keyboard-controller-ec5c2bfa.js} +2 -2
  172. package/dist/esm/loader.js +1 -1
  173. package/dist/esm/{md.transition-94ac93e1.js → md.transition-43c2874d.js} +3 -3
  174. package/dist/esm/{notch-controller-d09b6aca.js → notch-controller-fea7f9c5.js} +1 -1
  175. package/dist/esm/{overlays-abf58489.js → overlays-32ef481d.js} +3 -2
  176. package/dist/esm-es5/{animation-fb0e0f6f.js → animation-dde8cc0d.js} +1 -1
  177. package/dist/esm-es5/{button-active-3fdf3e4f.js → button-active-c6ee4f50.js} +1 -1
  178. package/dist/esm-es5/{capacitor-b0e5fe83.js → capacitor-59395cbd.js} +1 -1
  179. package/dist/esm-es5/compare-with-utils-a96ff2ea.js +4 -0
  180. package/dist/esm-es5/{haptic-152c4172.js → haptic-554688a5.js} +1 -1
  181. package/dist/esm-es5/index-0c12c22b.js +4 -0
  182. package/dist/esm-es5/{index-d8817fb0.js → index-1932b201.js} +1 -1
  183. package/dist/esm-es5/{index-ba9976bb.js → index-82eeb47f.js} +1 -1
  184. package/dist/esm-es5/index.js +1 -1
  185. package/dist/esm-es5/input-shims-6539ce13.js +4 -0
  186. package/dist/esm-es5/input.utils-a5a2d164.js +4 -0
  187. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  188. package/dist/esm-es5/ion-alert.entry.js +1 -1
  189. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  190. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  191. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  192. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  193. package/dist/esm-es5/ion-input.entry.js +1 -1
  194. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  195. package/dist/esm-es5/ion-loading.entry.js +1 -1
  196. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  197. package/dist/esm-es5/ion-modal.entry.js +1 -1
  198. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  199. package/dist/esm-es5/ion-picker-column-internal.entry.js +1 -1
  200. package/dist/esm-es5/ion-popover.entry.js +1 -1
  201. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  202. package/dist/esm-es5/ion-range.entry.js +1 -1
  203. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  204. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  205. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  206. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  207. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  208. package/dist/esm-es5/ion-toast.entry.js +1 -1
  209. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  210. package/dist/esm-es5/ionic.js +1 -1
  211. package/dist/esm-es5/{ios.transition-fd16bec1.js → ios.transition-802a84a6.js} +1 -1
  212. package/dist/esm-es5/{keyboard-c402e885.js → keyboard-52278bd7.js} +1 -1
  213. package/dist/esm-es5/{keyboard-dbb05fb9.js → keyboard-73175e24.js} +1 -1
  214. package/dist/esm-es5/{keyboard-controller-5d90929a.js → keyboard-controller-ec5c2bfa.js} +1 -1
  215. package/dist/esm-es5/loader.js +1 -1
  216. package/dist/esm-es5/md.transition-43c2874d.js +4 -0
  217. package/dist/esm-es5/{notch-controller-d09b6aca.js → notch-controller-fea7f9c5.js} +1 -1
  218. package/dist/esm-es5/{overlays-abf58489.js → overlays-32ef481d.js} +1 -1
  219. package/dist/html.html-data.json +14 -1
  220. package/dist/ionic/index.esm.js +1 -1
  221. package/dist/ionic/ionic.esm.js +1 -1
  222. package/dist/ionic/p-01d14eba.system.entry.js +4 -0
  223. package/dist/ionic/{p-3de71759.entry.js → p-042e6f4b.entry.js} +1 -1
  224. package/dist/ionic/p-05d83227.system.entry.js +4 -0
  225. package/dist/ionic/{p-32e19bee.system.js → p-0bd51c34.system.js} +1 -1
  226. package/dist/ionic/{p-73637557.system.entry.js → p-16756e94.system.entry.js} +1 -1
  227. package/dist/ionic/p-1b19c04b.entry.js +4 -0
  228. package/dist/ionic/{p-95c26010.system.js → p-1cca10d6.system.js} +1 -1
  229. package/dist/ionic/p-1e4371bd.js +4 -0
  230. package/dist/ionic/{p-0519cd21.entry.js → p-251666e2.entry.js} +1 -1
  231. package/dist/ionic/{p-4e8e09e1.js → p-27281edd.js} +1 -1
  232. package/dist/ionic/p-28249b10.system.entry.js +4 -0
  233. package/dist/ionic/p-28a2c2a2.entry.js +4 -0
  234. package/dist/ionic/p-29d03b3a.js +4 -0
  235. package/dist/ionic/p-2b7827c7.js +4 -0
  236. package/dist/ionic/p-2d3b9fa3.system.entry.js +4 -0
  237. package/dist/ionic/p-2d539df1.entry.js +4 -0
  238. package/dist/ionic/{p-a0126dd5.system.entry.js → p-3137c025.system.entry.js} +1 -1
  239. package/dist/ionic/{p-30029cc2.system.js → p-31fcb233.system.js} +1 -1
  240. package/dist/ionic/{p-b0dc1cf9.system.js → p-33a37fad.system.js} +1 -1
  241. package/dist/ionic/p-36d187af.js +4 -0
  242. package/dist/ionic/p-376a6063.js +4 -0
  243. package/dist/ionic/p-38f2c6bb.system.js +4 -0
  244. package/dist/ionic/{p-2ba0657d.system.entry.js → p-39c31982.system.entry.js} +1 -1
  245. package/dist/ionic/{p-75445583.js → p-3a75d7fd.js} +1 -1
  246. package/dist/ionic/{p-d40a974a.entry.js → p-3dd98a73.entry.js} +1 -1
  247. package/dist/ionic/p-3e6b47e8.system.entry.js +4 -0
  248. package/dist/ionic/p-3f5179b5.entry.js +4 -0
  249. package/dist/ionic/p-40f68333.system.js +4 -0
  250. package/dist/ionic/{p-643a8fae.js → p-42f189f4.js} +1 -1
  251. package/dist/ionic/{p-9c3b6849.entry.js → p-438e1b8a.entry.js} +1 -1
  252. package/dist/ionic/{p-b752714f.system.entry.js → p-46d400b4.system.entry.js} +1 -1
  253. package/dist/ionic/{p-61d7d7fb.js → p-47b6ba5b.js} +1 -1
  254. package/dist/ionic/{p-b04e4d62.entry.js → p-4d67d27a.entry.js} +1 -1
  255. package/dist/ionic/{p-0b1bc636.entry.js → p-4f3ae45a.entry.js} +1 -1
  256. package/dist/ionic/{p-18b6bd23.system.entry.js → p-517a9885.system.entry.js} +1 -1
  257. package/dist/ionic/p-53ec4f1c.system.js +4 -0
  258. package/dist/ionic/p-5e4eec2e.entry.js +4 -0
  259. package/dist/ionic/{p-57477107.system.js → p-5e745192.system.js} +1 -1
  260. package/dist/ionic/{p-ad019ef0.entry.js → p-5eda1d7d.entry.js} +1 -1
  261. package/dist/ionic/{p-4890093d.js → p-6de472cb.js} +1 -1
  262. package/dist/ionic/{p-08f196ce.system.entry.js → p-6de62649.system.entry.js} +1 -1
  263. package/dist/ionic/p-72f6ff89.js +4 -0
  264. package/dist/ionic/p-765f4dde.entry.js +4 -0
  265. package/dist/ionic/{p-3f6270b3.entry.js → p-78aadecb.entry.js} +1 -1
  266. package/dist/ionic/p-7d92bf15.system.entry.js +4 -0
  267. package/dist/ionic/p-7ee0f3f2.entry.js +4 -0
  268. package/dist/ionic/p-8314281e.system.js +4 -0
  269. package/dist/ionic/p-88d5fbd3.js +4 -0
  270. package/dist/ionic/{p-0e4f2e17.system.js → p-8985cdb6.system.js} +1 -1
  271. package/dist/ionic/{p-d7be6b7e.system.entry.js → p-8acae6b0.system.entry.js} +1 -1
  272. package/dist/ionic/p-8d69a624.entry.js +4 -0
  273. package/dist/ionic/p-8de17614.system.entry.js +4 -0
  274. package/dist/ionic/p-91d33c4a.js +4 -0
  275. package/dist/ionic/p-979d4f5c.system.js +4 -0
  276. package/dist/ionic/p-9b7f0b0f.entry.js +4 -0
  277. package/dist/ionic/p-9e447eb1.system.js +4 -0
  278. package/dist/ionic/p-9f6ee2c0.system.entry.js +4 -0
  279. package/dist/ionic/{p-94389114.system.entry.js → p-a0bb7b92.system.entry.js} +1 -1
  280. package/dist/ionic/{p-f2c21dae.system.js → p-a0d7bb5e.system.js} +1 -1
  281. package/dist/ionic/{p-82045bc1.entry.js → p-a3277a67.entry.js} +1 -1
  282. package/dist/ionic/{p-50880712.entry.js → p-a9978d08.entry.js} +1 -1
  283. package/dist/ionic/{p-3b686a65.system.entry.js → p-ada96dd0.system.entry.js} +1 -1
  284. package/dist/ionic/p-afd6ca9d.entry.js +4 -0
  285. package/dist/ionic/p-b56d0866.system.entry.js +4 -0
  286. package/dist/ionic/{p-67da080d.entry.js → p-b6f9d32a.entry.js} +1 -1
  287. package/dist/ionic/p-c61cc894.js +4 -0
  288. package/dist/ionic/{p-304383f9.system.js → p-cabad15b.system.js} +1 -1
  289. package/dist/ionic/{p-31158892.js → p-cdbeaadc.js} +1 -1
  290. package/dist/ionic/p-d032f825.system.entry.js +4 -0
  291. package/dist/ionic/p-d51674c5.system.js +4 -0
  292. package/dist/ionic/{p-98d82c73.system.js → p-ddbb2d5b.system.js} +1 -1
  293. package/dist/ionic/p-de6f8b28.system.js +4 -0
  294. package/dist/ionic/p-de756e5c.js +4 -0
  295. package/dist/ionic/{p-73ea8f82.system.entry.js → p-dee7c1d0.system.entry.js} +1 -1
  296. package/dist/ionic/p-dfd9432a.entry.js +4 -0
  297. package/dist/ionic/{p-af5cfad2.system.js → p-e24ce1e5.system.js} +1 -1
  298. package/dist/ionic/p-e3584231.system.js +1 -1
  299. package/dist/ionic/p-f0445d82.system.entry.js +4 -0
  300. package/dist/ionic/p-f656e032.system.entry.js +4 -0
  301. package/dist/ionic/{p-17f893be.js → p-f70970cf.js} +1 -1
  302. package/dist/ionic/{p-e553006f.system.entry.js → p-fba0a6e7.system.entry.js} +1 -1
  303. package/dist/ionic/p-feae5133.entry.js +4 -0
  304. package/dist/types/components/checkbox/checkbox.d.ts +1 -0
  305. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +7 -0
  306. package/dist/types/components/input/input.d.ts +2 -0
  307. package/dist/types/components/radio/radio.d.ts +1 -0
  308. package/dist/types/components/radio-group/radio-group-interface.d.ts +1 -0
  309. package/dist/types/components/radio-group/radio-group.d.ts +8 -1
  310. package/dist/types/components/range/range.d.ts +1 -0
  311. package/dist/types/components/router/router.d.ts +2 -1
  312. package/dist/types/components/select/select.d.ts +6 -1
  313. package/dist/types/components/skeleton-text/skeleton-text.d.ts +9 -1
  314. package/dist/types/components/textarea/textarea.d.ts +2 -0
  315. package/dist/types/components/toast/animations/utils.d.ts +15 -4
  316. package/dist/types/components/toast/gestures/swipe-to-dismiss.d.ts +9 -0
  317. package/dist/types/components/toast/toast-interface.d.ts +2 -0
  318. package/dist/types/components/toast/toast.d.ts +28 -1
  319. package/dist/types/components/toggle/toggle.d.ts +1 -0
  320. package/dist/types/components.d.ts +37 -6
  321. package/dist/types/interface.d.ts +1 -5
  322. package/dist/types/jest.d.ts +5 -0
  323. package/dist/types/utils/animation/animation-interface.d.ts +4 -4
  324. package/dist/types/utils/browser/index.d.ts +11 -2
  325. package/dist/types/utils/forms/compare-with-utils.d.ts +18 -0
  326. package/dist/types/utils/forms/index.d.ts +1 -0
  327. package/dist/types/utils/hardware-back-button.d.ts +4 -0
  328. package/dist/types/utils/overlays.d.ts +1 -0
  329. package/dist/types/utils/slot-mutation-controller.d.ts +2 -2
  330. package/hydrate/index.js +643 -184
  331. package/package.json +1 -1
  332. package/dist/cjs/index-306a7476.js +0 -32
  333. package/dist/collection/components/item/test/text/item.e2e.js +0 -14
  334. package/dist/esm/index-7a14ecec.js +0 -29
  335. package/dist/esm-es5/index-80492ed3.js +0 -4
  336. package/dist/esm-es5/input-shims-0a2e541d.js +0 -4
  337. package/dist/esm-es5/input.utils-2846d430.js +0 -4
  338. package/dist/esm-es5/md.transition-94ac93e1.js +0 -4
  339. package/dist/ionic/p-1d17219f.entry.js +0 -4
  340. package/dist/ionic/p-232d1f22.entry.js +0 -4
  341. package/dist/ionic/p-25b32c3d.entry.js +0 -4
  342. package/dist/ionic/p-2ab4e925.system.entry.js +0 -4
  343. package/dist/ionic/p-2d5aeccc.js +0 -4
  344. package/dist/ionic/p-2d600c25.system.js +0 -4
  345. package/dist/ionic/p-308e1341.js +0 -4
  346. package/dist/ionic/p-32303650.system.entry.js +0 -4
  347. package/dist/ionic/p-34c39c48.entry.js +0 -4
  348. package/dist/ionic/p-3c58a71b.js +0 -4
  349. package/dist/ionic/p-3e960213.system.entry.js +0 -4
  350. package/dist/ionic/p-3fd26bd6.system.entry.js +0 -4
  351. package/dist/ionic/p-3fe96156.system.js +0 -4
  352. package/dist/ionic/p-42ba3902.entry.js +0 -4
  353. package/dist/ionic/p-4a31c99f.entry.js +0 -4
  354. package/dist/ionic/p-5a68960f.entry.js +0 -4
  355. package/dist/ionic/p-6470b136.entry.js +0 -4
  356. package/dist/ionic/p-6c37f051.js +0 -4
  357. package/dist/ionic/p-7b8d0af2.system.entry.js +0 -4
  358. package/dist/ionic/p-7faba551.system.entry.js +0 -4
  359. package/dist/ionic/p-83af3685.system.js +0 -4
  360. package/dist/ionic/p-856c430d.js +0 -4
  361. package/dist/ionic/p-93000a81.system.entry.js +0 -4
  362. package/dist/ionic/p-98b14ece.entry.js +0 -4
  363. package/dist/ionic/p-990ffd0e.js +0 -4
  364. package/dist/ionic/p-a6f9dd7b.entry.js +0 -4
  365. package/dist/ionic/p-a98dc0c1.entry.js +0 -4
  366. package/dist/ionic/p-a9e3b5be.system.entry.js +0 -4
  367. package/dist/ionic/p-ab9456e9.system.entry.js +0 -4
  368. package/dist/ionic/p-b4bad293.system.entry.js +0 -4
  369. package/dist/ionic/p-c3289ef2.entry.js +0 -4
  370. package/dist/ionic/p-c3d09cf2.system.entry.js +0 -4
  371. package/dist/ionic/p-d1cb29a8.system.entry.js +0 -4
  372. package/dist/ionic/p-d43f1f3d.system.js +0 -4
  373. package/dist/ionic/p-d662d908.js +0 -4
  374. package/dist/ionic/p-d9695ad9.system.js +0 -4
  375. package/dist/ionic/p-e4d90573.js +0 -4
  376. package/dist/ionic/p-f54c72b0.system.js +0 -4
  377. package/dist/ionic/p-f7a36cd0.system.js +0 -4
  378. package/dist/ionic/p-f967631d.js +0 -4
  379. /package/dist/esm-es5/{index-7a14ecec.js → index-a5d50daf.js} +0 -0
  380. /package/dist/ionic/{p-0e94957a.system.js → p-792919fd.system.js} +0 -0
  381. /package/dist/ionic/{p-b347cfd1.js → p-7b30edcc.js} +0 -0
package/dist/docs.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2023-12-06T15:00:22",
2
+ "timestamp": "2023-12-07T03:56:13",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
5
  "version": "4.8.1",
@@ -4952,6 +4952,10 @@
4952
4952
  "name": "part",
4953
4953
  "text": "container - The container for the checkbox mark."
4954
4954
  },
4955
+ {
4956
+ "name": "part",
4957
+ "text": "label - The label text describing the checkbox."
4958
+ },
4955
4959
  {
4956
4960
  "name": "part",
4957
4961
  "text": "mark - The checkmark used to indicate the checked state."
@@ -5394,6 +5398,10 @@
5394
5398
  "name": "container",
5395
5399
  "docs": "The container for the checkbox mark."
5396
5400
  },
5401
+ {
5402
+ "name": "label",
5403
+ "docs": "The label text describing the checkbox."
5404
+ },
5397
5405
  {
5398
5406
  "name": "mark",
5399
5407
  "docs": "The checkmark used to indicate the checked state."
@@ -9657,6 +9665,14 @@
9657
9665
  {
9658
9666
  "name": "slot",
9659
9667
  "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)"
9668
+ },
9669
+ {
9670
+ "name": "slot",
9671
+ "text": "start - Content to display at the leading edge of the input. (EXPERIMENTAL)"
9672
+ },
9673
+ {
9674
+ "name": "slot",
9675
+ "text": "end - Content to display at the trailing edge of the input. (EXPERIMENTAL)"
9660
9676
  }
9661
9677
  ],
9662
9678
  "usage": {},
@@ -11151,9 +11167,17 @@
11151
11167
  }
11152
11168
  ],
11153
11169
  "slots": [
11170
+ {
11171
+ "name": "end",
11172
+ "docs": "Content to display at the trailing edge of the input. (EXPERIMENTAL)"
11173
+ },
11154
11174
  {
11155
11175
  "name": "label",
11156
11176
  "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)"
11177
+ },
11178
+ {
11179
+ "name": "start",
11180
+ "docs": "Content to display at the leading edge of the input. (EXPERIMENTAL)"
11157
11181
  }
11158
11182
  ],
11159
11183
  "parts": [],
@@ -19324,6 +19348,10 @@
19324
19348
  "name": "part",
19325
19349
  "text": "container - The container for the radio mark."
19326
19350
  },
19351
+ {
19352
+ "name": "part",
19353
+ "text": "label - The label text describing the radio."
19354
+ },
19327
19355
  {
19328
19356
  "name": "part",
19329
19357
  "text": "mark - The checkmark or dot used to indicate the checked state."
@@ -19666,6 +19694,10 @@
19666
19694
  "name": "container",
19667
19695
  "docs": "The container for the radio mark."
19668
19696
  },
19697
+ {
19698
+ "name": "label",
19699
+ "docs": "The label text describing the radio."
19700
+ },
19669
19701
  {
19670
19702
  "name": "mark",
19671
19703
  "docs": "The checkmark or dot used to indicate the checked state."
@@ -19711,6 +19743,42 @@
19711
19743
  "optional": false,
19712
19744
  "required": false
19713
19745
  },
19746
+ {
19747
+ "name": "compareWith",
19748
+ "type": "((currentValue: any, compareValue: any) => boolean) | null | string | undefined",
19749
+ "complexType": {
19750
+ "original": "string | RadioGroupCompareFn | null",
19751
+ "resolved": "((currentValue: any, compareValue: any) => boolean) | null | string | undefined",
19752
+ "references": {
19753
+ "RadioGroupCompareFn": {
19754
+ "location": "import",
19755
+ "path": "./radio-group-interface",
19756
+ "id": "src/components/radio-group/radio-group-interface.ts::RadioGroupCompareFn"
19757
+ }
19758
+ }
19759
+ },
19760
+ "mutable": false,
19761
+ "attr": "compare-with",
19762
+ "reflectToAttr": false,
19763
+ "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.",
19764
+ "docsTags": [],
19765
+ "values": [
19766
+ {
19767
+ "type": "((currentValue: any, compareValue: any) => boolean)"
19768
+ },
19769
+ {
19770
+ "type": "null"
19771
+ },
19772
+ {
19773
+ "type": "string"
19774
+ },
19775
+ {
19776
+ "type": "undefined"
19777
+ }
19778
+ ],
19779
+ "optional": true,
19780
+ "required": false
19781
+ },
19714
19782
  {
19715
19783
  "name": "name",
19716
19784
  "type": "string",
@@ -19844,6 +19912,10 @@
19844
19912
  {
19845
19913
  "name": "part",
19846
19914
  "text": "bar-active - The active part of the bar."
19915
+ },
19916
+ {
19917
+ "name": "part",
19918
+ "text": "label - The label text describing the range."
19847
19919
  }
19848
19920
  ],
19849
19921
  "usage": {},
@@ -20522,6 +20594,10 @@
20522
20594
  "name": "knob",
20523
20595
  "docs": "The handle that is used to drag the range."
20524
20596
  },
20597
+ {
20598
+ "name": "label",
20599
+ "docs": "The label text describing the range."
20600
+ },
20525
20601
  {
20526
20602
  "name": "pin",
20527
20603
  "docs": "The counter that appears above a knob."
@@ -23781,6 +23857,14 @@
23781
23857
  "name": "slot",
23782
23858
  "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."
23783
23859
  },
23860
+ {
23861
+ "name": "slot",
23862
+ "text": "start - Content to display at the leading edge of the select."
23863
+ },
23864
+ {
23865
+ "name": "slot",
23866
+ "text": "end - Content to display at the trailing edge of the select."
23867
+ },
23784
23868
  {
23785
23869
  "name": "part",
23786
23870
  "text": "placeholder - The text displayed in the select when there is no value."
@@ -23909,7 +23993,7 @@
23909
23993
  "mutable": false,
23910
23994
  "attr": "compare-with",
23911
23995
  "reflectToAttr": false,
23912
- "docs": "A property name or function used to compare object values",
23996
+ "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.",
23913
23997
  "docsTags": [],
23914
23998
  "values": [
23915
23999
  {
@@ -24596,9 +24680,17 @@
24596
24680
  }
24597
24681
  ],
24598
24682
  "slots": [
24683
+ {
24684
+ "name": "end",
24685
+ "docs": "Content to display at the trailing edge of the select."
24686
+ },
24599
24687
  {
24600
24688
  "name": "label",
24601
24689
  "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."
24690
+ },
24691
+ {
24692
+ "name": "start",
24693
+ "docs": "Content to display at the leading edge of the select."
24602
24694
  }
24603
24695
  ],
24604
24696
  "parts": [
@@ -26041,6 +26133,14 @@
26041
26133
  {
26042
26134
  "name": "slot",
26043
26135
  "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)"
26136
+ },
26137
+ {
26138
+ "name": "slot",
26139
+ "text": "start - Content to display at the leading edge of the textarea. (EXPERIMENTAL)"
26140
+ },
26141
+ {
26142
+ "name": "slot",
26143
+ "text": "end - Content to display at the trailing edge of the textarea. (EXPERIMENTAL)"
26044
26144
  }
26045
26145
  ],
26046
26146
  "usage": {},
@@ -27091,9 +27191,17 @@
27091
27191
  }
27092
27192
  ],
27093
27193
  "slots": [
27194
+ {
27195
+ "name": "end",
27196
+ "docs": "Content to display at the trailing edge of the textarea. (EXPERIMENTAL)"
27197
+ },
27094
27198
  {
27095
27199
  "name": "label",
27096
27200
  "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)"
27201
+ },
27202
+ {
27203
+ "name": "start",
27204
+ "docs": "Content to display at the leading edge of the textarea. (EXPERIMENTAL)"
27097
27205
  }
27098
27206
  ],
27099
27207
  "parts": [],
@@ -27785,6 +27893,37 @@
27785
27893
  "optional": true,
27786
27894
  "required": false
27787
27895
  },
27896
+ {
27897
+ "name": "swipeGesture",
27898
+ "type": "\"vertical\" | undefined",
27899
+ "complexType": {
27900
+ "original": "ToastSwipeGestureDirection",
27901
+ "resolved": "\"vertical\" | undefined",
27902
+ "references": {
27903
+ "ToastSwipeGestureDirection": {
27904
+ "location": "import",
27905
+ "path": "./toast-interface",
27906
+ "id": "src/components/toast/toast-interface.ts::ToastSwipeGestureDirection"
27907
+ }
27908
+ }
27909
+ },
27910
+ "mutable": false,
27911
+ "attr": "swipe-gesture",
27912
+ "reflectToAttr": false,
27913
+ "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.",
27914
+ "docsTags": [],
27915
+ "values": [
27916
+ {
27917
+ "value": "vertical",
27918
+ "type": "string"
27919
+ },
27920
+ {
27921
+ "type": "undefined"
27922
+ }
27923
+ ],
27924
+ "optional": true,
27925
+ "required": false
27926
+ },
27788
27927
  {
27789
27928
  "name": "translucent",
27790
27929
  "type": "boolean",
@@ -28264,6 +28403,10 @@
28264
28403
  {
28265
28404
  "name": "part",
28266
28405
  "text": "handle - The toggle handle, or knob, used to change the checked state."
28406
+ },
28407
+ {
28408
+ "name": "part",
28409
+ "text": "label - The label text describing the toggle."
28267
28410
  }
28268
28411
  ],
28269
28412
  "usage": {},
@@ -28717,6 +28860,10 @@
28717
28860
  "name": "handle",
28718
28861
  "docs": "The toggle handle, or knob, used to change the checked state."
28719
28862
  },
28863
+ {
28864
+ "name": "label",
28865
+ "docs": "The label text describing the toggle."
28866
+ },
28720
28867
  {
28721
28868
  "name": "track",
28722
28869
  "docs": "The background track of the toggle."
@@ -29093,6 +29240,11 @@
29093
29240
  "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.",
29094
29241
  "path": "src/components/input/input-interface.ts"
29095
29242
  },
29243
+ "src/components/radio-group/radio-group-interface.ts::RadioGroupCompareFn": {
29244
+ "declaration": "(currentValue: any, compareValue: any) => boolean",
29245
+ "docstring": "",
29246
+ "path": "src/components/radio-group/radio-group-interface.ts"
29247
+ },
29096
29248
  "src/components/radio-group/radio-group-interface.ts::RadioGroupChangeEventDetail": {
29097
29249
  "declaration": "export interface RadioGroupChangeEventDetail<T = any> {\n value: T;\n event?: Event;\n}",
29098
29250
  "docstring": "",
@@ -29343,6 +29495,11 @@
29343
29495
  "docstring": "",
29344
29496
  "path": "src/components/toast/toast-interface.ts"
29345
29497
  },
29498
+ "src/components/toast/toast-interface.ts::ToastSwipeGestureDirection": {
29499
+ "declaration": "\"vertical\"",
29500
+ "docstring": "",
29501
+ "path": "src/components/toast/toast-interface.ts"
29502
+ },
29346
29503
  "src/components/toast/toast-interface.ts::ToastPresentOptions": {
29347
29504
  "declaration": "export type ToastPresentOptions = ToastPositionAlias & ToastAnimationPosition;",
29348
29505
  "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-7a14ecec.js';
4
+ import { w as win } from './index-a5d50daf.js';
5
5
  import { r as raf } from './helpers-ae653409.js';
6
6
 
7
7
  let animationPrefix;
@@ -586,6 +586,16 @@ 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;
589
599
  onFinishCallbacks.forEach((onFinishCallback) => {
590
600
  return onFinishCallback.c(currentStep, ani);
591
601
  });
@@ -790,17 +800,8 @@ const createAnimation = (animationId) => {
790
800
  update(false, false);
791
801
  }
792
802
  }
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
- }
803
+ if (playTo !== undefined && !parentAnimation) {
804
+ play();
804
805
  }
805
806
  return ani;
806
807
  };
@@ -2,7 +2,7 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { w as writeTask } from './index-08d686eb.js';
5
- import { h as hapticSelectionEnd, a as hapticSelectionStart, b as hapticSelectionChanged } from './haptic-152c4172.js';
5
+ import { h as hapticSelectionEnd, a as hapticSelectionStart, b as hapticSelectionChanged } from './haptic-554688a5.js';
6
6
  import { createGesture } from './index-2cf77112.js';
7
7
 
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-7a14ecec.js';
4
+ import { w as win } from './index-a5d50daf.js';
5
5
 
6
6
  const getCapacitor = () => {
7
7
  if (win !== undefined) {
@@ -0,0 +1,41 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ /**
5
+ * Uses the compareWith param to compare two values to determine if they are equal.
6
+ *
7
+ * @param currentValue The current value of the control.
8
+ * @param compareValue The value to compare against.
9
+ * @param compareWith The function or property name to use to compare values.
10
+ */
11
+ const compareOptions = (currentValue, compareValue, compareWith) => {
12
+ if (typeof compareWith === 'function') {
13
+ return compareWith(currentValue, compareValue);
14
+ }
15
+ else if (typeof compareWith === 'string') {
16
+ return currentValue[compareWith] === compareValue[compareWith];
17
+ }
18
+ else {
19
+ return Array.isArray(compareValue) ? compareValue.includes(currentValue) : currentValue === compareValue;
20
+ }
21
+ };
22
+ /**
23
+ * Compares a value against the current value(s) to determine if it is selected.
24
+ *
25
+ * @param currentValue The current value of the control.
26
+ * @param compareValue The value to compare against.
27
+ * @param compareWith The function or property name to use to compare values.
28
+ */
29
+ const isOptionSelected = (currentValue, compareValue, compareWith) => {
30
+ if (currentValue === undefined) {
31
+ return false;
32
+ }
33
+ if (Array.isArray(currentValue)) {
34
+ return currentValue.some((val) => compareOptions(val, compareValue, compareWith));
35
+ }
36
+ else {
37
+ return compareOptions(currentValue, compareValue, compareWith);
38
+ }
39
+ };
40
+
41
+ export { compareOptions as c, isOptionSelected as i };
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { g as getCapacitor } from './capacitor-b0e5fe83.js';
4
+ import { g as getCapacitor } from './capacitor-59395cbd.js';
5
5
 
6
6
  var ImpactStyle;
7
7
  (function (ImpactStyle) {
@@ -1,11 +1,12 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { p as printIonWarning } from './index-9b0d46f4.js';
4
+ import { d as doc } from './index-a5d50daf.js';
5
5
  import { MENU_BACK_BUTTON_PRIORITY } from './hardware-back-button-b2bc76db.js';
6
+ import { p as printIonWarning } from './index-9b0d46f4.js';
6
7
  import { c as componentOnReady } from './helpers-ae653409.js';
7
8
  import { b as getIonMode } from './ionic-global-c0cda98e.js';
8
- import { c as createAnimation } from './animation-fb0e0f6f.js';
9
+ import { c as createAnimation } from './animation-dde8cc0d.js';
9
10
 
10
11
  /**
11
12
  * baseAnimation
@@ -272,17 +273,14 @@ const createMenuController = () => {
272
273
  registerAnimation('reveal', menuRevealAnimation);
273
274
  registerAnimation('push', menuPushAnimation);
274
275
  registerAnimation('overlay', menuOverlayAnimation);
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
- }
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
+ });
286
284
  return {
287
285
  registerAnimation,
288
286
  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-fd16bec1.js');
14
- const mdTransitionAnimation = () => import('./md.transition-94ac93e1.js');
13
+ const iosTransitionAnimation = () => import('./ios.transition-802a84a6.js');
14
+ const mdTransitionAnimation = () => import('./md.transition-43c2874d.js');
15
15
  // TODO(FW-2832): types
16
16
  const transition = (opts) => {
17
17
  return new Promise((resolve, reject) => {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { d as doc } from './index-7a14ecec.js';
4
+ import { d as doc } from './index-a5d50daf.js';
5
5
  import { u as now, v as pointerCoord } from './helpers-ae653409.js';
6
6
 
7
7
  const startTapClick = (config) => {
@@ -0,0 +1,7 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ const win = typeof window !== 'undefined' ? window : undefined;
5
+ const doc = typeof document !== 'undefined' ? document : undefined;
6
+
7
+ export { doc as d, win as w };
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-fb0e0f6f.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-d8817fb0.js';
6
- export { iosTransitionAnimation } from './ios.transition-fd16bec1.js';
7
- export { mdTransitionAnimation } from './md.transition-94ac93e1.js';
4
+ export { c as createAnimation } from './animation-dde8cc0d.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-1932b201.js';
6
+ export { iosTransitionAnimation } from './ios.transition-802a84a6.js';
7
+ export { mdTransitionAnimation } from './md.transition-43c2874d.js';
8
8
  export { g as getTimeGivenProgression } from './cubic-bezier-fe2083dc.js';
9
9
  export { createGesture } from './index-2cf77112.js';
10
10
  export { g as getPlatforms, i as initialize, a as isPlatform } from './ionic-global-c0cda98e.js';
11
11
  export { c as componentOnReady } from './helpers-ae653409.js';
12
12
  export { I as IonicSafeString, g as getMode, s as setupConfig } from './config-49c88215.js';
13
13
  export { o as openURL } from './theme-01f3f29c.js';
14
- export { m as menuController } from './index-80492ed3.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-abf58489.js';
16
- import './index-7a14ecec.js';
14
+ export { m as menuController } from './index-0c12c22b.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-32ef481d.js';
16
+ import './index-a5d50daf.js';
17
17
  import './index-08d686eb.js';
18
18
  import './gesture-controller-1bf57181.js';
19
- import './index-9b0d46f4.js';
20
19
  import './hardware-back-button-b2bc76db.js';
20
+ import './index-9b0d46f4.js';
21
21
  import './framework-delegate-bc1fd82a.js';
22
22
 
23
23
  const IonicSlides = (opts) => {
@@ -1,12 +1,12 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
+ import { w as win, d as doc } from './index-a5d50daf.js';
4
5
  import { g as getScrollElement, c as scrollByPoint, f as findClosestIonContent } from './index-b9e742e5.js';
5
6
  import { a as addEventListener, b as removeEventListener, r as raf, c as componentOnReady } from './helpers-ae653409.js';
6
- import { a as KeyboardResize, K as Keyboard } from './keyboard-dbb05fb9.js';
7
- import { w as win } from './index-7a14ecec.js';
7
+ import { a as KeyboardResize, K as Keyboard } from './keyboard-73175e24.js';
8
8
  import './index-9b0d46f4.js';
9
- import './capacitor-b0e5fe83.js';
9
+ import './capacitor-59395cbd.js';
10
10
 
11
11
  const cloneMap = new WeakMap();
12
12
  const relocateInput = (componentEl, inputEl, shouldRelocate, inputRelativeY = 0, disabledClonedInput = false) => {
@@ -504,7 +504,13 @@ const jsSetFocus = async (componentEl, inputEl, contentEl, footerEl, keyboardHei
504
504
 
505
505
  const INPUT_BLURRING = true;
506
506
  const startInputShims = async (config, platform) => {
507
- const doc = document;
507
+ /**
508
+ * If doc is undefined then we are in an SSR environment
509
+ * where input shims do not apply.
510
+ */
511
+ if (doc === undefined) {
512
+ return;
513
+ }
508
514
  const isIOS = platform === 'ios';
509
515
  const isAndroid = platform === 'android';
510
516
  /**
@@ -582,13 +588,12 @@ const startInputShims = async (config, platform) => {
582
588
  for (const input of inputs) {
583
589
  registerInput(input);
584
590
  }
585
- // TODO(FW-2832): types
586
- doc.addEventListener('ionInputDidLoad', ((ev) => {
591
+ doc.addEventListener('ionInputDidLoad', (ev) => {
587
592
  registerInput(ev.detail);
588
- }));
589
- doc.addEventListener('ionInputDidUnload', ((ev) => {
593
+ });
594
+ doc.addEventListener('ionInputDidUnload', (ev) => {
590
595
  unregisterInput(ev.detail);
591
- }));
596
+ });
592
597
  };
593
598
 
594
599
  export { startInputShims };
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { w as win } from './index-7a14ecec.js';
4
+ import { w as win } from './index-a5d50daf.js';
5
5
  import { r as raf } from './helpers-ae653409.js';
6
6
  import { a as printIonError } from './index-9b0d46f4.js';
7
7
 
@@ -11,13 +11,14 @@ import { a as printIonError } from './index-9b0d46f4.js';
11
11
  * This is not needed for components using native slots in the Shadow DOM.
12
12
  * @internal
13
13
  * @param el The host element to observe
14
- * @param slotName mutationCallback will fire when nodes on this slot change
14
+ * @param slotName mutationCallback will fire when nodes on these slot(s) change
15
15
  * @param mutationCallback The callback to fire whenever the slotted content changes
16
16
  */
17
17
  const createSlotMutationController = (el, slotName, mutationCallback) => {
18
18
  let hostMutationObserver;
19
19
  let slottedContentMutationObserver;
20
20
  if (win !== undefined && 'MutationObserver' in win) {
21
+ const slots = Array.isArray(slotName) ? slotName : [slotName];
21
22
  hostMutationObserver = new MutationObserver((entries) => {
22
23
  for (const entry of entries) {
23
24
  for (const node of entry.addedNodes) {
@@ -25,7 +26,7 @@ const createSlotMutationController = (el, slotName, mutationCallback) => {
25
26
  * Check to see if the added node
26
27
  * is our slotted content.
27
28
  */
28
- if (node.nodeType === Node.ELEMENT_NODE && node.slot === slotName) {
29
+ if (node.nodeType === Node.ELEMENT_NODE && slots.includes(node.slot)) {
29
30
  /**
30
31
  * If so, we want to watch the slotted
31
32
  * content itself for changes. This lets us
@@ -2,16 +2,16 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { r as registerInstance, d as createEvent, e as readTask, h, H as Host, f as getElement } from './index-08d686eb.js';
5
- import { c as createButtonActiveGesture } from './button-active-3fdf3e4f.js';
5
+ import { c as createButtonActiveGesture } from './button-active-c6ee4f50.js';
6
6
  import { r as raf } from './helpers-ae653409.js';
7
7
  import { c as createLockController } from './lock-controller-316928be.js';
8
- import { d as createDelegateController, e as createTriggerController, B as BACKDROP, i as isCancel, f as present, g as dismiss, h as eventMethod, s as safeCall, j as prepareOverlay, k as setOverlayId } from './overlays-abf58489.js';
8
+ import { d as createDelegateController, e as createTriggerController, B as BACKDROP, i as isCancel, f as present, g as dismiss, h as eventMethod, s as safeCall, j as prepareOverlay, k as setOverlayId } from './overlays-32ef481d.js';
9
9
  import { g as getClassMap } from './theme-01f3f29c.js';
10
10
  import { b as getIonMode } from './ionic-global-c0cda98e.js';
11
- import { c as createAnimation } from './animation-fb0e0f6f.js';
12
- import './haptic-152c4172.js';
13
- import './capacitor-b0e5fe83.js';
14
- import './index-7a14ecec.js';
11
+ import { c as createAnimation } from './animation-dde8cc0d.js';
12
+ import './haptic-554688a5.js';
13
+ import './capacitor-59395cbd.js';
14
+ import './index-a5d50daf.js';
15
15
  import './index-2cf77112.js';
16
16
  import './gesture-controller-1bf57181.js';
17
17
  import './framework-delegate-bc1fd82a.js';
@@ -3,16 +3,16 @@
3
3
  */
4
4
  import { r as registerInstance, d as createEvent, i as forceUpdate, h, H as Host, f as getElement } from './index-08d686eb.js';
5
5
  import { E as ENABLE_HTML_CONTENT_DEFAULT, a as sanitizeDOMString } from './config-49c88215.js';
6
- import { c as createButtonActiveGesture } from './button-active-3fdf3e4f.js';
6
+ import { c as createButtonActiveGesture } from './button-active-c6ee4f50.js';
7
7
  import { r as raf } from './helpers-ae653409.js';
8
8
  import { c as createLockController } from './lock-controller-316928be.js';
9
- import { d as createDelegateController, e as createTriggerController, B as BACKDROP, i as isCancel, j as prepareOverlay, k as setOverlayId, f as present, g as dismiss, h as eventMethod, s as safeCall } from './overlays-abf58489.js';
9
+ import { d as createDelegateController, e as createTriggerController, B as BACKDROP, i as isCancel, j as prepareOverlay, k as setOverlayId, f as present, g as dismiss, h as eventMethod, s as safeCall } from './overlays-32ef481d.js';
10
10
  import { g as getClassMap } from './theme-01f3f29c.js';
11
11
  import { c as config, b as getIonMode } from './ionic-global-c0cda98e.js';
12
- import { c as createAnimation } from './animation-fb0e0f6f.js';
13
- import './haptic-152c4172.js';
14
- import './capacitor-b0e5fe83.js';
15
- import './index-7a14ecec.js';
12
+ import { c as createAnimation } from './animation-dde8cc0d.js';
13
+ import './haptic-554688a5.js';
14
+ import './capacitor-59395cbd.js';
15
+ import './index-a5d50daf.js';
16
16
  import './index-2cf77112.js';
17
17
  import './gesture-controller-1bf57181.js';
18
18
  import './framework-delegate-bc1fd82a.js';