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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (510) hide show
  1. package/components/checkbox.js +4 -6
  2. package/components/helpers.js +11 -1
  3. package/components/index6.js +3 -11
  4. package/components/index9.js +1 -1
  5. package/components/ion-item-divider.js +2 -2
  6. package/components/ion-item-group.js +1 -1
  7. package/components/ion-item-option.js +2 -2
  8. package/components/ion-item-options.js +1 -1
  9. package/components/ion-item-sliding.js +1 -1
  10. package/components/ion-loading.js +2 -2
  11. package/components/ion-menu-button.js +2 -2
  12. package/components/ion-menu-toggle.js +2 -2
  13. package/components/ion-menu.js +2 -2
  14. package/components/ion-nav-link.js +1 -1
  15. package/components/ion-nav.js +1 -1
  16. package/components/ion-note.js +2 -2
  17. package/components/ion-picker-legacy.js +2 -2
  18. package/components/ion-progress-bar.js +1 -1
  19. package/components/ion-range.js +3 -3
  20. package/components/ion-refresher-content.js +1 -1
  21. package/components/ion-refresher.js +1 -1
  22. package/components/ion-reorder-group.js +1 -1
  23. package/components/ion-reorder.js +1 -1
  24. package/components/ion-router-link.js +2 -2
  25. package/components/ion-router-outlet.js +1 -1
  26. package/components/ion-row.js +1 -1
  27. package/components/ion-searchbar.js +4 -4
  28. package/components/ion-segment-button.js +40 -9
  29. package/components/ion-segment-content.js +1 -1
  30. package/components/ion-segment-view.js +2 -2
  31. package/components/ion-segment.js +2 -2
  32. package/components/ion-select-option.js +1 -1
  33. package/components/ion-select.js +41 -16
  34. package/components/ion-skeleton-text.js +2 -2
  35. package/components/ion-split-pane.js +2 -2
  36. package/components/ion-tab-bar.js +2 -2
  37. package/components/ion-tab-button.js +2 -2
  38. package/components/ion-tab.js +2 -2
  39. package/components/ion-tabs.js +1 -1
  40. package/components/ion-text.js +2 -2
  41. package/components/ion-textarea.js +2 -2
  42. package/components/ion-thumbnail.js +1 -1
  43. package/components/ion-toast.js +2 -2
  44. package/components/ion-toggle.js +4 -6
  45. package/components/label.js +2 -2
  46. package/components/list-header.js +2 -2
  47. package/components/modal.js +35 -259
  48. package/components/picker-column-option.js +2 -2
  49. package/components/picker-column2.js +2 -2
  50. package/components/popover.js +2 -2
  51. package/components/radio-group.js +2 -39
  52. package/components/radio.js +3 -3
  53. package/components/ripple-effect.js +1 -1
  54. package/components/select-modal.js +1 -1
  55. package/components/select-popover.js +1 -1
  56. package/components/spinner.js +1 -1
  57. package/components/title.js +2 -2
  58. package/components/toolbar.js +2 -2
  59. package/css/core.css.map +1 -1
  60. package/css/ionic.bundle.css.map +1 -1
  61. package/dist/cjs/{data-108e531d.js → data-21dc0f81.js} +1 -1
  62. package/dist/cjs/{framework-delegate-55f5683a.js → framework-delegate-05579976.js} +1 -1
  63. package/dist/cjs/{helpers-afaa9001.js → helpers-4be3f90d.js} +11 -0
  64. package/dist/cjs/{index-3652c918.js → index-1ae3f40a.js} +2 -2
  65. package/dist/cjs/{index-e975c92b.js → index-4e14a46e.js} +4 -4
  66. package/dist/cjs/{index-2a46a047.js → index-5915f9b3.js} +3 -11
  67. package/dist/cjs/{index-9509ecad.js → index-ad7a712e.js} +1 -1
  68. package/dist/cjs/{index-0d762bba.js → index-c441c903.js} +2 -2
  69. package/dist/cjs/index.cjs.js +8 -8
  70. package/dist/cjs/{input-shims-cd05268a.js → input-shims-e748a364.js} +3 -5
  71. package/dist/cjs/{input.utils-ffb2f81b.js → input.utils-74e4ec28.js} +2 -2
  72. package/dist/cjs/ion-accordion_2.cjs.entry.js +2 -2
  73. package/dist/cjs/ion-action-sheet.cjs.entry.js +4 -4
  74. package/dist/cjs/ion-alert.cjs.entry.js +4 -4
  75. package/dist/cjs/ion-app_8.cjs.entry.js +14 -14
  76. package/dist/cjs/ion-avatar_3.cjs.entry.js +1 -1
  77. package/dist/cjs/ion-back-button.cjs.entry.js +1 -1
  78. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +1 -1
  79. package/dist/cjs/ion-button_2.cjs.entry.js +2 -2
  80. package/dist/cjs/ion-card_5.cjs.entry.js +1 -1
  81. package/dist/cjs/ion-checkbox.cjs.entry.js +5 -6
  82. package/dist/cjs/ion-col_3.cjs.entry.js +1 -1
  83. package/dist/cjs/ion-datetime-button.cjs.entry.js +3 -3
  84. package/dist/cjs/ion-datetime_3.cjs.entry.js +9 -9
  85. package/dist/cjs/ion-fab_3.cjs.entry.js +1 -1
  86. package/dist/cjs/ion-img.cjs.entry.js +1 -1
  87. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +3 -3
  88. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +1 -1
  89. package/dist/cjs/ion-input.cjs.entry.js +4 -4
  90. package/dist/cjs/ion-item-option_3.cjs.entry.js +7 -7
  91. package/dist/cjs/ion-item_8.cjs.entry.js +12 -12
  92. package/dist/cjs/ion-loading.cjs.entry.js +6 -6
  93. package/dist/cjs/ion-menu_3.cjs.entry.js +11 -11
  94. package/dist/cjs/ion-modal.cjs.entry.js +41 -264
  95. package/dist/cjs/ion-nav_2.cjs.entry.js +7 -7
  96. package/dist/cjs/ion-picker-column-option.cjs.entry.js +3 -3
  97. package/dist/cjs/ion-picker-column.cjs.entry.js +1 -1
  98. package/dist/cjs/ion-picker.cjs.entry.js +1 -1
  99. package/dist/cjs/ion-popover.cjs.entry.js +7 -7
  100. package/dist/cjs/ion-progress-bar.cjs.entry.js +2 -2
  101. package/dist/cjs/ion-radio_2.cjs.entry.js +5 -40
  102. package/dist/cjs/ion-range.cjs.entry.js +6 -6
  103. package/dist/cjs/ion-refresher_2.cjs.entry.js +5 -5
  104. package/dist/cjs/ion-reorder_2.cjs.entry.js +5 -5
  105. package/dist/cjs/ion-ripple-effect.cjs.entry.js +1 -1
  106. package/dist/cjs/ion-route_4.cjs.entry.js +3 -3
  107. package/dist/cjs/ion-searchbar.cjs.entry.js +5 -5
  108. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  109. package/dist/cjs/ion-segment-view.cjs.entry.js +2 -2
  110. package/dist/cjs/ion-segment_2.cjs.entry.js +42 -11
  111. package/dist/cjs/ion-select-modal.cjs.entry.js +5 -5
  112. package/dist/cjs/ion-select_3.cjs.entry.js +47 -21
  113. package/dist/cjs/ion-spinner.cjs.entry.js +1 -1
  114. package/dist/cjs/ion-split-pane.cjs.entry.js +2 -2
  115. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +5 -5
  116. package/dist/cjs/ion-tab_2.cjs.entry.js +5 -5
  117. package/dist/cjs/ion-text.cjs.entry.js +2 -2
  118. package/dist/cjs/ion-textarea.cjs.entry.js +6 -6
  119. package/dist/cjs/ion-toast.cjs.entry.js +6 -6
  120. package/dist/cjs/ion-toggle.cjs.entry.js +5 -6
  121. package/dist/cjs/ionic.cjs.js +1 -1
  122. package/dist/cjs/{ios.transition-0e664e88.js → ios.transition-afdec89f.js} +3 -3
  123. package/dist/cjs/loader.cjs.js +1 -1
  124. package/dist/cjs/{md.transition-2e8aef2c.js → md.transition-9f0d3db5.js} +3 -3
  125. package/dist/cjs/{notch-controller-d69150f5.js → notch-controller-a0c464d1.js} +1 -1
  126. package/dist/cjs/{overlays-65fdaff6.js → overlays-76b29cd4.js} +3 -3
  127. package/dist/cjs/{status-tap-d74f1429.js → status-tap-fb807fad.js} +3 -4
  128. package/dist/cjs/{swipe-back-0303a5e4.js → swipe-back-47a52b83.js} +1 -1
  129. package/dist/collection/components/checkbox/checkbox.js +4 -23
  130. package/dist/collection/components/item-divider/item-divider.js +2 -2
  131. package/dist/collection/components/item-group/item-group.js +1 -1
  132. package/dist/collection/components/item-option/item-option.js +2 -2
  133. package/dist/collection/components/item-options/item-options.js +1 -1
  134. package/dist/collection/components/item-sliding/item-sliding.js +1 -1
  135. package/dist/collection/components/label/label.js +2 -2
  136. package/dist/collection/components/list-header/list-header.js +2 -2
  137. package/dist/collection/components/loading/loading.js +2 -2
  138. package/dist/collection/components/menu/menu.js +2 -2
  139. package/dist/collection/components/menu-button/menu-button.js +2 -2
  140. package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
  141. package/dist/collection/components/modal/animations/ios.enter.js +4 -50
  142. package/dist/collection/components/modal/animations/ios.leave.js +2 -24
  143. package/dist/collection/components/modal/animations/md.enter.js +5 -52
  144. package/dist/collection/components/modal/animations/md.leave.js +3 -26
  145. package/dist/collection/components/modal/animations/sheet.js +2 -11
  146. package/dist/collection/components/modal/gestures/sheet.js +10 -79
  147. package/dist/collection/components/modal/modal.ios.css +0 -16
  148. package/dist/collection/components/modal/modal.js +7 -32
  149. package/dist/collection/components/modal/modal.md.css +0 -6
  150. package/dist/collection/components/nav/nav.js +1 -1
  151. package/dist/collection/components/nav-link/nav-link.js +1 -1
  152. package/dist/collection/components/note/note.js +2 -2
  153. package/dist/collection/components/picker-column-option/picker-column-option.js +2 -2
  154. package/dist/collection/components/picker-legacy/picker.js +2 -2
  155. package/dist/collection/components/picker-legacy-column/picker-column.js +2 -2
  156. package/dist/collection/components/popover/popover.js +2 -2
  157. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  158. package/dist/collection/components/radio/radio.js +3 -3
  159. package/dist/collection/components/radio-group/radio-group.js +1 -72
  160. package/dist/collection/components/range/range.js +3 -3
  161. package/dist/collection/components/refresher/refresher.js +1 -1
  162. package/dist/collection/components/refresher-content/refresher-content.js +1 -1
  163. package/dist/collection/components/reorder/reorder.js +1 -1
  164. package/dist/collection/components/reorder-group/reorder-group.js +1 -1
  165. package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
  166. package/dist/collection/components/router-link/router-link.js +2 -2
  167. package/dist/collection/components/router-outlet/router-outlet.js +1 -1
  168. package/dist/collection/components/row/row.js +1 -1
  169. package/dist/collection/components/searchbar/searchbar.js +4 -4
  170. package/dist/collection/components/segment/segment.js +2 -2
  171. package/dist/collection/components/segment-button/segment-button.js +40 -9
  172. package/dist/collection/components/segment-content/segment-content.js +1 -1
  173. package/dist/collection/components/segment-view/segment-view.js +2 -2
  174. package/dist/collection/components/select/select.js +40 -32
  175. package/dist/collection/components/select-modal/select-modal.js +1 -1
  176. package/dist/collection/components/select-option/select-option.js +1 -1
  177. package/dist/collection/components/select-popover/select-popover.js +1 -1
  178. package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
  179. package/dist/collection/components/spinner/spinner.js +1 -1
  180. package/dist/collection/components/split-pane/split-pane.js +2 -2
  181. package/dist/collection/components/tab/tab.js +2 -2
  182. package/dist/collection/components/tab-bar/tab-bar.js +2 -2
  183. package/dist/collection/components/tab-button/tab-button.js +2 -2
  184. package/dist/collection/components/tabs/tabs.js +1 -1
  185. package/dist/collection/components/text/text.js +2 -2
  186. package/dist/collection/components/textarea/textarea.js +2 -2
  187. package/dist/collection/components/thumbnail/thumbnail.js +1 -1
  188. package/dist/collection/components/title/title.js +2 -2
  189. package/dist/collection/components/toast/toast.js +2 -2
  190. package/dist/collection/components/toggle/toggle.js +4 -23
  191. package/dist/collection/components/toolbar/toolbar.js +2 -6
  192. package/dist/collection/utils/helpers.js +10 -0
  193. package/dist/collection/utils/logging/index.js +3 -10
  194. package/dist/docs.json +2 -163
  195. package/dist/esm/{data-b3284b5e.js → data-ae11fd43.js} +1 -1
  196. package/dist/esm/{framework-delegate-63d1a679.js → framework-delegate-f683816e.js} +1 -1
  197. package/dist/esm/{helpers-da915de8.js → helpers-9b49d7d2.js} +11 -1
  198. package/dist/esm/{index-efb8ecdf.js → index-33f7e3ff.js} +2 -2
  199. package/dist/esm/{index-79b30591.js → index-5a0f5fd0.js} +1 -1
  200. package/dist/esm/{index-2f7fde3d.js → index-7ec5519a.js} +4 -4
  201. package/dist/esm/{index-cb21eccb.js → index-8785a9c6.js} +2 -2
  202. package/dist/esm/{index-6ad967f3.js → index-9b0d46f4.js} +3 -11
  203. package/dist/esm/index.js +8 -8
  204. package/dist/esm/{input-shims-2fd7c6ef.js → input-shims-0e65111b.js} +3 -5
  205. package/dist/esm/{input.utils-961c9f17.js → input.utils-1ad8dafc.js} +2 -2
  206. package/dist/esm/ion-accordion_2.entry.js +2 -2
  207. package/dist/esm/ion-action-sheet.entry.js +4 -4
  208. package/dist/esm/ion-alert.entry.js +4 -4
  209. package/dist/esm/ion-app_8.entry.js +14 -14
  210. package/dist/esm/ion-avatar_3.entry.js +1 -1
  211. package/dist/esm/ion-back-button.entry.js +1 -1
  212. package/dist/esm/ion-breadcrumb_2.entry.js +1 -1
  213. package/dist/esm/ion-button_2.entry.js +2 -2
  214. package/dist/esm/ion-card_5.entry.js +1 -1
  215. package/dist/esm/ion-checkbox.entry.js +5 -6
  216. package/dist/esm/ion-col_3.entry.js +1 -1
  217. package/dist/esm/ion-datetime-button.entry.js +3 -3
  218. package/dist/esm/ion-datetime_3.entry.js +9 -9
  219. package/dist/esm/ion-fab_3.entry.js +1 -1
  220. package/dist/esm/ion-img.entry.js +1 -1
  221. package/dist/esm/ion-infinite-scroll_2.entry.js +3 -3
  222. package/dist/esm/ion-input-password-toggle.entry.js +1 -1
  223. package/dist/esm/ion-input.entry.js +4 -4
  224. package/dist/esm/ion-item-option_3.entry.js +7 -7
  225. package/dist/esm/ion-item_8.entry.js +12 -12
  226. package/dist/esm/ion-loading.entry.js +6 -6
  227. package/dist/esm/ion-menu_3.entry.js +11 -11
  228. package/dist/esm/ion-modal.entry.js +41 -264
  229. package/dist/esm/ion-nav_2.entry.js +7 -7
  230. package/dist/esm/ion-picker-column-option.entry.js +3 -3
  231. package/dist/esm/ion-picker-column.entry.js +1 -1
  232. package/dist/esm/ion-picker.entry.js +1 -1
  233. package/dist/esm/ion-popover.entry.js +7 -7
  234. package/dist/esm/ion-progress-bar.entry.js +2 -2
  235. package/dist/esm/ion-radio_2.entry.js +5 -40
  236. package/dist/esm/ion-range.entry.js +6 -6
  237. package/dist/esm/ion-refresher_2.entry.js +5 -5
  238. package/dist/esm/ion-reorder_2.entry.js +5 -5
  239. package/dist/esm/ion-ripple-effect.entry.js +1 -1
  240. package/dist/esm/ion-route_4.entry.js +3 -3
  241. package/dist/esm/ion-searchbar.entry.js +5 -5
  242. package/dist/esm/ion-segment-content.entry.js +1 -1
  243. package/dist/esm/ion-segment-view.entry.js +2 -2
  244. package/dist/esm/ion-segment_2.entry.js +42 -11
  245. package/dist/esm/ion-select-modal.entry.js +5 -5
  246. package/dist/esm/ion-select_3.entry.js +47 -21
  247. package/dist/esm/ion-spinner.entry.js +1 -1
  248. package/dist/esm/ion-split-pane.entry.js +2 -2
  249. package/dist/esm/ion-tab-bar_2.entry.js +5 -5
  250. package/dist/esm/ion-tab_2.entry.js +5 -5
  251. package/dist/esm/ion-text.entry.js +2 -2
  252. package/dist/esm/ion-textarea.entry.js +6 -6
  253. package/dist/esm/ion-toast.entry.js +6 -6
  254. package/dist/esm/ion-toggle.entry.js +5 -6
  255. package/dist/esm/ionic.js +1 -1
  256. package/dist/esm/{ios.transition-b1da3753.js → ios.transition-085853ff.js} +3 -3
  257. package/dist/esm/loader.js +1 -1
  258. package/dist/esm/{md.transition-571b3859.js → md.transition-33826623.js} +3 -3
  259. package/dist/esm/{notch-controller-55b09e11.js → notch-controller-3dc61260.js} +1 -1
  260. package/dist/esm/{overlays-5deab4de.js → overlays-e3d0d356.js} +3 -3
  261. package/dist/esm/{status-tap-79eac0ac.js → status-tap-163e8128.js} +3 -4
  262. package/dist/esm/{swipe-back-e5394307.js → swipe-back-23ee7ab1.js} +1 -1
  263. package/dist/esm-es5/{data-b3284b5e.js → data-ae11fd43.js} +1 -1
  264. package/dist/esm-es5/{framework-delegate-63d1a679.js → framework-delegate-f683816e.js} +1 -1
  265. package/dist/esm-es5/{helpers-da915de8.js → helpers-9b49d7d2.js} +1 -1
  266. package/dist/esm-es5/{index-efb8ecdf.js → index-33f7e3ff.js} +1 -1
  267. package/dist/esm-es5/{index-79b30591.js → index-5a0f5fd0.js} +1 -1
  268. package/dist/esm-es5/{index-2f7fde3d.js → index-7ec5519a.js} +1 -1
  269. package/dist/esm-es5/{index-cb21eccb.js → index-8785a9c6.js} +1 -1
  270. package/dist/esm-es5/index-9b0d46f4.js +4 -0
  271. package/dist/esm-es5/index.js +1 -1
  272. package/dist/esm-es5/input-shims-0e65111b.js +4 -0
  273. package/dist/esm-es5/{input.utils-961c9f17.js → input.utils-1ad8dafc.js} +1 -1
  274. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  275. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  276. package/dist/esm-es5/ion-alert.entry.js +1 -1
  277. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  278. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  279. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  280. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  281. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  282. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  283. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  284. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  285. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  286. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  287. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  288. package/dist/esm-es5/ion-img.entry.js +1 -1
  289. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  290. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  291. package/dist/esm-es5/ion-input.entry.js +1 -1
  292. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  293. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  294. package/dist/esm-es5/ion-loading.entry.js +1 -1
  295. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  296. package/dist/esm-es5/ion-modal.entry.js +1 -1
  297. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  298. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  299. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  300. package/dist/esm-es5/ion-picker.entry.js +1 -1
  301. package/dist/esm-es5/ion-popover.entry.js +1 -1
  302. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  303. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  304. package/dist/esm-es5/ion-range.entry.js +1 -1
  305. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  306. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  307. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  308. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  309. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  310. package/dist/esm-es5/ion-segment-content.entry.js +1 -1
  311. package/dist/esm-es5/ion-segment-view.entry.js +1 -1
  312. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  313. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  314. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  315. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  316. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  317. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  318. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  319. package/dist/esm-es5/ion-text.entry.js +1 -1
  320. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  321. package/dist/esm-es5/ion-toast.entry.js +1 -1
  322. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  323. package/dist/esm-es5/ionic.js +1 -1
  324. package/dist/esm-es5/{ios.transition-b1da3753.js → ios.transition-085853ff.js} +1 -1
  325. package/dist/esm-es5/loader.js +1 -1
  326. package/dist/esm-es5/md.transition-33826623.js +4 -0
  327. package/dist/esm-es5/{notch-controller-55b09e11.js → notch-controller-3dc61260.js} +1 -1
  328. package/dist/esm-es5/{overlays-5deab4de.js → overlays-e3d0d356.js} +1 -1
  329. package/dist/esm-es5/status-tap-163e8128.js +4 -0
  330. package/dist/esm-es5/{swipe-back-e5394307.js → swipe-back-23ee7ab1.js} +1 -1
  331. package/dist/html.html-data.json +0 -24
  332. package/dist/ionic/index.esm.js +1 -1
  333. package/dist/ionic/ionic.esm.js +1 -1
  334. package/dist/ionic/{p-f1c4dcd4.js → p-02e1ebd9.js} +1 -1
  335. package/dist/ionic/{p-6f0f433c.entry.js → p-02e23f26.entry.js} +1 -1
  336. package/dist/ionic/{p-797204e3.entry.js → p-0397811d.entry.js} +1 -1
  337. package/dist/ionic/p-06fee233.js +4 -0
  338. package/dist/ionic/p-075a94bd.js +4 -0
  339. package/dist/ionic/p-0a59f4fa.entry.js +4 -0
  340. package/dist/ionic/{p-2346ab53.system.entry.js → p-0c9b6d3a.system.entry.js} +1 -1
  341. package/dist/ionic/p-0e43be1b.entry.js +4 -0
  342. package/dist/ionic/{p-7ed1657c.system.entry.js → p-0eb2553a.system.entry.js} +1 -1
  343. package/dist/ionic/p-0ee3b5a2.system.js +4 -0
  344. package/dist/ionic/p-135e5731.js +4 -0
  345. package/dist/ionic/{p-b6efeab8.js → p-13dc21b0.js} +1 -1
  346. package/dist/ionic/{p-7a6eaf9e.entry.js → p-14143257.entry.js} +1 -1
  347. package/dist/ionic/p-14be4015.entry.js +4 -0
  348. package/dist/ionic/{p-248318e0.system.entry.js → p-162c8d0c.system.entry.js} +1 -1
  349. package/dist/ionic/{p-2f43663c.system.entry.js → p-16799667.system.entry.js} +1 -1
  350. package/dist/ionic/p-16bfb979.system.entry.js +4 -0
  351. package/dist/ionic/{p-a88dec0d.system.js → p-1a790eef.system.js} +2 -2
  352. package/dist/ionic/{p-d4c9f8f6.system.entry.js → p-1bbe8665.system.entry.js} +2 -2
  353. package/dist/ionic/{p-fd257e86.system.entry.js → p-1bc65aec.system.entry.js} +1 -1
  354. package/dist/ionic/p-1f405274.js +4 -0
  355. package/dist/ionic/{p-120fb79a.entry.js → p-203633d1.entry.js} +1 -1
  356. package/dist/ionic/{p-9659caca.system.entry.js → p-2507278c.system.entry.js} +1 -1
  357. package/dist/ionic/{p-4fb8b6f8.system.entry.js → p-2515cb4d.system.entry.js} +1 -1
  358. package/dist/ionic/p-25fa1d30.system.entry.js +4 -0
  359. package/dist/ionic/{p-eb86eafb.entry.js → p-26194519.entry.js} +1 -1
  360. package/dist/ionic/{p-959886ca.entry.js → p-265939f0.entry.js} +1 -1
  361. package/dist/ionic/{p-c078a25d.system.entry.js → p-2abae1cc.system.entry.js} +1 -1
  362. package/dist/ionic/{p-34b11c24.js → p-2bc73fb5.js} +1 -1
  363. package/dist/ionic/p-2c9eb774.system.js +4 -0
  364. package/dist/ionic/{p-08f8804f.system.entry.js → p-2ef3c7ee.system.entry.js} +1 -1
  365. package/dist/ionic/p-322c5fb4.system.js +1 -1
  366. package/dist/ionic/{p-5a064906.entry.js → p-32e99b0a.entry.js} +1 -1
  367. package/dist/ionic/{p-c4238c12.system.js → p-340e3f24.system.js} +1 -1
  368. package/dist/ionic/{p-a090bce8.system.entry.js → p-3572f86a.system.entry.js} +1 -1
  369. package/dist/ionic/{p-14350389.system.entry.js → p-3df889b3.system.entry.js} +2 -2
  370. package/dist/ionic/{p-05b74e45.system.entry.js → p-3eaf1444.system.entry.js} +1 -1
  371. package/dist/ionic/{p-2034ff3e.entry.js → p-41780810.entry.js} +1 -1
  372. package/dist/ionic/{p-468b7fe5.system.entry.js → p-424eb140.system.entry.js} +1 -1
  373. package/dist/ionic/{p-1ab13b2b.js → p-42808996.js} +1 -1
  374. package/dist/ionic/{p-a9b68560.system.entry.js → p-4346c79d.system.entry.js} +1 -1
  375. package/dist/ionic/{p-a15ddedb.system.js → p-4452a8ac.system.js} +1 -1
  376. package/dist/ionic/{p-b1eb86fd.entry.js → p-45de8d2a.entry.js} +1 -1
  377. package/dist/ionic/{p-8ac07653.system.entry.js → p-48a8d9b4.system.entry.js} +2 -2
  378. package/dist/ionic/p-49a0e74c.entry.js +4 -0
  379. package/dist/ionic/{p-52d7a191.entry.js → p-4ad78edc.entry.js} +1 -1
  380. package/dist/ionic/{p-46d78904.entry.js → p-4c252070.entry.js} +1 -1
  381. package/dist/ionic/{p-19ea7bff.system.js → p-5126cf1e.system.js} +1 -1
  382. package/dist/ionic/{p-cb13696c.js → p-51dec25d.js} +1 -1
  383. package/dist/ionic/{p-933727f9.system.entry.js → p-561ddcd4.system.entry.js} +2 -2
  384. package/dist/ionic/p-56da53ad.system.entry.js +4 -0
  385. package/dist/ionic/{p-948e6c6a.entry.js → p-57379000.entry.js} +1 -1
  386. package/dist/ionic/{p-c8c015fa.entry.js → p-57ceead7.entry.js} +1 -1
  387. package/dist/ionic/{p-571f7efd.entry.js → p-5b932840.entry.js} +1 -1
  388. package/dist/ionic/{p-15d18206.entry.js → p-5cde8ef3.entry.js} +1 -1
  389. package/dist/ionic/{p-0f00abe2.entry.js → p-6190d0d6.entry.js} +1 -1
  390. package/dist/ionic/p-61d044b4.entry.js +4 -0
  391. package/dist/ionic/{p-f200c0f2.entry.js → p-62af944c.entry.js} +1 -1
  392. package/dist/ionic/p-68dc53a5.js +4 -0
  393. package/dist/ionic/{p-308d9b4c.entry.js → p-6b1bd0c1.entry.js} +1 -1
  394. package/dist/ionic/{p-48d2c8e3.entry.js → p-6d32975a.entry.js} +1 -1
  395. package/dist/ionic/{p-458d8052.system.entry.js → p-70ccc275.system.entry.js} +2 -2
  396. package/dist/ionic/{p-d12c8b7c.entry.js → p-73dc4950.entry.js} +1 -1
  397. package/dist/ionic/{p-65493214.system.entry.js → p-7458862e.system.entry.js} +1 -1
  398. package/dist/ionic/{p-d1918f92.entry.js → p-76446a85.entry.js} +1 -1
  399. package/dist/ionic/{p-e7bfd50d.system.entry.js → p-77e7b7b6.system.entry.js} +1 -1
  400. package/dist/ionic/{p-72812e99.js → p-7a1766d6.js} +1 -1
  401. package/dist/ionic/{p-6270042b.system.entry.js → p-7b96e5c1.system.entry.js} +1 -1
  402. package/dist/ionic/{p-aacfc8f1.entry.js → p-7b98cebe.entry.js} +1 -1
  403. package/dist/ionic/{p-766477e0.entry.js → p-803f0bc2.entry.js} +1 -1
  404. package/dist/ionic/{p-f0270b8c.entry.js → p-82b931e2.entry.js} +1 -1
  405. package/dist/ionic/{p-2b0ce71f.entry.js → p-83e68c71.entry.js} +1 -1
  406. package/dist/ionic/p-84b1b9a0.entry.js +4 -0
  407. package/dist/ionic/{p-1e67b266.system.entry.js → p-84d08aae.system.entry.js} +1 -1
  408. package/dist/ionic/{p-d22e2a38.system.js → p-881d9e52.system.js} +1 -1
  409. package/dist/ionic/p-8a836849.entry.js +4 -0
  410. package/dist/ionic/{p-e09d6392.system.entry.js → p-91f17b25.system.entry.js} +2 -2
  411. package/dist/ionic/{p-1eb2e3bc.system.entry.js → p-92365bc1.system.entry.js} +1 -1
  412. package/dist/ionic/{p-d7aa6b00.entry.js → p-955c3eb8.entry.js} +1 -1
  413. package/dist/ionic/{p-7d6d8f1f.entry.js → p-95775830.entry.js} +1 -1
  414. package/dist/ionic/{p-8635f5e6.system.js → p-95da3ae2.system.js} +1 -1
  415. package/dist/ionic/{p-102e55aa.system.entry.js → p-9a1f985d.system.entry.js} +1 -1
  416. package/dist/ionic/{p-b9d7015f.entry.js → p-9b3bb24e.entry.js} +1 -1
  417. package/dist/ionic/{p-1854b62d.system.entry.js → p-9be5f3ee.system.entry.js} +2 -2
  418. package/dist/ionic/{p-5c08627a.system.js → p-9eee4de1.system.js} +1 -1
  419. package/dist/ionic/{p-7de1e42c.system.js → p-a2b6dd57.system.js} +1 -1
  420. package/dist/ionic/{p-a2cc2247.system.entry.js → p-a3c78186.system.entry.js} +1 -1
  421. package/dist/ionic/{p-71c66f13.system.entry.js → p-a4575db1.system.entry.js} +1 -1
  422. package/dist/ionic/{p-01186920.system.entry.js → p-a9e24ae2.system.entry.js} +1 -1
  423. package/dist/ionic/{p-0eb35a7f.system.js → p-aa63b365.system.js} +1 -1
  424. package/dist/ionic/{p-b8427d77.entry.js → p-af09741c.entry.js} +1 -1
  425. package/dist/ionic/{p-442e3021.entry.js → p-afecb188.entry.js} +1 -1
  426. package/dist/ionic/{p-a8f2c254.entry.js → p-b0d8bbee.entry.js} +1 -1
  427. package/dist/ionic/{p-3ad285e3.system.js → p-b3680e2f.system.js} +1 -1
  428. package/dist/ionic/p-b7433d7d.js +4 -0
  429. package/dist/ionic/{p-e1ebcbb2.system.entry.js → p-b91acf8d.system.entry.js} +1 -1
  430. package/dist/ionic/{p-b51e4004.js → p-bb11d9fb.js} +1 -1
  431. package/dist/ionic/{p-081a4ce4.entry.js → p-bb2a6761.entry.js} +1 -1
  432. package/dist/ionic/{p-ada36597.system.js → p-c1b51537.system.js} +1 -1
  433. package/dist/ionic/{p-8cfba7e9.system.entry.js → p-c29f8157.system.entry.js} +1 -1
  434. package/dist/ionic/{p-d3a4e061.entry.js → p-c32644d7.entry.js} +1 -1
  435. package/dist/ionic/{p-c41ac815.entry.js → p-c8d645b3.entry.js} +1 -1
  436. package/dist/ionic/p-cc700b6b.entry.js +4 -0
  437. package/dist/ionic/{p-1fdf3d2e.system.entry.js → p-d06601eb.system.entry.js} +1 -1
  438. package/dist/ionic/{p-bac6d8b8.system.entry.js → p-d192fdf7.system.entry.js} +1 -1
  439. package/dist/ionic/{p-34093a29.system.entry.js → p-d3b26da4.system.entry.js} +1 -1
  440. package/dist/ionic/{p-3cc276f4.js → p-d4ca0475.js} +1 -1
  441. package/dist/ionic/{p-1a5bc5f7.js → p-d60342e3.js} +1 -1
  442. package/dist/ionic/{p-89bf08c7.entry.js → p-da074ff7.entry.js} +1 -1
  443. package/dist/ionic/{p-58d5df0c.system.entry.js → p-da8ef548.system.entry.js} +1 -1
  444. package/dist/ionic/{p-985a7e17.system.entry.js → p-dc146a2a.system.entry.js} +1 -1
  445. package/dist/ionic/{p-cac0e0b3.system.entry.js → p-dd0c9350.system.entry.js} +1 -1
  446. package/dist/ionic/p-df862603.entry.js +4 -0
  447. package/dist/ionic/{p-d1d88a4a.entry.js → p-e1bbacb7.entry.js} +1 -1
  448. package/dist/ionic/{p-0445f081.system.entry.js → p-e265ae18.system.entry.js} +1 -1
  449. package/dist/ionic/{p-b0dce4ab.system.entry.js → p-e2e19375.system.entry.js} +1 -1
  450. package/dist/ionic/p-e308de5b.system.js +4 -0
  451. package/dist/ionic/{p-a4a2420e.system.entry.js → p-e456ee59.system.entry.js} +1 -1
  452. package/dist/ionic/{p-b3c60433.system.js → p-e8232807.system.js} +1 -1
  453. package/dist/ionic/{p-15e76dd1.entry.js → p-e8f34871.entry.js} +1 -1
  454. package/dist/ionic/{p-ef2b566d.entry.js → p-e97a3f44.entry.js} +1 -1
  455. package/dist/ionic/{p-d8a385f2.system.entry.js → p-ed75fcfb.system.entry.js} +1 -1
  456. package/dist/ionic/{p-6b888f65.system.entry.js → p-f301a694.system.entry.js} +1 -1
  457. package/dist/ionic/{p-e76dae93.entry.js → p-f42743d1.entry.js} +1 -1
  458. package/dist/ionic/{p-28706c6f.js → p-f5035354.js} +1 -1
  459. package/dist/ionic/{p-343b6b1d.system.js → p-f687573e.system.js} +1 -1
  460. package/dist/ionic/{p-03692b8d.system.entry.js → p-f78af648.system.entry.js} +1 -1
  461. package/dist/ionic/{p-63b0abde.system.entry.js → p-f89cf011.system.entry.js} +1 -1
  462. package/dist/ionic/{p-7b9a2b23.entry.js → p-fca17935.entry.js} +1 -1
  463. package/dist/ionic/{p-ed059cb7.system.entry.js → p-fca6ef5f.system.entry.js} +1 -1
  464. package/dist/ionic/p-ff4b7e40.system.js +4 -0
  465. package/dist/ionic/{p-f03b3a76.system.entry.js → p-ffc48bc5.system.entry.js} +1 -1
  466. package/dist/types/components/checkbox/checkbox.d.ts +0 -6
  467. package/dist/types/components/modal/animations/sheet.d.ts +0 -1
  468. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  469. package/dist/types/components/modal/modal-interface.d.ts +0 -1
  470. package/dist/types/components/modal/modal.d.ts +0 -11
  471. package/dist/types/components/radio-group/radio-group.d.ts +0 -15
  472. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  473. package/dist/types/components/select/select.d.ts +0 -6
  474. package/dist/types/components/toggle/toggle.d.ts +0 -6
  475. package/dist/types/components/toolbar/toolbar.d.ts +0 -4
  476. package/dist/types/components.d.ts +0 -48
  477. package/dist/types/utils/config.d.ts +0 -9
  478. package/dist/types/utils/helpers.d.ts +1 -0
  479. package/dist/types/utils/logging/index.d.ts +1 -13
  480. package/hydrate/index.js +219 -428
  481. package/hydrate/index.mjs +219 -428
  482. package/package.json +3 -3
  483. package/dist/collection/components/radio-group/radio-group.ios.css +0 -202
  484. package/dist/collection/components/radio-group/radio-group.md.css +0 -202
  485. package/dist/esm-es5/index-6ad967f3.js +0 -4
  486. package/dist/esm-es5/input-shims-2fd7c6ef.js +0 -4
  487. package/dist/esm-es5/md.transition-571b3859.js +0 -4
  488. package/dist/esm-es5/status-tap-79eac0ac.js +0 -4
  489. package/dist/ionic/p-073b47c8.system.entry.js +0 -4
  490. package/dist/ionic/p-0af823e1.js +0 -4
  491. package/dist/ionic/p-116f21ad.entry.js +0 -4
  492. package/dist/ionic/p-13966709.entry.js +0 -4
  493. package/dist/ionic/p-4c2d5b80.system.js +0 -4
  494. package/dist/ionic/p-4c98e2cf.system.js +0 -4
  495. package/dist/ionic/p-58fff30e.entry.js +0 -4
  496. package/dist/ionic/p-67222c16.system.js +0 -4
  497. package/dist/ionic/p-6c95736e.entry.js +0 -4
  498. package/dist/ionic/p-702bc67d.entry.js +0 -4
  499. package/dist/ionic/p-72bc8a1c.js +0 -4
  500. package/dist/ionic/p-7513b0c4.js +0 -4
  501. package/dist/ionic/p-9343a445.js +0 -4
  502. package/dist/ionic/p-9fd14430.system.entry.js +0 -4
  503. package/dist/ionic/p-a3db8ee3.js +0 -4
  504. package/dist/ionic/p-c5d5571d.system.entry.js +0 -4
  505. package/dist/ionic/p-d1c5b60e.system.js +0 -4
  506. package/dist/ionic/p-e8d56122.js +0 -4
  507. package/dist/ionic/p-eb027b33.entry.js +0 -4
  508. package/dist/ionic/p-edbf38cf.entry.js +0 -4
  509. package/dist/ionic/p-ef67a752.entry.js +0 -4
  510. package/dist/ionic/p-efe06d98.entry.js +0 -4
