@ionic/core 9.0.1-dev.11787177893.1979eb13 → 9.0.1-dev.11787589191.1e183b55

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 (602) hide show
  1. package/components/index.js +1 -1
  2. package/components/ion-accordion-group.js +1 -1
  3. package/components/ion-accordion.js +1 -1
  4. package/components/ion-action-sheet.js +1 -1
  5. package/components/ion-alert.js +1 -1
  6. package/components/ion-app.js +1 -1
  7. package/components/ion-avatar.js +1 -1
  8. package/components/ion-back-button.js +1 -1
  9. package/components/ion-backdrop.js +1 -1
  10. package/components/ion-badge.js +1 -1
  11. package/components/ion-breadcrumb.js +1 -1
  12. package/components/ion-breadcrumbs.js +1 -1
  13. package/components/ion-button.js +1 -1
  14. package/components/ion-buttons.js +1 -1
  15. package/components/ion-card-content.js +1 -1
  16. package/components/ion-card-header.js +1 -1
  17. package/components/ion-card-subtitle.js +1 -1
  18. package/components/ion-card-title.js +1 -1
  19. package/components/ion-card.js +1 -1
  20. package/components/ion-checkbox.js +1 -1
  21. package/components/ion-chip.js +1 -1
  22. package/components/ion-col.js +1 -1
  23. package/components/ion-content.js +1 -1
  24. package/components/ion-datetime-button.js +1 -1
  25. package/components/ion-datetime.js +1 -1
  26. package/components/ion-fab-button.js +1 -1
  27. package/components/ion-fab-list.js +1 -1
  28. package/components/ion-fab.js +1 -1
  29. package/components/ion-footer.js +1 -1
  30. package/components/ion-grid.js +1 -1
  31. package/components/ion-header.js +1 -1
  32. package/components/ion-icon.js +1 -1
  33. package/components/ion-img.js +1 -1
  34. package/components/ion-infinite-scroll-content.js +1 -1
  35. package/components/ion-infinite-scroll.js +1 -1
  36. package/components/ion-input-otp.js +1 -1
  37. package/components/ion-input-password-toggle.js +1 -1
  38. package/components/ion-input.js +1 -1
  39. package/components/ion-item-divider.js +1 -1
  40. package/components/ion-item-group.js +1 -1
  41. package/components/ion-item-option.js +1 -1
  42. package/components/ion-item-options.js +1 -1
  43. package/components/ion-item-sliding.js +1 -1
  44. package/components/ion-item.js +1 -1
  45. package/components/ion-label.js +1 -1
  46. package/components/ion-list-header.js +1 -1
  47. package/components/ion-list.js +1 -1
  48. package/components/ion-loading.js +1 -1
  49. package/components/ion-menu-button.js +1 -1
  50. package/components/ion-menu-toggle.js +1 -1
  51. package/components/ion-menu.js +1 -1
  52. package/components/ion-modal.js +1 -1
  53. package/components/ion-nav-link.js +1 -1
  54. package/components/ion-nav.js +1 -1
  55. package/components/ion-note.js +1 -1
  56. package/components/ion-picker-column-option.js +1 -1
  57. package/components/ion-picker-column.js +1 -1
  58. package/components/ion-picker.js +1 -1
  59. package/components/ion-popover.js +1 -1
  60. package/components/ion-progress-bar.js +1 -1
  61. package/components/ion-radio-group.js +1 -1
  62. package/components/ion-radio.js +1 -1
  63. package/components/ion-range.js +1 -1
  64. package/components/ion-refresher-content.js +1 -1
  65. package/components/ion-refresher.js +1 -1
  66. package/components/ion-reorder-group.js +1 -1
  67. package/components/ion-reorder.js +1 -1
  68. package/components/ion-ripple-effect.js +1 -1
  69. package/components/ion-route-redirect.js +1 -1
  70. package/components/ion-route.js +1 -1
  71. package/components/ion-router-link.js +1 -1
  72. package/components/ion-router-outlet.js +1 -1
  73. package/components/ion-router.js +1 -1
  74. package/components/ion-row.js +1 -1
  75. package/components/ion-searchbar.js +1 -1
  76. package/components/ion-segment-button.js +1 -1
  77. package/components/ion-segment-content.js +1 -1
  78. package/components/ion-segment-view.js +1 -1
  79. package/components/ion-segment.js +1 -1
  80. package/components/ion-select-modal.js +1 -1
  81. package/components/ion-select-option.js +1 -1
  82. package/components/ion-select-popover.js +1 -1
  83. package/components/ion-select.js +1 -1
  84. package/components/ion-skeleton-text.js +1 -1
  85. package/components/ion-spinner.js +1 -1
  86. package/components/ion-split-pane.js +1 -1
  87. package/components/ion-tab-bar.js +1 -1
  88. package/components/ion-tab-button.js +1 -1
  89. package/components/ion-tab.js +1 -1
  90. package/components/ion-tabs.js +1 -1
  91. package/components/ion-text.js +1 -1
  92. package/components/ion-textarea.js +1 -1
  93. package/components/ion-thumbnail.js +1 -1
  94. package/components/ion-title.js +1 -1
  95. package/components/ion-toast.js +1 -1
  96. package/components/ion-toggle.js +1 -1
  97. package/components/ion-toolbar.js +1 -1
  98. package/components/{p-63OhffQv.js → p-66ogmUZU.js} +1 -1
  99. package/components/p-6Vp915Y7.js +4 -0
  100. package/components/p-7PNwKFZi.js +4 -0
  101. package/components/{p-G0TxqHfe.js → p-A8MJRBIY.js} +1 -1
  102. package/components/p-AQcCdH2_.js +4 -0
  103. package/{dist/ionic/p-Dn0mqQ_R.js → components/p-B6x5_b9w.js} +1 -1
  104. package/components/p-B8MQjdvk.js +4 -0
  105. package/components/p-BA_4ZIEg.js +4 -0
  106. package/components/p-BFtL8t1r.js +4 -0
  107. package/components/{p-DaA_8eqt.js → p-BMfgF-Tv.js} +1 -1
  108. package/components/p-BPDxVIRr.js +4 -0
  109. package/components/p-BPnXVGaS.js +4 -0
  110. package/components/p-BQAiulS1.js +4 -0
  111. package/components/p-BSARlp49.js +4 -0
  112. package/components/p-B_gJaBk0.js +4 -0
  113. package/components/p-BdwCtX8Y.js +4 -0
  114. package/components/{p-DV85C0e0.js → p-BgUIV8NQ.js} +1 -1
  115. package/components/p-Bh2ta0iG.js +4 -0
  116. package/components/p-BnUOVmKh.js +4 -0
  117. package/components/p-BpLt_Ptn.js +4 -0
  118. package/components/p-BqBDq1Ma.js +4 -0
  119. package/components/{p-C_phlPMC.js → p-BrFaQbGY.js} +1 -1
  120. package/{dist/ionic/p-Cdjxf_yg.js → components/p-BuPAFTWI.js} +1 -1
  121. package/components/p-Bx2saTHs.js +4 -0
  122. package/components/p-BxhE2W85.js +4 -0
  123. package/components/p-CHswSpKy.js +4 -0
  124. package/components/{p-1jI5oW-W.js → p-CR9OgE6N.js} +1 -1
  125. package/components/p-CWETxTjE.js +4 -0
  126. package/components/p-CaZeZIL2.js +4 -0
  127. package/components/p-CgvDC7hC.js +4 -0
  128. package/components/{p-BqPNzJf6.js → p-CqyGR9Aq.js} +1 -1
  129. package/components/{p-UIBJkZf8.js → p-D0YpjgON.js} +1 -1
  130. package/components/p-D1OCo42s.js +4 -0
  131. package/components/p-D7ysFE2B.js +4 -0
  132. package/{dist/ionic/p-4eOQC00Z.js → components/p-DCWfzDM8.js} +1 -1
  133. package/components/p-DD57rSP_.js +4 -0
  134. package/components/{p-DwpKZ6rl.js → p-DDdkefwf.js} +1 -1
  135. package/components/{p-DzRT60Tw.js → p-DEW7CnUc.js} +1 -1
  136. package/components/p-DQ1IPvZO.js +4 -0
  137. package/components/p-DcOH6-o5.js +4 -0
  138. package/components/{p-DD5fQ4EQ.js → p-DfdYCsov.js} +1 -1
  139. package/components/{p-DSzSbVP2.js → p-DhOoEIAs.js} +1 -1
  140. package/components/{p-DM-PrAoh.js → p-Dl_7b_UJ.js} +1 -1
  141. package/components/p-DnXLaaf7.js +4 -0
  142. package/components/{p-ryyf_ItD.js → p-DysqCsJu.js} +1 -1
  143. package/components/p-H1f2qsk4.js +4 -0
  144. package/components/p-HVYBAhFx.js +4 -0
  145. package/components/{p-CbhUdtjf.js → p-Kmrg3Fed.js} +1 -1
  146. package/components/{p-Bjig0DJK.js → p-RFfE9hF6.js} +1 -1
  147. package/{dist/ionic/p-CBWAXjA5.js → components/p-SR-LLqp_.js} +1 -1
  148. package/components/p-gFwXiYC_.js +4 -0
  149. package/components/p-tX3UxCnU.js +4 -0
  150. package/components/p-v2NpoOHp.js +4 -0
  151. package/dist/cjs/{animation-C0mOHzej.js → animation-D-OqR4a4.js} +1 -1
  152. package/dist/cjs/{app-globals-BREG4twP.js → app-globals-BzgwARwJ.js} +1 -1
  153. package/dist/cjs/{button-active-CVMevT9a.js → button-active-BlWSD7uK.js} +2 -2
  154. package/dist/cjs/{format-pp0Du3K-.js → format-D7ig6Vm0.js} +1 -1
  155. package/dist/cjs/{framework-delegate-Dfo5XsGv.js → framework-delegate-BZUx4TnE.js} +1 -1
  156. package/dist/cjs/{gesture-controller-BDUH7687.js → gesture-controller-CeJslptU.js} +6 -14
  157. package/dist/cjs/{hardware-back-button-fqpYh-kd.js → hardware-back-button-JOAEFSzc.js} +1 -1
  158. package/dist/cjs/{helpers-YPQybDph.js → helpers-Dj5o76mq.js} +1 -1
  159. package/dist/cjs/{index-BLdJCcJY.js → index-2sO-zkZ2.js} +4 -4
  160. package/dist/cjs/{index-uvry__L4.js → index-BrVMoqUk.js} +3 -1
  161. package/dist/cjs/{index-zVCah4Uz.js → index-C8zH6b3d.js} +2 -2
  162. package/dist/cjs/{index-DXsPSne6.js → index-CZ6vzt_q.js} +5 -5
  163. package/dist/cjs/{index-DDg31ZF5.js → index-Csue6G3m.js} +2 -2
  164. package/dist/cjs/{index-DwlRtFZe.js → index-DRPqwSvU.js} +1 -1
  165. package/dist/cjs/{index-B7zJsYWS.js → index-EJLjthTK.js} +1 -2
  166. package/dist/cjs/index.cjs.js +14 -14
  167. package/dist/cjs/{input-shims-Cbu1fcye.js → input-shims-Bh7bnt2v.js} +3 -3
  168. package/dist/cjs/{input.utils-BZdMWVrt.js → input.utils-Cq3g9uHy.js} +1 -1
  169. package/dist/cjs/ion-accordion_2.cjs.entry.js +335 -364
  170. package/dist/cjs/ion-action-sheet.cjs.entry.js +94 -159
  171. package/dist/cjs/ion-alert.cjs.entry.js +86 -170
  172. package/dist/cjs/ion-app_8.cjs.entry.js +163 -258
  173. package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -8
  174. package/dist/cjs/ion-back-button.cjs.entry.js +21 -45
  175. package/dist/cjs/ion-backdrop.cjs.entry.js +14 -18
  176. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +117 -195
  177. package/dist/cjs/ion-button_2.cjs.entry.js +61 -130
  178. package/dist/cjs/ion-card_5.cjs.entry.js +28 -80
  179. package/dist/cjs/ion-checkbox.cjs.entry.js +98 -147
  180. package/dist/cjs/ion-chip.cjs.entry.js +10 -16
  181. package/dist/cjs/ion-col_3.cjs.entry.js +6 -126
  182. package/dist/cjs/ion-datetime-button.cjs.entry.js +232 -248
  183. package/dist/cjs/ion-datetime.cjs.entry.js +775 -953
  184. package/dist/cjs/ion-fab_3.cjs.entry.js +78 -136
  185. package/dist/cjs/ion-img.cjs.entry.js +11 -31
  186. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +71 -98
  187. package/dist/cjs/ion-input-otp.cjs.entry.js +352 -424
  188. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +14 -29
  189. package/dist/cjs/ion-input.cjs.entry.js +158 -302
  190. package/dist/cjs/ion-item-option_3.cjs.entry.js +45 -87
  191. package/dist/cjs/ion-item_8.cjs.entry.js +61 -157
  192. package/dist/cjs/ion-loading.cjs.entry.js +60 -133
  193. package/dist/cjs/ion-menu_3.cjs.entry.js +94 -158
  194. package/dist/cjs/ion-modal.cjs.entry.js +280 -383
  195. package/dist/cjs/ion-nav_2.cjs.entry.js +26 -78
  196. package/dist/cjs/ion-picker-column-option.cjs.entry.js +23 -33
  197. package/dist/cjs/ion-picker-column.cjs.entry.js +389 -410
  198. package/dist/cjs/ion-picker.cjs.entry.js +390 -400
  199. package/dist/cjs/ion-popover.cjs.entry.js +196 -294
  200. package/dist/cjs/ion-progress-bar.cjs.entry.js +23 -29
  201. package/dist/cjs/ion-radio_2.cjs.entry.js +128 -201
  202. package/dist/cjs/ion-range.cjs.entry.js +223 -293
  203. package/dist/cjs/ion-refresher_2.cjs.entry.js +84 -156
  204. package/dist/cjs/ion-reorder_2.cjs.entry.js +19 -49
  205. package/dist/cjs/ion-ripple-effect.cjs.entry.js +13 -13
  206. package/dist/cjs/ion-route_4.cjs.entry.js +45 -144
  207. package/dist/cjs/ion-searchbar.cjs.entry.js +182 -268
  208. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  209. package/dist/cjs/ion-segment-view.cjs.entry.js +12 -24
  210. package/dist/cjs/ion-segment_2.cjs.entry.js +111 -154
  211. package/dist/cjs/ion-select-modal.cjs.entry.js +19 -21
  212. package/dist/cjs/ion-select_3.cjs.entry.js +151 -319
  213. package/dist/cjs/ion-spinner.cjs.entry.js +6 -21
  214. package/dist/cjs/ion-split-pane.cjs.entry.js +14 -27
  215. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +32 -89
  216. package/dist/cjs/ion-tab_2.cjs.entry.js +22 -49
  217. package/dist/cjs/ion-text.cjs.entry.js +2 -8
  218. package/dist/cjs/ion-textarea.cjs.entry.js +139 -256
  219. package/dist/cjs/ion-toast.cjs.entry.js +106 -221
  220. package/dist/cjs/ion-toggle.cjs.entry.js +114 -165
  221. package/dist/cjs/{ionic-global-k6hOWWpn.js → ionic-global-DvgIzM2F.js} +1 -1
  222. package/dist/cjs/ionic.cjs.js +4 -4
  223. package/dist/cjs/{ios.transition-zTmJz8T-.js → ios.transition-zIgdoSYe.js} +4 -4
  224. package/dist/cjs/{item-multiple-inputs-BdYSbfKN.js → item-multiple-inputs-DG-ZGm6j.js} +1 -1
  225. package/dist/cjs/loader.cjs.js +4 -4
  226. package/dist/cjs/{md.transition-nb_4pUXu.js → md.transition-CXeJ9rfh.js} +4 -4
  227. package/dist/cjs/{overlays-KaNVDNqC.js → overlays-B5JeC8OQ.js} +58 -35
  228. package/dist/cjs/{select-option-render-pULCGldr.js → select-option-render-7m1WdFzF.js} +2 -2
  229. package/dist/cjs/{slot-mutation-controller-DPHmqXdV.js → slot-mutation-controller-BJEJzx_e.js} +1 -1
  230. package/dist/cjs/{status-tap-o9IIymsP.js → status-tap-DxbUM5XX.js} +3 -3
  231. package/dist/cjs/{swipe-back-B7X9VOlH.js → swipe-back-F_DBt-Aw.js} +4 -4
  232. package/dist/collection/components/accordion/accordion.js +310 -314
  233. package/dist/collection/components/accordion-group/accordion-group.js +23 -46
  234. package/dist/collection/components/action-sheet/action-sheet.js +84 -148
  235. package/dist/collection/components/action-sheet/test/basic/fixture.js +0 -3
  236. package/dist/collection/components/alert/alert.js +76 -159
  237. package/dist/collection/components/app/app.js +0 -3
  238. package/dist/collection/components/back-button/back-button.js +19 -42
  239. package/dist/collection/components/backdrop/backdrop.js +14 -16
  240. package/dist/collection/components/badge/badge.js +0 -6
  241. package/dist/collection/components/breadcrumb/breadcrumb.js +29 -90
  242. package/dist/collection/components/breadcrumbs/breadcrumbs.js +87 -102
  243. package/dist/collection/components/button/button.js +59 -127
  244. package/dist/collection/components/buttons/buttons.js +15 -13
  245. package/dist/collection/components/card/card.js +20 -53
  246. package/dist/collection/components/card-header/card-header.js +8 -12
  247. package/dist/collection/components/card-subtitle/card-subtitle.js +0 -6
  248. package/dist/collection/components/card-title/card-title.js +0 -6
  249. package/dist/collection/components/checkbox/checkbox.js +95 -143
  250. package/dist/collection/components/chip/chip.js +10 -14
  251. package/dist/collection/components/col/col.js +0 -120
  252. package/dist/collection/components/content/content.js +60 -90
  253. package/dist/collection/components/datetime/datetime.js +762 -939
  254. package/dist/collection/components/datetime-button/datetime-button.js +229 -244
  255. package/dist/collection/components/fab/fab.js +13 -20
  256. package/dist/collection/components/fab-button/fab-button.js +54 -103
  257. package/dist/collection/components/fab-list/fab-list.js +11 -10
  258. package/dist/collection/components/footer/footer.js +43 -49
  259. package/dist/collection/components/grid/grid.js +6 -4
  260. package/dist/collection/components/header/header.js +23 -33
  261. package/dist/collection/components/img/img.js +9 -28
  262. package/dist/collection/components/infinite-scroll/infinite-scroll.js +66 -73
  263. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +3 -20
  264. package/dist/collection/components/input/input.js +154 -297
  265. package/dist/collection/components/input-otp/input-otp.js +350 -421
  266. package/dist/collection/components/input-password-toggle/input-password-toggle.js +13 -27
  267. package/dist/collection/components/item/item.js +37 -80
  268. package/dist/collection/components/item-divider/item-divider.js +10 -15
  269. package/dist/collection/components/item-option/item-option.js +20 -48
  270. package/dist/collection/components/item-options/item-options.js +7 -10
  271. package/dist/collection/components/item-sliding/item-sliding.js +16 -24
  272. package/dist/collection/components/label/label.js +4 -24
  273. package/dist/collection/components/list/list.js +6 -9
  274. package/dist/collection/components/list-header/list-header.js +0 -10
  275. package/dist/collection/components/loading/loading.js +53 -125
  276. package/dist/collection/components/menu/menu.js +55 -99
  277. package/dist/collection/components/menu-button/menu-button.js +19 -28
  278. package/dist/collection/components/menu-toggle/menu-toggle.js +13 -20
  279. package/dist/collection/components/modal/modal.js +271 -373
  280. package/dist/collection/components/modal/test/fixtures.js +0 -3
  281. package/dist/collection/components/nav/nav.js +12 -45
  282. package/dist/collection/components/nav/view-controller.js +1 -7
  283. package/dist/collection/components/nav-link/nav-link.js +9 -20
  284. package/dist/collection/components/note/note.js +0 -6
  285. package/dist/collection/components/picker/picker.js +388 -397
  286. package/dist/collection/components/picker-column/picker-column.js +389 -409
  287. package/dist/collection/components/picker-column-option/picker-column-option.js +21 -30
  288. package/dist/collection/components/popover/popover.js +189 -286
  289. package/dist/collection/components/popover/test/fixture.js +0 -1
  290. package/dist/collection/components/progress-bar/progress-bar.js +22 -26
  291. package/dist/collection/components/radio/radio.js +62 -98
  292. package/dist/collection/components/radio-group/radio-group.js +64 -99
  293. package/dist/collection/components/radio-group/test/fixtures.js +0 -2
  294. package/dist/collection/components/range/range.js +220 -289
  295. package/dist/collection/components/refresher/refresher.js +74 -107
  296. package/dist/collection/components/refresher-content/refresher-content.js +3 -40
  297. package/dist/collection/components/reorder/reorder.js +0 -1
  298. package/dist/collection/components/reorder-group/reorder-group.js +14 -43
  299. package/dist/collection/components/ripple-effect/ripple-effect.js +12 -11
  300. package/dist/collection/components/route/route.js +9 -38
  301. package/dist/collection/components/route-redirect/route-redirect.js +0 -31
  302. package/dist/collection/components/router/router.js +27 -35
  303. package/dist/collection/components/router/utils/matching.js +0 -1
  304. package/dist/collection/components/router-link/router-link.js +10 -35
  305. package/dist/collection/components/router-outlet/router-outlet.js +12 -34
  306. package/dist/collection/components/searchbar/searchbar.js +180 -265
  307. package/dist/collection/components/segment/segment.js +76 -113
  308. package/dist/collection/components/segment-button/segment-button.js +33 -37
  309. package/dist/collection/components/segment-view/segment-view.js +12 -23
  310. package/dist/collection/components/select/select.js +127 -240
  311. package/dist/collection/components/select-modal/select-modal.js +11 -12
  312. package/dist/collection/components/select-modal/test/fixtures.js +1 -8
  313. package/dist/collection/components/select-option/select-option.js +7 -44
  314. package/dist/collection/components/select-popover/select-popover.js +10 -25
  315. package/dist/collection/components/select-popover/test/fixtures.js +1 -8
  316. package/dist/collection/components/skeleton-text/skeleton-text.js +6 -10
  317. package/dist/collection/components/spinner/spinner.js +6 -19
  318. package/dist/collection/components/split-pane/split-pane.js +13 -25
  319. package/dist/collection/components/tab/tab.js +4 -15
  320. package/dist/collection/components/tab-bar/tab-bar.js +12 -30
  321. package/dist/collection/components/tab-button/tab-button.js +19 -56
  322. package/dist/collection/components/tabs/tabs.js +17 -31
  323. package/dist/collection/components/text/text.js +0 -6
  324. package/dist/collection/components/textarea/textarea.js +135 -251
  325. package/dist/collection/components/title/title.js +0 -16
  326. package/dist/collection/components/toast/toast.js +97 -211
  327. package/dist/collection/components/toggle/toggle.js +111 -161
  328. package/dist/collection/components/toolbar/toolbar.js +3 -8
  329. package/dist/collection/global/config.js +3 -1
  330. package/dist/collection/utils/gesture/gesture-controller.js +6 -14
  331. package/dist/collection/utils/overlays.js +51 -29
  332. package/dist/collection/utils/sanitization/index.js +0 -1
  333. package/dist/collection/utils/test/playwright/page/event-spy.js +8 -9
  334. package/dist/collection/utils/test/press-keys.js +1 -4
  335. package/dist/docs.json +1 -1
  336. package/dist/esm/{animation-CGFdmGk9.js → animation-TxGPYeDn.js} +1 -1
  337. package/dist/esm/{app-globals-CYmMeGdU.js → app-globals-Do8rJest.js} +1 -1
  338. package/dist/esm/{button-active-BDOsVAiZ.js → button-active-ChA4D-ml.js} +2 -2
  339. package/dist/esm/{format-Dcwga61t.js → format-CVk5e_GP.js} +2 -2
  340. package/dist/esm/{framework-delegate-BHTU2Ip9.js → framework-delegate-DaLWnISz.js} +1 -1
  341. package/dist/esm/{gesture-controller-TXPDHL13.js → gesture-controller-B_gJaBk0.js} +6 -14
  342. package/dist/esm/{hardware-back-button-gLJHMX_F.js → hardware-back-button-D8W4L0JP.js} +1 -1
  343. package/dist/esm/{helpers-CAGf8Wgp.js → helpers-BIgoInJU.js} +1 -1
  344. package/dist/esm/{index-DcPaH5uL.js → index-BmLuEdV7.js} +1 -1
  345. package/dist/esm/{index-T0JxBI8V.js → index-BmOR8tCv.js} +2 -2
  346. package/dist/esm/{index-CqneaaGd.js → index-C5ZdL0qp.js} +5 -5
  347. package/dist/esm/{index-WlteAIqz.js → index-C8Dsa6li.js} +4 -4
  348. package/dist/esm/{index-ChhhtsGZ.js → index-CKYcsw8f.js} +3 -1
  349. package/dist/esm/{index-Clc-28O1.js → index-DHw2lZxe.js} +2 -2
  350. package/dist/esm/{index-CKM1DdGm.js → index-elneMH8y.js} +1 -2
  351. package/dist/esm/index.js +14 -14
  352. package/dist/esm/{input-shims-B8sfni1e.js → input-shims-09NN97kF.js} +3 -3
  353. package/dist/esm/{input.utils-B1ValN_N.js → input.utils-BxyH9l1w.js} +1 -1
  354. package/dist/esm/ion-accordion_2.entry.js +335 -364
  355. package/dist/esm/ion-action-sheet.entry.js +94 -159
  356. package/dist/esm/ion-alert.entry.js +86 -170
  357. package/dist/esm/ion-app_8.entry.js +163 -258
  358. package/dist/esm/ion-avatar_3.entry.js +2 -8
  359. package/dist/esm/ion-back-button.entry.js +21 -45
  360. package/dist/esm/ion-backdrop.entry.js +14 -18
  361. package/dist/esm/ion-breadcrumb_2.entry.js +117 -195
  362. package/dist/esm/ion-button_2.entry.js +61 -130
  363. package/dist/esm/ion-card_5.entry.js +28 -80
  364. package/dist/esm/ion-checkbox.entry.js +98 -147
  365. package/dist/esm/ion-chip.entry.js +10 -16
  366. package/dist/esm/ion-col_3.entry.js +6 -126
  367. package/dist/esm/ion-datetime-button.entry.js +232 -248
  368. package/dist/esm/ion-datetime.entry.js +775 -953
  369. package/dist/esm/ion-fab_3.entry.js +78 -136
  370. package/dist/esm/ion-img.entry.js +11 -31
  371. package/dist/esm/ion-infinite-scroll_2.entry.js +71 -98
  372. package/dist/esm/ion-input-otp.entry.js +352 -424
  373. package/dist/esm/ion-input-password-toggle.entry.js +14 -29
  374. package/dist/esm/ion-input.entry.js +158 -302
  375. package/dist/esm/ion-item-option_3.entry.js +45 -87
  376. package/dist/esm/ion-item_8.entry.js +61 -157
  377. package/dist/esm/ion-loading.entry.js +60 -133
  378. package/dist/esm/ion-menu_3.entry.js +94 -158
  379. package/dist/esm/ion-modal.entry.js +280 -383
  380. package/dist/esm/ion-nav_2.entry.js +26 -78
  381. package/dist/esm/ion-picker-column-option.entry.js +23 -33
  382. package/dist/esm/ion-picker-column.entry.js +389 -410
  383. package/dist/esm/ion-picker.entry.js +390 -400
  384. package/dist/esm/ion-popover.entry.js +196 -294
  385. package/dist/esm/ion-progress-bar.entry.js +23 -29
  386. package/dist/esm/ion-radio_2.entry.js +128 -201
  387. package/dist/esm/ion-range.entry.js +223 -293
  388. package/dist/esm/ion-refresher_2.entry.js +84 -156
  389. package/dist/esm/ion-reorder_2.entry.js +19 -49
  390. package/dist/esm/ion-ripple-effect.entry.js +13 -13
  391. package/dist/esm/ion-route_4.entry.js +45 -144
  392. package/dist/esm/ion-searchbar.entry.js +182 -268
  393. package/dist/esm/ion-segment-content.entry.js +1 -1
  394. package/dist/esm/ion-segment-view.entry.js +12 -24
  395. package/dist/esm/ion-segment_2.entry.js +111 -154
  396. package/dist/esm/ion-select-modal.entry.js +19 -21
  397. package/dist/esm/ion-select_3.entry.js +151 -319
  398. package/dist/esm/ion-spinner.entry.js +6 -21
  399. package/dist/esm/ion-split-pane.entry.js +14 -27
  400. package/dist/esm/ion-tab-bar_2.entry.js +32 -89
  401. package/dist/esm/ion-tab_2.entry.js +22 -49
  402. package/dist/esm/ion-text.entry.js +2 -8
  403. package/dist/esm/ion-textarea.entry.js +139 -256
  404. package/dist/esm/ion-toast.entry.js +106 -221
  405. package/dist/esm/ion-toggle.entry.js +114 -165
  406. package/dist/esm/{ionic-global-BVB7BrLT.js → ionic-global-lrowsHfi.js} +1 -1
  407. package/dist/esm/ionic.js +5 -5
  408. package/dist/esm/{ios.transition-DXRCmcbC.js → ios.transition-BQhADrk1.js} +4 -4
  409. package/dist/esm/{item-multiple-inputs-rU8VaNNg.js → item-multiple-inputs-D_N3fDkD.js} +1 -1
  410. package/dist/esm/loader.js +5 -5
  411. package/dist/esm/{md.transition-BMngO4i_.js → md.transition-D58NpmRa.js} +4 -4
  412. package/dist/esm/{overlays-CPmIs9Ls.js → overlays-CefdMZgF.js} +58 -36
  413. package/dist/esm/{select-option-render-C4m76VGH.js → select-option-render-lIuu64EV.js} +2 -2
  414. package/dist/esm/{slot-mutation-controller-DiE_C9un.js → slot-mutation-controller-rS_T3FDR.js} +1 -1
  415. package/dist/esm/{status-tap-CHB7KwIb.js → status-tap-CpFQMLl6.js} +3 -3
  416. package/dist/esm/{swipe-back-C9HW1bug.js → swipe-back-rmc7zeNW.js} +4 -4
  417. package/dist/ionic/index.esm.js +1 -1
  418. package/dist/ionic/ionic.esm.js +1 -1
  419. package/dist/ionic/p-0eb50dca.entry.js +4 -0
  420. package/dist/ionic/p-16e9f542.entry.js +4 -0
  421. package/dist/ionic/p-18d532a3.entry.js +4 -0
  422. package/dist/ionic/p-1db2afb4.entry.js +4 -0
  423. package/dist/ionic/p-1df75f9e.entry.js +4 -0
  424. package/dist/ionic/p-295ff427.entry.js +4 -0
  425. package/dist/ionic/p-36abc1ee.entry.js +4 -0
  426. package/dist/ionic/p-39a8d4e0.entry.js +4 -0
  427. package/dist/ionic/p-408973f4.entry.js +4 -0
  428. package/dist/ionic/p-46a938a9.entry.js +4 -0
  429. package/dist/ionic/p-47626333.entry.js +4 -0
  430. package/dist/ionic/p-478035a7.entry.js +4 -0
  431. package/dist/ionic/p-485fb218.entry.js +4 -0
  432. package/dist/ionic/p-56307aea.entry.js +4 -0
  433. package/dist/ionic/p-5ee2d7b1.entry.js +4 -0
  434. package/dist/ionic/p-5f216b79.entry.js +4 -0
  435. package/dist/ionic/p-61c799d1.entry.js +4 -0
  436. package/dist/ionic/p-63bbba8d.entry.js +4 -0
  437. package/dist/ionic/{p-ded69ceb.entry.js → p-6f048604.entry.js} +1 -1
  438. package/dist/ionic/p-70ee8888.entry.js +4 -0
  439. package/dist/ionic/p-72ad7c64.entry.js +4 -0
  440. package/dist/ionic/p-881b6954.entry.js +4 -0
  441. package/dist/ionic/p-8dd4c026.entry.js +4 -0
  442. package/dist/ionic/p-8e007f11.entry.js +4 -0
  443. package/dist/ionic/p-8f464a8f.entry.js +4 -0
  444. package/dist/ionic/p-8f51110d.entry.js +4 -0
  445. package/dist/ionic/p-90ba736e.entry.js +4 -0
  446. package/dist/ionic/p-9455207b.entry.js +4 -0
  447. package/dist/ionic/p-959df5f8.entry.js +4 -0
  448. package/dist/ionic/p-9e455875.entry.js +4 -0
  449. package/dist/ionic/{p-CBR_W98Z.js → p-9wczfs_v.js} +1 -1
  450. package/dist/ionic/p-B1Y7LZhV.js +4 -0
  451. package/dist/ionic/p-B5RyLYvl.js +4 -0
  452. package/dist/ionic/{p-CPcPmkGv.js → p-BQv5i5Kf.js} +1 -1
  453. package/{components/p-8FN7p701.js → dist/ionic/p-BZVE25Gu.js} +1 -1
  454. package/{components/p-DFvZn99E.js → dist/ionic/p-BZxjcGRP.js} +1 -1
  455. package/dist/ionic/p-B_gJaBk0.js +4 -0
  456. package/dist/ionic/p-BnGA34Pd.js +4 -0
  457. package/dist/ionic/p-ByLaqOPm.js +4 -0
  458. package/dist/ionic/p-C06QNN45.js +4 -0
  459. package/dist/ionic/p-C4IBDDj6.js +4 -0
  460. package/dist/ionic/p-CCVlNZ__.js +4 -0
  461. package/dist/ionic/{p-CMRtMbJc.js → p-CDBop-kz.js} +1 -1
  462. package/dist/ionic/p-CKYcsw8f.js +5 -0
  463. package/dist/ionic/p-CazSodad.js +4 -0
  464. package/{components/p-ia3IDdJS.js → dist/ionic/p-ClrlQU2y.js} +1 -1
  465. package/dist/ionic/{p-UIBJkZf8.js → p-D0YpjgON.js} +1 -1
  466. package/dist/ionic/p-D0dfUysx.js +4 -0
  467. package/dist/ionic/{p-BB0LlG4y.js → p-D9yvytgv.js} +1 -1
  468. package/{components/p-C5KYjZWD.js → dist/ionic/p-DF_Uqql8.js} +1 -1
  469. package/dist/ionic/p-DLLCmV-y.js +4 -0
  470. package/dist/ionic/{p-BYEAtHr-.js → p-DXJgZWgi.js} +1 -1
  471. package/dist/ionic/p-De0eY881.js +4 -0
  472. package/dist/ionic/p-DgUL3JbO.js +4 -0
  473. package/dist/ionic/{p-7CBuOvEo.js → p-RzUn7cKs.js} +1 -1
  474. package/dist/ionic/p-VquyMbjp.js +4 -0
  475. package/dist/ionic/p-a0fee899.entry.js +4 -0
  476. package/dist/ionic/p-a2fa2de2.entry.js +4 -0
  477. package/dist/ionic/p-a53b0908.entry.js +4 -0
  478. package/dist/ionic/p-a54bcd16.entry.js +4 -0
  479. package/dist/ionic/p-aebc4d69.entry.js +4 -0
  480. package/dist/ionic/p-b5f37106.entry.js +4 -0
  481. package/dist/ionic/{p-40424a88.entry.js → p-b62bfce8.entry.js} +1 -1
  482. package/dist/ionic/p-b875a59e.entry.js +4 -0
  483. package/dist/ionic/p-bbf6878c.entry.js +4 -0
  484. package/dist/ionic/p-c49165af.entry.js +4 -0
  485. package/dist/ionic/p-cad4eccf.entry.js +4 -0
  486. package/dist/ionic/p-cdc5115e.entry.js +4 -0
  487. package/dist/ionic/p-d3384a40.entry.js +4 -0
  488. package/dist/ionic/p-d8bae128.entry.js +4 -0
  489. package/dist/ionic/p-d8deff43.entry.js +4 -0
  490. package/dist/ionic/p-ddfb7e5f.entry.js +4 -0
  491. package/dist/ionic/p-e538f18d.entry.js +4 -0
  492. package/dist/ionic/p-f376876b.entry.js +4 -0
  493. package/dist/ionic/p-f3b671aa.entry.js +4 -0
  494. package/dist/ionic/p-f521b13c.entry.js +4 -0
  495. package/dist/ionic/p-f8713b2c.entry.js +4 -0
  496. package/dist/ionic/p-fbd83d4c.entry.js +4 -0
  497. package/dist/types/components/action-sheet/action-sheet.d.ts +10 -0
  498. package/dist/types/components/alert/alert.d.ts +7 -0
  499. package/dist/types/components/modal/modal.d.ts +8 -0
  500. package/dist/types/components/refresher/refresher.d.ts +4 -4
  501. package/dist/types/utils/overlays.d.ts +9 -0
  502. package/hydrate/index.js +5621 -8448
  503. package/hydrate/index.mjs +5621 -8448
  504. package/package.json +1 -1
  505. package/components/p--m5cCjbK.js +0 -4
  506. package/components/p-B4uHHhPK.js +0 -4
  507. package/components/p-BNJOu1Q2.js +0 -4
  508. package/components/p-BOvLNVKq.js +0 -4
  509. package/components/p-BeamQXHF.js +0 -4
  510. package/components/p-BjluhQMI.js +0 -4
  511. package/components/p-BlsIikdZ.js +0 -4
  512. package/components/p-BrD9Xv62.js +0 -4
  513. package/components/p-BvJqoZ5R.js +0 -4
  514. package/components/p-Bz6z3Asd.js +0 -4
  515. package/components/p-C6HnVvHO.js +0 -4
  516. package/components/p-C7jvh5Wy.js +0 -4
  517. package/components/p-C9BGR5fy.js +0 -4
  518. package/components/p-CB-y1CdP.js +0 -4
  519. package/components/p-CHH3loEE.js +0 -4
  520. package/components/p-CJKUWjmg.js +0 -4
  521. package/components/p-CMLAwl_N.js +0 -4
  522. package/components/p-CejmQs3h.js +0 -4
  523. package/components/p-CtZqa4HM.js +0 -4
  524. package/components/p-D9qIVSWm.js +0 -4
  525. package/components/p-DE-3iMNW.js +0 -4
  526. package/components/p-DHFt2rdc.js +0 -4
  527. package/components/p-D_RCyzwu.js +0 -4
  528. package/components/p-D_tD8r3L.js +0 -4
  529. package/components/p-DjCtLZbF.js +0 -4
  530. package/components/p-Dmd2xqCe.js +0 -4
  531. package/components/p-G6JR-cr_.js +0 -4
  532. package/components/p-GG5GhznE.js +0 -4
  533. package/components/p-TXPDHL13.js +0 -4
  534. package/components/p-_IKFD3ID.js +0 -4
  535. package/components/p-dKq2jIum.js +0 -4
  536. package/components/p-fruGqVHh.js +0 -4
  537. package/components/p-iYhH60Tc.js +0 -4
  538. package/dist/ionic/p-06ec7136.entry.js +0 -4
  539. package/dist/ionic/p-09fe4fa3.entry.js +0 -4
  540. package/dist/ionic/p-10d45a07.entry.js +0 -4
  541. package/dist/ionic/p-208c8a07.entry.js +0 -4
  542. package/dist/ionic/p-212474fa.entry.js +0 -4
  543. package/dist/ionic/p-2eef1396.entry.js +0 -4
  544. package/dist/ionic/p-347e005d.entry.js +0 -4
  545. package/dist/ionic/p-3b071259.entry.js +0 -4
  546. package/dist/ionic/p-4204184c.entry.js +0 -4
  547. package/dist/ionic/p-47464391.entry.js +0 -4
  548. package/dist/ionic/p-4f9c9126.entry.js +0 -4
  549. package/dist/ionic/p-5JsKPLJD.js +0 -4
  550. package/dist/ionic/p-5bc485c6.entry.js +0 -4
  551. package/dist/ionic/p-603a61e6.entry.js +0 -4
  552. package/dist/ionic/p-60576951.entry.js +0 -4
  553. package/dist/ionic/p-67a81d33.entry.js +0 -4
  554. package/dist/ionic/p-6affb775.entry.js +0 -4
  555. package/dist/ionic/p-6f120c25.entry.js +0 -4
  556. package/dist/ionic/p-71c82b60.entry.js +0 -4
  557. package/dist/ionic/p-79325ffe.entry.js +0 -4
  558. package/dist/ionic/p-7e4d51fa.entry.js +0 -4
  559. package/dist/ionic/p-7f5d4664.entry.js +0 -4
  560. package/dist/ionic/p-80ee82fc.entry.js +0 -4
  561. package/dist/ionic/p-84af7dbc.entry.js +0 -4
  562. package/dist/ionic/p-89ca830a.entry.js +0 -4
  563. package/dist/ionic/p-93b8ec8f.entry.js +0 -4
  564. package/dist/ionic/p-946f65c2.entry.js +0 -4
  565. package/dist/ionic/p-983b6c91.entry.js +0 -4
  566. package/dist/ionic/p-9c4b39fb.entry.js +0 -4
  567. package/dist/ionic/p-B1NEZUzQ.js +0 -4
  568. package/dist/ionic/p-B1ck5iy-.js +0 -4
  569. package/dist/ionic/p-B4FrqdW0.js +0 -4
  570. package/dist/ionic/p-C-94tAim.js +0 -4
  571. package/dist/ionic/p-C-eHZMYE.js +0 -4
  572. package/dist/ionic/p-CaRuIadB.js +0 -4
  573. package/dist/ionic/p-ChhhtsGZ.js +0 -5
  574. package/dist/ionic/p-CzS1qWve.js +0 -4
  575. package/dist/ionic/p-D94_RztK.js +0 -4
  576. package/dist/ionic/p-DjjfauRM.js +0 -4
  577. package/dist/ionic/p-DkUB-ROc.js +0 -4
  578. package/dist/ionic/p-DplOqGUv.js +0 -4
  579. package/dist/ionic/p-Dst_XmZh.js +0 -4
  580. package/dist/ionic/p-TXPDHL13.js +0 -4
  581. package/dist/ionic/p-a438b193.entry.js +0 -4
  582. package/dist/ionic/p-babaaaa7.entry.js +0 -4
  583. package/dist/ionic/p-be08d500.entry.js +0 -4
  584. package/dist/ionic/p-be9a4f51.entry.js +0 -4
  585. package/dist/ionic/p-c00d3092.entry.js +0 -4
  586. package/dist/ionic/p-c36dc8f5.entry.js +0 -4
  587. package/dist/ionic/p-c72a7e17.entry.js +0 -4
  588. package/dist/ionic/p-c8edd88c.entry.js +0 -4
  589. package/dist/ionic/p-ce0e380b.entry.js +0 -4
  590. package/dist/ionic/p-ce32912b.entry.js +0 -4
  591. package/dist/ionic/p-d07cf130.entry.js +0 -4
  592. package/dist/ionic/p-d27edeb3.entry.js +0 -4
  593. package/dist/ionic/p-d5d2c506.entry.js +0 -4
  594. package/dist/ionic/p-d5e31ca9.entry.js +0 -4
  595. package/dist/ionic/p-de91444f.entry.js +0 -4
  596. package/dist/ionic/p-df72866d.entry.js +0 -4
  597. package/dist/ionic/p-e47e3151.entry.js +0 -4
  598. package/dist/ionic/p-e621e5e8.entry.js +0 -4
  599. package/dist/ionic/p-eea9cf93.entry.js +0 -4
  600. package/dist/ionic/p-f402f5a4.entry.js +0 -4
  601. package/dist/ionic/p-fe1bfbcf.entry.js +0 -4
  602. package/dist/ionic/p-ffb90460.entry.js +0 -4
