@ionic/core 8.4.4-dev.11741046329.16b83b14 → 8.4.4-dev.11741048645.1fe58d92

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 (553) hide show
  1. package/components/checkbox.js +6 -40
  2. package/components/helpers.js +11 -1
  3. package/components/index6.js +3 -11
  4. package/components/index7.js +2 -2
  5. package/components/index9.js +1 -1
  6. package/components/ion-segment-button.js +40 -9
  7. package/components/ion-select.js +41 -16
  8. package/components/ion-toggle.js +4 -6
  9. package/components/modal.js +35 -259
  10. package/components/toolbar.js +2 -2
  11. package/css/core.css +1 -1
  12. package/css/core.css.map +1 -1
  13. package/css/global.bundle.css +1 -1
  14. package/css/global.bundle.css.map +1 -1
  15. package/css/ionic.bundle.css +1 -1
  16. package/css/ionic.bundle.css.map +1 -1
  17. package/css/palettes/dark.always.css +1 -1
  18. package/css/palettes/dark.always.css.map +1 -1
  19. package/css/palettes/dark.class.css +1 -1
  20. package/css/palettes/dark.class.css.map +1 -1
  21. package/css/palettes/dark.system.css +1 -1
  22. package/css/palettes/dark.system.css.map +1 -1
  23. package/css/palettes/high-contrast-dark.always.css +1 -1
  24. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  25. package/css/palettes/high-contrast-dark.class.css +1 -1
  26. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  27. package/css/palettes/high-contrast-dark.system.css +1 -1
  28. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  29. package/css/palettes/high-contrast.always.css +1 -1
  30. package/css/palettes/high-contrast.always.css.map +1 -1
  31. package/css/palettes/high-contrast.class.css +1 -1
  32. package/css/palettes/high-contrast.class.css.map +1 -1
  33. package/css/palettes/high-contrast.system.css +1 -1
  34. package/css/palettes/high-contrast.system.css.map +1 -1
  35. package/css/structure.css +1 -1
  36. package/css/structure.css.map +1 -1
  37. package/css/typography.css +1 -1
  38. package/css/typography.css.map +1 -1
  39. package/dist/cjs/{data-108e531d.js → data-21dc0f81.js} +1 -1
  40. package/dist/cjs/{framework-delegate-55f5683a.js → framework-delegate-05579976.js} +1 -1
  41. package/dist/cjs/{helpers-afaa9001.js → helpers-4be3f90d.js} +11 -0
  42. package/dist/cjs/{index-073c7cdc.js → index-0e360e93.js} +2 -2
  43. package/dist/cjs/{index-3652c918.js → index-1ae3f40a.js} +2 -2
  44. package/dist/cjs/{index-e975c92b.js → index-4e14a46e.js} +4 -4
  45. package/dist/cjs/{index-2a46a047.js → index-5915f9b3.js} +3 -11
  46. package/dist/cjs/{index-9509ecad.js → index-ad7a712e.js} +1 -1
  47. package/dist/cjs/{index-0d762bba.js → index-c441c903.js} +2 -2
  48. package/dist/cjs/index.cjs.js +8 -8
  49. package/dist/cjs/{input-shims-cd05268a.js → input-shims-e748a364.js} +3 -5
  50. package/dist/cjs/{input.utils-ffb2f81b.js → input.utils-74e4ec28.js} +2 -2
  51. package/dist/cjs/ion-accordion_2.cjs.entry.js +3 -3
  52. package/dist/cjs/ion-action-sheet.cjs.entry.js +4 -4
  53. package/dist/cjs/ion-alert.cjs.entry.js +4 -4
  54. package/dist/cjs/ion-app_8.cjs.entry.js +11 -11
  55. package/dist/cjs/ion-back-button.cjs.entry.js +2 -2
  56. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +2 -2
  57. package/dist/cjs/ion-button_2.cjs.entry.js +2 -2
  58. package/dist/cjs/ion-card_5.cjs.entry.js +1 -1
  59. package/dist/cjs/ion-checkbox.cjs.entry.js +7 -38
  60. package/dist/cjs/ion-datetime-button.cjs.entry.js +3 -3
  61. package/dist/cjs/ion-datetime_3.cjs.entry.js +6 -6
  62. package/dist/cjs/ion-fab_3.cjs.entry.js +2 -2
  63. package/dist/cjs/ion-img.cjs.entry.js +1 -1
  64. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +3 -3
  65. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +2 -2
  66. package/dist/cjs/ion-input.cjs.entry.js +5 -5
  67. package/dist/cjs/ion-item-option_3.cjs.entry.js +3 -3
  68. package/dist/cjs/ion-item_8.cjs.entry.js +2 -2
  69. package/dist/cjs/ion-loading.cjs.entry.js +4 -4
  70. package/dist/cjs/ion-menu_3.cjs.entry.js +6 -6
  71. package/dist/cjs/ion-modal.cjs.entry.js +41 -264
  72. package/dist/cjs/ion-nav_2.cjs.entry.js +5 -5
  73. package/dist/cjs/ion-picker-column-option.cjs.entry.js +1 -1
  74. package/dist/cjs/ion-picker-column.cjs.entry.js +1 -1
  75. package/dist/cjs/ion-picker.cjs.entry.js +1 -1
  76. package/dist/cjs/ion-popover.cjs.entry.js +5 -5
  77. package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
  78. package/dist/cjs/ion-radio_2.cjs.entry.js +1 -1
  79. package/dist/cjs/ion-range.cjs.entry.js +3 -3
  80. package/dist/cjs/ion-refresher_2.cjs.entry.js +4 -4
  81. package/dist/cjs/ion-reorder_2.cjs.entry.js +4 -4
  82. package/dist/cjs/ion-route_4.cjs.entry.js +1 -1
  83. package/dist/cjs/ion-searchbar.cjs.entry.js +2 -2
  84. package/dist/cjs/ion-segment_2.cjs.entry.js +40 -9
  85. package/dist/cjs/ion-select-modal.cjs.entry.js +4 -4
  86. package/dist/cjs/ion-select_3.cjs.entry.js +46 -20
  87. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +1 -1
  88. package/dist/cjs/ion-tab_2.cjs.entry.js +2 -2
  89. package/dist/cjs/ion-textarea.cjs.entry.js +4 -4
  90. package/dist/cjs/ion-toast.cjs.entry.js +4 -4
  91. package/dist/cjs/ion-toggle.cjs.entry.js +6 -7
  92. package/dist/cjs/ionic.cjs.js +1 -1
  93. package/dist/cjs/{ios.transition-0e664e88.js → ios.transition-afdec89f.js} +3 -3
  94. package/dist/cjs/loader.cjs.js +1 -1
  95. package/dist/cjs/{md.transition-2e8aef2c.js → md.transition-9f0d3db5.js} +3 -3
  96. package/dist/cjs/{notch-controller-d69150f5.js → notch-controller-a0c464d1.js} +1 -1
  97. package/dist/cjs/{overlays-65fdaff6.js → overlays-76b29cd4.js} +3 -3
  98. package/dist/cjs/{status-tap-d74f1429.js → status-tap-fb807fad.js} +3 -4
  99. package/dist/cjs/{swipe-back-0303a5e4.js → swipe-back-47a52b83.js} +1 -1
  100. package/dist/collection/components/checkbox/checkbox.ios.css +15 -52
  101. package/dist/collection/components/checkbox/checkbox.js +4 -90
  102. package/dist/collection/components/checkbox/checkbox.md.css +15 -52
  103. package/dist/collection/components/modal/animations/ios.enter.js +4 -50
  104. package/dist/collection/components/modal/animations/ios.leave.js +2 -24
  105. package/dist/collection/components/modal/animations/md.enter.js +5 -52
  106. package/dist/collection/components/modal/animations/md.leave.js +3 -26
  107. package/dist/collection/components/modal/animations/sheet.js +2 -11
  108. package/dist/collection/components/modal/gestures/sheet.js +10 -79
  109. package/dist/collection/components/modal/modal.ios.css +0 -16
  110. package/dist/collection/components/modal/modal.js +7 -32
  111. package/dist/collection/components/modal/modal.md.css +0 -6
  112. package/dist/collection/components/segment-button/segment-button.js +40 -9
  113. package/dist/collection/components/select/select.js +40 -32
  114. package/dist/collection/components/toggle/toggle.js +4 -23
  115. package/dist/collection/components/toolbar/toolbar.js +2 -6
  116. package/dist/collection/utils/helpers.js +10 -0
  117. package/dist/collection/utils/logging/index.js +3 -10
  118. package/dist/docs.json +2 -187
  119. package/dist/esm/{data-b3284b5e.js → data-ae11fd43.js} +1 -1
  120. package/dist/esm/{framework-delegate-63d1a679.js → framework-delegate-f683816e.js} +1 -1
  121. package/dist/esm/{helpers-da915de8.js → helpers-9b49d7d2.js} +11 -1
  122. package/dist/esm/{index-e2cf2ceb.js → index-10f4ed65.js} +2 -2
  123. package/dist/esm/{index-efb8ecdf.js → index-33f7e3ff.js} +2 -2
  124. package/dist/esm/{index-79b30591.js → index-5a0f5fd0.js} +1 -1
  125. package/dist/esm/{index-2f7fde3d.js → index-7ec5519a.js} +4 -4
  126. package/dist/esm/{index-cb21eccb.js → index-8785a9c6.js} +2 -2
  127. package/dist/esm/{index-6ad967f3.js → index-9b0d46f4.js} +3 -11
  128. package/dist/esm/index.js +8 -8
  129. package/dist/esm/{input-shims-2fd7c6ef.js → input-shims-0e65111b.js} +3 -5
  130. package/dist/esm/{input.utils-961c9f17.js → input.utils-1ad8dafc.js} +2 -2
  131. package/dist/esm/ion-accordion_2.entry.js +3 -3
  132. package/dist/esm/ion-action-sheet.entry.js +4 -4
  133. package/dist/esm/ion-alert.entry.js +4 -4
  134. package/dist/esm/ion-app_8.entry.js +11 -11
  135. package/dist/esm/ion-back-button.entry.js +2 -2
  136. package/dist/esm/ion-breadcrumb_2.entry.js +2 -2
  137. package/dist/esm/ion-button_2.entry.js +2 -2
  138. package/dist/esm/ion-card_5.entry.js +1 -1
  139. package/dist/esm/ion-checkbox.entry.js +7 -38
  140. package/dist/esm/ion-datetime-button.entry.js +3 -3
  141. package/dist/esm/ion-datetime_3.entry.js +6 -6
  142. package/dist/esm/ion-fab_3.entry.js +2 -2
  143. package/dist/esm/ion-img.entry.js +1 -1
  144. package/dist/esm/ion-infinite-scroll_2.entry.js +3 -3
  145. package/dist/esm/ion-input-password-toggle.entry.js +2 -2
  146. package/dist/esm/ion-input.entry.js +5 -5
  147. package/dist/esm/ion-item-option_3.entry.js +3 -3
  148. package/dist/esm/ion-item_8.entry.js +2 -2
  149. package/dist/esm/ion-loading.entry.js +4 -4
  150. package/dist/esm/ion-menu_3.entry.js +6 -6
  151. package/dist/esm/ion-modal.entry.js +41 -264
  152. package/dist/esm/ion-nav_2.entry.js +5 -5
  153. package/dist/esm/ion-picker-column-option.entry.js +1 -1
  154. package/dist/esm/ion-picker-column.entry.js +1 -1
  155. package/dist/esm/ion-picker.entry.js +1 -1
  156. package/dist/esm/ion-popover.entry.js +5 -5
  157. package/dist/esm/ion-progress-bar.entry.js +1 -1
  158. package/dist/esm/ion-radio_2.entry.js +1 -1
  159. package/dist/esm/ion-range.entry.js +3 -3
  160. package/dist/esm/ion-refresher_2.entry.js +4 -4
  161. package/dist/esm/ion-reorder_2.entry.js +4 -4
  162. package/dist/esm/ion-route_4.entry.js +1 -1
  163. package/dist/esm/ion-searchbar.entry.js +2 -2
  164. package/dist/esm/ion-segment_2.entry.js +40 -9
  165. package/dist/esm/ion-select-modal.entry.js +4 -4
  166. package/dist/esm/ion-select_3.entry.js +46 -20
  167. package/dist/esm/ion-tab-bar_2.entry.js +1 -1
  168. package/dist/esm/ion-tab_2.entry.js +2 -2
  169. package/dist/esm/ion-textarea.entry.js +4 -4
  170. package/dist/esm/ion-toast.entry.js +4 -4
  171. package/dist/esm/ion-toggle.entry.js +6 -7
  172. package/dist/esm/ionic.js +1 -1
  173. package/dist/esm/{ios.transition-b1da3753.js → ios.transition-085853ff.js} +3 -3
  174. package/dist/esm/loader.js +1 -1
  175. package/dist/esm/{md.transition-571b3859.js → md.transition-33826623.js} +3 -3
  176. package/dist/esm/{notch-controller-55b09e11.js → notch-controller-3dc61260.js} +1 -1
  177. package/dist/esm/{overlays-5deab4de.js → overlays-e3d0d356.js} +3 -3
  178. package/dist/esm/{status-tap-79eac0ac.js → status-tap-163e8128.js} +3 -4
  179. package/dist/esm/{swipe-back-e5394307.js → swipe-back-23ee7ab1.js} +1 -1
  180. package/dist/esm-es5/{data-b3284b5e.js → data-ae11fd43.js} +1 -1
  181. package/dist/esm-es5/{framework-delegate-63d1a679.js → framework-delegate-f683816e.js} +1 -1
  182. package/dist/esm-es5/{helpers-da915de8.js → helpers-9b49d7d2.js} +1 -1
  183. package/dist/esm-es5/{index-e2cf2ceb.js → index-10f4ed65.js} +1 -1
  184. package/dist/esm-es5/{index-efb8ecdf.js → index-33f7e3ff.js} +1 -1
  185. package/dist/esm-es5/{index-79b30591.js → index-5a0f5fd0.js} +1 -1
  186. package/dist/esm-es5/{index-2f7fde3d.js → index-7ec5519a.js} +1 -1
  187. package/dist/esm-es5/{index-cb21eccb.js → index-8785a9c6.js} +1 -1
  188. package/dist/esm-es5/index-9b0d46f4.js +4 -0
  189. package/dist/esm-es5/index.js +1 -1
  190. package/dist/esm-es5/input-shims-0e65111b.js +4 -0
  191. package/dist/esm-es5/{input.utils-961c9f17.js → input.utils-1ad8dafc.js} +1 -1
  192. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  193. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  194. package/dist/esm-es5/ion-alert.entry.js +1 -1
  195. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  196. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  197. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  198. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  199. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  200. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  201. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  202. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  203. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  204. package/dist/esm-es5/ion-img.entry.js +1 -1
  205. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  206. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  207. package/dist/esm-es5/ion-input.entry.js +1 -1
  208. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  209. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  210. package/dist/esm-es5/ion-loading.entry.js +1 -1
  211. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  212. package/dist/esm-es5/ion-modal.entry.js +1 -1
  213. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  214. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  215. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  216. package/dist/esm-es5/ion-picker.entry.js +1 -1
  217. package/dist/esm-es5/ion-popover.entry.js +1 -1
  218. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  219. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  220. package/dist/esm-es5/ion-range.entry.js +1 -1
  221. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  222. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  223. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  224. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  225. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  226. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  227. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  228. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  229. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  230. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  231. package/dist/esm-es5/ion-toast.entry.js +1 -1
  232. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  233. package/dist/esm-es5/ionic.js +1 -1
  234. package/dist/esm-es5/{ios.transition-b1da3753.js → ios.transition-085853ff.js} +1 -1
  235. package/dist/esm-es5/loader.js +1 -1
  236. package/dist/esm-es5/md.transition-33826623.js +4 -0
  237. package/dist/esm-es5/{notch-controller-55b09e11.js → notch-controller-3dc61260.js} +1 -1
  238. package/dist/esm-es5/{overlays-5deab4de.js → overlays-e3d0d356.js} +1 -1
  239. package/dist/esm-es5/status-tap-163e8128.js +4 -0
  240. package/dist/esm-es5/{swipe-back-e5394307.js → swipe-back-23ee7ab1.js} +1 -1
  241. package/dist/html.html-data.json +0 -24
  242. package/dist/ionic/index.esm.js +1 -1
  243. package/dist/ionic/ionic.esm.js +1 -1
  244. package/dist/ionic/{p-f1c4dcd4.js → p-02e1ebd9.js} +1 -1
  245. package/dist/ionic/{p-937a7e21.entry.js → p-02e23f26.entry.js} +1 -1
  246. package/dist/ionic/{p-15e76dd1.entry.js → p-03ee25cb.entry.js} +1 -1
  247. package/dist/ionic/p-06fee233.js +4 -0
  248. package/dist/ionic/p-075a94bd.js +4 -0
  249. package/dist/ionic/{p-8cfba7e9.system.entry.js → p-085a5dd6.system.entry.js} +1 -1
  250. package/dist/ionic/p-0a59f4fa.entry.js +4 -0
  251. package/dist/ionic/p-0e43be1b.entry.js +4 -0
  252. package/dist/ionic/{p-7ed1657c.system.entry.js → p-0eb2553a.system.entry.js} +1 -1
  253. package/dist/ionic/p-0ee3b5a2.system.js +4 -0
  254. package/dist/ionic/{p-2b838f86.system.entry.js → p-0f191cbe.system.entry.js} +1 -1
  255. package/dist/ionic/p-135e5731.js +4 -0
  256. package/dist/ionic/{p-b6efeab8.js → p-13dc21b0.js} +1 -1
  257. package/dist/ionic/{p-9b428d25.entry.js → p-1693cbc4.entry.js} +1 -1
  258. package/dist/ionic/{p-567de071.system.entry.js → p-17ba2b14.system.entry.js} +1 -1
  259. package/dist/ionic/{p-a88dec0d.system.js → p-1a790eef.system.js} +2 -2
  260. package/dist/ionic/{p-a0eb506c.system.entry.js → p-1bc65aec.system.entry.js} +1 -1
  261. package/dist/ionic/p-1f405274.js +4 -0
  262. package/dist/ionic/{p-120fb79a.entry.js → p-203633d1.entry.js} +1 -1
  263. package/dist/ionic/{p-9f364443.system.entry.js → p-23b73db1.system.entry.js} +1 -1
  264. package/dist/ionic/p-25fa1d30.system.entry.js +4 -0
  265. package/dist/ionic/{p-f1060cd8.entry.js → p-26194519.entry.js} +1 -1
  266. package/dist/ionic/{p-de930745.entry.js → p-265939f0.entry.js} +1 -1
  267. package/dist/ionic/{p-16188af7.entry.js → p-2aebc4a0.entry.js} +1 -1
  268. package/dist/ionic/{p-34b11c24.js → p-2bc73fb5.js} +1 -1
  269. package/dist/ionic/p-2c9eb774.system.js +4 -0
  270. package/dist/ionic/{p-1e67b266.system.entry.js → p-2cf2db18.system.entry.js} +1 -1
  271. package/dist/ionic/{p-2e46590d.system.entry.js → p-2ef3c7ee.system.entry.js} +1 -1
  272. package/dist/ionic/p-322c5fb4.system.js +1 -1
  273. package/dist/ionic/{p-1e955a45.system.js → p-32be7b07.system.js} +1 -1
  274. package/dist/ionic/{p-f63c2d12.entry.js → p-32e99b0a.entry.js} +1 -1
  275. package/dist/ionic/{p-61db139d.entry.js → p-337a61d5.entry.js} +1 -1
  276. package/dist/ionic/{p-c4238c12.system.js → p-340e3f24.system.js} +1 -1
  277. package/dist/ionic/{p-a090bce8.system.entry.js → p-3572f86a.system.entry.js} +1 -1
  278. package/dist/ionic/{p-ab674093.system.entry.js → p-3df889b3.system.entry.js} +1 -1
  279. package/dist/ionic/{p-05b74e45.system.entry.js → p-3eaf1444.system.entry.js} +1 -1
  280. package/dist/ionic/{p-1ab13b2b.js → p-42808996.js} +1 -1
  281. package/dist/ionic/{p-744c8672.system.entry.js → p-4346c79d.system.entry.js} +1 -1
  282. package/dist/ionic/{p-a15ddedb.system.js → p-4452a8ac.system.js} +1 -1
  283. package/dist/ionic/{p-63b0abde.system.entry.js → p-45accc62.system.entry.js} +1 -1
  284. package/dist/ionic/{p-b1eb86fd.entry.js → p-45de8d2a.entry.js} +1 -1
  285. package/dist/ionic/p-48a8d9b4.system.entry.js +4 -0
  286. package/dist/ionic/{p-52d7a191.entry.js → p-4ad78edc.entry.js} +1 -1
  287. package/dist/ionic/{p-2da9c8a7.entry.js → p-4c252070.entry.js} +1 -1
  288. package/dist/ionic/{p-19ea7bff.system.js → p-5126cf1e.system.js} +1 -1
  289. package/dist/ionic/{p-cb13696c.js → p-51dec25d.js} +1 -1
  290. package/dist/ionic/{p-bdf2cb2e.system.entry.js → p-551e8ff7.system.entry.js} +1 -1
  291. package/dist/ionic/{p-933727f9.system.entry.js → p-561ddcd4.system.entry.js} +2 -2
  292. package/dist/ionic/p-56da53ad.system.entry.js +4 -0
  293. package/dist/ionic/{p-948e6c6a.entry.js → p-57379000.entry.js} +1 -1
  294. package/dist/ionic/{p-e06057c9.entry.js → p-57ceead7.entry.js} +1 -1
  295. package/dist/ionic/{p-6d6cedc5.entry.js → p-6190d0d6.entry.js} +1 -1
  296. package/dist/ionic/p-68dc53a5.js +4 -0
  297. package/dist/ionic/{p-74e3f0af.system.entry.js → p-697b4a5e.system.entry.js} +2 -2
  298. package/dist/ionic/{p-248318e0.system.entry.js → p-6a2d9764.system.entry.js} +1 -1
  299. package/dist/ionic/{p-15d18206.entry.js → p-702caed7.entry.js} +1 -1
  300. package/dist/ionic/{p-7ddc46c3.system.entry.js → p-70ccc275.system.entry.js} +1 -1
  301. package/dist/ionic/{p-98ff6b32.entry.js → p-76446a85.entry.js} +1 -1
  302. package/dist/ionic/{p-2346ab53.system.entry.js → p-77036bbd.system.entry.js} +1 -1
  303. package/dist/ionic/{p-98231c01.system.entry.js → p-77e7b7b6.system.entry.js} +1 -1
  304. package/dist/ionic/{p-72812e99.js → p-7a1766d6.js} +1 -1
  305. package/dist/ionic/{p-cba1f9bc.system.entry.js → p-7b96e5c1.system.entry.js} +1 -1
  306. package/dist/ionic/{p-7b9a2b23.entry.js → p-7bac3d83.entry.js} +1 -1
  307. package/dist/ionic/{p-9df2c6fb.entry.js → p-7c1f8b94.entry.js} +1 -1
  308. package/dist/ionic/{p-8694928f.entry.js → p-803f0bc2.entry.js} +1 -1
  309. package/dist/ionic/p-83810019.entry.js +4 -0
  310. package/dist/ionic/{p-7a6eaf9e.entry.js → p-85fee58d.entry.js} +1 -1
  311. package/dist/ionic/{p-d22e2a38.system.js → p-881d9e52.system.js} +1 -1
  312. package/dist/ionic/{p-9b122e3c.system.entry.js → p-8922be26.system.entry.js} +1 -1
  313. package/dist/ionic/p-8a836849.entry.js +4 -0
  314. package/dist/ionic/p-8d5472fb.entry.js +4 -0
  315. package/dist/ionic/{p-e09d6392.system.entry.js → p-91f17b25.system.entry.js} +2 -2
  316. package/dist/ionic/{p-d7aa6b00.entry.js → p-955c3eb8.entry.js} +1 -1
  317. package/dist/ionic/{p-8635f5e6.system.js → p-95da3ae2.system.js} +1 -1
  318. package/dist/ionic/{p-b9d7015f.entry.js → p-9b3bb24e.entry.js} +1 -1
  319. package/dist/ionic/{p-d6eaffb1.system.entry.js → p-9be5f3ee.system.entry.js} +2 -2
  320. package/dist/ionic/{p-5c08627a.system.js → p-9eee4de1.system.js} +1 -1
  321. package/dist/ionic/{p-cac0e0b3.system.entry.js → p-a0f3846e.system.entry.js} +1 -1
  322. package/dist/ionic/{p-7de1e42c.system.js → p-a2b6dd57.system.js} +1 -1
  323. package/dist/ionic/{p-6933c482.system.entry.js → p-a4575db1.system.entry.js} +1 -1
  324. package/dist/ionic/{p-01186920.system.entry.js → p-a9e24ae2.system.entry.js} +1 -1
  325. package/dist/ionic/{p-0eb35a7f.system.js → p-aa63b365.system.js} +1 -1
  326. package/dist/ionic/p-af09741c.entry.js +4 -0
  327. package/dist/ionic/{p-a8f2c254.entry.js → p-b0d8bbee.entry.js} +1 -1
  328. package/dist/ionic/{p-3ad285e3.system.js → p-b3680e2f.system.js} +1 -1
  329. package/dist/ionic/p-b7433d7d.js +4 -0
  330. package/dist/ionic/{p-585b455c.system.entry.js → p-b91acf8d.system.entry.js} +1 -1
  331. package/dist/ionic/{p-b51e4004.js → p-bb11d9fb.js} +1 -1
  332. package/dist/ionic/{p-ada36597.system.js → p-c1b51537.system.js} +1 -1
  333. package/dist/ionic/{p-bb0db172.entry.js → p-c32644d7.entry.js} +1 -1
  334. package/dist/ionic/{p-c41ac815.entry.js → p-c8d645b3.entry.js} +1 -1
  335. package/dist/ionic/{p-5c9eb9af.entry.js → p-cc700b6b.entry.js} +1 -1
  336. package/dist/ionic/{p-3cc276f4.js → p-d4ca0475.js} +1 -1
  337. package/dist/ionic/{p-1a5bc5f7.js → p-d60342e3.js} +1 -1
  338. package/dist/ionic/{p-081a4ce4.entry.js → p-d9b3fa7e.entry.js} +1 -1
  339. package/dist/ionic/{p-58d5df0c.system.entry.js → p-da8ef548.system.entry.js} +1 -1
  340. package/dist/ionic/{p-985a7e17.system.entry.js → p-dc146a2a.system.entry.js} +1 -1
  341. package/dist/ionic/p-df862603.entry.js +4 -0
  342. package/dist/ionic/{p-eef505e8.entry.js → p-e1bbacb7.entry.js} +1 -1
  343. package/dist/ionic/{p-302b50bb.system.entry.js → p-e265ae18.system.entry.js} +1 -1
  344. package/dist/ionic/{p-2172893e.system.entry.js → p-e2e19375.system.entry.js} +1 -1
  345. package/dist/ionic/p-e308de5b.system.js +4 -0
  346. package/dist/ionic/{p-a4a2420e.system.entry.js → p-e456ee59.system.entry.js} +1 -1
  347. package/dist/ionic/{p-da2b833b.js → p-e6200d13.js} +1 -1
  348. package/dist/ionic/{p-b3c60433.system.js → p-e8232807.system.js} +1 -1
  349. package/dist/ionic/{p-f1120724.system.entry.js → p-e8aed00f.system.entry.js} +1 -1
  350. package/dist/ionic/{p-fceec762.entry.js → p-e97a3f44.entry.js} +1 -1
  351. package/dist/ionic/{p-89bf08c7.entry.js → p-ed882fb1.entry.js} +1 -1
  352. package/dist/ionic/{p-6dfb0f39.system.entry.js → p-f2c19415.system.entry.js} +1 -1
  353. package/dist/ionic/{p-e4ee80be.system.entry.js → p-f301a694.system.entry.js} +1 -1
  354. package/dist/ionic/{p-7a02f476.entry.js → p-f3269679.entry.js} +1 -1
  355. package/dist/ionic/{p-92763d3d.entry.js → p-f4066aa9.entry.js} +1 -1
  356. package/dist/ionic/{p-e76dae93.entry.js → p-f42743d1.entry.js} +1 -1
  357. package/dist/ionic/{p-28706c6f.js → p-f5035354.js} +1 -1
  358. package/dist/ionic/{p-343b6b1d.system.js → p-f687573e.system.js} +1 -1
  359. package/dist/ionic/{p-797eeea8.system.entry.js → p-f78af648.system.entry.js} +1 -1
  360. package/dist/ionic/p-ff4b7e40.system.js +4 -0
  361. package/dist/ionic/{p-fbd41a7e.system.entry.js → p-ffc48bc5.system.entry.js} +1 -1
  362. package/dist/ionic/svg/accessibility-outline.svg +1 -1
  363. package/dist/ionic/svg/accessibility-sharp.svg +1 -1
  364. package/dist/ionic/svg/accessibility.svg +1 -1
  365. package/dist/ionic/svg/arrow-down-left-box-outline.svg +1 -0
  366. package/dist/ionic/svg/arrow-down-left-box-sharp.svg +1 -0
  367. package/dist/ionic/svg/arrow-down-left-box.svg +1 -0
  368. package/dist/ionic/svg/arrow-down-right-box-outline.svg +1 -0
  369. package/dist/ionic/svg/arrow-down-right-box-sharp.svg +1 -0
  370. package/dist/ionic/svg/arrow-down-right-box.svg +1 -0
  371. package/dist/ionic/svg/arrow-up-left-box-outline.svg +1 -0
  372. package/dist/ionic/svg/arrow-up-left-box-sharp.svg +1 -0
  373. package/dist/ionic/svg/arrow-up-left-box.svg +1 -0
  374. package/dist/ionic/svg/arrow-up-right-box-outline.svg +1 -0
  375. package/dist/ionic/svg/arrow-up-right-box-sharp.svg +1 -0
  376. package/dist/ionic/svg/arrow-up-right-box.svg +1 -0
  377. package/dist/ionic/svg/bag-add-outline.svg +1 -1
  378. package/dist/ionic/svg/bag-add-sharp.svg +1 -1
  379. package/dist/ionic/svg/bag-add.svg +1 -1
  380. package/dist/ionic/svg/bag-check-outline.svg +1 -1
  381. package/dist/ionic/svg/bag-check-sharp.svg +1 -1
  382. package/dist/ionic/svg/bag-check.svg +1 -1
  383. package/dist/ionic/svg/bag-handle-outline.svg +1 -1
  384. package/dist/ionic/svg/bag-handle-sharp.svg +1 -1
  385. package/dist/ionic/svg/bag-handle.svg +1 -1
  386. package/dist/ionic/svg/bag-outline.svg +1 -1
  387. package/dist/ionic/svg/bag-remove-outline.svg +1 -1
  388. package/dist/ionic/svg/bag-remove-sharp.svg +1 -1
  389. package/dist/ionic/svg/bag-remove.svg +1 -1
  390. package/dist/ionic/svg/bag-sharp.svg +1 -1
  391. package/dist/ionic/svg/bag.svg +1 -1
  392. package/dist/ionic/svg/balloon-outline.svg +1 -1
  393. package/dist/ionic/svg/balloon-sharp.svg +1 -1
  394. package/dist/ionic/svg/balloon.svg +1 -1
  395. package/dist/ionic/svg/ban-outline.svg +1 -1
  396. package/dist/ionic/svg/ban-sharp.svg +1 -1
  397. package/dist/ionic/svg/ban.svg +1 -1
  398. package/dist/ionic/svg/binoculars-outline.svg +1 -0
  399. package/dist/ionic/svg/binoculars-sharp.svg +1 -0
  400. package/dist/ionic/svg/binoculars.svg +1 -0
  401. package/dist/ionic/svg/body-outline.svg +1 -1
  402. package/dist/ionic/svg/bowling-ball-outline.svg +1 -1
  403. package/dist/ionic/svg/bowling-ball-sharp.svg +1 -1
  404. package/dist/ionic/svg/bowling-ball.svg +1 -1
  405. package/dist/ionic/svg/calendar-clear-outline.svg +1 -1
  406. package/dist/ionic/svg/calendar-clear-sharp.svg +1 -1
  407. package/dist/ionic/svg/calendar-clear.svg +1 -1
  408. package/dist/ionic/svg/calendar-number-outline.svg +1 -1
  409. package/dist/ionic/svg/calendar-number-sharp.svg +1 -1
  410. package/dist/ionic/svg/calendar-number.svg +1 -1
  411. package/dist/ionic/svg/calendar-outline.svg +1 -1
  412. package/dist/ionic/svg/calendar-sharp.svg +1 -1
  413. package/dist/ionic/svg/calendar.svg +1 -1
  414. package/dist/ionic/svg/chevron-collapse-outline.svg +1 -1
  415. package/dist/ionic/svg/chevron-collapse-sharp.svg +1 -1
  416. package/dist/ionic/svg/chevron-collapse.svg +1 -1
  417. package/dist/ionic/svg/chevron-expand-outline.svg +1 -1
  418. package/dist/ionic/svg/chevron-expand-sharp.svg +1 -1
  419. package/dist/ionic/svg/chevron-expand.svg +1 -1
  420. package/dist/ionic/svg/color-wand-outline.svg +1 -1
  421. package/dist/ionic/svg/color-wand.svg +1 -1
  422. package/dist/ionic/svg/diamond-outline.svg +1 -1
  423. package/dist/ionic/svg/diamond-sharp.svg +1 -1
  424. package/dist/ionic/svg/diamond.svg +1 -1
  425. package/dist/ionic/svg/dice-outline.svg +1 -1
  426. package/dist/ionic/svg/dice-sharp.svg +1 -1
  427. package/dist/ionic/svg/dice.svg +1 -1
  428. package/dist/ionic/svg/document-lock-outline.svg +1 -1
  429. package/dist/ionic/svg/document-lock-sharp.svg +1 -1
  430. package/dist/ionic/svg/document-lock.svg +1 -1
  431. package/dist/ionic/svg/extension-puzzle-outline.svg +1 -1
  432. package/dist/ionic/svg/extension-puzzle-sharp.svg +1 -1
  433. package/dist/ionic/svg/extension-puzzle.svg +1 -1
  434. package/dist/ionic/svg/filter-circle-outline.svg +1 -1
  435. package/dist/ionic/svg/filter-circle-sharp.svg +1 -1
  436. package/dist/ionic/svg/filter-circle.svg +1 -1
  437. package/dist/ionic/svg/fish-outline.svg +1 -1
  438. package/dist/ionic/svg/fish-sharp.svg +1 -1
  439. package/dist/ionic/svg/fish.svg +1 -1
  440. package/dist/ionic/svg/footsteps-outline.svg +1 -1
  441. package/dist/ionic/svg/footsteps-sharp.svg +1 -1
  442. package/dist/ionic/svg/footsteps.svg +1 -1
  443. package/dist/ionic/svg/id-card-outline.svg +1 -1
  444. package/dist/ionic/svg/id-card-sharp.svg +1 -1
  445. package/dist/ionic/svg/id-card.svg +1 -1
  446. package/dist/ionic/svg/invert-mode-outline.svg +1 -1
  447. package/dist/ionic/svg/invert-mode-sharp.svg +1 -1
  448. package/dist/ionic/svg/invert-mode.svg +1 -1
  449. package/dist/ionic/svg/logo-alipay.svg +1 -1
  450. package/dist/ionic/svg/logo-android.svg +1 -1
  451. package/dist/ionic/svg/logo-appflow.svg +1 -0
  452. package/dist/ionic/svg/logo-apple-ar.svg +1 -1
  453. package/dist/ionic/svg/logo-behance.svg +1 -1
  454. package/dist/ionic/svg/logo-bitbucket.svg +1 -1
  455. package/dist/ionic/svg/logo-deviantart.svg +1 -1
  456. package/dist/ionic/svg/logo-discord.svg +1 -1
  457. package/dist/ionic/svg/logo-docker.svg +1 -1
  458. package/dist/ionic/svg/logo-edge.svg +1 -1
  459. package/dist/ionic/svg/logo-facebook.svg +1 -1
  460. package/dist/ionic/svg/logo-figma.svg +1 -1
  461. package/dist/ionic/svg/logo-firebase.svg +1 -1
  462. package/dist/ionic/svg/logo-gitlab.svg +1 -1
  463. package/dist/ionic/svg/logo-ionic.svg +1 -1
  464. package/dist/ionic/svg/logo-mastodon.svg +1 -1
  465. package/dist/ionic/svg/logo-medium.svg +1 -1
  466. package/dist/ionic/svg/logo-microsoft.svg +1 -1
  467. package/dist/ionic/svg/logo-npm.svg +1 -1
  468. package/dist/ionic/svg/logo-paypal.svg +1 -1
  469. package/dist/ionic/svg/logo-soundcloud.svg +1 -1
  470. package/dist/ionic/svg/logo-tableau.svg +1 -1
  471. package/dist/ionic/svg/logo-tiktok.svg +1 -1
  472. package/dist/ionic/svg/logo-trapeze.svg +1 -0
  473. package/dist/ionic/svg/logo-venmo.svg +1 -1
  474. package/dist/ionic/svg/logo-vercel.svg +1 -1
  475. package/dist/ionic/svg/logo-wechat.svg +1 -1
  476. package/dist/ionic/svg/logo-x.svg +1 -0
  477. package/dist/ionic/svg/logo-yahoo.svg +1 -1
  478. package/dist/ionic/svg/prism-outline.svg +1 -1
  479. package/dist/ionic/svg/prism-sharp.svg +1 -1
  480. package/dist/ionic/svg/prism.svg +1 -1
  481. package/dist/ionic/svg/scale-outline.svg +1 -1
  482. package/dist/ionic/svg/scale-sharp.svg +1 -1
  483. package/dist/ionic/svg/scale.svg +1 -1
  484. package/dist/ionic/svg/server-outline.svg +1 -1
  485. package/dist/ionic/svg/server-sharp.svg +1 -1
  486. package/dist/ionic/svg/server.svg +1 -1
  487. package/dist/ionic/svg/shield-half-outline.svg +1 -1
  488. package/dist/ionic/svg/shield-half-sharp.svg +1 -1
  489. package/dist/ionic/svg/shield-half.svg +1 -1
  490. package/dist/ionic/svg/sparkles-outline.svg +1 -1
  491. package/dist/ionic/svg/sparkles-sharp.svg +1 -1
  492. package/dist/ionic/svg/sparkles.svg +1 -1
  493. package/dist/ionic/svg/storefront-outline.svg +1 -1
  494. package/dist/ionic/svg/storefront-sharp.svg +1 -1
  495. package/dist/ionic/svg/storefront.svg +1 -1
  496. package/dist/ionic/svg/telescope-outline.svg +1 -1
  497. package/dist/ionic/svg/telescope-sharp.svg +1 -1
  498. package/dist/ionic/svg/telescope.svg +1 -1
  499. package/dist/ionic/svg/ticket-outline.svg +1 -1
  500. package/dist/ionic/svg/ticket-sharp.svg +1 -1
  501. package/dist/ionic/svg/ticket.svg +1 -1
  502. package/dist/ionic/svg/today-outline.svg +1 -1
  503. package/dist/ionic/svg/today-sharp.svg +1 -1
  504. package/dist/ionic/svg/today.svg +1 -1
  505. package/dist/ionic/svg/unlink-outline.svg +1 -1
  506. package/dist/ionic/svg/unlink-sharp.svg +1 -1
  507. package/dist/ionic/svg/unlink.svg +1 -1
  508. package/dist/ionic/svg/videocam-off-outline.svg +1 -1
  509. package/dist/ionic/svg/videocam-off-sharp.svg +1 -1
  510. package/dist/ionic/svg/videocam-off.svg +1 -1
  511. package/dist/ionic/svg/wifi-outline.svg +1 -1
  512. package/dist/ionic/svg/wifi-sharp.svg +1 -1
  513. package/dist/ionic/svg/wifi.svg +1 -1
  514. package/dist/types/components/checkbox/checkbox.d.ts +0 -25
  515. package/dist/types/components/modal/animations/sheet.d.ts +0 -1
  516. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  517. package/dist/types/components/modal/modal-interface.d.ts +0 -1
  518. package/dist/types/components/modal/modal.d.ts +0 -11
  519. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  520. package/dist/types/components/select/select.d.ts +0 -6
  521. package/dist/types/components/toggle/toggle.d.ts +0 -6
  522. package/dist/types/components/toolbar/toolbar.d.ts +0 -4
  523. package/dist/types/components.d.ts +0 -48
  524. package/dist/types/utils/config.d.ts +0 -9
  525. package/dist/types/utils/helpers.d.ts +1 -0
  526. package/dist/types/utils/logging/index.d.ts +1 -13
  527. package/hydrate/index.js +141 -348
  528. package/hydrate/index.mjs +141 -348
  529. package/package.json +5 -5
  530. package/dist/esm-es5/index-6ad967f3.js +0 -4
  531. package/dist/esm-es5/input-shims-2fd7c6ef.js +0 -4
  532. package/dist/esm-es5/md.transition-571b3859.js +0 -4
  533. package/dist/esm-es5/status-tap-79eac0ac.js +0 -4
  534. package/dist/ionic/p-0430c2e0.entry.js +0 -4
  535. package/dist/ionic/p-0af823e1.js +0 -4
  536. package/dist/ionic/p-1132ffee.entry.js +0 -4
  537. package/dist/ionic/p-4c2d5b80.system.js +0 -4
  538. package/dist/ionic/p-4c98e2cf.system.js +0 -4
  539. package/dist/ionic/p-4ec778aa.entry.js +0 -4
  540. package/dist/ionic/p-577bc414.entry.js +0 -4
  541. package/dist/ionic/p-67222c16.system.js +0 -4
  542. package/dist/ionic/p-72bc8a1c.js +0 -4
  543. package/dist/ionic/p-7513b0c4.js +0 -4
  544. package/dist/ionic/p-9343a445.js +0 -4
  545. package/dist/ionic/p-a3db8ee3.js +0 -4
  546. package/dist/ionic/p-c4b53b16.system.entry.js +0 -4
  547. package/dist/ionic/p-cdc83025.entry.js +0 -4
  548. package/dist/ionic/p-d1c5b60e.system.js +0 -4
  549. package/dist/ionic/p-d7dd8fb1.entry.js +0 -4
  550. package/dist/ionic/p-e3171ff3.entry.js +0 -4
  551. package/dist/ionic/p-e4fde4fb.system.entry.js +0 -4
  552. package/dist/ionic/p-e6376b93.system.entry.js +0 -4
  553. package/dist/ionic/p-e8d56122.js +0 -4
