@ionic/core 8.4.4-dev.11740776520.1b9d8cb9 → 8.4.4-dev.11741030124.1142ac6a

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 (510) hide show
  1. package/components/checkbox.js +4 -6
  2. package/components/helpers.js +11 -1
  3. package/components/index6.js +3 -11
  4. package/components/index9.js +1 -1
  5. package/components/ion-item-divider.js +2 -2
  6. package/components/ion-item-group.js +1 -1
  7. package/components/ion-item-option.js +2 -2
  8. package/components/ion-item-options.js +1 -1
  9. package/components/ion-item-sliding.js +1 -1
  10. package/components/ion-loading.js +2 -2
  11. package/components/ion-menu-button.js +2 -2
  12. package/components/ion-menu-toggle.js +2 -2
  13. package/components/ion-menu.js +2 -2
  14. package/components/ion-nav-link.js +1 -1
  15. package/components/ion-nav.js +1 -1
  16. package/components/ion-note.js +2 -2
  17. package/components/ion-picker-legacy.js +2 -2
  18. package/components/ion-progress-bar.js +1 -1
  19. package/components/ion-range.js +3 -3
  20. package/components/ion-refresher-content.js +1 -1
  21. package/components/ion-refresher.js +1 -1
  22. package/components/ion-reorder-group.js +1 -1
  23. package/components/ion-reorder.js +1 -1
  24. package/components/ion-router-link.js +2 -2
  25. package/components/ion-router-outlet.js +1 -1
  26. package/components/ion-row.js +1 -1
  27. package/components/ion-searchbar.js +4 -4
  28. package/components/ion-segment-button.js +40 -9
  29. package/components/ion-segment-content.js +1 -1
  30. package/components/ion-segment-view.js +2 -2
  31. package/components/ion-segment.js +2 -2
  32. package/components/ion-select-option.js +1 -1
  33. package/components/ion-select.js +41 -16
  34. package/components/ion-skeleton-text.js +2 -2
  35. package/components/ion-split-pane.js +2 -2
  36. package/components/ion-tab-bar.js +2 -2
  37. package/components/ion-tab-button.js +2 -2
  38. package/components/ion-tab.js +2 -2
  39. package/components/ion-tabs.js +1 -1
  40. package/components/ion-text.js +2 -2
  41. package/components/ion-textarea.js +2 -2
  42. package/components/ion-thumbnail.js +1 -1
  43. package/components/ion-toast.js +2 -2
  44. package/components/ion-toggle.js +4 -6
  45. package/components/label.js +2 -2
  46. package/components/list-header.js +2 -2
  47. package/components/modal.js +35 -259
  48. package/components/picker-column-option.js +2 -2
  49. package/components/picker-column2.js +2 -2
  50. package/components/popover.js +2 -2
  51. package/components/radio-group.js +2 -39
  52. package/components/radio.js +3 -3
  53. package/components/ripple-effect.js +1 -1
  54. package/components/select-modal.js +1 -1
  55. package/components/select-popover.js +1 -1
  56. package/components/spinner.js +1 -1
  57. package/components/title.js +2 -2
  58. package/components/toolbar.js +2 -2
  59. package/css/core.css.map +1 -1
  60. package/css/ionic.bundle.css.map +1 -1
  61. package/dist/cjs/{data-108e531d.js → data-21dc0f81.js} +1 -1
  62. package/dist/cjs/{framework-delegate-55f5683a.js → framework-delegate-05579976.js} +1 -1
  63. package/dist/cjs/{helpers-afaa9001.js → helpers-4be3f90d.js} +11 -0
  64. package/dist/cjs/{index-3652c918.js → index-1ae3f40a.js} +2 -2
  65. package/dist/cjs/{index-e975c92b.js → index-4e14a46e.js} +4 -4
  66. package/dist/cjs/{index-2a46a047.js → index-5915f9b3.js} +3 -11
  67. package/dist/cjs/{index-9509ecad.js → index-ad7a712e.js} +1 -1
  68. package/dist/cjs/{index-0d762bba.js → index-c441c903.js} +2 -2
  69. package/dist/cjs/index.cjs.js +8 -8
  70. package/dist/cjs/{input-shims-cd05268a.js → input-shims-e748a364.js} +3 -5
  71. package/dist/cjs/{input.utils-ffb2f81b.js → input.utils-74e4ec28.js} +2 -2
  72. package/dist/cjs/ion-accordion_2.cjs.entry.js +2 -2
  73. package/dist/cjs/ion-action-sheet.cjs.entry.js +4 -4
  74. package/dist/cjs/ion-alert.cjs.entry.js +4 -4
  75. package/dist/cjs/ion-app_8.cjs.entry.js +14 -14
  76. package/dist/cjs/ion-avatar_3.cjs.entry.js +1 -1
  77. package/dist/cjs/ion-back-button.cjs.entry.js +1 -1
  78. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +1 -1
  79. package/dist/cjs/ion-button_2.cjs.entry.js +2 -2
  80. package/dist/cjs/ion-card_5.cjs.entry.js +1 -1
  81. package/dist/cjs/ion-checkbox.cjs.entry.js +5 -6
  82. package/dist/cjs/ion-col_3.cjs.entry.js +1 -1
  83. package/dist/cjs/ion-datetime-button.cjs.entry.js +3 -3
  84. package/dist/cjs/ion-datetime_3.cjs.entry.js +9 -9
  85. package/dist/cjs/ion-fab_3.cjs.entry.js +1 -1
  86. package/dist/cjs/ion-img.cjs.entry.js +1 -1
  87. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +3 -3
  88. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +1 -1
  89. package/dist/cjs/ion-input.cjs.entry.js +4 -4
  90. package/dist/cjs/ion-item-option_3.cjs.entry.js +7 -7
  91. package/dist/cjs/ion-item_8.cjs.entry.js +12 -12
  92. package/dist/cjs/ion-loading.cjs.entry.js +6 -6
  93. package/dist/cjs/ion-menu_3.cjs.entry.js +11 -11
  94. package/dist/cjs/ion-modal.cjs.entry.js +41 -264
  95. package/dist/cjs/ion-nav_2.cjs.entry.js +7 -7
  96. package/dist/cjs/ion-picker-column-option.cjs.entry.js +3 -3
  97. package/dist/cjs/ion-picker-column.cjs.entry.js +1 -1
  98. package/dist/cjs/ion-picker.cjs.entry.js +1 -1
  99. package/dist/cjs/ion-popover.cjs.entry.js +7 -7
  100. package/dist/cjs/ion-progress-bar.cjs.entry.js +2 -2
  101. package/dist/cjs/ion-radio_2.cjs.entry.js +5 -40
  102. package/dist/cjs/ion-range.cjs.entry.js +6 -6
  103. package/dist/cjs/ion-refresher_2.cjs.entry.js +5 -5
  104. package/dist/cjs/ion-reorder_2.cjs.entry.js +5 -5
  105. package/dist/cjs/ion-ripple-effect.cjs.entry.js +1 -1
  106. package/dist/cjs/ion-route_4.cjs.entry.js +3 -3
  107. package/dist/cjs/ion-searchbar.cjs.entry.js +5 -5
  108. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  109. package/dist/cjs/ion-segment-view.cjs.entry.js +2 -2
  110. package/dist/cjs/ion-segment_2.cjs.entry.js +42 -11
  111. package/dist/cjs/ion-select-modal.cjs.entry.js +5 -5
  112. package/dist/cjs/ion-select_3.cjs.entry.js +47 -21
  113. package/dist/cjs/ion-spinner.cjs.entry.js +1 -1
  114. package/dist/cjs/ion-split-pane.cjs.entry.js +2 -2
  115. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +5 -5
  116. package/dist/cjs/ion-tab_2.cjs.entry.js +5 -5
  117. package/dist/cjs/ion-text.cjs.entry.js +2 -2
  118. package/dist/cjs/ion-textarea.cjs.entry.js +6 -6
  119. package/dist/cjs/ion-toast.cjs.entry.js +6 -6
  120. package/dist/cjs/ion-toggle.cjs.entry.js +5 -6
  121. package/dist/cjs/ionic.cjs.js +1 -1
  122. package/dist/cjs/{ios.transition-0e664e88.js → ios.transition-afdec89f.js} +3 -3
  123. package/dist/cjs/loader.cjs.js +1 -1
  124. package/dist/cjs/{md.transition-2e8aef2c.js → md.transition-9f0d3db5.js} +3 -3
  125. package/dist/cjs/{notch-controller-d69150f5.js → notch-controller-a0c464d1.js} +1 -1
  126. package/dist/cjs/{overlays-65fdaff6.js → overlays-76b29cd4.js} +3 -3
  127. package/dist/cjs/{status-tap-d74f1429.js → status-tap-fb807fad.js} +3 -4
  128. package/dist/cjs/{swipe-back-0303a5e4.js → swipe-back-47a52b83.js} +1 -1
  129. package/dist/collection/components/checkbox/checkbox.js +4 -23
  130. package/dist/collection/components/item-divider/item-divider.js +2 -2
  131. package/dist/collection/components/item-group/item-group.js +1 -1
  132. package/dist/collection/components/item-option/item-option.js +2 -2
  133. package/dist/collection/components/item-options/item-options.js +1 -1
  134. package/dist/collection/components/item-sliding/item-sliding.js +1 -1
  135. package/dist/collection/components/label/label.js +2 -2
  136. package/dist/collection/components/list-header/list-header.js +2 -2
  137. package/dist/collection/components/loading/loading.js +2 -2
  138. package/dist/collection/components/menu/menu.js +2 -2
  139. package/dist/collection/components/menu-button/menu-button.js +2 -2
  140. package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
  141. package/dist/collection/components/modal/animations/ios.enter.js +4 -50
  142. package/dist/collection/components/modal/animations/ios.leave.js +2 -24
  143. package/dist/collection/components/modal/animations/md.enter.js +5 -52
  144. package/dist/collection/components/modal/animations/md.leave.js +3 -26
  145. package/dist/collection/components/modal/animations/sheet.js +2 -11
  146. package/dist/collection/components/modal/gestures/sheet.js +10 -79
  147. package/dist/collection/components/modal/modal.ios.css +0 -16
  148. package/dist/collection/components/modal/modal.js +7 -32
  149. package/dist/collection/components/modal/modal.md.css +0 -6
  150. package/dist/collection/components/nav/nav.js +1 -1
  151. package/dist/collection/components/nav-link/nav-link.js +1 -1
  152. package/dist/collection/components/note/note.js +2 -2
  153. package/dist/collection/components/picker-column-option/picker-column-option.js +2 -2
  154. package/dist/collection/components/picker-legacy/picker.js +2 -2
  155. package/dist/collection/components/picker-legacy-column/picker-column.js +2 -2
  156. package/dist/collection/components/popover/popover.js +2 -2
  157. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  158. package/dist/collection/components/radio/radio.js +3 -3
  159. package/dist/collection/components/radio-group/radio-group.js +1 -72
  160. package/dist/collection/components/range/range.js +3 -3
  161. package/dist/collection/components/refresher/refresher.js +1 -1
  162. package/dist/collection/components/refresher-content/refresher-content.js +1 -1
  163. package/dist/collection/components/reorder/reorder.js +1 -1
  164. package/dist/collection/components/reorder-group/reorder-group.js +1 -1
  165. package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
  166. package/dist/collection/components/router-link/router-link.js +2 -2
  167. package/dist/collection/components/router-outlet/router-outlet.js +1 -1
  168. package/dist/collection/components/row/row.js +1 -1
  169. package/dist/collection/components/searchbar/searchbar.js +4 -4
  170. package/dist/collection/components/segment/segment.js +2 -2
  171. package/dist/collection/components/segment-button/segment-button.js +40 -9
  172. package/dist/collection/components/segment-content/segment-content.js +1 -1
  173. package/dist/collection/components/segment-view/segment-view.js +2 -2
  174. package/dist/collection/components/select/select.js +40 -32
  175. package/dist/collection/components/select-modal/select-modal.js +1 -1
  176. package/dist/collection/components/select-option/select-option.js +1 -1
  177. package/dist/collection/components/select-popover/select-popover.js +1 -1
  178. package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
  179. package/dist/collection/components/spinner/spinner.js +1 -1
  180. package/dist/collection/components/split-pane/split-pane.js +2 -2
  181. package/dist/collection/components/tab/tab.js +2 -2
  182. package/dist/collection/components/tab-bar/tab-bar.js +2 -2
  183. package/dist/collection/components/tab-button/tab-button.js +2 -2
  184. package/dist/collection/components/tabs/tabs.js +1 -1
  185. package/dist/collection/components/text/text.js +2 -2
  186. package/dist/collection/components/textarea/textarea.js +2 -2
  187. package/dist/collection/components/thumbnail/thumbnail.js +1 -1
  188. package/dist/collection/components/title/title.js +2 -2
  189. package/dist/collection/components/toast/toast.js +2 -2
  190. package/dist/collection/components/toggle/toggle.js +4 -23
  191. package/dist/collection/components/toolbar/toolbar.js +2 -6
  192. package/dist/collection/utils/helpers.js +10 -0
  193. package/dist/collection/utils/logging/index.js +3 -10
  194. package/dist/docs.json +2 -163
  195. package/dist/esm/{data-b3284b5e.js → data-ae11fd43.js} +1 -1
  196. package/dist/esm/{framework-delegate-63d1a679.js → framework-delegate-f683816e.js} +1 -1
  197. package/dist/esm/{helpers-da915de8.js → helpers-9b49d7d2.js} +11 -1
  198. package/dist/esm/{index-efb8ecdf.js → index-33f7e3ff.js} +2 -2
  199. package/dist/esm/{index-79b30591.js → index-5a0f5fd0.js} +1 -1
  200. package/dist/esm/{index-2f7fde3d.js → index-7ec5519a.js} +4 -4
  201. package/dist/esm/{index-cb21eccb.js → index-8785a9c6.js} +2 -2
  202. package/dist/esm/{index-6ad967f3.js → index-9b0d46f4.js} +3 -11
  203. package/dist/esm/index.js +8 -8
  204. package/dist/esm/{input-shims-2fd7c6ef.js → input-shims-0e65111b.js} +3 -5
  205. package/dist/esm/{input.utils-961c9f17.js → input.utils-1ad8dafc.js} +2 -2
  206. package/dist/esm/ion-accordion_2.entry.js +2 -2
  207. package/dist/esm/ion-action-sheet.entry.js +4 -4
  208. package/dist/esm/ion-alert.entry.js +4 -4
  209. package/dist/esm/ion-app_8.entry.js +14 -14
  210. package/dist/esm/ion-avatar_3.entry.js +1 -1
  211. package/dist/esm/ion-back-button.entry.js +1 -1
  212. package/dist/esm/ion-breadcrumb_2.entry.js +1 -1
  213. package/dist/esm/ion-button_2.entry.js +2 -2
  214. package/dist/esm/ion-card_5.entry.js +1 -1
  215. package/dist/esm/ion-checkbox.entry.js +5 -6
  216. package/dist/esm/ion-col_3.entry.js +1 -1
  217. package/dist/esm/ion-datetime-button.entry.js +3 -3
  218. package/dist/esm/ion-datetime_3.entry.js +9 -9
  219. package/dist/esm/ion-fab_3.entry.js +1 -1
  220. package/dist/esm/ion-img.entry.js +1 -1
  221. package/dist/esm/ion-infinite-scroll_2.entry.js +3 -3
  222. package/dist/esm/ion-input-password-toggle.entry.js +1 -1
  223. package/dist/esm/ion-input.entry.js +4 -4
  224. package/dist/esm/ion-item-option_3.entry.js +7 -7
  225. package/dist/esm/ion-item_8.entry.js +12 -12
  226. package/dist/esm/ion-loading.entry.js +6 -6
  227. package/dist/esm/ion-menu_3.entry.js +11 -11
  228. package/dist/esm/ion-modal.entry.js +41 -264
  229. package/dist/esm/ion-nav_2.entry.js +7 -7
  230. package/dist/esm/ion-picker-column-option.entry.js +3 -3
  231. package/dist/esm/ion-picker-column.entry.js +1 -1
  232. package/dist/esm/ion-picker.entry.js +1 -1
  233. package/dist/esm/ion-popover.entry.js +7 -7
  234. package/dist/esm/ion-progress-bar.entry.js +2 -2
  235. package/dist/esm/ion-radio_2.entry.js +5 -40
  236. package/dist/esm/ion-range.entry.js +6 -6
  237. package/dist/esm/ion-refresher_2.entry.js +5 -5
  238. package/dist/esm/ion-reorder_2.entry.js +5 -5
  239. package/dist/esm/ion-ripple-effect.entry.js +1 -1
  240. package/dist/esm/ion-route_4.entry.js +3 -3
  241. package/dist/esm/ion-searchbar.entry.js +5 -5
  242. package/dist/esm/ion-segment-content.entry.js +1 -1
  243. package/dist/esm/ion-segment-view.entry.js +2 -2
  244. package/dist/esm/ion-segment_2.entry.js +42 -11
  245. package/dist/esm/ion-select-modal.entry.js +5 -5
  246. package/dist/esm/ion-select_3.entry.js +47 -21
  247. package/dist/esm/ion-spinner.entry.js +1 -1
  248. package/dist/esm/ion-split-pane.entry.js +2 -2
  249. package/dist/esm/ion-tab-bar_2.entry.js +5 -5
  250. package/dist/esm/ion-tab_2.entry.js +5 -5
  251. package/dist/esm/ion-text.entry.js +2 -2
  252. package/dist/esm/ion-textarea.entry.js +6 -6
  253. package/dist/esm/ion-toast.entry.js +6 -6
  254. package/dist/esm/ion-toggle.entry.js +5 -6
  255. package/dist/esm/ionic.js +1 -1
  256. package/dist/esm/{ios.transition-b1da3753.js → ios.transition-085853ff.js} +3 -3
  257. package/dist/esm/loader.js +1 -1
  258. package/dist/esm/{md.transition-571b3859.js → md.transition-33826623.js} +3 -3
  259. package/dist/esm/{notch-controller-55b09e11.js → notch-controller-3dc61260.js} +1 -1
  260. package/dist/esm/{overlays-5deab4de.js → overlays-e3d0d356.js} +3 -3
  261. package/dist/esm/{status-tap-79eac0ac.js → status-tap-163e8128.js} +3 -4
  262. package/dist/esm/{swipe-back-e5394307.js → swipe-back-23ee7ab1.js} +1 -1
  263. package/dist/esm-es5/{data-b3284b5e.js → data-ae11fd43.js} +1 -1
  264. package/dist/esm-es5/{framework-delegate-63d1a679.js → framework-delegate-f683816e.js} +1 -1
  265. package/dist/esm-es5/{helpers-da915de8.js → helpers-9b49d7d2.js} +1 -1
  266. package/dist/esm-es5/{index-efb8ecdf.js → index-33f7e3ff.js} +1 -1
  267. package/dist/esm-es5/{index-79b30591.js → index-5a0f5fd0.js} +1 -1
  268. package/dist/esm-es5/{index-2f7fde3d.js → index-7ec5519a.js} +1 -1
  269. package/dist/esm-es5/{index-cb21eccb.js → index-8785a9c6.js} +1 -1
  270. package/dist/esm-es5/index-9b0d46f4.js +4 -0
  271. package/dist/esm-es5/index.js +1 -1
  272. package/dist/esm-es5/input-shims-0e65111b.js +4 -0
  273. package/dist/esm-es5/{input.utils-961c9f17.js → input.utils-1ad8dafc.js} +1 -1
  274. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  275. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  276. package/dist/esm-es5/ion-alert.entry.js +1 -1
  277. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  278. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  279. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  280. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  281. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  282. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  283. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  284. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  285. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  286. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  287. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  288. package/dist/esm-es5/ion-img.entry.js +1 -1
  289. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  290. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  291. package/dist/esm-es5/ion-input.entry.js +1 -1
  292. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  293. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  294. package/dist/esm-es5/ion-loading.entry.js +1 -1
  295. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  296. package/dist/esm-es5/ion-modal.entry.js +1 -1
  297. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  298. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  299. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  300. package/dist/esm-es5/ion-picker.entry.js +1 -1
  301. package/dist/esm-es5/ion-popover.entry.js +1 -1
  302. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  303. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  304. package/dist/esm-es5/ion-range.entry.js +1 -1
  305. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  306. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  307. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  308. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  309. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  310. package/dist/esm-es5/ion-segment-content.entry.js +1 -1
  311. package/dist/esm-es5/ion-segment-view.entry.js +1 -1
  312. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  313. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  314. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  315. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  316. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  317. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  318. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  319. package/dist/esm-es5/ion-text.entry.js +1 -1
  320. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  321. package/dist/esm-es5/ion-toast.entry.js +1 -1
  322. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  323. package/dist/esm-es5/ionic.js +1 -1
  324. package/dist/esm-es5/{ios.transition-b1da3753.js → ios.transition-085853ff.js} +1 -1
  325. package/dist/esm-es5/loader.js +1 -1
  326. package/dist/esm-es5/md.transition-33826623.js +4 -0
  327. package/dist/esm-es5/{notch-controller-55b09e11.js → notch-controller-3dc61260.js} +1 -1
  328. package/dist/esm-es5/{overlays-5deab4de.js → overlays-e3d0d356.js} +1 -1
  329. package/dist/esm-es5/status-tap-163e8128.js +4 -0
  330. package/dist/esm-es5/{swipe-back-e5394307.js → swipe-back-23ee7ab1.js} +1 -1
  331. package/dist/html.html-data.json +0 -24
  332. package/dist/ionic/index.esm.js +1 -1
  333. package/dist/ionic/ionic.esm.js +1 -1
  334. package/dist/ionic/{p-f1c4dcd4.js → p-02e1ebd9.js} +1 -1
  335. package/dist/ionic/{p-6f0f433c.entry.js → p-02e23f26.entry.js} +1 -1
  336. package/dist/ionic/{p-797204e3.entry.js → p-0397811d.entry.js} +1 -1
  337. package/dist/ionic/p-06fee233.js +4 -0
  338. package/dist/ionic/p-075a94bd.js +4 -0
  339. package/dist/ionic/p-0a59f4fa.entry.js +4 -0
  340. package/dist/ionic/{p-2346ab53.system.entry.js → p-0c9b6d3a.system.entry.js} +1 -1
  341. package/dist/ionic/p-0e43be1b.entry.js +4 -0
  342. package/dist/ionic/{p-7ed1657c.system.entry.js → p-0eb2553a.system.entry.js} +1 -1
  343. package/dist/ionic/p-0ee3b5a2.system.js +4 -0
  344. package/dist/ionic/p-135e5731.js +4 -0
  345. package/dist/ionic/{p-b6efeab8.js → p-13dc21b0.js} +1 -1
  346. package/dist/ionic/{p-7a6eaf9e.entry.js → p-14143257.entry.js} +1 -1
  347. package/dist/ionic/p-14be4015.entry.js +4 -0
  348. package/dist/ionic/{p-248318e0.system.entry.js → p-162c8d0c.system.entry.js} +1 -1
  349. package/dist/ionic/{p-2f43663c.system.entry.js → p-16799667.system.entry.js} +1 -1
  350. package/dist/ionic/p-16bfb979.system.entry.js +4 -0
  351. package/dist/ionic/{p-a88dec0d.system.js → p-1a790eef.system.js} +2 -2
  352. package/dist/ionic/{p-d4c9f8f6.system.entry.js → p-1bbe8665.system.entry.js} +2 -2
  353. package/dist/ionic/{p-fd257e86.system.entry.js → p-1bc65aec.system.entry.js} +1 -1
  354. package/dist/ionic/p-1f405274.js +4 -0
  355. package/dist/ionic/{p-120fb79a.entry.js → p-203633d1.entry.js} +1 -1
  356. package/dist/ionic/{p-9659caca.system.entry.js → p-2507278c.system.entry.js} +1 -1
  357. package/dist/ionic/{p-4fb8b6f8.system.entry.js → p-2515cb4d.system.entry.js} +1 -1
  358. package/dist/ionic/p-25fa1d30.system.entry.js +4 -0
  359. package/dist/ionic/{p-eb86eafb.entry.js → p-26194519.entry.js} +1 -1
  360. package/dist/ionic/{p-959886ca.entry.js → p-265939f0.entry.js} +1 -1
  361. package/dist/ionic/{p-c078a25d.system.entry.js → p-2abae1cc.system.entry.js} +1 -1
  362. package/dist/ionic/{p-34b11c24.js → p-2bc73fb5.js} +1 -1
  363. package/dist/ionic/p-2c9eb774.system.js +4 -0
  364. package/dist/ionic/{p-08f8804f.system.entry.js → p-2ef3c7ee.system.entry.js} +1 -1
  365. package/dist/ionic/p-322c5fb4.system.js +1 -1
  366. package/dist/ionic/{p-5a064906.entry.js → p-32e99b0a.entry.js} +1 -1
  367. package/dist/ionic/{p-c4238c12.system.js → p-340e3f24.system.js} +1 -1
  368. package/dist/ionic/{p-a090bce8.system.entry.js → p-3572f86a.system.entry.js} +1 -1
  369. package/dist/ionic/{p-14350389.system.entry.js → p-3df889b3.system.entry.js} +2 -2
  370. package/dist/ionic/{p-05b74e45.system.entry.js → p-3eaf1444.system.entry.js} +1 -1
  371. package/dist/ionic/{p-2034ff3e.entry.js → p-41780810.entry.js} +1 -1
  372. package/dist/ionic/{p-468b7fe5.system.entry.js → p-424eb140.system.entry.js} +1 -1
  373. package/dist/ionic/{p-1ab13b2b.js → p-42808996.js} +1 -1
  374. package/dist/ionic/{p-a9b68560.system.entry.js → p-4346c79d.system.entry.js} +1 -1
  375. package/dist/ionic/{p-a15ddedb.system.js → p-4452a8ac.system.js} +1 -1
  376. package/dist/ionic/{p-b1eb86fd.entry.js → p-45de8d2a.entry.js} +1 -1
  377. package/dist/ionic/{p-8ac07653.system.entry.js → p-48a8d9b4.system.entry.js} +2 -2
  378. package/dist/ionic/p-49a0e74c.entry.js +4 -0
  379. package/dist/ionic/{p-52d7a191.entry.js → p-4ad78edc.entry.js} +1 -1
  380. package/dist/ionic/{p-46d78904.entry.js → p-4c252070.entry.js} +1 -1
  381. package/dist/ionic/{p-19ea7bff.system.js → p-5126cf1e.system.js} +1 -1
  382. package/dist/ionic/{p-cb13696c.js → p-51dec25d.js} +1 -1
  383. package/dist/ionic/{p-933727f9.system.entry.js → p-561ddcd4.system.entry.js} +2 -2
  384. package/dist/ionic/p-56da53ad.system.entry.js +4 -0
  385. package/dist/ionic/{p-948e6c6a.entry.js → p-57379000.entry.js} +1 -1
  386. package/dist/ionic/{p-c8c015fa.entry.js → p-57ceead7.entry.js} +1 -1
  387. package/dist/ionic/{p-571f7efd.entry.js → p-5b932840.entry.js} +1 -1
  388. package/dist/ionic/{p-15d18206.entry.js → p-5cde8ef3.entry.js} +1 -1
  389. package/dist/ionic/{p-0f00abe2.entry.js → p-6190d0d6.entry.js} +1 -1
  390. package/dist/ionic/p-61d044b4.entry.js +4 -0
  391. package/dist/ionic/{p-f200c0f2.entry.js → p-62af944c.entry.js} +1 -1
  392. package/dist/ionic/p-68dc53a5.js +4 -0
  393. package/dist/ionic/{p-308d9b4c.entry.js → p-6b1bd0c1.entry.js} +1 -1
  394. package/dist/ionic/{p-48d2c8e3.entry.js → p-6d32975a.entry.js} +1 -1
  395. package/dist/ionic/{p-458d8052.system.entry.js → p-70ccc275.system.entry.js} +2 -2
  396. package/dist/ionic/{p-d12c8b7c.entry.js → p-73dc4950.entry.js} +1 -1
  397. package/dist/ionic/{p-65493214.system.entry.js → p-7458862e.system.entry.js} +1 -1
  398. package/dist/ionic/{p-d1918f92.entry.js → p-76446a85.entry.js} +1 -1
  399. package/dist/ionic/{p-e7bfd50d.system.entry.js → p-77e7b7b6.system.entry.js} +1 -1
  400. package/dist/ionic/{p-72812e99.js → p-7a1766d6.js} +1 -1
  401. package/dist/ionic/{p-6270042b.system.entry.js → p-7b96e5c1.system.entry.js} +1 -1
  402. package/dist/ionic/{p-aacfc8f1.entry.js → p-7b98cebe.entry.js} +1 -1
  403. package/dist/ionic/{p-766477e0.entry.js → p-803f0bc2.entry.js} +1 -1
  404. package/dist/ionic/{p-f0270b8c.entry.js → p-82b931e2.entry.js} +1 -1
  405. package/dist/ionic/{p-2b0ce71f.entry.js → p-83e68c71.entry.js} +1 -1
  406. package/dist/ionic/p-84b1b9a0.entry.js +4 -0
  407. package/dist/ionic/{p-1e67b266.system.entry.js → p-84d08aae.system.entry.js} +1 -1
  408. package/dist/ionic/{p-d22e2a38.system.js → p-881d9e52.system.js} +1 -1
  409. package/dist/ionic/p-8a836849.entry.js +4 -0
  410. package/dist/ionic/{p-e09d6392.system.entry.js → p-91f17b25.system.entry.js} +2 -2
  411. package/dist/ionic/{p-1eb2e3bc.system.entry.js → p-92365bc1.system.entry.js} +1 -1
  412. package/dist/ionic/{p-d7aa6b00.entry.js → p-955c3eb8.entry.js} +1 -1
  413. package/dist/ionic/{p-7d6d8f1f.entry.js → p-95775830.entry.js} +1 -1
  414. package/dist/ionic/{p-8635f5e6.system.js → p-95da3ae2.system.js} +1 -1
  415. package/dist/ionic/{p-102e55aa.system.entry.js → p-9a1f985d.system.entry.js} +1 -1
  416. package/dist/ionic/{p-b9d7015f.entry.js → p-9b3bb24e.entry.js} +1 -1
  417. package/dist/ionic/{p-1854b62d.system.entry.js → p-9be5f3ee.system.entry.js} +2 -2
  418. package/dist/ionic/{p-5c08627a.system.js → p-9eee4de1.system.js} +1 -1
  419. package/dist/ionic/{p-7de1e42c.system.js → p-a2b6dd57.system.js} +1 -1
  420. package/dist/ionic/{p-a2cc2247.system.entry.js → p-a3c78186.system.entry.js} +1 -1
  421. package/dist/ionic/{p-71c66f13.system.entry.js → p-a4575db1.system.entry.js} +1 -1
  422. package/dist/ionic/{p-01186920.system.entry.js → p-a9e24ae2.system.entry.js} +1 -1
  423. package/dist/ionic/{p-0eb35a7f.system.js → p-aa63b365.system.js} +1 -1
  424. package/dist/ionic/{p-b8427d77.entry.js → p-af09741c.entry.js} +1 -1
  425. package/dist/ionic/{p-442e3021.entry.js → p-afecb188.entry.js} +1 -1
  426. package/dist/ionic/{p-a8f2c254.entry.js → p-b0d8bbee.entry.js} +1 -1
  427. package/dist/ionic/{p-3ad285e3.system.js → p-b3680e2f.system.js} +1 -1
  428. package/dist/ionic/p-b7433d7d.js +4 -0
  429. package/dist/ionic/{p-e1ebcbb2.system.entry.js → p-b91acf8d.system.entry.js} +1 -1
  430. package/dist/ionic/{p-b51e4004.js → p-bb11d9fb.js} +1 -1
  431. package/dist/ionic/{p-081a4ce4.entry.js → p-bb2a6761.entry.js} +1 -1
  432. package/dist/ionic/{p-ada36597.system.js → p-c1b51537.system.js} +1 -1
  433. package/dist/ionic/{p-8cfba7e9.system.entry.js → p-c29f8157.system.entry.js} +1 -1
  434. package/dist/ionic/{p-d3a4e061.entry.js → p-c32644d7.entry.js} +1 -1
  435. package/dist/ionic/{p-c41ac815.entry.js → p-c8d645b3.entry.js} +1 -1
  436. package/dist/ionic/p-cc700b6b.entry.js +4 -0
  437. package/dist/ionic/{p-1fdf3d2e.system.entry.js → p-d06601eb.system.entry.js} +1 -1
  438. package/dist/ionic/{p-bac6d8b8.system.entry.js → p-d192fdf7.system.entry.js} +1 -1
  439. package/dist/ionic/{p-34093a29.system.entry.js → p-d3b26da4.system.entry.js} +1 -1
  440. package/dist/ionic/{p-3cc276f4.js → p-d4ca0475.js} +1 -1
  441. package/dist/ionic/{p-1a5bc5f7.js → p-d60342e3.js} +1 -1
  442. package/dist/ionic/{p-89bf08c7.entry.js → p-da074ff7.entry.js} +1 -1
  443. package/dist/ionic/{p-58d5df0c.system.entry.js → p-da8ef548.system.entry.js} +1 -1
  444. package/dist/ionic/{p-985a7e17.system.entry.js → p-dc146a2a.system.entry.js} +1 -1
  445. package/dist/ionic/{p-cac0e0b3.system.entry.js → p-dd0c9350.system.entry.js} +1 -1
  446. package/dist/ionic/p-df862603.entry.js +4 -0
  447. package/dist/ionic/{p-d1d88a4a.entry.js → p-e1bbacb7.entry.js} +1 -1
  448. package/dist/ionic/{p-0445f081.system.entry.js → p-e265ae18.system.entry.js} +1 -1
  449. package/dist/ionic/{p-b0dce4ab.system.entry.js → p-e2e19375.system.entry.js} +1 -1
  450. package/dist/ionic/p-e308de5b.system.js +4 -0
  451. package/dist/ionic/{p-a4a2420e.system.entry.js → p-e456ee59.system.entry.js} +1 -1
  452. package/dist/ionic/{p-b3c60433.system.js → p-e8232807.system.js} +1 -1
  453. package/dist/ionic/{p-15e76dd1.entry.js → p-e8f34871.entry.js} +1 -1
  454. package/dist/ionic/{p-ef2b566d.entry.js → p-e97a3f44.entry.js} +1 -1
  455. package/dist/ionic/{p-d8a385f2.system.entry.js → p-ed75fcfb.system.entry.js} +1 -1
  456. package/dist/ionic/{p-6b888f65.system.entry.js → p-f301a694.system.entry.js} +1 -1
  457. package/dist/ionic/{p-e76dae93.entry.js → p-f42743d1.entry.js} +1 -1
  458. package/dist/ionic/{p-28706c6f.js → p-f5035354.js} +1 -1
  459. package/dist/ionic/{p-343b6b1d.system.js → p-f687573e.system.js} +1 -1
  460. package/dist/ionic/{p-03692b8d.system.entry.js → p-f78af648.system.entry.js} +1 -1
  461. package/dist/ionic/{p-63b0abde.system.entry.js → p-f89cf011.system.entry.js} +1 -1
  462. package/dist/ionic/{p-7b9a2b23.entry.js → p-fca17935.entry.js} +1 -1
  463. package/dist/ionic/{p-ed059cb7.system.entry.js → p-fca6ef5f.system.entry.js} +1 -1
  464. package/dist/ionic/p-ff4b7e40.system.js +4 -0
  465. package/dist/ionic/{p-f03b3a76.system.entry.js → p-ffc48bc5.system.entry.js} +1 -1
  466. package/dist/types/components/checkbox/checkbox.d.ts +0 -6
  467. package/dist/types/components/modal/animations/sheet.d.ts +0 -1
  468. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  469. package/dist/types/components/modal/modal-interface.d.ts +0 -1
  470. package/dist/types/components/modal/modal.d.ts +0 -11
  471. package/dist/types/components/radio-group/radio-group.d.ts +0 -15
  472. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  473. package/dist/types/components/select/select.d.ts +0 -6
  474. package/dist/types/components/toggle/toggle.d.ts +0 -6
  475. package/dist/types/components/toolbar/toolbar.d.ts +0 -4
  476. package/dist/types/components.d.ts +0 -48
  477. package/dist/types/utils/config.d.ts +0 -9
  478. package/dist/types/utils/helpers.d.ts +1 -0
  479. package/dist/types/utils/logging/index.d.ts +1 -13
  480. package/hydrate/index.js +219 -428
  481. package/hydrate/index.mjs +219 -428
  482. package/package.json +3 -3
  483. package/dist/collection/components/radio-group/radio-group.ios.css +0 -202
  484. package/dist/collection/components/radio-group/radio-group.md.css +0 -202
  485. package/dist/esm-es5/index-6ad967f3.js +0 -4
  486. package/dist/esm-es5/input-shims-2fd7c6ef.js +0 -4
  487. package/dist/esm-es5/md.transition-571b3859.js +0 -4
  488. package/dist/esm-es5/status-tap-79eac0ac.js +0 -4
  489. package/dist/ionic/p-073b47c8.system.entry.js +0 -4
  490. package/dist/ionic/p-0af823e1.js +0 -4
  491. package/dist/ionic/p-116f21ad.entry.js +0 -4
  492. package/dist/ionic/p-13966709.entry.js +0 -4
  493. package/dist/ionic/p-4c2d5b80.system.js +0 -4
  494. package/dist/ionic/p-4c98e2cf.system.js +0 -4
  495. package/dist/ionic/p-58fff30e.entry.js +0 -4
  496. package/dist/ionic/p-67222c16.system.js +0 -4
  497. package/dist/ionic/p-6c95736e.entry.js +0 -4
  498. package/dist/ionic/p-702bc67d.entry.js +0 -4
  499. package/dist/ionic/p-72bc8a1c.js +0 -4
  500. package/dist/ionic/p-7513b0c4.js +0 -4
  501. package/dist/ionic/p-9343a445.js +0 -4
  502. package/dist/ionic/p-9fd14430.system.entry.js +0 -4
  503. package/dist/ionic/p-a3db8ee3.js +0 -4
  504. package/dist/ionic/p-c5d5571d.system.entry.js +0 -4
  505. package/dist/ionic/p-d1c5b60e.system.js +0 -4
  506. package/dist/ionic/p-e8d56122.js +0 -4
  507. package/dist/ionic/p-eb027b33.entry.js +0 -4
  508. package/dist/ionic/p-edbf38cf.entry.js +0 -4
  509. package/dist/ionic/p-ef67a752.entry.js +0 -4
  510. package/dist/ionic/p-efe06d98.entry.js +0 -4