@@ -3,24 +3,24 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-uvry__L4.js');
7
- var buttonActive = require('./button-active-CVMevT9a.js');
8
- var helpers = require('./helpers-YPQybDph.js');
6
+ var index = require('./index-BrVMoqUk.js');
7
+ var buttonActive = require('./button-active-BlWSD7uK.js');
8
+ var helpers = require('./helpers-Dj5o76mq.js');
9
9
  var lockController = require('./lock-controller-aDB9wrEf.js');
10
- var overlays = require('./overlays-KaNVDNqC.js');
11
- var selectOptionRender = require('./select-option-render-pULCGldr.js');
10
+ var overlays = require('./overlays-B5JeC8OQ.js');
11
+ var selectOptionRender = require('./select-option-render-7m1WdFzF.js');
12
12
  var theme = require('./theme-Bw0rpaNN.js');
13
- var ionicGlobal = require('./ionic-global-k6hOWWpn.js');
14
- var animation = require('./animation-C0mOHzej.js');
13
+ var ionicGlobal = require('./ionic-global-DvgIzM2F.js');
14
+ var animation = require('./animation-D-OqR4a4.js');
15
15
  require('./haptic-Ch-X4gRx.js');
16
16
  require('./capacitor-DmA66EwP.js');
17
17
  require('./index-DkNv4J_i.js');