package/hydrate/index.js CHANGED
@@ -2710,8 +2710,18 @@ const shallowEqualStringMap = (map1, map2) => {
2710
2710
  }
2711
2711
  return true;
2712
2712
  };
2713
+ const getNextSiblingOfType = (element) => {
2714
+ let sibling = element.nextSibling;
2715
+ while (sibling) {
2716
+ if (sibling.nodeType === Node.ELEMENT_NODE && sibling !== null) {
2717
+ return sibling;
2718
+ }
2719
+ sibling = sibling.nextSibling;
2720
+ }
2721
+ return null;
2722
+ };
2713
2723
 
2714
- /* Ionicons v7.2.2, ES Modules */
2724
+ /* Ionicons v7.4.0, ES Modules */
2715
2725
  const arrowBackSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path stroke-linecap='square' stroke-miterlimit='10' stroke-width='48' d='M244 400L100 256l144-144M120 256h292' class='ionicon-fill-none'/></svg>";
2716
2726
  const arrowDown = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path stroke-linecap='round' stroke-linejoin='round' stroke-width='48' d='M112 268l144 144 144-144M256 392V100' class='ionicon-fill-none'/></svg>";
2717
2727
  const caretBackSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path d='M368 64L144 256l224 192V64z'/></svg>";
@@ -2720,7 +2730,7 @@ const caretUpSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000
2720
2730
  const checkmarkOutline = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path stroke-linecap='round' stroke-linejoin='round' d='M416 128L192 384l-96-96' class='ionicon-fill-none ionicon-stroke-width'/></svg>";
