@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.mjs CHANGED
@@ -2706,8 +2706,18 @@ const shallowEqualStringMap = (map1, map2) => {
2706
2706
  }
2707
2707
  return true;
2708
2708
  };
2709
+ const getNextSiblingOfType = (element) => {
2710
+ let sibling = element.nextSibling;
2711
+ while (sibling) {
2712
+ if (sibling.nodeType === Node.ELEMENT_NODE && sibling !== null) {
2713
+ return sibling;
2714
+ }
2715
+ sibling = sibling.nextSibling;
2716
+ }
2717
+ return null;
2718
+ };
2709
2719
 
2710
- /* Ionicons v7.2.2, ES Modules */
2720
+ /* Ionicons v7.4.0, ES Modules */
2711
2721
  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>";
2712
2722
  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>";
2713
2723
  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>";
@@ -2716,7 +2726,7 @@ const caretUpSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000
2716
2726
  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>";
2717
2727
  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>";
2718
2728
  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>";
2719
- 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>";
2729
+ 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>";
2720
2730
  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>";
2721
2731
  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>";
2722
2732
  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>";
@@ -3213,12 +3223,9 @@ let accordionIds = 0;
3213
3223
  * @param message - The string message to be logged to the console.
3214
3224
  */
3215
3225
  const printIonWarning = (message, ...params) => {
3216
- const logLevel = config.get('logLevel', "WARN" /* LogLevel.WARN */);
3217
- if (["WARN" /* LogLevel.WARN */].includes(logLevel)) {
3218
- return console.warn(`[Ionic Warning]: ${message}`, ...params);
3219
- }
3226
+ return console.warn(`[Ionic Warning]: ${message}`, ...params);
3220
3227
  };
3221
- /**
3228
+ /*
3222
3229
  * Logs an error to the console with an Ionic prefix
3223
3230
  * to indicate the library that is warning the developer.
3224
3231
  *
@@ -3226,10 +3233,7 @@ const printIonWarning = (message, ...params) => {
3226
3233
  * @param params - Additional arguments to supply to the console.error.
3227
3234
  */
3228
3235
  const printIonError = (message, ...params) => {
3229
- const logLevel = config.get('logLevel', "ERROR" /* LogLevel.ERROR */);
3230
- if (["ERROR" /* LogLevel.ERROR */, "WARN" /* LogLevel.WARN */].includes(logLevel)) {
3231
- return console.error(`[Ionic Error]: ${message}`, ...params);
3232
- }
3236
+ return console.error(`[Ionic Error]: ${message}`, ...params);
3233
3237
  };
3234
3238
  /**
3235
3239
  * Prints an error informing developers that an implementation requires an element to be used
@@ -8430,10 +8434,10 @@ class CardTitle {
8430
8434
  }; }
8431
8435
  }
8432
8436
 
8433
- 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}";
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}: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}";
8434
8438
  var IonCheckboxIosStyle0 = checkboxIosCss;
8435
8439
 
8436
- 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}";
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}: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}";
8437
8441
  var IonCheckboxMdStyle0 = checkboxMdCss;
8438
8442
 
8439
8443
  /**
@@ -8444,9 +8448,6 @@ var IonCheckboxMdStyle0 = checkboxMdCss;
8444
8448
  * @part container - The container for the checkbox mark.
8445
8449
  * @part label - The label text describing the checkbox.
8446
8450
  * @part mark - The checkmark used to indicate the checked state.
8447
- * @part supporting-text - Supporting text displayed beneath the checkbox label.
8448
- * @part helper-text - Supporting text displayed beneath the checkbox label when the checkbox is valid.
8449
- * @part error-text - Supporting text displayed beneath the checkbox label when the checkbox is invalid and touched.
8450
8451
  */
8451
8452
  class Checkbox {
8452
8453
  constructor(hostRef) {
@@ -8455,8 +8456,6 @@ class Checkbox {
8455
8456
  this.ionFocus = createEvent(this, "ionFocus", 7);
8456
8457
  this.ionBlur = createEvent(this, "ionBlur", 7);
8457
8458
  this.inputId = `ion-cb-${checkboxIds++}`;
8458
- this.helperTextId = `${this.inputId}-helper-text`;
8459
- this.errorTextId = `${this.inputId}-error-text`;
8460
8459
  this.inheritedAttributes = {};
8461
8460
  /**
8462
8461
  * Sets the checked property and emits
@@ -8494,13 +8493,10 @@ class Checkbox {
8494
8493
  this.checked = false;
8495
8494
  this.indeterminate = false;
8496
8495
  this.disabled = false;
8497
- this.errorText = undefined;
8498
- this.helperText = undefined;
8499
8496
  this.value = 'on';
8500
8497
  this.labelPlacement = 'start';
8501
8498
  this.justify = undefined;
8502
8499
  this.alignment = undefined;
8503
- this.required = false;
8504
8500
  }
8505
8501
  componentWillLoad() {
8506
8502
  this.inheritedAttributes = Object.assign({}, inheritAriaAttributes(this.el));
@@ -8511,38 +8507,12 @@ class Checkbox {
8511
8507
  this.focusEl.focus();
8512
8508
  }
8513
8509
  }
8514
- getHintTextID() {
8515
- const { el, helperText, errorText, helperTextId, errorTextId } = this;
8516
- if (el.classList.contains('ion-touched') && el.classList.contains('ion-invalid') && errorText) {
8517
- return errorTextId;
8518
- }
8519
- if (helperText) {
8520
- return helperTextId;
8521
- }
8522
- return undefined;
8523
- }
8524
- /**
8525
- * Responsible for rendering helper text and error text.
8526
- * This element should only be rendered if hint text is set.
8527
- */
8528
- renderHintText() {
8529
- const { helperText, errorText, helperTextId, errorTextId } = this;
8530
- /**
8531
- * undefined and empty string values should
8532
- * be treated as not having helper/error text.
8533
- */
8534
- const hasHintText = !!helperText || !!errorText;
8535
- if (!hasHintText) {
8536
- return;
8537
- }
8538
- 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)));
8539
- }
8540
8510
  render() {
8541
- const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment, required, } = this;
8511
+ const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment, } = this;
8542
8512
  const mode = getIonMode$1(this);