18
- require('./index-DwlRtFZe.js');
19
- require('./gesture-controller-BDUH7687.js');
18
+ require('./index-DRPqwSvU.js');
19
+ require('./gesture-controller-CeJslptU.js');
20
20
  require('./dir-zwDPRE5K.js');
21
- require('./hardware-back-button-fqpYh-kd.js');
22
- require('./framework-delegate-Dfo5XsGv.js');
23
- require('./index-B7zJsYWS.js');
21
+ require('./hardware-back-button-JOAEFSzc.js');
22
+ require('./framework-delegate-BZUx4TnE.js');
23
+ require('./index-EJLjthTK.js');
24
24
 
25
25
  /**
26
26
  * iOS Action Sheet Enter Animation
@@ -121,45 +121,54 @@ const ActionSheet = class {
121
121
  this.willPresentShorthand = index.createEvent(this, "willPresent", 7);
122
122
  this.willDismissShorthand = index.createEvent(this, "willDismiss", 7);
123
123
  this.didDismissShorthand = index.createEvent(this, "didDismiss", 7);
124
+ this.delegateController = overlays.createDelegateController(this);
125
+ this.lockController = lockController.createLockController();
126
+ this.triggerController = overlays.createTriggerController();
127
+ this.hasRadioButtons = false;
128
+ this.presented = false;
129
+ /** @internal */
130
+ this.hasController = false;
131
+ /**
132
+ * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
133
+ */
134
+ this.keyboardClose = true;
135
+ /**
136
+ * An array of buttons for the action sheet.
137
+ */
138
+ this.buttons = [];
139
+ /**
140
+ * If `true`, the action sheet will be dismissed when the backdrop is clicked.
141
+ */
142
+ this.backdropDismiss = true;
143
+ /**
144
+ * If `true`, the action sheet will be translucent.
145
+ * Only applies when the mode is `"ios"` and the device supports
146
+ * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
147
+ */
148
+ this.translucent = false;
149
+ /**
150
+ * If `true`, the action sheet will animate.
151
+ */
152
+ this.animated = true;
153
+ /**
154
+ * If `true`, the action sheet will open. If `false`, the action sheet will close.
155
+ * Use this if you need finer grained control over presentation, otherwise
156
+ * just use the actionSheetController or the `trigger` property.
157
+ * Note: `isOpen` will not automatically be set back to `false` when
158
+ * the action sheet dismisses. You will need to do that in your code.
159
+ */
160
+ this.isOpen = false;
161
+ this.onBackdropTap = () => {
162
+ this.dismiss(undefined, overlays.BACKDROP);
163
+ };
164
+ this.dispatchCancelHandler = (ev) => {
165
+ const role = ev.detail.role;
166
+ if (overlays.isCancel(role)) {
167
+ const cancelButton = this.getButtons().find((b) => b.role === 'cancel');
168
+ this.callButtonHandler(cancelButton);
169
+ }
170
+ };
124
171
  }