2721
2731
  const chevronBack = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path stroke-linecap='round' stroke-linejoin='round' stroke-width='48' d='M328 112L184 256l144 144' class='ionicon-fill-none'/></svg>";
2722
2732
  const chevronDown = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path stroke-linecap='round' stroke-linejoin='round' stroke-width='48' d='M112 184l144 144 144-144' class='ionicon-fill-none'/></svg>";
2723
- const chevronExpand = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path d='M136 208l120-104 120 104M136 304l120 104 120-104' stroke-width='48' stroke-linecap='round' stroke-linejoin='round' class='ionicon-fill-none'/></svg>";
2733
+ const chevronExpand = "data:image/svg+xml;utf8,<svg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg' class='ionicon'><path d='M136 208l120-104 120 104M136 304l120 104 120-104' stroke-width='48' stroke-linecap='round' stroke-linejoin='round' class='ionicon-fill-none'/></svg>";
2724
2734
  const chevronForward = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path stroke-linecap='round' stroke-linejoin='round' stroke-width='48' d='M184 112l144 144-144 144' class='ionicon-fill-none'/></svg>";
2725
2735
  const chevronForwardOutline = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path stroke-linecap='round' stroke-linejoin='round' stroke-width='48' d='M184 112l144 144-144 144' class='ionicon-fill-none'/></svg>";
