@ionic/core 8.8.14-dev.11784238294.131cd99d → 8.8.14-dev.11784243422.11f0110c

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 (350) hide show
  1. package/components/index.js +1 -1
  2. package/components/ion-action-sheet.js +1 -1
  3. package/components/ion-alert.js +1 -1
  4. package/components/ion-back-button.js +1 -1
  5. package/components/ion-button.js +1 -1
  6. package/components/ion-card.js +1 -1
  7. package/components/ion-chip.js +1 -1
  8. package/components/ion-datetime-button.js +1 -1
  9. package/components/ion-datetime.js +1 -1
  10. package/components/ion-fab-button.js +1 -1
  11. package/components/ion-img.js +1 -1
  12. package/components/ion-infinite-scroll-content.js +1 -1
  13. package/components/ion-input-password-toggle.js +1 -1
  14. package/components/ion-input.js +1 -1
  15. package/components/ion-item-option.js +1 -1
  16. package/components/ion-item.js +1 -1
  17. package/components/ion-loading.js +1 -1
  18. package/components/ion-menu-button.js +1 -1
  19. package/components/ion-menu.js +1 -1
  20. package/components/ion-modal.js +1 -1
  21. package/components/ion-popover.js +1 -1
  22. package/components/ion-progress-bar.js +1 -1
  23. package/components/ion-radio.js +1 -1
  24. package/components/ion-range.js +1 -1
  25. package/components/ion-refresher-content.js +1 -1
  26. package/components/ion-refresher.js +1 -1
  27. package/components/ion-reorder-group.js +1 -1
  28. package/components/ion-reorder.js +1 -1
  29. package/components/ion-ripple-effect.js +1 -1
  30. package/components/ion-router-link.js +1 -1
  31. package/components/ion-router-outlet.js +1 -1
  32. package/components/ion-row.js +1 -1
  33. package/components/ion-searchbar.js +1 -1
  34. package/components/ion-segment-button.js +1 -1
  35. package/components/ion-segment-content.js +1 -1
  36. package/components/ion-segment-view.js +1 -1
  37. package/components/ion-segment.js +1 -1
  38. package/components/ion-select-modal.js +1 -1
  39. package/components/ion-select-option.js +1 -1
  40. package/components/ion-select-popover.js +1 -1
  41. package/components/ion-select.js +1 -1
  42. package/components/ion-skeleton-text.js +1 -1
  43. package/components/ion-spinner.js +1 -1
  44. package/components/ion-split-pane.js +1 -1
  45. package/components/ion-tab-bar.js +1 -1
  46. package/components/ion-tab-button.js +1 -1
  47. package/components/ion-tab.js +1 -1
  48. package/components/ion-tabs.js +1 -1
  49. package/components/ion-text.js +1 -1
  50. package/components/ion-textarea.js +1 -1
  51. package/components/ion-thumbnail.js +1 -1
  52. package/components/ion-title.js +1 -1
  53. package/components/ion-toast.js +1 -1
  54. package/components/ion-toggle.js +1 -1
  55. package/components/ion-toolbar.js +1 -1
  56. package/components/p-279dFMvg.js +4 -0
  57. package/components/p-BSQPZ79H.js +4 -0
  58. package/components/{p-BHrrc-3d.js → p-Buf_7zcy.js} +1 -1
  59. package/components/p-BwKpO3Is.js +4 -0
  60. package/components/p-C-Rx1zny.js +4 -0
  61. package/components/p-CHzfYZbv.js +4 -0
  62. package/components/p-D4h1H_hh.js +4 -0
  63. package/components/{p-BSEgsdFI.js → p-DhkITZ-y.js} +1 -1
  64. package/components/{p-5bE_Wz4Y.js → p-DpV-p5Xs.js} +1 -1
  65. package/components/{p-Cfx4M1Bn.js → p-Dz74mwlk.js} +1 -1
  66. package/components/p-LMGfIvTf.js +4 -0
  67. package/components/{p-BLmJ0zRm.js → p-XJWMAP8m.js} +1 -1
  68. package/components/p-_lHSumhG.js +4 -0
  69. package/components/p-j9Da6cYO.js +4 -0
  70. package/components/p-jOtMJMv8.js +4 -0
  71. package/components/{p-B60hm8Qv.js → p-r0aq7dpt.js} +1 -1
  72. package/components/p-uTR_dEqg.js +4 -0
  73. package/components/{p-rCa2eL0j.js → p-wk2QqrAo.js} +1 -1
  74. package/dist/cjs/config-DWdFbSNK.js +35 -0
  75. package/dist/cjs/index-Cueg3U4w.js +429 -0
  76. package/dist/cjs/index.cjs.js +6 -6
  77. package/dist/cjs/ion-action-sheet.cjs.entry.js +27 -7
  78. package/dist/cjs/ion-alert.cjs.entry.js +64 -25
  79. package/dist/cjs/ion-app_8.cjs.entry.js +23 -9
  80. package/dist/cjs/ion-avatar_3.cjs.entry.js +1 -1
  81. package/dist/cjs/ion-col_3.cjs.entry.js +1 -1
  82. package/dist/cjs/{ion-datetime_3.cjs.entry.js → ion-datetime.cjs.entry.js} +1 -639
  83. package/dist/cjs/ion-img.cjs.entry.js +3 -1
  84. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +3 -2
  85. package/dist/cjs/ion-input.cjs.entry.js +4 -4
  86. package/dist/cjs/ion-item_8.cjs.entry.js +2 -2
  87. package/dist/cjs/ion-loading.cjs.entry.js +10 -5
  88. package/dist/cjs/ion-menu_3.cjs.entry.js +1 -1
  89. package/dist/cjs/ion-modal.cjs.entry.js +23 -32
  90. package/dist/cjs/ion-popover.cjs.entry.js +9 -5
  91. package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
  92. package/dist/cjs/ion-radio_2.cjs.entry.js +3 -3
  93. package/dist/cjs/ion-range.cjs.entry.js +3 -3
  94. package/dist/cjs/ion-refresher_2.cjs.entry.js +6 -5
  95. package/dist/cjs/ion-reorder_2.cjs.entry.js +2 -2
  96. package/dist/cjs/ion-ripple-effect.cjs.entry.js +1 -1
  97. package/dist/cjs/ion-route_4.cjs.entry.js +2 -2
  98. package/dist/cjs/ion-searchbar.cjs.entry.js +5 -5
  99. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  100. package/dist/cjs/ion-segment-view.cjs.entry.js +2 -2
  101. package/dist/cjs/ion-segment_2.cjs.entry.js +4 -4
  102. package/dist/cjs/ion-select-modal.cjs.entry.js +84 -30
  103. package/dist/cjs/ion-select_3.cjs.entry.js +407 -49
  104. package/dist/cjs/ion-spinner.cjs.entry.js +1 -1
  105. package/dist/cjs/ion-split-pane.cjs.entry.js +2 -2
  106. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +4 -4
  107. package/dist/cjs/ion-tab_2.cjs.entry.js +3 -3
  108. package/dist/cjs/ion-text.cjs.entry.js +2 -2
  109. package/dist/cjs/ion-textarea.cjs.entry.js +2 -2
  110. package/dist/cjs/ion-toast.cjs.entry.js +6 -5
  111. package/dist/cjs/ion-toggle.cjs.entry.js +3 -3
  112. package/dist/cjs/ionic.cjs.js +1 -1
  113. package/dist/cjs/loader.cjs.js +1 -1
  114. package/dist/cjs/overlay-control-label-D2sdL2O8.js +50 -0
  115. package/dist/cjs/{overlays-DdtIYQUH.js → overlays-DSmSrd_4.js} +27 -31
  116. package/dist/cjs/select-option-render-DTF50t5r.js +124 -0
  117. package/dist/collection/collection-manifest.json +6 -10
  118. package/dist/collection/components/action-sheet/action-sheet.ios.css +229 -2
  119. package/dist/collection/components/action-sheet/action-sheet.js +24 -5
  120. package/dist/collection/components/action-sheet/action-sheet.md.css +175 -2
  121. package/dist/collection/components/alert/alert.ios.css +280 -10
  122. package/dist/collection/components/alert/alert.js +59 -21
  123. package/dist/collection/components/alert/alert.md.css +269 -20
  124. package/dist/collection/components/img/img.js +6 -1
  125. package/dist/collection/components/input/input.js +8 -8
  126. package/dist/collection/components/loading/loading.js +7 -3
  127. package/dist/collection/components/modal/gestures/sheet.js +0 -7
  128. package/dist/collection/components/modal/gestures/swipe-to-close.js +0 -7
  129. package/dist/collection/components/modal/modal.ios.css +0 -8
  130. package/dist/collection/components/modal/modal.js +23 -18
  131. package/dist/collection/components/modal/modal.md.css +0 -8
  132. package/dist/collection/components/popover/popover.ios.css +15 -0
  133. package/dist/collection/components/popover/popover.js +7 -3
  134. package/dist/collection/components/popover/popover.md.css +15 -0
  135. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  136. package/dist/collection/components/radio/radio.js +4 -4
  137. package/dist/collection/components/range/range.js +3 -3
  138. package/dist/collection/components/refresher/refresher.js +1 -1
  139. package/dist/collection/components/refresher-content/refresher-content.js +1 -1
  140. package/dist/collection/components/reorder/reorder.js +1 -1
  141. package/dist/collection/components/reorder-group/reorder-group.js +1 -1
  142. package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
  143. package/dist/collection/components/router-link/router-link.js +2 -2
  144. package/dist/collection/components/router-outlet/router-outlet.js +38 -5
  145. package/dist/collection/components/row/row.js +1 -1
  146. package/dist/collection/components/searchbar/searchbar.js +9 -9
  147. package/dist/collection/components/segment/segment.js +2 -2
  148. package/dist/collection/components/segment-button/segment-button.js +2 -2
  149. package/dist/collection/components/segment-content/segment-content.js +1 -1
  150. package/dist/collection/components/segment-view/segment-view.js +2 -2
  151. package/dist/collection/components/select/select.ios.css +33 -0
  152. package/dist/collection/components/select/select.js +323 -16
  153. package/dist/collection/components/select/select.md.css +33 -0
  154. package/dist/collection/components/select-modal/select-modal.ios.css +219 -0
  155. package/dist/collection/components/select-modal/select-modal.js +79 -26
  156. package/dist/collection/components/select-modal/select-modal.md.css +165 -0
  157. package/dist/collection/components/select-option/select-option.js +67 -3
  158. package/dist/collection/components/select-popover/select-popover.ios.css +219 -0
  159. package/dist/collection/components/select-popover/select-popover.js +78 -26
  160. package/dist/collection/components/select-popover/select-popover.md.css +165 -0
  161. package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
  162. package/dist/collection/components/spinner/spinner.js +1 -1
  163. package/dist/collection/components/split-pane/split-pane.js +2 -2
  164. package/dist/collection/components/tab/tab.js +2 -2
  165. package/dist/collection/components/tab-bar/tab-bar.js +2 -2
  166. package/dist/collection/components/tab-button/tab-button.js +2 -2
  167. package/dist/collection/components/tabs/tabs.js +1 -1
  168. package/dist/collection/components/text/text.js +2 -2
  169. package/dist/collection/components/textarea/textarea.js +2 -2
  170. package/dist/collection/components/thumbnail/thumbnail.js +1 -1
  171. package/dist/collection/components/title/title.js +2 -2
  172. package/dist/collection/components/toast/toast.js +2 -2
  173. package/dist/collection/components/toggle/toggle.js +3 -3
  174. package/dist/collection/components/toolbar/toolbar.js +2 -2
  175. package/dist/collection/index.js +1 -1
  176. package/dist/collection/utils/overlay-control-label.js +45 -0
  177. package/dist/collection/utils/overlays.js +26 -30
  178. package/dist/collection/utils/sanitization/index.js +274 -18
  179. package/dist/collection/utils/select-option-render.js +119 -0
  180. package/dist/collection/utils/test/playwright/drag-element.js +0 -5
  181. package/dist/docs.json +485 -1177
  182. package/dist/esm/config-BwKpO3Is.js +31 -0
  183. package/dist/esm/{index-DV3sJJW8.js → index-AlrZKoWR.js} +1 -1
  184. package/dist/esm/index-DQSkZyOJ.js +424 -0
  185. package/dist/esm/index.js +3 -2
  186. package/dist/esm/ion-accordion_2.entry.js +1 -1
  187. package/dist/esm/ion-action-sheet.entry.js +27 -7
  188. package/dist/esm/ion-alert.entry.js +63 -24
  189. package/dist/esm/ion-app_8.entry.js +23 -9
  190. package/dist/esm/ion-avatar_3.entry.js +1 -1
  191. package/dist/esm/ion-back-button.entry.js +1 -1
  192. package/dist/esm/ion-breadcrumb_2.entry.js +1 -1
  193. package/dist/esm/ion-col_3.entry.js +1 -1
  194. package/dist/esm/{ion-datetime_3.entry.js → ion-datetime.entry.js} +5 -641
  195. package/dist/esm/ion-fab_3.entry.js +1 -1
  196. package/dist/esm/ion-img.entry.js +4 -2
  197. package/dist/esm/ion-infinite-scroll_2.entry.js +2 -1
  198. package/dist/esm/ion-input-password-toggle.entry.js +1 -1
  199. package/dist/esm/ion-input.entry.js +5 -5
  200. package/dist/esm/ion-item_8.entry.js +3 -3
  201. package/dist/esm/ion-loading.entry.js +9 -4
  202. package/dist/esm/ion-menu_3.entry.js +2 -2
  203. package/dist/esm/ion-modal.entry.js +23 -32
  204. package/dist/esm/ion-popover.entry.js +9 -5
  205. package/dist/esm/ion-progress-bar.entry.js +1 -1
  206. package/dist/esm/ion-radio_2.entry.js +3 -3
  207. package/dist/esm/ion-range.entry.js +3 -3
  208. package/dist/esm/ion-refresher_2.entry.js +5 -4
  209. package/dist/esm/ion-reorder_2.entry.js +3 -3
  210. package/dist/esm/ion-ripple-effect.entry.js +1 -1
  211. package/dist/esm/ion-route_4.entry.js +2 -2
  212. package/dist/esm/ion-searchbar.entry.js +6 -6
  213. package/dist/esm/ion-segment-content.entry.js +1 -1
  214. package/dist/esm/ion-segment-view.entry.js +2 -2
  215. package/dist/esm/ion-segment_2.entry.js +4 -4
  216. package/dist/esm/ion-select-modal.entry.js +84 -30
  217. package/dist/esm/ion-select_3.entry.js +410 -52
  218. package/dist/esm/ion-spinner.entry.js +1 -1
  219. package/dist/esm/ion-split-pane.entry.js +2 -2
  220. package/dist/esm/ion-tab-bar_2.entry.js +4 -4
  221. package/dist/esm/ion-tab_2.entry.js +3 -3
  222. package/dist/esm/ion-text.entry.js +2 -2
  223. package/dist/esm/ion-textarea.entry.js +2 -2
  224. package/dist/esm/ion-toast.entry.js +5 -4
  225. package/dist/esm/ion-toggle.entry.js +4 -4
  226. package/dist/esm/ionic.js +1 -1
  227. package/dist/esm/loader.js +1 -1
  228. package/dist/esm/overlay-control-label-BSQPZ79H.js +47 -0
  229. package/dist/esm/{overlays-Dg0q2_tJ.js → overlays-DLNOHWNc.js} +28 -32
  230. package/dist/esm/select-option-render-B8nWZRnd.js +122 -0
  231. package/dist/html.html-data.json +51 -79
  232. package/dist/ionic/index.esm.js +1 -1
  233. package/dist/ionic/ionic.esm.js +1 -1
  234. package/dist/ionic/p-038eb991.entry.js +4 -0
  235. package/dist/ionic/{p-8fce95d5.entry.js → p-14095ba5.entry.js} +1 -1
  236. package/dist/ionic/{p-3a126bca.entry.js → p-259d0d98.entry.js} +1 -1
  237. package/dist/ionic/{p-fabcce6c.entry.js → p-341032b3.entry.js} +1 -1
  238. package/dist/ionic/{p-3a7d1e91.entry.js → p-4502a274.entry.js} +1 -1
  239. package/dist/ionic/p-4621c387.entry.js +4 -0
  240. package/dist/ionic/p-4ace7762.entry.js +4 -0
  241. package/dist/ionic/p-4bb3eb60.entry.js +4 -0
  242. package/dist/ionic/p-4e9ec5c5.entry.js +4 -0
  243. package/dist/ionic/{p-874b4bd8.entry.js → p-51cd1643.entry.js} +1 -1
  244. package/dist/ionic/p-5c3ec490.entry.js +4 -0
  245. package/dist/ionic/p-5d1ac2c7.entry.js +4 -0
  246. package/dist/ionic/{p-3ae5f277.entry.js → p-627fabd9.entry.js} +1 -1
  247. package/dist/ionic/{p-e0be05c5.entry.js → p-629e4703.entry.js} +1 -1
  248. package/dist/ionic/p-700795f6.entry.js +4 -0
  249. package/dist/ionic/{p-5d1da0a2.entry.js → p-76e92a84.entry.js} +1 -1
  250. package/dist/ionic/p-79a36078.entry.js +4 -0
  251. package/dist/ionic/{p-9f1103ce.entry.js → p-7a37b3ce.entry.js} +1 -1
  252. package/dist/ionic/{p-3353c229.entry.js → p-80b44b3c.entry.js} +1 -1
  253. package/dist/ionic/p-913b218a.entry.js +4 -0
  254. package/dist/ionic/{p-390ca786.entry.js → p-9177f4ac.entry.js} +1 -1
  255. package/dist/ionic/{p-DV3sJJW8.js → p-AlrZKoWR.js} +1 -1
  256. package/dist/ionic/p-BDtODLZ4.js +4 -0
  257. package/dist/ionic/p-BSQPZ79H.js +4 -0
  258. package/dist/ionic/p-BwKpO3Is.js +4 -0
  259. package/dist/ionic/p-Cg5-OQYy.js +4 -0
  260. package/dist/ionic/p-DCOvXkOm.js +4 -0
  261. package/dist/ionic/{p-4858af1f.entry.js → p-a5213260.entry.js} +1 -1
  262. package/dist/ionic/{p-37e720da.entry.js → p-a7628bc7.entry.js} +1 -1
  263. package/dist/ionic/p-a9a33367.entry.js +4 -0
  264. package/dist/ionic/p-ad728198.entry.js +4 -0
  265. package/dist/ionic/{p-ef4c3bee.entry.js → p-b1599fca.entry.js} +1 -1
  266. package/dist/ionic/{p-84d5ce05.entry.js → p-b9ac1fe0.entry.js} +1 -1
  267. package/dist/ionic/p-bfc8c629.entry.js +4 -0
  268. package/dist/ionic/p-c08e666a.entry.js +4 -0
  269. package/dist/ionic/{p-34586ead.entry.js → p-c93553d2.entry.js} +1 -1
  270. package/dist/ionic/p-ce7992c4.entry.js +4 -0
  271. package/dist/ionic/{p-75dc25ba.entry.js → p-d2c7f046.entry.js} +1 -1
  272. package/dist/ionic/{p-c4d8641b.entry.js → p-d8387b99.entry.js} +1 -1
  273. package/dist/ionic/{p-9a65ac7f.entry.js → p-db1b6738.entry.js} +1 -1
  274. package/dist/ionic/p-ed797c72.entry.js +4 -0
  275. package/dist/ionic/{p-8eb8ee76.entry.js → p-ef93ca92.entry.js} +1 -1
  276. package/dist/ionic/p-f09f9642.entry.js +4 -0
  277. package/dist/ionic/p-f1c06f82.entry.js +4 -0
  278. package/dist/ionic/p-f718fccb.entry.js +4 -0
  279. package/dist/ionic/{p-0fa9c382.entry.js → p-fe4aa1db.entry.js} +1 -1
  280. package/dist/types/components/img/img.d.ts +2 -0
  281. package/dist/types/components/input/input.d.ts +1 -1
  282. package/dist/types/components/modal/modal.d.ts +11 -4
  283. package/dist/types/components/router-outlet/router-outlet.d.ts +7 -0
  284. package/dist/types/components/searchbar/searchbar.d.ts +1 -1
  285. package/dist/types/components/select/select-interface.d.ts +31 -0
  286. package/dist/types/components/select/select.d.ts +18 -0
  287. package/dist/types/components/select-option/select-option.d.ts +42 -1
  288. package/dist/types/components.d.ts +72 -288
  289. package/dist/types/index.d.ts +1 -1
  290. package/dist/types/interface.d.ts +0 -1
  291. package/dist/types/utils/config.d.ts +0 -8
  292. package/dist/types/utils/overlay-control-label.d.ts +32 -0
  293. package/dist/types/utils/overlays.d.ts +11 -9
  294. package/dist/types/utils/sanitization/index.d.ts +58 -2
  295. package/dist/types/utils/select-option-render.d.ts +53 -0
  296. package/hydrate/index.js +1401 -1182
  297. package/hydrate/index.mjs +1401 -1182
  298. package/package.json +37 -5
  299. package/components/ion-picker-legacy-column.d.ts +0 -11
  300. package/components/ion-picker-legacy-column.js +0 -4
  301. package/components/ion-picker-legacy.d.ts +0 -11
  302. package/components/ion-picker-legacy.js +0 -4
  303. package/components/p-BIPPbW0M.js +0 -4
  304. package/components/p-BUYFy35a.js +0 -4
  305. package/components/p-BWEZufiK.js +0 -4
  306. package/components/p-BqpciLfi.js +0 -4
  307. package/components/p-BsQPAqo9.js +0 -4
  308. package/components/p-CRNiQiYf.js +0 -4
  309. package/components/p-CU5rbWAW.js +0 -4
  310. package/components/p-k_E4tX5Z.js +0 -4
  311. package/components/p-nyXeHk23.js +0 -4
  312. package/dist/cjs/config-xninhj0J.js +0 -201
  313. package/dist/collection/components/picker-legacy/animations/ios.enter.js +0 -27
  314. package/dist/collection/components/picker-legacy/animations/ios.leave.js +0 -23
  315. package/dist/collection/components/picker-legacy/picker-interface.js +0 -1
  316. package/dist/collection/components/picker-legacy/picker.ios.css +0 -300
  317. package/dist/collection/components/picker-legacy/picker.js +0 -890
  318. package/dist/collection/components/picker-legacy/picker.md.css +0 -287
  319. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +0 -231
  320. package/dist/collection/components/picker-legacy-column/picker-column.js +0 -422
  321. package/dist/collection/components/picker-legacy-column/picker-column.md.css +0 -222
  322. package/dist/collection/components/picker-legacy-column/test/test.utils.js +0 -43
  323. package/dist/esm/config-DQCONYYp.js +0 -195
  324. package/dist/ionic/p-01f81ea5.entry.js +0 -4
  325. package/dist/ionic/p-0dc33652.entry.js +0 -4
  326. package/dist/ionic/p-20b1a044.entry.js +0 -4
  327. package/dist/ionic/p-21eb76d5.entry.js +0 -4
  328. package/dist/ionic/p-27d30585.entry.js +0 -4
  329. package/dist/ionic/p-2a05aa64.entry.js +0 -4
  330. package/dist/ionic/p-2bb2cb18.entry.js +0 -4
  331. package/dist/ionic/p-485fda23.entry.js +0 -4
  332. package/dist/ionic/p-4baa5b82.entry.js +0 -4
  333. package/dist/ionic/p-5018dfc8.entry.js +0 -4
  334. package/dist/ionic/p-50e1194a.entry.js +0 -4
  335. package/dist/ionic/p-5eb8e86d.entry.js +0 -4
  336. package/dist/ionic/p-65ebdf1b.entry.js +0 -4
  337. package/dist/ionic/p-6ebdbebe.entry.js +0 -4
  338. package/dist/ionic/p-9f9db3a2.entry.js +0 -4
  339. package/dist/ionic/p-D-3ycHmd.js +0 -4
  340. package/dist/ionic/p-DzWaWHGc.js +0 -4
  341. package/dist/ionic/p-a21add2f.entry.js +0 -4
  342. package/dist/ionic/p-ca2ab74d.entry.js +0 -4
  343. package/dist/ionic/p-e6a4bb56.entry.js +0 -4
  344. package/dist/ionic/p-ec090e0a.entry.js +0 -4
  345. package/dist/types/components/picker-legacy/animations/ios.enter.d.ts +0 -5
  346. package/dist/types/components/picker-legacy/animations/ios.leave.d.ts +0 -5
  347. package/dist/types/components/picker-legacy/picker-interface.d.ts +0 -52
  348. package/dist/types/components/picker-legacy/picker.d.ts +0 -158
  349. package/dist/types/components/picker-legacy-column/picker-column.d.ts +0 -46
  350. package/dist/types/components/picker-legacy-column/test/test.utils.d.ts +0 -9
