@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.mjs CHANGED
@@ -2706,6 +2706,16 @@ const shallowEqualStringMap = (map1, map2) => {
2706
2706
  }
2707
2707
  return true;
2708
2708
  };
2709
+ const getNextSiblingOfType = (element) => {
2710
+ let sibling = element.nextSibling;
2711
+ while (sibling) {
2712
+ if (sibling.nodeType === Node.ELEMENT_NODE && sibling !== null) {
2713
+ return sibling;
2714
+ }
2715
+ sibling = sibling.nextSibling;
2716
+ }
2717
+ return null;
2718
+ };
2709
2719
 
2710
2720
  /* Ionicons v7.2.2, ES Modules */
2711
2721
  const arrowBackSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path stroke-linecap='square' stroke-miterlimit='10' stroke-width='48' d='M244 400L100 256l144-144M120 256h292' class='ionicon-fill-none'/></svg>";
@@ -3213,12 +3223,9 @@ let accordionIds = 0;
3213
3223
  * @param message - The string message to be logged to the console.
3214
3224
  */
3215
3225
  const printIonWarning = (message, ...params) => {
3216
- const logLevel = config.get('logLevel', "WARN" /* LogLevel.WARN */);
3217
- if (["WARN" /* LogLevel.WARN */].includes(logLevel)) {
3218
- return console.warn(`[Ionic Warning]: ${message}`, ...params);
3219
- }
3226
+ return console.warn(`[Ionic Warning]: ${message}`, ...params);
3220
3227
  };
3221
- /**
3228
+ /*
3222
3229
  * Logs an error to the console with an Ionic prefix
3223
3230
  * to indicate the library that is warning the developer.
3224
3231
  *
@@ -3226,10 +3233,7 @@ const printIonWarning = (message, ...params) => {
3226
3233
  * @param params - Additional arguments to supply to the console.error.
3227
3234
  */
3228
3235
  const printIonError = (message, ...params) => {
3229
- const logLevel = config.get('logLevel', "ERROR" /* LogLevel.ERROR */);
3230
- if (["ERROR" /* LogLevel.ERROR */, "WARN" /* LogLevel.WARN */].includes(logLevel)) {
3231
- return console.error(`[Ionic Error]: ${message}`, ...params);
3232
- }
3236
+ return console.error(`[Ionic Error]: ${message}`, ...params);
3233
3237
  };
3234
3238
  /**
3235
3239
  * Prints an error informing developers that an implementation requires an element to be used
@@ -8493,7 +8497,6 @@ class Checkbox {
8493
8497
  this.labelPlacement = 'start';
8494
8498
  this.justify = undefined;
8495
8499
  this.alignment = undefined;
8496
- this.required = false;
8497
8500
  }
8498
8501
  componentWillLoad() {
8499
8502
  this.inheritedAttributes = Object.assign({}, inheritAriaAttributes(this.el));
@@ -8505,11 +8508,11 @@ class Checkbox {
8505
8508
  }
8506
8509
  }
8507
8510
  render() {
8508
- const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment, required, } = this;
8511
+ const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment, } = this;
8509
8512
  const mode = getIonMode$1(this);
8510
8513
  const path = getSVGPath(mode, indeterminate);
8511
8514
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
8512
- return (hAsync(Host, { key: '07a5884062dd256b570e856270c74a5a09d2f2a5', "aria-checked": indeterminate ? 'mixed' : `${checked}`, class: createColorClasses$1(color, {
8515
+ return (hAsync(Host, { key: '6dc787e1100521d08c4900104e1a3e2f594e919f', "aria-checked": indeterminate ? 'mixed' : `${checked}`, class: createColorClasses$1(color, {
8513
8516
  [mode]: true,
8514
8517
  'in-item': hostContext('ion-item', el),
8515
8518
  'checkbox-checked': checked,
@@ -8519,10 +8522,10 @@ class Checkbox {
8519
8522
  [`checkbox-justify-${justify}`]: justify !== undefined,
8520
8523
  [`checkbox-alignment-${alignment}`]: alignment !== undefined,
8521
8524
  [`checkbox-label-placement-${labelPlacement}`]: true,
8522
- }), 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: {
8525
+ }), onClick: this.onClick }, hAsync("label", { key: '68222fb736a5ec3f2e488649b0e2ce0417dcb224', class: "checkbox-wrapper" }, hAsync("input", Object.assign({ key: 'f12962d7e9b19c744cfdbdeccc67ae7f5d080281', type: "checkbox", checked: checked ? true : undefined, disabled: disabled, id: inputId, onChange: this.toggleChecked, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl) }, inheritedAttributes)), hAsync("div", { key: 'c72df2699414b1e5a41a1bc267bc634f0c93dcff', class: {
8523
8526
  'label-text-wrapper': true,
8524
8527
  'label-text-wrapper-hidden': el.textContent === '',
8525
- }, 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)))));
8528
+ }, part: "label" }, hAsync("slot", { key: 'a2a80285178a7e0e3b536fc9ca26b8b444aa4307' })), hAsync("div", { key: 'c2b05e0d1fe8df5dcd72858220b5ff51ecaee4cc', class: "native-wrapper" }, hAsync("svg", { key: 'ee24913fded72258ebd9713654a6dba92a18fcf7', class: "checkbox-icon", viewBox: "0 0 24 24", part: "container" }, path)))));
8526
8529
  }
8527
8530
  getSVGPath(mode, indeterminate) {
8528
8531
  let path = indeterminate ? (hAsync("path", { d: "M6 12L18 12", part: "mark" })) : (hAsync("path", { d: "M5.9,12.5l3.8,3.8l8.8-8.8", part: "mark" }));
@@ -8549,7 +8552,6 @@ class Checkbox {
8549
8552
  "labelPlacement": [1, "label-placement"],
8550
8553
  "justify": [1],
8551
8554
  "alignment": [1],
8552
- "required": [4],
8553
8555
  "setFocus": [64]
8554
8556
  },
8555
8557
  "$listeners$": undefined,
@@ -15897,11 +15899,11 @@ class ItemDivider {
15897
15899
  }
15898
15900
  render() {
15899
15901
  const mode = getIonMode$1(this);
15900
- return (hAsync(Host, { key: '7cb307fb16d74eac6138460aad469d8aa2cb44aa', class: createColorClasses$1(this.color, {
15902
+ return (hAsync(Host, { key: '6cff318230a9b2a9db529df154285d3dd9822efe', class: createColorClasses$1(this.color, {
15901
15903
  [mode]: true,
15902
15904
  'item-divider-sticky': this.sticky,
15903
15905
  item: true,
15904
- }) }, 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" }))));
15906
+ }) }, 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" }))));
15905
15907
  }
15906
15908
  get el() { return getElement(this); }
15907
15909
  static get style() { return {
@@ -15933,7 +15935,7 @@ class ItemGroup {
15933
15935
  }
15934
15936
  render() {
15935
15937
  const mode = getIonMode$1(this);
15936
- return (hAsync(Host, { key: 'a95b74fed5ce0888eca195ed718f7bfaa53fa86c', role: "group", class: {
15938
+ return (hAsync(Host, { key: 'f9ffe0290d3fa546494fe55f952d8554f2a8abf8', role: "group", class: {
15937
15939
  [mode]: true,
15938
15940
  // Used internally for styling
15939
15941
  [`item-group-${mode}`]: true,
@@ -16001,12 +16003,12 @@ class ItemOption {
16001
16003
  href: this.href,
16002
16004
  target: this.target,
16003
16005
  };
16004
- return (hAsync(Host, { key: 'a5acf613ba8d0906abfb08a5865df845f7c82373', onClick: this.onClick, class: createColorClasses$1(this.color, {
16006
+ return (hAsync(Host, { key: '89310624997821858c1abde60c0ffb142ca466e0', onClick: this.onClick, class: createColorClasses$1(this.color, {
16005
16007
  [mode]: true,
16006
16008
  'item-option-disabled': disabled,
16007
16009
  'item-option-expandable': expandable,
16008
16010
  'ion-activatable': true,
16009
- }) }, 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' }))));
16011
+ }) }, 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' }))));
16010
16012
  }
16011
16013
  get el() { return getElement(this); }
16012
16014
  static get style() { return {
@@ -16053,7 +16055,7 @@ class ItemOptions {
16053
16055
  render() {
16054
16056
  const mode = getIonMode$1(this);
16055
16057
  const isEnd = isEndSide(this.side);
16056
- return (hAsync(Host, { key: 'e73d542ea800d953373c478b287f90bac63c4a29', class: {
16058
+ return (hAsync(Host, { key: '6d91399d2aaaa81d514d0bbc8dffe53eeec25d36', class: {
16057
16059
  [mode]: true,
16058
16060
  // Used internally for styling
16059
16061
  [`item-options-${mode}`]: true,
@@ -16515,7 +16517,7 @@ class ItemSliding {
16515
16517
  }
16516
16518
  render() {
16517
16519
  const mode = getIonMode$1(this);
16518
- return (hAsync(Host, { key: 'b88f1f7cd0a5625dbccc0ee0f771c79a1338c5c8', class: {
16520
+ return (hAsync(Host, { key: '47a3edd2ef2080ed9cfc2784277dea09785c7dc4', class: {
16519
16521
  [mode]: true,
16520
16522
  'item-sliding-active-slide': this.state !== 2 /* SlidingState.Disabled */,
16521
16523
  'item-sliding-active-options-end': (this.state & 8 /* SlidingState.End */) !== 0,