package/hydrate/index.js CHANGED
@@ -2710,6 +2710,16 @@ const shallowEqualStringMap = (map1, map2) => {
2710
2710
  }
2711
2711
  return true;
2712
2712
  };
2713
+ const getNextSiblingOfType = (element) => {
2714
+ let sibling = element.nextSibling;
2715
+ while (sibling) {
2716
+ if (sibling.nodeType === Node.ELEMENT_NODE && sibling !== null) {
2717
+ return sibling;
2718
+ }
2719
+ sibling = sibling.nextSibling;
2720
+ }
2721
+ return null;
2722
+ };
2713
2723
 
2714
2724
  /* Ionicons v7.2.2, ES Modules */
2715
2725
  const arrowBackSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path stroke-linecap='square' stroke-miterlimit='10' stroke-width='48' d='M244 400L100 256l144-144M120 256h292' class='ionicon-fill-none'/></svg>";
@@ -3217,12 +3227,9 @@ let accordionIds = 0;
3217
3227
  * @param message - The string message to be logged to the console.
3218
3228
  */
3219
3229
  const printIonWarning = (message, ...params) => {
3220
- const logLevel = config.get('logLevel', "WARN" /* LogLevel.WARN */);
3221
- if (["WARN" /* LogLevel.WARN */].includes(logLevel)) {
3222
- return console.warn(`[Ionic Warning]: ${message}`, ...params);
3223
- }
3230
+ return console.warn(`[Ionic Warning]: ${message}`, ...params);
3224
3231
  };
3225
- /**
3232
+ /*
3226
3233
  * Logs an error to the console with an Ionic prefix
3227
3234
  * to indicate the library that is warning the developer.
3228
3235
  *
@@ -3230,10 +3237,7 @@ const printIonWarning = (message, ...params) => {
3230
3237
  * @param params - Additional arguments to supply to the console.error.
3231
3238
  */
3232
3239
  const printIonError = (message, ...params) => {
3233
- const logLevel = config.get('logLevel', "ERROR" /* LogLevel.ERROR */);
3234
- if (["ERROR" /* LogLevel.ERROR */, "WARN" /* LogLevel.WARN */].includes(logLevel)) {
3235
- return console.error(`[Ionic Error]: ${message}`, ...params);
3236
- }
3240
+ return console.error(`[Ionic Error]: ${message}`, ...params);
3237
3241
  };