125
- delegateController = overlays.createDelegateController(this);
126
- lockController = lockController.createLockController();
127
- triggerController = overlays.createTriggerController();
128
- wrapperEl;
129
- groupEl;
130
- gesture;
131
- hasRadioButtons = false;
132
- presented = false;
133
- lastFocus;
134
- animation;
135
- /**
136
- * The ID of the currently active/selected radio button.
137
- * Used for keyboard navigation and ARIA attributes.
138
- */
139
- activeRadioId;
140
- get el() { return index.getElement(this); }
141
- /** @internal */
142
- overlayIndex;
143
- /** @internal */
144
- delegate;
145
- /** @internal */
146
- hasController = false;
147
- /**
148
- * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
149
- */
150
- keyboardClose = true;
151
- /**
152
- * Animation to use when the action sheet is presented.
153
- */
154
- enterAnimation;
155
- /**
156
- * Animation to use when the action sheet is dismissed.
157
- */
158
- leaveAnimation;
159
- /**
160
- * An array of buttons for the action sheet.
161
- */
162
- buttons = [];
163
172
  buttonsChanged() {
164
173
  const radioButtons = this.getRadioButtons();
165
174
  this.hasRadioButtons = radioButtons.length > 0;
@@ -173,45 +182,6 @@ const ActionSheet = class {
173
182
  }
174
183
  }