@@ -16624,13 +16626,13 @@ class Label {
16624
16626
  render() {
16625
16627
  const position = this.position;
16626
16628
  const mode = getIonMode$1(this);
16627
- return (hAsync(Host, { key: 'aa8cda765cf7813b02adbc39cff7dec21fc2d730', class: createColorClasses$1(this.color, {
16629
+ return (hAsync(Host, { key: '6353a70565ef6fbbbf4042b000e536c61bcf99a9', class: createColorClasses$1(this.color, {
16628
16630
  [mode]: true,
16629
16631
  'in-item-color': hostContext('ion-item.ion-color', this.el),
16630
16632
  [`label-${position}`]: position !== undefined,
16631
16633
  [`label-no-animate`]: this.noAnimate,
16632
16634
  'label-rtl': document.dir === 'rtl',
16633
- }) }, hAsync("slot", { key: '297af5559f2ccb3b2d06ea00e074aa96c3e5235c' })));
16635
+ }) }, hAsync("slot", { key: '6ef9c2758c0168442aa84941af0a6cec1ef1ec21' })));
16634
16636
  }
16635
16637
  get el() { return getElement(this); }
16636
16638
  static get watchers() { return {
@@ -16732,10 +16734,10 @@ class ListHeader {
16732
16734
  render() {
16733
16735
  const { lines } = this;
16734
16736
  const mode = getIonMode$1(this);
16735
- return (hAsync(Host, { key: 'f6e2de02ec55e3c64d129a52fb154e9d4e36ea98', class: createColorClasses$1(this.color, {
16737
+ return (hAsync(Host, { key: 'fb78bd8601cbd7b90ec84a96e0c8325be1132b1e', class: createColorClasses$1(this.color, {
16736
16738
  [mode]: true,
16737
16739
  [`list-header-lines-${lines}`]: lines !== undefined,
16738
- }) }, hAsync("div", { key: 'a38b47618205ccdd76bb8e406e37522b1c087780', class: "list-header-inner" }, hAsync("slot", { key: '5afd06a7fbdf06bef5b7b27723515133fae66004' }))));
16740
+ }) }, hAsync("div", { key: '2580ad49f3a54973e15f14d645a1e55a6fa066ac', class: "list-header-inner" }, hAsync("slot", { key: '677b2e2ec8eeb3ae6ad329e86c76451cf3ae6c2f' }))));
16739
16741
  }
16740
16742
  static get style() { return {
16741
16743
  ios: IonListHeaderIosStyle0,
@@ -17004,9 +17006,9 @@ class Loading {
17004
17006
  * Otherwise, don't set aria-labelledby.
17005
17007
  */
17006
17008
  const ariaLabelledBy = message !== undefined ? msgId : null;
17007
- return (hAsync(Host, Object.assign({ key: '016c85ddadecf0f7e50912d42301e2b4ba940709', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
17009
+ return (hAsync(Host, Object.assign({ key: 'd97f536b7f443ea19a2bbf2dcbc7f546b8e0a092', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
17008
17010
  zIndex: `${40000 + this.overlayIndex}`,
17009
- }, 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" })));
17011
+ }, 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" })));
17010
17012
  }
17011
17013
  get el() { return getElement(this); }
17012
17014
  static get watchers() { return {
@@ -18014,14 +18016,14 @@ class Menu {
18014
18016
  * the ionBackButton listener in the menu controller
18015
18017
  * will handle closing the menu when Escape is pressed.
18016
18018
  */
18017
- return (hAsync(Host, { key: 'e67a2f0596e27d7ddf9ef4b65b14cc1b6d1572d2', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
18019
+ return (hAsync(Host, { key: 'da96fdb4c5ddf60e615cc4cdda7ccdb3fd7e089b', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
18018
18020
  [mode]: true,
18019
18021
  [`menu-type-${type}`]: true,
18020
18022
  'menu-enabled': !disabled,
18021
18023
  [`menu-side-${side}`]: true,
18022
18024
  'menu-pane-visible': isPaneVisible,
18023
18025
  'split-pane-side': hostContext('ion-split-pane', el),
18024
- } }, 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" })));
18026
+ } }, 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" })));
18025
18027
  }
18026
18028
  get el() { return getElement(this); }
18027
18029
  static get watchers() { return {
@@ -18124,7 +18126,7 @@ class MenuButton {
18124
18126
  type: this.type,
18125
18127
  };
18126
18128
  const ariaLabel = inheritedAttributes['aria-label'] || 'menu';
18127
- return (hAsync(Host, { key: 'a2b925ae91161c18e95d2cb94f32ae7f9df60186', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses$1(color, {
18129
+ return (hAsync(Host, { key: '7ec29715ce7926b7c2b08f3d9cac8aaa16b3dc28', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses$1(color, {
18128
18130
  [mode]: true,
18129
18131
  button: true, // ion-buttons target .button
18130
18132
  'menu-button-hidden': hidden,
@@ -18133,7 +18135,7 @@ class MenuButton {
18133
18135
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
18134
18136
  'ion-activatable': true,
18135
18137
  'ion-focusable': true,
18136
- }) }, 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" }))));
18138
+ }) }, 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" }))));
18137
18139
  }
18138
18140
  get el() { return getElement(this); }
18139
18141
  static get style() { return {
@@ -18182,10 +18184,10 @@ class MenuToggle {
18182
18184
  render() {
18183
18185
  const mode = getIonMode$1(this);
18184
18186
  const hidden = this.autoHide && !this.visible;
18185
- return (hAsync(Host, { key: 'bc1dfcc3a4d677e31d5b962567122c1912354dd3', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
18187
+ return (hAsync(Host, { key: '7c27ea5b0795676bf5cb33e1f83aa142c197f64e', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
18186
18188
  [mode]: true,
18187
18189
  'menu-toggle-hidden': hidden,
18188
- } }, hAsync("slot", { key: '4b2c290cbe8fd222249ea1e85c5f93fb9ab368f8' })));
18190
+ } }, hAsync("slot", { key: '69f187becedc0fe34603d41d279f043cf0fdf776' })));
18189
18191
  }
18190
18192
  static get style() { return IonMenuToggleStyle0; }
18191
18193
  static get cmpMeta() { return {
@@ -19025,7 +19027,7 @@ const computeDuration = (remaining, velocity) => {
19025
19027
  };
19026
19028
 
19027
19029
  const createSheetEnterAnimation = (opts) => {
19028
- const { currentBreakpoint, backdropBreakpoint, expandToScroll } = opts;
19030
+ const { currentBreakpoint, backdropBreakpoint } = opts;
19029
19031
  /**
19030
19032
  * If the backdropBreakpoint is undefined, then the backdrop
19031
19033
  * should always fade in. If the backdropBreakpoint came before the
@@ -19045,16 +19047,7 @@ const createSheetEnterAnimation = (opts) => {
19045
19047
  { offset: 0, opacity: 1, transform: 'translateY(100%)' },
19046
19048
  { offset: 1, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
19047
19049
  ]);
19048
- /**
19049
- * This allows the content to be scrollable at any breakpoint.
19050
- */
19051
- const contentAnimation = !expandToScroll
19052
- ? createAnimation('contentAnimation').keyframes([
19053
- { offset: 0, opacity: 1, maxHeight: `${(1 - currentBreakpoint) * 100}%` },
19054
- { offset: 1, opacity: 1, maxHeight: `${currentBreakpoint * 100}%` },
19055
- ])
19056
- : undefined;
19057
- return { wrapperAnimation, backdropAnimation, contentAnimation };
19050
+ return { wrapperAnimation, backdropAnimation };
19058
19051
  };
19059
19052
  const createSheetLeaveAnimation = (opts) => {
19060
19053
  const { currentBreakpoint, backdropBreakpoint } = opts;
@@ -19089,68 +19082,22 @@ const createEnterAnimation$1 = () => {
19089
19082
  })
19090
19083
  .afterClearStyles(['pointer-events']);
19091
19084
  const wrapperAnimation = createAnimation().fromTo('transform', 'translateY(100vh)', 'translateY(0vh)');
19092
- return { backdropAnimation, wrapperAnimation, contentAnimation: undefined };
19085
+ return { backdropAnimation, wrapperAnimation };
19093
19086
  };
19094
19087
  /**
19095
19088
  * iOS Modal Enter Animation for the Card presentation style
19096
19089
  */
19097
19090
  const iosEnterAnimation$3 = (baseEl, opts) => {
19098
- const { presentingEl, currentBreakpoint, expandToScroll } = opts;
19091
+ const { presentingEl, currentBreakpoint } = opts;
19099
19092
  const root = getElementRoot(baseEl);
19100
- const { wrapperAnimation, backdropAnimation, contentAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation$1();
19093
+ const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation$1();
19101
19094
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
19102
19095
  wrapperAnimation.addElement(root.querySelectorAll('.modal-wrapper, .modal-shadow')).beforeStyles({ opacity: 1 });
19103
- // The content animation is only added if scrolling is enabled for
19104
- // all the breakpoints.
19105
- !expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
19106
19096
  const baseAnimation = createAnimation('entering-base')
19107
19097
  .addElement(baseEl)
19108
19098
  .easing('cubic-bezier(0.32,0.72,0,1)')
19109
19099
  .duration(500)
19110
- .addAnimation([wrapperAnimation])
19111
- .beforeAddWrite(() => {
19112
- if (expandToScroll) {
19113
- // Scroll can only be done when the modal is fully expanded.
19114
- return;
19115
- }
19116
- /**
19117
- * There are some browsers that causes flickering when
19118
- * dragging the content when scroll is enabled at every
19119
- * breakpoint. This is due to the wrapper element being
19120
- * transformed off the screen and having a snap animation.
19121
- *
19122
- * A workaround is to clone the footer element and append
19123
- * it outside of the wrapper element. This way, the footer
19124
- * is still visible and the drag can be done without
19125
- * flickering. The original footer is hidden until the modal
19126
- * is dismissed. This maintains the animation of the footer
19127
- * when the modal is dismissed.
19128
- *
19129
- * The workaround needs to be done before the animation starts
19130
- * so there are no flickering issues.
19131
- */
19132
- const ionFooter = baseEl.querySelector('ion-footer');
19133
- /**
19134
- * This check is needed to prevent more than one footer
19135
- * from being appended to the shadow root.
19136
- * Otherwise, iOS and MD enter animations would append
19137
- * the footer twice.
19138
- */
19139
- const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
19140
- if (ionFooter && !ionFooterAlreadyAppended) {
19141
- const footerHeight = ionFooter.clientHeight;
19142
- const clonedFooter = ionFooter.cloneNode(true);
19143
- baseEl.shadowRoot.appendChild(clonedFooter);
19144
- ionFooter.style.setProperty('display', 'none');
19145
- ionFooter.setAttribute('aria-hidden', 'true');
19146
- // Padding is added to prevent some content from being hidden.
19147
- const page = baseEl.querySelector('.ion-page');
19148
- page.style.setProperty('padding-bottom', `${footerHeight}px`);
19149
- }
19150
- });
19151
- if (contentAnimation) {
19152
- baseAnimation.addAnimation(contentAnimation);
19153
- }
19100
+ .addAnimation(wrapperAnimation);
19154
19101
  if (presentingEl) {
19155
19102
  const isMobile = window.innerWidth < 768;
19156
19103
  const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
@@ -19228,7 +19175,7 @@ const createLeaveAnimation$1 = () => {
19228
19175
  * iOS Modal Leave Animation
19229
19176
  */
19230
19177
  const iosLeaveAnimation$3 = (baseEl, opts, duration = 500) => {
19231
- const { presentingEl, currentBreakpoint, expandToScroll } = opts;
19178
+ const { presentingEl, currentBreakpoint } = opts;
19232
19179
  const root = getElementRoot(baseEl);
19233
19180
  const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation$1();
19234
19181
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
@@ -19237,29 +19184,7 @@ const iosLeaveAnimation$3 = (baseEl, opts, duration = 500) => {
19237
19184
  .addElement(baseEl)
19238
19185
  .easing('cubic-bezier(0.32,0.72,0,1)')
19239
19186
  .duration(duration)
19240
- .addAnimation(wrapperAnimation)
19241
- .beforeAddWrite(() => {
19242
- if (expandToScroll) {
19243
- // Scroll can only be done when the modal is fully expanded.
19244
- return;
19245
- }
19246
- /**
19247
- * If expandToScroll is disabled, we need to swap
19248
- * the visibility to the original, so the footer
19249
- * dismisses with the modal and doesn't stay
19250
- * until the modal is removed from the DOM.
19251
- */
19252
- const ionFooter = baseEl.querySelector('ion-footer');
19253
- if (ionFooter) {
19254
- const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
19255
- ionFooter.style.removeProperty('display');
19256
- ionFooter.removeAttribute('aria-hidden');
19257
- clonedFooter.style.setProperty('display', 'none');
19258
- clonedFooter.setAttribute('aria-hidden', 'true');
19259
- const page = baseEl.querySelector('.ion-page');
19260
- page.style.removeProperty('padding-bottom');
19261
- }
19262
- });
19187
+ .addAnimation(wrapperAnimation);
19263
19188
  if (presentingEl) {
19264
19189
  const isMobile = window.innerWidth < 768;
19265
19190
  const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
@@ -19337,69 +19262,22 @@ const createEnterAnimation = () => {
19337
19262
  { offset: 0, opacity: 0.01, transform: 'translateY(40px)' },
19338
19263
  { offset: 1, opacity: 1, transform: `translateY(0px)` },
19339
19264
  ]);
19340
- return { backdropAnimation, wrapperAnimation, contentAnimation: undefined };
19265
+ return { backdropAnimation, wrapperAnimation };
19341
19266
  };
19342
19267
  /**
19343
19268
  * Md Modal Enter Animation
19344
19269
  */
19345
19270
  const mdEnterAnimation$2 = (baseEl, opts) => {
19346
- const { currentBreakpoint, expandToScroll } = opts;
19271
+ const { currentBreakpoint } = opts;
19347
19272
  const root = getElementRoot(baseEl);
19348
- const { wrapperAnimation, backdropAnimation, contentAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
19273
+ const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
19349
19274
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
19350
19275
  wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
19351
- // The content animation is only added if scrolling is enabled for
19352
- // all the breakpoints.
19353
- expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
19354
- const baseAnimation = createAnimation()
19276
+ return createAnimation()
19355
19277
  .addElement(baseEl)
19356
19278
  .easing('cubic-bezier(0.36,0.66,0.04,1)')
19357
19279
  .duration(280)
19358
- .addAnimation([backdropAnimation, wrapperAnimation])
19359
- .beforeAddWrite(() => {
19360
- if (expandToScroll) {
19361
- // Scroll can only be done when the modal is fully expanded.
19362
- return;
19363
- }
19364
- /**
19365
- * There are some browsers that causes flickering when
19366
- * dragging the content when scroll is enabled at every
19367
- * breakpoint. This is due to the wrapper element being
19368
- * transformed off the screen and having a snap animation.
19369
- *
19370
- * A workaround is to clone the footer element and append
19371
- * it outside of the wrapper element. This way, the footer
19372
- * is still visible and the drag can be done without
19373
- * flickering. The original footer is hidden until the modal
19374
- * is dismissed. This maintains the animation of the footer
19375
- * when the modal is dismissed.
19376
- *
19377
- * The workaround needs to be done before the animation starts
19378
- * so there are no flickering issues.
19379
- */
19380
- const ionFooter = baseEl.querySelector('ion-footer');
19381
- /**
19382
- * This check is needed to prevent more than one footer
19383
- * from being appended to the shadow root.
19384
- * Otherwise, iOS and MD enter animations would append
19385
- * the footer twice.
19386
- */
19387
- const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
19388
- if (ionFooter && !ionFooterAlreadyAppended) {
19389
- const footerHeight = ionFooter.clientHeight;
19390
- const clonedFooter = ionFooter.cloneNode(true);
19391
- baseEl.shadowRoot.appendChild(clonedFooter);
19392
- ionFooter.style.setProperty('display', 'none');
19393
- ionFooter.setAttribute('aria-hidden', 'true');
19394
- // Padding is added to prevent some content from being hidden.
19395
- const page = baseEl.querySelector('.ion-page');
19396
- page.style.setProperty('padding-bottom', `${footerHeight}px`);
19397
- }
19398
- });
19399
- if (contentAnimation) {
19400
- baseAnimation.addAnimation(contentAnimation);
19401
- }
19402
- return baseAnimation;
19280
+ .addAnimation([backdropAnimation, wrapperAnimation]);
19403
19281
  };
19404
19282
 
19405
19283
  const createLeaveAnimation = () => {
@@ -19414,41 +19292,18 @@ const createLeaveAnimation = () => {
19414
19292
  * Md Modal Leave Animation
19415
19293
  */
19416
19294
  const mdLeaveAnimation$2 = (baseEl, opts) => {
19417
- const { currentBreakpoint, expandToScroll } = opts;
19295
+ const { currentBreakpoint } = opts;
19418
19296
  const root = getElementRoot(baseEl);
19419
19297
  const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation();
19420
19298
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
19421
19299
  wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
19422
- const baseAnimation = createAnimation()
19300
+ return createAnimation()
19423
19301
  .easing('cubic-bezier(0.47,0,0.745,0.715)')
19424
19302
  .duration(200)
19425
- .addAnimation([backdropAnimation, wrapperAnimation])
19426
- .beforeAddWrite(() => {
19427
- if (expandToScroll) {
19428
- // Scroll can only be done when the modal is fully expanded.
19429
- return;
19430
- }
19431
- /**
19432
- * If expandToScroll is disabled, we need to swap
19433
- * the visibility to the original, so the footer
19434
- * dismisses with the modal and doesn't stay
19435
- * until the modal is removed from the DOM.
19436
- */
19437
- const ionFooter = baseEl.querySelector('ion-footer');
19438
- if (ionFooter) {
19439
- const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
19440
- ionFooter.style.removeProperty('display');
19441
- ionFooter.removeAttribute('aria-hidden');
19442
- clonedFooter.style.setProperty('display', 'none');
19443
- clonedFooter.setAttribute('aria-hidden', 'true');
19444
- const page = baseEl.querySelector('.ion-page');
19445
- page.style.removeProperty('padding-bottom');
19446
- }
19447
- });
19448
- return baseAnimation;
19303
+ .addAnimation([backdropAnimation, wrapperAnimation]);
19449
19304
  };
19450
19305
 
19451
- const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], expandToScroll, getCurrentBreakpoint, onDismiss, onBreakpointChange) => {
19306
+ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, animation, breakpoints = [], getCurrentBreakpoint, onDismiss, onBreakpointChange) => {
19452
19307
  // Defaults for the sheet swipe animation
19453
19308
  const defaultBackdrop = [
19454
19309
  { offset: 0, opacity: 'var(--backdrop-opacity)' },
@@ -19465,10 +19320,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19465
19320
  { offset: 1, transform: 'translateY(100%)' },
19466
19321
  ],
19467
19322
  BACKDROP_KEYFRAMES: backdropBreakpoint !== 0 ? customBackdrop : defaultBackdrop,
19468
- CONTENT_KEYFRAMES: [
19469
- { offset: 0, maxHeight: '100%' },
19470
- { offset: 1, maxHeight: '0%' },
19471
- ],
19472
19323
  };
19473
19324
  const contentEl = baseEl.querySelector('ion-content');
19474
19325
  const height = wrapperEl.clientHeight;
@@ -19476,11 +19327,10 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19476
19327
  let offset = 0;
19477
19328
  let canDismissBlocksGesture = false;
19478
19329
  const canDismissMaxStep = 0.95;
19479
- const maxBreakpoint = breakpoints[breakpoints.length - 1];
19480
- const minBreakpoint = breakpoints[0];
19481
19330
  const wrapperAnimation = animation.childAnimations.find((ani) => ani.id === 'wrapperAnimation');
19482
19331
  const backdropAnimation = animation.childAnimations.find((ani) => ani.id === 'backdropAnimation');
19483
- const contentAnimation = animation.childAnimations.find((ani) => ani.id === 'contentAnimation');
19332
+ const maxBreakpoint = breakpoints[breakpoints.length - 1];
19333
+ const minBreakpoint = breakpoints[0];
19484
19334
  const enableBackdrop = () => {
19485
19335
  baseEl.style.setProperty('pointer-events', 'auto');
19486
19336
  backdropEl.style.setProperty('pointer-events', 'auto');
@@ -19503,31 +19353,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19503
19353
  */
19504
19354
  baseEl.classList.add(FOCUS_TRAP_DISABLE_CLASS);
19505
19355
  };
19506
- /**
19507
- * Toggles the visible modal footer when `expandToScroll` is disabled.
19508
- * @param footer The footer to show.
19509
- */
19510
- const swapFooterVisibility = (footer) => {
19511
- const originalFooter = baseEl.querySelector('ion-footer');
19512
- if (!originalFooter) {
19513
- return;
19514
- }
19515
- const clonedFooter = wrapperEl.nextElementSibling;
19516
- const footerToHide = footer === 'original' ? clonedFooter : originalFooter;
19517
- const footerToShow = footer === 'original' ? originalFooter : clonedFooter;
19518
- footerToShow.style.removeProperty('display');
19519
- footerToShow.removeAttribute('aria-hidden');
19520
- const page = baseEl.querySelector('.ion-page');
19521
- if (footer === 'original') {
19522
- page.style.removeProperty('padding-bottom');
19523
- }
19524
- else {
19525
- const pagePadding = footerToShow.clientHeight;
19526
- page.style.setProperty('padding-bottom', `${pagePadding}px`);
19527
- }
19528
- footerToHide.style.setProperty('display', 'none');
19529
- footerToHide.setAttribute('aria-hidden', 'true');
19530
- };
19531
19356
  /**
19532
19357
  * After the entering animation completes,
19533
19358
  * we need to set the animation to go from
@@ -19539,7 +19364,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19539
19364
  if (wrapperAnimation && backdropAnimation) {
19540
19365
  wrapperAnimation.keyframes([...SheetDefaults.WRAPPER_KEYFRAMES]);
19541
19366
  backdropAnimation.keyframes([...SheetDefaults.BACKDROP_KEYFRAMES]);
19542
- contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.keyframes([...SheetDefaults.CONTENT_KEYFRAMES]);
19543
19367
  animation.progressStart(true, 1 - currentBreakpoint);
19544
19368
  /**
19545
19369
  * If backdrop is not enabled, then content
@@ -19556,7 +19380,7 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19556
19380
  disableBackdrop();
19557
19381
  }
19558
19382
  }
19559
- if (contentEl && currentBreakpoint !== maxBreakpoint && expandToScroll) {
19383
+ if (contentEl && currentBreakpoint !== maxBreakpoint) {
19560
19384
  contentEl.scrollY = false;
19561
19385
  }
19562
19386
  const canStart = (detail) => {
@@ -19570,13 +19394,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19570
19394
  */
19571
19395
  const contentEl = findClosestIonContent(detail.event.target);
19572
19396
  currentBreakpoint = getCurrentBreakpoint();
19573
- /**
19574
- * If we have expandToScroll disabled, we should not allow the swipe gesture to start
19575
- * if the content is being swiped.
19576
- */
19577
- if (!expandToScroll && contentEl) {
19578
- return false;
19579
- }
19580
19397
  if (currentBreakpoint === 1 && contentEl) {
19581
19398
  /**
19582
19399
  * The modal should never swipe to close on the content with a refresher.
@@ -19607,15 +19424,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19607
19424
  * Remove undefined check
19608
19425
  */
19609
19426
  canDismissBlocksGesture = baseEl.canDismiss !== undefined && baseEl.canDismiss !== true && minBreakpoint === 0;
19610
- /**
19611
- * If expandToScroll is disabled, we need to swap
19612
- * the footer visibility to the original, so if the modal
19613
- * is dismissed, the footer dismisses with the modal
19614
- * and doesn't stay on the screen after the modal is gone.
19615
- */
19616
- if (!expandToScroll) {
19617
- swapFooterVisibility('original');
19618
- }
19619
19427
  /**
19620
19428
  * If we are pulling down, then it is possible we are pulling on the content.
19621
19429
  * We do not want scrolling to happen at the same time as the gesture.
@@ -19731,19 +19539,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19731
19539
  opacity: `calc(var(--backdrop-opacity) * ${getBackdropValueForSheet(snapToBreakpoint, backdropBreakpoint)})`,
19732
19540
  },
19733
19541
  ]);
19734
- if (contentAnimation) {
19735
- /**
19736
- * The modal content should scroll at any breakpoint when expandToScroll
19737
- * is disabled. In order to do this, the content needs to be completely
19738
- * viewable so scrolling can access everything. Otherwise, the default
19739
- * behavior would show the content off the screen and only allow
19740
- * scrolling when the sheet is fully expanded.
19741
- */
19742
- contentAnimation.keyframes([
19743
- { offset: 0, maxHeight: `${(1 - breakpointOffset) * 100}%` },
19744
- { offset: 1, maxHeight: `${snapToBreakpoint * 100}%` },
19745
- ]);
19746
- }
19747
19542
  animation.progressStep(0);
19748
19543
  }
19749
19544
  /**
@@ -19751,14 +19546,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19751
19546
  * snapping animation completes.
19752
19547
  */
19753
19548
  gesture.enable(false);
19754
- /**
19755
- * If expandToScroll is disabled, we need to swap
19756
- * the footer visibility to the cloned one so the footer
19757
- * doesn't flicker when the sheet's height is animated.
19758
- */
19759
- if (!expandToScroll && shouldRemainOpen) {
19760
- swapFooterVisibility('cloned');
19761
- }
19762
19549
  if (shouldPreventDismiss) {
19763
19550
  handleCanDismiss(baseEl, animation);
19764
19551
  }
@@ -19766,13 +19553,13 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19766
19553
  onDismiss();
19767
19554
  }
19768
19555
  /**
19769
- * Enables scrolling immediately if the sheet is about to fully expand
19770
- * or if it allows scrolling at any breakpoint. Without this, there would
19771
- * be a ~500ms delay while the modal animation completes, causing a
19772
- * noticeable lag. Native iOS allows scrolling as soon as the gesture is
19773
- * released, so we align with that behavior.
19556
+ * If the sheet is going to be fully expanded then we should enable
19557
+ * scrolling immediately. The sheet modal animation takes ~500ms to finish
19558
+ * so if we wait until then there is a visible delay for when scrolling is
19559
+ * re-enabled. Native iOS allows for scrolling on the sheet modal as soon
19560
+ * as the gesture is released, so we align with that.
19774
19561
  */
19775
- if (contentEl && (snapToBreakpoint === breakpoints[breakpoints.length - 1] || !expandToScroll)) {
19562
+ if (contentEl && snapToBreakpoint === breakpoints[breakpoints.length - 1]) {
19776
19563
  contentEl.scrollY = true;
19777
19564
  }
19778
19565
  return new Promise((resolve) => {
@@ -19790,7 +19577,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19790
19577
  raf(() => {
19791
19578
  wrapperAnimation.keyframes([...SheetDefaults.WRAPPER_KEYFRAMES]);
19792
19579
  backdropAnimation.keyframes([...SheetDefaults.BACKDROP_KEYFRAMES]);
19793
- contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.keyframes([...SheetDefaults.CONTENT_KEYFRAMES]);
19794
19580
  animation.progressStart(true, 1 - snapToBreakpoint);
19795
19581
  currentBreakpoint = snapToBreakpoint;
19796
19582
  onBreakpointChange(currentBreakpoint);
@@ -19843,10 +19629,10 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
19843
19629
  };
19844
19630
  };
19845
19631
 
19846
- const modalIosCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.4)}:host(.modal-card),:host(.modal-sheet){--border-radius:10px}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:10px}}.modal-wrapper{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0)}@media screen and (max-width: 767px){@supports (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - max(30px, var(--ion-safe-area-top)) - 10px)}}@supports not (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - 40px)}}:host(.modal-card) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-card){--backdrop-opacity:0;--width:100%;-ms-flex-align:end;align-items:flex-end}:host(.modal-card) .modal-shadow{display:none}:host(.modal-card) ion-backdrop{pointer-events:none}}@media screen and (min-width: 768px){:host(.modal-card){--width:calc(100% - 120px);--height:calc(100% - (120px + var(--ion-safe-area-top) + var(--ion-safe-area-bottom)));--max-width:720px;--max-height:1000px;--backdrop-opacity:0;--box-shadow:0px 0px 30px 10px rgba(0, 0, 0, 0.1);-webkit-transition:all 0.5s ease-in-out;transition:all 0.5s ease-in-out}:host(.modal-card) .modal-wrapper{-webkit-box-shadow:none;box-shadow:none}:host(.modal-card) .modal-shadow{-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}}:host(.modal-sheet) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer ion-toolbar:first-of-type{padding-top:6px}";
19632
+ const modalIosCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.4)}:host(.modal-card),:host(.modal-sheet){--border-radius:10px}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:10px}}.modal-wrapper{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0)}@media screen and (max-width: 767px){@supports (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - max(30px, var(--ion-safe-area-top)) - 10px)}}@supports not (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - 40px)}}:host(.modal-card) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-card){--backdrop-opacity:0;--width:100%;-ms-flex-align:end;align-items:flex-end}:host(.modal-card) .modal-shadow{display:none}:host(.modal-card) ion-backdrop{pointer-events:none}}@media screen and (min-width: 768px){:host(.modal-card){--width:calc(100% - 120px);--height:calc(100% - (120px + var(--ion-safe-area-top) + var(--ion-safe-area-bottom)));--max-width:720px;--max-height:1000px;--backdrop-opacity:0;--box-shadow:0px 0px 30px 10px rgba(0, 0, 0, 0.1);-webkit-transition:all 0.5s ease-in-out;transition:all 0.5s ease-in-out}:host(.modal-card) .modal-wrapper{-webkit-box-shadow:none;box-shadow:none}:host(.modal-card) .modal-shadow{-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}}:host(.modal-sheet) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}";
19847
19633
  var IonModalIosStyle0 = modalIosCss;
19848
19634
 
19849
- const modalMdCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:2px;--box-shadow:0 28px 48px rgba(0, 0, 0, 0.4)}}.modal-wrapper{-webkit-transform:translate3d(0, 40px, 0);transform:translate3d(0, 40px, 0);opacity:0.01}";
19635
+ const modalMdCss = ":host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px;--ion-safe-area-top:0px;--ion-safe-area-bottom:0px;--ion-safe-area-right:0px;--ion-safe-area-left:0px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:\"\"}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:2px;--box-shadow:0 28px 48px rgba(0, 0, 0, 0.4)}}.modal-wrapper{-webkit-transform:translate3d(0, 40px, 0);transform:translate3d(0, 40px, 0);opacity:0.01}";
19850
19636
  var IonModalMdStyle0 = modalMdCss;
19851
19637
 
19852
19638
  // TODO(FW-2832): types
@@ -19925,7 +19711,6 @@ class Modal {
19925
19711
  this.enterAnimation = undefined;
19926
19712
  this.leaveAnimation = undefined;
19927
19713
  this.breakpoints = undefined;
19928
- this.expandToScroll = true;
19929
19714
  this.initialBreakpoint = undefined;
19930
19715
  this.backdropBreakpoint = 0;
19931
19716
  this.handle = undefined;
@@ -20141,7 +19926,6 @@ class Modal {
20141
19926
  presentingEl: presentingElement,
20142
19927
  currentBreakpoint: this.initialBreakpoint,
20143
19928
  backdropBreakpoint: this.backdropBreakpoint,
20144
- expandToScroll: this.expandToScroll,
20145
19929
  });
20146
19930
  /* tslint:disable-next-line */
20147
19931
  if (typeof window !== 'undefined') {
@@ -20192,10 +19976,7 @@ class Modal {
20192
19976
  // should be in the DOM and referenced by now, except
20193
19977
  // for the presenting el
20194
19978
  const animationBuilder = this.leaveAnimation || config.get('modalLeave', iosLeaveAnimation$3);
20195
- const ani = (this.animation = animationBuilder(el, {
20196
- presentingEl: this.presentingElement,
20197
- expandToScroll: this.expandToScroll,
20198
- }));
19979
+ const ani = (this.animation = animationBuilder(el, { presentingEl: this.presentingElement }));
20199
19980
  const contentEl = findIonContent(el);
20200
19981
  if (!contentEl) {
20201
19982
  printIonContentErrorMsg(el);
@@ -20240,10 +20021,9 @@ class Modal {
20240
20021
  presentingEl: this.presentingElement,
20241
20022
  currentBreakpoint: initialBreakpoint,
20242
20023
  backdropBreakpoint,
20243
- expandToScroll: this.expandToScroll,
20244
20024
  }));
20245
20025
  ani.progressStart(true, 1);
20246
- const { gesture, moveSheetToBreakpoint } = createSheetGesture(this.el, this.backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, ani, this.sortedBreakpoints, this.expandToScroll, () => { var _a; return (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : 0; }, () => this.sheetOnDismiss(), (breakpoint) => {
20026
+ const { gesture, moveSheetToBreakpoint } = createSheetGesture(this.el, this.backdropEl, wrapperEl, initialBreakpoint, backdropBreakpoint, ani, this.sortedBreakpoints, () => { var _a; return (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : 0; }, () => this.sheetOnDismiss(), (breakpoint) => {
20247
20027
  if (this.currentBreakpoint !== breakpoint) {
20248
20028
  this.currentBreakpoint = breakpoint;
20249
20029
  this.ionBreakpointDidChange.emit({ breakpoint });
@@ -20321,7 +20101,6 @@ class Modal {
20321
20101
  presentingEl: presentingElement,
20322
20102
  currentBreakpoint: (_a = this.currentBreakpoint) !== null && _a !== void 0 ? _a : this.initialBreakpoint,
20323
20103
  backdropBreakpoint: this.backdropBreakpoint,
20324
- expandToScroll: this.expandToScroll,
20325
20104
  });
20326
20105
  if (dismissed) {
20327
20106
  const { delegate } = this.getDelegate();
@@ -20407,23 +20186,23 @@ class Modal {
20407
20186
  return true;
20408
20187
  }
20409
20188
  render() {
20410
- const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap, expandToScroll, } = this;
20189
+ const { handle, isSheetModal, presentingElement, htmlAttributes, handleBehavior, inheritedAttributes, focusTrap } = this;
20411
20190
  const showHandle = handle !== false && isSheetModal;
20412
20191
  const mode = getIonMode$1(this);
20413
20192
  const isCardModal = presentingElement !== undefined && mode === 'ios';
20414
20193
  const isHandleCycle = handleBehavior === 'cycle';
20415
- return (hAsync(Host, Object.assign({ key: 'b58b683d13292c390c480a374a26995052914f94', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
20194
+ return (hAsync(Host, Object.assign({ key: 'b4da5111fe4719fa450c39b2d4bd884a302a7924', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
20416
20195
  zIndex: `${20000 + this.overlayIndex}`,
20417
- }, 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',
20196
+ }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), hAsync("ion-backdrop", { key: 'c12dbf747e0eb914eaf1331798548ffc7e147763', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && hAsync("div", { key: 'da546ee80c6576b5acc66e959fd5009e0b9a8160', class: "modal-shadow" }), hAsync("div", Object.assign({ key: '306ebe6427440ad5f7ed36d590e562d15a503b75',
20418
20197
  /*
20419
20198
  role and aria-modal must be used on the
20420
20199
  same element. They must also be set inside the
20421
20200
  shadow DOM otherwise ion-button will not be highlighted
20422
20201
  when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
20423
20202
  */
20424
- 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",
20203
+ role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: 'c5d17e346fe255a7c0cacbbf15c0083f2d09c488', class: "modal-handle",
20425
20204
  // Prevents the handle from receiving keyboard focus when it does not cycle
20426
- 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' }))));
20205
+ tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), hAsync("slot", { key: '5cc714170a00b67f3eda0cd1d6f37c1489a99c83' }))));
20427
20206
  }
20428
20207
  get el() { return getElement(this); }
20429
20208
  static get watchers() { return {
@@ -20445,7 +20224,6 @@ class Modal {
20445
20224
  "enterAnimation": [16],
20446
20225
  "leaveAnimation": [16],
20447
20226
  "breakpoints": [16],
20448
- "expandToScroll": [4, "expand-to-scroll"],
20449
20227
  "initialBreakpoint": [2, "initial-breakpoint"],
20450
20228
  "backdropBreakpoint": [2, "backdrop-breakpoint"],
20451
20229
  "handle": [4],
@@ -21373,7 +21151,7 @@ class Nav {
21373
21151
  }
21374
21152
  }
21375
21153
  render() {
21376
- return hAsync("slot", { key: 'bd958b6ade20eaadbfc9df2bd39629e3f85a1128' });
21154
+ return hAsync("slot", { key: 'dfe98cb6604a2015a49f41beffebdd2da957dfff' });
21377
21155
  }
21378
21156
  get el() { return getElement(this); }
21379
21157
  static get watchers() { return {
@@ -21446,7 +21224,7 @@ class NavLink {
21446
21224
  this.routerAnimation = undefined;
21447
21225
  }
21448
21226
  render() {
21449
- return hAsync(Host, { key: 'c43e6b9325e3a38452f0eded9d77a58ee57104e4', onClick: this.onClick });
21227
+ return hAsync(Host, { key: 'd2f8545b4fbd5aa25ef36eb01dffbc5d35ccfbb9', onClick: this.onClick });
21450
21228
  }
21451
21229
  get el() { return getElement(this); }
21452
21230
  static get cmpMeta() { return {
@@ -21480,9 +21258,9 @@ class Note {
21480
21258
  }
21481
21259
  render() {
21482
21260
  const mode = getIonMode$1(this);
21483
- return (hAsync(Host, { key: 'c9a8080cca174d0e5604940507d99e7d45f54e54', class: createColorClasses$1(this.color, {
21261
+ return (hAsync(Host, { key: '10a3495bc21166176986441479f8f7539029d161', class: createColorClasses$1(this.color, {
21484
21262
  [mode]: true,
21485
- }) }, hAsync("slot", { key: '9f2a060467de809c4da1882cdcc219a0328d3b7d' })));
21263
+ }) }, hAsync("slot", { key: 'b6a9459e1b85f608fafd060a4bfeb11637ebe873' })));
21486
21264
  }
21487
21265
  static get style() { return {
21488
21266
  ios: IonNoteIosStyle0,
@@ -22247,11 +22025,11 @@ class Picker {
22247
22025
  render() {
22248
22026
  const { htmlAttributes } = this;
22249
22027
  const mode = getIonMode$1(this);
22250
- return (hAsync(Host, Object.assign({ key: 'c823f926c4d2b82628024346646fceca1191cdef', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
22028
+ return (hAsync(Host, Object.assign({ key: '0712fa8732141848e50ad2e08e2ba66ef2a48991', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
22251
22029
  zIndex: `${20000 + this.overlayIndex}`,
22252
22030
  }, class: Object.assign({ [mode]: true,
22253
22031
  // Used internally for styling
22254
- [`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" })));
22032
+ [`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" })));
22255
22033
  }
22256
22034
  get el() { return getElement(this); }
22257
22035
  static get watchers() { return {
@@ -23226,9 +23004,9 @@ class PickerColumnCmp {
23226
23004
  render() {
23227
23005
  const col = this.col;
23228
23006
  const mode = getIonMode$1(this);
23229
- 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: {
23007
+ 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: {
23230
23008
  'max-width': this.col.columnWidth,
23231
- } }, 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))));
23009
+ } }, 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))));
23232
23010
  }
23233
23011
  get el() { return getElement(this); }
23234
23012
  static get watchers() { return {
@@ -23332,10 +23110,10 @@ class PickerColumnOption {
23332
23110
  render() {
23333
23111
  const { color, disabled, ariaLabel } = this;
23334
23112
  const mode = getIonMode$1(this);
23335
- return (hAsync(Host, { key: '19dec7c5fa1f464ff09fa97451c94c11ef1432a4', class: createColorClasses$1(color, {
23113
+ return (hAsync(Host, { key: 'c743c6ef44bb9f765cc15b3b5d2864de6520203a', class: createColorClasses$1(color, {
23336
23114
  [mode]: true,
23337
23115
  ['option-disabled']: disabled,
23338
- }) }, hAsync("button", { key: 'c8363bb865cdcafac7fef0970ba64ebe17f82fb6', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, hAsync("slot", { key: 'b0ed822ecb983dcb88c0fa4e9d2d6970566d9b55' }))));
23116
+ }) }, hAsync("button", { key: '4c3d9eb245c52b2c007f727e145cfb55759bd7a9', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, hAsync("slot", { key: '4c907d2187cbe9d5941e27f2b12578e2b7271461' }))));
23339
23117
  }
23340
23118
  get el() { return getElement(this); }
23341
23119
  static get watchers() { return {
@@ -24649,9 +24427,9 @@ class Popover {
24649
24427
  const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
24650
24428
  const desktop = isPlatform('desktop');
24651
24429
  const enableArrow = arrow && !parentPopover;
24652
- return (hAsync(Host, Object.assign({ key: '135246fb813a5040e13225706eeee1310b212ff0', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
24430
+ return (hAsync(Host, Object.assign({ key: 'ffe8b37c9ffb5cac210a7307e6cdfcf78712905b', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
24653
24431
  zIndex: `${20000 + this.overlayIndex}`,
24654
- }, 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' })))));
24432
+ }, 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' })))));
24655
24433
  }
24656
24434
  get el() { return getElement(this); }
24657
24435
  static get watchers() { return {
@@ -24743,7 +24521,7 @@ class ProgressBar {
24743
24521
  const mode = getIonMode$1(this);
24744
24522
  // If the progress is displayed as a solid bar.
24745
24523
  const progressSolid = buffer === 1;
24746
- return (hAsync(Host, { key: 'd92ae727ceb9849199fb949ab831bb6833a68085', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses$1(color, {
24524
+ return (hAsync(Host, { key: '8d8ddf0b26fe33803d3a6168cbedd523d1a888e7', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses$1(color, {
24747
24525
  [mode]: true,
24748
24526
  [`progress-bar-${type}`]: true,
24749
24527
  'progress-paused': paused,
@@ -24913,7 +24691,7 @@ class Radio {
24913
24691
  const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
24914
24692
  const mode = getIonMode$1(this);
24915
24693
  const inItem = hostContext('ion-item', el);
24916
- return (hAsync(Host, { key: 'c9c6410852560d664372af5ff28e778fc82748f1', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses$1(color, {
24694
+ return (hAsync(Host, { key: '5a0adab55ad009305de4856fa1b9f93f2279a734', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses$1(color, {
24917
24695
  [mode]: true,
24918
24696
  'in-item': inItem,
24919
24697
  'radio-checked': checked,
@@ -24924,10 +24702,10 @@ class Radio {
24924
24702
  // Focus and active styling should not apply when the radio is in an item
24925
24703
  'ion-activatable': !inItem,
24926
24704
  'ion-focusable': !inItem,
24927
- }), 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: {
24705
+ }), 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: {
24928
24706
  'label-text-wrapper': true,
24929
24707
  'label-text-wrapper-hidden': !hasLabel,
24930
- }, part: "label" }, hAsync("slot", { key: 'c1553adfaf6ed22261654fd04491ea18dc727144' })), hAsync("div", { key: '2defa43821d151d8130683b6b9859aca6ed944d1', class: "native-wrapper" }, this.renderRadioControl()))));
24708
+ }, part: "label" }, hAsync("slot", { key: '6cedf4e7b3bd03e4a635727dd7b6094bab64af64' })), hAsync("div", { key: '26dd48d9d2848b7f100b732abdc4a3171adde483', class: "native-wrapper" }, this.renderRadioControl()))));
24931
24709
  }
24932
24710
  get el() { return getElement(this); }
24933
24711
  static get watchers() { return {
@@ -24960,20 +24738,12 @@ class Radio {
24960
24738
  }
24961
24739
  let radioButtonIds = 0;
24962
24740
 
24963
- 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}";
24964
- var IonRadioGroupIosStyle0 = radioGroupIosCss;
24965
-
24966
- 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}";
24967
- var IonRadioGroupMdStyle0 = radioGroupMdCss;
24968
-
24969
24741
  class RadioGroup {
24970
24742
  constructor(hostRef) {
24971
24743
  registerInstance(this, hostRef);
24972
24744
  this.ionChange = createEvent(this, "ionChange", 7);
24973
24745
  this.ionValueChange = createEvent(this, "ionValueChange", 7);
24974
24746
  this.inputId = `ion-rg-${radioGroupIds++}`;
24975
- this.helperTextId = `${this.inputId}-helper-text`;
24976
- this.errorTextId = `${this.inputId}-error-text`;
24977
24747
  this.labelId = `${this.inputId}-lbl`;
24978
24748
  this.setRadioTabindex = (value) => {
24979
24749
  const radios = this.getRadios();
@@ -25025,8 +24795,6 @@ class RadioGroup {
25025
24795
  this.compareWith = undefined;
25026
24796
  this.name = this.inputId;
25027
24797
  this.value = undefined;
25028
- this.helperText = undefined;
25029
- this.errorText = undefined;
25030
24798
  }
25031
24799
  valueChanged(value) {
25032
24800
  this.setRadioTabindex(value);
@@ -25125,51 +24893,24 @@ class RadioGroup {
25125
24893
  const radioToFocus = this.getRadios().find((r) => r.tabIndex !== -1);
25126
24894
  radioToFocus === null || radioToFocus === void 0 ? void 0 : radioToFocus.setFocus();
25127
24895
  }
25128
- /**
25129
- * Renders the helper text or error text values
25130
- */
25131
- renderHintText() {
25132
- const { helperText, errorText, helperTextId, errorTextId } = this;
25133
- const hasHintText = !!helperText || !!errorText;
25134
- if (!hasHintText) {
25135
- return;
25136
- }
25137
- return (hAsync("div", { class: "supporting-text" }, hAsync("div", { id: helperTextId, class: "helper-text" }, helperText), hAsync("div", { id: errorTextId, class: "error-text" }, errorText)));
25138
- }
25139
- getHintTextID() {
25140
- const { el, helperText, errorText, helperTextId, errorTextId } = this;
25141
- if (el.classList.contains('ion-touched') && el.classList.contains('ion-invalid') && errorText) {
25142
- return errorTextId;
25143
- }
25144
- if (helperText) {
25145
- return helperTextId;
25146
- }
25147
- return undefined;
25148
- }
25149
24896
  render() {
25150
24897
  const { label, labelId, el, name, value } = this;
25151
24898
  const mode = getIonMode$1(this);
25152
24899
  renderHiddenInput(true, el, name, value, false);
25153
- 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' })));
24900
+ return hAsync(Host, { key: 'a853e38901f0f4ba17bbf21ebb5da5b5c20b327e', role: "radiogroup", "aria-labelledby": label ? labelId : null, onClick: this.onClick, class: mode });
25154
24901
  }
25155
24902
  get el() { return getElement(this); }
25156
24903
  static get watchers() { return {
25157
24904
  "value": ["valueChanged"]
25158
24905
  }; }
25159
- static get style() { return {
25160
- ios: IonRadioGroupIosStyle0,
25161
- md: IonRadioGroupMdStyle0
25162
- }; }
25163
24906
  static get cmpMeta() { return {
25164
- "$flags$": 36,
24907
+ "$flags$": 0,
25165
24908
  "$tagName$": "ion-radio-group",
25166
24909
  "$members$": {
25167
24910
  "allowEmptySelection": [4, "allow-empty-selection"],
25168
24911
  "compareWith": [1, "compare-with"],
25169
24912
  "name": [1],
25170
24913
  "value": [1032],
25171
- "helperText": [1, "helper-text"],
25172
- "errorText": [1, "error-text"],
25173
24914
  "setFocus": [64]
25174
24915
  },
25175
24916
  "$listeners$": [[4, "keydown", "onKeydown"]],
@@ -25789,7 +25530,7 @@ class Range {
25789
25530
  const needsEndAdjustment = inItem && !hasEndContent;
25790
25531
  const mode = getIonMode$1(this);
25791
25532
  renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
25792
- return (hAsync(Host, { key: '657e59ea74a41a279f96f3fe50752541941b3d00', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
25533
+ return (hAsync(Host, { key: '05c699caaead7cc74deaae2a958c4632191473a8', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
25793
25534
  [mode]: true,
25794
25535
  'in-item': inItem,
25795
25536
  'range-disabled': disabled,
@@ -25798,10 +25539,10 @@ class Range {
25798
25539
  [`range-label-placement-${labelPlacement}`]: true,
25799
25540
  'range-item-start-adjustment': needsStartAdjustment,
25800
25541
  'range-item-end-adjustment': needsEndAdjustment,
25801
- }) }, hAsync("label", { key: '96ad0cfec290bd25456925927e7638a0659a00c9', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: 'ca61076e921551c5de35c9d23262326a94c90ec5', class: {
25542
+ }) }, hAsync("label", { key: '959837bcc48c4bda33ae1f62b66ef444329a2961', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: 'a434c6b5c26f57f52b3af98d881e7e6a179c89fc', class: {
25802
25543
  'label-text-wrapper': true,
25803
25544
  'label-text-wrapper-hidden': !hasLabel,
25804
- }, 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" })))));
25545
+ }, 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" })))));
25805
25546
  }
25806
25547
  get el() { return getElement(this); }
25807
25548
  static get watchers() { return {
@@ -26702,7 +26443,7 @@ class Refresher {
26702
26443
  }
26703
26444
  render() {
26704
26445
  const mode = getIonMode$1(this);
26705
- return (hAsync(Host, { key: 'a3ef3ff131f96f85b27a3aba05aa6d5341e7abf8', slot: "fixed", class: {
26446
+ return (hAsync(Host, { key: '9d4ac22988aec2c6af0b0c90934c52f62f0e4ce3', slot: "fixed", class: {
26706
26447
  [mode]: true,
26707
26448
  // Used internally for styling
26708
26449
  [`refresher-${mode}`]: true,
@@ -26930,7 +26671,7 @@ class RefresherContent {
26930
26671
  const pullingIcon = this.pullingIcon;
26931
26672
  const hasSpinner = pullingIcon != null && SPINNERS[pullingIcon] !== undefined;
26932
26673
  const mode = getIonMode$1(this);
26933
- 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())));
26674
+ 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())));
26934
26675
  }
26935
26676
  get el() { return getElement(this); }
26936
26677
  static get cmpMeta() { return {
@@ -26973,7 +26714,7 @@ class Reorder {
26973
26714
  render() {
26974
26715
  const mode = getIonMode$1(this);
26975
26716
  const reorderIcon = mode === 'ios' ? reorderThreeOutline : reorderTwoSharp;
26976
- 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" }))));
26717
+ 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" }))));
26977
26718
  }
26978
26719
  get el() { return getElement(this); }
26979
26720
  static get style() { return {
@@ -27227,7 +26968,7 @@ class ReorderGroup {
27227
26968
  }
27228
26969
  render() {
27229
26970
  const mode = getIonMode$1(this);
27230
- return (hAsync(Host, { key: '7c2a33e57dff31ad71bab015eb086a5348453ba5', class: {
26971
+ return (hAsync(Host, { key: 'a38c7fbceb677201330a602273d5b55abb32da19', class: {
27231
26972
  [mode]: true,
27232
26973
  'reorder-enabled': !this.disabled,
27233
26974
  'reorder-list-active': this.state !== 0 /* ReorderGroupState.Idle */,
@@ -27335,7 +27076,7 @@ class RippleEffect {
27335
27076
  }
27336
27077
  render() {
27337
27078
  const mode = getIonMode$1(this);
27338
- return (hAsync(Host, { key: '17c87440165ecda9c2e6fb93e48eb252dcc25a96', role: "presentation", class: {
27079
+ return (hAsync(Host, { key: '7ae559bda5d2c1856a45bfa150c2cb4f83373f8e', role: "presentation", class: {
27339
27080
  [mode]: true,
27340
27081
  unbounded: this.unbounded,
27341
27082
  } }));
@@ -28277,10 +28018,10 @@ class RouterLink {
28277
28018
  rel: this.rel,
28278
28019
  target: this.target,
28279
28020
  };
28280
- return (hAsync(Host, { key: '369e9502b2a95159b162d85bd498c7ae5f04a27a', onClick: this.onClick, class: createColorClasses$1(this.color, {
28021
+ return (hAsync(Host, { key: '529ceed5beaf92d7b4cc315c82f449eac18310e8', onClick: this.onClick, class: createColorClasses$1(this.color, {
28281
28022
  [mode]: true,
28282
28023
  'ion-activatable': true,
28283
- }) }, hAsync("a", Object.assign({ key: 'f479cde56291938b5ca7bba6891d2cbf21f82c81' }, attrs), hAsync("slot", { key: '7f46ea35e0c4ac19f0ccfe593ef3706dec0e3b2e' }))));
28024
+ }) }, hAsync("a", Object.assign({ key: 'd5f1f8b256695d70bdafd20ff3d1b625963fa2da' }, attrs), hAsync("slot", { key: '613fcdb36a71e076f989551ea21f1d5c118b1cd2' }))));
28284
28025
  }
28285
28026
  static get style() { return IonRouterLinkStyle0; }
28286
28027
  static get cmpMeta() { return {
@@ -28475,7 +28216,7 @@ class RouterOutlet {
28475
28216
  return true;
28476
28217
  }
28477
28218
  render() {
28478
- return hAsync("slot", { key: '6a9003284c80d75b9945d508c8a3d56bbf283948' });
28219
+ return hAsync("slot", { key: 'a70341f58d19df55de1dad00e3464388e446aa2a' });
28479
28220
  }
28480
28221
  get el() { return getElement(this); }
28481
28222
  static get watchers() { return {
@@ -28509,7 +28250,7 @@ class Row {
28509
28250
  registerInstance(this, hostRef);
28510
28251
  }
28511
28252
  render() {
28512
- return (hAsync(Host, { key: '3d11237af000c5670007ff4a9b7b18e66e32aafd', class: getIonMode$1(this) }, hAsync("slot", { key: 'cd71e7f2baeaf32f36079743912eb591114ceeaa' })));
28253
+ return (hAsync(Host, { key: 'aea072a5005e3f1f309f0d1ae5be5ee19869b035', class: getIonMode$1(this) }, hAsync("slot", { key: '2a481c2126ac6ca65f0a1bbd07c2d3365409cb78' })));
28513
28254
  }
28514
28255
  static get style() { return IonRowStyle0; }
28515
28256
  static get cmpMeta() { return {
@@ -28903,8 +28644,8 @@ class Searchbar {
28903
28644
  const clearIcon = this.clearIcon || (mode === 'ios' ? closeCircle : closeSharp);
28904
28645
  const searchIcon = this.searchIcon || (mode === 'ios' ? searchOutline : searchSharp);
28905
28646
  const shouldShowCancelButton = this.shouldShowCancelButton();
28906
- 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))));
28907
- return (hAsync(Host, { key: '0a3d7d21538f32a1fd5160adc1c5f3f0c22a3de2', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses$1(this.color, {
28647
+ 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))));
28648
+ return (hAsync(Host, { key: '17d57ece5852d03047e4d53ddad6c9d88a432a00', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses$1(this.color, {
28908
28649
  [mode]: true,
28909
28650
  'searchbar-animated': animated,
28910
28651
  'searchbar-disabled': this.disabled,
@@ -28914,14 +28655,14 @@ class Searchbar {
28914
28655
  'searchbar-has-focus': this.focused,
28915
28656
  'searchbar-should-show-clear': this.shouldShowClearButton(),
28916
28657
  'searchbar-should-show-cancel': this.shouldShowCancelButton(),
28917
- }) }, 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) => {
28658
+ }) }, 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) => {
28918
28659
  /**
28919
28660
  * This prevents mobile browsers from
28920
28661
  * blurring the input when the clear
28921
28662
  * button is activated.
28922
28663
  */
28923
28664
  ev.preventDefault();
28924
- }, 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));
28665
+ }, 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));
28925
28666
  }
28926
28667
  get el() { return getElement(this); }
28927
28668
  static get watchers() { return {
@@ -29505,14 +29246,14 @@ class Segment {
29505
29246
  }
29506
29247
  render() {
29507
29248
  const mode = getIonMode$1(this);
29508
- return (hAsync(Host, { key: 'b032b33244524cfbe3e05e9f95fc94e59e8589fe', role: "tablist", onClick: this.onClick, class: createColorClasses$1(this.color, {
29249
+ return (hAsync(Host, { key: 'b1eb4a6e4f953f6c4882395585799503735bbc6b', role: "tablist", onClick: this.onClick, class: createColorClasses$1(this.color, {
29509
29250
  [mode]: true,
29510
29251
  'in-toolbar': hostContext('ion-toolbar', this.el),
29511
29252
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
29512
29253
  'segment-activated': this.activated,
29513
29254
  'segment-disabled': this.disabled,
29514
29255
  'segment-scrollable': this.scrollable,
29515
- }) }, hAsync("slot", { key: 'e752fff555f586ed10248a75ef1d40f38d91e677', onSlotchange: this.onSlottedItemsChange })));
29256
+ }) }, hAsync("slot", { key: 'e7df6b017d154f30eb8021bc965f2e6c8e6480bf', onSlotchange: this.onSlottedItemsChange })));
29516
29257
  }
29517
29258
  get el() { return getElement(this); }
29518
29259
  static get watchers() { return {
@@ -29583,7 +29324,35 @@ class SegmentButton {
29583
29324
  valueChanged() {
29584
29325
  this.updateState();
29585
29326
  }
29586
- connectedCallback() {
29327
+ waitForSegmentContent(ionSegment, contentId) {
29328
+ return new Promise((resolve, reject) => {
29329
+ let timeoutId = undefined;
29330
+ let animationFrameId;
29331
+ const check = () => {
29332
+ if (!ionSegment) {
29333
+ reject(new Error(`Segment not found when looking for Segment Content`));
29334
+ return;
29335
+ }
29336
+ const segmentView = getNextSiblingOfType(ionSegment); // Skip the text nodes
29337
+ const segmentContent = segmentView === null || segmentView === void 0 ? void 0 : segmentView.querySelector(`ion-segment-content[id="${contentId}"]`);
29338
+ if (segmentContent && timeoutId) {
29339
+ clearTimeout(timeoutId); // Clear the timeout if the segmentContent is found
29340
+ cancelAnimationFrame(animationFrameId);
29341
+ resolve(segmentContent);
29342
+ }
29343
+ else {
29344
+ animationFrameId = requestAnimationFrame(check); // Keep checking on the next animation frame
29345
+ }
29346
+ };
29347
+ check();
29348
+ // Set a timeout to reject the promise
29349
+ timeoutId = setTimeout(() => {
29350
+ cancelAnimationFrame(animationFrameId);
29351
+ reject(new Error(`Unable to find Segment Content with id="${contentId} within 1000 ms`));
29352
+ }, 1000);
29353
+ });
29354
+ }
29355
+ async connectedCallback() {
29587
29356
  const segmentEl = (this.segmentEl = this.el.closest('ion-segment'));
29588
29357
  if (segmentEl) {
29589
29358
  this.updateState();
@@ -29593,11 +29362,14 @@ class SegmentButton {
29593
29362
  // Return if there is no contentId defined
29594
29363
  if (!this.contentId)
29595
29364
  return;
29596
- // Attempt to find the Segment Content by its contentId
29597
- const segmentContent = document.getElementById(this.contentId);
29598
- // If no associated Segment Content exists, log an error and return
29599
- if (!segmentContent) {
29600
- console.error(`Segment Button: Unable to find Segment Content with id="${this.contentId}".`);
29365
+ let segmentContent;
29366
+ try {
29367
+ // Attempt to find the Segment Content by its contentId
29368
+ segmentContent = await this.waitForSegmentContent(segmentEl, this.contentId);
29369
+ }
29370
+ catch (error) {
29371
+ // If no associated Segment Content exists, log an error and return
29372
+ console.error('Segment Button: ', error.message);
29601
29373
  return;
29602
29374
  }
29603
29375
  // Ensure the found element is a valid ION-SEGMENT-CONTENT
@@ -29643,7 +29415,7 @@ class SegmentButton {
29643
29415
  const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
29644
29416
  const mode = getIonMode$1(this);
29645
29417
  const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
29646
- return (hAsync(Host, { key: '1267f90cf66d6a395848018e81445f600975c10a', class: {
29418
+ return (hAsync(Host, { key: 'f9da656c8eccb80e4ef30e3fa977f2dbbefbc988', class: {
29647
29419
  [mode]: true,
29648
29420
  'in-toolbar': hostContext('ion-toolbar', this.el),
29649
29421
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
@@ -29659,7 +29431,7 @@ class SegmentButton {
29659
29431
  'ion-activatable': true,
29660
29432
  'ion-activatable-instant': true,
29661
29433
  'ion-focusable': true,
29662
- } }, 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" }))));
29434
+ } }, hAsync("button", Object.assign({ key: '00dbcdbd81cd74abdd39803f6840a6e477cc7b0c', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), hAsync("span", { key: '5200c082a9c4788010c4fc33fe75e2b2ad28364a', class: "button-inner" }, hAsync("slot", { key: 'cf3fce2b5d22436b84cd4367a5885df7d6a2715f' })), mode === 'md' && hAsync("ion-ripple-effect", { key: 'f1a2816465f4c2c06644be07315bff2da77e2342' })), hAsync("div", { key: 'aaf31c0ed39641fca698ee98d0773131f4eea6bd', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, hAsync("div", { key: 'fc556651361b7ac305aaedd25ea4afe3173abd20', part: "indicator-background", class: "segment-button-indicator-background" }))));
29663
29435
  }
29664
29436
  get el() { return getElement(this); }
29665
29437
  static get watchers() { return {
@@ -29695,7 +29467,7 @@ class SegmentContent {
29695
29467
  registerInstance(this, hostRef);
29696
29468
  }
29697
29469
  render() {
29698
- return (hAsync(Host, { key: '1f7f256fdeb7ec661c84f268b239ab21ef170629' }, hAsync("slot", { key: 'c704cf3b4c13deeb612d8a8ffdccef65d62f0866' })));
29470
+ return (hAsync(Host, { key: '03684b2999ac64fe13e376fd7e7f279976e9d4f2' }, hAsync("slot", { key: '143031075bf33ca19e7cfd76fc8a67b83ccaf11c' })));
29699
29471
  }
29700
29472
  static get style() { return IonSegmentContentStyle0; }
29701
29473
  static get cmpMeta() { return {
@@ -29808,10 +29580,10 @@ class SegmentView {
29808
29580
  }
29809
29581
  render() {
29810
29582
  const { disabled, isManualScroll } = this;
29811
- return (hAsync(Host, { key: '4d51263d62b33762e7bbea48834b1701014c7f99', class: {
29583
+ return (hAsync(Host, { key: '9f4f11d31c4db776f077e59ae895b35dd4454717', class: {
29812
29584
  'segment-view-disabled': disabled,
29813
29585
  'segment-view-scroll-disabled': isManualScroll === false,
29814
- } }, hAsync("slot", { key: '4191dcd9964efc4815ceec776a953f24ad75f02d' })));
29586
+ } }, hAsync("slot", { key: 'ea58b21f031cee2ab2b70580f336deaefa364538' })));
29815
29587
  }
29816
29588
  get el() { return getElement(this); }
29817
29589
  static get style() { return {
@@ -29926,7 +29698,6 @@ class Select {
29926
29698
  this.expandedIcon = undefined;
29927
29699
  this.shape = undefined;
29928
29700
  this.value = undefined;
29929
- this.required = false;
29930
29701
  }
29931
29702
  styleChanged() {
29932
29703
  this.emitStyle();
@@ -29982,15 +29753,8 @@ class Select {
29982
29753
  }
29983
29754
  this.isExpanded = true;
29984
29755
  const overlay = (this.overlay = await this.createOverlay(event));
29985
- overlay.onDidDismiss().then(() => {
29986
- this.overlay = undefined;
29987
- this.isExpanded = false;
29988
- this.ionDismiss.emit();
29989
- this.setFocus();
29990
- });
29991
- await overlay.present();
29992
- // focus selected option for popovers and modals
29993
- if (this.interface === 'popover' || this.interface === 'modal') {
29756
+ // Add logic to scroll selected item into view before presenting
29757
+ const scrollSelectedIntoView = () => {
29994
29758
  const indexOfSelected = this.childOpts.findIndex((o) => o.value === this.value);
29995
29759
  if (indexOfSelected > -1) {
29996
29760
  const selectedItem = overlay.querySelector(`.select-interface-option:nth-child(${indexOfSelected + 1})`);
@@ -30008,6 +29772,7 @@ class Select {
30008
29772
  */
30009
29773
  const interactiveEl = selectedItem.querySelector('ion-radio, ion-checkbox');
30010
29774
  if (interactiveEl) {
29775
+ selectedItem.scrollIntoView({ block: 'nearest' });
30011
29776
  // Needs to be called before `focusVisibleElement` to prevent issue with focus event bubbling
30012
29777
  // and removing `ion-focused` style
30013
29778
  interactiveEl.setFocus();
@@ -30031,7 +29796,40 @@ class Select {
30031
29796
  focusVisibleElement(firstEnabledOption.closest('ion-item'));
30032
29797
  }
30033
29798
  }
29799
+ };
29800
+ // For modals and popovers, we can scroll before they're visible
29801
+ if (this.interface === 'modal') {
29802
+ overlay.addEventListener('ionModalWillPresent', scrollSelectedIntoView, { once: true });
29803
+ }
29804
+ else if (this.interface === 'popover') {
29805
+ overlay.addEventListener('ionPopoverWillPresent', scrollSelectedIntoView, { once: true });
30034
29806
  }
29807
+ else {
29808
+ /**
29809
+ * For alerts and action sheets, we need to wait a frame after willPresent
29810
+ * because these overlays don't have their content in the DOM immediately
29811
+ * when willPresent fires. By waiting a frame, we ensure the content is
29812
+ * rendered and can be properly scrolled into view.
29813
+ */
29814
+ const scrollAfterRender = () => {
29815
+ requestAnimationFrame(() => {
29816
+ scrollSelectedIntoView();
29817
+ });
29818
+ };
29819
+ if (this.interface === 'alert') {
29820
+ overlay.addEventListener('ionAlertWillPresent', scrollAfterRender, { once: true });
29821
+ }
29822
+ else if (this.interface === 'action-sheet') {
29823
+ overlay.addEventListener('ionActionSheetWillPresent', scrollAfterRender, { once: true });
29824
+ }
29825
+ }
29826
+ overlay.onDidDismiss().then(() => {
29827
+ this.overlay = undefined;
29828
+ this.isExpanded = false;
29829
+ this.ionDismiss.emit();
29830
+ this.setFocus();
29831
+ });
29832
+ await overlay.present();
30035
29833
  return overlay;
30036
29834
  }
30037
29835
  createOverlay(ev) {
@@ -30411,8 +30209,8 @@ class Select {
30411
30209
  return renderedLabel;
30412
30210
  }
30413
30211
  renderListbox() {
30414
- const { disabled, inputId, isExpanded, required } = this;
30415
- return (hAsync("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`, "aria-required": `${required}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) }));
30212
+ const { disabled, inputId, isExpanded } = this;
30213
+ return (hAsync("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) }));
30416
30214
  }
30417
30215
  render() {
30418
30216
  const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
@@ -30443,7 +30241,7 @@ class Select {
30443
30241
  * TODO(FW-5592): Remove hasStartEndSlots condition
30444
30242
  */
30445
30243
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
30446
- return (hAsync(Host, { key: '9ac4966b075bd4303ed7ddb0d9ad08eaf9118f20', onClick: this.onClick, class: createColorClasses$1(this.color, {
30244
+ return (hAsync(Host, { key: 'b2dca9ae25d88e4d9fdb55003041a66be5668fcf', onClick: this.onClick, class: createColorClasses$1(this.color, {
30447
30245
  [mode]: true,
30448
30246
  'in-item': inItem,
30449
30247
  'in-item-color': hostContext('ion-item.ion-color', el),
@@ -30459,7 +30257,7 @@ class Select {
30459
30257
  [`select-justify-${justify}`]: justifyEnabled,
30460
30258
  [`select-shape-${shape}`]: shape !== undefined,
30461
30259
  [`select-label-placement-${labelPlacement}`]: true,
30462
- }) }, 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" }))));
30260
+ }) }, hAsync("label", { key: 'c22fe9aee8cd448223497ef143e89529fcef8af6', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), hAsync("div", { key: '601972df4579f4fa6a9c2c12865593e807decb72', class: "select-wrapper-inner" }, hAsync("slot", { key: '5f7b1261862f74b978b26f026533e3fd1cc666ba', name: "start" }), hAsync("div", { key: '39616da89f4b4b78432f6da85116a7de2ca589e7', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), hAsync("slot", { key: '1d7b3601b73af7c05b3627cfc8e5147ea379bb03', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && hAsync("div", { key: 'b0344f0ac15003e22fee66d3d7ed03a07da7e8b7', class: "select-highlight" }))));
30463
30261
  }
30464
30262
  get el() { return getElement(this); }
30465
30263
  static get watchers() { return {
@@ -30495,7 +30293,6 @@ class Select {
30495
30293
  "expandedIcon": [1, "expanded-icon"],
30496
30294
  "shape": [1],
30497
30295
  "value": [1032],
30498
- "required": [4],
30499
30296
  "isExpanded": [32],
30500
30297
  "open": [64]
30501
30298
  },
@@ -30620,7 +30417,7 @@ class SelectModal {
30620
30417
  } }, option.text))));
30621
30418
  }
30622
30419
  render() {
30623
- 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()))));
30420
+ 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()))));
30624
30421
  }
30625
30422
  get el() { return getElement(this); }
30626
30423
  static get style() { return {
@@ -30653,7 +30450,7 @@ class SelectOption {
30653
30450
  this.value = undefined;
30654
30451
  }
30655
30452
  render() {
30656
- return hAsync(Host, { key: 'fa94cf1fc8b3ebed6981b05589072f7bc4402beb', role: "option", id: this.inputId, class: getIonMode$1(this) });
30453
+ return hAsync(Host, { key: '2e6fa159464f04f6d8720f960141f67918bc7534', role: "option", id: this.inputId, class: getIonMode$1(this) });
30657
30454
  }
30658
30455
  get el() { return getElement(this); }
30659
30456
  static get style() { return IonSelectOptionStyle0; }
@@ -30773,7 +30570,7 @@ class SelectPopover {
30773
30570
  render() {
30774
30571
  const { header, message, options, subHeader } = this;
30775
30572
  const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
30776
- 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))));
30573
+ 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))));
30777
30574
  }
30778
30575
  get el() { return getElement(this); }
30779
30576
  static get style() { return {
@@ -30821,11 +30618,11 @@ class SkeletonText {
30821
30618
  const animated = this.animated && config.getBoolean('animated', true);
30822
30619
  const inMedia = hostContext('ion-avatar', this.el) || hostContext('ion-thumbnail', this.el);
30823
30620
  const mode = getIonMode$1(this);
30824
- return (hAsync(Host, { key: '59a41a7f3ba2de4f44de57b3243c8f803eb88e2c', class: {
30621
+ return (hAsync(Host, { key: 'fdfabf9364caf507450239b62be24f08873bd650', class: {
30825
30622
  [mode]: true,
30826
30623
  'skeleton-text-animated': animated,
30827
30624
  'in-media': inMedia,
30828
- } }, hAsync("span", { key: 'a59a5cea5504f523c4d9b1f428f66772103290aa' }, "\u00A0")));
30625
+ } }, hAsync("span", { key: '3482c88dcc177547185ce87972afa064a542367d' }, "\u00A0")));
30829
30626
  }
30830
30627
  get el() { return getElement(this); }
30831
30628
  static get style() { return IonSkeletonTextStyle0; }
@@ -30878,7 +30675,7 @@ class Spinner {
30878
30675
  svgs.push(buildLine(spinner, duration, i, spinner.lines));
30879
30676
  }
30880
30677
  }
30881
- return (hAsync(Host, { key: '8cb73346083cb8a17e38c90e3405fee806c55bbf', class: createColorClasses$1(self.color, {
30678
+ return (hAsync(Host, { key: '9d30ee9f5aa0dd0e220da07e75d05b8b2435224d', class: createColorClasses$1(self.color, {
30882
30679
  [mode]: true,
30883
30680
  [`spinner-${spinnerName}`]: true,
30884
30681
  'spinner-paused': self.paused || config.getBoolean('_testing'),
@@ -30978,12 +30775,12 @@ class SplitPane {
30978
30775
  }
30979
30776
  render() {
30980
30777
  const mode = getIonMode$1(this);
30981
- return (hAsync(Host, { key: 'a63ee13973b94cd58b0da9c00b06bd39b206dd60', class: {
30778
+ return (hAsync(Host, { key: '1ca0b0299d03605bb358112ca56cbafbe58f00f5', class: {
30982
30779
  [mode]: true,
30983
30780
  // Used internally for styling
30984
30781
  [`split-pane-${mode}`]: true,
30985
30782
  'split-pane-visible': this.visible,
30986
- } }, hAsync("slot", { key: 'da6743bb0d17791f863d1f0ca1f59f5ceffe9613' })));
30783
+ } }, hAsync("slot", { key: 'abe231361727ae7fc63edd592a4490caac1909fb' })));
30987
30784
  }
30988
30785
  get el() { return getElement(this); }
30989
30786
  static get watchers() { return {
@@ -31052,10 +30849,10 @@ class Tab {
31052
30849
  }
31053
30850
  render() {
31054
30851
  const { tab, active, component } = this;
31055
- return (hAsync(Host, { key: 'c18543ba57c4a6a08d519476d1e268524046d678', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
30852
+ return (hAsync(Host, { key: 'cb75d0877979b3b8df8f7e1952bfa9677da1eaa5', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
31056
30853
  'ion-page': component === undefined,
31057
30854
  'tab-hidden': !active,
31058
- } }, hAsync("slot", { key: 'e46d100188fc8876e44ebf01f081ce57475b2883' })));
30855
+ } }, hAsync("slot", { key: '37fbb7b7a6b03eb93b1dacd2dc1025b78eb2aa6b' })));
31059
30856
  }
31060
30857
  get el() { return getElement(this); }
31061
30858
  static get watchers() { return {
@@ -31133,11 +30930,11 @@ class TabBar {
31133
30930
  const { color, translucent, keyboardVisible } = this;
31134
30931
  const mode = getIonMode$1(this);
31135
30932
  const shouldHide = keyboardVisible && this.el.getAttribute('slot') !== 'top';
31136
- return (hAsync(Host, { key: 'fe1cc3174f095ba3c8c6d6c2c20021596801a7c9', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses$1(color, {
30933
+ return (hAsync(Host, { key: 'a87fd2ea5df053705a37ea7ffec043e75c4a9907', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses$1(color, {
31137
30934
  [mode]: true,
31138
30935
  'tab-bar-translucent': translucent,
31139
30936
  'tab-bar-hidden': shouldHide,
31140
- }) }, hAsync("slot", { key: 'f7705b1b4f45d28ae8b7c08b91b0f6c9d4176f3f' })));
30937
+ }) }, hAsync("slot", { key: '81a6223299b6cab29d7ddced590e9152e2b3ded0' })));
31141
30938
  }
31142
30939
  get el() { return getElement(this); }
31143
30940
  static get watchers() { return {
@@ -31235,7 +31032,7 @@ class TabButton {
31235
31032
  rel,
31236
31033
  target,
31237
31034
  };
31238
- return (hAsync(Host, { key: '9ce7b8a8e9d929c260de383c5cf59f971698b2b5', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
31035
+ return (hAsync(Host, { key: '5976c45943ea7ea8e7c1a85fc9996de421439f08', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
31239
31036
  [mode]: true,
31240
31037
  'tab-selected': selected,
31241
31038
  'tab-disabled': disabled,
@@ -31247,7 +31044,7 @@ class TabButton {
31247
31044
  'ion-activatable': true,
31248
31045
  'ion-selectable': true,
31249
31046
  'ion-focusable': true,
31250
- } }, 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" }))));
31047
+ } }, 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" }))));
31251
31048
  }
31252
31049
  get el() { return getElement(this); }
31253
31050
  static get style() { return {
@@ -31423,7 +31220,7 @@ class Tabs {
31423
31220
  return Array.from(this.el.querySelectorAll('ion-tab'));
31424
31221
  }
31425
31222
  render() {
31426
- 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" })));
31223
+ 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" })));
31427
31224
  }
31428
31225
  get el() { return getElement(this); }
31429
31226
  static get style() { return IonTabsStyle0; }
@@ -31465,9 +31262,9 @@ class Text {
31465
31262
  }
31466
31263
  render() {
31467
31264
  const mode = getIonMode$1(this);
31468
- return (hAsync(Host, { key: '54fc089c6b77f7c4a8e0c4441d06507e7a0489c4', class: createColorClasses$1(this.color, {
31265
+ return (hAsync(Host, { key: 'e134d70c04344b708a2ecf6253722781ad2ca826', class: createColorClasses$1(this.color, {
31469
31266
  [mode]: true,
31470
- }) }, hAsync("slot", { key: '308480aa067e52eb4bf7dc619fb7e3b89fcdb62b' })));
31267
+ }) }, hAsync("slot", { key: 'da79c760f7ebbcd007ce110439f05a62cb22eac8' })));
31471
31268
  }
31472
31269
  static get style() { return IonTextStyle0; }
31473
31270
  static get cmpMeta() { return {
@@ -31849,7 +31646,7 @@ class Textarea {
31849
31646
  * TODO(FW-5592): Remove hasStartEndSlots condition
31850
31647
  */
31851
31648
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
31852
- return (hAsync(Host, { key: '7c5b5a536fcd80e82e952dd91bd13fc0f89082f0', class: createColorClasses$1(this.color, {
31649
+ return (hAsync(Host, { key: 'd6e25c83d8eab8cb1a5b6ab411c9a13847f69f8d', class: createColorClasses$1(this.color, {
31853
31650
  [mode]: true,
31854
31651
  'has-value': hasValue,
31855
31652
  'has-focus': hasFocus,
@@ -31858,7 +31655,7 @@ class Textarea {
31858
31655
  [`textarea-shape-${shape}`]: shape !== undefined,
31859
31656
  [`textarea-label-placement-${labelPlacement}`]: true,
31860
31657
  'textarea-disabled': disabled,
31861
- }) }, 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()));
31658
+ }) }, 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()));
31862
31659
  }
31863
31660
  get el() { return getElement(this); }
31864
31661
  static get watchers() { return {
@@ -31920,7 +31717,7 @@ class Thumbnail {
31920
31717
  registerInstance(this, hostRef);
31921
31718
  }
31922
31719
  render() {
31923
- return (hAsync(Host, { key: '0396aae5f545bbf7ebe1cbb05bc25f9181d2afe3', class: getIonMode$1(this) }, hAsync("slot", { key: 'bf01dbadd4042a4b45ce24a8ce408f15e7647a03' })));
31720
+ return (hAsync(Host, { key: 'cfa9aeb1d4fd624a9732c5230d29dd887e4b7771', class: getIonMode$1(this) }, hAsync("slot", { key: '29bc6e64063cba44e2643228df54394883933918' })));
31924
31721
  }
31925
31722
  static get style() { return IonThumbnailStyle0; }
31926
31723
  static get cmpMeta() { return {
@@ -32756,9 +32553,9 @@ class Toast {
32756
32553
  if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
32757
32554
  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);
32758
32555
  }
32759
- return (hAsync(Host, Object.assign({ key: '66ce48d7589420d8cb9756ddaf916a7ec8f949b5', tabindex: "-1" }, this.htmlAttributes, { style: {
32556
+ return (hAsync(Host, Object.assign({ key: 'c05655ff06af8d0e48c2a85396b07ad942fa81b4', tabindex: "-1" }, this.htmlAttributes, { style: {
32760
32557
  zIndex: `${60000 + this.overlayIndex}`,
32761
- }, 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')))));
32558
+ }, 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')))));
32762
32559
  }
32763
32560
  get el() { return getElement(this); }
32764
32561
  static get watchers() { return {
@@ -32892,7 +32689,6 @@ class Toggle {
32892
32689
  this.labelPlacement = 'start';
32893
32690
  this.justify = undefined;
32894
32691
  this.alignment = undefined;
32895
- this.required = false;
32896
32692
  }
32897
32693
  disabledChanged() {
32898
32694
  if (this.gesture) {
@@ -32974,12 +32770,12 @@ class Toggle {
32974
32770
  return this.el.textContent !== '';
32975
32771
  }
32976
32772
  render() {
32977
- const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment, required } = this;
32773
+ const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment } = this;
32978
32774
  const mode = getIonMode$1(this);
32979
32775
  const value = this.getValue();
32980
32776
  const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
32981
32777
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
32982
- return (hAsync(Host, { key: '065d333e3972a6df8df047c1af6457eaa394d45a', onClick: this.onClick, class: createColorClasses$1(color, {
32778
+ return (hAsync(Host, { key: 'f52195ec3bc14c024647cb41319c32a4cd330e19', onClick: this.onClick, class: createColorClasses$1(color, {
32983
32779
  [mode]: true,
32984
32780
  'in-item': hostContext('ion-item', el),
32985
32781
  'toggle-activated': activated,
@@ -32989,10 +32785,10 @@ class Toggle {
32989
32785
  [`toggle-alignment-${alignment}`]: alignment !== undefined,
32990
32786
  [`toggle-label-placement-${labelPlacement}`]: true,
32991
32787
  [`toggle-${rtl}`]: true,
32992
- }) }, 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: {
32788
+ }) }, hAsync("label", { key: 'f8b3a215ad85b2cee611ad63449b584e1640f27f', class: "toggle-wrapper" }, hAsync("input", Object.assign({ key: 'f387b1ea840737a9737917e516834c887be99c09', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl) }, this.inheritedAttributes)), hAsync("div", { key: '936af880db59fe377cd2de9101eb28a1c4fb8914', class: {
32993
32789
  'label-text-wrapper': true,
32994
32790
  'label-text-wrapper-hidden': !this.hasLabel,
32995
- }, part: "label" }, hAsync("slot", { key: '91a2c83740ef75c78f70b60941778580f1722d47' })), hAsync("div", { key: '1a638f883542dd9aac3749cc9bfcdd7ba8ea9046', class: "native-wrapper" }, this.renderToggleControl()))));
32791
+ }, part: "label" }, hAsync("slot", { key: '80a6672e2e792c15011a9496dcd75363cdba31c6' })), hAsync("div", { key: '2b2b318b38ab27b194c0dab4cecd77d9d780f2ca', class: "native-wrapper" }, this.renderToggleControl()))));
32996
32792
  }
32997
32793
  get el() { return getElement(this); }
32998
32794
  static get watchers() { return {
@@ -33015,7 +32811,6 @@ class Toggle {
33015
32811
  "labelPlacement": [1, "label-placement"],
33016
32812
  "justify": [1],
33017
32813
  "alignment": [1],
33018
- "required": [4],
33019
32814
  "activated": [32]
33020
32815
  },
33021
32816
  "$listeners$": undefined,
@@ -33047,10 +32842,6 @@ var IonToolbarMdStyle0 = toolbarMdCss;
33047
32842
  * @slot secondary - Content is placed to the left of the toolbar text in `ios` mode, and directly to the right in `md` mode.
33048
32843
  * @slot primary - Content is placed to the right of the toolbar text in `ios` mode, and to the far right in `md` mode.
33049
32844
  * @slot end - Content is placed to the right of the toolbar text in LTR, and to the left in RTL.
33050
- *
33051
- * @part background - The background of the toolbar, covering the entire area behind the toolbar content.
33052
- * @part container - The container that wraps all toolbar content, including the default slot and named slot content.
33053
- * @part content - The container for the default slot, wrapping content provided without a named slot.
33054
32845
  */
33055
32846
  class Toolbar {
33056
32847
  constructor(hostRef) {
@@ -33101,10 +32892,10 @@ class Toolbar {
33101
32892
  this.childrenStyles.forEach((value) => {
33102
32893
  Object.assign(childStyles, value);
33103
32894
  });
33104
- return (hAsync(Host, { key: 'e4d089de5c5b16f34fda10f3fe00054aa38bbc7f', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
32895
+ return (hAsync(Host, { key: '462538a5ecd01baf3cde116c9f029aeda26c81be', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
33105
32896
  [mode]: true,
33106
32897
  'in-toolbar': hostContext('ion-toolbar', this.el),
33107
- })) }, 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" }))));
32898
+ })) }, hAsync("div", { key: 'c0b4415d3b2472de643a9be7cb3b13b3b628621b', class: "toolbar-background" }), hAsync("div", { key: '0ccb8a2dbeaa28d8f9bed87629c0c097446690c2', class: "toolbar-container" }, hAsync("slot", { key: '3e726dac359e923df21d80301651f16063a3de20', name: "start" }), hAsync("slot", { key: 'cd799330b56a7f8833bc61bb2807aafb21846f71', name: "secondary" }), hAsync("div", { key: '395282e6ac8c53576922dcdb5f08c25d34638c86', class: "toolbar-content" }, hAsync("slot", { key: 'a437c60e4ba5aae65e55169ae82a6f379868ec1d' })), hAsync("slot", { key: '711af9b9d321a7b31ede924c9bdcad767aa9a1ca', name: "primary" }), hAsync("slot", { key: 'ecc02edeaf80a837890bcb08d5096df1e22a0b9a', name: "end" }))));
33108
32899
  }
33109
32900
  get el() { return getElement(this); }
33110
32901
  static get style() { return {
@@ -33154,11 +32945,11 @@ class ToolbarTitle {
33154
32945
  render() {
33155
32946
  const mode = getIonMode$1(this);
33156
32947
  const size = this.getSize();
33157
- return (hAsync(Host, { key: '388b4015f0d64a8d5b04d622d1e1fb61d0922d6c', class: createColorClasses$1(this.color, {
32948
+ return (hAsync(Host, { key: '7293d2ecd6262feb0d8d769effbb208230baed89', class: createColorClasses$1(this.color, {
33158
32949
  [mode]: true,
33159
32950
  [`title-${size}`]: true,
33160
32951
  'title-rtl': document.dir === 'rtl',
33161
- }) }, hAsync("div", { key: '56f719e88e9322a8862acbfd0b343fd0473bfead', class: "toolbar-title" }, hAsync("slot", { key: 'd35b7c06089c2d498126bbfe859ffc4961de6276' }))));
32952
+ }) }, hAsync("div", { key: '086ec3a361ebdf6506846a8704b457cda3a6f897', class: "toolbar-title" }, hAsync("slot", { key: '59add7eb92b82d6832a8f0894f897c51fdf4f214' }))));
33162
32953
  }
33163
32954
  get el() { return getElement(this); }
33164
32955
  static get watchers() { return {