@@ -2,15 +2,15 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { r as registerInstance, d as createEvent, w as writeTask, h, f as Host, i as getElement } from './index-28849c61.js';
5
- import { f as findClosestIonContent, i as isIonContent, d as disableContentScrollY, r as resetContentScrollY, a as findIonContent, p as printIonContentErrorMsg } from './index-efb8ecdf.js';
6
- import { C as CoreDelegate, a as attachComponent, d as detachComponent } from './framework-delegate-63d1a679.js';
7
- import { g as getElementRoot, j as clamp, r as raf, h as inheritAttributes, k as hasLazyBuild } from './helpers-da915de8.js';
5
+ import { f as findClosestIonContent, i as isIonContent, d as disableContentScrollY, r as resetContentScrollY, a as findIonContent, p as printIonContentErrorMsg } from './index-33f7e3ff.js';
6
+ import { C as CoreDelegate, a as attachComponent, d as detachComponent } from './framework-delegate-f683816e.js';
7
+ import { g as getElementRoot, j as clamp, r as raf, h as inheritAttributes, k as hasLazyBuild } from './helpers-9b49d7d2.js';
8
8
  import { c as createLockController } from './lock-controller-316928be.js';
9
- import { p as printIonWarning } from './index-6ad967f3.js';
9
+ import { p as printIonWarning } from './index-9b0d46f4.js';
10
10
  import { g as getCapacitor } from './capacitor-59395cbd.js';