2726
2736
  const close = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path d='M289.94 256l95-95A24 24 0 00351 127l-95 95-95-95a24 24 0 00-34 34l95 95-95 95a24 24 0 1034 34l95-95 95 95a24 24 0 0034-34z'/></svg>";
@@ -3217,12 +3227,9 @@ let accordionIds = 0;
3217
3227
  * @param message - The string message to be logged to the console.
3218
3228
  */
3219
3229
  const printIonWarning = (message, ...params) => {
3220
- const logLevel = config.get('logLevel', "WARN" /* LogLevel.WARN */);
3221
- if (["WARN" /* LogLevel.WARN */].includes(logLevel)) {
3222
- return console.warn(`[Ionic Warning]: ${message}`, ...params);
3223
- }
3230
+ return console.warn(`[Ionic Warning]: ${message}`, ...params);
3224
3231
  };
3225
- /**
3232
+ /*
3226
3233
  * Logs an error to the console with an Ionic prefix
3227
3234
  * to indicate the library that is warning the developer.
3228
3235
  *
@@ -3230,10 +3237,7 @@ const printIonWarning = (message, ...params) => {
3230
3237
  * @param params - Additional arguments to supply to the console.error.
3231
3238
  */
3232
3239
  const printIonError = (message, ...params) => {
3233
- const logLevel = config.get('logLevel', "ERROR" /* LogLevel.ERROR */);
3234
- if (["ERROR" /* LogLevel.ERROR */, "WARN" /* LogLevel.WARN */].includes(logLevel)) {
3235
- return console.error(`[Ionic Error]: ${message}`, ...params);
3236
- }
3240
+ return console.error(`[Ionic Error]: ${message}`, ...params);
3237
3241
  };
3238
3242
  /**
3239
3243
  * Prints an error informing developers that an implementation requires an element to be used
@@ -8434,10 +8438,10 @@ class CardTitle {
8434
8438
  }; }
8435
8439
  }
8436
8440
 
8437
- const checkboxIosCss = ":host{--checkbox-background-checked:var(--ion-color-primary, #0054e9);--border-color-checked:var(--ion-color-primary, #0054e9);--checkmark-color:var(--ion-color-primary-contrast, #fff);--transition:none;display:inline-block;position:relative;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-color){--checkbox-background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}.checkbox-wrapper{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper,:host(.in-item:not(.checkbox-label-placement-stacked):not([slot])) .native-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.checkbox-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.checkbox-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.checkbox-icon{border-radius:var(--border-radius);position:relative;width:var(--size);height:var(--size);-webkit-transition:var(--transition);transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--checkbox-background);-webkit-box-sizing:border-box;box-sizing:border-box}.checkbox-icon path{fill:none;stroke:var(--checkmark-color);stroke-width:var(--checkmark-width);opacity:0}.checkbox-bottom{padding-top:4px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;font-size:0.75rem;white-space:normal}:host(.checkbox-label-placement-stacked) .checkbox-bottom{font-size:1rem}.checkbox-bottom .error-text{display:none;color:var(--ion-color-danger, #c5000f)}.checkbox-bottom .helper-text{display:block;color:var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d))}:host(.ion-touched.ion-invalid) .checkbox-bottom .error-text{display:block}:host(.ion-touched.ion-invalid) .checkbox-bottom .helper-text{display:none}:host(.checkbox-label-placement-start) .checkbox-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.checkbox-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-end) .checkbox-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse;-ms-flex-pack:start;justify-content:start}:host(.checkbox-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.checkbox-label-placement-stacked) .checkbox-wrapper{-ms-flex-direction:column;flex-direction:column;text-align:center}:host(.checkbox-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host(.checkbox-justify-space-between) .checkbox-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.checkbox-justify-start) .checkbox-wrapper{-ms-flex-pack:start;justify-content:start}:host(.checkbox-justify-end) .checkbox-wrapper{-ms-flex-pack:end;justify-content:end}:host(.checkbox-alignment-start) .checkbox-wrapper{-ms-flex-align:start;align-items:start}:host(.checkbox-alignment-center) .checkbox-wrapper{-ms-flex-align:center;align-items:center}:host(.checkbox-justify-space-between),:host(.checkbox-justify-start),:host(.checkbox-justify-end),:host(.checkbox-alignment-start),:host(.checkbox-alignment-center){display:block}:host(.checkbox-checked) .checkbox-icon,:host(.checkbox-indeterminate) .checkbox-icon{border-color:var(--border-color-checked);background:var(--checkbox-background-checked)}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{opacity:1}:host(.checkbox-disabled){pointer-events:none}:host{--border-radius:50%;--border-width:0.125rem;--border-style:solid;--border-color:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.23);--checkbox-background:var(--ion-item-background, var(--ion-background-color, #fff));--size:min(1.375rem, 55.836px);--checkmark-width:1.5px}:host(.checkbox-disabled){opacity:0.3}";
8441
+ const checkboxIosCss = ":host{--checkbox-background-checked:var(--ion-color-primary, #0054e9);--border-color-checked:var(--ion-color-primary, #0054e9);--checkmark-color:var(--ion-color-primary-contrast, #fff);--transition:none;display:inline-block;position:relative;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-color){--checkbox-background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}.checkbox-wrapper{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper,:host(.in-item:not(.checkbox-label-placement-stacked):not([slot])) .native-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.checkbox-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.checkbox-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.checkbox-icon{border-radius:var(--border-radius);position:relative;width:var(--size);height:var(--size);-webkit-transition:var(--transition);transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--checkbox-background);-webkit-box-sizing:border-box;box-sizing:border-box}.checkbox-icon path{fill:none;stroke:var(--checkmark-color);stroke-width:var(--checkmark-width);opacity:0}:host(.checkbox-justify-space-between) .checkbox-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.checkbox-justify-start) .checkbox-wrapper{-ms-flex-pack:start;justify-content:start}:host(.checkbox-justify-end) .checkbox-wrapper{-ms-flex-pack:end;justify-content:end}:host(.checkbox-alignment-start) .checkbox-wrapper{-ms-flex-align:start;align-items:start}:host(.checkbox-alignment-center) .checkbox-wrapper{-ms-flex-align:center;align-items:center}:host(.checkbox-justify-space-between),:host(.checkbox-justify-start),:host(.checkbox-justify-end),:host(.checkbox-alignment-start),:host(.checkbox-alignment-center){display:block}:host(.checkbox-label-placement-start) .checkbox-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.checkbox-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-end) .checkbox-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.checkbox-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.checkbox-label-placement-stacked) .checkbox-wrapper{-ms-flex-direction:column;flex-direction:column}:host(.checkbox-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host(.checkbox-checked) .checkbox-icon,:host(.checkbox-indeterminate) .checkbox-icon{border-color:var(--border-color-checked);background:var(--checkbox-background-checked)}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{opacity:1}:host(.checkbox-disabled){pointer-events:none}:host{--border-radius:50%;--border-width:0.125rem;--border-style:solid;--border-color:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.23);--checkbox-background:var(--ion-item-background, var(--ion-background-color, #fff));--size:min(1.375rem, 55.836px);--checkmark-width:1.5px}:host(.checkbox-disabled){opacity:0.3}";
8438
8442
  var IonCheckboxIosStyle0 = checkboxIosCss;
8439
8443
 
8440
- const checkboxMdCss = ":host{--checkbox-background-checked:var(--ion-color-primary, #0054e9);--border-color-checked:var(--ion-color-primary, #0054e9);--checkmark-color:var(--ion-color-primary-contrast, #fff);--transition:none;display:inline-block;position:relative;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-color){--checkbox-background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}.checkbox-wrapper{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper,:host(.in-item:not(.checkbox-label-placement-stacked):not([slot])) .native-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.checkbox-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.checkbox-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.checkbox-icon{border-radius:var(--border-radius);position:relative;width:var(--size);height:var(--size);-webkit-transition:var(--transition);transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--checkbox-background);-webkit-box-sizing:border-box;box-sizing:border-box}.checkbox-icon path{fill:none;stroke:var(--checkmark-color);stroke-width:var(--checkmark-width);opacity:0}.checkbox-bottom{padding-top:4px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;font-size:0.75rem;white-space:normal}:host(.checkbox-label-placement-stacked) .checkbox-bottom{font-size:1rem}.checkbox-bottom .error-text{display:none;color:var(--ion-color-danger, #c5000f)}.checkbox-bottom .helper-text{display:block;color:var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d))}:host(.ion-touched.ion-invalid) .checkbox-bottom .error-text{display:block}:host(.ion-touched.ion-invalid) .checkbox-bottom .helper-text{display:none}:host(.checkbox-label-placement-start) .checkbox-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.checkbox-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-end) .checkbox-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse;-ms-flex-pack:start;justify-content:start}:host(.checkbox-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.checkbox-label-placement-stacked) .checkbox-wrapper{-ms-flex-direction:column;flex-direction:column;text-align:center}:host(.checkbox-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host(.checkbox-justify-space-between) .checkbox-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.checkbox-justify-start) .checkbox-wrapper{-ms-flex-pack:start;justify-content:start}:host(.checkbox-justify-end) .checkbox-wrapper{-ms-flex-pack:end;justify-content:end}:host(.checkbox-alignment-start) .checkbox-wrapper{-ms-flex-align:start;align-items:start}:host(.checkbox-alignment-center) .checkbox-wrapper{-ms-flex-align:center;align-items:center}:host(.checkbox-justify-space-between),:host(.checkbox-justify-start),:host(.checkbox-justify-end),:host(.checkbox-alignment-start),:host(.checkbox-alignment-center){display:block}:host(.checkbox-checked) .checkbox-icon,:host(.checkbox-indeterminate) .checkbox-icon{border-color:var(--border-color-checked);background:var(--checkbox-background-checked)}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{opacity:1}:host(.checkbox-disabled){pointer-events:none}:host{--border-radius:calc(var(--size) * .125);--border-width:2px;--border-style:solid;--border-color:rgb(var(--ion-text-color-rgb, 0, 0, 0), 0.6);--checkmark-width:3;--checkbox-background:var(--ion-item-background, var(--ion-background-color, #fff));--transition:background 180ms cubic-bezier(0.4, 0, 0.2, 1);--size:18px}.checkbox-icon path{stroke-dasharray:30;stroke-dashoffset:30}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{stroke-dashoffset:0;-webkit-transition:stroke-dashoffset 90ms linear 90ms;transition:stroke-dashoffset 90ms linear 90ms}:host(.checkbox-disabled) .label-text-wrapper{opacity:0.38}:host(.checkbox-disabled) .native-wrapper{opacity:0.63}";
8444
+ const checkboxMdCss = ":host{--checkbox-background-checked:var(--ion-color-primary, #0054e9);--border-color-checked:var(--ion-color-primary, #0054e9);--checkmark-color:var(--ion-color-primary-contrast, #fff);--transition:none;display:inline-block;position:relative;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-color){--checkbox-background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}.checkbox-wrapper{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper,:host(.in-item:not(.checkbox-label-placement-stacked):not([slot])) .native-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.checkbox-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.checkbox-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.checkbox-icon{border-radius:var(--border-radius);position:relative;width:var(--size);height:var(--size);-webkit-transition:var(--transition);transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--checkbox-background);-webkit-box-sizing:border-box;box-sizing:border-box}.checkbox-icon path{fill:none;stroke:var(--checkmark-color);stroke-width:var(--checkmark-width);opacity:0}:host(.checkbox-justify-space-between) .checkbox-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.checkbox-justify-start) .checkbox-wrapper{-ms-flex-pack:start;justify-content:start}:host(.checkbox-justify-end) .checkbox-wrapper{-ms-flex-pack:end;justify-content:end}:host(.checkbox-alignment-start) .checkbox-wrapper{-ms-flex-align:start;align-items:start}:host(.checkbox-alignment-center) .checkbox-wrapper{-ms-flex-align:center;align-items:center}:host(.checkbox-justify-space-between),:host(.checkbox-justify-start),:host(.checkbox-justify-end),:host(.checkbox-alignment-start),:host(.checkbox-alignment-center){display:block}:host(.checkbox-label-placement-start) .checkbox-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.checkbox-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-end) .checkbox-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.checkbox-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.checkbox-label-placement-stacked) .checkbox-wrapper{-ms-flex-direction:column;flex-direction:column}:host(.checkbox-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host(.checkbox-checked) .checkbox-icon,:host(.checkbox-indeterminate) .checkbox-icon{border-color:var(--border-color-checked);background:var(--checkbox-background-checked)}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{opacity:1}:host(.checkbox-disabled){pointer-events:none}:host{--border-radius:calc(var(--size) * .125);--border-width:2px;--border-style:solid;--border-color:rgb(var(--ion-text-color-rgb, 0, 0, 0), 0.6);--checkmark-width:3;--checkbox-background:var(--ion-item-background, var(--ion-background-color, #fff));--transition:background 180ms cubic-bezier(0.4, 0, 0.2, 1);--size:18px}.checkbox-icon path{stroke-dasharray:30;stroke-dashoffset:30}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{stroke-dashoffset:0;-webkit-transition:stroke-dashoffset 90ms linear 90ms;transition:stroke-dashoffset 90ms linear 90ms}:host(.checkbox-disabled) .label-text-wrapper{opacity:0.38}:host(.checkbox-disabled) .native-wrapper{opacity:0.63}";
8441
8445
  var IonCheckboxMdStyle0 = checkboxMdCss;
8442
8446
 
8443
8447
  /**
@@ -8448,9 +8452,6 @@ var IonCheckboxMdStyle0 = checkboxMdCss;
8448
8452
  * @part container - The container for the checkbox mark.
8449
8453
  * @part label - The label text describing the checkbox.
8450
8454
  * @part mark - The checkmark used to indicate the checked state.
8451
- * @part supporting-text - Supporting text displayed beneath the checkbox label.
8452
- * @part helper-text - Supporting text displayed beneath the checkbox label when the checkbox is valid.
8453
- * @part error-text - Supporting text displayed beneath the checkbox label when the checkbox is invalid and touched.
8454
8455
  */