3238
3242
  /**
3239
3243
  * Prints an error informing developers that an implementation requires an element to be used
@@ -8497,7 +8501,6 @@ class Checkbox {
8497
8501
  this.labelPlacement = 'start';
8498
8502
  this.justify = undefined;
8499
8503
  this.alignment = undefined;
8500
- this.required = false;
8501
8504
  }
8502
8505
  componentWillLoad() {
8503
8506
  this.inheritedAttributes = Object.assign({}, inheritAriaAttributes(this.el));
@@ -8509,11 +8512,11 @@ class Checkbox {
8509
8512
  }
8510
8513
  }
8511
8514
  render() {
8512
- const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment, required, } = this;
8515
+ const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment, } = this;
8513
8516
  const mode = getIonMode$1(this);
8514
8517
  const path = getSVGPath(mode, indeterminate);
8515
8518
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
8516
- return (hAsync(Host, { key: '07a5884062dd256b570e856270c74a5a09d2f2a5', "aria-checked": indeterminate ? 'mixed' : `${checked}`, class: createColorClasses$1(color, {
8519
+ return (hAsync(Host, { key: '6dc787e1100521d08c4900104e1a3e2f594e919f', "aria-checked": indeterminate ? 'mixed' : `${checked}`, class: createColorClasses$1(color, {
8517
8520
  [mode]: true,
8518
8521
  'in-item': hostContext('ion-item', el),
8519
8522
  'checkbox-checked': checked,
@@ -8523,10 +8526,10 @@ class Checkbox {
8523
8526
  [`checkbox-justify-${justify}`]: justify !== undefined,
8524
8527
  [`checkbox-alignment-${alignment}`]: alignment !== undefined,
8525
8528
  [`checkbox-label-placement-${labelPlacement}`]: true,
8526
- }), onClick: this.onClick }, hAsync("label", { key: '3439d546e8b60187421db698eab63a0bdd31c973', class: "checkbox-wrapper" }, hAsync("input", Object.assign({ key: '9f45cf7dbdedcf01ec132c11e16979adb1aa102f', 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: '4e882f98939cc4b7c7ab7459c751d3f4bb2023fe', class: {
8529
+ }), onClick: this.onClick }, hAsync("label", { key: '68222fb736a5ec3f2e488649b0e2ce0417dcb224', class: "checkbox-wrapper" }, hAsync("input", Object.assign({ key: 'f12962d7e9b19c744cfdbdeccc67ae7f5d080281', type: "checkbox", checked: checked ? true : undefined, disabled: disabled, id: inputId, onChange: this.toggleChecked, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl) }, inheritedAttributes)), hAsync("div", { key: 'c72df2699414b1e5a41a1bc267bc634f0c93dcff', class: {
8527
8530
  'label-text-wrapper': true,
8528
8531
  'label-text-wrapper-hidden': el.textContent === '',
8529
- }, part: "label" }, hAsync("slot", { key: '0abda81297a086d02c4a56af75005547971dfcfe' })), hAsync("div", { key: '36489ea3f48a7d0ec46b77c243f9f253ef5c2b3b', class: "native-wrapper" }, hAsync("svg", { key: '4c53b52f5e93752672a34eb6f180b75fa9af9046', class: "checkbox-icon", viewBox: "0 0 24 24", part: "container" }, path)))));
8532
+ }, part: "label" }, hAsync("slot", { key: 'a2a80285178a7e0e3b536fc9ca26b8b444aa4307' })), hAsync("div", { key: 'c2b05e0d1fe8df5dcd72858220b5ff51ecaee4cc', class: "native-wrapper" }, hAsync("svg", { key: 'ee24913fded72258ebd9713654a6dba92a18fcf7', class: "checkbox-icon", viewBox: "0 0 24 24", part: "container" }, path)))));
8530
8533
  }
8531
8534
  getSVGPath(mode, indeterminate) {
8532
8535
  let path = indeterminate ? (hAsync("path", { d: "M6 12L18 12", part: "mark" })) : (hAsync("path", { d: "M5.9,12.5l3.8,3.8l8.8-8.8", part: "mark" }));
@@ -8553,7 +8556,6 @@ class Checkbox {
8553
8556
  "labelPlacement": [1, "label-placement"],
8554
8557
  "justify": [1],
8555
8558
  "alignment": [1],
8556
- "required": [4],
8557
8559
  "setFocus": [64]
8558
8560
  },
8559
8561
  "$listeners$": undefined,
@@ -15901,11 +15903,11 @@ class ItemDivider {
15901
15903
  }
15902
15904
  render() {
15903
15905
  const mode = getIonMode$1(this);
15904
- return (hAsync(Host, { key: '7cb307fb16d74eac6138460aad469d8aa2cb44aa', class: createColorClasses$1(this.color, {
15906
+ return (hAsync(Host, { key: '6cff318230a9b2a9db529df154285d3dd9822efe', class: createColorClasses$1(this.color, {
15905
15907
  [mode]: true,
15906
15908
  'item-divider-sticky': this.sticky,
15907
15909
  item: true,
15908
- }) }, hAsync("slot", { key: '0f3e94dfa849350b9863d7fc4b68cb5cf1b3e205', name: "start" }), hAsync("div", { key: '3a806bbd2a569890a91c54fec6fe9cd6e69ec924', class: "item-divider-inner" }, hAsync("div", { key: '41df8574ba468669dd136a282195f281c4d181ff', class: "item-divider-wrapper" }, hAsync("slot", { key: '1e30568d695bc42595a71232a1baac6d9e8a598d' })), hAsync("slot", { key: '6f8e6b6fb3216bb1f1ac738931e3ba16654ca8d7', name: "end" }))));
15910
+ }) }, hAsync("slot", { key: 'eb50dfab74ab0fd13697db17ecd60e8fa0bf1750', name: "start" }), hAsync("div", { key: '2806efd89d086f4fb844a479d9c095e1e0775713', class: "item-divider-inner" }, hAsync("div", { key: '77b7d5fa987e5f1c26d8023cd1f974a8a263a3de', class: "item-divider-wrapper" }, hAsync("slot", { key: 'dbafb0deb140a19a2a9748fd5b48760c39c6fd2e' })), hAsync("slot", { key: 'ef9a848fe21e84ef21cd273b8a4d9f95f558175b', name: "end" }))));
15909
15911
  }
15910
15912
  get el() { return getElement(this); }
15911
15913
  static get style() { return {
@@ -15937,7 +15939,7 @@ class ItemGroup {
15937
15939
  }
15938
15940
  render() {
15939
15941
  const mode = getIonMode$1(this);
15940
- return (hAsync(Host, { key: 'a95b74fed5ce0888eca195ed718f7bfaa53fa86c', role: "group", class: {
15942
+ return (hAsync(Host, { key: 'f9ffe0290d3fa546494fe55f952d8554f2a8abf8', role: "group", class: {
15941
15943
  [mode]: true,
15942
15944
  // Used internally for styling
15943
15945
  [`item-group-${mode}`]: true,
@@ -16005,12 +16007,12 @@ class ItemOption {
16005
16007
  href: this.href,
16006
16008
  target: this.target,
16007
16009
  };
16008
- return (hAsync(Host, { key: 'a5acf613ba8d0906abfb08a5865df845f7c82373', onClick: this.onClick, class: createColorClasses$1(this.color, {
16010
+ return (hAsync(Host, { key: '89310624997821858c1abde60c0ffb142ca466e0', onClick: this.onClick, class: createColorClasses$1(this.color, {
16009
16011
  [mode]: true,
16010
16012
  'item-option-disabled': disabled,
16011
16013
  'item-option-expandable': expandable,
16012
16014
  'ion-activatable': true,
16013
- }) }, hAsync(TagType, Object.assign({ key: 'cc0100d587cc4ba680d926d4754511c40a7b41be' }, attrs, { class: "button-native", part: "native", disabled: disabled }), hAsync("span", { key: 'bf2409257aec9994e5dd8e31ec40ada61970dd46', class: "button-inner" }, hAsync("slot", { key: 'c8cc3a3ffa5d586978860c3a6744232d8cb209c8', name: "top" }), hAsync("div", { key: '09fd76f4e25bb174540c68e67617b1676ea3039a', class: "horizontal-wrapper" }, hAsync("slot", { key: 'c9228eb1219a3130825bce989fb9ed40f3b4060b', name: "start" }), hAsync("slot", { key: '5afa4950062d8dafbe07073ecb49a3f3bb9ef840', name: "icon-only" }), hAsync("slot", { key: '25a2b5c35c83e617cfeba3d261c00505af5eb10c' }), hAsync("slot", { key: 'ac11cc02e44a335288d8f7d8ad4a7f09156f57b8', name: "end" })), hAsync("slot", { key: '45b086ba9a8ba1ee3e8f2f1b581120cabca80dc4', name: "bottom" })), mode === 'md' && hAsync("ion-ripple-effect", { key: '4def7e98ac861c98da78e3b47c9cdb17f1126a68' }))));
16015
+ }) }, hAsync(TagType, Object.assign({ key: 'e4dfbb3048eed03a7f7e84c6f75545e0ca9b45fb' }, attrs, { class: "button-native", part: "native", disabled: disabled }), hAsync("span", { key: 'dffcf437fbdc15f2e7a19e60a015e90c73c8377d', class: "button-inner" }, hAsync("slot", { key: '48a23512e0601e062118d8b2c46c8bb96f25509f', name: "top" }), hAsync("div", { key: '952a9a9aa3a476aa1f4408d7e208bf9e916b8c30', class: "horizontal-wrapper" }, hAsync("slot", { key: 'f8d18a61c1ecec4a22a55443cf72bbc51383b64f', name: "start" }), hAsync("slot", { key: '1f9f219e6f879d2e0bf6d80cf0d3f518eb14ce0e', name: "icon-only" }), hAsync("slot", { key: 'a55adcdbe68131e5b1855c2dd45dd9454ab544fb' }), hAsync("slot", { key: '3c4c85a4fbb7efc797d8bc5adf6d238da022ff9f', name: "end" })), hAsync("slot", { key: '503c7e4b306745c523f57f24399ea06ba9b1e21d', name: "bottom" })), mode === 'md' && hAsync("ion-ripple-effect", { key: 'b0e270b0c4f3ff9f9b6d74bad12a9278d7633226' }))));
16014
16016
  }
16015
16017
  get el() { return getElement(this); }
16016
16018
  static get style() { return {
@@ -16057,7 +16059,7 @@ class ItemOptions {
16057
16059
  render() {
16058
16060
  const mode = getIonMode$1(this);
16059
16061
  const isEnd = isEndSide(this.side);
16060
- return (hAsync(Host, { key: 'e73d542ea800d953373c478b287f90bac63c4a29', class: {
16062
+ return (hAsync(Host, { key: '6d91399d2aaaa81d514d0bbc8dffe53eeec25d36', class: {
16061
16063
  [mode]: true,
16062
16064
  // Used internally for styling
16063
16065
  [`item-options-${mode}`]: true,
@@ -16519,7 +16521,7 @@ class ItemSliding {
16519
16521
  }
16520
16522
  render() {
16521
16523
  const mode = getIonMode$1(this);
16522
- return (hAsync(Host, { key: 'b88f1f7cd0a5625dbccc0ee0f771c79a1338c5c8', class: {
16524
+ return (hAsync(Host, { key: '47a3edd2ef2080ed9cfc2784277dea09785c7dc4', class: {
16523
16525
  [mode]: true,
16524
16526
  'item-sliding-active-slide': this.state !== 2 /* SlidingState.Disabled */,
16525
16527
  'item-sliding-active-options-end': (this.state & 8 /* SlidingState.End */) !== 0,