8543
8513
  const path = getSVGPath(mode, indeterminate);
8544
8514
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
8545
- return (hAsync(Host, { key: '7ac31df89b07c781ddcd30a6a8c109494d0c500a', "aria-checked": indeterminate ? 'mixed' : `${checked}`, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId, class: createColorClasses$1(color, {
8515
+ return (hAsync(Host, { key: '6dc787e1100521d08c4900104e1a3e2f594e919f', "aria-checked": indeterminate ? 'mixed' : `${checked}`, class: createColorClasses$1(color, {
8546
8516
  [mode]: true,
8547
8517
  'in-item': hostContext('ion-item', el),
8548
8518
  'checkbox-checked': checked,
@@ -8552,10 +8522,10 @@ class Checkbox {
8552
8522
  [`checkbox-justify-${justify}`]: justify !== undefined,
8553
8523
  [`checkbox-alignment-${alignment}`]: alignment !== undefined,
8554
8524
  [`checkbox-label-placement-${labelPlacement}`]: true,
8555
- }), 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: {
8525
+ }), 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: {
8556
8526
  'label-text-wrapper': true,
8557
8527
  'label-text-wrapper-hidden': el.textContent === '',
8558
- }, 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)))));
8528
+ }, 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)))));
8559
8529
  }
8560
8530
  getSVGPath(mode, indeterminate) {
8561
8531
  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" }));
@@ -8578,13 +8548,10 @@ class Checkbox {
8578
8548
  "checked": [1028],
8579
8549
  "indeterminate": [1028],
8580
8550
  "disabled": [4],
8581
- "errorText": [1, "error-text"],
8582
- "helperText": [1, "helper-text"],
8583
8551
  "value": [8],
8584
8552
  "labelPlacement": [1, "label-placement"],
8585
8553
  "justify": [1],
8586
8554
  "alignment": [1],
8587
- "required": [4],
8588
8555
  "setFocus": [64]
8589
8556
  },
8590
8557
  "$listeners$": undefined,
@@ -19060,7 +19027,7 @@ const computeDuration = (remaining, velocity) => {
19060
19027
  };
19061
19028
 
19062
19029
  const createSheetEnterAnimation = (opts) => {
19063
- const { currentBreakpoint, backdropBreakpoint, expandToScroll } = opts;
19030
+ const { currentBreakpoint, backdropBreakpoint } = opts;
19064
19031
  /**
19065
19032
  * If the backdropBreakpoint is undefined, then the backdrop
19066
19033
  * should always fade in. If the backdropBreakpoint came before the
@@ -19080,16 +19047,7 @@ const createSheetEnterAnimation = (opts) => {
19080
19047
  { offset: 0, opacity: 1, transform: 'translateY(100%)' },
19081
19048
  { offset: 1, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
19082
19049
  ]);
19083
- /**
19084
- * This allows the content to be scrollable at any breakpoint.
19085
- */
19086
- const contentAnimation = !expandToScroll
19087
- ? createAnimation('contentAnimation').keyframes([
19088
- { offset: 0, opacity: 1, maxHeight: `${(1 - currentBreakpoint) * 100}%` },
19089
- { offset: 1, opacity: 1, maxHeight: `${currentBreakpoint * 100}%` },
19090
- ])
19091
- : undefined;
19092
- return { wrapperAnimation, backdropAnimation, contentAnimation };
19050
+ return { wrapperAnimation, backdropAnimation };
19093
19051
  };
19094
19052
  const createSheetLeaveAnimation = (opts) => {
19095
19053
  const { currentBreakpoint, backdropBreakpoint } = opts;
@@ -19124,68 +19082,22 @@ const createEnterAnimation$1 = () => {
19124
19082
  })
19125
19083
  .afterClearStyles(['pointer-events']);
19126
19084
  const wrapperAnimation = createAnimation().fromTo('transform', 'translateY(100vh)', 'translateY(0vh)');
19127
- return { backdropAnimation, wrapperAnimation, contentAnimation: undefined };
19085
+ return { backdropAnimation, wrapperAnimation };
19128
19086
  };
19129
19087
  /**
19130
19088
  * iOS Modal Enter Animation for the Card presentation style
19131
19089
  */