@@ -30,6 +30,8 @@ const Img = class {
30
30
  this.inheritedAttributes = helpers.inheritAttributes(this.el, ['draggable']);
31
31
  }
32
32
  componentDidLoad() {
33
+ index.printIonWarning('[ion-img] - This component is deprecated and will be removed in Ionic v10. ' +
34
+ 'Use a native <img> with the loading="lazy" attribute instead.', this.el);
33
35
  this.addIO();
34
36
  }
35
37
  disconnectedCallback() {
@@ -82,7 +84,7 @@ const Img = class {
82
84
  render() {
83
85
  const { loadSrc, alt, onLoad, loadError, inheritedAttributes } = this;
84
86
  const { draggable } = inheritedAttributes;
85
- return (index.h(index.Host, { key: '9bfaa659b0680189fd29f3acb2fdce7f70be6060', class: ionicGlobal.getIonMode(this) }, index.h("img", { key: 'd484beae0d5cbe0406958bfad40cdd6c05625340', decoding: "async", src: loadSrc, alt: alt, onLoad: onLoad, onError: loadError, part: "image", draggable: isDraggable(draggable) })));
87
+ return (index.h(index.Host, { key: '57bfb44d9850381fe7b6fcf0c9019b03f7ef86ec', class: ionicGlobal.getIonMode(this) }, index.h("img", { key: '888ec06a266fa2751fc0147ede6a567f4e2b29a6', decoding: "async", src: loadSrc, alt: alt, onLoad: onLoad, onError: loadError, part: "image", draggable: isDraggable(draggable) })));
86
88
  }
87
89
  get el() { return index.getElement(this); }
88
90
  static get watchers() { return {
@@ -6,7 +6,8 @@
6
6
  var index = require('./index-Ct7gcRif.js');
7
7
  var index$1 = require('./index-CIrkNXqJ.js');
8
8
  var ionicGlobal = require('./ionic-global-B-cA6LkY.js');
9
- var config = require('./config-xninhj0J.js');
9
+ var config = require('./config-DWdFbSNK.js');
10
+ var index$2 = require('./index-Cueg3U4w.js');
10
11
  require('./helpers-Cv23MFHM.js');
11
12
 
12
13
  const infiniteScrollCss = () => `ion-infinite-scroll{display:none;width:100%}.infinite-scroll-enabled{display:block}`;
@@ -234,7 +235,7 @@ const InfiniteScrollContent = class {
234
235
  renderLoadingText() {
235
236
  const { customHTMLEnabled, loadingText } = this;
236
237
  if (customHTMLEnabled) {
237
- return index.h("div", { class: "infinite-loading-text", innerHTML: config.sanitizeDOMString(loadingText) });
238
+ return index.h("div", { class: "infinite-loading-text", innerHTML: index$2.sanitizeDOMString(loadingText) });
238
239
  }
239
240
  return index.h("div", { class: "infinite-loading-text" }, this.loadingText);
240
241
  }
@@ -62,7 +62,7 @@ const Input = class {
62
62
  /**
63
63
  * Whether auto correction should be enabled when the user is entering/editing the text value.
64
64
  */
65
- this.autocorrect = 'off';
65
+ this.autocorrect = false;
66
66
  /**
67
67
  * Sets the [`autofocus` attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autofocus) on the native input element.
68
68
  *
@@ -546,7 +546,7 @@ const Input = class {
546
546
  * TODO(FW-5592): Remove hasStartEndSlots condition
547
547
  */
548
548
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
549
- return (index.h(index.Host, { key: '9ba9cf425b573d2ca9ac34455a0e6b8474c4de6d', class: theme.createColorClasses(this.color, {
549
+ return (index.h(index.Host, { key: '6a05f61339d8045285d5820c2508296cc842c210', class: theme.createColorClasses(this.color, {
550
550
  [mode]: true,
551
551
  'has-value': hasValue,
552
552
  'has-focus': hasFocus,
@@ -557,14 +557,14 @@ const Input = class {
557
557
  'in-item': inItem,
558
558
  'in-item-color': theme.hostContext('ion-item.ion-color', this.el),
559
559
  'input-disabled': disabled,
560
- }) }, index.h("label", { key: '74b989d0aa5ab38f29f952519868f05119df6005', class: "input-wrapper", htmlFor: inputId, onClick: this.onLabelClick }, this.renderLabelContainer(), index.h("div", { key: '47f2b42e2f74ea866b4f871026e08ab375d7a726', class: "native-wrapper", onClick: this.onLabelClick }, index.h("slot", { key: 'eaabe5a4a329a356cac3294d15c087d0d131fff2', name: "start" }), index.h("input", Object.assign({ key: 'c821a984a8a9b7f96f30892c06d8deda093ff24b', class: "native-input", ref: (input) => (this.nativeInput = input), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: this.placeholder || '', readOnly: readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, type: this.type, value: value, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeydown, onCompositionstart: this.onCompositionStart, onCompositionend: this.onCompositionEnd, "aria-describedby": this.getHintTextID(), "aria-invalid": this.isInvalid ? 'true' : undefined, "aria-labelledby": this.getLabelledById() }, this.inheritedAttributes)), this.clearInput && !readonly && !disabled && (index.h("button", { key: '62069c11016ee190dc46ab941372e1c4ad8a36ed', "aria-label": "reset", type: "button", class: "input-clear-icon", onPointerDown: (ev) => {
560
+ }) }, index.h("label", { key: 'b546d66f53ea25082494e3a4cb0ce7532ee649d7', class: "input-wrapper", htmlFor: inputId, onClick: this.onLabelClick }, this.renderLabelContainer(), index.h("div", { key: '6af832f2b25fadee7a49adb999166dbc97565e2d', class: "native-wrapper", onClick: this.onLabelClick }, index.h("slot", { key: 'e7a8895038a8d2503f646acfda20c6c1a99c2839', name: "start" }), index.h("input", Object.assign({ key: 'ce85703e0434a6322bb4275a924e3cd91c79fa20', class: "native-input", ref: (input) => (this.nativeInput = input), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect ? 'on' : 'off', autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: this.placeholder || '', readOnly: readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, type: this.type, value: value, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeydown, onCompositionstart: this.onCompositionStart, onCompositionend: this.onCompositionEnd, "aria-describedby": this.getHintTextID(), "aria-invalid": this.isInvalid ? 'true' : undefined, "aria-labelledby": this.getLabelledById() }, this.inheritedAttributes)), this.clearInput && !readonly && !disabled && (index.h("button", { key: '1e59589fc89a37d7830dc915b4c19d26a8f568c7', "aria-label": "reset", type: "button", class: "input-clear-icon", onPointerDown: (ev) => {
561
561
  /**
562
562
  * This prevents mobile browsers from
563
563
  * blurring the input when the clear
564
564
  * button is activated.
565
565
  */
566
566
  ev.preventDefault();
567
- }, onClick: this.clearTextInput }, index.h("ion-icon", { key: 'dd75a516d32110d85382b664c663bd41f177ce12', "aria-hidden": "true", icon: clearIconData }))), index.h("slot", { key: '330d4b9389f2c62223a5ee24003e96ef3e6b2473', name: "end" })), shouldRenderHighlight && index.h("div", { key: '8e442bed130ddc84976ab70fd3f8578d6bcc6316', class: "input-highlight" })), this.renderBottomContent()));
567
+ }, onClick: this.clearTextInput }, index.h("ion-icon", { key: '7d443c5061bf6436d3b77a2444676c679b3e62e4', "aria-hidden": "true", icon: clearIconData }))), index.h("slot", { key: '5516f88d46886348217570ec1fadda0b79b63c01', name: "end" })), shouldRenderHighlight && index.h("div", { key: '2a1fdb7e7c974654dfbb3afb4fbfd9204e9d9092', class: "input-highlight" })), this.renderBottomContent()));
568
568
  }
569
569
  get el() { return index.getElement(this); }
570
570
  static get watchers() { return {
@@ -506,11 +506,11 @@ const SkeletonText = class {
506
506
  const animated = this.animated && index.config.getBoolean('animated', true);
507
507
  const inMedia = theme.hostContext('ion-avatar', this.el) || theme.hostContext('ion-thumbnail', this.el);
508
508
  const mode = ionicGlobal.getIonMode(this);
509
- return (index.h(index.Host, { key: 'cb8da9aba121811b9a4ffdae60ed88105897cb3c', class: {
509
+ return (index.h(index.Host, { key: '887d958d982345ce610730ab5c9ae35010430f75', class: {
510
510
  [mode]: true,
511
511
  'skeleton-text-animated': animated,
512
512
  'in-media': inMedia,
513
- } }, index.h("span", { key: '5379deee3c76d46d615be0cba14b4f60129ffa25' }, "\u00A0")));
513
+ } }, index.h("span", { key: 'a184f4b9780a2aada0a16729109ac81436e9c9e1' }, "\u00A0")));
514
514
  }
515
515
  get el() { return index.getElement(this); }
516
516
  };
@@ -4,10 +4,11 @@
4
4
  'use strict';
5
5
 
6
6
  var index = require('./index-Ct7gcRif.js');
7
- var config = require('./config-xninhj0J.js');
7
+ var config = require('./config-DWdFbSNK.js');
8
8
  var helpers = require('./helpers-Cv23MFHM.js');
9
9
  var lockController = require('./lock-controller-aDB9wrEf.js');
10
- var overlays = require('./overlays-DdtIYQUH.js');
10
+ var overlays = require('./overlays-DSmSrd_4.js');
11
+ var index$1 = require('./index-Cueg3U4w.js');
11
12
  var theme = require('./theme-CeDs6Hcv.js');
12
13
  var ionicGlobal = require('./ionic-global-B-cA6LkY.js');
13
14
  var animation = require('./animation-BJq0kcy2.js');
@@ -213,6 +214,10 @@ const Loading = class {
213
214
  }
214
215
  disconnectedCallback() {
215
216
  this.triggerController.removeClickListener();
217
+ // Clean up aria-hidden if removed without dismiss() being called
218
+ if (this.presented) {
219
+ overlays.cleanupRootFocusTrapAccessibility();
220
+ }
216
221
  }
217
222
  /**
218
223
  * Present the loading overlay after it has been created.
@@ -265,7 +270,7 @@ const Loading = class {
265
270
  renderLoadingMessage(msgId) {
266
271
  const { customHTMLEnabled, message } = this;
267
272
  if (customHTMLEnabled) {
268
- return index.h("div", { class: "loading-content", id: msgId, innerHTML: config.sanitizeDOMString(message) });
273
+ return index.h("div", { class: "loading-content", id: msgId, innerHTML: index$1.sanitizeDOMString(message) });
269
274
  }
270
275
  return (index.h("div", { class: "loading-content", id: msgId }, message));
271
276
  }
@@ -278,9 +283,9 @@ const Loading = class {
278
283
  * Otherwise, don't set aria-labelledby.
279
284
  */
280
285
  const ariaLabelledBy = message !== undefined ? msgId : null;
281
- return (index.h(index.Host, Object.assign({ key: 'f86ddbc600cb5c396b7de38fb5f49625388c3c3f', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
286
+ return (index.h(index.Host, Object.assign({ key: 'ab48bfcee8f7e3e33847a2f262fdc08b9ea804ca', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
282
287
  zIndex: `${40000 + this.overlayIndex}`,
283
- }, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, theme.getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), index.h("ion-backdrop", { key: 'b53727aaddc37ef3c685fcc150c6d5193290a847', visible: this.showBackdrop, tappable: this.backdropDismiss }), index.h("div", { key: '4c61bede8e0a4e47daa6f1f9d0f364ef6aec0bc3', tabindex: "0", "aria-hidden": "true" }), index.h("div", { key: '84e51ceb07118f1eaeb757df28801c255496931b', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (index.h("div", { key: 'fc97f1912e0fc558b7c309a5bc084415f5f620b2', class: "loading-spinner" }, index.h("ion-spinner", { key: '6e186d856cd3f10f22c3e317ef00f31b4216459c', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), index.h("div", { key: 'dcbe9d9a619daa1c08174e73827bdabeb59dde92', tabindex: "0", "aria-hidden": "true" })));
288
+ }, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, theme.getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), index.h("ion-backdrop", { key: '41baccc7fb6474389a3a3431c208e829ef738b75', visible: this.showBackdrop, tappable: this.backdropDismiss }), index.h("div", { key: '7b7290974abbe8db8739b19835aca9f8b5c271c2', tabindex: "0", "aria-hidden": "true" }), index.h("div", { key: 'e32466abfcc92aaad47ea03b1dcb49f66abe4b63', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (index.h("div", { key: 'c5e6e6f9e3f39dba0225d08d7dd2c1b96a1d83c7', class: "loading-spinner" }, index.h("ion-spinner", { key: 'f428038959d879404ea898011363aac0b807ad11', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), index.h("div", { key: '490e531367b86c319fa4260722dcff4dd631fa88', tabindex: "0", "aria-hidden": "true" })));
284
289
  }
285
290
  get el() { return index.getElement(this); }
286
291
  static get watchers() { return {
@@ -5,7 +5,7 @@
5
5
 
6
6
  var index = require('./index-Ct7gcRif.js');
7
7
  var cubicBezier = require('./cubic-bezier-DAjy1V-e.js');
8
- var overlays = require('./overlays-DdtIYQUH.js');
8
+ var overlays = require('./overlays-DSmSrd_4.js');
9
9
  var gestureController = require('./gesture-controller-dtqlP_q4.js');
10
10
  var hardwareBackButton = require('./hardware-back-button-iUuF_76h.js');
11
11
  var helpers = require('./helpers-Cv23MFHM.js');
@@ -9,7 +9,7 @@ var frameworkDelegate = require('./framework-delegate-BtICZDHr.js');
9
9
  var helpers = require('./helpers-Cv23MFHM.js');
10
10
  var lockController = require('./lock-controller-aDB9wrEf.js');
11
11
  var capacitor = require('./capacitor-DmA66EwP.js');
12
- var overlays = require('./overlays-DdtIYQUH.js');
12
+ var overlays = require('./overlays-DSmSrd_4.js');
13
13
  var theme = require('./theme-CeDs6Hcv.js');
14
14
  var index$4 = require('./index-BERfRao3.js');
15
15
  var ionicGlobal = require('./ionic-global-B-cA6LkY.js');
@@ -333,14 +333,7 @@ const createSwipeToCloseGesture = (el, animation, statusBarStyle, onDismiss, onD
333
333
  return false;
334
334
  };
335
335
  const onStart = (detail) => {
336
- var _a;
337
336
  const { deltaY } = detail;
338
- /**
339
- * Firefox automatically selects the header text during drag
340
- * due to the focusable wrapper (tabindex="-1"). Remove any
341
- * selection that may have occurred.
342
- */
343
- (_a = window.getSelection()) === null || _a === void 0 ? void 0 : _a.removeAllRanges();
344
337
  /**
345
338
  * Get the initial scrollY value so
346
339
  * that we can correctly reset the scrollY
@@ -1226,13 +1219,6 @@ const createSheetGesture = (baseEl, backdropEl, wrapperEl, initialBreakpoint, ba
1226
1219
  return true;
1227
1220
  };
1228
1221
  const onStart = (detail) => {
1229
- var _a;
1230
- /**
1231
- * Firefox automatically selects the header text during drag
1232
- * due to the focusable wrapper (tabindex="-1"). Remove any
1233
- * selection that may have occurred.
1234
- */
1235
- (_a = window.getSelection()) === null || _a === void 0 ? void 0 : _a.removeAllRanges();
1236
1222
  /**
1237
1223
  * If canDismiss is anything other than `true`
1238
1224
  * then users should be able to swipe down
@@ -1835,9 +1821,9 @@ const clearSafeAreaOverrides = (hostEl) => {
1835
1821
  hostEl.style.removeProperty('--ion-safe-area-right');
1836
1822
  };
1837
1823
 
1838
- 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-wrapper{outline:none}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px}}@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-modal-offset-top, 0px) + 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}`;
1824
+ 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}}@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-modal-offset-top, 0px) + 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}`;
1839
1825
 
1840
- 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-wrapper{outline:none}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px}}@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-modal-offset-top, 0px) + 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}`;
1826
+ 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}}@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-modal-offset-top, 0px) + 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}`;
1841
1827
 
1842
1828
  const Modal = class {
1843
1829
  constructor(hostRef) {
@@ -1897,13 +1883,20 @@ const Modal = class {
1897
1883
  /**
1898
1884
  * The interaction behavior for the sheet modal when the handle is pressed.
1899
1885
  *
1900
- * Defaults to `"none"`, which means the modal will not change size or position when the handle is pressed.
1901
- * Set to `"cycle"` to let the modal cycle between available breakpoints when pressed.
1886
+ * Handle behavior is unavailable when the `handle` property is set to
1887
+ * `false` or when the `breakpoints` property is not set (using a
1888
+ * fullscreen or card modal).
1889
+ *
1890
+ * Set to `"cycle"` to make the handle focusable and let the sheet modal
1891
+ * cycle between available breakpoints when pressed. This keeps the sheet
1892
+ * operable with assistive technology.
1893
+ *
1894
+ * Set to `"none"` to make the handle purely decorative when pressed and
1895
+ * removed from the tab order.
1902
1896
  *
1903
- * Handle behavior is unavailable when the `handle` property is set to `false` or
1904
- * when the `breakpoints` property is not set (using a fullscreen or card modal).
1897
+ * Defaults to `"cycle"`.
1905
1898
  */
1906
- this.handleBehavior = 'none';
1899
+ this.handleBehavior = 'cycle';
1907
1900
  /**
1908
1901
  * If `true`, the modal will be dismissed when the backdrop is clicked.
1909
1902
  */
@@ -2095,6 +2088,10 @@ const Modal = class {
2095
2088
  // Also called in dismiss() — intentional dual cleanup covers both
2096
2089
  // dismiss-then-remove and direct DOM removal without dismiss.
2097
2090
  this.cleanupSafeAreaOverrides();
2091
+ // Clean up aria-hidden if removed without dismiss() being called
2092
+ if (this.presented) {
2093
+ overlays.cleanupRootFocusTrapAccessibility();
2094
+ }
2098
2095
  }
2099
2096
  componentWillLoad() {
2100
2097
  var _a;
@@ -2974,26 +2971,20 @@ const Modal = class {
2974
2971
  const isCardModal = presentingElement !== undefined && mode === 'ios';
2975
2972
  const isHandleCycle = handleBehavior === 'cycle';
2976
2973
  const isSheetModalWithHandle = isSheetModal && showHandle;
2977
- return (index$3.h(index$3.Host, Object.assign({ key: 'ab93657f4a5b4c97168d292b398d975e4b5b4af4', "no-router": true,
2974
+ return (index$3.h(index$3.Host, Object.assign({ key: '528f9e354f470e22563938e7531e3f23a97e4200', "no-router": true,
2978
2975
  // Allow the modal to be navigable when the handle is focusable
2979
2976
  tabIndex: isHandleCycle && isSheetModalWithHandle ? 0 : -1 }, htmlAttributes, { style: {
2980
2977
  zIndex: `${20000 + this.overlayIndex}`,
2981
- }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [overlays.FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), index$3.h("ion-backdrop", { key: '5ba6315c7c8c64fa04c62f85fd493da5275b2cbd', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && index$3.h("div", { key: 'a76c48d41c67f86c18a7481e980e6925e614f85d', class: "modal-shadow" }), index$3.h("div", Object.assign({ key: 'dccf3c774355429bc0ea7461d9b1ef941ea91902',
2978
+ }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [overlays.FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), index$3.h("ion-backdrop", { key: '53983c96bc6b30df89986c8d9c978a8e6f78fe80', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && index$3.h("div", { key: '34288a7343b7c47fed00d3abc73957f45f06d2fd', class: "modal-shadow" }), index$3.h("div", Object.assign({ key: 'f9b37f547bd5c61037bbad1a71bfed80ba8c630b',
2982
2979
  /*
2983
2980
  role and aria-modal must be used on the
2984
2981
  same element. They must also be set inside the
2985
2982
  shadow DOM otherwise ion-button will not be highlighted
2986
2983
  when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
2987
-
2988
- tabIndex={-1} is required so present() can move focus to this
2989
- element (which carries the dialog role) instead of the role-less
2990
- host. role="dialog" alone does not make an element focusable, so
2991
- without the tabindex focus() would be a no-op and screen readers
2992
- may not properly announce the dialog and its content when it opens.
2993
2984
  */
2994
- role: "dialog" }, inheritedAttributes, { "aria-modal": "true", tabIndex: -1, class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (index$3.h("button", { key: 'ba4ebd6364faba46ac8532d1c83cb655ae873a14', class: "modal-handle",
2985
+ role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (index$3.h("button", { key: 'b8741594108d3ea681ff41ff8f2241a4119578b1', class: "modal-handle",
2995
2986
  // Prevents the handle from receiving keyboard focus when it does not cycle
2996
- tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle", ref: (el) => (this.dragHandleEl = el) })), index$3.h("slot", { key: '11d5921a8ebbcd0017d4f28a33d68049253f63f0', onSlotchange: this.onSlotChange }))));
2987
+ tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle", ref: (el) => (this.dragHandleEl = el) })), index$3.h("slot", { key: 'bcc7960fae3fed09076c704d08c3afc46caa0738', onSlotchange: this.onSlotChange }))));
2997
2988
  }
2998
2989
  get el() { return index$3.getElement(this); }
2999
2990
  static get watchers() { return {
@@ -4,7 +4,7 @@
4
4
  'use strict';
5
5
 
6
6
  var index = require('./index-Ct7gcRif.js');
7
- var overlays = require('./overlays-DdtIYQUH.js');
7
+ var overlays = require('./overlays-DSmSrd_4.js');
8
8
  var frameworkDelegate = require('./framework-delegate-BtICZDHr.js');
9
9
  var helpers = require('./helpers-Cv23MFHM.js');
10
10
  var lockController = require('./lock-controller-aDB9wrEf.js');
@@ -1090,9 +1090,9 @@ const mdLeaveAnimation = (baseEl) => {
1090
1090
  .addAnimation([backdropAnimation, wrapperAnimation]);
1091
1091
  };
1092
1092
 
1093
- const popoverIosCss = () => `:host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:fixed;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);z-index:1001}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{z-index:10}.popover-content{display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;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);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:auto;z-index:10}::slotted(.popover-viewport){--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-start:dir(rtl)){--offset-x:-5px}}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-end:dir(rtl)){--offset-x:5px}}:host{--width:200px;--max-height:90%;--box-shadow:none;--backdrop-opacity:var(--ion-backdrop-opacity, 0.08)}:host(.popover-desktop){--box-shadow:0px 4px 16px 0px rgba(0, 0, 0, 0.12)}.popover-content{border-radius:10px}:host(.popover-desktop) .popover-content{border:0.5px solid var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6))}.popover-arrow{display:block;position:absolute;width:20px;height:10px;overflow:hidden;z-index:11}.popover-arrow::after{top:3px;border-radius:3px;position:absolute;width:14px;height:14px;-webkit-transform:rotate(45deg);transform:rotate(45deg);background:var(--background);content:"";z-index:10}.popover-arrow::after{inset-inline-start:3px}:host(.popover-bottom) .popover-arrow{top:auto;bottom:-10px}:host(.popover-bottom) .popover-arrow::after{top:-6px}:host(.popover-side-left) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host(.popover-side-right) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host(.popover-side-top) .popover-arrow{-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host(.popover-side-start) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host-context([dir=rtl]):host(.popover-side-start) .popover-arrow,:host-context([dir=rtl]).popover-side-start .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}@supports selector(:dir(rtl)){:host(.popover-side-start:dir(rtl)) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}}:host(.popover-side-end) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host-context([dir=rtl]):host(.popover-side-end) .popover-arrow,:host-context([dir=rtl]).popover-side-end .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}@supports selector(:dir(rtl)){:host(.popover-side-end:dir(rtl)) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}}.popover-arrow,.popover-content{opacity:0}@supports ((-webkit-backdrop-filter: blur(0)) or (backdrop-filter: blur(0))){:host(.popover-translucent) .popover-content,:host(.popover-translucent) .popover-arrow::after{background:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}}`;
1093
+ const popoverIosCss = () => `:host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:fixed;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);z-index:1001}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{z-index:10}.popover-content{display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;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);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:auto;z-index:10}::slotted(.popover-viewport){--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-start:dir(rtl)){--offset-x:-5px}}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-end:dir(rtl)){--offset-x:5px}}:host(.select-popover-rich-content){--width:clamp(250px, calc(100vw - 40px), 400px)}:host{--width:200px;--max-height:90%;--box-shadow:none;--backdrop-opacity:var(--ion-backdrop-opacity, 0.08)}:host(.popover-desktop){--box-shadow:0px 4px 16px 0px rgba(0, 0, 0, 0.12)}.popover-content{border-radius:10px}:host(.popover-desktop) .popover-content{border:0.5px solid var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6))}.popover-arrow{display:block;position:absolute;width:20px;height:10px;overflow:hidden;z-index:11}.popover-arrow::after{top:3px;border-radius:3px;position:absolute;width:14px;height:14px;-webkit-transform:rotate(45deg);transform:rotate(45deg);background:var(--background);content:"";z-index:10}.popover-arrow::after{inset-inline-start:3px}:host(.popover-bottom) .popover-arrow{top:auto;bottom:-10px}:host(.popover-bottom) .popover-arrow::after{top:-6px}:host(.popover-side-left) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host(.popover-side-right) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host(.popover-side-top) .popover-arrow{-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host(.popover-side-start) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host-context([dir=rtl]):host(.popover-side-start) .popover-arrow,:host-context([dir=rtl]).popover-side-start .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}@supports selector(:dir(rtl)){:host(.popover-side-start:dir(rtl)) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}}:host(.popover-side-end) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host-context([dir=rtl]):host(.popover-side-end) .popover-arrow,:host-context([dir=rtl]).popover-side-end .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}@supports selector(:dir(rtl)){:host(.popover-side-end:dir(rtl)) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}}.popover-arrow,.popover-content{opacity:0}@supports ((-webkit-backdrop-filter: blur(0)) or (backdrop-filter: blur(0))){:host(.popover-translucent) .popover-content,:host(.popover-translucent) .popover-arrow::after{background:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}}`;
1094
1094
 
1095
- const popoverMdCss = () => `:host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:fixed;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);z-index:1001}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{z-index:10}.popover-content{display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;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);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:auto;z-index:10}::slotted(.popover-viewport){--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-start:dir(rtl)){--offset-x:-5px}}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-end:dir(rtl)){--offset-x:5px}}:host{--width:250px;--max-height:90%;--box-shadow:0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12);--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}.popover-content{border-radius:4px;-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]) .popover-content{-webkit-transform-origin:right top;transform-origin:right top}[dir=rtl] .popover-content{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){.popover-content:dir(rtl){-webkit-transform-origin:right top;transform-origin:right top}}.popover-viewport{-webkit-transition-delay:100ms;transition-delay:100ms}.popover-wrapper{opacity:0}`;
1095
+ const popoverMdCss = () => `:host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:fixed;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);z-index:1001}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{z-index:10}.popover-content{display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;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);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:auto;z-index:10}::slotted(.popover-viewport){--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-start:dir(rtl)){--offset-x:-5px}}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-end:dir(rtl)){--offset-x:5px}}:host(.select-popover-rich-content){--width:clamp(250px, calc(100vw - 40px), 400px)}:host{--width:250px;--max-height:90%;--box-shadow:0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12);--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}.popover-content{border-radius:4px;-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]) .popover-content{-webkit-transform-origin:right top;transform-origin:right top}[dir=rtl] .popover-content{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){.popover-content:dir(rtl){-webkit-transform-origin:right top;transform-origin:right top}}.popover-viewport{-webkit-transition-delay:100ms;transition-delay:100ms}.popover-wrapper{opacity:0}`;
1096
1096
 
1097
1097
  const Popover = class {
1098
1098
  constructor(hostRef) {
@@ -1306,6 +1306,10 @@ const Popover = class {
1306
1306
  this.headerResizeObserver.disconnect();
1307
1307
  this.headerResizeObserver = undefined;
1308
1308
  }
1309
+ // Clean up aria-hidden if removed without dismiss() being called
1310
+ if (this.presented) {
1311
+ overlays.cleanupRootFocusTrapAccessibility();
1312
+ }
1309
1313
  }
1310
1314
  componentWillLoad() {
1311
1315
  var _a, _b;
@@ -1544,9 +1548,9 @@ const Popover = class {
1544
1548
  const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
1545
1549
  const desktop = ionicGlobal.isPlatform('desktop');
1546
1550
  const enableArrow = arrow && !parentPopover;
1547
- return (index.h(index.Host, Object.assign({ key: '2edd8333c630efbce59071f8a383e4326e928dbc', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
1551
+ return (index.h(index.Host, Object.assign({ key: 'd7f3aa2c2fa93a93585e3eda9e4a6d0daaa541be', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
1548
1552
  zIndex: `${20000 + this.overlayIndex}`,
1549
- }, class: Object.assign(Object.assign({}, theme.getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [overlays.FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && index.h("ion-backdrop", { key: 'aac4e68b08197534375e8ea3f8c9ea0c10ab2af4', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), index.h("div", { key: 'b7f4ebf57d4148b32856b0075d286f454be8de5d', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && index.h("div", { key: '607d94c28d73e8e957175a7c0f6e8a99ec4dcd53', class: "popover-arrow", part: "arrow" }), index.h("div", { key: '4366a5a5de550c09895e923f345583508e1ec30c', class: "popover-content", part: "content" }, index.h("slot", { key: 'eb7886fbc99c15b667b7d825d24f1c12d9380f03' })))));
1553
+ }, class: Object.assign(Object.assign({}, theme.getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [overlays.FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && index.h("ion-backdrop", { key: 'b87be2ef14219997b9c47dcbaf904eb770d0e057', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), index.h("div", { key: 'e6243572faf1b871ae2b34923410b2a6638469f0', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && index.h("div", { key: '3d4938c9d0764a644398e0e7a4361106da1bd926', class: "popover-arrow", part: "arrow" }), index.h("div", { key: '24ad6d777828aad2881d56595693e6022fc9cb8e', class: "popover-content", part: "content" }, index.h("slot", { key: '79f83df74a5c5e3dd7650f15c1aa50795b90a345' })))));
1550
1554
  }
1551
1555
  get el() { return index.getElement(this); }
1552
1556
  static get watchers() { return {
@@ -42,7 +42,7 @@ const ProgressBar = class {
42
42
  const mode = ionicGlobal.getIonMode(this);
43
43
  // If the progress is displayed as a solid bar.
44
44
  const progressSolid = buffer === 1;
45
- return (index.h(index.Host, { key: 'c859e48f3d24a458239e36d925e5dc003ed07c6b', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: theme.createColorClasses(color, {
45
+ return (index.h(index.Host, { key: 'd7476268ce53b6a4f425b7bc9f01d6935eb411c3', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: theme.createColorClasses(color, {
46
46
  [mode]: true,
47
47
  [`progress-bar-${type}`]: true,
48
48
  'progress-paused': paused,
@@ -138,7 +138,7 @@ const Radio = class {
138
138
  const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
139
139
  const mode = ionicGlobal.getIonMode(this);
140
140
  const inItem = theme.hostContext('ion-item', el);
141
- return (index.h(index.Host, { key: 'af5dc59ed528150872e907ed1036e3e2decba939', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: theme.createColorClasses(color, {
141
+ return (index.h(index.Host, { key: 'd9425b252ed38086420d91d5c680421d121c99f4', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: theme.createColorClasses(color, {
142
142
  [mode]: true,
143
143
  'in-item': inItem,
144
144
  'radio-checked': checked,
@@ -149,10 +149,10 @@ const Radio = class {
149
149
  // Focus and active styling should not apply when the radio is in an item
150
150
  'ion-activatable': !inItem,
151
151
  'ion-focusable': !inItem,
152
- }), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, index.h("label", { key: '1312aba3259a87fe23a6911cdfa477e309469c8b', class: "radio-wrapper" }, index.h("div", { key: 'b342aa27e240a300836d2a135658d346b95daf09', class: {
152
+ }), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, index.h("label", { key: 'de391fca2aa0b681af5c1d089121596c46e68271', class: "radio-wrapper" }, index.h("div", { key: '44e4c71645f86a9e73ad58c0e8b41c0558b920f6', class: {
153
153
  'label-text-wrapper': true,
154
154
  'label-text-wrapper-hidden': !hasLabel,
155
- }, part: "label" }, index.h("slot", { key: '0a4613d29aa783d1882cf889377f7e4fd4fea51d' })), index.h("div", { key: '191faea79dc4cd8befc4b873f5bd9f5af8ca2acc', class: "native-wrapper" }, this.renderRadioControl()))));
155
+ }, part: "label" }, index.h("slot", { key: '589d7c1b45a1918b5811663daa8f30788e7729f8' })), index.h("div", { key: '0f61a17b195582d6c9a0c597cd40e6629256e479', class: "native-wrapper" }, this.renderRadioControl()))));
156
156
  }
157
157
  get el() { return index.getElement(this); }
158
158
  static get watchers() { return {
@@ -794,7 +794,7 @@ const Range = class {
794
794
  const valueAtMin = dualKnobs ? this.valA === min || this.valB === min : this.valA === min;
795
795
  const valueAtMax = dualKnobs ? this.valA === max || this.valB === max : this.valA === max;
796
796
  helpers.renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
797
- return (index.h(index.Host, { key: 'f8063d1234fb113fe55a7902845dd4b4da8b1edb', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: theme.createColorClasses(this.color, {
797
+ return (index.h(index.Host, { key: 'cd26f0187c0d37c7eb9df923f75c8a0f57c19ab6', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: theme.createColorClasses(this.color, {
798
798
  [mode]: true,
799
799
  'in-item': inItem,
800
800
  'range-disabled': disabled,
@@ -808,10 +808,10 @@ const Range = class {
808
808
  'range-item-end-adjustment': needsEndAdjustment,
809
809
  'range-value-min': valueAtMin,
810
810
  'range-value-max': valueAtMax,
811
- }) }, index.h("label", { key: 'beead65ab01e3b18e4be59c0ee8ac6ebf32aad7c', class: "range-wrapper", id: "range-label" }, index.h("div", { key: '03633c689d9d2e4c50a2131bcd560329df49e314', class: {
811
+ }) }, index.h("label", { key: '90224fd24b0e625a17e7972feff73a0ac31e093d', class: "range-wrapper", id: "range-label" }, index.h("div", { key: 'e07b9fa10983249c425eec26b741f0f628daf2b2', class: {
812
812
  'label-text-wrapper': true,
813
813
  'label-text-wrapper-hidden': !hasLabel,
814
- }, part: "label" }, label !== undefined ? index.h("div", { class: "label-text" }, label) : index.h("slot", { name: "label" })), index.h("div", { key: 'c066804263ab6ae7393f8dcc51184b7198844ffa', class: "native-wrapper" }, index.h("slot", { key: '7e8ea224d72b3e965dd948bee7e45c1a096b6899', name: "start" }), this.renderRangeSlider(), index.h("slot", { key: '21f242f6f60ff3adce6a2d90b2d4dac1ceaf6624', name: "end" })))));
814
+ }, part: "label" }, label !== undefined ? index.h("div", { class: "label-text" }, label) : index.h("slot", { name: "label" })), index.h("div", { key: '9e252f1190838fbae46e724bf665f9b1943600a4', class: "native-wrapper" }, index.h("slot", { key: '950697dd9636da340de659812daa91fff50e5345', name: "start" }), this.renderRangeSlider(), index.h("slot", { key: 'd3fce46b29db275af71e6149e725967839ec12b0', name: "end" })))));
815
815
  }
816
816
  get el() { return index.getElement(this); }
817
817
  static get watchers() { return {
@@ -10,7 +10,8 @@ var helpers = require('./helpers-Cv23MFHM.js');
10
10
  var haptic = require('./haptic-ClPPQ_PS.js');
11
11
  var ionicGlobal = require('./ionic-global-B-cA6LkY.js');
12
12
  var animation = require('./animation-BJq0kcy2.js');
13
- var config = require('./config-xninhj0J.js');
13
+ var config = require('./config-DWdFbSNK.js');
14
+ var index$3 = require('./index-Cueg3U4w.js');
14
15
  var index$2 = require('./index-DqmRDbxg.js');
15
16
  var spinnerConfigs = require('./spinner-configs-DxHKnd3-.js');
16
17
  require('./capacitor-DmA66EwP.js');
@@ -918,7 +919,7 @@ const Refresher = class {
918
919
  }
919
920
  render() {
920
921
  const mode = ionicGlobal.getIonMode(this);
921
- return (index.h(index.Host, { key: '80fa313b0d77161680836bdd6aa334d02c549b41', slot: "fixed", class: {
922
+ return (index.h(index.Host, { key: '1dd475095f76491206644828cf89fc6d2ec276d1', slot: "fixed", class: {
922
923
  [mode]: true,
923
924
  // Used internally for styling
924
925
  [`refresher-${mode}`]: true,
@@ -968,14 +969,14 @@ const RefresherContent = class {
968
969
  renderPullingText() {
969
970
  const { customHTMLEnabled, pullingText } = this;
970
971
  if (customHTMLEnabled) {
971
- return index.h("div", { class: "refresher-pulling-text", innerHTML: config.sanitizeDOMString(pullingText) });
972
+ return index.h("div", { class: "refresher-pulling-text", innerHTML: index$3.sanitizeDOMString(pullingText) });
972
973
  }
973
974
  return index.h("div", { class: "refresher-pulling-text" }, pullingText);
974
975
  }
975
976
  renderRefreshingText() {
976
977
  const { customHTMLEnabled, refreshingText } = this;
977
978
  if (customHTMLEnabled) {
978
- return index.h("div", { class: "refresher-refreshing-text", innerHTML: config.sanitizeDOMString(refreshingText) });
979
+ return index.h("div", { class: "refresher-refreshing-text", innerHTML: index$3.sanitizeDOMString(refreshingText) });
979
980
  }
980
981
  return index.h("div", { class: "refresher-refreshing-text" }, refreshingText);
981
982
  }
@@ -983,7 +984,7 @@ const RefresherContent = class {
983
984
  const pullingIcon = this.pullingIcon;
984
985
  const hasSpinner = pullingIcon != null && spinnerConfigs.SPINNERS[pullingIcon] !== undefined;
985
986
  const mode = ionicGlobal.getIonMode(this);
986
- return (index.h(index.Host, { key: '4add42b9fdfded359d1b054d04c2c6ff48e028c8', class: mode }, index.h("div", { key: '45d4e4e0adfed7f96dd1849767aa2cde947de044', class: "refresher-pulling" }, this.pullingIcon && hasSpinner && (index.h("div", { key: '6bd6c8ef5bf6e10699eec3bd8646431bfe1077a0', class: "refresher-pulling-icon" }, index.h("div", { key: '852d20414da53352c8e58bc627e0fda38eff97cb', class: "spinner-arrow-container" }, index.h("ion-spinner", { key: '0dde3578a80cc4b77a07c4d1db1af80c7eb10c27', name: this.pullingIcon, paused: true }), mode === 'md' && this.pullingIcon === 'circular' && (index.h("div", { key: 'c71dbfcf416a19c30fed38f722ebf0358c2181dd', class: "arrow-container" }, index.h("ion-icon", { key: 'fa7c2cf624e7a9c41964e66cabc88c594da6d1fd', icon: index$2.caretBackSharp, "aria-hidden": "true" })))))), this.pullingIcon && !hasSpinner && (index.h("div", { key: '3dd68c9968b421c379d1c4349ba619ee0a189c6d', class: "refresher-pulling-icon" }, index.h("ion-icon", { key: 'f83bceceae4fa8245f91939fb6db589a595e975b', icon: this.pullingIcon, lazy: false, "aria-hidden": "true" }))), this.pullingText !== undefined && this.renderPullingText()), index.h("div", { key: '98e22ceb0f7883e871f815f6199f5cb313e2e086', class: "refresher-refreshing" }, this.refreshingSpinner && (index.h("div", { key: 'faabe8a9b61c02a00994ef978bb82b9ba4537214', class: "refresher-refreshing-icon" }, index.h("ion-spinner", { key: '029a0c073ee1a07f01211e12ba2abc985cf21ed7', name: this.refreshingSpinner }))), this.refreshingText !== undefined && this.renderRefreshingText())));
987
+ return (index.h(index.Host, { key: 'ec378d6a302be697c12c4f973a57c6ad2ada070f', class: mode }, index.h("div", { key: '0055f98f8c5a1ed7979dc8146ec1f82a575860c7', class: "refresher-pulling" }, this.pullingIcon && hasSpinner && (index.h("div", { key: '4f88468e26370df6889e72aa54ebb395ebf3757d', class: "refresher-pulling-icon" }, index.h("div", { key: '05b3f8679576aaa6c2d84d60df6629a392df29e2', class: "spinner-arrow-container" }, index.h("ion-spinner", { key: '0bf6ceea416ce1140c0f10a5bede063cae7054f4', name: this.pullingIcon, paused: true }), mode === 'md' && this.pullingIcon === 'circular' && (index.h("div", { key: 'b71ede8455837968218edae28504e5e14bbc1f5c', class: "arrow-container" }, index.h("ion-icon", { key: '30b808288d23d3eac681b1225cd8392fdacfefe1', icon: index$2.caretBackSharp, "aria-hidden": "true" })))))), this.pullingIcon && !hasSpinner && (index.h("div", { key: 'fee1ae7e57ef8a02f5654808dff9dca3002b6702', class: "refresher-pulling-icon" }, index.h("ion-icon", { key: '55b34a98028adb497fbc2ac66bdb3d5ae5b1705b', icon: this.pullingIcon, lazy: false, "aria-hidden": "true" }))), this.pullingText !== undefined && this.renderPullingText()), index.h("div", { key: 'ef8f987daa8060cb6f8fd83c0864095042b9eecf', class: "refresher-refreshing" }, this.refreshingSpinner && (index.h("div", { key: 'cd6fe0e81b34eeae11478fcc8a42044bff6f7a52', class: "refresher-refreshing-icon" }, index.h("ion-spinner", { key: '9cd778229582b538d54589c4d8e4d470efb64aad', name: this.refreshingSpinner }))), this.refreshingText !== undefined && this.renderRefreshingText())));
987
988
  }
988
989
  get el() { return index.getElement(this); }
989
990
  };
@@ -32,7 +32,7 @@ const Reorder = class {
32
32
  render() {
33
33
  const mode = ionicGlobal.getIonMode(this);
34
34
  const reorderIcon = mode === 'ios' ? index$1.reorderThreeOutline : index$1.reorderTwoSharp;
35
- return (index.h(index.Host, { key: 'b869db61ca6393cf1476f2111a66b387b567c6d1', class: mode }, index.h("slot", { key: 'a78edd1776835282b8b5c841377018f36c83296c' }, index.h("ion-icon", { key: '7fb067c47bbb9a7258e5063f028282cc097d0f94', icon: reorderIcon, lazy: false, class: "reorder-icon", part: "icon", "aria-hidden": "true" }))));
35
+ return (index.h(index.Host, { key: '4d35db30b5b3df2020d2212abb3cfac94f9bc2b8', class: mode }, index.h("slot", { key: '68a565ae4a47f6a9f5d6ba845b596fdfa629ece8' }, index.h("ion-icon", { key: '168fb0f8eb9c02329274488900fcdb05d44cb895', icon: reorderIcon, lazy: false, class: "reorder-icon", part: "icon", "aria-hidden": "true" }))));
36
36
  }
37
37
  get el() { return index.getElement(this); }
38
38
  };
@@ -295,7 +295,7 @@ const ReorderGroup = class {
295
295
  }
296
296
  render() {
297
297
  const mode = ionicGlobal.getIonMode(this);
298
- return (index.h(index.Host, { key: '9527bbdedaab63d31f562c874a7332ea60c4b47b', class: {
298
+ return (index.h(index.Host, { key: '3afdc6a6c81bba2f88ea523d4b73c6fccff1b9ec', class: {
299
299
  [mode]: true,
300
300
  'reorder-enabled': !this.disabled,
301
301
  'reorder-list-active': this.state !== 0 /* ReorderGroupState.Idle */,
@@ -74,7 +74,7 @@ const RippleEffect = class {
74
74
  }
75
75
  render() {
76
76
  const mode = ionicGlobal.getIonMode(this);
77
- return (index.h(index.Host, { key: '3b59cbb44741569a7350f9638b4392add673b6f1', role: "presentation", class: {
77
+ return (index.h(index.Host, { key: '5e88b5225414e29883256c86f111ded5bdf2ef91', role: "presentation", class: {
78
78
  [mode]: true,
79
79
  unbounded: this.unbounded,
80
80
  } }));
@@ -1073,10 +1073,10 @@ const RouterLink = class {
1073
1073
  rel: this.rel,
1074
1074
  target: this.target,
1075
1075
  };
1076
- return (index.h(index.Host, { key: '8372835161d507c7b821b7536c55f912eb6ce704', onClick: this.onClick, class: theme.createColorClasses(this.color, {
1076
+ return (index.h(index.Host, { key: '6d5fdfa0dcf1eb216173bcc53f1f4d625f3ec551', onClick: this.onClick, class: theme.createColorClasses(this.color, {
1077
1077
  [mode]: true,
1078
1078
  'ion-activatable': true,
1079
- }) }, index.h("a", Object.assign({ key: '315966e14a17760f3f64197e8315200039787897' }, attrs), index.h("slot", { key: '95fc1697b884225e85e647dddcaa8f4af8b9a979' }))));
1079
+ }) }, index.h("a", Object.assign({ key: '85796b7b48581fe9830ba1102dad7d1069de4e17' }, attrs), index.h("slot", { key: '0f93b0da3ec4ae8f50f624f9e7bed87d13d712d0' }))));
1080
1080
  }
1081
1081
  };
1082
1082
  RouterLink.style = routerLinkCss();
@@ -46,7 +46,7 @@ const Searchbar = class {
46
46
  /**
47
47
  * Set the input's autocorrect property.
48
48
  */
49
- this.autocorrect = 'off';
49
+ this.autocorrect = false;
50
50
  /**
51
51
  * Set the cancel button icon. Only applies to `md` mode.
52
52
  * Defaults to `arrow-back-sharp`.
@@ -470,8 +470,8 @@ const Searchbar = class {
470
470
  const clearIcon = this.clearIcon || (mode === 'ios' ? index$1.closeCircle : index$1.closeSharp);
471
471
  const searchIcon = this.searchIcon || (mode === 'ios' ? index$1.searchOutline : index$1.searchSharp);
472
472
  const shouldShowCancelButton = this.shouldShowCancelButton();
473
- const cancelButton = this.showCancelButton !== 'never' && (index.h("button", { key: '226b7a676b4819cda4062b8334fa8d4c4cee6f1a', "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" }, index.h("div", { key: '89adb4efa17a78c973bbd5527cfac91d99ceb9bb', "aria-hidden": "true" }, mode === 'md' ? (index.h("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
474
- return (index.h(index.Host, { key: '237dd767403dba3cb3d7de8905996e275669da3b', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: theme.createColorClasses(this.color, {
473
+ const cancelButton = this.showCancelButton !== 'never' && (index.h("button", { key: '73964da43dbd099fc7f3d30cbc4da11087701ac5', "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" }, index.h("div", { key: '27335a0e35f6c253c074685fa0b088404927bcbb', "aria-hidden": "true" }, mode === 'md' ? (index.h("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
474
+ return (index.h(index.Host, { key: '1b4f6c4e7dffb02e092f0026ce3875822d98a631', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: theme.createColorClasses(this.color, {
475
475
  [mode]: true,
476
476
  'searchbar-animated': animated,
477
477
  'searchbar-disabled': this.disabled,
@@ -481,14 +481,14 @@ const Searchbar = class {
481
481
  'searchbar-has-focus': this.focused,
482
482
  'searchbar-should-show-clear': this.shouldShowClearButton(),
483
483
  'searchbar-should-show-cancel': this.shouldShowCancelButton(),
484
- }) }, index.h("div", { key: '5b4bdf7280bea710304b6975e76390fe6ceb7417', class: "searchbar-input-container" }, index.h("input", Object.assign({ key: '01a0820a2cf904aec1c7d84b542ab7918d435632', "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, index.h("ion-icon", { key: 'cd64973206b1cc59d221112861733b7ee25f0323', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), index.h("button", { key: '2061fa8449bbc576cf8c5130ea613378ea492944', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
484
+ }) }, index.h("div", { key: '587e1950e329cfb9d3658be5b2a6491e7af9321a', class: "searchbar-input-container" }, index.h("input", Object.assign({ key: '7f78a3d22cce03af277a538b4d9f85faddf1fa80', "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 ? 'on' : 'off', spellcheck: this.spellcheck }, this.inheritedAttributes)), mode === 'md' && cancelButton, index.h("ion-icon", { key: '9fd3e458978b64e9e3358bcbb26471753f6ff2a6', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), index.h("button", { key: 'c7864c85923668dfa25f5fc4a70c7dbf6da191b7', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
485
485
  /**
486
486
  * This prevents mobile browsers from
487
487
  * blurring the input when the clear
488
488
  * button is activated.
489
489
  */
490
490
  ev.preventDefault();
491
- }, onClick: () => this.onClearInput(true) }, index.h("ion-icon", { key: '00df6f7742bff70b1b088d544b8c00e962e7216c', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
491
+ }, onClick: () => this.onClearInput(true) }, index.h("ion-icon", { key: '47e7a15c6c6d4df4c54c62b042842e499627da05', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
492
492
  }
493
493
  get el() { return index.getElement(this); }
494
494
  static get watchers() { return {
@@ -12,7 +12,7 @@ const SegmentContent = class {
12
12
  index.registerInstance(this, hostRef);
13
13
  }
14
14
  render() {
15
- return (index.h(index.Host, { key: '665f41a854621f898eaf7ba9a49e77cc9326501e' }, index.h("slot", { key: '635aa57fbf6167dcd36fe8dc5dfc1c313637ac04' })));
15
+ return (index.h(index.Host, { key: 'ef39f29c444177c3b083cd35680ba891e4bb6a2a' }, index.h("slot", { key: '51f9dd9ca084ddd928b376aa9d716509669c32b2' })));
16
16
  }
17
17
  };
18
18
  SegmentContent.style = segmentContentCss();