@@ -16628,13 +16630,13 @@ class Label {
16628
16630
  render() {
16629
16631
  const position = this.position;
16630
16632
  const mode = getIonMode$1(this);
16631
- return (hAsync(Host, { key: 'aa8cda765cf7813b02adbc39cff7dec21fc2d730', class: createColorClasses$1(this.color, {
16633
+ return (hAsync(Host, { key: '6353a70565ef6fbbbf4042b000e536c61bcf99a9', class: createColorClasses$1(this.color, {
16632
16634
  [mode]: true,
16633
16635
  'in-item-color': hostContext('ion-item.ion-color', this.el),
16634
16636
  [`label-${position}`]: position !== undefined,
16635
16637
  [`label-no-animate`]: this.noAnimate,
16636
16638
  'label-rtl': document.dir === 'rtl',
16637
- }) }, hAsync("slot", { key: '297af5559f2ccb3b2d06ea00e074aa96c3e5235c' })));
16639
+ }) }, hAsync("slot", { key: '6ef9c2758c0168442aa84941af0a6cec1ef1ec21' })));
16638
16640
  }
16639
16641
  get el() { return getElement(this); }
16640
16642
  static get watchers() { return {
@@ -16736,10 +16738,10 @@ class ListHeader {
16736
16738
  render() {
16737
16739
  const { lines } = this;
16738
16740
  const mode = getIonMode$1(this);
16739
- return (hAsync(Host, { key: 'f6e2de02ec55e3c64d129a52fb154e9d4e36ea98', class: createColorClasses$1(this.color, {
16741
+ return (hAsync(Host, { key: 'fb78bd8601cbd7b90ec84a96e0c8325be1132b1e', class: createColorClasses$1(this.color, {
16740
16742
  [mode]: true,
16741
16743
  [`list-header-lines-${lines}`]: lines !== undefined,
16742
- }) }, hAsync("div", { key: 'a38b47618205ccdd76bb8e406e37522b1c087780', class: "list-header-inner" }, hAsync("slot", { key: '5afd06a7fbdf06bef5b7b27723515133fae66004' }))));
16744
+ }) }, hAsync("div", { key: '2580ad49f3a54973e15f14d645a1e55a6fa066ac', class: "list-header-inner" }, hAsync("slot", { key: '677b2e2ec8eeb3ae6ad329e86c76451cf3ae6c2f' }))));
16743
16745
  }
16744
16746
  static get style() { return {
16745
16747
  ios: IonListHeaderIosStyle0,
@@ -17008,9 +17010,9 @@ class Loading {
17008
17010
  * Otherwise, don't set aria-labelledby.
17009
17011
  */
17010
17012
  const ariaLabelledBy = message !== undefined ? msgId : null;
17011
- return (hAsync(Host, Object.assign({ key: '016c85ddadecf0f7e50912d42301e2b4ba940709', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
17013
+ return (hAsync(Host, Object.assign({ key: 'd97f536b7f443ea19a2bbf2dcbc7f546b8e0a092', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
17012
17014
  zIndex: `${40000 + this.overlayIndex}`,
17013
- }, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), hAsync("ion-backdrop", { key: 'ffe727b8b32d635d21c625681b6048c42db9976b', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: '0945a45abe13968854ead32235522a6f7d60ac28', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: '0c0fd2a371250e0b49781c76147ee7a9c455dc9b', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (hAsync("div", { key: 'f78773f16ae5fbfdc1c7a98d70ac8eb1f71c7526', class: "loading-spinner" }, hAsync("ion-spinner", { key: '6381b30b3bde40f8bf39719f231679a72c2058ef', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), hAsync("div", { key: '1d3ae05e6bb80756655c110c3332150c721963c3', tabindex: "0", "aria-hidden": "true" })));
17015
+ }, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), hAsync("ion-backdrop", { key: '6cd39bd7912fd080ab59d041644054c96d238ea9', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: 'c14ca5a9308844f11bcb010257e15208a75b39bc', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: '118bceefa8e1cf8b225a858f224e6d919cf03c26', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (hAsync("div", { key: '490d6e8ae4433835fe273162d7b90deab944fb39', class: "loading-spinner" }, hAsync("ion-spinner", { key: 'c5cf6549c43df4cb23814b3e62ec4d9e7ea2b64f', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), hAsync("div", { key: '2b888362122d3b66b0492d53b0c21bd6a2a97501', tabindex: "0", "aria-hidden": "true" })));
17014
17016
  }
17015
17017
  get el() { return getElement(this); }
17016
17018
  static get watchers() { return {
@@ -18018,14 +18020,14 @@ class Menu {
18018
18020
  * the ionBackButton listener in the menu controller
18019
18021
  * will handle closing the menu when Escape is pressed.
18020
18022
  */
18021
- return (hAsync(Host, { key: 'e67a2f0596e27d7ddf9ef4b65b14cc1b6d1572d2', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
18023
+ return (hAsync(Host, { key: 'da96fdb4c5ddf60e615cc4cdda7ccdb3fd7e089b', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
18022
18024
  [mode]: true,
18023
18025
  [`menu-type-${type}`]: true,
18024
18026
  'menu-enabled': !disabled,
18025
18027
  [`menu-side-${side}`]: true,
18026
18028
  'menu-pane-visible': isPaneVisible,
18027
18029
  'split-pane-side': hostContext('ion-split-pane', el),
18028
- } }, hAsync("div", { key: '976d3e7f93bc7946e835ddedc1645f2f83544c6c', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, hAsync("slot", { key: 'e26aea346260736210604815139138f1c602add7' })), hAsync("ion-backdrop", { key: '7d27b0d2f01b2bd3dc3b3342e79c9207c82b1356', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
18030
+ } }, hAsync("div", { key: '894e680fe227534711128c7aca980964ddb5a08a', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, hAsync("slot", { key: 'e9f5934518dc0cceaeadf1f2820614595fec6bc9' })), hAsync("ion-backdrop", { key: '7282077817657b1bb6c155f1404c0a519fece993', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
18029
18031
  }
18030
18032
  get el() { return getElement(this); }
18031
18033
  static get watchers() { return {
@@ -18128,7 +18130,7 @@ class MenuButton {
18128
18130
  type: this.type,
18129
18131
  };
18130
18132
  const ariaLabel = inheritedAttributes['aria-label'] || 'menu';
18131
- return (hAsync(Host, { key: 'a2b925ae91161c18e95d2cb94f32ae7f9df60186', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses$1(color, {
18133
+ return (hAsync(Host, { key: '7ec29715ce7926b7c2b08f3d9cac8aaa16b3dc28', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses$1(color, {
18132
18134
  [mode]: true,
18133
18135
  button: true, // ion-buttons target .button
18134
18136
  'menu-button-hidden': hidden,
@@ -18137,7 +18139,7 @@ class MenuButton {
18137
18139
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
18138
18140
  'ion-activatable': true,
18139
18141
  'ion-focusable': true,
18140
- }) }, hAsync("button", Object.assign({ key: '50335dd8aec7567cc9f7132a8583f3cd82398880' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), hAsync("span", { key: '9f2ec8f6c7994c0fb5441ee104e42efde0795f38', class: "button-inner" }, hAsync("slot", { key: '00c044e0a9fb96761e8cff59cd0dbf5e4440f8e9' }, hAsync("ion-icon", { key: 'dc7c8c15f3a483c78dbf831dc9cd1bfd0c418ca2', part: "icon", icon: menuIcon, mode: mode, lazy: false, "aria-hidden": "true" }))), mode === 'md' && hAsync("ion-ripple-effect", { key: '733f0a1e0d6a145cfe405b73ebc68e1b0522aca5', type: "unbounded" }))));
18142
+ }) }, hAsync("button", Object.assign({ key: 'd4c5929264af3ba0328118bcc27d2ab7ef5d3809' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), hAsync("span", { key: '7bfa6e9a93105486623d044861e879ec79ff64f1', class: "button-inner" }, hAsync("slot", { key: '071ab58e285832fc188706166f5547d45d501ac5' }, hAsync("ion-icon", { key: '918ec5d791921de9821c347af4f65f97dd94aabf', part: "icon", icon: menuIcon, mode: mode, lazy: false, "aria-hidden": "true" }))), mode === 'md' && hAsync("ion-ripple-effect", { key: '00ffdd53f635e706c1dbd01b8e7944498650fe81', type: "unbounded" }))));
18141
18143
  }
18142
18144
  get el() { return getElement(this); }
18143
18145
  static get style() { return {
@@ -18186,10 +18188,10 @@ class MenuToggle {
18186
18188
  render() {
18187
18189
  const mode = getIonMode$1(this);
18188
18190
  const hidden = this.autoHide && !this.visible;
18189
- return (hAsync(Host, { key: 'bc1dfcc3a4d677e31d5b962567122c1912354dd3', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
18191
+ return (hAsync(Host, { key: '7c27ea5b0795676bf5cb33e1f83aa142c197f64e', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
18190
18192
  [mode]: true,
18191
18193
  'menu-toggle-hidden': hidden,
18192
- } }, hAsync("slot", { key: '4b2c290cbe8fd222249ea1e85c5f93fb9ab368f8' })));
18194
+ } }, hAsync("slot", { key: '69f187becedc0fe34603d41d279f043cf0fdf776' })));
18193
18195
  }
18194
18196
  static get style() { return IonMenuToggleStyle0; }
18195
18197
  static get cmpMeta() { return {
@@ -19029,7 +19031,7 @@ const computeDuration = (remaining, velocity) => {
19029
19031
  };
19030
19032
 
19031
19033
  const createSheetEnterAnimation = (opts) => {
19032
- const { currentBreakpoint, backdropBreakpoint, expandToScroll } = opts;
19034
+ const { currentBreakpoint, backdropBreakpoint } = opts;
19033
19035
  /**
19034
19036
  * If the backdropBreakpoint is undefined, then the backdrop
19035
19037
  * should always fade in. If the backdropBreakpoint came before the
@@ -19049,16 +19051,7 @@ const createSheetEnterAnimation = (opts) => {
19049
19051
  { offset: 0, opacity: 1, transform: 'translateY(100%)' },
19050
19052
  { offset: 1, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
19051
19053
  ]);
19052
- /**
19053
- * This allows the content to be scrollable at any breakpoint.
19054
- */
19055
- const contentAnimation = !expandToScroll
19056
- ? createAnimation('contentAnimation').keyframes([
19057
- { offset: 0, opacity: 1, maxHeight: `${(1 - currentBreakpoint) * 100}%` },
19058
- { offset: 1, opacity: 1, maxHeight: `${currentBreakpoint * 100}%` },
19059
- ])
19060
- : undefined;
19061
- return { wrapperAnimation, backdropAnimation, contentAnimation };
19054
+ return { wrapperAnimation, backdropAnimation };
19062
19055
  };
19063
19056
  const createSheetLeaveAnimation = (opts) => {
19064
19057
  const { currentBreakpoint, backdropBreakpoint } = opts;
@@ -19093,68 +19086,22 @@ const createEnterAnimation$1 = () => {
19093
19086
  })
19094
19087
  .afterClearStyles(['pointer-events']);
19095
19088
  const wrapperAnimation = createAnimation().fromTo('transform', 'translateY(100vh)', 'translateY(0vh)');
19096
- return { backdropAnimation, wrapperAnimation, contentAnimation: undefined };
19089
+ return { backdropAnimation, wrapperAnimation };
19097
19090
  };
19098
19091
  /**
19099
19092
  * iOS Modal Enter Animation for the Card presentation style
19100
19093
  */
19101
19094
  const iosEnterAnimation$3 = (baseEl, opts) => {
19102
- const { presentingEl, currentBreakpoint, expandToScroll } = opts;
19095
+ const { presentingEl, currentBreakpoint } = opts;
19103
19096
  const root = getElementRoot(baseEl);
19104
- const { wrapperAnimation, backdropAnimation, contentAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation$1();
19097
+ const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation$1();
19105
19098
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
19106
19099
  wrapperAnimation.addElement(root.querySelectorAll('.modal-wrapper, .modal-shadow')).beforeStyles({ opacity: 1 });
19107
- // The content animation is only added if scrolling is enabled for
19108
- // all the breakpoints.
19109
- !expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
19110
19100
  const baseAnimation = createAnimation('entering-base')
19111
19101
  .addElement(baseEl)
19112
19102
  .easing('cubic-bezier(0.32,0.72,0,1)')
19113
19103
  .duration(500)
19114
- .addAnimation([wrapperAnimation])
19115
- .beforeAddWrite(() => {
19116
- if (expandToScroll) {
19117
- // Scroll can only be done when the modal is fully expanded.
19118
- return;
19119
- }
19120
- /**
19121
- * There are some browsers that causes flickering when
19122
- * dragging the content when scroll is enabled at every
19123
- * breakpoint. This is due to the wrapper element being
19124
- * transformed off the screen and having a snap animation.
19125
- *
19126
- * A workaround is to clone the footer element and append
19127
- * it outside of the wrapper element. This way, the footer
19128
- * is still visible and the drag can be done without
19129
- * flickering. The original footer is hidden until the modal
19130
- * is dismissed. This maintains the animation of the footer
19131
- * when the modal is dismissed.
19132
- *
19133
- * The workaround needs to be done before the animation starts
19134
- * so there are no flickering issues.
19135
- */
19136
- const ionFooter = baseEl.querySelector('ion-footer');
19137
- /**
19138
- * This check is needed to prevent more than one footer
19139
- * from being appended to the shadow root.
19140
- * Otherwise, iOS and MD enter animations would append
19141
- * the footer twice.
19142
- */
19143
- const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
19144
- if (ionFooter && !ionFooterAlreadyAppended) {
19145
- const footerHeight = ionFooter.clientHeight;
19146
- const clonedFooter = ionFooter.cloneNode(true);
19147
- baseEl.shadowRoot.appendChild(clonedFooter);
19148
- ionFooter.style.setProperty('display', 'none');
19149
- ionFooter.setAttribute('aria-hidden', 'true');
19150
- // Padding is added to prevent some content from being hidden.
19151
- const page = baseEl.querySelector('.ion-page');
19152
- page.style.setProperty('padding-bottom', `${footerHeight}px`);
19153
- }
19154
- });
19155
- if (contentAnimation) {
19156
- baseAnimation.addAnimation(contentAnimation);
19157
- }
19104
+ .addAnimation(wrapperAnimation);
19158
19105
  if (presentingEl) {
19159
19106
  const isMobile = window.innerWidth < 768;
19160
19107
  const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
@@ -19232,7 +19179,7 @@ const createLeaveAnimation$1 = () => {
19232
19179
  * iOS Modal Leave Animation
19233
19180
  */
19234
19181
  const iosLeaveAnimation$3 = (baseEl, opts, duration = 500) => {
19235
- const { presentingEl, currentBreakpoint, expandToScroll } = opts;
19182
+ const { presentingEl, currentBreakpoint } = opts;
19236
19183
  const root = getElementRoot(baseEl);
19237
19184
  const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation$1();
19238
19185
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
@@ -19241,29 +19188,7 @@ const iosLeaveAnimation$3 = (baseEl, opts, duration = 500) => {
19241
19188
  .addElement(baseEl)
19242
19189
  .easing('cubic-bezier(0.32,0.72,0,1)')
19243
19190
  .duration(duration)
19244
- .addAnimation(wrapperAnimation)
19245
- .beforeAddWrite(() => {
19246
- if (expandToScroll) {
19247
- // Scroll can only be done when the modal is fully expanded.
19248
- return;
19249
- }
19250
- /**
19251
- * If expandToScroll is disabled, we need to swap
19252
- * the visibility to the original, so the footer
19253
- * dismisses with the modal and doesn't stay
19254
- * until the modal is removed from the DOM.
19255
- */
19256
- const ionFooter = baseEl.querySelector('ion-footer');
19257
- if (ionFooter) {
19258
- const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
19259
- ionFooter.style.removeProperty('display');
19260
- ionFooter.removeAttribute('aria-hidden');
19261
- clonedFooter.style.setProperty('display', 'none');
19262
- clonedFooter.setAttribute('aria-hidden', 'true');
19263
- const page = baseEl.querySelector('.ion-page');
19264
- page.style.removeProperty('padding-bottom');
19265
- }
19266
- });
19191
+ .addAnimation(wrapperAnimation);
19267
19192
  if (presentingEl) {
19268
19193
  const isMobile = window.innerWidth < 768;
19269
19194
  const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
@@ -19341,69 +19266,22 @@ const createEnterAnimation = () => {
19341
19266
  { offset: 0, opacity: 0.01, transform: 'translateY(40px)' },
19342
19267
  { offset: 1, opacity: 1, transform: `translateY(0px)` },
19343
19268
  ]);
19344
- return { backdropAnimation, wrapperAnimation, contentAnimation: undefined };
19269
+ return { backdropAnimation, wrapperAnimation };
19345
19270
  };
19346
19271
  /**
19347
19272
  * Md Modal Enter Animation
19348
19273
  */
19349
19274
  const mdEnterAnimation$2 = (baseEl, opts) => {
19350
- const { currentBreakpoint, expandToScroll } = opts;
19275
+ const { currentBreakpoint } = opts;
19351
19276
  const root = getElementRoot(baseEl);
19352
- const { wrapperAnimation, backdropAnimation, contentAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
19277
+ const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
19353
19278
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
19354
19279
  wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
19355
- // The content animation is only added if scrolling is enabled for
19356
- // all the breakpoints.
19357
- expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
19358
- const baseAnimation = createAnimation()
19280
+ return createAnimation()
19359
19281
  .addElement(baseEl)
19360
19282
  .easing('cubic-bezier(0.36,0.66,0.04,1)')
19361
19283
  .duration(280)
19362
- .addAnimation([backdropAnimation, wrapperAnimation])
19363
- .beforeAddWrite(() => {
19364
- if (expandToScroll) {
19365
- // Scroll can only be done when the modal is fully expanded.
19366
- return;
19367
- }
19368
- /**
19369
- * There are some browsers that causes flickering when
19370
- * dragging the content when scroll is enabled at every
19371
- * breakpoint. This is due to the wrapper element being
19372
- * transformed off the screen and having a snap animation.
19373
- *
19374
- * A workaround is to clone the footer element and append
19375
- * it outside of the wrapper element. This way, the footer
19376
- * is still visible and the drag can be done without
19377
- * flickering. The original footer is hidden until the modal
19378
- * is dismissed. This maintains the animation of the footer
19379
- * when the modal is dismissed.
19380
- *
19381
- * The workaround needs to be done before the animation starts
19382
- * so there are no flickering issues.
19383
- */
19384
- const ionFooter = baseEl.querySelector('ion-footer');
19385
- /**
19386
- * This check is needed to prevent more than one footer
19387
- * from being appended to the shadow root.
19388
- * Otherwise, iOS and MD enter animations would append
19389
- * the footer twice.
19390
- */
19391
- const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
19392
- if (ionFooter && !ionFooterAlreadyAppended) {
19393
- const footerHeight = ionFooter.clientHeight;
19394
- const clonedFooter = ionFooter.cloneNode(true);
19395
- baseEl.shadowRoot.appendChild(clonedFooter);
19396
- ionFooter.style.setProperty('display', 'none');
19397
- ionFooter.setAttribute('aria-hidden', 'true');
19398
- // Padding is added to prevent some content from being hidden.
19399
- const page = baseEl.querySelector('.ion-page');
19400
- page.style.setProperty('padding-bottom', `${footerHeight}px`);
19401
- }
19402
- });
19403
- if (contentAnimation) {
19404
- baseAnimation.addAnimation(contentAnimation);
19405
- }
19406
- return baseAnimation;
19284
+ .addAnimation([backdropAnimation, wrapperAnimation]);
19407
19285
  };
19408
19286
 
19409
19287
  const createLeaveAnimation = () => {
@@ -19418,41 +19296,18 @@ const createLeaveAnimation = () => {
19418
19296
  * Md Modal Leave Animation
19419
19297
  */
19420
19298
  const mdLeaveAnimation$2 = (baseEl, opts) => {
19421
- const { currentBreakpoint, expandToScroll } = opts;
19299
+ const { currentBreakpoint } = opts;
19422
19300
  const root = getElementRoot(baseEl);
19423
19301
  const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation();
19424
19302
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
19425
19303
  wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
19426
- const baseAnimation = createAnimation()
19304
+ return createAnimation()
19427
19305
  .easing('cubic-bezier(0.47,0,0.745,0.715)')
19428
19306
  .duration(200)
19429
- .addAnimation([backdropAnimation, wrapperAnimation])
19430
- .beforeAddWrite(() => {
19431
- if (expandToScroll) {
19432
- // Scroll can only be done when the modal is fully expanded.
19433
- return;
19434
- }
19435
- /**
19436
- * If expandToScroll is disabled, we need to swap
19437
- * the visibility to the original, so the footer
19438
- * dismisses with the modal and doesn't stay
19439
- * until the modal is removed from the DOM.
19440
- */
19441
- const ionFooter = baseEl.querySelector('ion-footer');
19442
- if (ionFooter) {
19443
- const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
19444
- ionFooter.style.removeProperty('display');
19445
- ionFooter.removeAttribute('aria-hidden');
19446
- clonedFooter.style.setProperty('display', 'none');
19447
- clonedFooter.setAttribute('aria-hidden', 'true');
19448
- const page = baseEl.querySelector('.ion-page');
19449
- page.style.removeProperty('padding-bottom');
19450
- }
19451
- });
19452
- return baseAnimation;
19307
+ .addAnimation([backdropAnimation, wrapperAnimation]);
19453
19308
  };
19454
19309
 
19455
- const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], expandToScroll, getCurrentBreakpoint, onDismiss, onBreakpointChange) => {
19310
+ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], getCurrentBreakpoint, onDismiss, onBreakpointChange) => {
19456
19311
  // Defaults for the sheet swipe animation
19457
19312
  const defaultBackdrop = [
19458
19313
  { offset: 0, opacity: 'var(--backdrop-opacity)' },
@@ -19469,10 +19324,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19469
19324
  { offset: 1, transform: 'translateY(100%)' },
19470
19325
  ],
19471
19326
  BACKDROP_KEYFRAMES: backdropBreakpoint !== 0 ? customBackdrop : defaultBackdrop,
19472
- CONTENT_KEYFRAMES: [
19473
- { offset: 0, maxHeight: '100%' },
19474
- { offset: 1, maxHeight: '0%' },
19475
- ],
19476
19327
  };
19477
19328
  const contentEl = baseEl.querySelector('ion-content');
19478
19329
  const height = wrapperEl.clientHeight;
@@ -19480,11 +19331,10 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19480
19331
  let offset = 0;
19481
19332
  let canDismissBlocksGesture = false;
19482
19333
  const canDismissMaxStep = 0.95;
19483
- const maxBreakpoint = breakpoints[breakpoints.length - 1];
19484
- const minBreakpoint = breakpoints[0];
19485
19334
  const wrapperAnimation = animation.childAnimations.find((ani) => ani.id === 'wrapperAnimation');
19486
19335
  const backdropAnimation = animation.childAnimations.find((ani) => ani.id === 'backdropAnimation');
19487
- const contentAnimation = animation.childAnimations.find((ani) => ani.id === 'contentAnimation');
19336
+ const maxBreakpoint = breakpoints[breakpoints.length - 1];
19337
+ const minBreakpoint = breakpoints[0];
19488
19338
  const enableBackdrop = () => {
19489
19339
  baseEl.style.setProperty('pointer-events', 'auto');
19490
19340
  backdropEl.style.setProperty('pointer-events', 'auto');
@@ -19507,31 +19357,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19507
19357
  */
19508
19358
  baseEl.classList.add(FOCUS_TRAP_DISABLE_CLASS);
19509
19359
  };
19510
- /**
19511
- * Toggles the visible modal footer when `expandToScroll` is disabled.
19512
- * @param footer The footer to show.
19513
- */
19514
- const swapFooterVisibility = (footer) => {
19515
- const originalFooter = baseEl.querySelector('ion-footer');
19516
- if (!originalFooter) {
19517
- return;
19518
- }
19519
- const clonedFooter = wrapperEl.nextElementSibling;
19520
- const footerToHide = footer === 'original' ? clonedFooter : originalFooter;
19521
- const footerToShow = footer === 'original' ? originalFooter : clonedFooter;
19522
- footerToShow.style.removeProperty('display');
19523
- footerToShow.removeAttribute('aria-hidden');
19524
- const page = baseEl.querySelector('.ion-page');
19525
- if (footer === 'original') {
19526
- page.style.removeProperty('padding-bottom');
19527
- }
19528
- else {
19529
- const pagePadding = footerToShow.clientHeight;
19530
- page.style.setProperty('padding-bottom', `${pagePadding}px`);
19531
- }
19532
- footerToHide.style.setProperty('display', 'none');
19533
- footerToHide.setAttribute('aria-hidden', 'true');
19534
- };
19535
19360
  /**
19536
19361
  * After the entering animation completes,
19537
19362
  * we need to set the animation to go from
@@ -19543,7 +19368,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19543
19368
  if (wrapperAnimation && backdropAnimation) {
19544
19369
  wrapperAnimation.keyframes([...SheetDefaults.WRAPPER_KEYFRAMES]);
19545
19370
  backdropAnimation.keyframes([...SheetDefaults.BACKDROP_KEYFRAMES]);
19546
- contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.keyframes([...SheetDefaults.CONTENT_KEYFRAMES]);
19547
19371
  animation.progressStart(true, 1 - currentBreakpoint);
19548
19372
  /**
19549
19373
  * If backdrop is not enabled, then content
@@ -19560,7 +19384,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19560
19384
  disableBackdrop();
19561
19385
  }
19562
19386
  }
19563
- if (contentEl && currentBreakpoint !== maxBreakpoint && expandToScroll) {
19387
+ if (contentEl && currentBreakpoint !== maxBreakpoint) {
19564
19388
  contentEl.scrollY = false;
19565
19389
  }
19566
19390
  const canStart = (detail) => {
@@ -19574,13 +19398,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19574
19398
  */
19575
19399
  const contentEl = findClosestIonContent(detail.event.target);
19576
19400
  currentBreakpoint = getCurrentBreakpoint();
19577
- /**
19578
- * If we have expandToScroll disabled, we should not allow the swipe gesture to start
19579
- * if the content is being swiped.
19580
- */
19581
- if (!expandToScroll && contentEl) {
19582
- return false;
19583
- }
19584
19401
  if (currentBreakpoint === 1 && contentEl) {
19585
19402
  /**
19586
19403
  * The modal should never swipe to close on the content with a refresher.
@@ -19611,15 +19428,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19611
19428
  * Remove undefined check
19612
19429
  */
19613
19430
  canDismissBlocksGesture = baseEl.canDismiss !== undefined && baseEl.canDismiss !== true && minBreakpoint === 0;
19614
- /**
19615
- * If expandToScroll is disabled, we need to swap
19616
- * the footer visibility to the original, so if the modal
19617
- * is dismissed, the footer dismisses with the modal
19618
- * and doesn't stay on the screen after the modal is gone.
19619
- */
19620
- if (!expandToScroll) {
19621
- swapFooterVisibility('original');
19622
- }
19623
19431
  /**
19624
19432
  * If we are pulling down, then it is possible we are pulling on the content.
19625
19433
  * We do not want scrolling to happen at the same time as the gesture.
@@ -19735,19 +19543,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19735
19543
  opacity: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(snapToBreakpoint, backdropBreakpoint)})`,
19736
19544
  },
19737
19545
  ]);
19738
- if (contentAnimation) {
19739
- /**
19740
- * The modal content should scroll at any breakpoint when expandToScroll
19741
- * is disabled. In order to do this, the content needs to be completely
19742
- * viewable so scrolling can access everything. Otherwise, the default
19743
- * behavior would show the content off the screen and only allow
19744
- * scrolling when the sheet is fully expanded.
19745
- */
19746
- contentAnimation.keyframes([
19747
- { offset: 0, maxHeight: `${(1 - breakpointOffset) * 100}%` },
19748
- { offset: 1, maxHeight: `${snapToBreakpoint * 100}%` },
19749
- ]);
19750
- }
19751
19546
  animation.progressStep(0);
19752
19547
  }
19753
19548
  /**
@@ -19755,14 +19550,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19755
19550
  * snapping animation completes.
19756
19551
  */
19757
19552
  gesture.enable(false);
19758
- /**
19759
- * If expandToScroll is disabled, we need to swap
19760
- * the footer visibility to the cloned one so the footer
19761
- * doesn't flicker when the sheet's height is animated.
19762
- */
19763
- if (!expandToScroll && shouldRemainOpen) {
19764
- swapFooterVisibility('cloned');
19765
- }
19766
19553
  if (shouldPreventDismiss) {
19767
19554
  handleCanDismiss(baseEl, animation);
19768
19555
  }
@@ -19770,13 +19557,13 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19770
19557
  onDismiss();
19771
19558
  }
19772
19559
  /**
19773
- * Enables scrolling immediately if the sheet is about to fully expand
19774
- * or if it allows scrolling at any breakpoint. Without this, there would
19775
- * be a ~500ms delay while the modal animation completes, causing a
19776
- * noticeable lag. Native iOS allows scrolling as soon as the gesture is
19777
- * released, so we align with that behavior.
19560
+ * If the sheet is going to be fully expanded then we should enable
19561
+ * scrolling immediately. The sheet modal animation takes ~500ms to finish
19562
+ * so if we wait until then there is a visible delay for when scrolling is
19563
+ * re-enabled. Native iOS allows for scrolling on the sheet modal as soon
19564
+ * as the gesture is released, so we align with that.
19778
19565
  */
19779
- if (contentEl && (snapToBreakpoint === breakpoints[breakpoints.length - 1] || !expandToScroll)) {
19566
+ if (contentEl && snapToBreakpoint === breakpoints[breakpoints.length - 1]) {
19780
19567
  contentEl.scrollY = true;
19781
19568
  }
19782
19569
  return new Promise((resolve) => {
@@ -19794,7 +19581,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19794
19581
  raf(() => {
19795
19582
  wrapperAnimation.keyframes([...SheetDefaults.WRAPPER_KEYFRAMES]);
19796
19583
  backdropAnimation.keyframes([...SheetDefaults.BACKDROP_KEYFRAMES]);
19797
- contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.keyframes([...SheetDefaults.CONTENT_KEYFRAMES]);
19798
19584
  animation.progressStart(true, 1 - snapToBreakpoint);
19799
19585
  currentBreakpoint = snapToBreakpoint;
19800
19586
  onBreakpointChange(currentBreakpoint);
@@ -19847,10 +19633,10 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19847
19633
  };
19848
19634
  };
19849
19635
 
19850
- const modalIosCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.4)}:host(.modal-card),:host(.modal-sheet){--border-radius:10px}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:10px}}.modal-wrapper{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0)}@media screen and (max-width: 767px){@supports (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - max(30px, var(--ion-safe-area-top)) - 10px)}}@supports not (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - 40px)}}:host(.modal-card) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-card){--backdrop-opacity:0;--width:100%;-ms-flex-align:end;align-items:flex-end}:host(.modal-card) .modal-shadow{display:none}:host(.modal-card) ion-backdrop{pointer-events:none}}@media screen and (min-width: 768px){:host(.modal-card){--width:calc(100% - 120px);--height:calc(100% - (120px + var(--ion-safe-area-top) + var(--ion-safe-area-bottom)));--max-width:720px;--max-height:1000px;--backdrop-opacity:0;--box-shadow:0px 0px 30px 10px rgba(0, 0, 0, 0.1);-webkit-transition:all 0.5s ease-in-out;transition:all 0.5s ease-in-out}:host(.modal-card) .modal-wrapper{-webkit-box-shadow:none;box-shadow:none}:host(.modal-card) .modal-shadow{-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}}:host(.modal-sheet) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer ion-toolbar:first-of-type{padding-top:6px}";
19636
+ const modalIosCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.4)}:host(.modal-card),:host(.modal-sheet){--border-radius:10px}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:10px}}.modal-wrapper{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0)}@media screen and (max-width: 767px){@supports (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - max(30px, var(--ion-safe-area-top)) - 10px)}}@supports not (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - 40px)}}:host(.modal-card) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-card){--backdrop-opacity:0;--width:100%;-ms-flex-align:end;align-items:flex-end}:host(.modal-card) .modal-shadow{display:none}:host(.modal-card) ion-backdrop{pointer-events:none}}@media screen and (min-width: 768px){:host(.modal-card){--width:calc(100% - 120px);--height:calc(100% - (120px + var(--ion-safe-area-top) + var(--ion-safe-area-bottom)));--max-width:720px;--max-height:1000px;--backdrop-opacity:0;--box-shadow:0px 0px 30px 10px rgba(0, 0, 0, 0.1);-webkit-transition:all 0.5s ease-in-out;transition:all 0.5s ease-in-out}:host(.modal-card) .modal-wrapper{-webkit-box-shadow:none;box-shadow:none}:host(.modal-card) .modal-shadow{-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}}:host(.modal-sheet) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}";
19851
19637
  var IonModalIosStyle0 = modalIosCss;
19852
19638
 
19853
- const modalMdCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:2px;--box-shadow:0 28px 48px rgba(0, 0, 0, 0.4)}}.modal-wrapper{-webkit-transform:translate3d(0, 40px, 0);transform:translate3d(0, 40px, 0);opacity:0.01}";
19639
+ const modalMdCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:2px;--box-shadow:0 28px 48px rgba(0, 0, 0, 0.4)}}.modal-wrapper{-webkit-transform:translate3d(0, 40px, 0);transform:translate3d(0, 40px, 0);opacity:0.01}";
19854
19640
  var IonModalMdStyle0 = modalMdCss;
19855
19641
 
19856
19642
  // TODO(FW-2832): types
@@ -19929,7 +19715,6 @@ class Modal {
19929
19715
  this.enterAnimation = undefined;
19930
19716
  this.leaveAnimation = undefined;
19931
19717
  this.breakpoints = undefined;
19932
- this.expandToScroll = true;
19933
19718
  this.initialBreakpoint = undefined;
19934
19719
  this.backdropBreakpoint = 0;
19935
19720
  this.handle = undefined;
@@ -20145,7 +19930,6 @@ class Modal {
20145
19930
  presentingEl: presentingElement,
20146
19931
  currentBreakpoint: this.initialBreakpoint,
20147
19932
  backdropBreakpoint: this.backdropBreakpoint,
20148
- expandToScroll: this.expandToScroll,
20149
19933
  });
20150
19934
  /* tslint:disable-next-line */
20151
19935
  if (typeof window !== 'undefined') {
@@ -20196,10 +19980,7 @@ class Modal {
20196
19980
  // should be in the DOM and referenced by now, except
20197
19981
  // for the presenting el
20198
19982
  const animationBuilder = this.leaveAnimation || config.get('modalLeave', iosLeaveAnimation$3);
20199
- const ani = (this.animation = animationBuilder(el, {
20200
- presentingEl: this.presentingElement,
20201
- expandToScroll: this.expandToScroll,
20202
- }));
19983
+ const ani = (this.animation = animationBuilder(el, { presentingEl: this.presentingElement }));
20203
19984
  const contentEl = findIonContent(el);
20204
19985
  if (!contentEl) {
20205
19986
  printIonContentErrorMsg(el);
@@ -20244,10 +20025,9 @@ class Modal {
20244
20025
  presentingEl: this.presentingElement,
20245
20026
  currentBreakpoint: initialBreakpoint,
20246
20027
  backdropBreakpoint,
20247
- expandToScroll: this.expandToScroll,
20248
20028
  }));
20249
20029
  ani.progressStart(true, 1);
20250
- const { gesture, moveSheetToBreakpoint } = createSheetGesture(this.el, this.backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, ani, this.sortedBreakpoints, this.expandToScroll, () => { var _a; return (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : 0; }, () => this.sheetOnDismiss(), (breakpoint) => {
20030
+ const { gesture, moveSheetToBreakpoint } = createSheetGesture(this.el, this.backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, ani, this.sortedBreakpoints, () => { var _a; return (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : 0; }, () => this.sheetOnDismiss(), (breakpoint) => {
20251
20031
  if (this.currentBreakpoint !== breakpoint) {
20252
20032
  this.currentBreakpoint = breakpoint;
20253
20033
  this.ionBreakpointDidChange.emit({ breakpoint });
@@ -20325,7 +20105,6 @@ class Modal {
20325
20105
  presentingEl: presentingElement,
20326
20106
  currentBreakpoint: (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : this.initialBreakpoint,
20327
20107
  backdropBreakpoint: this.backdropBreakpoint,
20328
- expandToScroll: this.expandToScroll,
20329
20108
  });
20330
20109
  if (dismissed) {
20331
20110
  const { delegate } = this.getDelegate();
@@ -20411,23 +20190,23 @@ class Modal {
20411
20190
  return true;
20412
20191
  }
20413
20192
  render() {
20414
- const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap, expandToScroll, } = this;
20193
+ const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap } = this;
20415
20194
  const showHandle = handle !== false && isSheetModal;
20416
20195
  const mode = getIonMode$1(this);
20417
20196
  const isCardModal = presentingElement !== undefined && mode === 'ios';
20418
20197
  const isHandleCycle = handleBehavior === 'cycle';
20419
- return (hAsync(Host, Object.assign({ key: 'b58b683d13292c390c480a374a26995052914f94', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
20198
+ return (hAsync(Host, Object.assign({ key: 'b4da5111fe4719fa450c39b2d4bd884a302a7924', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
20420
20199
  zIndex: `${20000 + this.overlayIndex}`,
20421
- }, 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: '5e89f1e24ab04c68e517941a9b1fbda8bf9cb4cc', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && hAsync("div", { key: '807f6b6fce3792a2b1e1b0e18c3de96954477f58', class: "modal-shadow" }), hAsync("div", Object.assign({ key: 'd3dbe8e9a297fef87a6dc155211b6be0cb9f249c',
20200
+ }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), hAsync("ion-backdrop", { key: 'c12dbf747e0eb914eaf1331798548ffc7e147763', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && hAsync("div", { key: 'da546ee80c6576b5acc66e959fd5009e0b9a8160', class: "modal-shadow" }), hAsync("div", Object.assign({ key: '306ebe6427440ad5f7ed36d590e562d15a503b75',
20422
20201
  /*
20423
20202
  role and aria-modal must be used on the
20424
20203
  same element. They must also be set inside the
20425
20204
  shadow DOM otherwise ion-button will not be highlighted
20426
20205
  when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
20427
20206
  */
20428
- role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: '12964306d8e911a0777bb87c2e3ea906a85596c2', class: "modal-handle",
20207
+ role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: 'c5d17e346fe255a7c0cacbbf15c0083f2d09c488', class: "modal-handle",
20429
20208
  // Prevents the handle from receiving keyboard focus when it does not cycle
20430
- 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: 'c59a436723e37414b686763a73fa89b174f9bb39' }))));
20209
+ tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), hAsync("slot", { key: '5cc714170a00b67f3eda0cd1d6f37c1489a99c83' }))));
20431
20210
  }
20432
20211
  get el() { return getElement(this); }
20433
20212
  static get watchers() { return {
@@ -20449,7 +20228,6 @@ class Modal {
20449
20228
  "enterAnimation": [16],
20450
20229
  "leaveAnimation": [16],
20451
20230
  "breakpoints": [16],
20452
- "expandToScroll": [4, "expand-to-scroll"],
20453
20231
  "initialBreakpoint": [2, "initial-breakpoint"],
20454
20232
  "backdropBreakpoint": [2, "backdrop-breakpoint"],
20455
20233
  "handle": [4],
@@ -21377,7 +21155,7 @@ class Nav {
21377
21155
  }
21378
21156
  }
21379
21157
  render() {
21380
- return hAsync("slot", { key: 'bd958b6ade20eaadbfc9df2bd39629e3f85a1128' });
21158
+ return hAsync("slot", { key: 'dfe98cb6604a2015a49f41beffebdd2da957dfff' });
21381
21159
  }
21382
21160
  get el() { return getElement(this); }
21383
21161
  static get watchers() { return {
@@ -21450,7 +21228,7 @@ class NavLink {
21450
21228
  this.routerAnimation = undefined;
21451
21229
  }
21452
21230
  render() {
21453
- return hAsync(Host, { key: 'c43e6b9325e3a38452f0eded9d77a58ee57104e4', onClick: this.onClick });
21231
+ return hAsync(Host, { key: 'd2f8545b4fbd5aa25ef36eb01dffbc5d35ccfbb9', onClick: this.onClick });
21454
21232
  }
21455
21233
  get el() { return getElement(this); }
21456
21234
  static get cmpMeta() { return {
@@ -21484,9 +21262,9 @@ class Note {
21484
21262
  }
21485
21263
  render() {
21486
21264
  const mode = getIonMode$1(this);
21487
- return (hAsync(Host, { key: 'c9a8080cca174d0e5604940507d99e7d45f54e54', class: createColorClasses$1(this.color, {
21265
+ return (hAsync(Host, { key: '10a3495bc21166176986441479f8f7539029d161', class: createColorClasses$1(this.color, {
21488
21266
  [mode]: true,
21489
- }) }, hAsync("slot", { key: '9f2a060467de809c4da1882cdcc219a0328d3b7d' })));
21267
+ }) }, hAsync("slot", { key: 'b6a9459e1b85f608fafd060a4bfeb11637ebe873' })));
21490
21268
  }
21491
21269
  static get style() { return {
21492
21270
  ios: IonNoteIosStyle0,
@@ -22251,11 +22029,11 @@ class Picker {
22251
22029
  render() {
22252
22030
  const { htmlAttributes } = this;
22253
22031
  const mode = getIonMode$1(this);
22254
- return (hAsync(Host, Object.assign({ key: 'c823f926c4d2b82628024346646fceca1191cdef', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
22032
+ return (hAsync(Host, Object.assign({ key: '0712fa8732141848e50ad2e08e2ba66ef2a48991', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
22255
22033
  zIndex: `${20000 + this.overlayIndex}`,
22256
22034
  }, class: Object.assign({ [mode]: true,
22257
22035
  // Used internally for styling
22258
- [`picker-${mode}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), hAsync("ion-backdrop", { key: '03200d82bd8449103fb7c2ee2b6d6e57db0b5559', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: '0d5542240826b2525a32496ad4d1070466ba884b', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: '66cccbda315bbb64c52b81aa88d3169456cf8883', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, hAsync("div", { key: 'd077c6376c7576723ea9a1137a975aae891d037b', class: "picker-toolbar" }, this.buttons.map((b) => (hAsync("div", { class: buttonWrapperClass(b) }, hAsync("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass$1(b) }, b.text))))), hAsync("div", { key: 'fd5157aface1ee5530e11e36fdbc861d4365b184', class: "picker-columns" }, hAsync("div", { key: '477638622d52c3d340f841b29c9e36997b95e2f4', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => hAsync("ion-picker-legacy-column", { col: c })), hAsync("div", { key: '50a6646f5d3d0a864c2061f461d03143b0ee4aec', class: "picker-below-highlight" }))), hAsync("div", { key: '10952d6729077f9e68523a6a77f89297acf6fc47', tabindex: "0", "aria-hidden": "true" })));
22036
+ [`picker-${mode}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), hAsync("ion-backdrop", { key: 'c997632ef0488698739664012de5a6494de438b6', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: '20045054a76cca997b410835fa6b305af22dcb12', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: 'a73a6ac20b685ed9694d4fa95ea236ce5d63fdbf', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, hAsync("div", { key: '1221cdcc2ff013deeba12170129c8fe78308330c', class: "picker-toolbar" }, this.buttons.map((b) => (hAsync("div", { class: buttonWrapperClass(b) }, hAsync("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass$1(b) }, b.text))))), hAsync("div", { key: '45038a58430a4251100797b902e7034243137564', class: "picker-columns" }, hAsync("div", { key: 'c579bb69cddd4090912855ffd7f59536280f34b9', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => hAsync("ion-picker-legacy-column", { col: c })), hAsync("div", { key: '978c6632d82a97d053b729c9de65dd3af4c4cee2', class: "picker-below-highlight" }))), hAsync("div", { key: 'e7e9dc437a3cf6d559e2cb0df71af69047a2ae31', tabindex: "0", "aria-hidden": "true" })));
22259
22037
  }
22260
22038
  get el() { return getElement(this); }
22261
22039
  static get watchers() { return {
@@ -23230,9 +23008,9 @@ class PickerColumnCmp {
23230
23008
  render() {
23231
23009
  const col = this.col;
23232
23010
  const mode = getIonMode$1(this);
23233
- return (hAsync(Host, { key: '93b0e0ed5bef792e165fd710996ae83ec99e0f49', class: Object.assign({ [mode]: true, 'picker-col': true, 'picker-opts-left': this.col.align === 'left', 'picker-opts-right': this.col.align === 'right' }, getClassMap(col.cssClass)), style: {
23011
+ return (hAsync(Host, { key: 'c015eb8bc01b3287cbd1d71af0aa311b6be89d36', class: Object.assign({ [mode]: true, 'picker-col': true, 'picker-opts-left': this.col.align === 'left', 'picker-opts-right': this.col.align === 'right' }, getClassMap(col.cssClass)), style: {
23234
23012
  'max-width': this.col.columnWidth,
23235
- } }, col.prefix && (hAsync("div", { key: 'd9ed2d7bef6bcfd04afe865c929148beaf2957d9', class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), hAsync("div", { key: '1e423c0781f299fc64419d593e1ed56540f0bd36', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index) => (hAsync("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index }, o.text)))), col.suffix && (hAsync("div", { key: '87a522206a6e8303ca889216c48b113d5c49ed9a', class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
23013
+ } }, col.prefix && (hAsync("div", { key: 'f9de3fe2f5c7ad3256d6e5f44b6d03a2b1f96ffb', class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), hAsync("div", { key: '10f9c12aa174f96c7cf9adc30efbb26695c0aa64', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index) => (hAsync("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index }, o.text)))), col.suffix && (hAsync("div", { key: '1d9c0892ce56e0da9044c79eb953827166f5190b', class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
23236
23014
  }
23237
23015
  get el() { return getElement(this); }
23238
23016
  static get watchers() { return {
@@ -23336,10 +23114,10 @@ class PickerColumnOption {
23336
23114
  render() {
23337
23115
  const { color, disabled, ariaLabel } = this;
23338
23116
  const mode = getIonMode$1(this);
23339
- return (hAsync(Host, { key: '19dec7c5fa1f464ff09fa97451c94c11ef1432a4', class: createColorClasses$1(color, {
23117
+ return (hAsync(Host, { key: 'c743c6ef44bb9f765cc15b3b5d2864de6520203a', class: createColorClasses$1(color, {
23340
23118
  [mode]: true,
23341
23119
  ['option-disabled']: disabled,
23342
- }) }, hAsync("button", { key: 'c8363bb865cdcafac7fef0970ba64ebe17f82fb6', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, hAsync("slot", { key: 'b0ed822ecb983dcb88c0fa4e9d2d6970566d9b55' }))));
23120
+ }) }, hAsync("button", { key: '4c3d9eb245c52b2c007f727e145cfb55759bd7a9', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, hAsync("slot", { key: '4c907d2187cbe9d5941e27f2b12578e2b7271461' }))));
23343
23121
  }
23344
23122
  get el() { return getElement(this); }
23345
23123
  static get watchers() { return {
@@ -24653,9 +24431,9 @@ class Popover {
24653
24431
  const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
24654
24432
  const desktop = isPlatform('desktop');
24655
24433
  const enableArrow = arrow && !parentPopover;
24656
- return (hAsync(Host, Object.assign({ key: '135246fb813a5040e13225706eeee1310b212ff0', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
24434
+ return (hAsync(Host, Object.assign({ key: 'ffe8b37c9ffb5cac210a7307e6cdfcf78712905b', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
24657
24435
  zIndex: `${20000 + this.overlayIndex}`,
24658
- }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && hAsync("ion-backdrop", { key: '2d7b7658b01cc68073d601bfc60223c11e7ac17a', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), hAsync("div", { key: 'ca01271efd4fe554f32a489fbcdfa86c3bc272da', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && hAsync("div", { key: '65567194726f62e74c3af77611230616b239cd64', class: "popover-arrow", part: "arrow" }), hAsync("div", { key: '89321d71a93ea3849edcde9c763690523d1358c8', class: "popover-content", part: "content" }, hAsync("slot", { key: '765b44ef54d422572fef6e119c115ee20623a292' })))));
24436
+ }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && hAsync("ion-backdrop", { key: '12b3ffa3928b4d56a4f09c3d2f5d493d47b45255', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), hAsync("div", { key: '2c2862d5c7e75b637973c712b4982bf4978c0cdf', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && hAsync("div", { key: '0cfacc52afaa7abc28c1b7742889d7a1c23a37ad', class: "popover-arrow", part: "arrow" }), hAsync("div", { key: '3ef570c44d4fe7f063dd419008c92c8c40d3cd22', class: "popover-content", part: "content" }, hAsync("slot", { key: '6fc5dfdce20fee1642bc1f05d41b5bf7d1034457' })))));
24659
24437
  }
24660
24438
  get el() { return getElement(this); }
24661
24439
  static get watchers() { return {
@@ -24747,7 +24525,7 @@ class ProgressBar {
24747
24525
  const mode = getIonMode$1(this);
24748
24526
  // If the progress is displayed as a solid bar.
24749
24527
  const progressSolid = buffer === 1;
24750
- return (hAsync(Host, { key: 'd92ae727ceb9849199fb949ab831bb6833a68085', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses$1(color, {
24528
+ return (hAsync(Host, { key: '8d8ddf0b26fe33803d3a6168cbedd523d1a888e7', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses$1(color, {
24751
24529
  [mode]: true,
24752
24530
  [`progress-bar-${type}`]: true,
24753
24531
  'progress-paused': paused,
@@ -24917,7 +24695,7 @@ class Radio {
24917
24695
  const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
24918
24696
  const mode = getIonMode$1(this);
24919
24697
  const inItem = hostContext('ion-item', el);
24920
- return (hAsync(Host, { key: 'c9c6410852560d664372af5ff28e778fc82748f1', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses$1(color, {
24698
+ return (hAsync(Host, { key: '5a0adab55ad009305de4856fa1b9f93f2279a734', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses$1(color, {
24921
24699
  [mode]: true,
24922
24700
  'in-item': inItem,
24923
24701
  'radio-checked': checked,
@@ -24928,10 +24706,10 @@ class Radio {
24928
24706
  // Focus and active styling should not apply when the radio is in an item
24929
24707
  'ion-activatable': !inItem,
24930
24708
  'ion-focusable': !inItem,
24931
- }), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, hAsync("label", { key: 'b7483c1bd096942d3f14fc6d13c7c0bb3b367e42', class: "radio-wrapper" }, hAsync("div", { key: '3b978fa691b0ec49c8d04bf6c966cc7c034b111c', class: {
24709
+ }), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, hAsync("label", { key: 'f5673a798e6d87868339f046445f707e1d93b7b6', class: "radio-wrapper" }, hAsync("div", { key: 'e9190c06f75a171cab63e3f74ccf771c3ed87005', class: {
24932
24710
  'label-text-wrapper': true,
24933
24711
  'label-text-wrapper-hidden': !hasLabel,
24934
- }, part: "label" }, hAsync("slot", { key: 'c1553adfaf6ed22261654fd04491ea18dc727144' })), hAsync("div", { key: '2defa43821d151d8130683b6b9859aca6ed944d1', class: "native-wrapper" }, this.renderRadioControl()))));
24712
+ }, part: "label" }, hAsync("slot", { key: '6cedf4e7b3bd03e4a635727dd7b6094bab64af64' })), hAsync("div", { key: '26dd48d9d2848b7f100b732abdc4a3171adde483', class: "native-wrapper" }, this.renderRadioControl()))));
24935
24713
  }
24936
24714
  get el() { return getElement(this); }
24937
24715
  static get watchers() { return {
@@ -24964,20 +24742,12 @@ class Radio {
24964
24742
  }
24965
24743
  let radioButtonIds = 0;
24966
24744
 
24967
- const radioGroupIosCss = "ion-radio-group{vertical-align:top}.supporting-text{line-height:1.5}.error-text{display:none;color:var(--ion-color-danger, #eb445a)}.helper-text{display:block;color:var(--ion-color-step-550, #737373)}.ion-touched.ion-invalid .error-text{display:block}.ion-touched.ion-invalid .helper-text{display:none}ion-list .supporting-text{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px}";
24968
- var IonRadioGroupIosStyle0 = radioGroupIosCss;
24969
-
24970
- const radioGroupMdCss = "ion-radio-group{vertical-align:top}.supporting-text{line-height:1.5}.error-text{display:none;color:var(--ion-color-danger, #eb445a)}.helper-text{display:block;color:var(--ion-color-step-550, #737373)}.ion-touched.ion-invalid .error-text{display:block}.ion-touched.ion-invalid .helper-text{display:none}ion-list .supporting-text{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px}";
24971
- var IonRadioGroupMdStyle0 = radioGroupMdCss;
24972
-
24973
24745
  class RadioGroup {
24974
24746
  constructor(hostRef) {
24975
24747
  registerInstance(this, hostRef);
24976
24748
  this.ionChange = createEvent(this, "ionChange", 7);
24977
24749
  this.ionValueChange = createEvent(this, "ionValueChange", 7);
24978
24750
  this.inputId = `ion-rg-${radioGroupIds++}`;
24979
- this.helperTextId = `${this.inputId}-helper-text`;
24980
- this.errorTextId = `${this.inputId}-error-text`;
24981
24751
  this.labelId = `${this.inputId}-lbl`;
24982
24752
  this.setRadioTabindex = (value) => {
24983
24753
  const radios = this.getRadios();
@@ -25029,8 +24799,6 @@ class RadioGroup {
25029
24799
  this.compareWith = undefined;
25030
24800
  this.name = this.inputId;
25031
24801
  this.value = undefined;
25032
- this.helperText = undefined;
25033
- this.errorText = undefined;
25034
24802
  }
25035
24803
  valueChanged(value) {
25036
24804
  this.setRadioTabindex(value);
@@ -25129,51 +24897,24 @@ class RadioGroup {
25129
24897
  const radioToFocus = this.getRadios().find((r) => r.tabIndex !== -1);
25130
24898
  radioToFocus === null || radioToFocus === void 0 ? void 0 : radioToFocus.setFocus();
25131
24899
  }
25132
- /**
25133
- * Renders the helper text or error text values
25134
- */
25135
- renderHintText() {
25136
- const { helperText, errorText, helperTextId, errorTextId } = this;
25137
- const hasHintText = !!helperText || !!errorText;
25138
- if (!hasHintText) {
25139
- return;
25140
- }
25141
- return (hAsync("div", { class: "supporting-text" }, hAsync("div", { id: helperTextId, class: "helper-text" }, helperText), hAsync("div", { id: errorTextId, class: "error-text" }, errorText)));
25142
- }
25143
- getHintTextID() {
25144
- const { el, helperText, errorText, helperTextId, errorTextId } = this;
25145
- if (el.classList.contains('ion-touched') && el.classList.contains('ion-invalid') && errorText) {
25146
- return errorTextId;
25147
- }
25148
- if (helperText) {
25149
- return helperTextId;
25150
- }
25151
- return undefined;
25152
- }
25153
24900
  render() {
25154
24901
  const { label, labelId, el, name, value } = this;
25155
24902
  const mode = getIonMode$1(this);
25156
24903
  renderHiddenInput(true, el, name, value, false);
25157
- return (hAsync(Host, { key: 'cac92777297029d7fd1b6af264d92850e35dfbba', role: "radiogroup", "aria-labelledby": label ? labelId : null, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId, onClick: this.onClick, class: mode }, this.renderHintText(), hAsync("slot", { key: '7f9bd643f5e29ca4b7dee8abd65da88118740192' })));
24904
+ return hAsync(Host, { key: 'a853e38901f0f4ba17bbf21ebb5da5b5c20b327e', role: "radiogroup", "aria-labelledby": label ? labelId : null, onClick: this.onClick, class: mode });
25158
24905
  }
25159
24906
  get el() { return getElement(this); }
25160
24907
  static get watchers() { return {
25161
24908
  "value": ["valueChanged"]
25162
24909
  }; }
25163
- static get style() { return {
25164
- ios: IonRadioGroupIosStyle0,
25165
- md: IonRadioGroupMdStyle0
25166
- }; }
25167
24910
  static get cmpMeta() { return {
25168
- "$flags$": 36,
24911
+ "$flags$": 0,
25169
24912
  "$tagName$": "ion-radio-group",
25170
24913
  "$members$": {
25171
24914
  "allowEmptySelection": [4, "allow-empty-selection"],
25172
24915
  "compareWith": [1, "compare-with"],
25173
24916
  "name": [1],
25174
24917
  "value": [1032],
25175
- "helperText": [1, "helper-text"],
25176
- "errorText": [1, "error-text"],
25177
24918
  "setFocus": [64]
25178
24919
  },
25179
24920
  "$listeners$": [[4, "keydown", "onKeydown"]],
@@ -25793,7 +25534,7 @@ class Range {
25793
25534
  const needsEndAdjustment = inItem && !hasEndContent;
25794
25535
  const mode = getIonMode$1(this);
25795
25536
  renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
25796
- return (hAsync(Host, { key: '657e59ea74a41a279f96f3fe50752541941b3d00', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
25537
+ return (hAsync(Host, { key: '05c699caaead7cc74deaae2a958c4632191473a8', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
25797
25538
  [mode]: true,
25798
25539
  'in-item': inItem,
25799
25540
  'range-disabled': disabled,
@@ -25802,10 +25543,10 @@ class Range {
25802
25543
  [`range-label-placement-${labelPlacement}`]: true,
25803
25544
  'range-item-start-adjustment': needsStartAdjustment,
25804
25545
  'range-item-end-adjustment': needsEndAdjustment,
25805
- }) }, hAsync("label", { key: '96ad0cfec290bd25456925927e7638a0659a00c9', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: 'ca61076e921551c5de35c9d23262326a94c90ec5', class: {
25546
+ }) }, hAsync("label", { key: '959837bcc48c4bda33ae1f62b66ef444329a2961', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: 'a434c6b5c26f57f52b3af98d881e7e6a179c89fc', class: {
25806
25547
  'label-text-wrapper': true,
25807
25548
  'label-text-wrapper-hidden': !hasLabel,
25808
- }, part: "label" }, label !== undefined ? hAsync("div", { class: "label-text" }, label) : hAsync("slot", { name: "label" })), hAsync("div", { key: '8f0f832bff583f68d65a25d3c8e92559edd5c134', class: "native-wrapper" }, hAsync("slot", { key: '4faaa86fd7e912f10ce19fc4ae47ed3407240585', name: "start" }), this.renderRangeSlider(), hAsync("slot", { key: 'a78d24ceb84ea094a37dc45f912bc457de3ee3e3', name: "end" })))));
25549
+ }, part: "label" }, label !== undefined ? hAsync("div", { class: "label-text" }, label) : hAsync("slot", { name: "label" })), hAsync("div", { key: '87df1037b6b3337bd1fab05d33a26bf658c57914', class: "native-wrapper" }, hAsync("slot", { key: '2cb88f101da49b70aeae29b0bf5445fac241bb2f', name: "start" }), this.renderRangeSlider(), hAsync("slot", { key: '17b835cfb2bd9b8e1957afd425543ff02b913d83', name: "end" })))));
25809
25550
  }
25810
25551
  get el() { return getElement(this); }
25811
25552
  static get watchers() { return {
@@ -26706,7 +26447,7 @@ class Refresher {
26706
26447
  }
26707
26448
  render() {
26708
26449
  const mode = getIonMode$1(this);
26709
- return (hAsync(Host, { key: 'a3ef3ff131f96f85b27a3aba05aa6d5341e7abf8', slot: "fixed", class: {
26450
+ return (hAsync(Host, { key: '9d4ac22988aec2c6af0b0c90934c52f62f0e4ce3', slot: "fixed", class: {
26710
26451
  [mode]: true,
26711
26452
  // Used internally for styling
26712
26453
  [`refresher-${mode}`]: true,
@@ -26934,7 +26675,7 @@ class RefresherContent {
26934
26675
  const pullingIcon = this.pullingIcon;
26935
26676
  const hasSpinner = pullingIcon != null && SPINNERS[pullingIcon] !== undefined;
26936
26677
  const mode = getIonMode$1(this);
26937
- return (hAsync(Host, { key: '3f39dbc86521bbbe306cabeb2173fc50a2608650', class: mode }, hAsync("div", { key: '854c88a15d009d50b671c462d06a71dd328b29b7', class: "refresher-pulling" }, this.pullingIcon && hasSpinner && (hAsync("div", { key: 'a7ca7d3a4fad085ea52fd50b9a603562582b01f8', class: "refresher-pulling-icon" }, hAsync("div", { key: '0a9233c62be54d7fe9d9fc149dc980853ce70e30', class: "spinner-arrow-container" }, hAsync("ion-spinner", { key: '799dcda1fbe21384eb1b71adacd77fc6e572dd97', name: this.pullingIcon, paused: true }), mode === 'md' && this.pullingIcon === 'circular' && (hAsync("div", { key: '6fd197609d90f3588206d6c37c7d4629d6d95158', class: "arrow-container" }, hAsync("ion-icon", { key: '2ed5ed7934cd34d655bb9decd490a02629ece58a', icon: caretBackSharp, "aria-hidden": "true" })))))), this.pullingIcon && !hasSpinner && (hAsync("div", { key: 'abcab0502dd83fd7804f6046e0218744e028747d', class: "refresher-pulling-icon" }, hAsync("ion-icon", { key: '4c1c52856bd9a1730cd911b111a20a8a4bb2f8a5', icon: this.pullingIcon, lazy: false, "aria-hidden": "true" }))), this.pullingText !== undefined && this.renderPullingText()), hAsync("div", { key: '4bea8d0f376c246ff967bd42a67d083e424bc4b8', class: "refresher-refreshing" }, this.refreshingSpinner && (hAsync("div", { key: '887c40075bb7b9867b7dd75c87ef56076a1004fa', class: "refresher-refreshing-icon" }, hAsync("ion-spinner", { key: 'd631774dd81cd16254f1d50eb90069f952db3e13', name: this.refreshingSpinner }))), this.refreshingText !== undefined && this.renderRefreshingText())));
26678
+ return (hAsync(Host, { key: '19633bbcf02e3dba885d6bdcdaf2269bf4c8e2f5', class: mode }, hAsync("div", { key: '28922e434a55a6cac0476fe2bee56941ce0d1c02', class: "refresher-pulling" }, this.pullingIcon && hasSpinner && (hAsync("div", { key: 'fe575bf996021884677e9b23a3215d63caf894f5', class: "refresher-pulling-icon" }, hAsync("div", { key: '59fe12297fd95bc33b8df8cd35316e2a1c084d91', class: "spinner-arrow-container" }, hAsync("ion-spinner", { key: 'af9cc013ae04945c140b2865610ca73edb52ab48', name: this.pullingIcon, paused: true }), mode === 'md' && this.pullingIcon === 'circular' && (hAsync("div", { key: '34df66ad1b0f706a0532957251aa2c20bf4587d8', class: "arrow-container" }, hAsync("ion-icon", { key: 'ffdb5c123e606b823491c6c51cc2b497f62581bb', icon: caretBackSharp, "aria-hidden": "true" })))))), this.pullingIcon && !hasSpinner && (hAsync("div", { key: 'ac3a2032bb969264d20fa057e9123441005d7a9d', class: "refresher-pulling-icon" }, hAsync("ion-icon", { key: 'd969d10915548e72aae289b52154366f3dd39b31', icon: this.pullingIcon, lazy: false, "aria-hidden": "true" }))), this.pullingText !== undefined && this.renderPullingText()), hAsync("div", { key: 'a8f854f81a94812d7bef8ce088331d94f49ff53d', class: "refresher-refreshing" }, this.refreshingSpinner && (hAsync("div", { key: 'a1f646945370e40c844d62bc0c647443ae9dfbe7', class: "refresher-refreshing-icon" }, hAsync("ion-spinner", { key: 'ab3ff4047769b6436e222b46d193c1e8b23e2fce', name: this.refreshingSpinner }))), this.refreshingText !== undefined && this.renderRefreshingText())));
26938
26679
  }
26939
26680
  get el() { return getElement(this); }
26940
26681
  static get cmpMeta() { return {
@@ -26977,7 +26718,7 @@ class Reorder {
26977
26718
  render() {
26978
26719
  const mode = getIonMode$1(this);
26979
26720
  const reorderIcon = mode === 'ios' ? reorderThreeOutline : reorderTwoSharp;
26980
- return (hAsync(Host, { key: 'b99138409354d1d74f62005ed067ef2edcb5167f', class: mode }, hAsync("slot", { key: 'dcd6d99f8103414767458b3eb4aac8bb6e2eebab' }, hAsync("ion-icon", { key: 'ec70966b5b489e5604f3e1e25aba1916953b27ba', icon: reorderIcon, lazy: false, class: "reorder-icon", part: "icon", "aria-hidden": "true" }))));
26721
+ return (hAsync(Host, { key: '27266e30bcb7e10c57fb6d546399cfb1f1c93b23', class: mode }, hAsync("slot", { key: '8745cb9a31458e884c27eed1fb90d104fe9a79eb' }, hAsync("ion-icon", { key: '6c4b9631a2f5610f1e21b2db025b6702d0d593bf', icon: reorderIcon, lazy: false, class: "reorder-icon", part: "icon", "aria-hidden": "true" }))));
26981
26722
  }
26982
26723
  get el() { return getElement(this); }
26983
26724
  static get style() { return {
@@ -27231,7 +26972,7 @@ class ReorderGroup {
27231
26972
  }
27232
26973
  render() {
27233
26974
  const mode = getIonMode$1(this);
27234
- return (hAsync(Host, { key: '7c2a33e57dff31ad71bab015eb086a5348453ba5', class: {
26975
+ return (hAsync(Host, { key: 'a38c7fbceb677201330a602273d5b55abb32da19', class: {
27235
26976
  [mode]: true,
27236
26977
  'reorder-enabled': !this.disabled,
27237
26978
  'reorder-list-active': this.state !== 0 /* ReorderGroupState.Idle */,
@@ -27339,7 +27080,7 @@ class RippleEffect {
27339
27080
  }
27340
27081
  render() {
27341
27082
  const mode = getIonMode$1(this);
27342
- return (hAsync(Host, { key: '17c87440165ecda9c2e6fb93e48eb252dcc25a96', role: "presentation", class: {
27083
+ return (hAsync(Host, { key: '7ae559bda5d2c1856a45bfa150c2cb4f83373f8e', role: "presentation", class: {
27343
27084
  [mode]: true,
27344
27085
  unbounded: this.unbounded,
27345
27086
  } }));
@@ -28281,10 +28022,10 @@ class RouterLink {
28281
28022
  rel: this.rel,
28282
28023
  target: this.target,
28283
28024
  };
28284
- return (hAsync(Host, { key: '369e9502b2a95159b162d85bd498c7ae5f04a27a', onClick: this.onClick, class: createColorClasses$1(this.color, {
28025
+ return (hAsync(Host, { key: '529ceed5beaf92d7b4cc315c82f449eac18310e8', onClick: this.onClick, class: createColorClasses$1(this.color, {
28285
28026
  [mode]: true,
28286
28027
  'ion-activatable': true,
28287
- }) }, hAsync("a", Object.assign({ key: 'f479cde56291938b5ca7bba6891d2cbf21f82c81' }, attrs), hAsync("slot", { key: '7f46ea35e0c4ac19f0ccfe593ef3706dec0e3b2e' }))));
28028
+ }) }, hAsync("a", Object.assign({ key: 'd5f1f8b256695d70bdafd20ff3d1b625963fa2da' }, attrs), hAsync("slot", { key: '613fcdb36a71e076f989551ea21f1d5c118b1cd2' }))));
28288
28029
  }
28289
28030
  static get style() { return IonRouterLinkStyle0; }
28290
28031
  static get cmpMeta() { return {
@@ -28479,7 +28220,7 @@ class RouterOutlet {
28479
28220
  return true;
28480
28221
  }
28481
28222
  render() {
28482
- return hAsync("slot", { key: '6a9003284c80d75b9945d508c8a3d56bbf283948' });
28223
+ return hAsync("slot", { key: 'a70341f58d19df55de1dad00e3464388e446aa2a' });
28483
28224
  }
28484
28225
  get el() { return getElement(this); }
28485
28226
  static get watchers() { return {
@@ -28513,7 +28254,7 @@ class Row {
28513
28254
  registerInstance(this, hostRef);
28514
28255
  }
28515
28256
  render() {
28516
- return (hAsync(Host, { key: '3d11237af000c5670007ff4a9b7b18e66e32aafd', class: getIonMode$1(this) }, hAsync("slot", { key: 'cd71e7f2baeaf32f36079743912eb591114ceeaa' })));
28257
+ return (hAsync(Host, { key: 'aea072a5005e3f1f309f0d1ae5be5ee19869b035', class: getIonMode$1(this) }, hAsync("slot", { key: '2a481c2126ac6ca65f0a1bbd07c2d3365409cb78' })));
28517
28258
  }
28518
28259
  static get style() { return IonRowStyle0; }
28519
28260
  static get cmpMeta() { return {
@@ -28907,8 +28648,8 @@ class Searchbar {
28907
28648
  const clearIcon = this.clearIcon || (mode === 'ios' ? closeCircle : closeSharp);
28908
28649
  const searchIcon = this.searchIcon || (mode === 'ios' ? searchOutline : searchSharp);
28909
28650
  const shouldShowCancelButton = this.shouldShowCancelButton();
28910
- const cancelButton = this.showCancelButton !== 'never' && (hAsync("button", { key: '0bfb27aeaa3e94828ae948e9b13c3d0cfcf57b98', "aria-label": cancelButtonText, "aria-hidden": shouldShowCancelButton ? undefined : 'true', type: "button", tabIndex: mode === 'ios' && !shouldShowCancelButton ? -1 : undefined, onMouseDown: this.onCancelSearchbar, onTouchStart: this.onCancelSearchbar, class: "searchbar-cancel-button" }, hAsync("div", { key: '51916fccce5a19bb5ed81abce0d60350c4cfbb33', "aria-hidden": "true" }, mode === 'md' ? (hAsync("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
28911
- return (hAsync(Host, { key: '0a3d7d21538f32a1fd5160adc1c5f3f0c22a3de2', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses$1(this.color, {
28651
+ const cancelButton = this.showCancelButton !== 'never' && (hAsync("button", { key: '0ef595eb1628928d4c7fdb166b8e41768700fa6e', "aria-label": cancelButtonText, "aria-hidden": shouldShowCancelButton ? undefined : 'true', type: "button", tabIndex: mode === 'ios' && !shouldShowCancelButton ? -1 : undefined, onMouseDown: this.onCancelSearchbar, onTouchStart: this.onCancelSearchbar, class: "searchbar-cancel-button" }, hAsync("div", { key: 'ea2c9b36d991acf5af7662059cb6b045f683ca94', "aria-hidden": "true" }, mode === 'md' ? (hAsync("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
28652
+ return (hAsync(Host, { key: '17d57ece5852d03047e4d53ddad6c9d88a432a00', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses$1(this.color, {
28912
28653
  [mode]: true,
28913
28654
  'searchbar-animated': animated,
28914
28655
  'searchbar-disabled': this.disabled,
@@ -28918,14 +28659,14 @@ class Searchbar {
28918
28659
  'searchbar-has-focus': this.focused,
28919
28660
  'searchbar-should-show-clear': this.shouldShowClearButton(),
28920
28661
  'searchbar-should-show-cancel': this.shouldShowCancelButton(),
28921
- }) }, hAsync("div", { key: '8bba360c7bb1f480861406841eb7d8a4453f0210', class: "searchbar-input-container" }, hAsync("input", Object.assign({ key: '92b9e26c0883db6f6f49feffd848828a21bdd125', "aria-label": "search text", disabled: this.disabled, ref: (el) => (this.nativeInput = el), class: "searchbar-input", inputMode: this.inputmode, enterKeyHint: this.enterkeyhint, name: this.name, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, minLength: this.minlength, maxLength: this.maxlength, placeholder: this.placeholder, type: this.type, value: this.getValue(), autoCapitalize: autocapitalize === 'default' ? undefined : autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, spellcheck: this.spellcheck }, this.inheritedAttributes)), mode === 'md' && cancelButton, hAsync("ion-icon", { key: '03d102d471ef37bd0a2681c0a234fe376ed0e344', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), hAsync("button", { key: '85fd9eb2eb18cb270007a5bb691914586a3e8fcc', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
28662
+ }) }, hAsync("div", { key: 'f67c2124e70c24eef0a271516e9c4bdaf7e98ceb', class: "searchbar-input-container" }, hAsync("input", Object.assign({ key: '8c7f7ccc6809cca30ccc8c4e98e349d3f916321d', "aria-label": "search text", disabled: this.disabled, ref: (el) => (this.nativeInput = el), class: "searchbar-input", inputMode: this.inputmode, enterKeyHint: this.enterkeyhint, name: this.name, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, minLength: this.minlength, maxLength: this.maxlength, placeholder: this.placeholder, type: this.type, value: this.getValue(), autoCapitalize: autocapitalize === 'default' ? undefined : autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, spellcheck: this.spellcheck }, this.inheritedAttributes)), mode === 'md' && cancelButton, hAsync("ion-icon", { key: 'f06524d3163b3883bbde937862aa1e0e8f49f6e1', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), hAsync("button", { key: '9f7ba2bec93412ecb674b197be13db1de308bb57', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
28922
28663
  /**
28923
28664
  * This prevents mobile browsers from
28924
28665
  * blurring the input when the clear
28925
28666
  * button is activated.
28926
28667
  */
28927
28668
  ev.preventDefault();
28928
- }, onClick: () => this.onClearInput(true) }, hAsync("ion-icon", { key: '7332cab0d6a9b267680af452b1751324e5bb1a26', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
28669
+ }, onClick: () => this.onClearInput(true) }, hAsync("ion-icon", { key: '19fc3dbc722acc47ff7eb3c94ad4de8aed38dff4', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
28929
28670
  }
28930
28671
  get el() { return getElement(this); }
28931
28672
  static get watchers() { return {
@@ -29509,14 +29250,14 @@ class Segment {
29509
29250
  }
29510
29251
  render() {
29511
29252
  const mode = getIonMode$1(this);
29512
- return (hAsync(Host, { key: 'b032b33244524cfbe3e05e9f95fc94e59e8589fe', role: "tablist", onClick: this.onClick, class: createColorClasses$1(this.color, {
29253
+ return (hAsync(Host, { key: 'b1eb4a6e4f953f6c4882395585799503735bbc6b', role: "tablist", onClick: this.onClick, class: createColorClasses$1(this.color, {
29513
29254
  [mode]: true,
29514
29255
  'in-toolbar': hostContext('ion-toolbar', this.el),
29515
29256
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
29516
29257
  'segment-activated': this.activated,
29517
29258
  'segment-disabled': this.disabled,
29518
29259
  'segment-scrollable': this.scrollable,
29519
- }) }, hAsync("slot", { key: 'e752fff555f586ed10248a75ef1d40f38d91e677', onSlotchange: this.onSlottedItemsChange })));
29260
+ }) }, hAsync("slot", { key: 'e7df6b017d154f30eb8021bc965f2e6c8e6480bf', onSlotchange: this.onSlottedItemsChange })));
29520
29261
  }
29521
29262
  get el() { return getElement(this); }
29522
29263
  static get watchers() { return {
@@ -29587,7 +29328,35 @@ class SegmentButton {
29587
29328
  valueChanged() {
29588
29329
  this.updateState();
29589
29330
  }
29590
- connectedCallback() {
29331
+ waitForSegmentContent(ionSegment, contentId) {
29332
+ return new Promise((resolve, reject) => {
29333
+ let timeoutId = undefined;
29334
+ let animationFrameId;
29335
+ const check = () => {
29336
+ if (!ionSegment) {
29337
+ reject(new Error(`Segment not found when looking for Segment Content`));
29338
+ return;
29339
+ }
29340
+ const segmentView = getNextSiblingOfType(ionSegment); // Skip the text nodes
29341
+ const segmentContent = segmentView === null || segmentView === void 0 ? void 0 : segmentView.querySelector(`ion-segment-content[id="${contentId}"]`);
29342
+ if (segmentContent && timeoutId) {
29343
+ clearTimeout(timeoutId); // Clear the timeout if the segmentContent is found
29344
+ cancelAnimationFrame(animationFrameId);
29345
+ resolve(segmentContent);
29346
+ }
29347
+ else {
29348
+ animationFrameId = requestAnimationFrame(check); // Keep checking on the next animation frame
29349
+ }
29350
+ };
29351
+ check();
29352
+ // Set a timeout to reject the promise
29353
+ timeoutId = setTimeout(() => {
29354
+ cancelAnimationFrame(animationFrameId);
29355
+ reject(new Error(`Unable to find Segment Content with id="${contentId} within 1000 ms`));
29356
+ }, 1000);
29357
+ });
29358
+ }
29359
+ async connectedCallback() {
29591
29360
  const segmentEl = (this.segmentEl = this.el.closest('ion-segment'));
29592
29361
  if (segmentEl) {
29593
29362
  this.updateState();
@@ -29597,11 +29366,14 @@ class SegmentButton {
29597
29366
  // Return if there is no contentId defined
29598
29367
  if (!this.contentId)
29599
29368
  return;
29600
- // Attempt to find the Segment Content by its contentId
29601
- const segmentContent = document.getElementById(this.contentId);
29602
- // If no associated Segment Content exists, log an error and return
29603
- if (!segmentContent) {
29604
- console.error(`Segment Button: Unable to find Segment Content with id="${this.contentId}".`);
29369
+ let segmentContent;
29370
+ try {
29371
+ // Attempt to find the Segment Content by its contentId
29372
+ segmentContent = await this.waitForSegmentContent(segmentEl, this.contentId);
29373
+ }
29374
+ catch (error) {
29375
+ // If no associated Segment Content exists, log an error and return
29376
+ console.error('Segment Button: ', error.message);
29605
29377
  return;
29606
29378
  }
29607
29379
  // Ensure the found element is a valid ION-SEGMENT-CONTENT
@@ -29647,7 +29419,7 @@ class SegmentButton {
29647
29419
  const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
29648
29420
  const mode = getIonMode$1(this);
29649
29421
  const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
29650
- return (hAsync(Host, { key: '1267f90cf66d6a395848018e81445f600975c10a', class: {
29422
+ return (hAsync(Host, { key: 'f9da656c8eccb80e4ef30e3fa977f2dbbefbc988', class: {
29651
29423
  [mode]: true,
29652
29424
  'in-toolbar': hostContext('ion-toolbar', this.el),
29653
29425
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
@@ -29663,7 +29435,7 @@ class SegmentButton {
29663
29435
  'ion-activatable': true,
29664
29436
  'ion-activatable-instant': true,
29665
29437
  'ion-focusable': true,
29666
- } }, hAsync("button", Object.assign({ key: 'd98af1f28b6e899369bf0923ea9db87f09461210', "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: 'dc6daf1419bed5c084d7b4cbf0ea63237905d9ea', class: "button-inner" }, hAsync("slot", { key: '751d8e462cf8d73584e5332bfe7b274792988e6a' })), mode === 'md' && hAsync("ion-ripple-effect", { key: 'c26d306ca5a7bd34fbd114da069c51968a894bbc' })), hAsync("div", { key: '6031046a18c2d37e393f4fb2ff8d925f3fdfd1d6', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, hAsync("div", { key: 'c97316f72c390dcccabc328f69274a816d9479be', part: "indicator-background", class: "segment-button-indicator-background" }))));
29438
+ } }, hAsync("button", Object.assign({ key: '00dbcdbd81cd74abdd39803f6840a6e477cc7b0c', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), hAsync("span", { key: '5200c082a9c4788010c4fc33fe75e2b2ad28364a', class: "button-inner" }, hAsync("slot", { key: 'cf3fce2b5d22436b84cd4367a5885df7d6a2715f' })), mode === 'md' && hAsync("ion-ripple-effect", { key: 'f1a2816465f4c2c06644be07315bff2da77e2342' })), hAsync("div", { key: 'aaf31c0ed39641fca698ee98d0773131f4eea6bd', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, hAsync("div", { key: 'fc556651361b7ac305aaedd25ea4afe3173abd20', part: "indicator-background", class: "segment-button-indicator-background" }))));
29667
29439
  }
29668
29440
  get el() { return getElement(this); }
29669
29441
  static get watchers() { return {
@@ -29699,7 +29471,7 @@ class SegmentContent {
29699
29471
  registerInstance(this, hostRef);
29700
29472
  }
29701
29473
  render() {
29702
- return (hAsync(Host, { key: '1f7f256fdeb7ec661c84f268b239ab21ef170629' }, hAsync("slot", { key: 'c704cf3b4c13deeb612d8a8ffdccef65d62f0866' })));
29474
+ return (hAsync(Host, { key: '03684b2999ac64fe13e376fd7e7f279976e9d4f2' }, hAsync("slot", { key: '143031075bf33ca19e7cfd76fc8a67b83ccaf11c' })));
29703
29475
  }
29704
29476
  static get style() { return IonSegmentContentStyle0; }
29705
29477
  static get cmpMeta() { return {
@@ -29812,10 +29584,10 @@ class SegmentView {
29812
29584
  }
29813
29585
  render() {
29814
29586
  const { disabled, isManualScroll } = this;
29815
- return (hAsync(Host, { key: '4d51263d62b33762e7bbea48834b1701014c7f99', class: {
29587
+ return (hAsync(Host, { key: '9f4f11d31c4db776f077e59ae895b35dd4454717', class: {
29816
29588
  'segment-view-disabled': disabled,
29817
29589
  'segment-view-scroll-disabled': isManualScroll === false,
29818
- } }, hAsync("slot", { key: '4191dcd9964efc4815ceec776a953f24ad75f02d' })));
29590
+ } }, hAsync("slot", { key: 'ea58b21f031cee2ab2b70580f336deaefa364538' })));
29819
29591
  }
29820
29592
  get el() { return getElement(this); }
29821
29593
  static get style() { return {
@@ -29930,7 +29702,6 @@ class Select {
29930
29702
  this.expandedIcon = undefined;
29931
29703
  this.shape = undefined;
29932
29704
  this.value = undefined;
29933
- this.required = false;
29934
29705
  }
29935
29706
  styleChanged() {
29936
29707
  this.emitStyle();
@@ -29986,15 +29757,8 @@ class Select {
29986
29757
  }
29987
29758
  this.isExpanded = true;
29988
29759
  const overlay = (this.overlay = await this.createOverlay(event));
29989
- overlay.onDidDismiss().then(() => {
29990
- this.overlay = undefined;
29991
- this.isExpanded = false;
29992
- this.ionDismiss.emit();
29993
- this.setFocus();
29994
- });
29995
- await overlay.present();
29996
- // focus selected option for popovers and modals
29997
- if (this.interface === 'popover' || this.interface === 'modal') {
29760
+ // Add logic to scroll selected item into view before presenting
29761
+ const scrollSelectedIntoView = () => {
29998
29762
  const indexOfSelected = this.childOpts.findIndex((o) => o.value === this.value);
29999
29763
  if (indexOfSelected > -1) {
30000
29764
  const selectedItem = overlay.querySelector(`.select-interface-option:nth-child(${indexOfSelected + 1})`);
@@ -30012,6 +29776,7 @@ class Select {
30012
29776
  */
30013
29777
  const interactiveEl = selectedItem.querySelector('ion-radio, ion-checkbox');
30014
29778
  if (interactiveEl) {
29779
+ selectedItem.scrollIntoView({ block: 'nearest' });
30015
29780
  // Needs to be called before `focusVisibleElement` to prevent issue with focus event bubbling
30016
29781
  // and removing `ion-focused` style
30017
29782
  interactiveEl.setFocus();
@@ -30035,7 +29800,40 @@ class Select {
30035
29800
  focusVisibleElement(firstEnabledOption.closest('ion-item'));
30036
29801
  }
30037
29802
  }
29803
+ };
29804
+ // For modals and popovers, we can scroll before they're visible
29805
+ if (this.interface === 'modal') {
29806
+ overlay.addEventListener('ionModalWillPresent', scrollSelectedIntoView, { once: true });
29807
+ }
29808
+ else if (this.interface === 'popover') {
29809
+ overlay.addEventListener('ionPopoverWillPresent', scrollSelectedIntoView, { once: true });
30038
29810
  }
29811
+ else {
29812
+ /**
29813
+ * For alerts and action sheets, we need to wait a frame after willPresent
29814
+ * because these overlays don't have their content in the DOM immediately
29815
+ * when willPresent fires. By waiting a frame, we ensure the content is
29816
+ * rendered and can be properly scrolled into view.
29817
+ */
29818
+ const scrollAfterRender = () => {
29819
+ requestAnimationFrame(() => {
29820
+ scrollSelectedIntoView();
29821
+ });
29822
+ };
29823
+ if (this.interface === 'alert') {
29824
+ overlay.addEventListener('ionAlertWillPresent', scrollAfterRender, { once: true });
29825
+ }
29826
+ else if (this.interface === 'action-sheet') {
29827
+ overlay.addEventListener('ionActionSheetWillPresent', scrollAfterRender, { once: true });
29828
+ }
29829
+ }
29830
+ overlay.onDidDismiss().then(() => {
29831
+ this.overlay = undefined;
29832
+ this.isExpanded = false;
29833
+ this.ionDismiss.emit();
29834
+ this.setFocus();
29835
+ });
29836
+ await overlay.present();
30039
29837
  return overlay;
30040
29838
  }
30041
29839
  createOverlay(ev) {
@@ -30415,8 +30213,8 @@ class Select {
30415
30213
  return renderedLabel;
30416
30214
  }
30417
30215
  renderListbox() {
30418
- const { disabled, inputId, isExpanded, required } = this;
30419
- return (hAsync("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`, "aria-required": `${required}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) }));
30216
+ const { disabled, inputId, isExpanded } = this;
30217
+ return (hAsync("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) }));
30420
30218
  }
30421
30219
  render() {
30422
30220
  const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
@@ -30447,7 +30245,7 @@ class Select {
30447
30245
  * TODO(FW-5592): Remove hasStartEndSlots condition
30448
30246
  */
30449
30247
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
30450
- return (hAsync(Host, { key: '9ac4966b075bd4303ed7ddb0d9ad08eaf9118f20', onClick: this.onClick, class: createColorClasses$1(this.color, {
30248
+ return (hAsync(Host, { key: 'b2dca9ae25d88e4d9fdb55003041a66be5668fcf', onClick: this.onClick, class: createColorClasses$1(this.color, {
30451
30249
  [mode]: true,
30452
30250
  'in-item': inItem,
30453
30251
  'in-item-color': hostContext('ion-item.ion-color', el),
@@ -30463,7 +30261,7 @@ class Select {
30463
30261
  [`select-justify-${justify}`]: justifyEnabled,
30464
30262
  [`select-shape-${shape}`]: shape !== undefined,
30465
30263
  [`select-label-placement-${labelPlacement}`]: true,
30466
- }) }, hAsync("label", { key: '3c92e27a0a7ff5dd79c8f0e16b4f4e56179ba5d3', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), hAsync("div", { key: 'a46adb7393b38babe2acb1440f2ac8986fb861ca', class: "select-wrapper-inner" }, hAsync("slot", { key: '0fe7486767ba41835d8af22d2764ddf85041dd04', name: "start" }), hAsync("div", { key: '51ddfb2a9c3ad0f7faf99d80c3833991f5bc1c84', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), hAsync("slot", { key: '8521aa8290bb1948160fd469fab501e6dbe215f2', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && hAsync("div", { key: '3fe6a82c12d65ac759c51cf4d8b842eefeec130a', class: "select-highlight" }))));
30264
+ }) }, hAsync("label", { key: 'c22fe9aee8cd448223497ef143e89529fcef8af6', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), hAsync("div", { key: '601972df4579f4fa6a9c2c12865593e807decb72', class: "select-wrapper-inner" }, hAsync("slot", { key: '5f7b1261862f74b978b26f026533e3fd1cc666ba', name: "start" }), hAsync("div", { key: '39616da89f4b4b78432f6da85116a7de2ca589e7', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), hAsync("slot", { key: '1d7b3601b73af7c05b3627cfc8e5147ea379bb03', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && hAsync("div", { key: 'b0344f0ac15003e22fee66d3d7ed03a07da7e8b7', class: "select-highlight" }))));
30467
30265
  }
30468
30266
  get el() { return getElement(this); }
30469
30267
  static get watchers() { return {
@@ -30499,7 +30297,6 @@ class Select {
30499
30297
  "expandedIcon": [1, "expanded-icon"],
30500
30298
  "shape": [1],
30501
30299
  "value": [1032],
30502
- "required": [4],
30503
30300
  "isExpanded": [32],
30504
30301
  "open": [64]
30505
30302
  },
@@ -30624,7 +30421,7 @@ class SelectModal {
30624
30421
  } }, option.text))));
30625
30422
  }
30626
30423
  render() {
30627
- return (hAsync(Host, { key: '0050013822a291082f6be05ed4b14632ef88d09c', class: getIonMode$1(this) }, hAsync("ion-header", { key: 'b45b98ec81bb7ee2fefd56a3ed39dae5573b9caa' }, hAsync("ion-toolbar", { key: '9ed8534528a89469d4ca99e59f5ed25930cd6e8d' }, this.header !== undefined && hAsync("ion-title", { key: '61b6bbd26b5d6ad8f0348a12e57f856e99ff0a7b' }, this.header), hAsync("ion-buttons", { key: '0624431bcb4dbc0ab14554cd93bfefefc3d4053c', slot: "end" }, hAsync("ion-button", { key: '9f4915f3b94521b40dbf5dba7e47840d7bdc0586', onClick: () => this.closeModal() }, "Close")))), hAsync("ion-content", { key: 'df16869a6036e9aee1a1bf45bf46cc309cf7eb9b' }, hAsync("ion-list", { key: '0aa82c226df3416937136a2f4229169fccd651a1' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
30424
+ return (hAsync(Host, { key: '4df42c447b4026d09d9231f09dc4bdae9a8cfe4a', class: getIonMode$1(this) }, hAsync("ion-header", { key: '211c4e869b858867f3d60637e570aeb01de41de7' }, hAsync("ion-toolbar", { key: 'dc4b151331aecbaaaafb460802ee9b689493601d' }, this.header !== undefined && hAsync("ion-title", { key: 'ba1347a59ae0a5c6770c239b5ec02a536a445bd1' }, this.header), hAsync("ion-buttons", { key: '43c98fd25d7e7f54b94b24e53535c6d5ba599892', slot: "end" }, hAsync("ion-button", { key: '51b2b3f3eed42637b2cfc213c95d0bcf10e4b89d', onClick: () => this.closeModal() }, "Close")))), hAsync("ion-content", { key: 'fe721b09f80555856211f7e40dbfc31a533acae1' }, hAsync("ion-list", { key: 'd0b932d137136958d896408fb2fa571023775b92' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
30628
30425
  }
30629
30426
  get el() { return getElement(this); }
30630
30427
  static get style() { return {
@@ -30657,7 +30454,7 @@ class SelectOption {
30657
30454
  this.value = undefined;
30658
30455
  }
30659
30456
  render() {
30660
- return hAsync(Host, { key: 'fa94cf1fc8b3ebed6981b05589072f7bc4402beb', role: "option", id: this.inputId, class: getIonMode$1(this) });
30457
+ return hAsync(Host, { key: '2e6fa159464f04f6d8720f960141f67918bc7534', role: "option", id: this.inputId, class: getIonMode$1(this) });
30661
30458
  }
30662
30459
  get el() { return getElement(this); }
30663
30460
  static get style() { return IonSelectOptionStyle0; }
@@ -30777,7 +30574,7 @@ class SelectPopover {
30777
30574
  render() {
30778
30575
  const { header, message, options, subHeader } = this;
30779
30576
  const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
30780
- return (hAsync(Host, { key: 'aef83e0c71338c7fe840d8aa8a35457f0c02aca1', class: getIonMode$1(this) }, hAsync("ion-list", { key: '0d006a2d50f1e60774a0b2492216f06d57bb8f29' }, header !== undefined && hAsync("ion-list-header", { key: 'dd7cf5ab850f6597e678bf65e9a6e0cec335a61a' }, header), hasSubHeaderOrMessage && (hAsync("ion-item", { key: 'fff2b677c26dbaa1c0d716f9bdaa4cd551e9ad70' }, hAsync("ion-label", { key: '6358214355dc87a4e4cf8dd8954310a26461f037', class: "ion-text-wrap" }, subHeader !== undefined && hAsync("h3", { key: '06fd296221969ef34df9dc8bbc256ee66af9fdba' }, subHeader), message !== undefined && hAsync("p", { key: 'eac5f5aee78dcdf1cc5276d95e5e9892bbb69f24' }, message)))), this.renderOptions(options))));
30577
+ return (hAsync(Host, { key: 'dd0990db4de4f175b176b27f35501dd1604ca400', class: getIonMode$1(this) }, hAsync("ion-list", { key: 'cea2bc3687b8b2490a2a9ff4a1e16cd34169558e' }, header !== undefined && hAsync("ion-list-header", { key: '194aebb53453c43f913daae45a1a3066a1708c4c' }, header), hasSubHeaderOrMessage && (hAsync("ion-item", { key: 'b706b07a3c63ad8104d2db413e210c735ec1bec9' }, hAsync("ion-label", { key: '6e52b5b4cf6b04ff3dd5671d64264233de4190d5', class: "ion-text-wrap" }, subHeader !== undefined && hAsync("h3", { key: '6ef4440d17f5db8c96c63b9aa5073f4fe4b8ad62' }, subHeader), message !== undefined && hAsync("p", { key: 'c7b3b76c30ecd606c0e985a0258c13d3a75756e7' }, message)))), this.renderOptions(options))));
30781
30578
  }
30782
30579
  get el() { return getElement(this); }
30783
30580
  static get style() { return {
@@ -30825,11 +30622,11 @@ class SkeletonText {
30825
30622
  const animated = this.animated && config.getBoolean('animated', true);
30826
30623
  const inMedia = hostContext('ion-avatar', this.el) || hostContext('ion-thumbnail', this.el);
30827
30624
  const mode = getIonMode$1(this);
30828
- return (hAsync(Host, { key: '59a41a7f3ba2de4f44de57b3243c8f803eb88e2c', class: {
30625
+ return (hAsync(Host, { key: 'fdfabf9364caf507450239b62be24f08873bd650', class: {
30829
30626
  [mode]: true,
30830
30627
  'skeleton-text-animated': animated,
30831
30628
  'in-media': inMedia,
30832
- } }, hAsync("span", { key: 'a59a5cea5504f523c4d9b1f428f66772103290aa' }, "\u00A0")));
30629
+ } }, hAsync("span", { key: '3482c88dcc177547185ce87972afa064a542367d' }, "\u00A0")));
30833
30630
  }
30834
30631
  get el() { return getElement(this); }
30835
30632
  static get style() { return IonSkeletonTextStyle0; }
@@ -30882,7 +30679,7 @@ class Spinner {
30882
30679
  svgs.push(buildLine(spinner, duration, i, spinner.lines));
30883
30680
  }
30884
30681
  }
30885
- return (hAsync(Host, { key: '8cb73346083cb8a17e38c90e3405fee806c55bbf', class: createColorClasses$1(self.color, {
30682
+ return (hAsync(Host, { key: '9d30ee9f5aa0dd0e220da07e75d05b8b2435224d', class: createColorClasses$1(self.color, {
30886
30683
  [mode]: true,
30887
30684
  [`spinner-${spinnerName}`]: true,
30888
30685
  'spinner-paused': self.paused || config.getBoolean('_testing'),
@@ -30982,12 +30779,12 @@ class SplitPane {
30982
30779
  }
30983
30780
  render() {
30984
30781
  const mode = getIonMode$1(this);
30985
- return (hAsync(Host, { key: 'a63ee13973b94cd58b0da9c00b06bd39b206dd60', class: {
30782
+ return (hAsync(Host, { key: '1ca0b0299d03605bb358112ca56cbafbe58f00f5', class: {
30986
30783
  [mode]: true,
30987
30784
  // Used internally for styling
30988
30785
  [`split-pane-${mode}`]: true,
30989
30786
  'split-pane-visible': this.visible,
30990
- } }, hAsync("slot", { key: 'da6743bb0d17791f863d1f0ca1f59f5ceffe9613' })));
30787
+ } }, hAsync("slot", { key: 'abe231361727ae7fc63edd592a4490caac1909fb' })));
30991
30788
  }
30992
30789
  get el() { return getElement(this); }
30993
30790
  static get watchers() { return {
@@ -31056,10 +30853,10 @@ class Tab {
31056
30853
  }
31057
30854
  render() {
31058
30855
  const { tab, active, component } = this;
31059
- return (hAsync(Host, { key: 'c18543ba57c4a6a08d519476d1e268524046d678', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
30856
+ return (hAsync(Host, { key: 'cb75d0877979b3b8df8f7e1952bfa9677da1eaa5', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
31060
30857
  'ion-page': component === undefined,
31061
30858
  'tab-hidden': !active,
31062
- } }, hAsync("slot", { key: 'e46d100188fc8876e44ebf01f081ce57475b2883' })));
30859
+ } }, hAsync("slot", { key: '37fbb7b7a6b03eb93b1dacd2dc1025b78eb2aa6b' })));
31063
30860
  }
31064
30861
  get el() { return getElement(this); }
31065
30862
  static get watchers() { return {
@@ -31137,11 +30934,11 @@ class TabBar {
31137
30934
  const { color, translucent, keyboardVisible } = this;
31138
30935
  const mode = getIonMode$1(this);
31139
30936
  const shouldHide = keyboardVisible && this.el.getAttribute('slot') !== 'top';
31140
- return (hAsync(Host, { key: 'fe1cc3174f095ba3c8c6d6c2c20021596801a7c9', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses$1(color, {
30937
+ return (hAsync(Host, { key: 'a87fd2ea5df053705a37ea7ffec043e75c4a9907', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses$1(color, {
31141
30938
  [mode]: true,
31142
30939
  'tab-bar-translucent': translucent,
31143
30940
  'tab-bar-hidden': shouldHide,
31144
- }) }, hAsync("slot", { key: 'f7705b1b4f45d28ae8b7c08b91b0f6c9d4176f3f' })));
30941
+ }) }, hAsync("slot", { key: '81a6223299b6cab29d7ddced590e9152e2b3ded0' })));
31145
30942
  }
31146
30943
  get el() { return getElement(this); }
31147
30944
  static get watchers() { return {
@@ -31239,7 +31036,7 @@ class TabButton {
31239
31036
  rel,
31240
31037
  target,
31241
31038
  };
31242
- return (hAsync(Host, { key: '9ce7b8a8e9d929c260de383c5cf59f971698b2b5', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
31039
+ return (hAsync(Host, { key: '5976c45943ea7ea8e7c1a85fc9996de421439f08', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
31243
31040
  [mode]: true,
31244
31041
  'tab-selected': selected,
31245
31042
  'tab-disabled': disabled,
@@ -31251,7 +31048,7 @@ class TabButton {
31251
31048
  'ion-activatable': true,
31252
31049
  'ion-selectable': true,
31253
31050
  'ion-focusable': true,
31254
- } }, hAsync("a", Object.assign({ key: '567878182ae2a8c5dc172e3fd1f5817f3e1eeabe' }, attrs, { class: "button-native", part: "native", role: "tab", "aria-selected": selected ? 'true' : null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? '-1' : undefined }, inheritedAttributes), hAsync("span", { key: 'b862980ed811d341e40cf6eb443922f2007307e0', class: "button-inner" }, hAsync("slot", { key: '09ef67551c8fbf8525a933aad07eefc472463b6d' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '85f92cbca73bc53b74818debfbb95cddf9e7bbd1', type: "unbounded" }))));
31051
+ } }, hAsync("a", Object.assign({ key: '1db09d861b67ff292018fb4b0dc7b85bd4677eb8' }, attrs, { class: "button-native", part: "native", role: "tab", "aria-selected": selected ? 'true' : null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? '-1' : undefined }, inheritedAttributes), hAsync("span", { key: '4381eafcb27e8c7bb0d86d4f115ceb0caf03b9b4', class: "button-inner" }, hAsync("slot", { key: '1981135f6fbb88376c1bd923c55c70fe8b5c5159' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '0509bc7155d055d1ed710600e9cf4df135881491', type: "unbounded" }))));
31255
31052
  }
31256
31053
  get el() { return getElement(this); }
31257
31054
  static get style() { return {
@@ -31427,7 +31224,7 @@ class Tabs {
31427
31224
  return Array.from(this.el.querySelectorAll('ion-tab'));
31428
31225
  }
31429
31226
  render() {
31430
- return (hAsync(Host, { key: 'd2ff833e4e7bfee10f963dfa05459174ae031319', onIonTabButtonClick: this.onTabClicked }, hAsync("slot", { key: '2722be047d4f75c86beea7dc55320ce323c2236e', name: "top" }), hAsync("div", { key: '307ee4c138fe6a5aa48137e2445dae86131a584b', class: "tabs-inner" }, hAsync("slot", { key: '3da8af51f45c932aead1b2addf1e9e30330a986e' })), hAsync("slot", { key: '54d17cf20967460901fd1ca537b1db507ab336c2', name: "bottom" })));
31227
+ return (hAsync(Host, { key: 'e01ccf6bfaccad094515be50e407399c733fc226', onIonTabButtonClick: this.onTabClicked }, hAsync("slot", { key: '38d2d01dbfd8a08f01e6f0e27274b21d75424e37', name: "top" }), hAsync("div", { key: '7e894f0f423e2d43e1c68daff5f9f6c442fad237', class: "tabs-inner" }, hAsync("slot", { key: 'df16be529a0370a26d0adf850530b31607507c23' })), hAsync("slot", { key: '44642e1cb24c3281c43db75fd69a32fe0defe40a', name: "bottom" })));
31431
31228
  }
31432
31229
  get el() { return getElement(this); }
31433
31230
  static get style() { return IonTabsStyle0; }
@@ -31469,9 +31266,9 @@ class Text {
31469
31266
  }
31470
31267
  render() {
31471
31268
  const mode = getIonMode$1(this);
31472
- return (hAsync(Host, { key: '54fc089c6b77f7c4a8e0c4441d06507e7a0489c4', class: createColorClasses$1(this.color, {
31269
+ return (hAsync(Host, { key: 'e134d70c04344b708a2ecf6253722781ad2ca826', class: createColorClasses$1(this.color, {
31473
31270
  [mode]: true,
31474
- }) }, hAsync("slot", { key: '308480aa067e52eb4bf7dc619fb7e3b89fcdb62b' })));
31271
+ }) }, hAsync("slot", { key: 'da79c760f7ebbcd007ce110439f05a62cb22eac8' })));
31475
31272
  }
31476
31273
  static get style() { return IonTextStyle0; }
31477
31274
  static get cmpMeta() { return {
@@ -31853,7 +31650,7 @@ class Textarea {
31853
31650
  * TODO(FW-5592): Remove hasStartEndSlots condition
31854
31651
  */
31855
31652
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
31856
- return (hAsync(Host, { key: '7c5b5a536fcd80e82e952dd91bd13fc0f89082f0', class: createColorClasses$1(this.color, {
31653
+ return (hAsync(Host, { key: 'd6e25c83d8eab8cb1a5b6ab411c9a13847f69f8d', class: createColorClasses$1(this.color, {
31857
31654
  [mode]: true,
31858
31655
  'has-value': hasValue,
31859
31656
  'has-focus': hasFocus,
@@ -31862,7 +31659,7 @@ class Textarea {
31862
31659
  [`textarea-shape-${shape}`]: shape !== undefined,
31863
31660
  [`textarea-label-placement-${labelPlacement}`]: true,
31864
31661
  'textarea-disabled': disabled,
31865
- }) }, hAsync("label", { key: '3ba91b8e5a7ef4b4f4a9f1b4d6a4d9079c41dfdd', class: "textarea-wrapper", htmlFor: inputId }, this.renderLabelContainer(), hAsync("div", { key: '878f717486c422db8709e646add56f467f1451de', class: "textarea-wrapper-inner" }, hAsync("div", { key: 'f9d84b85e5ad6de4d2055323b8a81b3bb36664b3', class: "start-slot-wrapper" }, hAsync("slot", { key: 'c658096d7125b8f1d76d03713daa596ed47d87f5', name: "start" })), hAsync("div", { key: 'ba8267f5e94c6c7e9400b157395624b0f5f63a3d', class: "native-wrapper", ref: (el) => (this.textareaWrapper = el) }, hAsync("textarea", Object.assign({ key: '599216481ddd50df91a796cd2b78e1bc0ed7ab74', class: "native-textarea", ref: (el) => (this.nativeInput = el), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, minLength: this.minlength, maxLength: this.maxlength, name: this.name, placeholder: this.placeholder || '', readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, cols: this.cols, rows: this.rows, wrap: this.wrap, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeyDown, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId }, this.inheritedAttributes), value)), hAsync("div", { key: '9a7f5dc599a4437fb693a9dfae443f07ab87b771', class: "end-slot-wrapper" }, hAsync("slot", { key: 'a9806727dca8bd9b6a648ea824d910e26811f61c', name: "end" }))), shouldRenderHighlight && hAsync("div", { key: 'f22b68afb0c58abb2fc78a9d5805b3ed11eb98c6', class: "textarea-highlight" })), this.renderBottomContent()));
31662
+ }) }, hAsync("label", { key: 'f840a5be2b776a4b9c18c6da24e0b7d3d4838fee', class: "textarea-wrapper", htmlFor: inputId }, this.renderLabelContainer(), hAsync("div", { key: '979461fc0d4684926d79d75759c63c6867b7622b', class: "textarea-wrapper-inner" }, hAsync("div", { key: '88f0d5d4bac29597cc2588e5b2ed72fb4fbe153d', class: "start-slot-wrapper" }, hAsync("slot", { key: '21dcca0e59c1260e3d0d1e126c1c590de15c4bad', name: "start" })), hAsync("div", { key: '3c48a4bb3d763a389d3429123e7c110064b9b8d4', class: "native-wrapper", ref: (el) => (this.textareaWrapper = el) }, hAsync("textarea", Object.assign({ key: '1550599ad15b3f215c104c014e90711f073ace8b', class: "native-textarea", ref: (el) => (this.nativeInput = el), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, minLength: this.minlength, maxLength: this.maxlength, name: this.name, placeholder: this.placeholder || '', readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, cols: this.cols, rows: this.rows, wrap: this.wrap, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeyDown, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId }, this.inheritedAttributes), value)), hAsync("div", { key: '4f01ab4d2994a6de6f49eb9ed2e310d00daf21b2', class: "end-slot-wrapper" }, hAsync("slot", { key: '501e288b6807e039972bb4f0b63906114255518a', name: "end" }))), shouldRenderHighlight && hAsync("div", { key: 'd3008eed34494aa9f8e98a28eac3b465dc4c2bd0', class: "textarea-highlight" })), this.renderBottomContent()));
31866
31663
  }
31867
31664
  get el() { return getElement(this); }
31868
31665
  static get watchers() { return {
@@ -31924,7 +31721,7 @@ class Thumbnail {
31924
31721
  registerInstance(this, hostRef);
31925
31722
  }
31926
31723
  render() {
31927
- return (hAsync(Host, { key: '0396aae5f545bbf7ebe1cbb05bc25f9181d2afe3', class: getIonMode$1(this) }, hAsync("slot", { key: 'bf01dbadd4042a4b45ce24a8ce408f15e7647a03' })));
31724
+ return (hAsync(Host, { key: 'cfa9aeb1d4fd624a9732c5230d29dd887e4b7771', class: getIonMode$1(this) }, hAsync("slot", { key: '29bc6e64063cba44e2643228df54394883933918' })));
31928
31725
  }
31929
31726
  static get style() { return IonThumbnailStyle0; }
31930
31727
  static get cmpMeta() { return {
@@ -32760,9 +32557,9 @@ class Toast {
32760
32557
  if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
32761
32558
  printIonWarning('This toast is using start and end buttons with the stacked toast layout. We recommend following the best practice of using either start or end buttons with the stacked toast layout.', el);
32762
32559
  }
32763
- return (hAsync(Host, Object.assign({ key: '66ce48d7589420d8cb9756ddaf916a7ec8f949b5', tabindex: "-1" }, this.htmlAttributes, { style: {
32560
+ return (hAsync(Host, Object.assign({ key: 'c05655ff06af8d0e48c2a85396b07ad942fa81b4', tabindex: "-1" }, this.htmlAttributes, { style: {
32764
32561
  zIndex: `${60000 + this.overlayIndex}`,
32765
- }, class: createColorClasses$1(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), hAsync("div", { key: '04ca865d1c2ac8a17102375030227721e3ba48f5', class: wrapperClass }, hAsync("div", { key: '1d0f4463c7f2428d57dc32e457d88015884361ea', class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (hAsync("ion-icon", { key: '3da9f1331b002463bbf23deaae3410d3fb9c90b5', class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), hAsync("div", { key: '4dfe8a6c966a9e5c5b35aec950631b895591f767', class: "toast-content", role: "status", "aria-atomic": "true", "aria-live": "polite" }, !revealContentToScreenReader && header !== undefined && this.renderHeader('oldHeader', 'true'), !revealContentToScreenReader && message !== undefined && this.renderToastMessage('oldMessage', 'true'), revealContentToScreenReader && header !== undefined && this.renderHeader('header'), revealContentToScreenReader && message !== undefined && this.renderToastMessage('header')), this.renderButtons(endButtons, 'end')))));
32562
+ }, class: createColorClasses$1(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), hAsync("div", { key: '9393ead4de1bf28529661d6f64049d34e18d725c', class: wrapperClass }, hAsync("div", { key: '3e9dd73c17c337849c3f26e8d0f395b3e5ee20a7', class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (hAsync("ion-icon", { key: '5d15b18364301ad55e44e9f601014ac33181590b', class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), hAsync("div", { key: 'f6dd164502637a882c5caf18445d8509b85ad6f9', class: "toast-content", role: "status", "aria-atomic": "true", "aria-live": "polite" }, !revealContentToScreenReader && header !== undefined && this.renderHeader('oldHeader', 'true'), !revealContentToScreenReader && message !== undefined && this.renderToastMessage('oldMessage', 'true'), revealContentToScreenReader && header !== undefined && this.renderHeader('header'), revealContentToScreenReader && message !== undefined && this.renderToastMessage('header')), this.renderButtons(endButtons, 'end')))));
32766
32563
  }
32767
32564
  get el() { return getElement(this); }
32768
32565
  static get watchers() { return {
@@ -32896,7 +32693,6 @@ class Toggle {
32896
32693
  this.labelPlacement = 'start';
32897
32694
  this.justify = undefined;
32898
32695
  this.alignment = undefined;
32899
- this.required = false;
32900
32696
  }
32901
32697
  disabledChanged() {
32902
32698
  if (this.gesture) {
@@ -32978,12 +32774,12 @@ class Toggle {
32978
32774
  return this.el.textContent !== '';
32979
32775
  }
32980
32776
  render() {
32981
- const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment, required } = this;
32777
+ const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment } = this;
32982
32778
  const mode = getIonMode$1(this);
32983
32779
  const value = this.getValue();
32984
32780
  const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
32985
32781
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
32986
- return (hAsync(Host, { key: '065d333e3972a6df8df047c1af6457eaa394d45a', onClick: this.onClick, class: createColorClasses$1(color, {
32782
+ return (hAsync(Host, { key: 'f52195ec3bc14c024647cb41319c32a4cd330e19', onClick: this.onClick, class: createColorClasses$1(color, {
32987
32783
  [mode]: true,
32988
32784
  'in-item': hostContext('ion-item', el),
32989
32785
  'toggle-activated': activated,
@@ -32993,10 +32789,10 @@ class Toggle {
32993
32789
  [`toggle-alignment-${alignment}`]: alignment !== undefined,
32994
32790
  [`toggle-label-placement-${labelPlacement}`]: true,
32995
32791
  [`toggle-${rtl}`]: true,
32996
- }) }, hAsync("label", { key: '6923b623b995cef1db15123ef4dd072f6d6c2c7e', class: "toggle-wrapper" }, hAsync("input", Object.assign({ key: '0e558a2c37834620fc945ea1de0098e75c56947d', 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: 'a62663c6f58665cf16af7a3fda3a41a78136c6d4', class: {
32792
+ }) }, hAsync("label", { key: 'f8b3a215ad85b2cee611ad63449b584e1640f27f', class: "toggle-wrapper" }, hAsync("input", Object.assign({ key: 'f387b1ea840737a9737917e516834c887be99c09', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl) }, this.inheritedAttributes)), hAsync("div", { key: '936af880db59fe377cd2de9101eb28a1c4fb8914', class: {
32997
32793
  'label-text-wrapper': true,
32998
32794
  'label-text-wrapper-hidden': !this.hasLabel,
32999
- }, part: "label" }, hAsync("slot", { key: '91a2c83740ef75c78f70b60941778580f1722d47' })), hAsync("div", { key: '1a638f883542dd9aac3749cc9bfcdd7ba8ea9046', class: "native-wrapper" }, this.renderToggleControl()))));
32795
+ }, part: "label" }, hAsync("slot", { key: '80a6672e2e792c15011a9496dcd75363cdba31c6' })), hAsync("div", { key: '2b2b318b38ab27b194c0dab4cecd77d9d780f2ca', class: "native-wrapper" }, this.renderToggleControl()))));
33000
32796
  }
33001
32797
  get el() { return getElement(this); }
33002
32798
  static get watchers() { return {
@@ -33019,7 +32815,6 @@ class Toggle {
33019
32815
  "labelPlacement": [1, "label-placement"],
33020
32816
  "justify": [1],
33021
32817
  "alignment": [1],
33022
- "required": [4],
33023
32818
  "activated": [32]
33024
32819
  },
33025
32820
  "$listeners$": undefined,
@@ -33051,10 +32846,6 @@ var IonToolbarMdStyle0 = toolbarMdCss;
33051
32846
  * @slot secondary - Content is placed to the left of the toolbar text in `ios` mode, and directly to the right in `md` mode.
33052
32847
  * @slot primary - Content is placed to the right of the toolbar text in `ios` mode, and to the far right in `md` mode.
33053
32848
  * @slot end - Content is placed to the right of the toolbar text in LTR, and to the left in RTL.
33054
- *
33055
- * @part background - The background of the toolbar, covering the entire area behind the toolbar content.
33056
- * @part container - The container that wraps all toolbar content, including the default slot and named slot content.
33057
- * @part content - The container for the default slot, wrapping content provided without a named slot.
33058
32849
  */
33059
32850
  class Toolbar {
33060
32851
  constructor(hostRef) {
@@ -33105,10 +32896,10 @@ class Toolbar {
33105
32896
  this.childrenStyles.forEach((value) => {
33106
32897
  Object.assign(childStyles, value);
33107
32898
  });
33108
- return (hAsync(Host, { key: 'e4d089de5c5b16f34fda10f3fe00054aa38bbc7f', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
32899
+ return (hAsync(Host, { key: '462538a5ecd01baf3cde116c9f029aeda26c81be', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
33109
32900
  [mode]: true,
33110
32901
  'in-toolbar': hostContext('ion-toolbar', this.el),
33111
- })) }, hAsync("div", { key: '6463fdec00f2c50fa8691ceed3213157b275f398', class: "toolbar-background", part: "background" }), hAsync("div", { key: 'ffcd3cf5ba187dfff98cb01101cb1dae93d0e057', class: "toolbar-container", part: "container" }, hAsync("slot", { key: '899f1b18a87a1c873f0e4c3d7b9b3dfe20fdb1e5', name: "start" }), hAsync("slot", { key: 'bf2fc384b24742e5f441f9193d173635d5d45dc7', name: "secondary" }), hAsync("div", { key: '21cebe9074ad0858567edaa106571aab5895ef1d', class: "toolbar-content", part: "content" }, hAsync("slot", { key: 'ac05301746a1e6bfb3f6c533d2fe1c770d066419' })), hAsync("slot", { key: '1dbd07d1c7d31b16a612c05672c2d559d85e83bb', name: "primary" }), hAsync("slot", { key: '617e1daa50d7f168d290f751005d79ce777f0793', name: "end" }))));
32902
+ })) }, hAsync("div", { key: 'c0b4415d3b2472de643a9be7cb3b13b3b628621b', class: "toolbar-background" }), hAsync("div", { key: '0ccb8a2dbeaa28d8f9bed87629c0c097446690c2', class: "toolbar-container" }, hAsync("slot", { key: '3e726dac359e923df21d80301651f16063a3de20', name: "start" }), hAsync("slot", { key: 'cd799330b56a7f8833bc61bb2807aafb21846f71', name: "secondary" }), hAsync("div", { key: '395282e6ac8c53576922dcdb5f08c25d34638c86', class: "toolbar-content" }, hAsync("slot", { key: 'a437c60e4ba5aae65e55169ae82a6f379868ec1d' })), hAsync("slot", { key: '711af9b9d321a7b31ede924c9bdcad767aa9a1ca', name: "primary" }), hAsync("slot", { key: 'ecc02edeaf80a837890bcb08d5096df1e22a0b9a', name: "end" }))));
33112
32903
  }
33113
32904
  get el() { return getElement(this); }
33114
32905
  static get style() { return {
@@ -33158,11 +32949,11 @@ class ToolbarTitle {
33158
32949
  render() {
33159
32950
  const mode = getIonMode$1(this);
33160
32951
  const size = this.getSize();
33161
- return (hAsync(Host, { key: '388b4015f0d64a8d5b04d622d1e1fb61d0922d6c', class: createColorClasses$1(this.color, {
32952
+ return (hAsync(Host, { key: '7293d2ecd6262feb0d8d769effbb208230baed89', class: createColorClasses$1(this.color, {
33162
32953
  [mode]: true,
33163
32954
  [`title-${size}`]: true,
33164
32955
  'title-rtl': document.dir === 'rtl',
33165
- }) }, hAsync("div", { key: '56f719e88e9322a8862acbfd0b343fd0473bfead', class: "toolbar-title" }, hAsync("slot", { key: 'd35b7c06089c2d498126bbfe859ffc4961de6276' }))));
32956
+ }) }, hAsync("div", { key: '086ec3a361ebdf6506846a8704b457cda3a6f897', class: "toolbar-title" }, hAsync("slot", { key: '59add7eb92b82d6832a8f0894f897c51fdf4f214' }))));
33166
32957
  }
33167
32958
  get el() { return getElement(this); }
33168
32959
  static get watchers() { return {