19132
19090
  const iosEnterAnimation$3 = (baseEl, opts) => {
19133
- const { presentingEl, currentBreakpoint, expandToScroll } = opts;
19091
+ const { presentingEl, currentBreakpoint } = opts;
19134
19092
  const root = getElementRoot(baseEl);
19135
- const { wrapperAnimation, backdropAnimation, contentAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation$1();
19093
+ const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation$1();
19136
19094
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
19137
19095
  wrapperAnimation.addElement(root.querySelectorAll('.modal-wrapper, .modal-shadow')).beforeStyles({ opacity: 1 });
19138
- // The content animation is only added if scrolling is enabled for
19139
- // all the breakpoints.
19140
- !expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
19141
19096
  const baseAnimation = createAnimation('entering-base')
19142
19097
  .addElement(baseEl)
19143
19098
  .easing('cubic-bezier(0.32,0.72,0,1)')
19144
19099
  .duration(500)
19145
- .addAnimation([wrapperAnimation])
19146
- .beforeAddWrite(() => {
19147
- if (expandToScroll) {
19148
- // Scroll can only be done when the modal is fully expanded.
19149
- return;
19150
- }
19151
- /**
19152
- * There are some browsers that causes flickering when
19153
- * dragging the content when scroll is enabled at every
19154
- * breakpoint. This is due to the wrapper element being
19155
- * transformed off the screen and having a snap animation.
19156
- *
19157
- * A workaround is to clone the footer element and append
19158
- * it outside of the wrapper element. This way, the footer
19159
- * is still visible and the drag can be done without
19160
- * flickering. The original footer is hidden until the modal
19161
- * is dismissed. This maintains the animation of the footer
19162
- * when the modal is dismissed.
19163
- *
19164
- * The workaround needs to be done before the animation starts
19165
- * so there are no flickering issues.
19166
- */
19167
- const ionFooter = baseEl.querySelector('ion-footer');
19168
- /**
19169
- * This check is needed to prevent more than one footer
19170
- * from being appended to the shadow root.
19171
- * Otherwise, iOS and MD enter animations would append
19172
- * the footer twice.
19173
- */
19174
- const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
19175
- if (ionFooter && !ionFooterAlreadyAppended) {
19176
- const footerHeight = ionFooter.clientHeight;
19177
- const clonedFooter = ionFooter.cloneNode(true);
19178
- baseEl.shadowRoot.appendChild(clonedFooter);
19179
- ionFooter.style.setProperty('display', 'none');
19180
- ionFooter.setAttribute('aria-hidden', 'true');
19181
- // Padding is added to prevent some content from being hidden.
19182
- const page = baseEl.querySelector('.ion-page');
19183
- page.style.setProperty('padding-bottom', `${footerHeight}px`);
19184
- }
19185
- });
19186
- if (contentAnimation) {
19187
- baseAnimation.addAnimation(contentAnimation);
19188
- }
19100
+ .addAnimation(wrapperAnimation);
19189
19101
  if (presentingEl) {
19190
19102
  const isMobile = window.innerWidth < 768;
19191
19103
  const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
@@ -19263,7 +19175,7 @@ const createLeaveAnimation$1 = () => {
19263
19175
  * iOS Modal Leave Animation
19264
19176
  */
19265
19177
  const iosLeaveAnimation$3 = (baseEl, opts, duration = 500) => {
19266
- const { presentingEl, currentBreakpoint, expandToScroll } = opts;
19178
+ const { presentingEl, currentBreakpoint } = opts;
19267
19179
  const root = getElementRoot(baseEl);
19268
19180
  const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation$1();
19269
19181
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
@@ -19272,29 +19184,7 @@ const iosLeaveAnimation$3 = (baseEl, opts, duration = 500) => {
19272
19184
  .addElement(baseEl)
19273
19185
  .easing('cubic-bezier(0.32,0.72,0,1)')
19274
19186
  .duration(duration)
19275
- .addAnimation(wrapperAnimation)
19276
- .beforeAddWrite(() => {
19277
- if (expandToScroll) {
19278
- // Scroll can only be done when the modal is fully expanded.
19279
- return;
19280
- }
19281
- /**
19282
- * If expandToScroll is disabled, we need to swap
19283
- * the visibility to the original, so the footer
19284
- * dismisses with the modal and doesn't stay
19285
- * until the modal is removed from the DOM.
19286
- */
19287
- const ionFooter = baseEl.querySelector('ion-footer');
19288
- if (ionFooter) {
19289
- const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
19290
- ionFooter.style.removeProperty('display');
19291
- ionFooter.removeAttribute('aria-hidden');
19292
- clonedFooter.style.setProperty('display', 'none');
19293
- clonedFooter.setAttribute('aria-hidden', 'true');
19294
- const page = baseEl.querySelector('.ion-page');
19295
- page.style.removeProperty('padding-bottom');
19296
- }
19297
- });
19187
+ .addAnimation(wrapperAnimation);
19298
19188
  if (presentingEl) {
19299
19189
  const isMobile = window.innerWidth < 768;
19300
19190
  const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
@@ -19372,69 +19262,22 @@ const createEnterAnimation = () => {
19372
19262
  { offset: 0, opacity: 0.01, transform: 'translateY(40px)' },
19373
19263
  { offset: 1, opacity: 1, transform: `translateY(0px)` },
19374
19264
  ]);
19375
- return { backdropAnimation, wrapperAnimation, contentAnimation: undefined };
19265
+ return { backdropAnimation, wrapperAnimation };
19376
19266
  };
19377
19267
  /**
19378
19268
  * Md Modal Enter Animation
19379
19269
  */
19380
19270
  const mdEnterAnimation$2 = (baseEl, opts) => {
19381
- const { currentBreakpoint, expandToScroll } = opts;
19271
+ const { currentBreakpoint } = opts;
19382
19272
  const root = getElementRoot(baseEl);
19383
- const { wrapperAnimation, backdropAnimation, contentAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
19273
+ const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
19384
19274
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
19385
19275
  wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
19386
- // The content animation is only added if scrolling is enabled for
19387
- // all the breakpoints.
19388
- expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
19389
- const baseAnimation = createAnimation()
19276
+ return createAnimation()
19390
19277
  .addElement(baseEl)
19391
19278
  .easing('cubic-bezier(0.36,0.66,0.04,1)')
19392
19279
  .duration(280)
19393
- .addAnimation([backdropAnimation, wrapperAnimation])
19394
- .beforeAddWrite(() => {
19395
- if (expandToScroll) {
19396
- // Scroll can only be done when the modal is fully expanded.
19397
- return;
19398
- }
19399
- /**
19400
- * There are some browsers that causes flickering when
19401
- * dragging the content when scroll is enabled at every
19402
- * breakpoint. This is due to the wrapper element being
19403
- * transformed off the screen and having a snap animation.
19404
- *
19405
- * A workaround is to clone the footer element and append
19406
- * it outside of the wrapper element. This way, the footer
19407
- * is still visible and the drag can be done without
19408
- * flickering. The original footer is hidden until the modal
19409
- * is dismissed. This maintains the animation of the footer
19410
- * when the modal is dismissed.
19411
- *
19412
- * The workaround needs to be done before the animation starts
19413
- * so there are no flickering issues.
19414
- */
19415
- const ionFooter = baseEl.querySelector('ion-footer');
19416
- /**
19417
- * This check is needed to prevent more than one footer
19418
- * from being appended to the shadow root.
19419
- * Otherwise, iOS and MD enter animations would append
19420
- * the footer twice.
19421
- */
19422
- const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
19423
- if (ionFooter && !ionFooterAlreadyAppended) {
19424
- const footerHeight = ionFooter.clientHeight;
19425
- const clonedFooter = ionFooter.cloneNode(true);
19426
- baseEl.shadowRoot.appendChild(clonedFooter);
19427
- ionFooter.style.setProperty('display', 'none');
19428
- ionFooter.setAttribute('aria-hidden', 'true');
19429
- // Padding is added to prevent some content from being hidden.
19430
- const page = baseEl.querySelector('.ion-page');
19431
- page.style.setProperty('padding-bottom', `${footerHeight}px`);
19432
- }
19433
- });
19434
- if (contentAnimation) {
19435
- baseAnimation.addAnimation(contentAnimation);
19436
- }
19437
- return baseAnimation;
19280
+ .addAnimation([backdropAnimation, wrapperAnimation]);
19438
19281
  };
19439
19282
 
19440
19283
  const createLeaveAnimation = () => {
@@ -19449,41 +19292,18 @@ const createLeaveAnimation = () => {
19449
19292
  * Md Modal Leave Animation
19450
19293
  */
19451
19294
  const mdLeaveAnimation$2 = (baseEl, opts) => {
19452
- const { currentBreakpoint, expandToScroll } = opts;
19295
+ const { currentBreakpoint } = opts;
19453
19296
  const root = getElementRoot(baseEl);
19454
19297
  const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation();
19455
19298
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
19456
19299
  wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
19457
- const baseAnimation = createAnimation()
19300
+ return createAnimation()
19458
19301
  .easing('cubic-bezier(0.47,0,0.745,0.715)')
19459
19302
  .duration(200)
19460
- .addAnimation([backdropAnimation, wrapperAnimation])
19461
- .beforeAddWrite(() => {
19462
- if (expandToScroll) {
19463
- // Scroll can only be done when the modal is fully expanded.
19464
- return;
19465
- }
19466
- /**
19467
- * If expandToScroll is disabled, we need to swap
19468
- * the visibility to the original, so the footer
19469
- * dismisses with the modal and doesn't stay
19470
- * until the modal is removed from the DOM.
19471
- */
19472
- const ionFooter = baseEl.querySelector('ion-footer');
19473
- if (ionFooter) {
19474
- const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
19475
- ionFooter.style.removeProperty('display');
19476
- ionFooter.removeAttribute('aria-hidden');
19477
- clonedFooter.style.setProperty('display', 'none');
19478
- clonedFooter.setAttribute('aria-hidden', 'true');
19479
- const page = baseEl.querySelector('.ion-page');
19480
- page.style.removeProperty('padding-bottom');
19481
- }
19482
- });
19483
- return baseAnimation;
19303
+ .addAnimation([backdropAnimation, wrapperAnimation]);
19484
19304
  };
19485
19305
 
19486
- const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], expandToScroll, getCurrentBreakpoint, onDismiss, onBreakpointChange) => {
19306
+ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], getCurrentBreakpoint, onDismiss, onBreakpointChange) => {
19487
19307
  // Defaults for the sheet swipe animation
19488
19308
  const defaultBackdrop = [
19489
19309
  { offset: 0, opacity: 'var(--backdrop-opacity)' },
@@ -19500,10 +19320,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19500
19320
  { offset: 1, transform: 'translateY(100%)' },
19501
19321
  ],
19502
19322
  BACKDROP_KEYFRAMES: backdropBreakpoint !== 0 ? customBackdrop : defaultBackdrop,
19503
- CONTENT_KEYFRAMES: [
19504
- { offset: 0, maxHeight: '100%' },
19505
- { offset: 1, maxHeight: '0%' },
19506
- ],
19507
19323
  };
19508
19324
  const contentEl = baseEl.querySelector('ion-content');
19509
19325
  const height = wrapperEl.clientHeight;
@@ -19511,11 +19327,10 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19511
19327
  let offset = 0;
19512
19328
  let canDismissBlocksGesture = false;
19513
19329
  const canDismissMaxStep = 0.95;
19514
- const maxBreakpoint = breakpoints[breakpoints.length - 1];
19515
- const minBreakpoint = breakpoints[0];
19516
19330
  const wrapperAnimation = animation.childAnimations.find((ani) => ani.id === 'wrapperAnimation');
19517
19331
  const backdropAnimation = animation.childAnimations.find((ani) => ani.id === 'backdropAnimation');
19518
- const contentAnimation = animation.childAnimations.find((ani) => ani.id === 'contentAnimation');
19332
+ const maxBreakpoint = breakpoints[breakpoints.length - 1];
19333
+ const minBreakpoint = breakpoints[0];
19519
19334
  const enableBackdrop = () => {
19520
19335
  baseEl.style.setProperty('pointer-events', 'auto');
19521
19336
  backdropEl.style.setProperty('pointer-events', 'auto');
@@ -19538,31 +19353,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19538
19353
  */
19539
19354
  baseEl.classList.add(FOCUS_TRAP_DISABLE_CLASS);
19540
19355
  };
19541
- /**
19542
- * Toggles the visible modal footer when `expandToScroll` is disabled.
19543
- * @param footer The footer to show.
19544
- */
19545
- const swapFooterVisibility = (footer) => {
19546
- const originalFooter = baseEl.querySelector('ion-footer');
19547
- if (!originalFooter) {
19548
- return;
19549
- }
19550
- const clonedFooter = wrapperEl.nextElementSibling;
19551
- const footerToHide = footer === 'original' ? clonedFooter : originalFooter;
19552
- const footerToShow = footer === 'original' ? originalFooter : clonedFooter;
19553
- footerToShow.style.removeProperty('display');
19554
- footerToShow.removeAttribute('aria-hidden');
19555
- const page = baseEl.querySelector('.ion-page');
19556
- if (footer === 'original') {
19557
- page.style.removeProperty('padding-bottom');
19558
- }
19559
- else {
19560
- const pagePadding = footerToShow.clientHeight;
19561
- page.style.setProperty('padding-bottom', `${pagePadding}px`);
19562
- }
19563
- footerToHide.style.setProperty('display', 'none');
19564
- footerToHide.setAttribute('aria-hidden', 'true');
19565
- };
19566
19356
  /**
19567
19357
  * After the entering animation completes,
19568
19358
  * we need to set the animation to go from
@@ -19574,7 +19364,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19574
19364
  if (wrapperAnimation && backdropAnimation) {
19575
19365
  wrapperAnimation.keyframes([...SheetDefaults.WRAPPER_KEYFRAMES]);
19576
19366
  backdropAnimation.keyframes([...SheetDefaults.BACKDROP_KEYFRAMES]);
19577
- contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.keyframes([...SheetDefaults.CONTENT_KEYFRAMES]);
19578
19367
  animation.progressStart(true, 1 - currentBreakpoint);
19579
19368
  /**
19580
19369
  * If backdrop is not enabled, then content
@@ -19591,7 +19380,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19591
19380
  disableBackdrop();
19592
19381
  }
19593
19382
  }
19594
- if (contentEl && currentBreakpoint !== maxBreakpoint && expandToScroll) {
19383
+ if (contentEl && currentBreakpoint !== maxBreakpoint) {
19595
19384
  contentEl.scrollY = false;
19596
19385
  }
19597
19386
  const canStart = (detail) => {
@@ -19605,13 +19394,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19605
19394
  */
19606
19395
  const contentEl = findClosestIonContent(detail.event.target);
19607
19396
  currentBreakpoint = getCurrentBreakpoint();
19608
- /**
19609
- * If we have expandToScroll disabled, we should not allow the swipe gesture to start
19610
- * if the content is being swiped.
19611
- */
19612
- if (!expandToScroll && contentEl) {
19613
- return false;
19614
- }
19615
19397
  if (currentBreakpoint === 1 && contentEl) {
19616
19398
  /**
19617
19399
  * The modal should never swipe to close on the content with a refresher.
@@ -19642,15 +19424,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19642
19424
  * Remove undefined check
19643
19425
  */
19644
19426
  canDismissBlocksGesture = baseEl.canDismiss !== undefined && baseEl.canDismiss !== true && minBreakpoint === 0;
19645
- /**
19646
- * If expandToScroll is disabled, we need to swap
19647
- * the footer visibility to the original, so if the modal
19648
- * is dismissed, the footer dismisses with the modal
19649
- * and doesn't stay on the screen after the modal is gone.
19650
- */
19651
- if (!expandToScroll) {
19652
- swapFooterVisibility('original');
19653
- }
19654
19427
  /**
19655
19428
  * If we are pulling down, then it is possible we are pulling on the content.
19656
19429
  * We do not want scrolling to happen at the same time as the gesture.
@@ -19766,19 +19539,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19766
19539
  opacity: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(snapToBreakpoint, backdropBreakpoint)})`,
19767
19540
  },
19768
19541
  ]);
19769
- if (contentAnimation) {
19770
- /**
19771
- * The modal content should scroll at any breakpoint when expandToScroll
19772
- * is disabled. In order to do this, the content needs to be completely
19773
- * viewable so scrolling can access everything. Otherwise, the default
19774
- * behavior would show the content off the screen and only allow
19775
- * scrolling when the sheet is fully expanded.
19776
- */
19777
- contentAnimation.keyframes([
19778
- { offset: 0, maxHeight: `${(1 - breakpointOffset) * 100}%` },
19779
- { offset: 1, maxHeight: `${snapToBreakpoint * 100}%` },
19780
- ]);
19781
- }
19782
19542
  animation.progressStep(0);
19783
19543
  }
19784
19544
  /**
@@ -19786,14 +19546,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19786
19546
  * snapping animation completes.
19787
19547
  */
19788
19548
  gesture.enable(false);
19789
- /**
19790
- * If expandToScroll is disabled, we need to swap
19791
- * the footer visibility to the cloned one so the footer
19792
- * doesn't flicker when the sheet's height is animated.
19793
- */
19794
- if (!expandToScroll && shouldRemainOpen) {
19795
- swapFooterVisibility('cloned');
19796
- }
19797
19549
  if (shouldPreventDismiss) {
19798
19550
  handleCanDismiss(baseEl, animation);
19799
19551
  }
@@ -19801,13 +19553,13 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19801
19553
  onDismiss();
19802
19554
  }
19803
19555
  /**
19804
- * Enables scrolling immediately if the sheet is about to fully expand
19805
- * or if it allows scrolling at any breakpoint. Without this, there would
19806
- * be a ~500ms delay while the modal animation completes, causing a
19807
- * noticeable lag. Native iOS allows scrolling as soon as the gesture is
19808
- * released, so we align with that behavior.
19556
+ * If the sheet is going to be fully expanded then we should enable
19557
+ * scrolling immediately. The sheet modal animation takes ~500ms to finish
19558
+ * so if we wait until then there is a visible delay for when scrolling is
19559
+ * re-enabled. Native iOS allows for scrolling on the sheet modal as soon
19560
+ * as the gesture is released, so we align with that.
19809
19561
  */
19810
- if (contentEl && (snapToBreakpoint === breakpoints[breakpoints.length - 1] || !expandToScroll)) {
19562
+ if (contentEl && snapToBreakpoint === breakpoints[breakpoints.length - 1]) {
19811
19563
  contentEl.scrollY = true;
19812
19564
  }
19813
19565
  return new Promise((resolve) => {
@@ -19825,7 +19577,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19825
19577
  raf(() => {
19826
19578
  wrapperAnimation.keyframes([...SheetDefaults.WRAPPER_KEYFRAMES]);
19827
19579
  backdropAnimation.keyframes([...SheetDefaults.BACKDROP_KEYFRAMES]);
19828
- contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.keyframes([...SheetDefaults.CONTENT_KEYFRAMES]);
19829
19580
  animation.progressStart(true, 1 - snapToBreakpoint);
19830
19581
  currentBreakpoint = snapToBreakpoint;
19831
19582
  onBreakpointChange(currentBreakpoint);
@@ -19878,10 +19629,10 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19878
19629
  };
19879
19630
  };
19880
19631
 
19881
- 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}";
19632
+ 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}";
19882
19633
  var IonModalIosStyle0 = modalIosCss;
19883
19634
 
19884
- 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}";
19635
+ 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}";
19885
19636
  var IonModalMdStyle0 = modalMdCss;
19886
19637
 
19887
19638
  // TODO(FW-2832): types
@@ -19960,7 +19711,6 @@ class Modal {
19960
19711
  this.enterAnimation = undefined;
19961
19712
  this.leaveAnimation = undefined;
19962
19713
  this.breakpoints = undefined;
19963
- this.expandToScroll = true;
19964
19714
  this.initialBreakpoint = undefined;
19965
19715
  this.backdropBreakpoint = 0;
19966
19716
  this.handle = undefined;
@@ -20176,7 +19926,6 @@ class Modal {
20176
19926
  presentingEl: presentingElement,
20177
19927
  currentBreakpoint: this.initialBreakpoint,
20178
19928
  backdropBreakpoint: this.backdropBreakpoint,
20179
- expandToScroll: this.expandToScroll,
20180
19929
  });
20181
19930
  /* tslint:disable-next-line */
20182
19931
  if (typeof window !== 'undefined') {
@@ -20227,10 +19976,7 @@ class Modal {
20227
19976
  // should be in the DOM and referenced by now, except
20228
19977
  // for the presenting el
20229
19978
  const animationBuilder = this.leaveAnimation || config.get('modalLeave', iosLeaveAnimation$3);
20230
- const ani = (this.animation = animationBuilder(el, {
20231
- presentingEl: this.presentingElement,
20232
- expandToScroll: this.expandToScroll,
20233
- }));
19979
+ const ani = (this.animation = animationBuilder(el, { presentingEl: this.presentingElement }));
20234
19980
  const contentEl = findIonContent(el);
20235
19981
  if (!contentEl) {
20236
19982
  printIonContentErrorMsg(el);
@@ -20275,10 +20021,9 @@ class Modal {
20275
20021
  presentingEl: this.presentingElement,
20276
20022
  currentBreakpoint: initialBreakpoint,
20277
20023
  backdropBreakpoint,
20278
- expandToScroll: this.expandToScroll,
20279
20024
  }));
20280
20025
  ani.progressStart(true, 1);
20281
- 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) => {
20026
+ 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) => {
20282
20027
  if (this.currentBreakpoint !== breakpoint) {
20283
20028
  this.currentBreakpoint = breakpoint;
20284
20029
  this.ionBreakpointDidChange.emit({ breakpoint });
@@ -20356,7 +20101,6 @@ class Modal {
20356
20101
  presentingEl: presentingElement,
20357
20102
  currentBreakpoint: (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : this.initialBreakpoint,
20358
20103
  backdropBreakpoint: this.backdropBreakpoint,
20359
- expandToScroll: this.expandToScroll,
20360
20104
  });
20361
20105
  if (dismissed) {
20362
20106
  const { delegate } = this.getDelegate();
@@ -20442,23 +20186,23 @@ class Modal {
20442
20186
  return true;
20443
20187
  }
20444
20188
  render() {
20445
- const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap, expandToScroll, } = this;
20189
+ const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap } = this;
20446
20190
  const showHandle = handle !== false && isSheetModal;
20447
20191
  const mode = getIonMode$1(this);
20448
20192
  const isCardModal = presentingElement !== undefined && mode === 'ios';
20449
20193
  const isHandleCycle = handleBehavior === 'cycle';
20450
- return (hAsync(Host, Object.assign({ key: 'ff15df63e72caaeb0a4ad68e9eedeaaa7d3f3bde', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
20194
+ return (hAsync(Host, Object.assign({ key: 'b4da5111fe4719fa450c39b2d4bd884a302a7924', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
20451
20195
  zIndex: `${20000 + this.overlayIndex}`,
20452
- }, 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',
20196
+ }, 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',
20453
20197
  /*
20454
20198
  role and aria-modal must be used on the
20455
20199
  same element. They must also be set inside the
20456
20200
  shadow DOM otherwise ion-button will not be highlighted
20457
20201
  when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
20458
20202
  */
20459
- 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",
20203
+ 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",
20460
20204
  // Prevents the handle from receiving keyboard focus when it does not cycle
20461
- 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' }))));
20205
+ 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' }))));
20462
20206
  }
20463
20207
  get el() { return getElement(this); }
20464
20208
  static get watchers() { return {
@@ -20480,7 +20224,6 @@ class Modal {
20480
20224
  "enterAnimation": [16],
20481
20225
  "leaveAnimation": [16],
20482
20226
  "breakpoints": [16],
20483
- "expandToScroll": [4, "expand-to-scroll"],
20484
20227
  "initialBreakpoint": [2, "initial-breakpoint"],
20485
20228
  "backdropBreakpoint": [2, "backdrop-breakpoint"],
20486
20229
  "handle": [4],
@@ -29581,7 +29324,35 @@ class SegmentButton {
29581
29324
  valueChanged() {
29582
29325
  this.updateState();
29583
29326
  }
29584
- connectedCallback() {
29327
+ waitForSegmentContent(ionSegment, contentId) {
29328
+ return new Promise((resolve, reject) => {
29329
+ let timeoutId = undefined;
29330
+ let animationFrameId;
29331
+ const check = () => {
29332
+ if (!ionSegment) {
29333
+ reject(new Error(`Segment not found when looking for Segment Content`));
29334
+ return;
29335
+ }
29336
+ const segmentView = getNextSiblingOfType(ionSegment); // Skip the text nodes
29337
+ const segmentContent = segmentView === null || segmentView === void 0 ? void 0 : segmentView.querySelector(`ion-segment-content[id="${contentId}"]`);
29338
+ if (segmentContent && timeoutId) {
29339
+ clearTimeout(timeoutId); // Clear the timeout if the segmentContent is found
29340
+ cancelAnimationFrame(animationFrameId);
29341
+ resolve(segmentContent);
29342
+ }
29343
+ else {
29344
+ animationFrameId = requestAnimationFrame(check); // Keep checking on the next animation frame
29345
+ }
29346
+ };
29347
+ check();
29348
+ // Set a timeout to reject the promise
29349
+ timeoutId = setTimeout(() => {
29350
+ cancelAnimationFrame(animationFrameId);
29351
+ reject(new Error(`Unable to find Segment Content with id="${contentId} within 1000 ms`));
29352
+ }, 1000);
29353
+ });
29354
+ }
29355
+ async connectedCallback() {
29585
29356
  const segmentEl = (this.segmentEl = this.el.closest('ion-segment'));
29586
29357
  if (segmentEl) {
29587
29358
  this.updateState();
@@ -29591,11 +29362,14 @@ class SegmentButton {
29591
29362
  // Return if there is no contentId defined
29592
29363
  if (!this.contentId)
29593
29364
  return;
29594
- // Attempt to find the Segment Content by its contentId
29595
- const segmentContent = document.getElementById(this.contentId);
29596
- // If no associated Segment Content exists, log an error and return
29597
- if (!segmentContent) {
29598
- console.error(`Segment Button: Unable to find Segment Content with id="${this.contentId}".`);
29365
+ let segmentContent;
29366
+ try {
29367
+ // Attempt to find the Segment Content by its contentId
29368
+ segmentContent = await this.waitForSegmentContent(segmentEl, this.contentId);
29369
+ }
29370
+ catch (error) {
29371
+ // If no associated Segment Content exists, log an error and return
29372
+ console.error('Segment Button: ', error.message);
29599
29373
  return;
29600
29374
  }
29601
29375
  // Ensure the found element is a valid ION-SEGMENT-CONTENT
@@ -29641,7 +29415,7 @@ class SegmentButton {
29641
29415
  const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
29642
29416
  const mode = getIonMode$1(this);
29643
29417
  const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
29644
- return (hAsync(Host, { key: 'd50a5d5e2f6206e8523598f258d8217d2903f69b', class: {
29418
+ return (hAsync(Host, { key: 'f9da656c8eccb80e4ef30e3fa977f2dbbefbc988', class: {
29645
29419
  [mode]: true,
29646
29420
  'in-toolbar': hostContext('ion-toolbar', this.el),
29647
29421
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
@@ -29657,7 +29431,7 @@ class SegmentButton {
29657
29431
  'ion-activatable': true,
29658
29432
  'ion-activatable-instant': true,
29659
29433
  'ion-focusable': true,
29660
- } }, 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" }))));
29434
+ } }, 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" }))));
29661
29435
  }
29662
29436
  get el() { return getElement(this); }
29663
29437
  static get watchers() { return {
@@ -29924,7 +29698,6 @@ class Select {
29924
29698
  this.expandedIcon = undefined;
29925
29699
  this.shape = undefined;
29926
29700
  this.value = undefined;
29927
- this.required = false;
29928
29701
  }
29929
29702
  styleChanged() {
29930
29703
  this.emitStyle();
@@ -29980,15 +29753,8 @@ class Select {
29980
29753
  }
29981
29754
  this.isExpanded = true;
29982
29755
  const overlay = (this.overlay = await this.createOverlay(event));
29983
- overlay.onDidDismiss().then(() => {
29984
- this.overlay = undefined;
29985
- this.isExpanded = false;
29986
- this.ionDismiss.emit();
29987
- this.setFocus();
29988
- });
29989
- await overlay.present();
29990
- // focus selected option for popovers and modals
29991
- if (this.interface === 'popover' || this.interface === 'modal') {
29756
+ // Add logic to scroll selected item into view before presenting
29757
+ const scrollSelectedIntoView = () => {
29992
29758
  const indexOfSelected = this.childOpts.findIndex((o) => o.value === this.value);
29993
29759
  if (indexOfSelected > -1) {
29994
29760
  const selectedItem = overlay.querySelector(`.select-interface-option:nth-child(${indexOfSelected + 1})`);
@@ -30006,6 +29772,7 @@ class Select {
30006
29772
  */
30007
29773
  const interactiveEl = selectedItem.querySelector('ion-radio, ion-checkbox');
30008
29774
  if (interactiveEl) {
29775
+ selectedItem.scrollIntoView({ block: 'nearest' });
30009
29776
  // Needs to be called before `focusVisibleElement` to prevent issue with focus event bubbling
30010
29777
  // and removing `ion-focused` style
30011
29778
  interactiveEl.setFocus();
@@ -30029,7 +29796,40 @@ class Select {
30029
29796
  focusVisibleElement(firstEnabledOption.closest('ion-item'));
30030
29797
  }
30031
29798
  }
29799
+ };
29800
+ // For modals and popovers, we can scroll before they're visible
29801
+ if (this.interface === 'modal') {
29802
+ overlay.addEventListener('ionModalWillPresent', scrollSelectedIntoView, { once: true });
29803
+ }
29804
+ else if (this.interface === 'popover') {
29805
+ overlay.addEventListener('ionPopoverWillPresent', scrollSelectedIntoView, { once: true });
29806
+ }
29807
+ else {
29808
+ /**
29809
+ * For alerts and action sheets, we need to wait a frame after willPresent
29810
+ * because these overlays don't have their content in the DOM immediately
29811
+ * when willPresent fires. By waiting a frame, we ensure the content is
29812
+ * rendered and can be properly scrolled into view.
29813
+ */
29814
+ const scrollAfterRender = () => {
29815
+ requestAnimationFrame(() => {
29816
+ scrollSelectedIntoView();
29817
+ });
29818
+ };
29819
+ if (this.interface === 'alert') {
29820
+ overlay.addEventListener('ionAlertWillPresent', scrollAfterRender, { once: true });
29821
+ }
29822
+ else if (this.interface === 'action-sheet') {
29823
+ overlay.addEventListener('ionActionSheetWillPresent', scrollAfterRender, { once: true });
29824
+ }
30032
29825
  }
29826
+ overlay.onDidDismiss().then(() => {
29827
+ this.overlay = undefined;
29828
+ this.isExpanded = false;
29829
+ this.ionDismiss.emit();
29830
+ this.setFocus();
29831
+ });
29832
+ await overlay.present();
30033
29833
  return overlay;
30034
29834
  }
30035
29835
  createOverlay(ev) {
@@ -30409,8 +30209,8 @@ class Select {
30409
30209
  return renderedLabel;
30410
30210
  }
30411
30211
  renderListbox() {
30412
- const { disabled, inputId, isExpanded, required } = this;
30413
- 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) }));
30212
+ const { disabled, inputId, isExpanded } = this;
30213
+ 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) }));
30414
30214
  }
30415
30215
  render() {
30416
30216
  const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
@@ -30441,7 +30241,7 @@ class Select {
30441
30241
  * TODO(FW-5592): Remove hasStartEndSlots condition
30442
30242
  */
30443
30243
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
30444
- return (hAsync(Host, { key: '491cf1b0e3aa31e7c9cfad3e87d83eb54272312a', onClick: this.onClick, class: createColorClasses$1(this.color, {
30244
+ return (hAsync(Host, { key: 'b2dca9ae25d88e4d9fdb55003041a66be5668fcf', onClick: this.onClick, class: createColorClasses$1(this.color, {
30445
30245
  [mode]: true,
30446
30246
  'in-item': inItem,
30447
30247
  'in-item-color': hostContext('ion-item.ion-color', el),
@@ -30457,7 +30257,7 @@ class Select {
30457
30257
  [`select-justify-${justify}`]: justifyEnabled,
30458
30258
  [`select-shape-${shape}`]: shape !== undefined,
30459
30259
  [`select-label-placement-${labelPlacement}`]: true,
30460
- }) }, 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" }))));
30260
+ }) }, 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" }))));
30461
30261
  }
30462
30262
  get el() { return getElement(this); }
30463
30263
  static get watchers() { return {
@@ -30493,7 +30293,6 @@ class Select {
30493
30293
  "expandedIcon": [1, "expanded-icon"],
30494
30294
  "shape": [1],
30495
30295
  "value": [1032],
30496
- "required": [4],
30497
30296
  "isExpanded": [32],
30498
30297
  "open": [64]
30499
30298
  },
@@ -32890,7 +32689,6 @@ class Toggle {
32890
32689
  this.labelPlacement = 'start';
32891
32690
  this.justify = undefined;
32892
32691
  this.alignment = undefined;
32893
- this.required = false;
32894
32692
  }
32895
32693
  disabledChanged() {
32896
32694
  if (this.gesture) {
@@ -32972,12 +32770,12 @@ class Toggle {
32972
32770
  return this.el.textContent !== '';
32973
32771
  }
32974
32772
  render() {
32975
- const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment, required } = this;
32773
+ const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment } = this;
32976
32774
  const mode = getIonMode$1(this);
32977
32775
  const value = this.getValue();
32978
32776
  const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
32979
32777
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
32980
- return (hAsync(Host, { key: 'ed75573caa6e37011f1453dd7f723fb9bd8a3656', onClick: this.onClick, class: createColorClasses$1(color, {
32778
+ return (hAsync(Host, { key: 'f52195ec3bc14c024647cb41319c32a4cd330e19', onClick: this.onClick, class: createColorClasses$1(color, {
32981
32779
  [mode]: true,
32982
32780
  'in-item': hostContext('ion-item', el),
32983
32781
  'toggle-activated': activated,
@@ -32987,10 +32785,10 @@ class Toggle {
32987
32785
  [`toggle-alignment-${alignment}`]: alignment !== undefined,
32988
32786
  [`toggle-label-placement-${labelPlacement}`]: true,
32989
32787
  [`toggle-${rtl}`]: true,
32990
- }) }, 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: {
32788
+ }) }, 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: {
32991
32789
  'label-text-wrapper': true,
32992
32790
  'label-text-wrapper-hidden': !this.hasLabel,
32993
- }, part: "label" }, hAsync("slot", { key: '9495a4a39889822ee68e0d89dc5a2f863d1feb3c' })), hAsync("div", { key: '55f1eb08c4b705e94fbcf02220bbe1d292f06155', class: "native-wrapper" }, this.renderToggleControl()))));
32791
+ }, part: "label" }, hAsync("slot", { key: '80a6672e2e792c15011a9496dcd75363cdba31c6' })), hAsync("div", { key: '2b2b318b38ab27b194c0dab4cecd77d9d780f2ca', class: "native-wrapper" }, this.renderToggleControl()))));
32994
32792
  }
32995
32793
  get el() { return getElement(this); }
32996
32794
  static get watchers() { return {
@@ -33013,7 +32811,6 @@ class Toggle {
33013
32811
  "labelPlacement": [1, "label-placement"],
33014
32812
  "justify": [1],
33015
32813
  "alignment": [1],
33016
- "required": [4],
33017
32814
  "activated": [32]
33018
32815
  },
33019
32816
  "$listeners$": undefined,
@@ -33045,10 +32842,6 @@ var IonToolbarMdStyle0 = toolbarMdCss;
33045
32842
  * @slot secondary - Content is placed to the left of the toolbar text in `ios` mode, and directly to the right in `md` mode.
33046
32843
  * @slot primary - Content is placed to the right of the toolbar text in `ios` mode, and to the far right in `md` mode.
33047
32844
  * @slot end - Content is placed to the right of the toolbar text in LTR, and to the left in RTL.
33048
- *
33049
- * @part background - The background of the toolbar, covering the entire area behind the toolbar content.
33050
- * @part container - The container that wraps all toolbar content, including the default slot and named slot content.
33051
- * @part content - The container for the default slot, wrapping content provided without a named slot.
33052
32845
  */
33053
32846
  class Toolbar {
33054
32847
  constructor(hostRef) {
@@ -33099,10 +32892,10 @@ class Toolbar {
33099
32892
  this.childrenStyles.forEach((value) => {
33100
32893
  Object.assign(childStyles, value);
33101
32894
  });
33102
- return (hAsync(Host, { key: '4fdc9ae82a93237cc28ceb95b0ebd8069b62839d', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
32895
+ return (hAsync(Host, { key: '462538a5ecd01baf3cde116c9f029aeda26c81be', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
33103
32896
  [mode]: true,
33104
32897
  'in-toolbar': hostContext('ion-toolbar', this.el),
33105
- })) }, 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" }))));
32898
+ })) }, 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" }))));
33106
32899
  }
33107
32900
  get el() { return getElement(this); }
33108
32901
  static get style() { return {