175
184
  }
176
- /**
177
- * Additional classes to apply for custom CSS. If multiple classes are
178
- * provided they should be separated by spaces.
179
- */
180
- cssClass;
181
- /**
182
- * If `true`, the action sheet will be dismissed when the backdrop is clicked.
183
- */
184
- backdropDismiss = true;
185
- /**
186
- * Title for the action sheet.
187
- */
188
- header;
189
- /**
190
- * Subtitle for the action sheet.
191
- */
192
- subHeader;
193
- /**
194
- * If `true`, the action sheet will be translucent.
195
- * Only applies when the mode is `"ios"` and the device supports
196
- * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
197
- */
198
- translucent = false;
199
- /**
200
- * If `true`, the action sheet will animate.
201
- */
202
- animated = true;
203
- /**
204
- * Additional attributes to pass to the action sheet.
205
- */
206
- htmlAttributes;
207
- /**
208
- * If `true`, the action sheet will open. If `false`, the action sheet will close.
209
- * Use this if you need finer grained control over presentation, otherwise
210
- * just use the actionSheetController or the `trigger` property.
211
- * Note: `isOpen` will not automatically be set back to `false` when
212
- * the action sheet dismisses. You will need to do that in your code.
213
- */
214
- isOpen = false;
215
185
  onIsOpenChange(newValue, oldValue) {
216
186
  if (newValue === true && oldValue === false) {
217
187
  this.present();
@@ -220,53 +190,12 @@ const ActionSheet = class {
220
190
  this.dismiss();
221
191
  }
222
192
  }
223
- /**
224
- * An ID corresponding to the trigger element that
225
- * causes the action sheet to open when clicked.
226
- */
227
- trigger;
228
193
  triggerChanged() {
229
194
  const { trigger, el, triggerController } = this;
230
195
  if (trigger) {
231
196
  triggerController.addClickListener(el, trigger);
232
197
  }
233
198
  }
234
- /**
235
- * Emitted after the action sheet has presented.
236
- */
237
- didPresent;
238
- /**
239
- * Emitted before the action sheet has presented.
240
- */
241
- willPresent;
242
- /**
243
- * Emitted before the action sheet has dismissed.
244
- */
245
- willDismiss;
246
- /**
247
- * Emitted after the action sheet has dismissed.
248
- */
249
- didDismiss;
250
- /**
251
- * Emitted after the action sheet has presented.
252
- * Shorthand for ionActionSheetWillDismiss.
253
- */
254
- didPresentShorthand;
255
- /**
256
- * Emitted before the action sheet has presented.
257
- * Shorthand for ionActionSheetWillPresent.
258
- */
259
- willPresentShorthand;
260
- /**
261
- * Emitted before the action sheet has dismissed.
262
- * Shorthand for ionActionSheetWillDismiss.
263
- */
264
- willDismissShorthand;
265
- /**
266
- * Emitted after the action sheet has dismissed.
267
- * Shorthand for ionActionSheetDidDismiss.
268
- */
269
- didDismissShorthand;
270
199
  /**
271
200
  * Present the action sheet overlay after it has been created.
272
201
  */
@@ -375,16 +304,6 @@ const ActionSheet = class {
375
304
  const buttonIndex = index !== undefined ? index : allButtons.indexOf(button);
376
305
  return `action-sheet-button-${this.overlayIndex}-${buttonIndex}`;
377
306
  }
378
- onBackdropTap = () => {
379
- this.dismiss(undefined, overlays.BACKDROP);
380
- };
381
- dispatchCancelHandler = (ev) => {
382
- const role = ev.detail.role;
383
- if (overlays.isCancel(role)) {
384
- const cancelButton = this.getButtons().find((b) => b.role === 'cancel');
385
- this.callButtonHandler(cancelButton);
386
- }
387
- };
388
307
  /**
389
308
  * When the action sheet has radio buttons, we want to follow the
390
309
  * keyboard navigation pattern for radio groups:
@@ -461,6 +380,13 @@ const ActionSheet = class {
461
380
  connectedCallback() {
462
381
  overlays.prepareOverlay(this.el);
463
382
  this.triggerChanged();
383
+ // `componentDidLoad` only fires once per instance, so a reconnect has to
384
+ // rebuild the gesture its disconnect destroyed.
385
+ this.setupButtonActiveGesture();
386
+ // Re-apply the root lock if moved without dismiss() being called
387
+ if (this.presented) {
388
+ overlays.restoreRootFocusTrapAccessibility(this.el);
389
+ }
464
390
  }
465
391
  disconnectedCallback() {
466
392
  if (this.gesture) {
@@ -480,24 +406,32 @@ const ActionSheet = class {
480
406
  // Initialize activeRadioId for radio buttons
481
407
  this.buttonsChanged();
482
408
  }
483
- componentDidLoad() {
484
- /**
485
- * Only create gesture if:
486
- * 1. A gesture does not already exist
487
- * 2. App is running in iOS mode
488
- * 3. A wrapper ref exists
489
- * 4. A group ref exists
490
- */
409
+ /**
410
+ * Only create gesture if:
411
+ * 1. A gesture does not already exist
412
+ * 2. App is running in iOS mode
413
+ * 3. A wrapper ref exists
414
+ * 4. A group ref exists
415
+ * 5. The host is still connected, since a reconnect can schedule this and
416
+ * disconnect again before the task runs
417
+ */
418
+ setupButtonActiveGesture() {
491
419
  const { groupEl, wrapperEl } = this;
492
- if (!this.gesture && ionicGlobal.getIonMode(this) === 'ios' && wrapperEl && groupEl) {
493
- index.readTask(() => {
494
- const isScrollable = groupEl.scrollHeight > groupEl.clientHeight;
495
- if (!isScrollable) {
496
- this.gesture = buttonActive.createButtonActiveGesture(wrapperEl, (refEl) => refEl.classList.contains('action-sheet-button'));
497
- this.gesture.enable(true);
498
- }
499
- });
420
+ if (ionicGlobal.getIonMode(this) !== 'ios' || !wrapperEl || !groupEl) {
421
+ return;
500
422
  }
423
+ index.readTask(() => {
424
+ // Two calls before the first flushes would otherwise both create a
425
+ // gesture, orphaning the first with its listeners still bound.
426
+ if (this.gesture || !this.el.isConnected || groupEl.scrollHeight > groupEl.clientHeight) {
427
+ return;
428
+ }
429
+ this.gesture = buttonActive.createButtonActiveGesture(wrapperEl, (refEl) => refEl.classList.contains('action-sheet-button'));
430
+ this.gesture.enable(true);
431
+ });
432
+ }
433
+ componentDidLoad() {
434
+ this.setupButtonActiveGesture();
501
435
  /**
502
436
  * If action sheet was rendered with isOpen="true"
503
437
  * then we should open action sheet immediately.
@@ -590,18 +524,19 @@ const ActionSheet = class {
590
524
  const cancelButton = allButtons.find((b) => b.role === 'cancel');
591
525
  const buttons = allButtons.filter((b) => b.role !== 'cancel');
592
526
  const headerID = `action-sheet-${overlayIndex}-header`;
593
- return (index.h(index.Host, { key: '7685831da9a78b73473246a2cea95cefa79a53c3', role: "dialog", "aria-modal": "true", "aria-labelledby": header !== undefined ? headerID : null, tabindex: "-1", ...htmlAttributes, style: {
527
+ return (index.h(index.Host, { key: '326d4af08e832e10e1882fbbf67dba3221095865', role: "dialog", "aria-modal": "true", "aria-labelledby": header !== undefined ? headerID : null, tabindex: "-1", ...htmlAttributes, style: {
594
528
  zIndex: `${20000 + this.overlayIndex}`,
595
529
  }, class: {
596
530
  [mode]: true,
597
531
  ...theme.getClassMap(this.cssClass),
598
532
  'overlay-hidden': true,
599
533
  'action-sheet-translucent': this.translucent,
600
- }, onIonActionSheetWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }, index.h("ion-backdrop", { key: 'c70f00e401cac99b89412d1adb867f35bc855d57', tappable: this.backdropDismiss }), index.h("div", { key: '3332893ce3098f1435875480b1269b2821d41660', tabindex: "0", "aria-hidden": "true" }), index.h("div", { key: 'eb406b0a9e303d6f94c5c7aa99c6f4c089bfbd41', class: "action-sheet-wrapper ion-overlay-wrapper", ref: (el) => (this.wrapperEl = el) }, index.h("div", { key: '92ec855379f10e1e0bfce6ff68b45d3cda0c137c', class: "action-sheet-container" }, index.h("div", { key: 'bc88a396d75396f574961471bf7e6c4edb513353', class: "action-sheet-group", ref: (el) => (this.groupEl = el), role: hasRadioButtons ? 'radiogroup' : undefined }, header !== undefined && (index.h("div", { key: '33329e0193818888bdcaa443ff5ea301802e0787', id: headerID, class: {
534
+ }, onIonActionSheetWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }, index.h("ion-backdrop", { key: '8cb6a0d763a60f61f563a1b7d572ad5e9afd6e40', tappable: this.backdropDismiss }), index.h("div", { key: 'f8b8da0f52ae674a5e313632ee3d049bed3f813f', tabindex: "0", "aria-hidden": "true" }), index.h("div", { key: '53cf0d1b01a2cda23c27fc8b96edaccf892e61b3', class: "action-sheet-wrapper ion-overlay-wrapper", ref: (el) => (this.wrapperEl = el) }, index.h("div", { key: '6df261ff946c3b4496535df04cc70e2cfa3cc2da', class: "action-sheet-container" }, index.h("div", { key: '6f6f2846d19baa738651b990d8613aa0ecac9479', class: "action-sheet-group", ref: (el) => (this.groupEl = el), role: hasRadioButtons ? 'radiogroup' : undefined }, header !== undefined && (index.h("div", { key: '3f36df8eaaedb5e61a41bbf44134f25f263d1e7e', id: headerID, class: {
601
535
  'action-sheet-title': true,
602
536
  'action-sheet-has-sub-title': this.subHeader !== undefined,
603
- } }, header, this.subHeader && index.h("div", { key: '92ac5a9217a12b7417f7aca9c4fdb7bf6b051364', class: "action-sheet-sub-title" }, this.subHeader))), this.renderActionSheetButtons(buttons)), cancelButton && (index.h("div", { key: '020463b830fa48fc3ae647ea64f2aaa4d0969305', class: "action-sheet-group action-sheet-group-cancel" }, index.h("button", { key: 'cefa9c70a2233f6652a81b1a2eae6e717712144d', ...cancelButton.htmlAttributes, type: "button", class: buttonClass(cancelButton), onClick: () => this.buttonClick(cancelButton) }, index.h("span", { key: '56d7e2f8bfb3644e4476895164d334445fda9b2f', class: "action-sheet-button-inner" }, cancelButton.icon && (index.h("ion-icon", { key: '6a4a49254ec5cd96f4e0dce9447f90d8cac81913', icon: cancelButton.icon, "aria-hidden": "true", lazy: false, class: "action-sheet-icon" })), cancelButton.text), mode === 'md' && index.h("ion-ripple-effect", { key: '7d3c6e8d70b0922ea0f75520856285ce1005c891' })))))), index.h("div", { key: '958fc43e603c6a7f5d1e649d3326fce0f163b5d0', tabindex: "0", "aria-hidden": "true" })));
537
+ } }, header, this.subHeader && index.h("div", { key: 'a6b2bf51123eaae4ed873e65c00c426e9c511ac0', class: "action-sheet-sub-title" }, this.subHeader))), this.renderActionSheetButtons(buttons)), cancelButton && (index.h("div", { key: '4dd96553327003b899bc03a815a06a7cce35db29', class: "action-sheet-group action-sheet-group-cancel" }, index.h("button", { key: 'a1928040a3d20f2e50230b7d6003467d2916f5b4', ...cancelButton.htmlAttributes, type: "button", class: buttonClass(cancelButton), onClick: () => this.buttonClick(cancelButton) }, index.h("span", { key: '2fa9d0e4072f1fd55f08048966495a627a14ef8f', class: "action-sheet-button-inner" }, cancelButton.icon && (index.h("ion-icon", { key: 'c2eec9967cb9f0b75d4428bb548674199089203c', icon: cancelButton.icon, "aria-hidden": "true", lazy: false, class: "action-sheet-icon" })), cancelButton.text), mode === 'md' && index.h("ion-ripple-effect", { key: '09e71f28d77ae16481b832863f49b3f7d7dd76f9' })))))), index.h("div", { key: '386fbe5ca2a88e9b52bd3b9d8f3daddbc630e6f6', tabindex: "0", "aria-hidden": "true" })));
604
538
  }
539
+ get el() { return index.getElement(this); }
605
540
  static get watchers() { return {
606
541
  "buttons": [{
607
542
  "buttonsChanged": 0
@@ -3,26 +3,26 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-uvry__L4.js');
6
+ var index = require('./index-BrVMoqUk.js');
7
7
  var config = require('./config-CjUbvdPW.js');
8
- var buttonActive = require('./button-active-CVMevT9a.js');
9
- var helpers = require('./helpers-YPQybDph.js');
8
+ var buttonActive = require('./button-active-BlWSD7uK.js');
9
+ var helpers = require('./helpers-Dj5o76mq.js');
10
10
  var lockController = require('./lock-controller-aDB9wrEf.js');
11
11
  var overlayControlLabel = require('./overlay-control-label-D2sdL2O8.js');
12
- var overlays = require('./overlays-KaNVDNqC.js');
13
- var index$1 = require('./index-B7zJsYWS.js');
14
- var selectOptionRender = require('./select-option-render-pULCGldr.js');
12
+ var overlays = require('./overlays-B5JeC8OQ.js');
13
+ var index$1 = require('./index-EJLjthTK.js');
14
+ var selectOptionRender = require('./select-option-render-7m1WdFzF.js');
15
15
  var theme = require('./theme-Bw0rpaNN.js');
16
- var ionicGlobal = require('./ionic-global-k6hOWWpn.js');
17
- var animation = require('./animation-C0mOHzej.js');
16
+ var ionicGlobal = require('./ionic-global-DvgIzM2F.js');
17
+ var animation = require('./animation-D-OqR4a4.js');
18
18
  require('./haptic-Ch-X4gRx.js');
19
19
  require('./capacitor-DmA66EwP.js');
20
20
  require('./index-DkNv4J_i.js');
21
- require('./index-DwlRtFZe.js');
22
- require('./gesture-controller-BDUH7687.js');
21
+ require('./index-DRPqwSvU.js');
22
+ require('./gesture-controller-CeJslptU.js');
23
23
  require('./dir-zwDPRE5K.js');
24
- require('./hardware-back-button-fqpYh-kd.js');
25
- require('./framework-delegate-Dfo5XsGv.js');
24
+ require('./hardware-back-button-JOAEFSzc.js');
25
+ require('./framework-delegate-BZUx4TnE.js');
26
26
 
27
27
  /**
28
28
  * iOS Alert Enter Animation
@@ -124,103 +124,61 @@ const Alert = class {
124
124
  this.willPresentShorthand = index.createEvent(this, "willPresent", 7);
125
125
  this.willDismissShorthand = index.createEvent(this, "willDismiss", 7);
126
126
  this.didDismissShorthand = index.createEvent(this, "didDismiss", 7);
127
+ this.delegateController = overlays.createDelegateController(this);
128
+ this.lockController = lockController.createLockController();
129
+ this.triggerController = overlays.createTriggerController();
130
+ this.customHTMLEnabled = index.config.get('innerHTMLTemplatesEnabled', config.ENABLE_HTML_CONTENT_DEFAULT);
131
+ this.processedInputs = [];
132
+ this.processedButtons = [];
133
+ this.isButtonGroupWrapped = false;
134
+ this.presented = false;
135
+ /** @internal */
136
+ this.hasController = false;
137
+ /**
138
+ * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
139
+ */
140
+ this.keyboardClose = true;
141
+ /**
142
+ * Array of buttons to be added to the alert.
143
+ */
144
+ this.buttons = [];
145
+ /**
146
+ * Array of input to show in the alert.
147
+ */
148
+ this.inputs = [];
149
+ /**
150
+ * If `true`, the alert will be dismissed when the backdrop is clicked.
151
+ */
152
+ this.backdropDismiss = true;
153
+ /**
154
+ * If `true`, the alert will be translucent.
155
+ * Only applies when the mode is `"ios"` and the device supports
156
+ * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
157
+ */
158
+ this.translucent = false;
159
+ /**
160
+ * If `true`, the alert will animate.
161
+ */
162
+ this.animated = true;
163
+ /**
164
+ * If `true`, the alert will open. If `false`, the alert will close.
165
+ * Use this if you need finer grained control over presentation, otherwise
166
+ * just use the alertController or the `trigger` property.
167
+ * Note: `isOpen` will not automatically be set back to `false` when
168
+ * the alert dismisses. You will need to do that in your code.
169
+ */
170
+ this.isOpen = false;
171
+ this.onBackdropTap = () => {
172
+ this.dismiss(undefined, overlays.BACKDROP);
173
+ };
174
+ this.dispatchCancelHandler = (ev) => {
175
+ const role = ev.detail.role;
176
+ if (overlays.isCancel(role)) {
177
+ const cancelButton = this.processedButtons.find((b) => b.role === 'cancel');
178
+ this.callButtonHandler(cancelButton);
179
+ }
180
+ };
127
181
  }
128
- delegateController = overlays.createDelegateController(this);
129
- lockController = lockController.createLockController();
130
- triggerController = overlays.createTriggerController();
131
- customHTMLEnabled = index.config.get('innerHTMLTemplatesEnabled', config.ENABLE_HTML_CONTENT_DEFAULT);
132
- activeId;
133
- inputType;
134
- processedInputs = [];
135
- processedButtons = [];
136
- wrapperEl;
137
- buttonGroupEl;
138
- buttonGroupResizeObserver;
139
- gesture;
140
- isButtonGroupWrapped = false;
141
- presented = false;
142
- lastFocus;
143
- get el() { return index.getElement(this); }
144
- /** @internal */
145
- overlayIndex;
146
- /** @internal */
147
- delegate;
148
- /** @internal */
149
- hasController = false;
150
- /**
151
- * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
152
- */
153
- keyboardClose = true;
154
- /**
155
- * Animation to use when the alert is presented.
156
- */
157
- enterAnimation;
158
- /**
159
- * Animation to use when the alert is dismissed.
160
- */
161
- leaveAnimation;
162
- /**
163
- * Additional classes to apply for custom CSS. If multiple classes are
164
- * provided they should be separated by spaces.
165
- */
166
- cssClass;
167
- /**
168
- * The main title in the heading of the alert.
169
- */
170
- header;
171
- /**
172
- * The subtitle in the heading of the alert. Displayed under the title.
173
- */
174
- subHeader;
175
- /**
176
- * The main message to be displayed in the alert.
177
- * `message` can accept either plaintext or HTML as a string.
178
- * To display characters normally reserved for HTML, they
179
- * must be escaped. For example `<Ionic>` would become
180
- * `&lt;Ionic&gt;`
181
- *
182
- * For more information: [Security Documentation](https://ionicframework.com/docs/faq/security)
183
- *
184
- * This property accepts custom HTML as a string.
185
- * Content is parsed as plaintext by default.
186
- * `innerHTMLTemplatesEnabled` must be set to `true` in the Ionic config
187
- * before custom HTML can be used.
188
- */
189
- message;
190
- /**
191
- * Array of buttons to be added to the alert.
192
- */
193
- buttons = [];
194
- /**
195
- * Array of input to show in the alert.
196
- */
197
- inputs = [];
198
- /**
199
- * If `true`, the alert will be dismissed when the backdrop is clicked.
200
- */
201
- backdropDismiss = true;
202
- /**
203
- * If `true`, the alert will be translucent.
204
- * Only applies when the mode is `"ios"` and the device supports
205
- * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
206
- */
207
- translucent = false;
208
- /**
209
- * If `true`, the alert will animate.
210
- */
211
- animated = true;
212
- /**
213
- * Additional attributes to pass to the alert.
214
- */
215
- htmlAttributes;
216
- /**
217
- * If `true`, the alert will open. If `false`, the alert will close.
218
- * Use this if you need finer grained control over presentation, otherwise
219
- * just use the alertController or the `trigger` property.
220
- * Note: `isOpen` will not automatically be set back to `false` when
221
- * the alert dismisses. You will need to do that in your code.
222
- */
223
- isOpen = false;
224
182
  onIsOpenChange(newValue, oldValue) {
225
183
  if (newValue === true && oldValue === false) {
226
184
  this.present();
@@ -229,53 +187,12 @@ const Alert = class {
229
187
  this.dismiss();
230
188
  }
231
189
  }
232
- /**
233
- * An ID corresponding to the trigger element that
234
- * causes the alert to open when clicked.
235
- */
236
- trigger;
237
190
  triggerChanged() {
238
191
  const { trigger, el, triggerController } = this;
239
192
  if (trigger) {
240
193
  triggerController.addClickListener(el, trigger);
241
194
  }
242
195
  }
243
- /**
244
- * Emitted after the alert has presented.
245
- */
246
- didPresent;
247
- /**
248
- * Emitted before the alert has presented.
249
- */
250
- willPresent;
251
- /**
252
- * Emitted before the alert has dismissed.
253
- */
254
- willDismiss;
255
- /**
256
- * Emitted after the alert has dismissed.
257
- */
258
- didDismiss;
259
- /**
260
- * Emitted after the alert has presented.
261
- * Shorthand for ionAlertWillDismiss.
262
- */
263
- didPresentShorthand;
264
- /**
265
- * Emitted before the alert has presented.
266
- * Shorthand for ionAlertWillPresent.
267
- */
268
- willPresentShorthand;
269
- /**
270
- * Emitted before the alert has dismissed.
271
- * Shorthand for ionAlertWillDismiss.
272
- */
273
- willDismissShorthand;
274
- /**
275
- * Emitted after the alert has dismissed.
276
- * Shorthand for ionAlertDidDismiss.
277
- */
278
- didDismissShorthand;
279
196
  onKeydown(ev) {
280
197
  const inputTypes = new Set(this.processedInputs.map((i) => i.type));
281
198
  /**
@@ -381,10 +298,15 @@ const Alert = class {
381
298
  this.triggerChanged();
382
299
  /**
383
300
  * If the alert was previously connected and is being reattached, the
384
- * ResizeObserver was disconnected. componentDidLoad only fires once per
385
- * instance, so re-establish the observer here on reconnect.
301
+ * `ResizeObserver` and the button gesture were torn down. `componentDidLoad`
302
+ * only fires once per instance, so re-establish both here on reconnect.
386
303
  */
387
304
  this.setupButtonGroupResizeObserver();
305
+ this.setupButtonActiveGesture();
306
+ // Re-apply the root lock if moved without dismiss() being called
307
+ if (this.presented) {
308
+ overlays.restoreRootFocusTrapAccessibility(this.el);
309
+ }
388
310
  }
389
311
  componentWillLoad() {
390
312
  if (!this.htmlAttributes?.id) {
@@ -406,17 +328,20 @@ const Alert = class {
406
328
  this.buttonGroupResizeObserver?.disconnect();
407
329
  this.buttonGroupResizeObserver = undefined;
408
330
  }
409
- componentDidLoad() {
410
- /**
411
- * Only create gesture if:
412
- * 1. A gesture does not already exist
413
- * 2. App is running in iOS mode
414
- * 3. A wrapper ref exists
415
- */
331
+ /**
332
+ * Only create gesture if:
333
+ * 1. A gesture does not already exist
334
+ * 2. App is running in iOS mode
335
+ * 3. A wrapper ref exists
336
+ */
337
+ setupButtonActiveGesture() {
416
338
  if (!this.gesture && ionicGlobal.getIonMode(this) === 'ios' && this.wrapperEl) {
417
339
  this.gesture = buttonActive.createButtonActiveGesture(this.wrapperEl, (refEl) => refEl.classList.contains('alert-button'));
418
340
  this.gesture.enable(true);
419
341
  }
342
+ }
343
+ componentDidLoad() {
344
+ this.setupButtonActiveGesture();
420
345
  this.setupButtonGroupResizeObserver();
421
346
  /**
422
347
  * If alert was rendered with isOpen="true"
@@ -666,16 +591,6 @@ const Alert = class {
666
591
  }
667
592
  })));
668
593
  }
669
- onBackdropTap = () => {
670
- this.dismiss(undefined, overlays.BACKDROP);
671
- };
672
- dispatchCancelHandler = (ev) => {
673
- const role = ev.detail.role;
674
- if (overlays.isCancel(role)) {
675
- const cancelButton = this.processedButtons.find((b) => b.role === 'cancel');
676
- this.callButtonHandler(cancelButton);
677
- }
678
- };
679
594
  setupButtonGroupResizeObserver() {
680
595
  /**
681
596
  * Re-evaluate vertical layout when the button group resizes so a 2-button
@@ -749,15 +664,16 @@ const Alert = class {
749
664
  * If neither are defined, do not set aria-labelledby.
750
665
  */
751
666
  const ariaLabelledBy = header && subHeader ? `${hdrId} ${subHdrId}` : header ? hdrId : subHeader ? subHdrId : null;
752
- return (index.h(index.Host, { key: '022f3463b8e6c52064b90ec304c524847c3d5ad3', tabindex: "-1", style: {
667
+ return (index.h(index.Host, { key: '083b5250dc4c76e85240e0225abcb7ca2b66de2f', tabindex: "-1", style: {
753
668
  zIndex: `${20000 + overlayIndex}`,
754
669
  }, class: {
755
670
  ...theme.getClassMap(this.cssClass),
756
671
  [mode]: true,
757
672
  'overlay-hidden': true,
758
673
  'alert-translucent': this.translucent,
759
- }, onIonAlertWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }, index.h("ion-backdrop", { key: 'c3cd05738bc2834f54707edeb2fae06ec10d6fd2', tappable: this.backdropDismiss }), index.h("div", { key: 'b44fadd9ba7ddf073854c5035538d11ae8e66bc2', tabindex: "0", "aria-hidden": "true" }), index.h("div", { key: 'fafea048141a6c7957e62aef31faa8041dd610c1', class: "alert-wrapper ion-overlay-wrapper", role: role, "aria-modal": "true", "aria-labelledby": ariaLabelledBy, "aria-describedby": message !== undefined ? msgId : null, tabindex: "0", ref: (el) => (this.wrapperEl = el), ...htmlAttributes }, index.h("div", { key: '3ad9d2d4b7cf425eab8293ddc12eff0fe8df1517', class: "alert-head" }, header && (index.h("h2", { key: '7d9154f5ee595b7e4da6ecf3a20871f104c1256e', id: hdrId, class: "alert-title" }, header)), subHeader && !header && (index.h("h2", { key: '1f891f38004be6964e9406b84dd580145c42516a', id: subHdrId, class: "alert-sub-title" }, subHeader)), subHeader && header && (index.h("h3", { key: '2ab4d344ecb7e384e8f6d3d3e59ee5a1bbcc832c', id: subHdrId, class: "alert-sub-title" }, subHeader))), this.renderAlertMessage(msgId), this.renderAlertInputs(), this.renderAlertButtons()), index.h("div", { key: '78a4ff09aa3aaafcd0dc2a42d036767d83b3cfa2', tabindex: "0", "aria-hidden": "true" })));
674
+ }, onIonAlertWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }, index.h("ion-backdrop", { key: '65c92a956d998ae9016396dd2a29c42ab7376d0e', tappable: this.backdropDismiss }), index.h("div", { key: 'f2288fa0b7ef9d0bf031c168fe78c48422cf91c8', tabindex: "0", "aria-hidden": "true" }), index.h("div", { key: 'dbb109435c378f77c6b0231e58756f8a0467732d', class: "alert-wrapper ion-overlay-wrapper", role: role, "aria-modal": "true", "aria-labelledby": ariaLabelledBy, "aria-describedby": message !== undefined ? msgId : null, tabindex: "0", ref: (el) => (this.wrapperEl = el), ...htmlAttributes }, index.h("div", { key: '075597f94719673cf1f894a8566e1036849afa75', class: "alert-head" }, header && (index.h("h2", { key: 'f96f4b1db8473c62040beed6e96108c733978d73', id: hdrId, class: "alert-title" }, header)), subHeader && !header && (index.h("h2", { key: 'dbd824ef19a07bddde4eb928f11de7c7cadf98b8', id: subHdrId, class: "alert-sub-title" }, subHeader)), subHeader && header && (index.h("h3", { key: '4774fa13700dd23aec7930492acae80de3bdf5d1', id: subHdrId, class: "alert-sub-title" }, subHeader))), this.renderAlertMessage(msgId), this.renderAlertInputs(), this.renderAlertButtons()), index.h("div", { key: '5c728b7457e231f64294bbec821bdb547c6437dd', tabindex: "0", "aria-hidden": "true" })));
760
675
  }
676
+ get el() { return index.getElement(this); }
761
677
  static get watchers() { return {
762
678
  "isOpen": [{
763
679
  "onIsOpenChange": 0