8455
8456
  class Checkbox {
8456
8457
  constructor(hostRef) {
@@ -8459,8 +8460,6 @@ class Checkbox {
8459
8460
  this.ionFocus = createEvent(this, "ionFocus", 7);
8460
8461
  this.ionBlur = createEvent(this, "ionBlur", 7);
8461
8462
  this.inputId = `ion-cb-${checkboxIds++}`;
8462
- this.helperTextId = `${this.inputId}-helper-text`;
8463
- this.errorTextId = `${this.inputId}-error-text`;
8464
8463
  this.inheritedAttributes = {};
8465
8464
  /**
8466
8465
  * Sets the checked property and emits
@@ -8498,13 +8497,10 @@ class Checkbox {
8498
8497
  this.checked = false;
8499
8498
  this.indeterminate = false;
8500
8499
  this.disabled = false;
8501
- this.errorText = undefined;
8502
- this.helperText = undefined;
8503
8500
  this.value = 'on';
8504
8501
  this.labelPlacement = 'start';
8505
8502
  this.justify = undefined;
8506
8503
  this.alignment = undefined;
8507
- this.required = false;
8508
8504
  }
8509
8505
  componentWillLoad() {
8510
8506
  this.inheritedAttributes = Object.assign({}, inheritAriaAttributes(this.el));
@@ -8515,38 +8511,12 @@ class Checkbox {
8515
8511
  this.focusEl.focus();
8516
8512
  }
8517
8513
  }
8518
- getHintTextID() {
8519
- const { el, helperText, errorText, helperTextId, errorTextId } = this;
8520
- if (el.classList.contains('ion-touched') && el.classList.contains('ion-invalid') && errorText) {
8521
- return errorTextId;
8522
- }
8523
- if (helperText) {
8524
- return helperTextId;
8525
- }
8526
- return undefined;
8527
- }
8528
- /**
8529
- * Responsible for rendering helper text and error text.
8530
- * This element should only be rendered if hint text is set.
8531
- */
8532
- renderHintText() {
8533
- const { helperText, errorText, helperTextId, errorTextId } = this;
8534
- /**
8535
- * undefined and empty string values should
8536
- * be treated as not having helper/error text.
8537
- */
8538
- const hasHintText = !!helperText || !!errorText;
8539
- if (!hasHintText) {
8540
- return;
8541
- }
8542
- return (hAsync("div", { class: "checkbox-bottom" }, hAsync("div", { id: helperTextId, class: "helper-text", part: "supporting-text helper-text" }, helperText), hAsync("div", { id: errorTextId, class: "error-text", part: "supporting-text error-text" }, errorText)));
8543
- }
8544
8514
  render() {
8545
- const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment, required, } = this;
8515
+ const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment, } = this;
8546
8516
  const mode = getIonMode$1(this);
8547
8517
  const path = getSVGPath(mode, indeterminate);
8548
8518
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
8549
- return (hAsync(Host, { key: '7ac31df89b07c781ddcd30a6a8c109494d0c500a', "aria-checked": indeterminate ? 'mixed' : `${checked}`, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId, class: createColorClasses$1(color, {
8519
+ return (hAsync(Host, { key: '6dc787e1100521d08c4900104e1a3e2f594e919f', "aria-checked": indeterminate ? 'mixed' : `${checked}`, class: createColorClasses$1(color, {
8550
8520
  [mode]: true,
8551
8521
  'in-item': hostContext('ion-item', el),
8552
8522
  'checkbox-checked': checked,
@@ -8556,10 +8526,10 @@ class Checkbox {
8556
8526
  [`checkbox-justify-${justify}`]: justify !== undefined,
8557
8527
  [`checkbox-alignment-${alignment}`]: alignment !== undefined,
8558
8528
  [`checkbox-label-placement-${labelPlacement}`]: true,
8559
- }), onClick: this.onClick }, hAsync("label", { key: '674e923fe1ec83a33c31d67b0d414d61ba8f9e4b', class: "checkbox-wrapper" }, hAsync("input", Object.assign({ key: 'c4866e392fbdf3b76edcd1507cb67f40a213a4e7', type: "checkbox", checked: checked ? true : undefined, disabled: disabled, id: inputId, onChange: this.toggleChecked, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl), required: required }, inheritedAttributes)), hAsync("div", { key: '79cb96e5963b9331a760438ec8cc9e456215de91', class: {
8529
+ }), onClick: this.onClick }, hAsync("label", { key: '68222fb736a5ec3f2e488649b0e2ce0417dcb224', class: "checkbox-wrapper" }, hAsync("input", Object.assign({ key: 'f12962d7e9b19c744cfdbdeccc67ae7f5d080281', type: "checkbox", checked: checked ? true : undefined, disabled: disabled, id: inputId, onChange: this.toggleChecked, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl) }, inheritedAttributes)), hAsync("div", { key: 'c72df2699414b1e5a41a1bc267bc634f0c93dcff', class: {
8560
8530
  'label-text-wrapper': true,
8561
8531
  'label-text-wrapper-hidden': el.textContent === '',
8562
- }, part: "label" }, hAsync("slot", { key: '896cb26292c9a4a6c105afb39611472b93bf5e90' }), this.renderHintText()), hAsync("div", { key: '52cd22e79fd5db30b45d7b092aa5af3944392336', class: "native-wrapper" }, hAsync("svg", { key: '18d862ab7cc32055eaf200eea560ff1b2b6cbde0', class: "checkbox-icon", viewBox: "0 0 24 24", part: "container" }, path)))));
8532
+ }, part: "label" }, hAsync("slot", { key: 'a2a80285178a7e0e3b536fc9ca26b8b444aa4307' })), hAsync("div", { key: 'c2b05e0d1fe8df5dcd72858220b5ff51ecaee4cc', class: "native-wrapper" }, hAsync("svg", { key: 'ee24913fded72258ebd9713654a6dba92a18fcf7', class: "checkbox-icon", viewBox: "0 0 24 24", part: "container" }, path)))));
8563
8533
  }
8564
8534
  getSVGPath(mode, indeterminate) {
8565
8535
  let path = indeterminate ? (hAsync("path", { d: "M6 12L18 12", part: "mark" })) : (hAsync("path", { d: "M5.9,12.5l3.8,3.8l8.8-8.8", part: "mark" }));
@@ -8582,13 +8552,10 @@ class Checkbox {
8582
8552
  "checked": [1028],
8583
8553
  "indeterminate": [1028],
8584
8554
  "disabled": [4],
8585
- "errorText": [1, "error-text"],
8586
- "helperText": [1, "helper-text"],
8587
8555
  "value": [8],
8588
8556
  "labelPlacement": [1, "label-placement"],
8589
8557
  "justify": [1],
8590
8558
  "alignment": [1],
8591
- "required": [4],
8592
8559
  "setFocus": [64]
8593
8560
  },
8594
8561
  "$listeners$": undefined,
@@ -19064,7 +19031,7 @@ const computeDuration = (remaining, velocity) => {
19064
19031
  };
19065
19032
 
19066
19033
  const createSheetEnterAnimation = (opts) => {
19067
- const { currentBreakpoint, backdropBreakpoint, expandToScroll } = opts;
19034
+ const { currentBreakpoint, backdropBreakpoint } = opts;
19068
19035
  /**
19069
19036
  * If the backdropBreakpoint is undefined, then the backdrop
19070
19037
  * should always fade in. If the backdropBreakpoint came before the
@@ -19084,16 +19051,7 @@ const createSheetEnterAnimation = (opts) => {
19084
19051
  { offset: 0, opacity: 1, transform: 'translateY(100%)' },
19085
19052
  { offset: 1, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
19086
19053
  ]);
19087
- /**
19088
- * This allows the content to be scrollable at any breakpoint.
19089
- */
19090
- const contentAnimation = !expandToScroll
19091
- ? createAnimation('contentAnimation').keyframes([
19092
- { offset: 0, opacity: 1, maxHeight: `${(1 - currentBreakpoint) * 100}%` },
19093
- { offset: 1, opacity: 1, maxHeight: `${currentBreakpoint * 100}%` },
19094
- ])
19095
- : undefined;
19096
- return { wrapperAnimation, backdropAnimation, contentAnimation };
19054
+ return { wrapperAnimation, backdropAnimation };
19097
19055
  };
19098
19056
  const createSheetLeaveAnimation = (opts) => {
19099
19057
  const { currentBreakpoint, backdropBreakpoint } = opts;
@@ -19128,68 +19086,22 @@ const createEnterAnimation$1 = () => {
19128
19086
  })
19129
19087
  .afterClearStyles(['pointer-events']);
19130
19088
  const wrapperAnimation = createAnimation().fromTo('transform', 'translateY(100vh)', 'translateY(0vh)');
19131
- return { backdropAnimation, wrapperAnimation, contentAnimation: undefined };
19089
+ return { backdropAnimation, wrapperAnimation };
19132
19090
  };
19133
19091
  /**
19134
19092
  * iOS Modal Enter Animation for the Card presentation style
19135
19093
  */