11
- import { G as GESTURE, O as OVERLAY_GESTURE_PRIORITY, F as FOCUS_TRAP_DISABLE_CLASS, e as createTriggerController, B as BACKDROP, j as prepareOverlay, k as setOverlayId, f as present, g as dismiss, h as eventMethod } from './overlays-5deab4de.js';
11
+ import { G as GESTURE, O as OVERLAY_GESTURE_PRIORITY, F as FOCUS_TRAP_DISABLE_CLASS, e as createTriggerController, B as BACKDROP, j as prepareOverlay, k as setOverlayId, f as present, g as dismiss, h as eventMethod } from './overlays-e3d0d356.js';
12
12
  import { g as getClassMap } from './theme-01f3f29c.js';
13
- import { e as deepReady, w as waitForMount } from './index-2f7fde3d.js';
13
+ import { e as deepReady, w as waitForMount } from './index-7ec5519a.js';
14
14
  import { b as getIonMode, c as config } from './ionic-global-c81d82ab.js';
15
15
  import { KEYBOARD_DID_OPEN } from './keyboard-52278bd7.js';
16
16
  import { c as createAnimation } from './animation-eab5a4ca.js';
@@ -502,7 +502,7 @@ const computeDuration = (remaining, velocity) => {
502
502
  };
503
503
 
504
504
  const createSheetEnterAnimation = (opts) => {
505
- const { currentBreakpoint, backdropBreakpoint, expandToScroll } = opts;
505
+ const { currentBreakpoint, backdropBreakpoint } = opts;
506
506
  /**
507
507
  * If the backdropBreakpoint is undefined, then the backdrop
508
508
  * should always fade in. If the backdropBreakpoint came before the
@@ -522,16 +522,7 @@ const createSheetEnterAnimation = (opts) => {
522
522
  { offset: 0, opacity: 1, transform: 'translateY(100%)' },
523
523
  { offset: 1, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
524
524
  ]);
525
- /**
526
- * This allows the content to be scrollable at any breakpoint.
527
- */
528
- const contentAnimation = !expandToScroll
529
- ? createAnimation('contentAnimation').keyframes([
530
- { offset: 0, opacity: 1, maxHeight: `${(1 - currentBreakpoint) * 100}%` },
531
- { offset: 1, opacity: 1, maxHeight: `${currentBreakpoint * 100}%` },
532
- ])
533
- : undefined;
534
- return { wrapperAnimation, backdropAnimation, contentAnimation };
525
+ return { wrapperAnimation, backdropAnimation };
535
526
  };
536
527
  const createSheetLeaveAnimation = (opts) => {
537
528
  const { currentBreakpoint, backdropBreakpoint } = opts;
@@ -566,68 +557,22 @@ const createEnterAnimation$1 = () => {
566
557
  })