19136
19094
  const iosEnterAnimation$3 = (baseEl, opts) => {
19137
- const { presentingEl, currentBreakpoint, expandToScroll } = opts;
19095
+ const { presentingEl, currentBreakpoint } = opts;
19138
19096
  const root = getElementRoot(baseEl);
19139
- const { wrapperAnimation, backdropAnimation, contentAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation$1();
19097
+ const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation$1();
19140
19098
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
19141
19099
  wrapperAnimation.addElement(root.querySelectorAll('.modal-wrapper, .modal-shadow')).beforeStyles({ opacity: 1 });
19142
- // The content animation is only added if scrolling is enabled for
19143
- // all the breakpoints.
19144
- !expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
19145
19100
  const baseAnimation = createAnimation('entering-base')
19146
19101
  .addElement(baseEl)
19147
19102
  .easing('cubic-bezier(0.32,0.72,0,1)')
19148
19103
  .duration(500)
19149
- .addAnimation([wrapperAnimation])
19150
- .beforeAddWrite(() => {
19151
- if (expandToScroll) {
19152
- // Scroll can only be done when the modal is fully expanded.
19153
- return;
19154
- }
19155
- /**
19156
- * There are some browsers that causes flickering when
19157
- * dragging the content when scroll is enabled at every
19158
- * breakpoint. This is due to the wrapper element being
19159
- * transformed off the screen and having a snap animation.
19160
- *
19161
- * A workaround is to clone the footer element and append
19162
- * it outside of the wrapper element. This way, the footer
19163
- * is still visible and the drag can be done without
19164
- * flickering. The original footer is hidden until the modal
19165
- * is dismissed. This maintains the animation of the footer
19166
- * when the modal is dismissed.
19167
- *
19168
- * The workaround needs to be done before the animation starts
19169
- * so there are no flickering issues.
19170
- */
19171
- const ionFooter = baseEl.querySelector('ion-footer');
19172
- /**
19173
- * This check is needed to prevent more than one footer
19174
- * from being appended to the shadow root.
19175
- * Otherwise, iOS and MD enter animations would append
19176
- * the footer twice.
19177
- */
19178
- const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
19179
- if (ionFooter && !ionFooterAlreadyAppended) {
19180
- const footerHeight = ionFooter.clientHeight;
19181
- const clonedFooter = ionFooter.cloneNode(true);
19182
- baseEl.shadowRoot.appendChild(clonedFooter);
19183
- ionFooter.style.setProperty('display', 'none');
19184
- ionFooter.setAttribute('aria-hidden', 'true');
19185
- // Padding is added to prevent some content from being hidden.
19186
- const page = baseEl.querySelector('.ion-page');
19187
- page.style.setProperty('padding-bottom', `${footerHeight}px`);
19188
- }
19189
- });
19190
- if (contentAnimation) {
19191
- baseAnimation.addAnimation(contentAnimation);
19192
- }
19104
+ .addAnimation(wrapperAnimation);
19193
19105
  if (presentingEl) {
19194
19106
  const isMobile = window.innerWidth < 768;
19195
19107
  const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
@@ -19267,7 +19179,7 @@ const createLeaveAnimation$1 = () => {
19267
19179
  * iOS Modal Leave Animation
19268
19180
  */
19269
19181
  const iosLeaveAnimation$3 = (baseEl, opts, duration = 500) => {
19270
- const { presentingEl, currentBreakpoint, expandToScroll } = opts;
19182
+ const { presentingEl, currentBreakpoint } = opts;
19271
19183
  const root = getElementRoot(baseEl);
19272
19184
  const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation$1();
19273
19185
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
@@ -19276,29 +19188,7 @@ const iosLeaveAnimation$3 = (baseEl, opts, duration = 500) => {
19276
19188
  .addElement(baseEl)
19277
19189
  .easing('cubic-bezier(0.32,0.72,0,1)')
19278
19190
  .duration(duration)
19279
- .addAnimation(wrapperAnimation)
19280
- .beforeAddWrite(() => {
19281
- if (expandToScroll) {
19282
- // Scroll can only be done when the modal is fully expanded.
19283
- return;
19284
- }
19285
- /**
19286
- * If expandToScroll is disabled, we need to swap
19287
- * the visibility to the original, so the footer
19288
- * dismisses with the modal and doesn't stay
19289
- * until the modal is removed from the DOM.
19290
- */
19291
- const ionFooter = baseEl.querySelector('ion-footer');
19292
- if (ionFooter) {
19293
- const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
19294
- ionFooter.style.removeProperty('display');
19295
- ionFooter.removeAttribute('aria-hidden');
19296
- clonedFooter.style.setProperty('display', 'none');
19297
- clonedFooter.setAttribute('aria-hidden', 'true');
19298
- const page = baseEl.querySelector('.ion-page');
19299
- page.style.removeProperty('padding-bottom');
19300
- }
19301
- });
19191
+ .addAnimation(wrapperAnimation);
19302
19192
  if (presentingEl) {
19303
19193
  const isMobile = window.innerWidth < 768;
19304
19194
  const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
@@ -19376,69 +19266,22 @@ const createEnterAnimation = () => {
19376
19266
  { offset: 0, opacity: 0.01, transform: 'translateY(40px)' },
19377
19267
  { offset: 1, opacity: 1, transform: `translateY(0px)` },
19378
19268
  ]);
19379
- return { backdropAnimation, wrapperAnimation, contentAnimation: undefined };
19269
+ return { backdropAnimation, wrapperAnimation };
19380
19270
  };
19381
19271
  /**
19382
19272
  * Md Modal Enter Animation
19383
19273
  */
19384
19274
  const mdEnterAnimation$2 = (baseEl, opts) => {
19385
- const { currentBreakpoint, expandToScroll } = opts;
19275
+ const { currentBreakpoint } = opts;
19386
19276
  const root = getElementRoot(baseEl);
19387
- const { wrapperAnimation, backdropAnimation, contentAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
19277
+ const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
19388
19278
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
19389
19279
  wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
19390
- // The content animation is only added if scrolling is enabled for
19391
- // all the breakpoints.
19392
- expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
19393
- const baseAnimation = createAnimation()
19280
+ return createAnimation()
19394
19281
  .addElement(baseEl)
19395
19282
  .easing('cubic-bezier(0.36,0.66,0.04,1)')
19396
19283
  .duration(280)
19397
- .addAnimation([backdropAnimation, wrapperAnimation])
19398
- .beforeAddWrite(() => {
19399
- if (expandToScroll) {
19400
- // Scroll can only be done when the modal is fully expanded.
19401
- return;
19402
- }
19403
- /**
19404
- * There are some browsers that causes flickering when
19405
- * dragging the content when scroll is enabled at every
19406
- * breakpoint. This is due to the wrapper element being
19407
- * transformed off the screen and having a snap animation.
19408
- *
19409
- * A workaround is to clone the footer element and append
19410
- * it outside of the wrapper element. This way, the footer
19411
- * is still visible and the drag can be done without
19412
- * flickering. The original footer is hidden until the modal
19413
- * is dismissed. This maintains the animation of the footer
19414
- * when the modal is dismissed.
19415
- *
19416
- * The workaround needs to be done before the animation starts
19417
- * so there are no flickering issues.
19418
- */
19419
- const ionFooter = baseEl.querySelector('ion-footer');
19420
- /**
19421
- * This check is needed to prevent more than one footer
19422
- * from being appended to the shadow root.
19423
- * Otherwise, iOS and MD enter animations would append
19424
- * the footer twice.
19425
- */
19426
- const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
19427
- if (ionFooter && !ionFooterAlreadyAppended) {
19428
- const footerHeight = ionFooter.clientHeight;
19429
- const clonedFooter = ionFooter.cloneNode(true);
19430
- baseEl.shadowRoot.appendChild(clonedFooter);
19431
- ionFooter.style.setProperty('display', 'none');
19432
- ionFooter.setAttribute('aria-hidden', 'true');
19433
- // Padding is added to prevent some content from being hidden.
19434
- const page = baseEl.querySelector('.ion-page');
19435
- page.style.setProperty('padding-bottom', `${footerHeight}px`);
19436
- }
19437
- });
19438
- if (contentAnimation) {
19439
- baseAnimation.addAnimation(contentAnimation);
19440
- }
19441
- return baseAnimation;
19284
+ .addAnimation([backdropAnimation, wrapperAnimation]);
19442
19285
  };
19443
19286
 
19444
19287
  const createLeaveAnimation = () => {
@@ -19453,41 +19296,18 @@ const createLeaveAnimation = () => {
19453
19296
  * Md Modal Leave Animation
19454
19297
  */
19455
19298
  const mdLeaveAnimation$2 = (baseEl, opts) => {
19456
- const { currentBreakpoint, expandToScroll } = opts;
19299
+ const { currentBreakpoint } = opts;
19457
19300
  const root = getElementRoot(baseEl);
19458
19301
  const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation();
19459
19302
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
19460
19303
  wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
19461
- const baseAnimation = createAnimation()
19304
+ return createAnimation()
19462
19305
  .easing('cubic-bezier(0.47,0,0.745,0.715)')
19463
19306
  .duration(200)
19464
- .addAnimation([backdropAnimation, wrapperAnimation])
19465
- .beforeAddWrite(() => {
19466
- if (expandToScroll) {
19467
- // Scroll can only be done when the modal is fully expanded.
19468
- return;
19469
- }
19470
- /**
19471
- * If expandToScroll is disabled, we need to swap
19472
- * the visibility to the original, so the footer
19473
- * dismisses with the modal and doesn't stay
19474
- * until the modal is removed from the DOM.
19475
- */
19476
- const ionFooter = baseEl.querySelector('ion-footer');
19477
- if (ionFooter) {
19478
- const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
19479
- ionFooter.style.removeProperty('display');
19480
- ionFooter.removeAttribute('aria-hidden');
19481
- clonedFooter.style.setProperty('display', 'none');
19482
- clonedFooter.setAttribute('aria-hidden', 'true');
19483
- const page = baseEl.querySelector('.ion-page');
19484
- page.style.removeProperty('padding-bottom');
19485
- }
19486
- });
19487
- return baseAnimation;
19307
+ .addAnimation([backdropAnimation, wrapperAnimation]);
19488
19308
  };
19489
19309
 
19490
- const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], expandToScroll, getCurrentBreakpoint, onDismiss, onBreakpointChange) => {
19310
+ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], getCurrentBreakpoint, onDismiss, onBreakpointChange) => {
19491
19311
  // Defaults for the sheet swipe animation
19492
19312
  const defaultBackdrop = [
19493
19313
  { offset: 0, opacity: 'var(--backdrop-opacity)' },
@@ -19504,10 +19324,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19504
19324
  { offset: 1, transform: 'translateY(100%)' },
19505
19325
  ],
19506
19326
  BACKDROP_KEYFRAMES: backdropBreakpoint !== 0 ? customBackdrop : defaultBackdrop,
19507
- CONTENT_KEYFRAMES: [
19508
- { offset: 0, maxHeight: '100%' },
19509
- { offset: 1, maxHeight: '0%' },
19510
- ],
19511
19327
  };
19512
19328
  const contentEl = baseEl.querySelector('ion-content');
19513
19329
  const height = wrapperEl.clientHeight;
@@ -19515,11 +19331,10 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19515
19331
  let offset = 0;
19516
19332
  let canDismissBlocksGesture = false;
19517
19333
  const canDismissMaxStep = 0.95;
19518
- const maxBreakpoint = breakpoints[breakpoints.length - 1];
19519
- const minBreakpoint = breakpoints[0];
19520
19334
  const wrapperAnimation = animation.childAnimations.find((ani) => ani.id === 'wrapperAnimation');
19521
19335
  const backdropAnimation = animation.childAnimations.find((ani) => ani.id === 'backdropAnimation');
19522
- const contentAnimation = animation.childAnimations.find((ani) => ani.id === 'contentAnimation');
19336
+ const maxBreakpoint = breakpoints[breakpoints.length - 1];
19337
+ const minBreakpoint = breakpoints[0];
19523
19338
  const enableBackdrop = () => {
19524
19339
  baseEl.style.setProperty('pointer-events', 'auto');
19525
19340
  backdropEl.style.setProperty('pointer-events', 'auto');
@@ -19542,31 +19357,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19542
19357
  */
19543
19358
  baseEl.classList.add(FOCUS_TRAP_DISABLE_CLASS);
19544
19359
  };
19545
- /**
19546
- * Toggles the visible modal footer when `expandToScroll` is disabled.
19547
- * @param footer The footer to show.
19548
- */
19549
- const swapFooterVisibility = (footer) => {
19550
- const originalFooter = baseEl.querySelector('ion-footer');
19551
- if (!originalFooter) {
19552
- return;
19553
- }
19554
- const clonedFooter = wrapperEl.nextElementSibling;
19555
- const footerToHide = footer === 'original' ? clonedFooter : originalFooter;
19556
- const footerToShow = footer === 'original' ? originalFooter : clonedFooter;
19557
- footerToShow.style.removeProperty('display');
19558
- footerToShow.removeAttribute('aria-hidden');
19559
- const page = baseEl.querySelector('.ion-page');
19560
- if (footer === 'original') {
19561
- page.style.removeProperty('padding-bottom');
19562
- }
19563
- else {
19564
- const pagePadding = footerToShow.clientHeight;
19565
- page.style.setProperty('padding-bottom', `${pagePadding}px`);
19566
- }
19567
- footerToHide.style.setProperty('display', 'none');
19568
- footerToHide.setAttribute('aria-hidden', 'true');
19569
- };
19570
19360
  /**
19571
19361
  * After the entering animation completes,
19572
19362
  * we need to set the animation to go from
@@ -19578,7 +19368,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19578
19368
  if (wrapperAnimation && backdropAnimation) {
19579
19369
  wrapperAnimation.keyframes([...SheetDefaults.WRAPPER_KEYFRAMES]);
19580
19370
  backdropAnimation.keyframes([...SheetDefaults.BACKDROP_KEYFRAMES]);
19581
- contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.keyframes([...SheetDefaults.CONTENT_KEYFRAMES]);
19582
19371
  animation.progressStart(true, 1 - currentBreakpoint);
19583
19372
  /**
19584
19373
  * If backdrop is not enabled, then content
@@ -19595,7 +19384,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19595
19384
  disableBackdrop();
19596
19385
  }
19597
19386
  }
19598
- if (contentEl && currentBreakpoint !== maxBreakpoint && expandToScroll) {
19387
+ if (contentEl && currentBreakpoint !== maxBreakpoint) {
19599
19388
  contentEl.scrollY = false;
19600
19389
  }
19601
19390
  const canStart = (detail) => {
@@ -19609,13 +19398,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19609
19398
  */
19610
19399
  const contentEl = findClosestIonContent(detail.event.target);
19611
19400
  currentBreakpoint = getCurrentBreakpoint();
19612
- /**
19613
- * If we have expandToScroll disabled, we should not allow the swipe gesture to start
19614
- * if the content is being swiped.
19615
- */
19616
- if (!expandToScroll && contentEl) {
19617
- return false;
19618
- }
19619
19401
  if (currentBreakpoint === 1 && contentEl) {
19620
19402
  /**
19621
19403
  * The modal should never swipe to close on the content with a refresher.
@@ -19646,15 +19428,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19646
19428
  * Remove undefined check
19647
19429
  */
19648
19430
  canDismissBlocksGesture = baseEl.canDismiss !== undefined && baseEl.canDismiss !== true && minBreakpoint === 0;
19649
- /**
19650
- * If expandToScroll is disabled, we need to swap
19651
- * the footer visibility to the original, so if the modal
19652
- * is dismissed, the footer dismisses with the modal
19653
- * and doesn't stay on the screen after the modal is gone.
19654
- */
19655
- if (!expandToScroll) {
19656
- swapFooterVisibility('original');
19657
- }
19658
19431
  /**
19659
19432
  * If we are pulling down, then it is possible we are pulling on the content.
19660
19433
  * We do not want scrolling to happen at the same time as the gesture.
@@ -19770,19 +19543,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19770
19543
  opacity: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(snapToBreakpoint, backdropBreakpoint)})`,
19771
19544
  },
19772
19545
  ]);
19773
- if (contentAnimation) {
19774
- /**
19775
- * The modal content should scroll at any breakpoint when expandToScroll
19776
- * is disabled. In order to do this, the content needs to be completely
19777
- * viewable so scrolling can access everything. Otherwise, the default
19778
- * behavior would show the content off the screen and only allow
19779
- * scrolling when the sheet is fully expanded.
19780
- */
19781
- contentAnimation.keyframes([
19782
- { offset: 0, maxHeight: `${(1 - breakpointOffset) * 100}%` },
19783
- { offset: 1, maxHeight: `${snapToBreakpoint * 100}%` },
19784
- ]);
19785
- }
19786
19546
  animation.progressStep(0);
19787
19547
  }
19788
19548
  /**
@@ -19790,14 +19550,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19790
19550
  * snapping animation completes.
19791
19551
  */
19792
19552
  gesture.enable(false);
19793
- /**
19794
- * If expandToScroll is disabled, we need to swap
19795
- * the footer visibility to the cloned one so the footer
19796
- * doesn't flicker when the sheet's height is animated.
19797
- */
19798
- if (!expandToScroll && shouldRemainOpen) {
19799
- swapFooterVisibility('cloned');
19800
- }
19801
19553
  if (shouldPreventDismiss) {
19802
19554
  handleCanDismiss(baseEl, animation);
19803
19555
  }
@@ -19805,13 +19557,13 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19805
19557
  onDismiss();
19806
19558
  }
19807
19559
  /**
19808
- * Enables scrolling immediately if the sheet is about to fully expand
19809
- * or if it allows scrolling at any breakpoint. Without this, there would
19810
- * be a ~500ms delay while the modal animation completes, causing a
19811
- * noticeable lag. Native iOS allows scrolling as soon as the gesture is
19812
- * released, so we align with that behavior.
19560
+ * If the sheet is going to be fully expanded then we should enable
19561
+ * scrolling immediately. The sheet modal animation takes ~500ms to finish
19562
+ * so if we wait until then there is a visible delay for when scrolling is
19563
+ * re-enabled. Native iOS allows for scrolling on the sheet modal as soon
19564
+ * as the gesture is released, so we align with that.
19813
19565
  */
19814
- if (contentEl && (snapToBreakpoint === breakpoints[breakpoints.length - 1] || !expandToScroll)) {
19566
+ if (contentEl && snapToBreakpoint === breakpoints[breakpoints.length - 1]) {
19815
19567
  contentEl.scrollY = true;
19816
19568
  }
19817
19569
  return new Promise((resolve) => {
@@ -19829,7 +19581,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19829
19581
  raf(() => {
19830
19582
  wrapperAnimation.keyframes([...SheetDefaults.WRAPPER_KEYFRAMES]);
19831
19583
  backdropAnimation.keyframes([...SheetDefaults.BACKDROP_KEYFRAMES]);
19832
- contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.keyframes([...SheetDefaults.CONTENT_KEYFRAMES]);
19833
19584
  animation.progressStart(true, 1 - snapToBreakpoint);
19834
19585
  currentBreakpoint = snapToBreakpoint;
19835
19586
  onBreakpointChange(currentBreakpoint);
@@ -19882,10 +19633,10 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19882
19633
  };
19883
19634
  };
19884
19635
 
19885
- 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}";
19636
+ 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}";
19886
19637
  var IonModalIosStyle0 = modalIosCss;
19887
19638
 
19888
- 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}";
19639
+ 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}";
19889
19640
  var IonModalMdStyle0 = modalMdCss;
19890
19641
 
19891
19642
  // TODO(FW-2832): types
@@ -19964,7 +19715,6 @@ class Modal {
19964
19715
  this.enterAnimation = undefined;
19965
19716
  this.leaveAnimation = undefined;
19966
19717
  this.breakpoints = undefined;
19967
- this.expandToScroll = true;
19968
19718
  this.initialBreakpoint = undefined;
19969
19719
  this.backdropBreakpoint = 0;
19970
19720
  this.handle = undefined;
@@ -20180,7 +19930,6 @@ class Modal {
20180
19930
  presentingEl: presentingElement,
20181
19931
  currentBreakpoint: this.initialBreakpoint,
20182
19932
  backdropBreakpoint: this.backdropBreakpoint,
20183
- expandToScroll: this.expandToScroll,
20184
19933
  });
20185
19934
  /* tslint:disable-next-line */
20186
19935
  if (typeof window !== 'undefined') {
@@ -20231,10 +19980,7 @@ class Modal {
20231
19980
  // should be in the DOM and referenced by now, except
20232
19981
  // for the presenting el
20233
19982
  const animationBuilder = this.leaveAnimation || config.get('modalLeave', iosLeaveAnimation$3);
20234
- const ani = (this.animation = animationBuilder(el, {
20235
- presentingEl: this.presentingElement,
20236
- expandToScroll: this.expandToScroll,
20237
- }));
19983
+ const ani = (this.animation = animationBuilder(el, { presentingEl: this.presentingElement }));
20238
19984
  const contentEl = findIonContent(el);
20239
19985
  if (!contentEl) {
20240
19986
  printIonContentErrorMsg(el);
@@ -20279,10 +20025,9 @@ class Modal {
20279
20025
  presentingEl: this.presentingElement,
20280
20026
  currentBreakpoint: initialBreakpoint,
20281
20027
  backdropBreakpoint,
20282
- expandToScroll: this.expandToScroll,
20283
20028
  }));
20284
20029
  ani.progressStart(true, 1);
20285
- 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) => {
20030
+ 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) => {
20286
20031
  if (this.currentBreakpoint !== breakpoint) {
20287
20032
  this.currentBreakpoint = breakpoint;
20288
20033
  this.ionBreakpointDidChange.emit({ breakpoint });
@@ -20360,7 +20105,6 @@ class Modal {
20360
20105
  presentingEl: presentingElement,
20361
20106
  currentBreakpoint: (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : this.initialBreakpoint,
20362
20107
  backdropBreakpoint: this.backdropBreakpoint,
20363
- expandToScroll: this.expandToScroll,
20364
20108
  });
20365
20109
  if (dismissed) {
20366
20110
  const { delegate } = this.getDelegate();
@@ -20446,23 +20190,23 @@ class Modal {
20446
20190
  return true;
20447
20191
  }
20448
20192
  render() {
20449
- const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap, expandToScroll, } = this;
20193
+ const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap } = this;
20450
20194
  const showHandle = handle !== false && isSheetModal;
20451
20195
  const mode = getIonMode$1(this);
20452
20196
  const isCardModal = presentingElement !== undefined && mode === 'ios';
20453
20197
  const isHandleCycle = handleBehavior === 'cycle';
20454
- return (hAsync(Host, Object.assign({ key: 'ff15df63e72caaeb0a4ad68e9eedeaaa7d3f3bde', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
20198
+ return (hAsync(Host, Object.assign({ key: 'b4da5111fe4719fa450c39b2d4bd884a302a7924', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
20455
20199
  zIndex: `${20000 + this.overlayIndex}`,
20456
- }, 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 }), hAsync("ion-backdrop", { key: '27a73655779af9d175a829d3d2d29e42fd2a63ee', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && hAsync("div", { key: '406a65080087e7895026ecc2f04e9d707439e86f', class: "modal-shadow" }), hAsync("div", Object.assign({ key: '8e410eb925374158996c82cbbd522f07d741679e',
20200
+ }, 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 }), hAsync("ion-backdrop", { key: 'c12dbf747e0eb914eaf1331798548ffc7e147763', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && hAsync("div", { key: 'da546ee80c6576b5acc66e959fd5009e0b9a8160', class: "modal-shadow" }), hAsync("div", Object.assign({ key: '306ebe6427440ad5f7ed36d590e562d15a503b75',
20457
20201
  /*
20458
20202
  role and aria-modal must be used on the
20459
20203
  same element. They must also be set inside the
20460
20204
  shadow DOM otherwise ion-button will not be highlighted
20461
20205
  when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
20462
20206
  */
20463
- role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: '7326c969ebe5a70a35e83b09d3db2bb848c90e47', class: "modal-handle",
20207
+ role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: 'c5d17e346fe255a7c0cacbbf15c0083f2d09c488', class: "modal-handle",
20464
20208
  // Prevents the handle from receiving keyboard focus when it does not cycle
20465
- tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), hAsync("slot", { key: '0b65cdb9e337a27edf437b9e754e79f1449c217d' }))));
20209
+ tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), hAsync("slot", { key: '5cc714170a00b67f3eda0cd1d6f37c1489a99c83' }))));
20466
20210
  }
20467
20211
  get el() { return getElement(this); }
20468
20212
  static get watchers() { return {
@@ -20484,7 +20228,6 @@ class Modal {
20484
20228
  "enterAnimation": [16],
20485
20229
  "leaveAnimation": [16],
20486
20230
  "breakpoints": [16],
20487
- "expandToScroll": [4, "expand-to-scroll"],
20488
20231
  "initialBreakpoint": [2, "initial-breakpoint"],
20489
20232
  "backdropBreakpoint": [2, "backdrop-breakpoint"],
20490
20233
  "handle": [4],
@@ -29585,7 +29328,35 @@ class SegmentButton {
29585
29328
  valueChanged() {
29586
29329
  this.updateState();
29587
29330
  }
29588
- connectedCallback() {
29331
+ waitForSegmentContent(ionSegment, contentId) {
29332
+ return new Promise((resolve, reject) => {
29333
+ let timeoutId = undefined;
29334
+ let animationFrameId;
29335
+ const check = () => {
29336
+ if (!ionSegment) {
29337
+ reject(new Error(`Segment not found when looking for Segment Content`));
29338
+ return;
29339
+ }
29340
+ const segmentView = getNextSiblingOfType(ionSegment); // Skip the text nodes
29341
+ const segmentContent = segmentView === null || segmentView === void 0 ? void 0 : segmentView.querySelector(`ion-segment-content[id="${contentId}"]`);
29342
+ if (segmentContent && timeoutId) {
29343
+ clearTimeout(timeoutId); // Clear the timeout if the segmentContent is found
29344
+ cancelAnimationFrame(animationFrameId);
29345
+ resolve(segmentContent);
29346
+ }
29347
+ else {
29348
+ animationFrameId = requestAnimationFrame(check); // Keep checking on the next animation frame
29349
+ }
29350
+ };
29351
+ check();
29352
+ // Set a timeout to reject the promise
29353
+ timeoutId = setTimeout(() => {
29354
+ cancelAnimationFrame(animationFrameId);
29355
+ reject(new Error(`Unable to find Segment Content with id="${contentId} within 1000 ms`));
29356
+ }, 1000);
29357
+ });
29358
+ }
29359
+ async connectedCallback() {
29589
29360
  const segmentEl = (this.segmentEl = this.el.closest('ion-segment'));
29590
29361
  if (segmentEl) {
29591
29362
  this.updateState();
@@ -29595,11 +29366,14 @@ class SegmentButton {
29595
29366
  // Return if there is no contentId defined
29596
29367
  if (!this.contentId)
29597
29368
  return;
29598
- // Attempt to find the Segment Content by its contentId
29599
- const segmentContent = document.getElementById(this.contentId);
29600
- // If no associated Segment Content exists, log an error and return
29601
- if (!segmentContent) {
29602
- console.error(`Segment Button: Unable to find Segment Content with id="${this.contentId}".`);
29369
+ let segmentContent;
29370
+ try {
29371
+ // Attempt to find the Segment Content by its contentId
29372
+ segmentContent = await this.waitForSegmentContent(segmentEl, this.contentId);
29373
+ }
29374
+ catch (error) {
29375
+ // If no associated Segment Content exists, log an error and return
29376
+ console.error('Segment Button: ', error.message);
29603
29377
  return;
29604
29378
  }
29605
29379
  // Ensure the found element is a valid ION-SEGMENT-CONTENT
@@ -29645,7 +29419,7 @@ class SegmentButton {
29645
29419
  const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
29646
29420
  const mode = getIonMode$1(this);
29647
29421
  const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
29648
- return (hAsync(Host, { key: 'd50a5d5e2f6206e8523598f258d8217d2903f69b', class: {
29422
+ return (hAsync(Host, { key: 'f9da656c8eccb80e4ef30e3fa977f2dbbefbc988', class: {
29649
29423
  [mode]: true,
29650
29424
  'in-toolbar': hostContext('ion-toolbar', this.el),
29651
29425
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
@@ -29661,7 +29435,7 @@ class SegmentButton {
29661
29435
  'ion-activatable': true,
29662
29436
  'ion-activatable-instant': true,
29663
29437
  'ion-focusable': true,
29664
- } }, hAsync("button", Object.assign({ key: 'b4f6f145286ba8ab79669e11035b906daa85ae7e', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), hAsync("span", { key: '67965996c9ffe70553875e00d3da0ae5b2b1d814', class: "button-inner" }, hAsync("slot", { key: '5087988fe45a8fdf388ec44c395d0b745b207806' })), mode === 'md' && hAsync("ion-ripple-effect", { key: 'b24858de0750bbc769b3183fac0077dfe817ba27' })), hAsync("div", { key: '97b4359432acd1c9da0816360cd1df9472e183f7', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, hAsync("div", { key: '0561738ea15b0986f4ed3d8276d5e6f2d13f7e51', part: "indicator-background", class: "segment-button-indicator-background" }))));
29438
+ } }, hAsync("button", Object.assign({ key: '00dbcdbd81cd74abdd39803f6840a6e477cc7b0c', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), hAsync("span", { key: '5200c082a9c4788010c4fc33fe75e2b2ad28364a', class: "button-inner" }, hAsync("slot", { key: 'cf3fce2b5d22436b84cd4367a5885df7d6a2715f' })), mode === 'md' && hAsync("ion-ripple-effect", { key: 'f1a2816465f4c2c06644be07315bff2da77e2342' })), hAsync("div", { key: 'aaf31c0ed39641fca698ee98d0773131f4eea6bd', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, hAsync("div", { key: 'fc556651361b7ac305aaedd25ea4afe3173abd20', part: "indicator-background", class: "segment-button-indicator-background" }))));
29665
29439
  }
29666
29440
  get el() { return getElement(this); }
29667
29441
  static get watchers() { return {
@@ -29928,7 +29702,6 @@ class Select {
29928
29702
  this.expandedIcon = undefined;
29929
29703
  this.shape = undefined;
29930
29704
  this.value = undefined;
29931
- this.required = false;
29932
29705
  }
29933
29706
  styleChanged() {
29934
29707
  this.emitStyle();
@@ -29984,15 +29757,8 @@ class Select {
29984
29757
  }
29985
29758
  this.isExpanded = true;
29986
29759
  const overlay = (this.overlay = await this.createOverlay(event));
29987
- overlay.onDidDismiss().then(() => {
29988
- this.overlay = undefined;
29989
- this.isExpanded = false;
29990
- this.ionDismiss.emit();
29991
- this.setFocus();
29992
- });
29993
- await overlay.present();
29994
- // focus selected option for popovers and modals
29995
- if (this.interface === 'popover' || this.interface === 'modal') {
29760
+ // Add logic to scroll selected item into view before presenting
29761
+ const scrollSelectedIntoView = () => {
29996
29762
  const indexOfSelected = this.childOpts.findIndex((o) => o.value === this.value);
29997
29763
  if (indexOfSelected > -1) {
29998
29764
  const selectedItem = overlay.querySelector(`.select-interface-option:nth-child(${indexOfSelected + 1})`);
@@ -30010,6 +29776,7 @@ class Select {
30010
29776
  */
30011
29777
  const interactiveEl = selectedItem.querySelector('ion-radio, ion-checkbox');
30012
29778
  if (interactiveEl) {
29779
+ selectedItem.scrollIntoView({ block: 'nearest' });
30013
29780
  // Needs to be called before `focusVisibleElement` to prevent issue with focus event bubbling
30014
29781
  // and removing `ion-focused` style
30015
29782
  interactiveEl.setFocus();
@@ -30033,7 +29800,40 @@ class Select {
30033
29800
  focusVisibleElement(firstEnabledOption.closest('ion-item'));
30034
29801
  }
30035
29802
  }
29803
+ };
29804
+ // For modals and popovers, we can scroll before they're visible
29805
+ if (this.interface === 'modal') {
29806
+ overlay.addEventListener('ionModalWillPresent', scrollSelectedIntoView, { once: true });
29807
+ }
29808
+ else if (this.interface === 'popover') {
29809
+ overlay.addEventListener('ionPopoverWillPresent', scrollSelectedIntoView, { once: true });
29810
+ }
29811
+ else {
29812
+ /**
29813
+ * For alerts and action sheets, we need to wait a frame after willPresent
29814
+ * because these overlays don't have their content in the DOM immediately
29815
+ * when willPresent fires. By waiting a frame, we ensure the content is
29816
+ * rendered and can be properly scrolled into view.
29817
+ */
29818
+ const scrollAfterRender = () => {
29819
+ requestAnimationFrame(() => {
29820
+ scrollSelectedIntoView();
29821
+ });
29822
+ };
29823
+ if (this.interface === 'alert') {
29824
+ overlay.addEventListener('ionAlertWillPresent', scrollAfterRender, { once: true });
29825
+ }
29826
+ else if (this.interface === 'action-sheet') {
29827
+ overlay.addEventListener('ionActionSheetWillPresent', scrollAfterRender, { once: true });
29828
+ }
30036
29829
  }
29830
+ overlay.onDidDismiss().then(() => {
29831
+ this.overlay = undefined;
29832
+ this.isExpanded = false;
29833
+ this.ionDismiss.emit();
29834
+ this.setFocus();
29835
+ });
29836
+ await overlay.present();
30037
29837
  return overlay;
30038
29838
  }
30039
29839
  createOverlay(ev) {
@@ -30413,8 +30213,8 @@ class Select {
30413
30213
  return renderedLabel;
30414
30214
  }
30415
30215
  renderListbox() {
30416
- const { disabled, inputId, isExpanded, required } = this;
30417
- return (hAsync("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`, "aria-required": `${required}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) }));
30216
+ const { disabled, inputId, isExpanded } = this;
30217
+ return (hAsync("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) }));
30418
30218
  }
30419
30219
  render() {
30420
30220
  const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
@@ -30445,7 +30245,7 @@ class Select {
30445
30245
  * TODO(FW-5592): Remove hasStartEndSlots condition
30446
30246
  */
30447
30247
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
30448
- return (hAsync(Host, { key: '491cf1b0e3aa31e7c9cfad3e87d83eb54272312a', onClick: this.onClick, class: createColorClasses$1(this.color, {
30248
+ return (hAsync(Host, { key: 'b2dca9ae25d88e4d9fdb55003041a66be5668fcf', onClick: this.onClick, class: createColorClasses$1(this.color, {
30449
30249
  [mode]: true,
30450
30250
  'in-item': inItem,
30451
30251
  'in-item-color': hostContext('ion-item.ion-color', el),
@@ -30461,7 +30261,7 @@ class Select {
30461
30261
  [`select-justify-${justify}`]: justifyEnabled,
30462
30262
  [`select-shape-${shape}`]: shape !== undefined,
30463
30263
  [`select-label-placement-${labelPlacement}`]: true,
30464
- }) }, hAsync("label", { key: '07bf3cb57bd1121383d8c746e3ac49da38300082', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), hAsync("div", { key: '884facd18342797576bbacc761d18d83c52762e3', class: "select-wrapper-inner" }, hAsync("slot", { key: 'c4f2a2a7a76f52db15f9a0b806017caea443c47a', name: "start" }), hAsync("div", { key: '235cf383f268cc74412722cd31e246cbd4c2abe5', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), hAsync("slot", { key: '1481302e11c494d49dfd80a7aaf743f7e851558f', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && hAsync("div", { key: '8a45ea9280651695c8e5435f266c286f3e3f6a18', class: "select-highlight" }))));
30264
+ }) }, hAsync("label", { key: 'c22fe9aee8cd448223497ef143e89529fcef8af6', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), hAsync("div", { key: '601972df4579f4fa6a9c2c12865593e807decb72', class: "select-wrapper-inner" }, hAsync("slot", { key: '5f7b1261862f74b978b26f026533e3fd1cc666ba', name: "start" }), hAsync("div", { key: '39616da89f4b4b78432f6da85116a7de2ca589e7', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), hAsync("slot", { key: '1d7b3601b73af7c05b3627cfc8e5147ea379bb03', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && hAsync("div", { key: 'b0344f0ac15003e22fee66d3d7ed03a07da7e8b7', class: "select-highlight" }))));
30465
30265
  }
30466
30266
  get el() { return getElement(this); }
30467
30267
  static get watchers() { return {
@@ -30497,7 +30297,6 @@ class Select {
30497
30297
  "expandedIcon": [1, "expanded-icon"],
30498
30298
  "shape": [1],
30499
30299
  "value": [1032],
30500
- "required": [4],
30501
30300
  "isExpanded": [32],
30502
30301
  "open": [64]
30503
30302
  },
@@ -32894,7 +32693,6 @@ class Toggle {
32894
32693
  this.labelPlacement = 'start';
32895
32694
  this.justify = undefined;
32896
32695
  this.alignment = undefined;
32897
- this.required = false;
32898
32696
  }
32899
32697
  disabledChanged() {
32900
32698
  if (this.gesture) {
@@ -32976,12 +32774,12 @@ class Toggle {
32976
32774
  return this.el.textContent !== '';
32977
32775
  }
32978
32776
  render() {
32979
- const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment, required } = this;
32777
+ const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment } = this;
32980
32778
  const mode = getIonMode$1(this);
32981
32779
  const value = this.getValue();
32982
32780
  const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
32983
32781
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
32984
- return (hAsync(Host, { key: 'ed75573caa6e37011f1453dd7f723fb9bd8a3656', onClick: this.onClick, class: createColorClasses$1(color, {
32782
+ return (hAsync(Host, { key: 'f52195ec3bc14c024647cb41319c32a4cd330e19', onClick: this.onClick, class: createColorClasses$1(color, {
32985
32783
  [mode]: true,
32986
32784
  'in-item': hostContext('ion-item', el),
32987
32785
  'toggle-activated': activated,
@@ -32991,10 +32789,10 @@ class Toggle {
32991
32789
  [`toggle-alignment-${alignment}`]: alignment !== undefined,
32992
32790
  [`toggle-label-placement-${labelPlacement}`]: true,
32993
32791
  [`toggle-${rtl}`]: true,
32994
- }) }, hAsync("label", { key: '484860e2a33f4d123904edb96159f0e1972d3add', class: "toggle-wrapper" }, hAsync("input", Object.assign({ key: '360b53080aacfd99a9ff60ffb5219816bd4163ee', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl), required: required }, this.inheritedAttributes)), hAsync("div", { key: 'f7239fa668fe11257239ea30cf0198e4f3274f6b', class: {
32792
+ }) }, hAsync("label", { key: 'f8b3a215ad85b2cee611ad63449b584e1640f27f', class: "toggle-wrapper" }, hAsync("input", Object.assign({ key: 'f387b1ea840737a9737917e516834c887be99c09', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl) }, this.inheritedAttributes)), hAsync("div", { key: '936af880db59fe377cd2de9101eb28a1c4fb8914', class: {
32995
32793
  'label-text-wrapper': true,
32996
32794
  'label-text-wrapper-hidden': !this.hasLabel,
32997
- }, part: "label" }, hAsync("slot", { key: '9495a4a39889822ee68e0d89dc5a2f863d1feb3c' })), hAsync("div", { key: '55f1eb08c4b705e94fbcf02220bbe1d292f06155', class: "native-wrapper" }, this.renderToggleControl()))));
32795
+ }, part: "label" }, hAsync("slot", { key: '80a6672e2e792c15011a9496dcd75363cdba31c6' })), hAsync("div", { key: '2b2b318b38ab27b194c0dab4cecd77d9d780f2ca', class: "native-wrapper" }, this.renderToggleControl()))));
32998
32796
  }
32999
32797
  get el() { return getElement(this); }
33000
32798
  static get watchers() { return {
@@ -33017,7 +32815,6 @@ class Toggle {
33017
32815
  "labelPlacement": [1, "label-placement"],
33018
32816
  "justify": [1],
33019
32817
  "alignment": [1],
33020
- "required": [4],
33021
32818
  "activated": [32]
33022
32819
  },
33023
32820
  "$listeners$": undefined,
@@ -33049,10 +32846,6 @@ var IonToolbarMdStyle0 = toolbarMdCss;
33049
32846
  * @slot secondary - Content is placed to the left of the toolbar text in `ios` mode, and directly to the right in `md` mode.
33050
32847
  * @slot primary - Content is placed to the right of the toolbar text in `ios` mode, and to the far right in `md` mode.
33051
32848
  * @slot end - Content is placed to the right of the toolbar text in LTR, and to the left in RTL.
33052
- *
33053
- * @part background - The background of the toolbar, covering the entire area behind the toolbar content.
33054
- * @part container - The container that wraps all toolbar content, including the default slot and named slot content.
33055
- * @part content - The container for the default slot, wrapping content provided without a named slot.
33056
32849
  */
33057
32850
  class Toolbar {
33058
32851
  constructor(hostRef) {
@@ -33103,10 +32896,10 @@ class Toolbar {
33103
32896
  this.childrenStyles.forEach((value) => {
33104
32897
  Object.assign(childStyles, value);
33105
32898
  });
33106
- return (hAsync(Host, { key: '4fdc9ae82a93237cc28ceb95b0ebd8069b62839d', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
32899
+ return (hAsync(Host, { key: '462538a5ecd01baf3cde116c9f029aeda26c81be', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
33107
32900
  [mode]: true,
33108
32901
  'in-toolbar': hostContext('ion-toolbar', this.el),
33109
- })) }, hAsync("div", { key: '443a216362bbbf1c149ed12140d52b0f0ea2d664', class: "toolbar-background", part: "background" }), hAsync("div", { key: '1df87f4027d605e42757a13d4828df45b90a4fdc', class: "toolbar-container", part: "container" }, hAsync("slot", { key: 'f66f34972be8e3f4915b9c6f5808600dbaedb1ea', name: "start" }), hAsync("slot", { key: '14f38b0975e956f404c4eb3ee56f2055c6615276', name: "secondary" }), hAsync("div", { key: '75ba5953a25c7544793484d2b245792cb0a5af75', class: "toolbar-content", part: "content" }, hAsync("slot", { key: '149dfa58ff7106f318fecb4134e7c69edf8bc231' })), hAsync("slot", { key: '807ab9ad21d7f1d9d427a4086460bcb9e5e8c019', name: "primary" }), hAsync("slot", { key: 'bd2f9da95d2fa8e74dc6e0666587ceecbba99d9f', name: "end" }))));
32902
+ })) }, hAsync("div", { key: 'c0b4415d3b2472de643a9be7cb3b13b3b628621b', class: "toolbar-background" }), hAsync("div", { key: '0ccb8a2dbeaa28d8f9bed87629c0c097446690c2', class: "toolbar-container" }, hAsync("slot", { key: '3e726dac359e923df21d80301651f16063a3de20', name: "start" }), hAsync("slot", { key: 'cd799330b56a7f8833bc61bb2807aafb21846f71', name: "secondary" }), hAsync("div", { key: '395282e6ac8c53576922dcdb5f08c25d34638c86', class: "toolbar-content" }, hAsync("slot", { key: 'a437c60e4ba5aae65e55169ae82a6f379868ec1d' })), hAsync("slot", { key: '711af9b9d321a7b31ede924c9bdcad767aa9a1ca', name: "primary" }), hAsync("slot", { key: 'ecc02edeaf80a837890bcb08d5096df1e22a0b9a', name: "end" }))));
33110
32903
  }
33111
32904
  get el() { return getElement(this); }
33112
32905
  static get style() { return {