567
558
  .afterClearStyles(['pointer-events']);
568
559
  const wrapperAnimation = createAnimation().fromTo('transform', 'translateY(100vh)', 'translateY(0vh)');
569
- return { backdropAnimation, wrapperAnimation, contentAnimation: undefined };
560
+ return { backdropAnimation, wrapperAnimation };
570
561
  };
571
562
  /**
572
563
  * iOS Modal Enter Animation for the Card presentation style
573
564
  */
574
565
  const iosEnterAnimation = (baseEl, opts) => {
575
- const { presentingEl, currentBreakpoint, expandToScroll } = opts;
566
+ const { presentingEl, currentBreakpoint } = opts;
576
567
  const root = getElementRoot(baseEl);
577
- const { wrapperAnimation, backdropAnimation, contentAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation$1();
568
+ const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation$1();
578
569
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
579
570
  wrapperAnimation.addElement(root.querySelectorAll('.modal-wrapper, .modal-shadow')).beforeStyles({ opacity: 1 });
580
- // The content animation is only added if scrolling is enabled for
581
- // all the breakpoints.
582
- !expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
583
571
  const baseAnimation = createAnimation('entering-base')
584
572
  .addElement(baseEl)
585
573
  .easing('cubic-bezier(0.32,0.72,0,1)')
586
574
  .duration(500)
587
- .addAnimation([wrapperAnimation])
588
- .beforeAddWrite(() => {
589
- if (expandToScroll) {
590
- // Scroll can only be done when the modal is fully expanded.
591
- return;
592
- }
593
- /**
594
- * There are some browsers that causes flickering when
595
- * dragging the content when scroll is enabled at every
596
- * breakpoint. This is due to the wrapper element being
597
- * transformed off the screen and having a snap animation.
598
- *
599
- * A workaround is to clone the footer element and append
600
- * it outside of the wrapper element. This way, the footer
601
- * is still visible and the drag can be done without
602
- * flickering. The original footer is hidden until the modal
603
- * is dismissed. This maintains the animation of the footer
604
- * when the modal is dismissed.
605
- *
606
- * The workaround needs to be done before the animation starts
607
- * so there are no flickering issues.
608
- */
609
- const ionFooter = baseEl.querySelector('ion-footer');
610
- /**
611
- * This check is needed to prevent more than one footer
612
- * from being appended to the shadow root.
613
- * Otherwise, iOS and MD enter animations would append
614
- * the footer twice.
615
- */
616
- const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
617
- if (ionFooter && !ionFooterAlreadyAppended) {
618
- const footerHeight = ionFooter.clientHeight;
619
- const clonedFooter = ionFooter.cloneNode(true);
620
- baseEl.shadowRoot.appendChild(clonedFooter);
621
- ionFooter.style.setProperty('display', 'none');
622
- ionFooter.setAttribute('aria-hidden', 'true');
623
- // Padding is added to prevent some content from being hidden.
624
- const page = baseEl.querySelector('.ion-page');
625
- page.style.setProperty('padding-bottom', `${footerHeight}px`);
626
- }
627
- });
628
- if (contentAnimation) {
629
- baseAnimation.addAnimation(contentAnimation);
630
- }
575
+ .addAnimation(wrapperAnimation);
631
576
  if (presentingEl) {
632
577
  const isMobile = window.innerWidth < 768;
633
578
  const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
@@ -705,7 +650,7 @@ const createLeaveAnimation$1 = () => {
705
650
  * iOS Modal Leave Animation
706
651
  */
707
652
  const iosLeaveAnimation = (baseEl, opts, duration = 500) => {
708
- const { presentingEl, currentBreakpoint, expandToScroll } = opts;
653
+ const { presentingEl, currentBreakpoint } = opts;
709
654
  const root = getElementRoot(baseEl);
710
655
  const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation$1();
711
656
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
@@ -714,29 +659,7 @@ const iosLeaveAnimation = (baseEl, opts, duration = 500) => {
714
659
  .addElement(baseEl)
715
660
  .easing('cubic-bezier(0.32,0.72,0,1)')
716
661
  .duration(duration)
717
- .addAnimation(wrapperAnimation)
718
- .beforeAddWrite(() => {
719
- if (expandToScroll) {
720
- // Scroll can only be done when the modal is fully expanded.
721
- return;
722
- }
723
- /**
724
- * If expandToScroll is disabled, we need to swap
725
- * the visibility to the original, so the footer
726
- * dismisses with the modal and doesn't stay
727
- * until the modal is removed from the DOM.
728
- */
729
- const ionFooter = baseEl.querySelector('ion-footer');
730
- if (ionFooter) {
731
- const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
732
- ionFooter.style.removeProperty('display');
733
- ionFooter.removeAttribute('aria-hidden');
734
- clonedFooter.style.setProperty('display', 'none');
735
- clonedFooter.setAttribute('aria-hidden', 'true');
736
- const page = baseEl.querySelector('.ion-page');
737
- page.style.removeProperty('padding-bottom');
738
- }
739
- });
662
+ .addAnimation(wrapperAnimation);
740
663
  if (presentingEl) {
741
664
  const isMobile = window.innerWidth < 768;
742
665
  const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
@@ -814,69 +737,22 @@ const createEnterAnimation = () => {
814
737
  { offset: 0, opacity: 0.01, transform: 'translateY(40px)' },
815
738
  { offset: 1, opacity: 1, transform: `translateY(0px)` },
816
739
  ]);
817
- return { backdropAnimation, wrapperAnimation, contentAnimation: undefined };
740
+ return { backdropAnimation, wrapperAnimation };
818
741
  };
819
742
  /**
820
743
  * Md Modal Enter Animation
821
744
  */
822
745
  const mdEnterAnimation = (baseEl, opts) => {
823
- const { currentBreakpoint, expandToScroll } = opts;
746
+ const { currentBreakpoint } = opts;
824
747
  const root = getElementRoot(baseEl);
825
- const { wrapperAnimation, backdropAnimation, contentAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
748
+ const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
826
749
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
827
750
  wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
828
- // The content animation is only added if scrolling is enabled for
829
- // all the breakpoints.
830
- expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
831
- const baseAnimation = createAnimation()
751
+ return createAnimation()
832
752
  .addElement(baseEl)
833
753
  .easing('cubic-bezier(0.36,0.66,0.04,1)')
834
754
  .duration(280)
835
- .addAnimation([backdropAnimation, wrapperAnimation])
836
- .beforeAddWrite(() => {
837
- if (expandToScroll) {
838
- // Scroll can only be done when the modal is fully expanded.
839
- return;
840
- }
841
- /**
842
- * There are some browsers that causes flickering when
843
- * dragging the content when scroll is enabled at every
844
- * breakpoint. This is due to the wrapper element being
845
- * transformed off the screen and having a snap animation.
846
- *
847
- * A workaround is to clone the footer element and append
848
- * it outside of the wrapper element. This way, the footer
849
- * is still visible and the drag can be done without
850
- * flickering. The original footer is hidden until the modal
851
- * is dismissed. This maintains the animation of the footer
852
- * when the modal is dismissed.
853
- *
854
- * The workaround needs to be done before the animation starts
855
- * so there are no flickering issues.
856
- */
857
- const ionFooter = baseEl.querySelector('ion-footer');
858
- /**
859
- * This check is needed to prevent more than one footer
860
- * from being appended to the shadow root.
861
- * Otherwise, iOS and MD enter animations would append
862
- * the footer twice.
863
- */
864
- const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
865
- if (ionFooter && !ionFooterAlreadyAppended) {
866
- const footerHeight = ionFooter.clientHeight;
867
- const clonedFooter = ionFooter.cloneNode(true);
868
- baseEl.shadowRoot.appendChild(clonedFooter);
869
- ionFooter.style.setProperty('display', 'none');
870
- ionFooter.setAttribute('aria-hidden', 'true');
871
- // Padding is added to prevent some content from being hidden.
872
- const page = baseEl.querySelector('.ion-page');
873
- page.style.setProperty('padding-bottom', `${footerHeight}px`);
874
- }
875
- });
876
- if (contentAnimation) {
877
- baseAnimation.addAnimation(contentAnimation);
878
- }
879
- return baseAnimation;
755
+ .addAnimation([backdropAnimation, wrapperAnimation]);
880
756
  };
881
757
 
882
758
  const createLeaveAnimation = () => {
@@ -891,41 +767,18 @@ const createLeaveAnimation = () => {
891
767
  * Md Modal Leave Animation
892
768
  */
893
769
  const mdLeaveAnimation = (baseEl, opts) => {
894
- const { currentBreakpoint, expandToScroll } = opts;
770
+ const { currentBreakpoint } = opts;
895
771
  const root = getElementRoot(baseEl);
896
772
  const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation();
897
773
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
898
774
  wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
899
- const baseAnimation = createAnimation()
775
+ return createAnimation()
900
776
  .easing('cubic-bezier(0.47,0,0.745,0.715)')
901
777
  .duration(200)
902
- .addAnimation([backdropAnimation, wrapperAnimation])
903
- .beforeAddWrite(() => {
904
- if (expandToScroll) {
905
- // Scroll can only be done when the modal is fully expanded.
906
- return;
907
- }
908
- /**
909
- * If expandToScroll is disabled, we need to swap
910
- * the visibility to the original, so the footer
911
- * dismisses with the modal and doesn't stay
912
- * until the modal is removed from the DOM.
913
- */
914
- const ionFooter = baseEl.querySelector('ion-footer');
915
- if (ionFooter) {
916
- const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
917
- ionFooter.style.removeProperty('display');
918
- ionFooter.removeAttribute('aria-hidden');
919
- clonedFooter.style.setProperty('display', 'none');
920
- clonedFooter.setAttribute('aria-hidden', 'true');
921
- const page = baseEl.querySelector('.ion-page');
922
- page.style.removeProperty('padding-bottom');
923
- }
924
- });
925
- return baseAnimation;
778
+ .addAnimation([backdropAnimation, wrapperAnimation]);
926
779
  };
927
780
 
928
- const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], expandToScroll, getCurrentBreakpoint, onDismiss, onBreakpointChange) => {
781
+ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], getCurrentBreakpoint, onDismiss, onBreakpointChange) => {
929
782
  // Defaults for the sheet swipe animation
930
783
  const defaultBackdrop = [
931
784
  { offset: 0, opacity: 'var(--backdrop-opacity)' },
@@ -942,10 +795,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
942
795
  { offset: 1, transform: 'translateY(100%)' },
943
796
  ],
944
797
  BACKDROP_KEYFRAMES: backdropBreakpoint !== 0 ? customBackdrop : defaultBackdrop,
945
- CONTENT_KEYFRAMES: [
946
- { offset: 0, maxHeight: '100%' },
947
- { offset: 1, maxHeight: '0%' },
948
- ],
949
798
  };
950
799
  const contentEl = baseEl.querySelector('ion-content');
951
800
  const height = wrapperEl.clientHeight;
@@ -953,11 +802,10 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
953
802
  let offset = 0;
954
803
  let canDismissBlocksGesture = false;
955
804
  const canDismissMaxStep = 0.95;
956
- const maxBreakpoint = breakpoints[breakpoints.length - 1];
957
- const minBreakpoint = breakpoints[0];
958
805
  const wrapperAnimation = animation.childAnimations.find((ani) => ani.id === 'wrapperAnimation');
959
806
  const backdropAnimation = animation.childAnimations.find((ani) => ani.id === 'backdropAnimation');
960
- const contentAnimation = animation.childAnimations.find((ani) => ani.id === 'contentAnimation');
807
+ const maxBreakpoint = breakpoints[breakpoints.length - 1];
808
+ const minBreakpoint = breakpoints[0];
961
809
  const enableBackdrop = () => {
962
810
  baseEl.style.setProperty('pointer-events', 'auto');
963
811
  backdropEl.style.setProperty('pointer-events', 'auto');
@@ -980,31 +828,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
980
828
  */
981
829
  baseEl.classList.add(FOCUS_TRAP_DISABLE_CLASS);
982
830
  };
983
- /**
984
- * Toggles the visible modal footer when `expandToScroll` is disabled.
985
- * @param footer The footer to show.
986
- */
987
- const swapFooterVisibility = (footer) => {
988
- const originalFooter = baseEl.querySelector('ion-footer');
989
- if (!originalFooter) {
990
- return;
991
- }
992
- const clonedFooter = wrapperEl.nextElementSibling;
993
- const footerToHide = footer === 'original' ? clonedFooter : originalFooter;
994
- const footerToShow = footer === 'original' ? originalFooter : clonedFooter;
995
- footerToShow.style.removeProperty('display');
996
- footerToShow.removeAttribute('aria-hidden');
997
- const page = baseEl.querySelector('.ion-page');
998
- if (footer === 'original') {
999
- page.style.removeProperty('padding-bottom');
1000
- }
1001
- else {
1002
- const pagePadding = footerToShow.clientHeight;
1003
- page.style.setProperty('padding-bottom', `${pagePadding}px`);
1004
- }
1005
- footerToHide.style.setProperty('display', 'none');
1006
- footerToHide.setAttribute('aria-hidden', 'true');
1007
- };
1008
831
  /**
1009
832
  * After the entering animation completes,
1010
833
  * we need to set the animation to go from
@@ -1016,7 +839,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1016
839
  if (wrapperAnimation && backdropAnimation) {
1017
840
  wrapperAnimation.keyframes([...SheetDefaults.WRAPPER_KEYFRAMES]);
1018
841
  backdropAnimation.keyframes([...SheetDefaults.BACKDROP_KEYFRAMES]);
1019
- contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.keyframes([...SheetDefaults.CONTENT_KEYFRAMES]);
1020
842
  animation.progressStart(true, 1 - currentBreakpoint);
1021
843
  /**
1022
844
  * If backdrop is not enabled, then content
@@ -1033,7 +855,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1033
855
  disableBackdrop();
1034
856
  }
1035
857
  }
1036
- if (contentEl && currentBreakpoint !== maxBreakpoint && expandToScroll) {
858
+ if (contentEl && currentBreakpoint !== maxBreakpoint) {
1037
859
  contentEl.scrollY = false;
1038
860
  }
1039
861
  const canStart = (detail) => {
@@ -1047,13 +869,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1047
869
  */
1048
870
  const contentEl = findClosestIonContent(detail.event.target);
1049
871
  currentBreakpoint = getCurrentBreakpoint();
1050
- /**
1051
- * If we have expandToScroll disabled, we should not allow the swipe gesture to start
1052
- * if the content is being swiped.
1053
- */
1054
- if (!expandToScroll && contentEl) {
1055
- return false;
1056
- }
1057
872
  if (currentBreakpoint === 1 && contentEl) {
1058
873
  /**
1059
874
  * The modal should never swipe to close on the content with a refresher.
@@ -1084,15 +899,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1084
899
  * Remove undefined check
1085
900
  */
1086
901
  canDismissBlocksGesture = baseEl.canDismiss !== undefined && baseEl.canDismiss !== true && minBreakpoint === 0;
1087
- /**
1088
- * If expandToScroll is disabled, we need to swap
1089
- * the footer visibility to the original, so if the modal
1090
- * is dismissed, the footer dismisses with the modal
1091
- * and doesn't stay on the screen after the modal is gone.
1092
- */
1093
- if (!expandToScroll) {
1094
- swapFooterVisibility('original');
1095
- }
1096
902
  /**
1097
903
  * If we are pulling down, then it is possible we are pulling on the content.
1098
904
  * We do not want scrolling to happen at the same time as the gesture.
@@ -1208,19 +1014,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1208
1014
  opacity: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(snapToBreakpoint, backdropBreakpoint)})`,
1209
1015
  },
1210
1016
  ]);
1211
- if (contentAnimation) {
1212
- /**
1213
- * The modal content should scroll at any breakpoint when expandToScroll
1214
- * is disabled. In order to do this, the content needs to be completely
1215
- * viewable so scrolling can access everything. Otherwise, the default
1216
- * behavior would show the content off the screen and only allow
1217
- * scrolling when the sheet is fully expanded.
1218
- */
1219
- contentAnimation.keyframes([
1220
- { offset: 0, maxHeight: `${(1 - breakpointOffset) * 100}%` },
1221
- { offset: 1, maxHeight: `${snapToBreakpoint * 100}%` },
1222
- ]);
1223
- }
1224
1017
  animation.progressStep(0);
1225
1018
  }
1226
1019
  /**
@@ -1228,14 +1021,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1228
1021
  * snapping animation completes.
1229
1022
  */
1230
1023
  gesture.enable(false);
1231
- /**
1232
- * If expandToScroll is disabled, we need to swap
1233
- * the footer visibility to the cloned one so the footer
1234
- * doesn't flicker when the sheet's height is animated.
1235
- */
1236
- if (!expandToScroll && shouldRemainOpen) {
1237
- swapFooterVisibility('cloned');
1238
- }
1239
1024
  if (shouldPreventDismiss) {
1240
1025
  handleCanDismiss(baseEl, animation);
1241
1026
  }
@@ -1243,13 +1028,13 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1243
1028
  onDismiss();
1244
1029
  }
1245
1030
  /**
1246
- * Enables scrolling immediately if the sheet is about to fully expand
1247
- * or if it allows scrolling at any breakpoint. Without this, there would
1248
- * be a ~500ms delay while the modal animation completes, causing a
1249
- * noticeable lag. Native iOS allows scrolling as soon as the gesture is
1250
- * released, so we align with that behavior.
1031
+ * If the sheet is going to be fully expanded then we should enable
1032
+ * scrolling immediately. The sheet modal animation takes ~500ms to finish
1033
+ * so if we wait until then there is a visible delay for when scrolling is
1034
+ * re-enabled. Native iOS allows for scrolling on the sheet modal as soon
1035
+ * as the gesture is released, so we align with that.
1251
1036
  */
1252
- if (contentEl && (snapToBreakpoint === breakpoints[breakpoints.length - 1] || !expandToScroll)) {
1037
+ if (contentEl && snapToBreakpoint === breakpoints[breakpoints.length - 1]) {
1253
1038
  contentEl.scrollY = true;
1254
1039
  }
1255
1040
  return new Promise((resolve) => {
@@ -1267,7 +1052,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1267
1052
  raf(() => {
1268
1053
  wrapperAnimation.keyframes([...SheetDefaults.WRAPPER_KEYFRAMES]);
1269
1054
  backdropAnimation.keyframes([...SheetDefaults.BACKDROP_KEYFRAMES]);
1270
- contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.keyframes([...SheetDefaults.CONTENT_KEYFRAMES]);
1271
1055
  animation.progressStart(true, 1 - snapToBreakpoint);
1272
1056
  currentBreakpoint = snapToBreakpoint;
1273
1057
  onBreakpointChange(currentBreakpoint);
@@ -1320,10 +1104,10 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1320
1104
  };
1321
1105
  };
1322
1106
 
1323
- const modalIosCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.4)}:host(.modal-card),:host(.modal-sheet){--border-radius:10px}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:10px}}.modal-wrapper{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0)}@media screen and (max-width: 767px){@supports (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - max(30px, var(--ion-safe-area-top)) - 10px)}}@supports not (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - 40px)}}:host(.modal-card) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-card){--backdrop-opacity:0;--width:100%;-ms-flex-align:end;align-items:flex-end}:host(.modal-card) .modal-shadow{display:none}:host(.modal-card) ion-backdrop{pointer-events:none}}@media screen and (min-width: 768px){:host(.modal-card){--width:calc(100% - 120px);--height:calc(100% - (120px + var(--ion-safe-area-top) + var(--ion-safe-area-bottom)));--max-width:720px;--max-height:1000px;--backdrop-opacity:0;--box-shadow:0px 0px 30px 10px rgba(0, 0, 0, 0.1);-webkit-transition:all 0.5s ease-in-out;transition:all 0.5s ease-in-out}:host(.modal-card) .modal-wrapper{-webkit-box-shadow:none;box-shadow:none}:host(.modal-card) .modal-shadow{-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}}:host(.modal-sheet) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer ion-toolbar:first-of-type{padding-top:6px}";
1107
+ const modalIosCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.4)}:host(.modal-card),:host(.modal-sheet){--border-radius:10px}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:10px}}.modal-wrapper{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0)}@media screen and (max-width: 767px){@supports (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - max(30px, var(--ion-safe-area-top)) - 10px)}}@supports not (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - 40px)}}:host(.modal-card) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-card){--backdrop-opacity:0;--width:100%;-ms-flex-align:end;align-items:flex-end}:host(.modal-card) .modal-shadow{display:none}:host(.modal-card) ion-backdrop{pointer-events:none}}@media screen and (min-width: 768px){:host(.modal-card){--width:calc(100% - 120px);--height:calc(100% - (120px + var(--ion-safe-area-top) + var(--ion-safe-area-bottom)));--max-width:720px;--max-height:1000px;--backdrop-opacity:0;--box-shadow:0px 0px 30px 10px rgba(0, 0, 0, 0.1);-webkit-transition:all 0.5s ease-in-out;transition:all 0.5s ease-in-out}:host(.modal-card) .modal-wrapper{-webkit-box-shadow:none;box-shadow:none}:host(.modal-card) .modal-shadow{-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}}:host(.modal-sheet) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}";
1324
1108
  const IonModalIosStyle0 = modalIosCss;
1325
1109
 
1326
- const modalMdCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:2px;--box-shadow:0 28px 48px rgba(0, 0, 0, 0.4)}}.modal-wrapper{-webkit-transform:translate3d(0, 40px, 0);transform:translate3d(0, 40px, 0);opacity:0.01}";
1110
+ const modalMdCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:2px;--box-shadow:0 28px 48px rgba(0, 0, 0, 0.4)}}.modal-wrapper{-webkit-transform:translate3d(0, 40px, 0);transform:translate3d(0, 40px, 0);opacity:0.01}";
1327
1111
  const IonModalMdStyle0 = modalMdCss;
1328
1112
 
1329
1113
  const Modal = class {
@@ -1392,7 +1176,6 @@ const Modal = class {
1392
1176
  this.enterAnimation = undefined;
1393
1177
  this.leaveAnimation = undefined;
1394
1178
  this.breakpoints = undefined;
1395
- this.expandToScroll = true;
1396
1179
  this.initialBreakpoint = undefined;
1397
1180
  this.backdropBreakpoint = 0;
1398
1181
  this.handle = undefined;
@@ -1608,7 +1391,6 @@ const Modal = class {
1608
1391
  presentingEl: presentingElement,
1609
1392
  currentBreakpoint: this.initialBreakpoint,
1610
1393
  backdropBreakpoint: this.backdropBreakpoint,
1611
- expandToScroll: this.expandToScroll,
1612
1394
  });
1613
1395
  /* tslint:disable-next-line */
1614
1396
  if (typeof window !== 'undefined') {
@@ -1659,10 +1441,7 @@ const Modal = class {
1659
1441
  // should be in the DOM and referenced by now, except
1660
1442
  // for the presenting el
1661
1443
  const animationBuilder = this.leaveAnimation || config.get('modalLeave', iosLeaveAnimation);
1662
- const ani = (this.animation = animationBuilder(el, {
1663
- presentingEl: this.presentingElement,
1664
- expandToScroll: this.expandToScroll,
1665
- }));
1444
+ const ani = (this.animation = animationBuilder(el, { presentingEl: this.presentingElement }));
1666
1445
  const contentEl = findIonContent(el);
1667
1446
  if (!contentEl) {
1668
1447
  printIonContentErrorMsg(el);
@@ -1707,10 +1486,9 @@ const Modal = class {
1707
1486
  presentingEl: this.presentingElement,
1708
1487
  currentBreakpoint: initialBreakpoint,
1709
1488
  backdropBreakpoint,
1710
- expandToScroll: this.expandToScroll,
1711
1489
  }));
1712
1490
  ani.progressStart(true, 1);
1713
- const { gesture, moveSheetToBreakpoint } = createSheetGesture(this.el, this.backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, ani, this.sortedBreakpoints, this.expandToScroll, () => { var _a; return (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : 0; }, () => this.sheetOnDismiss(), (breakpoint) => {
1491
+ const { gesture, moveSheetToBreakpoint } = createSheetGesture(this.el, this.backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, ani, this.sortedBreakpoints, () => { var _a; return (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : 0; }, () => this.sheetOnDismiss(), (breakpoint) => {
1714
1492
  if (this.currentBreakpoint !== breakpoint) {
1715
1493
  this.currentBreakpoint = breakpoint;
1716
1494
  this.ionBreakpointDidChange.emit({ breakpoint });
@@ -1788,7 +1566,6 @@ const Modal = class {
1788
1566
  presentingEl: presentingElement,
1789
1567
  currentBreakpoint: (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : this.initialBreakpoint,
1790
1568
  backdropBreakpoint: this.backdropBreakpoint,
1791
- expandToScroll: this.expandToScroll,
1792
1569
  });
1793
1570
  if (dismissed) {
1794
1571
  const { delegate } = this.getDelegate();
@@ -1874,23 +1651,23 @@ const Modal = class {
1874
1651
  return true;
1875
1652
  }
1876
1653
  render() {
1877
- const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap, expandToScroll, } = this;
1654
+ const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap } = this;
1878
1655
  const showHandle = handle !== false && isSheetModal;
1879
1656
  const mode = getIonMode(this);
1880
1657
  const isCardModal = presentingElement !== undefined && mode === 'ios';
1881
1658
  const isHandleCycle = handleBehavior === 'cycle';
1882
- return (h(Host, Object.assign({ key: 'b58b683d13292c390c480a374a26995052914f94', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
1659
+ return (h(Host, Object.assign({ key: 'b4da5111fe4719fa450c39b2d4bd884a302a7924', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
1883
1660
  zIndex: `${20000 + this.overlayIndex}`,
1884
- }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), h("ion-backdrop", { key: '5e89f1e24ab04c68e517941a9b1fbda8bf9cb4cc', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && h("div", { key: '807f6b6fce3792a2b1e1b0e18c3de96954477f58', class: "modal-shadow" }), h("div", Object.assign({ key: 'd3dbe8e9a297fef87a6dc155211b6be0cb9f249c',
1661
+ }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), h("ion-backdrop", { key: 'c12dbf747e0eb914eaf1331798548ffc7e147763', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && h("div", { key: 'da546ee80c6576b5acc66e959fd5009e0b9a8160', class: "modal-shadow" }), h("div", Object.assign({ key: '306ebe6427440ad5f7ed36d590e562d15a503b75',
1885
1662
  /*
1886
1663
  role and aria-modal must be used on the
1887
1664
  same element. They must also be set inside the
1888
1665
  shadow DOM otherwise ion-button will not be highlighted
1889
1666
  when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
1890
1667
  */
1891
- role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (h("button", { key: '12964306d8e911a0777bb87c2e3ea906a85596c2', class: "modal-handle",
1668
+ role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (h("button", { key: 'c5d17e346fe255a7c0cacbbf15c0083f2d09c488', class: "modal-handle",
1892
1669
  // Prevents the handle from receiving keyboard focus when it does not cycle
1893
- tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), h("slot", { key: 'c59a436723e37414b686763a73fa89b174f9bb39' }))));
1670
+ tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), h("slot", { key: '5cc714170a00b67f3eda0cd1d6f37c1489a99c83' }))));
1894
1671
  }
1895
1672
  get el() { return getElement(this); }
1896
1673
  static get watchers() { return {
@@ -3,11 +3,11 @@
3
3
  */
4
4
  import { r as registerInstance, d as createEvent, h, i as getElement, f as Host } from './index-28849c61.js';
5
5
  import { g as getTimeGivenProgression } from './cubic-bezier-fe2083dc.js';
6
- import { m as assert, s as shallowEqualStringMap } from './helpers-da915de8.js';
6
+ import { m as assert, s as shallowEqualStringMap } from './helpers-9b49d7d2.js';
7
+ import { l as lifecycle, t as transition, s as setPageHidden, d as LIFECYCLE_WILL_UNLOAD, b as LIFECYCLE_WILL_LEAVE, c as LIFECYCLE_DID_LEAVE } from './index-7ec5519a.js';
7
8
  import { b as getIonMode, c as config } from './ionic-global-c81d82ab.js';
8
- import { l as lifecycle, t as transition, s as setPageHidden, d as LIFECYCLE_WILL_UNLOAD, b as LIFECYCLE_WILL_LEAVE, c as LIFECYCLE_DID_LEAVE } from './index-2f7fde3d.js';
9
- import { a as attachComponent } from './framework-delegate-63d1a679.js';
10
- import './index-6ad967f3.js';
9
+ import { a as attachComponent } from './framework-delegate-f683816e.js';
10
+ import './index-9b0d46f4.js';
11
11
 
12
12
  const VIEW_STATE_NEW = 1;
13
13
  const VIEW_STATE_ATTACHED = 2;
@@ -133,7 +133,7 @@ const Nav = class {
133
133
  // We want to set this flag before any watch callbacks are manually called
134
134
  this.didLoad = true;
135
135
  this.rootChanged();
136
- this.gesture = (await import('./swipe-back-e5394307.js')).createSwipeBackGesture(this.el, this.canStart.bind(this), this.onStart.bind(this), this.onMove.bind(this), this.onEnd.bind(this));
136
+ this.gesture = (await import('./swipe-back-23ee7ab1.js')).createSwipeBackGesture(this.el, this.canStart.bind(this), this.onStart.bind(this), this.onMove.bind(this), this.onEnd.bind(this));
137
137
  this.swipeGestureChanged();
138
138
  }
139
139
  connectedCallback() {
@@ -899,7 +899,7 @@ const Nav = class {
899
899
  }
900
900
  }
901
901
  render() {
902
- return h("slot", { key: 'bd958b6ade20eaadbfc9df2bd39629e3f85a1128' });
902
+ return h("slot", { key: 'dfe98cb6604a2015a49f41beffebdd2da957dfff' });
903
903
  }
904
904
  get el() { return getElement(this); }
905
905
  static get watchers() { return {
@@ -941,7 +941,7 @@ const NavLink = class {
941
941
  this.routerAnimation = undefined;
942
942
  }
943
943
  render() {
944
- return h(Host, { key: 'c43e6b9325e3a38452f0eded9d77a58ee57104e4', onClick: this.onClick });
944
+ return h(Host, { key: 'd2f8545b4fbd5aa25ef36eb01dffbc5d35ccfbb9', onClick: this.onClick });
945
945
  }
946
946
  get el() { return getElement(this); }
947
947
  };
@@ -2,7 +2,7 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { r as registerInstance, h, f as Host, i as getElement } from './index-28849c61.js';
5
- import { h as inheritAttributes } from './helpers-da915de8.js';
5
+ import { h as inheritAttributes } from './helpers-9b49d7d2.js';
6
6
  import { c as createColorClasses } from './theme-01f3f29c.js';
7
7
  import { b as getIonMode } from './ionic-global-c81d82ab.js';
8
8
 
@@ -84,10 +84,10 @@ const PickerColumnOption = class {
84
84
  render() {
85
85
  const { color, disabled, ariaLabel } = this;
86
86
  const mode = getIonMode(this);
87
- return (h(Host, { key: '19dec7c5fa1f464ff09fa97451c94c11ef1432a4', class: createColorClasses(color, {
87
+ return (h(Host, { key: 'c743c6ef44bb9f765cc15b3b5d2864de6520203a', class: createColorClasses(color, {
88
88
  [mode]: true,
89
89
  ['option-disabled']: disabled,
90
- }) }, h("button", { key: 'c8363bb865cdcafac7fef0970ba64ebe17f82fb6', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, h("slot", { key: 'b0ed822ecb983dcb88c0fa4e9d2d6970566d9b55' }))));
90
+ }) }, h("button", { key: '4c3d9eb245c52b2c007f727e145cfb55759bd7a9', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, h("slot", { key: '4c907d2187cbe9d5941e27f2b12578e2b7271461' }))));
91
91
  }
92
92
  get el() { return getElement(this); }
93
93
  static get watchers() { return {
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import { r as registerInstance, d as createEvent, h, f as Host, i as getElement } from './index-28849c61.js';
5
5
  import { d as doc } from './index-a5d50daf.js';
6
- import { r as raf, g as getElementRoot } from './helpers-da915de8.js';
6
+ import { r as raf, g as getElementRoot } from './helpers-9b49d7d2.js';
7
7
  import { a as hapticSelectionStart, b as hapticSelectionChanged, h as hapticSelectionEnd } from './haptic-ac164e4c.js';
8
8
  import { a as isPlatform, b as getIonMode } from './ionic-global-c81d82ab.js';
9
9
  import { c as createColorClasses } from './theme-01f3f29c.js';