voyager-ionic-core 8.7.11 → 8.7.15

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 (1007) hide show
  1. package/components/action-sheet.js +186 -5
  2. package/components/button.js +6 -4
  3. package/components/content.js +13 -3
  4. package/components/header.js +1 -1
  5. package/components/ion-accordion.js +1 -1
  6. package/components/ion-fab-button.js +1 -1
  7. package/components/ion-input-password-toggle.js +2 -2
  8. package/components/ion-select.js +8 -3
  9. package/components/item.js +1 -1
  10. package/components/modal.js +97 -5
  11. package/components/overlays.js +14 -6
  12. package/components/popover.js +36 -2
  13. package/css/core.css +1 -1
  14. package/css/core.css.map +1 -1
  15. package/css/ionic.bundle.css +1 -1
  16. package/css/ionic.bundle.css.map +1 -1
  17. package/dist/cjs/index.cjs.js +1 -1
  18. package/dist/cjs/ion-action-sheet.cjs.entry.js +184 -5
  19. package/dist/cjs/ion-alert.cjs.entry.js +1 -1
  20. package/dist/cjs/ion-app_8.cjs.entry.js +13 -4
  21. package/dist/cjs/ion-button_2.cjs.entry.js +4 -3
  22. package/dist/cjs/ion-datetime_3.cjs.entry.js +1 -1
  23. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +2 -2
  24. package/dist/cjs/ion-loading.cjs.entry.js +1 -1
  25. package/dist/cjs/ion-menu_3.cjs.entry.js +1 -1
  26. package/dist/cjs/ion-modal.cjs.entry.js +97 -6
  27. package/dist/cjs/ion-popover.cjs.entry.js +37 -3
  28. package/dist/cjs/ion-select-modal.cjs.entry.js +1 -1
  29. package/dist/cjs/ion-select_3.cjs.entry.js +9 -4
  30. package/dist/cjs/ion-toast.cjs.entry.js +1 -1
  31. package/dist/cjs/ionic.cjs.js +1 -1
  32. package/dist/cjs/loader.cjs.js +1 -1
  33. package/dist/cjs/{overlays-DxIZwUXI.js → overlays-B2b-TTbl.js} +14 -6
  34. package/dist/collection/components/accordion/accordion.js +3 -3
  35. package/dist/collection/components/action-sheet/action-sheet.js +199 -4
  36. package/dist/collection/components/button/button.js +5 -2
  37. package/dist/collection/components/content/content.js +32 -3
  38. package/dist/collection/components/fab-button/fab-button.js +3 -3
  39. package/dist/collection/components/header/header.md.css +1 -1
  40. package/dist/collection/components/input-password-toggle/input-password-toggle.js +2 -2
  41. package/dist/collection/components/item/item.js +3 -3
  42. package/dist/collection/components/modal/modal.js +97 -5
  43. package/dist/collection/components/popover/popover.js +36 -2
  44. package/dist/collection/components/select/select.js +8 -3
  45. package/dist/collection/utils/overlays.js +14 -6
  46. package/dist/docs.json +26 -20
  47. package/dist/esm/index.js +1 -1
  48. package/dist/esm/ion-action-sheet.entry.js +184 -5
  49. package/dist/esm/ion-alert.entry.js +1 -1
  50. package/dist/esm/ion-app_8.entry.js +13 -4
  51. package/dist/esm/ion-button_2.entry.js +4 -3
  52. package/dist/esm/ion-datetime_3.entry.js +1 -1
  53. package/dist/esm/ion-input-password-toggle.entry.js +2 -2
  54. package/dist/esm/ion-loading.entry.js +1 -1
  55. package/dist/esm/ion-menu_3.entry.js +1 -1
  56. package/dist/esm/ion-modal.entry.js +97 -6
  57. package/dist/esm/ion-popover.entry.js +37 -3
  58. package/dist/esm/ion-select-modal.entry.js +1 -1
  59. package/dist/esm/ion-select_3.entry.js +9 -4
  60. package/dist/esm/ion-toast.entry.js +1 -1
  61. package/dist/esm/ionic.js +1 -1
  62. package/dist/esm/loader.js +1 -1
  63. package/dist/esm/{overlays-BymNv-BL.js → overlays-D5YkFThA.js} +14 -6
  64. package/dist/ionic/index.esm.js +1 -1
  65. package/dist/ionic/ionic.esm.js +1 -1
  66. package/dist/ionic/{p-0b80d700.entry.js → p-02d76786.entry.js} +1 -1
  67. package/dist/ionic/p-11aa58d6.entry.js +4 -0
  68. package/dist/ionic/p-2072e209.entry.js +4 -0
  69. package/dist/ionic/p-34642fa1.entry.js +4 -0
  70. package/dist/ionic/{p-7da39a4d.entry.js → p-35696017.entry.js} +1 -1
  71. package/dist/ionic/p-6e4c7b5b.entry.js +4 -0
  72. package/dist/ionic/p-7babec72.entry.js +4 -0
  73. package/dist/ionic/p-DdR6rpbR.js +4 -0
  74. package/dist/ionic/{p-15193d01.entry.js → p-b3d44509.entry.js} +1 -1
  75. package/dist/ionic/{p-cb93126d.entry.js → p-c19af093.entry.js} +1 -1
  76. package/dist/ionic/{p-83be404e.entry.js → p-db82892c.entry.js} +1 -1
  77. package/dist/ionic/{p-98fc09eb.entry.js → p-dd1aef77.entry.js} +1 -1
  78. package/dist/ionic/p-eb024a5b.entry.js +4 -0
  79. package/dist/ionic/p-f9061316.entry.js +4 -0
  80. package/dist/ionic/svg/document-sharp.svg +1 -0
  81. package/dist/ionic/svg/document-text-outline.svg +1 -0
  82. package/dist/ionic/svg/document-text-sharp.svg +1 -0
  83. package/dist/ionic/svg/document-text.svg +1 -0
  84. package/dist/ionic/svg/document.svg +1 -0
  85. package/dist/ionic/svg/documents-outline.svg +1 -0
  86. package/dist/ionic/svg/documents-sharp.svg +1 -0
  87. package/dist/ionic/svg/documents.svg +1 -0
  88. package/dist/ionic/svg/download-outline.svg +1 -0
  89. package/dist/ionic/svg/download-sharp.svg +1 -0
  90. package/dist/ionic/svg/download.svg +1 -0
  91. package/dist/ionic/svg/duplicate-outline.svg +1 -0
  92. package/dist/ionic/svg/duplicate-sharp.svg +1 -0
  93. package/dist/ionic/svg/duplicate.svg +1 -0
  94. package/dist/ionic/svg/ear-outline.svg +1 -0
  95. package/dist/ionic/svg/ear-sharp.svg +1 -0
  96. package/dist/ionic/svg/ear.svg +1 -0
  97. package/dist/ionic/svg/earth-outline.svg +1 -0
  98. package/dist/ionic/svg/earth-sharp.svg +1 -0
  99. package/dist/ionic/svg/earth.svg +1 -0
  100. package/dist/ionic/svg/easel-outline.svg +1 -0
  101. package/dist/ionic/svg/easel-sharp.svg +1 -0
  102. package/dist/ionic/svg/easel.svg +1 -0
  103. package/dist/ionic/svg/egg-outline.svg +1 -0
  104. package/dist/ionic/svg/egg-sharp.svg +1 -0
  105. package/dist/ionic/svg/egg.svg +1 -0
  106. package/dist/ionic/svg/ellipse-outline.svg +1 -0
  107. package/dist/ionic/svg/ellipse-sharp.svg +1 -0
  108. package/dist/ionic/svg/ellipse.svg +1 -0
  109. package/dist/ionic/svg/ellipsis-horizontal-circle-outline.svg +1 -0
  110. package/dist/ionic/svg/ellipsis-horizontal-circle-sharp.svg +1 -0
  111. package/dist/ionic/svg/ellipsis-horizontal-circle.svg +1 -0
  112. package/dist/ionic/svg/ellipsis-horizontal-outline.svg +1 -0
  113. package/dist/ionic/svg/ellipsis-horizontal-sharp.svg +1 -0
  114. package/dist/ionic/svg/ellipsis-horizontal.svg +1 -0
  115. package/dist/ionic/svg/ellipsis-vertical-circle-outline.svg +1 -0
  116. package/dist/ionic/svg/ellipsis-vertical-circle-sharp.svg +1 -0
  117. package/dist/ionic/svg/ellipsis-vertical-circle.svg +1 -0
  118. package/dist/ionic/svg/ellipsis-vertical-outline.svg +1 -0
  119. package/dist/ionic/svg/ellipsis-vertical-sharp.svg +1 -0
  120. package/dist/ionic/svg/ellipsis-vertical.svg +1 -0
  121. package/dist/ionic/svg/enter-outline.svg +1 -0
  122. package/dist/ionic/svg/enter-sharp.svg +1 -0
  123. package/dist/ionic/svg/enter.svg +1 -0
  124. package/dist/ionic/svg/exit-outline.svg +1 -0
  125. package/dist/ionic/svg/exit-sharp.svg +1 -0
  126. package/dist/ionic/svg/exit.svg +1 -0
  127. package/dist/ionic/svg/expand-outline.svg +1 -0
  128. package/dist/ionic/svg/expand-sharp.svg +1 -0
  129. package/dist/ionic/svg/expand.svg +1 -0
  130. package/dist/ionic/svg/extension-puzzle-outline.svg +1 -0
  131. package/dist/ionic/svg/extension-puzzle-sharp.svg +1 -0
  132. package/dist/ionic/svg/extension-puzzle.svg +1 -0
  133. package/dist/ionic/svg/eye-off-outline.svg +1 -0
  134. package/dist/ionic/svg/eye-off-sharp.svg +1 -0
  135. package/dist/ionic/svg/eye-off.svg +1 -0
  136. package/dist/ionic/svg/eye-outline.svg +1 -0
  137. package/dist/ionic/svg/eye-sharp.svg +1 -0
  138. package/dist/ionic/svg/eye.svg +1 -0
  139. package/dist/ionic/svg/eyedrop-outline.svg +1 -0
  140. package/dist/ionic/svg/eyedrop-sharp.svg +1 -0
  141. package/dist/ionic/svg/eyedrop.svg +1 -0
  142. package/dist/ionic/svg/fast-food-outline.svg +1 -0
  143. package/dist/ionic/svg/fast-food-sharp.svg +1 -0
  144. package/dist/ionic/svg/fast-food.svg +1 -0
  145. package/dist/ionic/svg/female-outline.svg +1 -0
  146. package/dist/ionic/svg/female-sharp.svg +1 -0
  147. package/dist/ionic/svg/female.svg +1 -0
  148. package/dist/ionic/svg/file-tray-full-outline.svg +1 -0
  149. package/dist/ionic/svg/file-tray-full-sharp.svg +1 -0
  150. package/dist/ionic/svg/file-tray-full.svg +1 -0
  151. package/dist/ionic/svg/file-tray-outline.svg +1 -0
  152. package/dist/ionic/svg/file-tray-sharp.svg +1 -0
  153. package/dist/ionic/svg/file-tray-stacked-outline.svg +1 -0
  154. package/dist/ionic/svg/file-tray-stacked-sharp.svg +1 -0
  155. package/dist/ionic/svg/file-tray-stacked.svg +1 -0
  156. package/dist/ionic/svg/file-tray.svg +1 -0
  157. package/dist/ionic/svg/film-outline.svg +1 -0
  158. package/dist/ionic/svg/film-sharp.svg +1 -0
  159. package/dist/ionic/svg/film.svg +1 -0
  160. package/dist/ionic/svg/filter-circle-outline.svg +1 -0
  161. package/dist/ionic/svg/filter-circle-sharp.svg +1 -0
  162. package/dist/ionic/svg/filter-circle.svg +1 -0
  163. package/dist/ionic/svg/filter-outline.svg +1 -0
  164. package/dist/ionic/svg/filter-sharp.svg +1 -0
  165. package/dist/ionic/svg/filter.svg +1 -0
  166. package/dist/ionic/svg/finger-print-outline.svg +1 -0
  167. package/dist/ionic/svg/finger-print-sharp.svg +1 -0
  168. package/dist/ionic/svg/finger-print.svg +1 -0
  169. package/dist/ionic/svg/fish-outline.svg +1 -0
  170. package/dist/ionic/svg/fish-sharp.svg +1 -0
  171. package/dist/ionic/svg/fish.svg +1 -0
  172. package/dist/ionic/svg/fitness-outline.svg +1 -0
  173. package/dist/ionic/svg/fitness-sharp.svg +1 -0
  174. package/dist/ionic/svg/fitness.svg +1 -0
  175. package/dist/ionic/svg/flag-outline.svg +1 -0
  176. package/dist/ionic/svg/flag-sharp.svg +1 -0
  177. package/dist/ionic/svg/flag.svg +1 -0
  178. package/dist/ionic/svg/flame-outline.svg +1 -0
  179. package/dist/ionic/svg/flame-sharp.svg +1 -0
  180. package/dist/ionic/svg/flame.svg +1 -0
  181. package/dist/ionic/svg/flash-off-outline.svg +1 -0
  182. package/dist/ionic/svg/flash-off-sharp.svg +1 -0
  183. package/dist/ionic/svg/flash-off.svg +1 -0
  184. package/dist/ionic/svg/flash-outline.svg +1 -0
  185. package/dist/ionic/svg/flash-sharp.svg +1 -0
  186. package/dist/ionic/svg/flash.svg +1 -0
  187. package/dist/ionic/svg/flashlight-outline.svg +1 -0
  188. package/dist/ionic/svg/flashlight-sharp.svg +1 -0
  189. package/dist/ionic/svg/flashlight.svg +1 -0
  190. package/dist/ionic/svg/flask-outline.svg +1 -0
  191. package/dist/ionic/svg/flask-sharp.svg +1 -0
  192. package/dist/ionic/svg/flask.svg +1 -0
  193. package/dist/ionic/svg/flower-outline.svg +1 -0
  194. package/dist/ionic/svg/flower-sharp.svg +1 -0
  195. package/dist/ionic/svg/flower.svg +1 -0
  196. package/dist/ionic/svg/folder-open-outline.svg +1 -0
  197. package/dist/ionic/svg/folder-open-sharp.svg +1 -0
  198. package/dist/ionic/svg/folder-open.svg +1 -0
  199. package/dist/ionic/svg/folder-outline.svg +1 -0
  200. package/dist/ionic/svg/folder-sharp.svg +1 -0
  201. package/dist/ionic/svg/folder.svg +1 -0
  202. package/dist/ionic/svg/football-outline.svg +1 -0
  203. package/dist/ionic/svg/football-sharp.svg +1 -0
  204. package/dist/ionic/svg/football.svg +1 -0
  205. package/dist/ionic/svg/footsteps-outline.svg +1 -0
  206. package/dist/ionic/svg/footsteps-sharp.svg +1 -0
  207. package/dist/ionic/svg/footsteps.svg +1 -0
  208. package/dist/ionic/svg/funnel-outline.svg +1 -0
  209. package/dist/ionic/svg/funnel-sharp.svg +1 -0
  210. package/dist/ionic/svg/funnel.svg +1 -0
  211. package/dist/ionic/svg/game-controller-outline.svg +1 -0
  212. package/dist/ionic/svg/game-controller-sharp.svg +1 -0
  213. package/dist/ionic/svg/game-controller.svg +1 -0
  214. package/dist/ionic/svg/gift-outline.svg +1 -0
  215. package/dist/ionic/svg/gift-sharp.svg +1 -0
  216. package/dist/ionic/svg/gift.svg +1 -0
  217. package/dist/ionic/svg/git-branch-outline.svg +1 -0
  218. package/dist/ionic/svg/git-branch-sharp.svg +1 -0
  219. package/dist/ionic/svg/git-branch.svg +1 -0
  220. package/dist/ionic/svg/git-commit-outline.svg +1 -0
  221. package/dist/ionic/svg/git-commit-sharp.svg +1 -0
  222. package/dist/ionic/svg/git-commit.svg +1 -0
  223. package/dist/ionic/svg/git-compare-outline.svg +1 -0
  224. package/dist/ionic/svg/git-compare-sharp.svg +1 -0
  225. package/dist/ionic/svg/git-compare.svg +1 -0
  226. package/dist/ionic/svg/git-merge-outline.svg +1 -0
  227. package/dist/ionic/svg/git-merge-sharp.svg +1 -0
  228. package/dist/ionic/svg/git-merge.svg +1 -0
  229. package/dist/ionic/svg/git-network-outline.svg +1 -0
  230. package/dist/ionic/svg/git-network-sharp.svg +1 -0
  231. package/dist/ionic/svg/git-network.svg +1 -0
  232. package/dist/ionic/svg/git-pull-request-outline.svg +1 -0
  233. package/dist/ionic/svg/git-pull-request-sharp.svg +1 -0
  234. package/dist/ionic/svg/git-pull-request.svg +1 -0
  235. package/dist/ionic/svg/glasses-outline.svg +1 -0
  236. package/dist/ionic/svg/glasses-sharp.svg +1 -0
  237. package/dist/ionic/svg/glasses.svg +1 -0
  238. package/dist/ionic/svg/globe-outline.svg +1 -0
  239. package/dist/ionic/svg/globe-sharp.svg +1 -0
  240. package/dist/ionic/svg/globe.svg +1 -0
  241. package/dist/ionic/svg/golf-outline.svg +1 -0
  242. package/dist/ionic/svg/golf-sharp.svg +1 -0
  243. package/dist/ionic/svg/golf.svg +1 -0
  244. package/dist/ionic/svg/grid-outline.svg +1 -0
  245. package/dist/ionic/svg/grid-sharp.svg +1 -0
  246. package/dist/ionic/svg/grid.svg +1 -0
  247. package/dist/ionic/svg/hammer-outline.svg +1 -0
  248. package/dist/ionic/svg/hammer-sharp.svg +1 -0
  249. package/dist/ionic/svg/hammer.svg +1 -0
  250. package/dist/ionic/svg/hand-left-outline.svg +1 -0
  251. package/dist/ionic/svg/hand-left-sharp.svg +1 -0
  252. package/dist/ionic/svg/hand-left.svg +1 -0
  253. package/dist/ionic/svg/hand-right-outline.svg +1 -0
  254. package/dist/ionic/svg/hand-right-sharp.svg +1 -0
  255. package/dist/ionic/svg/hand-right.svg +1 -0
  256. package/dist/ionic/svg/happy-outline.svg +1 -0
  257. package/dist/ionic/svg/happy-sharp.svg +1 -0
  258. package/dist/ionic/svg/happy.svg +1 -0
  259. package/dist/ionic/svg/hardware-chip-outline.svg +1 -0
  260. package/dist/ionic/svg/hardware-chip-sharp.svg +1 -0
  261. package/dist/ionic/svg/hardware-chip.svg +1 -0
  262. package/dist/ionic/svg/headset-outline.svg +1 -0
  263. package/dist/ionic/svg/headset-sharp.svg +1 -0
  264. package/dist/ionic/svg/headset.svg +1 -0
  265. package/dist/ionic/svg/heart-circle-outline.svg +1 -0
  266. package/dist/ionic/svg/heart-circle-sharp.svg +1 -0
  267. package/dist/ionic/svg/heart-circle.svg +1 -0
  268. package/dist/ionic/svg/heart-dislike-circle-outline.svg +1 -0
  269. package/dist/ionic/svg/heart-dislike-circle-sharp.svg +1 -0
  270. package/dist/ionic/svg/heart-dislike-circle.svg +1 -0
  271. package/dist/ionic/svg/heart-dislike-outline.svg +1 -0
  272. package/dist/ionic/svg/heart-dislike-sharp.svg +1 -0
  273. package/dist/ionic/svg/heart-dislike.svg +1 -0
  274. package/dist/ionic/svg/heart-half-outline.svg +1 -0
  275. package/dist/ionic/svg/heart-half-sharp.svg +1 -0
  276. package/dist/ionic/svg/heart-half.svg +1 -0
  277. package/dist/ionic/svg/heart-outline.svg +1 -0
  278. package/dist/ionic/svg/heart-sharp.svg +1 -0
  279. package/dist/ionic/svg/heart.svg +1 -0
  280. package/dist/ionic/svg/help-buoy-outline.svg +1 -0
  281. package/dist/ionic/svg/help-buoy-sharp.svg +1 -0
  282. package/dist/ionic/svg/help-buoy.svg +1 -0
  283. package/dist/ionic/svg/help-circle-outline.svg +1 -0
  284. package/dist/ionic/svg/help-circle-sharp.svg +1 -0
  285. package/dist/ionic/svg/help-circle.svg +1 -0
  286. package/dist/ionic/svg/help-outline.svg +1 -0
  287. package/dist/ionic/svg/help-sharp.svg +1 -0
  288. package/dist/ionic/svg/help.svg +1 -0
  289. package/dist/ionic/svg/home-outline.svg +1 -0
  290. package/dist/ionic/svg/home-sharp.svg +1 -0
  291. package/dist/ionic/svg/home.svg +1 -0
  292. package/dist/ionic/svg/hourglass-outline.svg +1 -0
  293. package/dist/ionic/svg/hourglass-sharp.svg +1 -0
  294. package/dist/ionic/svg/hourglass.svg +1 -0
  295. package/dist/ionic/svg/ice-cream-outline.svg +1 -0
  296. package/dist/ionic/svg/ice-cream-sharp.svg +1 -0
  297. package/dist/ionic/svg/ice-cream.svg +1 -0
  298. package/dist/ionic/svg/id-card-outline.svg +1 -0
  299. package/dist/ionic/svg/id-card-sharp.svg +1 -0
  300. package/dist/ionic/svg/id-card.svg +1 -0
  301. package/dist/ionic/svg/image-outline.svg +1 -0
  302. package/dist/ionic/svg/image-sharp.svg +1 -0
  303. package/dist/ionic/svg/image.svg +1 -0
  304. package/dist/ionic/svg/images-outline.svg +1 -0
  305. package/dist/ionic/svg/images-sharp.svg +1 -0
  306. package/dist/ionic/svg/images.svg +1 -0
  307. package/dist/ionic/svg/infinite-outline.svg +1 -0
  308. package/dist/ionic/svg/infinite-sharp.svg +1 -0
  309. package/dist/ionic/svg/infinite.svg +1 -0
  310. package/dist/ionic/svg/information-circle-outline.svg +1 -0
  311. package/dist/ionic/svg/information-circle-sharp.svg +1 -0
  312. package/dist/ionic/svg/information-circle.svg +1 -0
  313. package/dist/ionic/svg/information-outline.svg +1 -0
  314. package/dist/ionic/svg/information-sharp.svg +1 -0
  315. package/dist/ionic/svg/information.svg +1 -0
  316. package/dist/ionic/svg/invert-mode-outline.svg +1 -0
  317. package/dist/ionic/svg/invert-mode-sharp.svg +1 -0
  318. package/dist/ionic/svg/invert-mode.svg +1 -0
  319. package/dist/ionic/svg/journal-outline.svg +1 -0
  320. package/dist/ionic/svg/journal-sharp.svg +1 -0
  321. package/dist/ionic/svg/journal.svg +1 -0
  322. package/dist/ionic/svg/key-outline.svg +1 -0
  323. package/dist/ionic/svg/key-sharp.svg +1 -0
  324. package/dist/ionic/svg/key.svg +1 -0
  325. package/dist/ionic/svg/keypad-outline.svg +1 -0
  326. package/dist/ionic/svg/keypad-sharp.svg +1 -0
  327. package/dist/ionic/svg/keypad.svg +1 -0
  328. package/dist/ionic/svg/language-outline.svg +1 -0
  329. package/dist/ionic/svg/language-sharp.svg +1 -0
  330. package/dist/ionic/svg/language.svg +1 -0
  331. package/dist/ionic/svg/laptop-outline.svg +1 -0
  332. package/dist/ionic/svg/laptop-sharp.svg +1 -0
  333. package/dist/ionic/svg/laptop.svg +1 -0
  334. package/dist/ionic/svg/layers-outline.svg +1 -0
  335. package/dist/ionic/svg/layers-sharp.svg +1 -0
  336. package/dist/ionic/svg/layers.svg +1 -0
  337. package/dist/ionic/svg/leaf-outline.svg +1 -0
  338. package/dist/ionic/svg/leaf-sharp.svg +1 -0
  339. package/dist/ionic/svg/leaf.svg +1 -0
  340. package/dist/ionic/svg/library-outline.svg +1 -0
  341. package/dist/ionic/svg/library-sharp.svg +1 -0
  342. package/dist/ionic/svg/library.svg +1 -0
  343. package/dist/ionic/svg/link-outline.svg +1 -0
  344. package/dist/ionic/svg/link-sharp.svg +1 -0
  345. package/dist/ionic/svg/link.svg +1 -0
  346. package/dist/ionic/svg/list-circle-outline.svg +1 -0
  347. package/dist/ionic/svg/list-circle-sharp.svg +1 -0
  348. package/dist/ionic/svg/list-circle.svg +1 -0
  349. package/dist/ionic/svg/list-outline.svg +1 -0
  350. package/dist/ionic/svg/list-sharp.svg +1 -0
  351. package/dist/ionic/svg/list.svg +1 -0
  352. package/dist/ionic/svg/locate-outline.svg +1 -0
  353. package/dist/ionic/svg/locate-sharp.svg +1 -0
  354. package/dist/ionic/svg/locate.svg +1 -0
  355. package/dist/ionic/svg/location-outline.svg +1 -0
  356. package/dist/ionic/svg/location-sharp.svg +1 -0
  357. package/dist/ionic/svg/location.svg +1 -0
  358. package/dist/ionic/svg/lock-closed-outline.svg +1 -0
  359. package/dist/ionic/svg/lock-closed-sharp.svg +1 -0
  360. package/dist/ionic/svg/lock-closed.svg +1 -0
  361. package/dist/ionic/svg/lock-open-outline.svg +1 -0
  362. package/dist/ionic/svg/lock-open-sharp.svg +1 -0
  363. package/dist/ionic/svg/lock-open.svg +1 -0
  364. package/dist/ionic/svg/log-in-outline.svg +1 -0
  365. package/dist/ionic/svg/log-in-sharp.svg +1 -0
  366. package/dist/ionic/svg/log-in.svg +1 -0
  367. package/dist/ionic/svg/log-out-outline.svg +1 -0
  368. package/dist/ionic/svg/log-out-sharp.svg +1 -0
  369. package/dist/ionic/svg/log-out.svg +1 -0
  370. package/dist/ionic/svg/logo-alipay.svg +1 -0
  371. package/dist/ionic/svg/logo-amazon.svg +1 -0
  372. package/dist/ionic/svg/logo-amplify.svg +1 -0
  373. package/dist/ionic/svg/logo-android.svg +1 -0
  374. package/dist/ionic/svg/logo-angular.svg +1 -0
  375. package/dist/ionic/svg/logo-appflow.svg +1 -0
  376. package/dist/ionic/svg/logo-apple-appstore.svg +1 -0
  377. package/dist/ionic/svg/logo-apple-ar.svg +1 -0
  378. package/dist/ionic/svg/logo-apple.svg +1 -0
  379. package/dist/ionic/svg/logo-behance.svg +1 -0
  380. package/dist/ionic/svg/logo-bitbucket.svg +1 -0
  381. package/dist/ionic/svg/logo-bitcoin.svg +1 -0
  382. package/dist/ionic/svg/logo-buffer.svg +1 -0
  383. package/dist/ionic/svg/logo-capacitor.svg +1 -0
  384. package/dist/ionic/svg/logo-chrome.svg +1 -0
  385. package/dist/ionic/svg/logo-closed-captioning.svg +1 -0
  386. package/dist/ionic/svg/logo-codepen.svg +1 -0
  387. package/dist/ionic/svg/logo-css3.svg +1 -0
  388. package/dist/ionic/svg/logo-designernews.svg +1 -0
  389. package/dist/ionic/svg/logo-deviantart.svg +1 -0
  390. package/dist/ionic/svg/logo-discord.svg +1 -0
  391. package/dist/ionic/svg/logo-docker.svg +1 -0
  392. package/dist/ionic/svg/logo-dribbble.svg +1 -0
  393. package/dist/ionic/svg/logo-dropbox.svg +1 -0
  394. package/dist/ionic/svg/logo-edge.svg +1 -0
  395. package/dist/ionic/svg/logo-electron.svg +1 -0
  396. package/dist/ionic/svg/logo-euro.svg +1 -0
  397. package/dist/ionic/svg/logo-facebook.svg +1 -0
  398. package/dist/ionic/svg/logo-figma.svg +1 -0
  399. package/dist/ionic/svg/logo-firebase.svg +1 -0
  400. package/dist/ionic/svg/logo-firefox.svg +1 -0
  401. package/dist/ionic/svg/logo-flickr.svg +1 -0
  402. package/dist/ionic/svg/logo-foursquare.svg +1 -0
  403. package/dist/ionic/svg/logo-github.svg +1 -0
  404. package/dist/ionic/svg/logo-gitlab.svg +1 -0
  405. package/dist/ionic/svg/logo-google-playstore.svg +1 -0
  406. package/dist/ionic/svg/logo-google.svg +1 -0
  407. package/dist/ionic/svg/logo-hackernews.svg +1 -0
  408. package/dist/ionic/svg/logo-html5.svg +1 -0
  409. package/dist/ionic/svg/logo-instagram.svg +1 -0
  410. package/dist/ionic/svg/logo-ionic.svg +1 -0
  411. package/dist/ionic/svg/logo-ionitron.svg +1 -0
  412. package/dist/ionic/svg/logo-javascript.svg +1 -0
  413. package/dist/ionic/svg/logo-laravel.svg +1 -0
  414. package/dist/ionic/svg/logo-linkedin.svg +1 -0
  415. package/dist/ionic/svg/logo-markdown.svg +1 -0
  416. package/dist/ionic/svg/logo-mastodon.svg +1 -0
  417. package/dist/ionic/svg/logo-medium.svg +1 -0
  418. package/dist/ionic/svg/logo-microsoft.svg +1 -0
  419. package/dist/ionic/svg/logo-no-smoking.svg +1 -0
  420. package/dist/ionic/svg/logo-nodejs.svg +1 -0
  421. package/dist/ionic/svg/logo-npm.svg +1 -0
  422. package/dist/ionic/svg/logo-octocat.svg +1 -0
  423. package/dist/ionic/svg/logo-paypal.svg +1 -0
  424. package/dist/ionic/svg/logo-pinterest.svg +1 -0
  425. package/dist/ionic/svg/logo-playstation.svg +1 -0
  426. package/dist/ionic/svg/logo-pwa.svg +1 -0
  427. package/dist/ionic/svg/logo-python.svg +1 -0
  428. package/dist/ionic/svg/logo-react.svg +1 -0
  429. package/dist/ionic/svg/logo-reddit.svg +1 -0
  430. package/dist/ionic/svg/logo-rss.svg +1 -0
  431. package/dist/ionic/svg/logo-sass.svg +1 -0
  432. package/dist/ionic/svg/logo-skype.svg +1 -0
  433. package/dist/ionic/svg/logo-slack.svg +1 -0
  434. package/dist/ionic/svg/logo-snapchat.svg +1 -0
  435. package/dist/ionic/svg/logo-soundcloud.svg +1 -0
  436. package/dist/ionic/svg/logo-stackoverflow.svg +1 -0
  437. package/dist/ionic/svg/logo-steam.svg +1 -0
  438. package/dist/ionic/svg/logo-stencil.svg +1 -0
  439. package/dist/ionic/svg/logo-tableau.svg +1 -0
  440. package/dist/ionic/svg/logo-threads.svg +1 -0
  441. package/dist/ionic/svg/logo-tiktok.svg +1 -0
  442. package/dist/ionic/svg/logo-trapeze.svg +1 -0
  443. package/dist/ionic/svg/logo-tumblr.svg +1 -0
  444. package/dist/ionic/svg/logo-tux.svg +1 -0
  445. package/dist/ionic/svg/logo-twitch.svg +1 -0
  446. package/dist/ionic/svg/logo-twitter.svg +1 -0
  447. package/dist/ionic/svg/logo-usd.svg +1 -0
  448. package/dist/ionic/svg/logo-venmo.svg +1 -0
  449. package/dist/ionic/svg/logo-vercel.svg +1 -0
  450. package/dist/ionic/svg/logo-vimeo.svg +1 -0
  451. package/dist/ionic/svg/logo-vk.svg +1 -0
  452. package/dist/ionic/svg/logo-vue.svg +1 -0
  453. package/dist/ionic/svg/logo-web-component.svg +1 -0
  454. package/dist/ionic/svg/logo-wechat.svg +1 -0
  455. package/dist/ionic/svg/logo-whatsapp.svg +1 -0
  456. package/dist/ionic/svg/logo-windows.svg +1 -0
  457. package/dist/ionic/svg/logo-wordpress.svg +1 -0
  458. package/dist/ionic/svg/logo-x.svg +1 -0
  459. package/dist/ionic/svg/logo-xbox.svg +1 -0
  460. package/dist/ionic/svg/logo-xing.svg +1 -0
  461. package/dist/ionic/svg/logo-yahoo.svg +1 -0
  462. package/dist/ionic/svg/logo-yen.svg +1 -0
  463. package/dist/ionic/svg/logo-youtube.svg +1 -0
  464. package/dist/ionic/svg/magnet-outline.svg +1 -0
  465. package/dist/ionic/svg/magnet-sharp.svg +1 -0
  466. package/dist/ionic/svg/magnet.svg +1 -0
  467. package/dist/ionic/svg/mail-open-outline.svg +1 -0
  468. package/dist/ionic/svg/mail-open-sharp.svg +1 -0
  469. package/dist/ionic/svg/mail-open.svg +1 -0
  470. package/dist/ionic/svg/mail-outline.svg +1 -0
  471. package/dist/ionic/svg/mail-sharp.svg +1 -0
  472. package/dist/ionic/svg/mail-unread-outline.svg +1 -0
  473. package/dist/ionic/svg/mail-unread-sharp.svg +1 -0
  474. package/dist/ionic/svg/mail-unread.svg +1 -0
  475. package/dist/ionic/svg/mail.svg +1 -0
  476. package/dist/ionic/svg/male-female-outline.svg +1 -0
  477. package/dist/ionic/svg/male-female-sharp.svg +1 -0
  478. package/dist/ionic/svg/male-female.svg +1 -0
  479. package/dist/ionic/svg/male-outline.svg +1 -0
  480. package/dist/ionic/svg/male-sharp.svg +1 -0
  481. package/dist/ionic/svg/male.svg +1 -0
  482. package/dist/ionic/svg/man-outline.svg +1 -0
  483. package/dist/ionic/svg/man-sharp.svg +1 -0
  484. package/dist/ionic/svg/man.svg +1 -0
  485. package/dist/ionic/svg/map-outline.svg +1 -0
  486. package/dist/ionic/svg/map-sharp.svg +1 -0
  487. package/dist/ionic/svg/map.svg +1 -0
  488. package/dist/ionic/svg/medal-outline.svg +1 -0
  489. package/dist/ionic/svg/medal-sharp.svg +1 -0
  490. package/dist/ionic/svg/medal.svg +1 -0
  491. package/dist/ionic/svg/medical-outline.svg +1 -0
  492. package/dist/ionic/svg/medical-sharp.svg +1 -0
  493. package/dist/ionic/svg/medical.svg +1 -0
  494. package/dist/ionic/svg/medkit-outline.svg +1 -0
  495. package/dist/ionic/svg/medkit-sharp.svg +1 -0
  496. package/dist/ionic/svg/medkit.svg +1 -0
  497. package/dist/ionic/svg/megaphone-outline.svg +1 -0
  498. package/dist/ionic/svg/megaphone-sharp.svg +1 -0
  499. package/dist/ionic/svg/megaphone.svg +1 -0
  500. package/dist/ionic/svg/menu-outline.svg +1 -0
  501. package/dist/ionic/svg/menu-sharp.svg +1 -0
  502. package/dist/ionic/svg/menu.svg +1 -0
  503. package/dist/ionic/svg/mic-circle-outline.svg +1 -0
  504. package/dist/ionic/svg/mic-circle-sharp.svg +1 -0
  505. package/dist/ionic/svg/mic-circle.svg +1 -0
  506. package/dist/ionic/svg/mic-off-circle-outline.svg +1 -0
  507. package/dist/ionic/svg/mic-off-circle-sharp.svg +1 -0
  508. package/dist/ionic/svg/mic-off-circle.svg +1 -0
  509. package/dist/ionic/svg/mic-off-outline.svg +1 -0
  510. package/dist/ionic/svg/mic-off-sharp.svg +1 -0
  511. package/dist/ionic/svg/mic-off.svg +1 -0
  512. package/dist/ionic/svg/mic-outline.svg +1 -0
  513. package/dist/ionic/svg/mic-sharp.svg +1 -0
  514. package/dist/ionic/svg/mic.svg +1 -0
  515. package/dist/ionic/svg/moon-outline.svg +1 -0
  516. package/dist/ionic/svg/moon-sharp.svg +1 -0
  517. package/dist/ionic/svg/moon.svg +1 -0
  518. package/dist/ionic/svg/move-outline.svg +1 -0
  519. package/dist/ionic/svg/move-sharp.svg +1 -0
  520. package/dist/ionic/svg/move.svg +1 -0
  521. package/dist/ionic/svg/musical-note-outline.svg +1 -0
  522. package/dist/ionic/svg/musical-note-sharp.svg +1 -0
  523. package/dist/ionic/svg/musical-note.svg +1 -0
  524. package/dist/ionic/svg/musical-notes-outline.svg +1 -0
  525. package/dist/ionic/svg/musical-notes-sharp.svg +1 -0
  526. package/dist/ionic/svg/musical-notes.svg +1 -0
  527. package/dist/ionic/svg/navigate-circle-outline.svg +1 -0
  528. package/dist/ionic/svg/navigate-circle-sharp.svg +1 -0
  529. package/dist/ionic/svg/navigate-circle.svg +1 -0
  530. package/dist/ionic/svg/navigate-outline.svg +1 -0
  531. package/dist/ionic/svg/navigate-sharp.svg +1 -0
  532. package/dist/ionic/svg/navigate.svg +1 -0
  533. package/dist/ionic/svg/newspaper-outline.svg +1 -0
  534. package/dist/ionic/svg/newspaper-sharp.svg +1 -0
  535. package/dist/ionic/svg/newspaper.svg +1 -0
  536. package/dist/ionic/svg/notifications-circle-outline.svg +1 -0
  537. package/dist/ionic/svg/notifications-circle-sharp.svg +1 -0
  538. package/dist/ionic/svg/notifications-circle.svg +1 -0
  539. package/dist/ionic/svg/notifications-off-circle-outline.svg +1 -0
  540. package/dist/ionic/svg/notifications-off-circle-sharp.svg +1 -0
  541. package/dist/ionic/svg/notifications-off-circle.svg +1 -0
  542. package/dist/ionic/svg/notifications-off-outline.svg +1 -0
  543. package/dist/ionic/svg/notifications-off-sharp.svg +1 -0
  544. package/dist/ionic/svg/notifications-off.svg +1 -0
  545. package/dist/ionic/svg/notifications-outline.svg +1 -0
  546. package/dist/ionic/svg/notifications-sharp.svg +1 -0
  547. package/dist/ionic/svg/notifications.svg +1 -0
  548. package/dist/ionic/svg/nuclear-outline.svg +1 -0
  549. package/dist/ionic/svg/nuclear-sharp.svg +1 -0
  550. package/dist/ionic/svg/nuclear.svg +1 -0
  551. package/dist/ionic/svg/nutrition-outline.svg +1 -0
  552. package/dist/ionic/svg/nutrition-sharp.svg +1 -0
  553. package/dist/ionic/svg/nutrition.svg +1 -0
  554. package/dist/ionic/svg/open-outline.svg +1 -0
  555. package/dist/ionic/svg/open-sharp.svg +1 -0
  556. package/dist/ionic/svg/open.svg +1 -0
  557. package/dist/ionic/svg/options-outline.svg +1 -0
  558. package/dist/ionic/svg/options-sharp.svg +1 -0
  559. package/dist/ionic/svg/options.svg +1 -0
  560. package/dist/ionic/svg/paper-plane-outline.svg +1 -0
  561. package/dist/ionic/svg/paper-plane-sharp.svg +1 -0
  562. package/dist/ionic/svg/paper-plane.svg +1 -0
  563. package/dist/ionic/svg/partly-sunny-outline.svg +1 -0
  564. package/dist/ionic/svg/partly-sunny-sharp.svg +1 -0
  565. package/dist/ionic/svg/partly-sunny.svg +1 -0
  566. package/dist/ionic/svg/pause-circle-outline.svg +1 -0
  567. package/dist/ionic/svg/pause-circle-sharp.svg +1 -0
  568. package/dist/ionic/svg/pause-circle.svg +1 -0
  569. package/dist/ionic/svg/pause-outline.svg +1 -0
  570. package/dist/ionic/svg/pause-sharp.svg +1 -0
  571. package/dist/ionic/svg/pause.svg +1 -0
  572. package/dist/ionic/svg/paw-outline.svg +1 -0
  573. package/dist/ionic/svg/paw-sharp.svg +1 -0
  574. package/dist/ionic/svg/paw.svg +1 -0
  575. package/dist/ionic/svg/pencil-outline.svg +1 -0
  576. package/dist/ionic/svg/pencil-sharp.svg +1 -0
  577. package/dist/ionic/svg/pencil.svg +1 -0
  578. package/dist/ionic/svg/people-circle-outline.svg +1 -0
  579. package/dist/ionic/svg/people-circle-sharp.svg +1 -0
  580. package/dist/ionic/svg/people-circle.svg +1 -0
  581. package/dist/ionic/svg/people-outline.svg +1 -0
  582. package/dist/ionic/svg/people-sharp.svg +1 -0
  583. package/dist/ionic/svg/people.svg +1 -0
  584. package/dist/ionic/svg/person-add-outline.svg +1 -0
  585. package/dist/ionic/svg/person-add-sharp.svg +1 -0
  586. package/dist/ionic/svg/person-add.svg +1 -0
  587. package/dist/ionic/svg/person-circle-outline.svg +1 -0
  588. package/dist/ionic/svg/person-circle-sharp.svg +1 -0
  589. package/dist/ionic/svg/person-circle.svg +1 -0
  590. package/dist/ionic/svg/person-outline.svg +1 -0
  591. package/dist/ionic/svg/person-remove-outline.svg +1 -0
  592. package/dist/ionic/svg/person-remove-sharp.svg +1 -0
  593. package/dist/ionic/svg/person-remove.svg +1 -0
  594. package/dist/ionic/svg/person-sharp.svg +1 -0
  595. package/dist/ionic/svg/person.svg +1 -0
  596. package/dist/ionic/svg/phone-landscape-outline.svg +1 -0
  597. package/dist/ionic/svg/phone-landscape-sharp.svg +1 -0
  598. package/dist/ionic/svg/phone-landscape.svg +1 -0
  599. package/dist/ionic/svg/phone-portrait-outline.svg +1 -0
  600. package/dist/ionic/svg/phone-portrait-sharp.svg +1 -0
  601. package/dist/ionic/svg/phone-portrait.svg +1 -0
  602. package/dist/ionic/svg/pie-chart-outline.svg +1 -0
  603. package/dist/ionic/svg/pie-chart-sharp.svg +1 -0
  604. package/dist/ionic/svg/pie-chart.svg +1 -0
  605. package/dist/ionic/svg/pin-outline.svg +1 -0
  606. package/dist/ionic/svg/pin-sharp.svg +1 -0
  607. package/dist/ionic/svg/pin.svg +1 -0
  608. package/dist/ionic/svg/pint-outline.svg +1 -0
  609. package/dist/ionic/svg/pint-sharp.svg +1 -0
  610. package/dist/ionic/svg/pint.svg +1 -0
  611. package/dist/ionic/svg/pizza-outline.svg +1 -0
  612. package/dist/ionic/svg/pizza-sharp.svg +1 -0
  613. package/dist/ionic/svg/pizza.svg +1 -0
  614. package/dist/ionic/svg/planet-outline.svg +1 -0
  615. package/dist/ionic/svg/planet-sharp.svg +1 -0
  616. package/dist/ionic/svg/planet.svg +1 -0
  617. package/dist/ionic/svg/play-back-circle-outline.svg +1 -0
  618. package/dist/ionic/svg/play-back-circle-sharp.svg +1 -0
  619. package/dist/ionic/svg/play-back-circle.svg +1 -0
  620. package/dist/ionic/svg/play-back-outline.svg +1 -0
  621. package/dist/ionic/svg/play-back-sharp.svg +1 -0
  622. package/dist/ionic/svg/play-back.svg +1 -0
  623. package/dist/ionic/svg/play-circle-outline.svg +1 -0
  624. package/dist/ionic/svg/play-circle-sharp.svg +1 -0
  625. package/dist/ionic/svg/play-circle.svg +1 -0
  626. package/dist/ionic/svg/play-forward-circle-outline.svg +1 -0
  627. package/dist/ionic/svg/play-forward-circle-sharp.svg +1 -0
  628. package/dist/ionic/svg/play-forward-circle.svg +1 -0
  629. package/dist/ionic/svg/play-forward-outline.svg +1 -0
  630. package/dist/ionic/svg/play-forward-sharp.svg +1 -0
  631. package/dist/ionic/svg/play-forward.svg +1 -0
  632. package/dist/ionic/svg/play-outline.svg +1 -0
  633. package/dist/ionic/svg/play-sharp.svg +1 -0
  634. package/dist/ionic/svg/play-skip-back-circle-outline.svg +1 -0
  635. package/dist/ionic/svg/play-skip-back-circle-sharp.svg +1 -0
  636. package/dist/ionic/svg/play-skip-back-circle.svg +1 -0
  637. package/dist/ionic/svg/play-skip-back-outline.svg +1 -0
  638. package/dist/ionic/svg/play-skip-back-sharp.svg +1 -0
  639. package/dist/ionic/svg/play-skip-back.svg +1 -0
  640. package/dist/ionic/svg/play-skip-forward-circle-outline.svg +1 -0
  641. package/dist/ionic/svg/play-skip-forward-circle-sharp.svg +1 -0
  642. package/dist/ionic/svg/play-skip-forward-circle.svg +1 -0
  643. package/dist/ionic/svg/play-skip-forward-outline.svg +1 -0
  644. package/dist/ionic/svg/play-skip-forward-sharp.svg +1 -0
  645. package/dist/ionic/svg/play-skip-forward.svg +1 -0
  646. package/dist/ionic/svg/play.svg +1 -0
  647. package/dist/ionic/svg/podium-outline.svg +1 -0
  648. package/dist/ionic/svg/podium-sharp.svg +1 -0
  649. package/dist/ionic/svg/podium.svg +1 -0
  650. package/dist/ionic/svg/power-outline.svg +1 -0
  651. package/dist/ionic/svg/power-sharp.svg +1 -0
  652. package/dist/ionic/svg/power.svg +1 -0
  653. package/dist/ionic/svg/pricetag-outline.svg +1 -0
  654. package/dist/ionic/svg/pricetag-sharp.svg +1 -0
  655. package/dist/ionic/svg/pricetag.svg +1 -0
  656. package/dist/ionic/svg/pricetags-outline.svg +1 -0
  657. package/dist/ionic/svg/pricetags-sharp.svg +1 -0
  658. package/dist/ionic/svg/pricetags.svg +1 -0
  659. package/dist/ionic/svg/print-outline.svg +1 -0
  660. package/dist/ionic/svg/print-sharp.svg +1 -0
  661. package/dist/ionic/svg/print.svg +1 -0
  662. package/dist/ionic/svg/prism-outline.svg +1 -0
  663. package/dist/ionic/svg/prism-sharp.svg +1 -0
  664. package/dist/ionic/svg/prism.svg +1 -0
  665. package/dist/ionic/svg/pulse-outline.svg +1 -0
  666. package/dist/ionic/svg/pulse-sharp.svg +1 -0
  667. package/dist/ionic/svg/pulse.svg +1 -0
  668. package/dist/ionic/svg/push-outline.svg +1 -0
  669. package/dist/ionic/svg/push-sharp.svg +1 -0
  670. package/dist/ionic/svg/push.svg +1 -0
  671. package/dist/ionic/svg/qr-code-outline.svg +1 -0
  672. package/dist/ionic/svg/qr-code-sharp.svg +1 -0
  673. package/dist/ionic/svg/qr-code.svg +1 -0
  674. package/dist/ionic/svg/radio-button-off-outline.svg +1 -0
  675. package/dist/ionic/svg/radio-button-off-sharp.svg +1 -0
  676. package/dist/ionic/svg/radio-button-off.svg +1 -0
  677. package/dist/ionic/svg/radio-button-on-outline.svg +1 -0
  678. package/dist/ionic/svg/radio-button-on-sharp.svg +1 -0
  679. package/dist/ionic/svg/radio-button-on.svg +1 -0
  680. package/dist/ionic/svg/radio-outline.svg +1 -0
  681. package/dist/ionic/svg/radio-sharp.svg +1 -0
  682. package/dist/ionic/svg/radio.svg +1 -0
  683. package/dist/ionic/svg/rainy-outline.svg +1 -0
  684. package/dist/ionic/svg/rainy-sharp.svg +1 -0
  685. package/dist/ionic/svg/rainy.svg +1 -0
  686. package/dist/ionic/svg/reader-outline.svg +1 -0
  687. package/dist/ionic/svg/reader-sharp.svg +1 -0
  688. package/dist/ionic/svg/reader.svg +1 -0
  689. package/dist/ionic/svg/receipt-outline.svg +1 -0
  690. package/dist/ionic/svg/receipt-sharp.svg +1 -0
  691. package/dist/ionic/svg/receipt.svg +1 -0
  692. package/dist/ionic/svg/recording-outline.svg +1 -0
  693. package/dist/ionic/svg/recording-sharp.svg +1 -0
  694. package/dist/ionic/svg/recording.svg +1 -0
  695. package/dist/ionic/svg/refresh-circle-outline.svg +1 -0
  696. package/dist/ionic/svg/refresh-circle-sharp.svg +1 -0
  697. package/dist/ionic/svg/refresh-circle.svg +1 -0
  698. package/dist/ionic/svg/refresh-outline.svg +1 -0
  699. package/dist/ionic/svg/refresh-sharp.svg +1 -0
  700. package/dist/ionic/svg/refresh.svg +1 -0
  701. package/dist/ionic/svg/reload-circle-outline.svg +1 -0
  702. package/dist/ionic/svg/reload-circle-sharp.svg +1 -0
  703. package/dist/ionic/svg/reload-circle.svg +1 -0
  704. package/dist/ionic/svg/reload-outline.svg +1 -0
  705. package/dist/ionic/svg/reload-sharp.svg +1 -0
  706. package/dist/ionic/svg/reload.svg +1 -0
  707. package/dist/ionic/svg/remove-circle-outline.svg +1 -0
  708. package/dist/ionic/svg/remove-circle-sharp.svg +1 -0
  709. package/dist/ionic/svg/remove-circle.svg +1 -0
  710. package/dist/ionic/svg/remove-outline.svg +1 -0
  711. package/dist/ionic/svg/remove-sharp.svg +1 -0
  712. package/dist/ionic/svg/remove.svg +1 -0
  713. package/dist/ionic/svg/reorder-four-outline.svg +1 -0
  714. package/dist/ionic/svg/reorder-four-sharp.svg +1 -0
  715. package/dist/ionic/svg/reorder-four.svg +1 -0
  716. package/dist/ionic/svg/reorder-three-outline.svg +1 -0
  717. package/dist/ionic/svg/reorder-three-sharp.svg +1 -0
  718. package/dist/ionic/svg/reorder-three.svg +1 -0
  719. package/dist/ionic/svg/reorder-two-outline.svg +1 -0
  720. package/dist/ionic/svg/reorder-two-sharp.svg +1 -0
  721. package/dist/ionic/svg/reorder-two.svg +1 -0
  722. package/dist/ionic/svg/repeat-outline.svg +1 -0
  723. package/dist/ionic/svg/repeat-sharp.svg +1 -0
  724. package/dist/ionic/svg/repeat.svg +1 -0
  725. package/dist/ionic/svg/resize-outline.svg +1 -0
  726. package/dist/ionic/svg/resize-sharp.svg +1 -0
  727. package/dist/ionic/svg/resize.svg +1 -0
  728. package/dist/ionic/svg/restaurant-outline.svg +1 -0
  729. package/dist/ionic/svg/restaurant-sharp.svg +1 -0
  730. package/dist/ionic/svg/restaurant.svg +1 -0
  731. package/dist/ionic/svg/return-down-back-outline.svg +1 -0
  732. package/dist/ionic/svg/return-down-back-sharp.svg +1 -0
  733. package/dist/ionic/svg/return-down-back.svg +1 -0
  734. package/dist/ionic/svg/return-down-forward-outline.svg +1 -0
  735. package/dist/ionic/svg/return-down-forward-sharp.svg +1 -0
  736. package/dist/ionic/svg/return-down-forward.svg +1 -0
  737. package/dist/ionic/svg/return-up-back-outline.svg +1 -0
  738. package/dist/ionic/svg/return-up-back-sharp.svg +1 -0
  739. package/dist/ionic/svg/return-up-back.svg +1 -0
  740. package/dist/ionic/svg/return-up-forward-outline.svg +1 -0
  741. package/dist/ionic/svg/return-up-forward-sharp.svg +1 -0
  742. package/dist/ionic/svg/return-up-forward.svg +1 -0
  743. package/dist/ionic/svg/ribbon-outline.svg +1 -0
  744. package/dist/ionic/svg/ribbon-sharp.svg +1 -0
  745. package/dist/ionic/svg/ribbon.svg +1 -0
  746. package/dist/ionic/svg/rocket-outline.svg +1 -0
  747. package/dist/ionic/svg/rocket-sharp.svg +1 -0
  748. package/dist/ionic/svg/rocket.svg +1 -0
  749. package/dist/ionic/svg/rose-outline.svg +1 -0
  750. package/dist/ionic/svg/rose-sharp.svg +1 -0
  751. package/dist/ionic/svg/rose.svg +1 -0
  752. package/dist/ionic/svg/sad-outline.svg +1 -0
  753. package/dist/ionic/svg/sad-sharp.svg +1 -0
  754. package/dist/ionic/svg/sad.svg +1 -0
  755. package/dist/ionic/svg/save-outline.svg +1 -0
  756. package/dist/ionic/svg/save-sharp.svg +1 -0
  757. package/dist/ionic/svg/save.svg +1 -0
  758. package/dist/ionic/svg/scale-outline.svg +1 -0
  759. package/dist/ionic/svg/scale-sharp.svg +1 -0
  760. package/dist/ionic/svg/scale.svg +1 -0
  761. package/dist/ionic/svg/scan-circle-outline.svg +1 -0
  762. package/dist/ionic/svg/scan-circle-sharp.svg +1 -0
  763. package/dist/ionic/svg/scan-circle.svg +1 -0
  764. package/dist/ionic/svg/scan-outline.svg +1 -0
  765. package/dist/ionic/svg/scan-sharp.svg +1 -0
  766. package/dist/ionic/svg/scan.svg +1 -0
  767. package/dist/ionic/svg/school-outline.svg +1 -0
  768. package/dist/ionic/svg/school-sharp.svg +1 -0
  769. package/dist/ionic/svg/school.svg +1 -0
  770. package/dist/ionic/svg/search-circle-outline.svg +1 -0
  771. package/dist/ionic/svg/search-circle-sharp.svg +1 -0
  772. package/dist/ionic/svg/search-circle.svg +1 -0
  773. package/dist/ionic/svg/search-outline.svg +1 -0
  774. package/dist/ionic/svg/search-sharp.svg +1 -0
  775. package/dist/ionic/svg/search.svg +1 -0
  776. package/dist/ionic/svg/send-outline.svg +1 -0
  777. package/dist/ionic/svg/send-sharp.svg +1 -0
  778. package/dist/ionic/svg/send.svg +1 -0
  779. package/dist/ionic/svg/server-outline.svg +1 -0
  780. package/dist/ionic/svg/server-sharp.svg +1 -0
  781. package/dist/ionic/svg/server.svg +1 -0
  782. package/dist/ionic/svg/settings-outline.svg +1 -0
  783. package/dist/ionic/svg/settings-sharp.svg +1 -0
  784. package/dist/ionic/svg/settings.svg +1 -0
  785. package/dist/ionic/svg/shapes-outline.svg +1 -0
  786. package/dist/ionic/svg/shapes-sharp.svg +1 -0
  787. package/dist/ionic/svg/shapes.svg +1 -0
  788. package/dist/ionic/svg/share-outline.svg +1 -0
  789. package/dist/ionic/svg/share-sharp.svg +1 -0
  790. package/dist/ionic/svg/share-social-outline.svg +1 -0
  791. package/dist/ionic/svg/share-social-sharp.svg +1 -0
  792. package/dist/ionic/svg/share-social.svg +1 -0
  793. package/dist/ionic/svg/share.svg +1 -0
  794. package/dist/ionic/svg/shield-checkmark-outline.svg +1 -0
  795. package/dist/ionic/svg/shield-checkmark-sharp.svg +1 -0
  796. package/dist/ionic/svg/shield-checkmark.svg +1 -0
  797. package/dist/ionic/svg/shield-half-outline.svg +1 -0
  798. package/dist/ionic/svg/shield-half-sharp.svg +1 -0
  799. package/dist/ionic/svg/shield-half.svg +1 -0
  800. package/dist/ionic/svg/shield-outline.svg +1 -0
  801. package/dist/ionic/svg/shield-sharp.svg +1 -0
  802. package/dist/ionic/svg/shield.svg +1 -0
  803. package/dist/ionic/svg/shirt-outline.svg +1 -0
  804. package/dist/ionic/svg/shirt-sharp.svg +1 -0
  805. package/dist/ionic/svg/shirt.svg +1 -0
  806. package/dist/ionic/svg/shuffle-outline.svg +1 -0
  807. package/dist/ionic/svg/shuffle-sharp.svg +1 -0
  808. package/dist/ionic/svg/shuffle.svg +1 -0
  809. package/dist/ionic/svg/skull-outline.svg +1 -0
  810. package/dist/ionic/svg/skull-sharp.svg +1 -0
  811. package/dist/ionic/svg/skull.svg +1 -0
  812. package/dist/ionic/svg/snow-outline.svg +1 -0
  813. package/dist/ionic/svg/snow-sharp.svg +1 -0
  814. package/dist/ionic/svg/snow.svg +1 -0
  815. package/dist/ionic/svg/sparkles-outline.svg +1 -0
  816. package/dist/ionic/svg/sparkles-sharp.svg +1 -0
  817. package/dist/ionic/svg/sparkles.svg +1 -0
  818. package/dist/ionic/svg/speedometer-outline.svg +1 -0
  819. package/dist/ionic/svg/speedometer-sharp.svg +1 -0
  820. package/dist/ionic/svg/speedometer.svg +1 -0
  821. package/dist/ionic/svg/square-outline.svg +1 -0
  822. package/dist/ionic/svg/square-sharp.svg +1 -0
  823. package/dist/ionic/svg/square.svg +1 -0
  824. package/dist/ionic/svg/star-half-outline.svg +1 -0
  825. package/dist/ionic/svg/star-half-sharp.svg +1 -0
  826. package/dist/ionic/svg/star-half.svg +1 -0
  827. package/dist/ionic/svg/star-outline.svg +1 -0
  828. package/dist/ionic/svg/star-sharp.svg +1 -0
  829. package/dist/ionic/svg/star.svg +1 -0
  830. package/dist/ionic/svg/stats-chart-outline.svg +1 -0
  831. package/dist/ionic/svg/stats-chart-sharp.svg +1 -0
  832. package/dist/ionic/svg/stats-chart.svg +1 -0
  833. package/dist/ionic/svg/stop-circle-outline.svg +1 -0
  834. package/dist/ionic/svg/stop-circle-sharp.svg +1 -0
  835. package/dist/ionic/svg/stop-circle.svg +1 -0
  836. package/dist/ionic/svg/stop-outline.svg +1 -0
  837. package/dist/ionic/svg/stop-sharp.svg +1 -0
  838. package/dist/ionic/svg/stop.svg +1 -0
  839. package/dist/ionic/svg/stopwatch-outline.svg +1 -0
  840. package/dist/ionic/svg/stopwatch-sharp.svg +1 -0
  841. package/dist/ionic/svg/stopwatch.svg +1 -0
  842. package/dist/ionic/svg/storefront-outline.svg +1 -0
  843. package/dist/ionic/svg/storefront-sharp.svg +1 -0
  844. package/dist/ionic/svg/storefront.svg +1 -0
  845. package/dist/ionic/svg/subway-outline.svg +1 -0
  846. package/dist/ionic/svg/subway-sharp.svg +1 -0
  847. package/dist/ionic/svg/subway.svg +1 -0
  848. package/dist/ionic/svg/sunny-outline.svg +1 -0
  849. package/dist/ionic/svg/sunny-sharp.svg +1 -0
  850. package/dist/ionic/svg/sunny.svg +1 -0
  851. package/dist/ionic/svg/swap-horizontal-outline.svg +1 -0
  852. package/dist/ionic/svg/swap-horizontal-sharp.svg +1 -0
  853. package/dist/ionic/svg/swap-horizontal.svg +1 -0
  854. package/dist/ionic/svg/swap-vertical-outline.svg +1 -0
  855. package/dist/ionic/svg/swap-vertical-sharp.svg +1 -0
  856. package/dist/ionic/svg/swap-vertical.svg +1 -0
  857. package/dist/ionic/svg/sync-circle-outline.svg +1 -0
  858. package/dist/ionic/svg/sync-circle-sharp.svg +1 -0
  859. package/dist/ionic/svg/sync-circle.svg +1 -0
  860. package/dist/ionic/svg/sync-outline.svg +1 -0
  861. package/dist/ionic/svg/sync-sharp.svg +1 -0
  862. package/dist/ionic/svg/sync.svg +1 -0
  863. package/dist/ionic/svg/tablet-landscape-outline.svg +1 -0
  864. package/dist/ionic/svg/tablet-landscape-sharp.svg +1 -0
  865. package/dist/ionic/svg/tablet-landscape.svg +1 -0
  866. package/dist/ionic/svg/tablet-portrait-outline.svg +1 -0
  867. package/dist/ionic/svg/tablet-portrait-sharp.svg +1 -0
  868. package/dist/ionic/svg/tablet-portrait.svg +1 -0
  869. package/dist/ionic/svg/telescope-outline.svg +1 -0
  870. package/dist/ionic/svg/telescope-sharp.svg +1 -0
  871. package/dist/ionic/svg/telescope.svg +1 -0
  872. package/dist/ionic/svg/tennisball-outline.svg +1 -0
  873. package/dist/ionic/svg/tennisball-sharp.svg +1 -0
  874. package/dist/ionic/svg/tennisball.svg +1 -0
  875. package/dist/ionic/svg/terminal-outline.svg +1 -0
  876. package/dist/ionic/svg/terminal-sharp.svg +1 -0
  877. package/dist/ionic/svg/terminal.svg +1 -0
  878. package/dist/ionic/svg/text-outline.svg +1 -0
  879. package/dist/ionic/svg/text-sharp.svg +1 -0
  880. package/dist/ionic/svg/text.svg +1 -0
  881. package/dist/ionic/svg/thermometer-outline.svg +1 -0
  882. package/dist/ionic/svg/thermometer-sharp.svg +1 -0
  883. package/dist/ionic/svg/thermometer.svg +1 -0
  884. package/dist/ionic/svg/thumbs-down-outline.svg +1 -0
  885. package/dist/ionic/svg/thumbs-down-sharp.svg +1 -0
  886. package/dist/ionic/svg/thumbs-down.svg +1 -0
  887. package/dist/ionic/svg/thumbs-up-outline.svg +1 -0
  888. package/dist/ionic/svg/thumbs-up-sharp.svg +1 -0
  889. package/dist/ionic/svg/thumbs-up.svg +1 -0
  890. package/dist/ionic/svg/thunderstorm-outline.svg +1 -0
  891. package/dist/ionic/svg/thunderstorm-sharp.svg +1 -0
  892. package/dist/ionic/svg/thunderstorm.svg +1 -0
  893. package/dist/ionic/svg/ticket-outline.svg +1 -0
  894. package/dist/ionic/svg/ticket-sharp.svg +1 -0
  895. package/dist/ionic/svg/ticket.svg +1 -0
  896. package/dist/ionic/svg/time-outline.svg +1 -0
  897. package/dist/ionic/svg/time-sharp.svg +1 -0
  898. package/dist/ionic/svg/time.svg +1 -0
  899. package/dist/ionic/svg/timer-outline.svg +1 -0
  900. package/dist/ionic/svg/timer-sharp.svg +1 -0
  901. package/dist/ionic/svg/timer.svg +1 -0
  902. package/dist/ionic/svg/today-outline.svg +1 -0
  903. package/dist/ionic/svg/today-sharp.svg +1 -0
  904. package/dist/ionic/svg/today.svg +1 -0
  905. package/dist/ionic/svg/toggle-outline.svg +1 -0
  906. package/dist/ionic/svg/toggle-sharp.svg +1 -0
  907. package/dist/ionic/svg/toggle.svg +1 -0
  908. package/dist/ionic/svg/trail-sign-outline.svg +1 -0
  909. package/dist/ionic/svg/trail-sign-sharp.svg +1 -0
  910. package/dist/ionic/svg/trail-sign.svg +1 -0
  911. package/dist/ionic/svg/train-outline.svg +1 -0
  912. package/dist/ionic/svg/train-sharp.svg +1 -0
  913. package/dist/ionic/svg/train.svg +1 -0
  914. package/dist/ionic/svg/transgender-outline.svg +1 -0
  915. package/dist/ionic/svg/transgender-sharp.svg +1 -0
  916. package/dist/ionic/svg/transgender.svg +1 -0
  917. package/dist/ionic/svg/trash-bin-outline.svg +1 -0
  918. package/dist/ionic/svg/trash-bin-sharp.svg +1 -0
  919. package/dist/ionic/svg/trash-bin.svg +1 -0
  920. package/dist/ionic/svg/trash-outline.svg +1 -0
  921. package/dist/ionic/svg/trash-sharp.svg +1 -0
  922. package/dist/ionic/svg/trash.svg +1 -0
  923. package/dist/ionic/svg/trending-down-outline.svg +1 -0
  924. package/dist/ionic/svg/trending-down-sharp.svg +1 -0
  925. package/dist/ionic/svg/trending-down.svg +1 -0
  926. package/dist/ionic/svg/trending-up-outline.svg +1 -0
  927. package/dist/ionic/svg/trending-up-sharp.svg +1 -0
  928. package/dist/ionic/svg/trending-up.svg +1 -0
  929. package/dist/ionic/svg/triangle-outline.svg +1 -0
  930. package/dist/ionic/svg/triangle-sharp.svg +1 -0
  931. package/dist/ionic/svg/triangle.svg +1 -0
  932. package/dist/ionic/svg/trophy-outline.svg +1 -0
  933. package/dist/ionic/svg/trophy-sharp.svg +1 -0
  934. package/dist/ionic/svg/trophy.svg +1 -0
  935. package/dist/ionic/svg/tv-outline.svg +1 -0
  936. package/dist/ionic/svg/tv-sharp.svg +1 -0
  937. package/dist/ionic/svg/tv.svg +1 -0
  938. package/dist/ionic/svg/umbrella-outline.svg +1 -0
  939. package/dist/ionic/svg/umbrella-sharp.svg +1 -0
  940. package/dist/ionic/svg/umbrella.svg +1 -0
  941. package/dist/ionic/svg/unlink-outline.svg +1 -0
  942. package/dist/ionic/svg/unlink-sharp.svg +1 -0
  943. package/dist/ionic/svg/unlink.svg +1 -0
  944. package/dist/ionic/svg/videocam-off-outline.svg +1 -0
  945. package/dist/ionic/svg/videocam-off-sharp.svg +1 -0
  946. package/dist/ionic/svg/videocam-off.svg +1 -0
  947. package/dist/ionic/svg/videocam-outline.svg +1 -0
  948. package/dist/ionic/svg/videocam-sharp.svg +1 -0
  949. package/dist/ionic/svg/videocam.svg +1 -0
  950. package/dist/ionic/svg/volume-high-outline.svg +1 -0
  951. package/dist/ionic/svg/volume-high-sharp.svg +1 -0
  952. package/dist/ionic/svg/volume-high.svg +1 -0
  953. package/dist/ionic/svg/volume-low-outline.svg +1 -0
  954. package/dist/ionic/svg/volume-low-sharp.svg +1 -0
  955. package/dist/ionic/svg/volume-low.svg +1 -0
  956. package/dist/ionic/svg/volume-medium-outline.svg +1 -0
  957. package/dist/ionic/svg/volume-medium-sharp.svg +1 -0
  958. package/dist/ionic/svg/volume-medium.svg +1 -0
  959. package/dist/ionic/svg/volume-mute-outline.svg +1 -0
  960. package/dist/ionic/svg/volume-mute-sharp.svg +1 -0
  961. package/dist/ionic/svg/volume-mute.svg +1 -0
  962. package/dist/ionic/svg/volume-off-outline.svg +1 -0
  963. package/dist/ionic/svg/volume-off-sharp.svg +1 -0
  964. package/dist/ionic/svg/volume-off.svg +1 -0
  965. package/dist/ionic/svg/walk-outline.svg +1 -0
  966. package/dist/ionic/svg/walk-sharp.svg +1 -0
  967. package/dist/ionic/svg/walk.svg +1 -0
  968. package/dist/ionic/svg/wallet-outline.svg +1 -0
  969. package/dist/ionic/svg/wallet-sharp.svg +1 -0
  970. package/dist/ionic/svg/wallet.svg +1 -0
  971. package/dist/ionic/svg/warning-outline.svg +1 -0
  972. package/dist/ionic/svg/warning-sharp.svg +1 -0
  973. package/dist/ionic/svg/warning.svg +1 -0
  974. package/dist/ionic/svg/watch-outline.svg +1 -0
  975. package/dist/ionic/svg/watch-sharp.svg +1 -0
  976. package/dist/ionic/svg/watch.svg +1 -0
  977. package/dist/ionic/svg/water-outline.svg +1 -0
  978. package/dist/ionic/svg/water-sharp.svg +1 -0
  979. package/dist/ionic/svg/water.svg +1 -0
  980. package/dist/ionic/svg/wifi-outline.svg +1 -0
  981. package/dist/ionic/svg/wifi-sharp.svg +1 -0
  982. package/dist/ionic/svg/wifi.svg +1 -0
  983. package/dist/ionic/svg/wine-outline.svg +1 -0
  984. package/dist/ionic/svg/wine-sharp.svg +1 -0
  985. package/dist/ionic/svg/wine.svg +1 -0
  986. package/dist/ionic/svg/woman-outline.svg +1 -0
  987. package/dist/ionic/svg/woman-sharp.svg +1 -0
  988. package/dist/ionic/svg/woman.svg +1 -0
  989. package/dist/types/components/accordion/accordion.d.ts +1 -1
  990. package/dist/types/components/action-sheet/action-sheet.d.ts +37 -0
  991. package/dist/types/components/content/content.d.ts +7 -0
  992. package/dist/types/components/fab-button/fab-button.d.ts +1 -1
  993. package/dist/types/components/item/item.d.ts +1 -1
  994. package/dist/types/components/modal/modal.d.ts +14 -0
  995. package/dist/types/components/popover/popover.d.ts +7 -0
  996. package/dist/types/components.d.ts +10 -6
  997. package/hydrate/index.js +363 -33
  998. package/hydrate/index.mjs +363 -33
  999. package/package.json +9 -5
  1000. package/dist/ionic/p-43ed1ef5.entry.js +0 -4
  1001. package/dist/ionic/p-510d86e1.entry.js +0 -4
  1002. package/dist/ionic/p-5fb517e4.entry.js +0 -4
  1003. package/dist/ionic/p-7380261c.entry.js +0 -4
  1004. package/dist/ionic/p-95bddd49.entry.js +0 -4
  1005. package/dist/ionic/p-D87hU-Ly.js +0 -4
  1006. package/dist/ionic/p-b57c6d3e.entry.js +0 -4
  1007. package/dist/ionic/p-e16b69e1.entry.js +0 -4
@@ -20,6 +20,7 @@ export class ActionSheet {
20
20
  this.delegateController = createDelegateController(this);
21
21
  this.lockController = createLockController();
22
22
  this.triggerController = createTriggerController();
23
+ this.hasRadioButtons = false;
23
24
  this.presented = false;
24
25
  /** @internal */
25
26
  this.hasController = false;
@@ -64,6 +65,19 @@ export class ActionSheet {
64
65
  }
65
66
  };
66
67
  }
68
+ buttonsChanged() {
69
+ const radioButtons = this.getRadioButtons();
70
+ this.hasRadioButtons = radioButtons.length > 0;
71
+ // Initialize activeRadioId when buttons change
72
+ if (this.hasRadioButtons) {
73
+ const checkedButton = radioButtons.find((b) => { var _a; return ((_a = b.htmlAttributes) === null || _a === void 0 ? void 0 : _a['aria-checked']) === 'true'; });
74
+ if (checkedButton) {
75
+ const allButtons = this.getButtons();
76
+ const checkedIndex = allButtons.indexOf(checkedButton);
77
+ this.activeRadioId = this.getButtonId(checkedButton, checkedIndex);
78
+ }
79
+ }
80
+ }
67
81
  onIsOpenChange(newValue, oldValue) {
68
82
  if (newValue === true && oldValue === false) {
69
83
  this.present();
@@ -144,11 +158,122 @@ export class ActionSheet {
144
158
  }
145
159
  return true;
146
160
  }
161
+ /**
162
+ * Get all buttons regardless of role.
163
+ */
147
164
  getButtons() {
148
165
  return this.buttons.map((b) => {
149
166
  return typeof b === 'string' ? { text: b } : b;
150
167
  });
151
168
  }
169
+ /**
170
+ * Get all radio buttons (buttons with role="radio").
171
+ */
172
+ getRadioButtons() {
173
+ return this.getButtons().filter((b) => {
174
+ var _a;
175
+ const role = (_a = b.htmlAttributes) === null || _a === void 0 ? void 0 : _a.role;
176
+ return role === 'radio' && !isCancel(role);
177
+ });
178
+ }
179
+ /**
180
+ * Handle radio button selection and update aria-checked state.
181
+ *
182
+ * @param button The radio button that was selected.
183
+ */
184
+ selectRadioButton(button) {
185
+ const buttonId = this.getButtonId(button);
186
+ // Set the active radio ID (this will trigger a re-render and update aria-checked)
187
+ this.activeRadioId = buttonId;
188
+ }
189
+ /**
190
+ * Get or generate an ID for a button.
191
+ *
192
+ * @param button The button for which to get the ID.
193
+ * @param index Optional index of the button in the buttons array.
194
+ * @returns The ID of the button.
195
+ */
196
+ getButtonId(button, index) {
197
+ if (button.id) {
198
+ return button.id;
199
+ }
200
+ const allButtons = this.getButtons();
201
+ const buttonIndex = index !== undefined ? index : allButtons.indexOf(button);
202
+ return `action-sheet-button-${this.overlayIndex}-${buttonIndex}`;
203
+ }
204
+ /**
205
+ * When the action sheet has radio buttons, we want to follow the
206
+ * keyboard navigation pattern for radio groups:
207
+ * - Arrow Down/Right: Move to the next radio button (wrap to first if at end)
208
+ * - Arrow Up/Left: Move to the previous radio button (wrap to last if at start)
209
+ * - Space/Enter: Select the focused radio button and trigger its handler
210
+ */
211
+ onKeydown(ev) {
212
+ // Only handle keyboard navigation if we have radio buttons
213
+ if (!this.hasRadioButtons || !this.presented) {
214
+ return;
215
+ }
216
+ const target = ev.target;
217
+ // Ignore if the target element is not within the action sheet or not a radio button
218
+ if (!this.el.contains(target) ||
219
+ !target.classList.contains('action-sheet-button') ||
220
+ target.getAttribute('role') !== 'radio') {
221
+ return;
222
+ }
223
+ // Get all radio button elements and filter out disabled ones
224
+ const radios = Array.from(this.el.querySelectorAll('.action-sheet-button[role="radio"]')).filter((el) => !el.disabled);
225
+ const currentIndex = radios.findIndex((radio) => radio.id === target.id);
226
+ if (currentIndex === -1) {
227
+ return;
228
+ }
229
+ const allButtons = this.getButtons();
230
+ const radioButtons = this.getRadioButtons();
231
+ /**
232
+ * Build a map of button element IDs to their ActionSheetButton
233
+ * config objects.
234
+ * This allows us to quickly look up which button config corresponds
235
+ * to a DOM element when handling keyboard navigation
236
+ * (e.g., whenuser presses Space/Enter or arrow keys).
237
+ * The key is the ID that was set on the DOM element during render,
238
+ * and the value is the ActionSheetButton config that contains the
239
+ * handler and other properties.
240
+ */
241
+ const buttonIdMap = new Map();
242
+ radioButtons.forEach((b) => {
243
+ const allIndex = allButtons.indexOf(b);
244
+ const buttonId = this.getButtonId(b, allIndex);
245
+ buttonIdMap.set(buttonId, b);
246
+ });
247
+ let nextEl;
248
+ if (['ArrowDown', 'ArrowRight'].includes(ev.key)) {
249
+ ev.preventDefault();
250
+ ev.stopPropagation();
251
+ nextEl = currentIndex === radios.length - 1 ? radios[0] : radios[currentIndex + 1];
252
+ }
253
+ else if (['ArrowUp', 'ArrowLeft'].includes(ev.key)) {
254
+ ev.preventDefault();
255
+ ev.stopPropagation();
256
+ nextEl = currentIndex === 0 ? radios[radios.length - 1] : radios[currentIndex - 1];
257
+ }
258
+ else if (ev.key === ' ' || ev.key === 'Enter') {
259
+ ev.preventDefault();
260
+ ev.stopPropagation();
261
+ const button = buttonIdMap.get(target.id);
262
+ if (button) {
263
+ this.selectRadioButton(button);
264
+ this.buttonClick(button);
265
+ }
266
+ return;
267
+ }
268
+ // Focus the next radio button
269
+ if (nextEl) {
270
+ const button = buttonIdMap.get(nextEl.id);
271
+ if (button) {
272
+ this.selectRadioButton(button);
273
+ nextEl.focus();
274
+ }
275
+ }
276
+ }
152
277
  connectedCallback() {
153
278
  prepareOverlay(this.el);
154
279
  this.triggerChanged();
@@ -165,6 +290,8 @@ export class ActionSheet {
165
290
  if (!((_a = this.htmlAttributes) === null || _a === void 0 ? void 0 : _a.id)) {
166
291
  setOverlayId(this.el);
167
292
  }
293
+ // Initialize activeRadioId for radio buttons
294
+ this.buttonsChanged();
168
295
  }
169
296
  componentDidLoad() {
170
297
  /**
@@ -202,19 +329,70 @@ export class ActionSheet {
202
329
  */
203
330
  this.triggerChanged();
204
331
  }
332
+ renderActionSheetButtons(filteredButtons) {
333
+ const mode = getIonMode(this);
334
+ const { activeRadioId } = this;
335
+ return filteredButtons.map((b, index) => {
336
+ var _a;
337
+ const isRadio = ((_a = b.htmlAttributes) === null || _a === void 0 ? void 0 : _a.role) === 'radio';
338
+ const buttonId = this.getButtonId(b, index);
339
+ const radioButtons = this.getRadioButtons();
340
+ const isActiveRadio = isRadio && buttonId === activeRadioId;
341
+ const isFirstRadio = isRadio && b === radioButtons[0];
342
+ // For radio buttons, set tabindex: 0 for the active one, -1 for others
343
+ // For non-radio buttons, use default tabindex (undefined, which means 0)
344
+ /**
345
+ * For radio buttons, set tabindex based on activeRadioId
346
+ * - If the button is the active radio, tabindex is 0
347
+ * - If no radio is active, the first radio button should have tabindex 0
348
+ * - All other radio buttons have tabindex -1
349
+ * For non-radio buttons, use default tabindex (undefined, which means 0)
350
+ */
351
+ let tabIndex;
352
+ if (isRadio) {
353
+ // Focus on the active radio button
354
+ if (isActiveRadio) {
355
+ tabIndex = 0;
356
+ }
357
+ else if (!activeRadioId && isFirstRadio) {
358
+ // No active radio, first radio gets focus
359
+ tabIndex = 0;
360
+ }
361
+ else {
362
+ // All other radios are not focusable
363
+ tabIndex = -1;
364
+ }
365
+ }
366
+ else {
367
+ tabIndex = undefined;
368
+ }
369
+ // For radio buttons, set aria-checked based on activeRadioId
370
+ // Otherwise, use the value from htmlAttributes if provided
371
+ const htmlAttrs = Object.assign({}, b.htmlAttributes);
372
+ if (isRadio) {
373
+ htmlAttrs['aria-checked'] = isActiveRadio ? 'true' : 'false';
374
+ }
375
+ return (h("button", Object.assign({}, htmlAttrs, { role: isRadio ? 'radio' : undefined, type: "button", id: buttonId, class: Object.assign(Object.assign({}, buttonClass(b)), { 'action-sheet-selected': isActiveRadio }), onClick: () => {
376
+ if (isRadio) {
377
+ this.selectRadioButton(b);
378
+ }
379
+ this.buttonClick(b);
380
+ }, disabled: b.disabled, tabIndex: tabIndex }), h("span", { class: "action-sheet-button-inner" }, b.icon && h("ion-icon", { icon: b.icon, "aria-hidden": "true", lazy: false, class: "action-sheet-icon" }), b.text), mode === 'md' && h("ion-ripple-effect", null)));
381
+ });
382
+ }
205
383
  render() {
206
- const { header, htmlAttributes, overlayIndex } = this;
384
+ const { header, htmlAttributes, overlayIndex, hasRadioButtons } = this;
207
385
  const mode = getIonMode(this);
208
386
  const allButtons = this.getButtons();
209
387
  const cancelButton = allButtons.find((b) => b.role === 'cancel');
210
388
  const buttons = allButtons.filter((b) => b.role !== 'cancel');
211
389
  const headerID = `action-sheet-${overlayIndex}-header`;
212
- return (h(Host, Object.assign({ key: '9fef156b2a1f09ca4a6c1fe1f37c374139bde03c', role: "dialog", "aria-modal": "true", "aria-labelledby": header !== undefined ? headerID : null, tabindex: "-1" }, htmlAttributes, { style: {
390
+ return (h(Host, Object.assign({ key: '173fcff5b1da7c33c267de4667591c946b8c8d03', role: "dialog", "aria-modal": "true", "aria-labelledby": header !== undefined ? headerID : null, tabindex: "-1" }, htmlAttributes, { style: {
213
391
  zIndex: `${20000 + this.overlayIndex}`,
214
- }, class: Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'action-sheet-translucent': this.translucent }), onIonActionSheetWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }), h("ion-backdrop", { key: '81cf3f7d19864e041813987b46d2d115b8466819', tappable: this.backdropDismiss }), h("div", { key: '791c6a976683646fc306a42c15c5078b6f06a45f', tabindex: "0", "aria-hidden": "true" }), h("div", { key: 'a350b489ef7852eab9dc2227ce6d92da27dd9bf9', class: "action-sheet-wrapper ion-overlay-wrapper", ref: (el) => (this.wrapperEl = el) }, h("div", { key: '69ba51ee13510c1a411d87cb4845b11b7302a36f', class: "action-sheet-container" }, h("div", { key: 'bded15b8306c36591e526f0f99e1eeabcbab3915', class: "action-sheet-group", ref: (el) => (this.groupEl = el) }, header !== undefined && (h("div", { key: '06b5147c0f6d9180fe8f12e75c9b4a0310226adc', id: headerID, class: {
392
+ }, class: Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'action-sheet-translucent': this.translucent }), onIonActionSheetWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }), h("ion-backdrop", { key: '521ede659f747864f6c974e09016436eceb7158c', tappable: this.backdropDismiss }), h("div", { key: '7a7946fc434bc444f16a70638f5e948c69d33fcd', tabindex: "0", "aria-hidden": "true" }), h("div", { key: 'bcff39a580489dbafa255842e57aa8602c6d0f18', class: "action-sheet-wrapper ion-overlay-wrapper", ref: (el) => (this.wrapperEl = el) }, h("div", { key: '84bba13ce14261f0f0daa3f9c77648c9e7f36e0e', class: "action-sheet-container" }, h("div", { key: 'd9c8ac404fd6719a7adf8cb36549f67616f9a0c4', class: "action-sheet-group", ref: (el) => (this.groupEl = el), role: hasRadioButtons ? 'radiogroup' : undefined }, header !== undefined && (h("div", { key: '180433a8ad03ef5c54728a1a8f34715b6921d658', id: headerID, class: {
215
393
  'action-sheet-title': true,
216
394
  'action-sheet-has-sub-title': this.subHeader !== undefined,
217
- } }, header, this.subHeader && h("div", { key: '54874362a75c679aba803bf4f8768f5404d2dd28', class: "action-sheet-sub-title" }, this.subHeader))), buttons.map((b) => (h("button", Object.assign({}, b.htmlAttributes, { type: "button", id: b.id, class: buttonClass(b), onClick: () => this.buttonClick(b), disabled: b.disabled }), h("span", { class: "action-sheet-button-inner" }, b.icon && h("ion-icon", { icon: b.icon, "aria-hidden": "true", lazy: false, class: "action-sheet-icon" }), b.text), mode === 'md' && h("ion-ripple-effect", null))))), cancelButton && (h("div", { key: '67b0de298eb424f3dea846a841b7a06d70e3930d', class: "action-sheet-group action-sheet-group-cancel" }, h("button", Object.assign({ key: 'e7e3f9a5495eea9b97dbf885ef36944f2e420eff' }, cancelButton.htmlAttributes, { type: "button", class: buttonClass(cancelButton), onClick: () => this.buttonClick(cancelButton) }), h("span", { key: 'f889d29ed6c3d14bbc1d805888351d87f5122377', class: "action-sheet-button-inner" }, cancelButton.icon && (h("ion-icon", { key: '7c05cf424b38c37fd40aaeb42a494387291571fb', icon: cancelButton.icon, "aria-hidden": "true", lazy: false, class: "action-sheet-icon" })), cancelButton.text), mode === 'md' && h("ion-ripple-effect", { key: 'bed927b477dc2708a5123ef560274fca9819b3d6' })))))), h("div", { key: 'c5df1b11dc15a93892d57065d3dd5fbe02e43b39', tabindex: "0", "aria-hidden": "true" })));
395
+ } }, header, this.subHeader && h("div", { key: '7138e79e61b1a8f42bc5a9175c57fa2f15d7ec5a', class: "action-sheet-sub-title" }, this.subHeader))), this.renderActionSheetButtons(buttons)), cancelButton && (h("div", { key: 'b617c722f5b8028d73ed34b69310f312c65f34a7', class: "action-sheet-group action-sheet-group-cancel" }, h("button", Object.assign({ key: 'd0dd876fc48815df3710413c201c0b445a8e16c0' }, cancelButton.htmlAttributes, { type: "button", class: buttonClass(cancelButton), onClick: () => this.buttonClick(cancelButton) }), h("span", { key: 'e7b960157cc6fc5fe92a12090b2be55e8ae072e4', class: "action-sheet-button-inner" }, cancelButton.icon && (h("ion-icon", { key: '05498ffc60cab911dbff0ecbc6168dea59ada9a5', icon: cancelButton.icon, "aria-hidden": "true", lazy: false, class: "action-sheet-icon" })), cancelButton.text), mode === 'md' && h("ion-ripple-effect", { key: '3d401346cea301be4ca03671f7370f6f4b0b6bde' })))))), h("div", { key: '971f3c5fcc07f36c28eb469a47ec0290c692e139', tabindex: "0", "aria-hidden": "true" })));
218
396
  }
219
397
  static get is() { return "ion-action-sheet"; }
220
398
  static get encapsulation() { return "scoped"; }
@@ -568,6 +746,11 @@ export class ActionSheet {
568
746
  }
569
747
  };
570
748
  }
749
+ static get states() {
750
+ return {
751
+ "activeRadioId": {}
752
+ };
753
+ }
571
754
  static get events() {
572
755
  return [{
573
756
  "method": "didPresent",
@@ -822,6 +1005,9 @@ export class ActionSheet {
822
1005
  static get elementRef() { return "el"; }
823
1006
  static get watchers() {
824
1007
  return [{
1008
+ "propName": "buttons",
1009
+ "methodName": "buttonsChanged"
1010
+ }, {
825
1011
  "propName": "isOpen",
826
1012
  "methodName": "onIsOpenChange"
827
1013
  }, {
@@ -829,6 +1015,15 @@ export class ActionSheet {
829
1015
  "methodName": "triggerChanged"
830
1016
  }];
831
1017
  }
1018
+ static get listeners() {
1019
+ return [{
1020
+ "name": "keydown",
1021
+ "method": "onKeydown",
1022
+ "target": undefined,
1023
+ "capture": false,
1024
+ "passive": false
1025
+ }];
1026
+ }
832
1027
  }
833
1028
  const buttonClass = (button) => {
834
1029
  return Object.assign({ 'action-sheet-button': true, 'ion-activatable': !button.disabled, 'ion-focusable': !button.disabled, [`action-sheet-${button.role}`]: button.role !== undefined }, getClassMap(button.cssClass));
@@ -229,7 +229,7 @@ export class Button {
229
229
  {
230
230
  type !== 'button' && this.renderHiddenButton();
231
231
  }
232
- return (h(Host, { key: 'ed82ea53705523f9afc5f1a9addff44cc6424f27', onClick: this.handleClick, "aria-disabled": disabled ? 'true' : null, class: createColorClasses(color, {
232
+ return (h(Host, { key: 'd148ed2332917f03fafd63dbbef10131df0ec5f0', onClick: this.handleClick, "aria-disabled": disabled ? 'true' : null, class: createColorClasses(color, {
233
233
  [mode]: true,
234
234
  [buttonType]: true,
235
235
  [`${buttonType}-${expand}`]: expand !== undefined,
@@ -244,7 +244,7 @@ export class Button {
244
244
  'button-disabled': disabled,
245
245
  'ion-activatable': true,
246
246
  'ion-focusable': true,
247
- }) }, h(TagType, Object.assign({ key: 'fadec13053469dd0405bbbc61b70ced568aa4826' }, attrs, { class: "button-native", part: "native", disabled: disabled, onFocus: this.onFocus, onBlur: this.onBlur }, inheritedAttributes), h("span", { key: '6bf0e5144fb1148002e88038522402b789689d2c', class: "button-inner" }, h("slot", { key: '25da0ca155cfa9e2754842c34f4fd09f576ac2d2', name: "icon-only", onSlotchange: this.slotChanged }), h("slot", { key: '51414065bb11953ec9d818f8d9353589bc9072c5', name: "start" }), h("slot", { key: 'c9b5f8842aeabd20628df2f4600f1257ea913d8d' }), h("slot", { key: '478dd3671c7be1909fc84e672f0fa8dfe6082263', name: "end" })), mode === 'md' && h("ion-ripple-effect", { key: 'e1d55f85a55144d743f58a5914cd116cb065fa8c', type: this.rippleType }))));
247
+ }) }, h(TagType, Object.assign({ key: '9da73c530017d510839a224bc4d5315bd44f60ed' }, attrs, { class: "button-native", part: "native", disabled: disabled, onFocus: this.onFocus, onBlur: this.onBlur }, inheritedAttributes), h("span", { key: '9046184db918cc53e90796860c43d1dfb7d1f85c', class: "button-inner" }, h("slot", { key: '9dd37ab124803e703567ddde4154c81ed1922be1', name: "icon-only", onSlotchange: this.slotChanged }), h("slot", { key: '01713ecf19c68be05072ffcd00ed7ff2d76c4551', name: "start" }), h("slot", { key: '121124874ba1357bc10ffaf4f7ed13803a02add9' }), h("slot", { key: '09317cf5ced153fbb94d4ebba69db858f9dbe570', name: "end" })), mode === 'md' && h("ion-ripple-effect", { key: '8bdd9d082f48582be903221b13b67095046cd9aa', type: this.rippleType }))));
248
248
  }
249
249
  static get is() { return "ion-button"; }
250
250
  static get encapsulation() { return "shadow"; }
@@ -643,6 +643,9 @@ export class Button {
643
643
  }, {
644
644
  "propName": "aria-label",
645
645
  "methodName": "onAriaChanged"
646
+ }, {
647
+ "propName": "aria-pressed",
648
+ "methodName": "onAriaChanged"
646
649
  }];
647
650
  }
648
651
  }
@@ -191,6 +191,15 @@ export class Content {
191
191
  }
192
192
  }
193
193
  }
194
+ /**
195
+ * Recalculate content dimensions. Called by overlays (e.g., popover) when
196
+ * sibling elements like headers or footers have finished rendering and their
197
+ * heights are available, ensuring accurate offset-top calculations.
198
+ * @internal
199
+ */
200
+ async recalculateDimensions() {
201
+ readTask(() => this.readDimensions());
202
+ }
194
203
  readDimensions() {
195
204
  const page = getPageElement(this.el);
196
205
  const top = Math.max(this.el.offsetTop, 0);
@@ -360,7 +369,7 @@ export class Content {
360
369
  const forceOverscroll = this.shouldForceOverscroll();
361
370
  const transitionShadow = mode === 'ios';
362
371
  this.resize();
363
- return (h(Host, Object.assign({ key: 'f2a24aa66dbf5c76f9d4b06f708eb73cadc239df', role: isMainContent ? 'main' : undefined, class: createColorClasses(this.color, {
372
+ return (h(Host, Object.assign({ key: 'cd8781f848d8dc926fe66f43d43c49564425a507', role: isMainContent ? 'main' : undefined, class: createColorClasses(this.color, {
364
373
  [mode]: true,
365
374
  'content-sizing': hostContext('ion-popover', this.el),
366
375
  overscroll: forceOverscroll,
@@ -368,12 +377,12 @@ export class Content {
368
377
  }), style: {
369
378
  '--offset-top': `${this.cTop}px`,
370
379
  '--offset-bottom': `${this.cBottom}px`,
371
- } }, inheritedAttributes), h("div", { key: '6480ca7648b278abb36477b3838bccbcd4995e2a', ref: (el) => (this.backgroundContentEl = el), id: "background-content", part: "background" }), fixedSlotPlacement === 'before' ? h("slot", { name: "fixed" }) : null, h("div", { key: '29a23b663f5f0215bb000820c01e1814c0d55985', class: {
380
+ } }, inheritedAttributes), h("div", { key: '95b112d7cae30f22ef778ceffb88edb4d941c170', ref: (el) => (this.backgroundContentEl = el), id: "background-content", part: "background" }), fixedSlotPlacement === 'before' ? h("slot", { name: "fixed" }) : null, h("div", { key: '2fdfcbc39fb66f11b6191911f2941c660f4c12e5', class: {
372
381
  'inner-scroll': true,
373
382
  'scroll-x': scrollX,
374
383
  'scroll-y': scrollY,
375
384
  overscroll: (scrollX || scrollY) && forceOverscroll,
376
- }, ref: (scrollEl) => (this.scrollEl = scrollEl), onScroll: this.scrollEvents ? (ev) => this.onScroll(ev) : undefined, part: "scroll" }, h("slot", { key: '0fe1bd05609a4b88ae2ce9addf5d5dc5dc1806f0' })), transitionShadow ? (h("div", { class: "transition-effect" }, h("div", { class: "transition-cover" }), h("div", { class: "transition-shadow" }))) : null, fixedSlotPlacement === 'after' ? h("slot", { name: "fixed" }) : null));
385
+ }, ref: (scrollEl) => (this.scrollEl = scrollEl), onScroll: this.scrollEvents ? (ev) => this.onScroll(ev) : undefined, part: "scroll" }, h("slot", { key: '6bc77e0054ec8e21635a7f2abfe0ca46e0962e03' })), transitionShadow ? (h("div", { class: "transition-effect" }, h("div", { class: "transition-cover" }), h("div", { class: "transition-shadow" }))) : null, fixedSlotPlacement === 'after' ? h("slot", { name: "fixed" }) : null));
377
386
  }
378
387
  static get is() { return "ion-content"; }
379
388
  static get encapsulation() { return "shadow"; }
@@ -603,6 +612,26 @@ export class Content {
603
612
  }
604
613
  static get methods() {
605
614
  return {
615
+ "recalculateDimensions": {
616
+ "complexType": {
617
+ "signature": "() => Promise<void>",
618
+ "parameters": [],
619
+ "references": {
620
+ "Promise": {
621
+ "location": "global",
622
+ "id": "global::Promise"
623
+ }
624
+ },
625
+ "return": "Promise<void>"
626
+ },
627
+ "docs": {
628
+ "text": "Recalculate content dimensions. Called by overlays (e.g., popover) when\nsibling elements like headers or footers have finished rendering and their\nheights are available, ensuring accurate offset-top calculations.",
629
+ "tags": [{
630
+ "name": "internal",
631
+ "text": undefined
632
+ }]
633
+ }
634
+ },
606
635
  "getScrollElement": {
607
636
  "complexType": {
608
637
  "signature": "() => Promise<HTMLElement>",
@@ -381,11 +381,11 @@ export class FabButton {
381
381
  "attribute": "size"
382
382
  },
383
383
  "closeIcon": {
384
- "type": "any",
384
+ "type": "string",
385
385
  "mutable": false,
386
386
  "complexType": {
387
- "original": "any",
388
- "resolved": "any",
387
+ "original": "string",
388
+ "resolved": "string",
389
389
  "references": {}
390
390
  },
391
391
  "required": false,
@@ -124,7 +124,7 @@ ion-header ion-toolbar:first-of-type {
124
124
  box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12);
125
125
  }
126
126
 
127
- .header-collapse-condense {
127
+ .header-md.header-collapse-condense {
128
128
  display: none;
129
129
  }
130
130
 
@@ -62,14 +62,14 @@ export class InputPasswordToggle {
62
62
  const isPasswordVisible = type === 'text';
63
63
  return (h(Host, { key: '91bc55664d496fe457518bd112865dd7811d0c17', class: createColorClasses(color, {
64
64
  [mode]: true,
65
- }) }, h("ion-button", { key: 'f3e436422110c9cb4d5c0b83500255b24ab4cdef', mode: mode, color: color, fill: "clear", shape: "round", "aria-checked": isPasswordVisible ? 'true' : 'false', "aria-label": isPasswordVisible ? 'Hide password' : 'Show password', role: "switch", type: "button", onPointerDown: (ev) => {
65
+ }) }, h("ion-button", { key: '6344d6838f5cdcba54c6bf4b592f036092044de0', mode: mode, color: color, fill: "clear", shape: "round", "aria-label": isPasswordVisible ? 'Hide password' : 'Show password', "aria-pressed": isPasswordVisible ? 'true' : 'false', type: "button", onPointerDown: (ev) => {
66
66
  /**
67
67
  * This prevents mobile browsers from
68
68
  * blurring the input when the password toggle
69
69
  * button is activated.
70
70
  */
71
71
  ev.preventDefault();
72
- }, onClick: this.togglePasswordVisibility }, h("ion-icon", { key: '5c8b121153f148f92aa7cba0447673a4f6f3ad1e', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? hidePasswordIcon : showPasswordIcon }))));
72
+ }, onClick: this.togglePasswordVisibility }, h("ion-icon", { key: 'a2bd9197c2635bf8cb155ff25ce022e7d7dc6d00', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? hidePasswordIcon : showPasswordIcon }))));
73
73
  }
74
74
  static get is() { return "ion-input-password-toggle"; }
75
75
  static get encapsulation() { return "shadow"; }
@@ -329,11 +329,11 @@ export class Item {
329
329
  "attribute": "detail"
330
330
  },
331
331
  "detailIcon": {
332
- "type": "any",
332
+ "type": "string",
333
333
  "mutable": false,
334
334
  "complexType": {
335
- "original": "any",
336
- "resolved": "any",
335
+ "original": "string",
336
+ "resolved": "string",
337
337
  "references": {}
338
338
  },
339
339
  "required": false,
@@ -463,7 +463,13 @@ export class Modal {
463
463
  };
464
464
  window.addEventListener(KEYBOARD_DID_OPEN, this.keyboardOpenCallback);
465
465
  }
466
- if (this.isSheetModal) {
466
+ /**
467
+ * Recalculate isSheetModal because framework bindings (e.g., Angular)
468
+ * may not have been applied when componentWillLoad ran.
469
+ */
470
+ const isSheetModal = this.breakpoints !== undefined && this.initialBreakpoint !== undefined;
471
+ this.isSheetModal = isSheetModal;
472
+ if (isSheetModal) {
467
473
  this.initSheetGesture();
468
474
  }
469
475
  else if (hasCardModal) {
@@ -545,6 +551,79 @@ export class Modal {
545
551
  this.gesture = gesture;
546
552
  this.moveSheetToBreakpoint = moveSheetToBreakpoint;
547
553
  this.gesture.enable(true);
554
+ /**
555
+ * When backdrop interaction is allowed, nested router outlets from child routes
556
+ * may block pointer events to parent content. Apply passthrough styles only when
557
+ * the modal was the sole content of a child route page.
558
+ * See https://github.com/ionic-team/ionic-framework/issues/30700
559
+ */
560
+ const backdropNotBlocking = this.showBackdrop === false || this.focusTrap === false || backdropBreakpoint > 0;
561
+ if (backdropNotBlocking) {
562
+ this.setupChildRoutePassthrough();
563
+ }
564
+ }
565
+ /**
566
+ * For sheet modals that allow background interaction, sets up pointer-events
567
+ * passthrough on child route page wrappers and nested router outlets.
568
+ */
569
+ setupChildRoutePassthrough() {
570
+ var _a;
571
+ // Cache the page parent for cleanup
572
+ this.cachedPageParent = this.getOriginalPageParent();
573
+ const pageParent = this.cachedPageParent;
574
+ // Skip ion-app (controller modals) and pages with visible sibling content next to the modal
575
+ if (!pageParent || pageParent.tagName === 'ION-APP') {
576
+ return;
577
+ }
578
+ const hasVisibleContent = Array.from(pageParent.children).some((child) => {
579
+ var _a;
580
+ return child !== this.el &&
581
+ !(child instanceof HTMLElement && window.getComputedStyle(child).display === 'none') &&
582
+ child.tagName !== 'TEMPLATE' &&
583
+ child.tagName !== 'SLOT' &&
584
+ !(child.nodeType === Node.TEXT_NODE && !((_a = child.textContent) === null || _a === void 0 ? void 0 : _a.trim()));
585
+ });
586
+ if (hasVisibleContent) {
587
+ return;
588
+ }
589
+ // Child route case: page only contained the modal
590
+ pageParent.classList.add('ion-page-overlay-passthrough');
591
+ // Also make nested router outlets passthrough
592
+ const routerOutlet = pageParent.parentElement;
593
+ if ((routerOutlet === null || routerOutlet === void 0 ? void 0 : routerOutlet.tagName) === 'ION-ROUTER-OUTLET' && ((_a = routerOutlet.parentElement) === null || _a === void 0 ? void 0 : _a.tagName) !== 'ION-APP') {
594
+ routerOutlet.style.setProperty('pointer-events', 'none');
595
+ routerOutlet.setAttribute('data-overlay-passthrough', 'true');
596
+ }
597
+ }
598
+ /**
599
+ * Finds the ion-page ancestor of the modal's original parent location.
600
+ */
601
+ getOriginalPageParent() {
602
+ if (!this.cachedOriginalParent) {
603
+ return null;
604
+ }
605
+ let pageParent = this.cachedOriginalParent;
606
+ while (pageParent && !pageParent.classList.contains('ion-page')) {
607
+ pageParent = pageParent.parentElement;
608
+ }
609
+ return pageParent;
610
+ }
611
+ /**
612
+ * Removes passthrough styles added by setupChildRoutePassthrough.
613
+ */
614
+ cleanupChildRoutePassthrough() {
615
+ const pageParent = this.cachedPageParent;
616
+ if (!pageParent) {
617
+ return;
618
+ }
619
+ pageParent.classList.remove('ion-page-overlay-passthrough');
620
+ const routerOutlet = pageParent.parentElement;
621
+ if (routerOutlet === null || routerOutlet === void 0 ? void 0 : routerOutlet.hasAttribute('data-overlay-passthrough')) {
622
+ routerOutlet.style.removeProperty('pointer-events');
623
+ routerOutlet.removeAttribute('data-overlay-passthrough');
624
+ }
625
+ // Clear the cached reference
626
+ this.cachedPageParent = undefined;
548
627
  }
549
628
  sheetOnDismiss() {
550
629
  /**
@@ -634,6 +713,7 @@ export class Modal {
634
713
  }
635
714
  this.cleanupViewTransitionListener();
636
715
  this.cleanupParentRemovalObserver();
716
+ this.cleanupChildRoutePassthrough();
637
717
  }
638
718
  this.currentBreakpoint = undefined;
639
719
  this.animation = undefined;
@@ -838,6 +918,17 @@ export class Modal {
838
918
  this.cachedOriginalParent.nodeType === Node.DOCUMENT_FRAGMENT_NODE) {
839
919
  return;
840
920
  }
921
+ /**
922
+ * Don't observe for controller-based modals or when the parent is the
923
+ * app root (document.body or ion-app). These parents won't be removed,
924
+ * and observing document.body with subtree: true causes performance
925
+ * issues with frameworks like Angular during change detection.
926
+ */
927
+ if (this.hasController ||
928
+ this.cachedOriginalParent === document.body ||
929
+ this.cachedOriginalParent.tagName === 'ION-APP') {
930
+ return;
931
+ }
841
932
  this.parentRemovalObserver = new MutationObserver((mutations) => {
842
933
  mutations.forEach((mutation) => {
843
934
  if (mutation.type === 'childList' && mutation.removedNodes.length > 0) {
@@ -879,20 +970,20 @@ export class Modal {
879
970
  const isCardModal = presentingElement !== undefined && mode === 'ios';
880
971
  const isHandleCycle = handleBehavior === 'cycle';
881
972
  const isSheetModalWithHandle = isSheetModal && showHandle;
882
- return (h(Host, Object.assign({ key: '9e9a7bd591eb17a225a00b4fa2e379e94601d17f', "no-router": true,
973
+ return (h(Host, Object.assign({ key: '9a75095a13de0cfc96f1fa69fd92777d25da8daa', "no-router": true,
883
974
  // Allow the modal to be navigable when the handle is focusable
884
975
  tabIndex: isHandleCycle && isSheetModalWithHandle ? 0 : -1 }, htmlAttributes, { style: {
885
976
  zIndex: `${20000 + this.overlayIndex}`,
886
- }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), h("ion-backdrop", { key: 'e5eae2c14f830f75e308fcd7f4c10c86fac5b962', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && h("div", { key: 'e268f9cd310c3cf4e051b5b92524ce4fb70d005e', class: "modal-shadow" }), h("div", Object.assign({ key: '9c380f36c18144c153077b15744d1c3346bce63e',
977
+ }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), h("ion-backdrop", { key: 'd02612d8063ef20f59f173ff47795f71cdaaf63e', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && h("div", { key: '708761b70a93e34c08faae079569f444c7416a4c', class: "modal-shadow" }), h("div", Object.assign({ key: 'a72226ff1a98229f9bfd9207b98fc57e02baa430',
887
978
  /*
888
979
  role and aria-modal must be used on the
889
980
  same element. They must also be set inside the
890
981
  shadow DOM otherwise ion-button will not be highlighted
891
982
  when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
892
983
  */
893
- role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (h("button", { key: '2d5ee6d5959d97309c306e8ce72eb0f2c19be144', class: "modal-handle",
984
+ role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (h("button", { key: '0547f32323882660221385d84d492929caa77c6b', class: "modal-handle",
894
985
  // Prevents the handle from receiving keyboard focus when it does not cycle
895
- 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) })), h("slot", { key: '5590434c35ea04c42fc006498bc189038e15a298', onSlotchange: this.onSlotChange }))));
986
+ 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) })), h("slot", { key: 'fccbd64518b6fa22f9e874deb6b4ba55d8d89c3b', onSlotchange: this.onSlotChange }))));
896
987
  }
897
988
  static get is() { return "ion-modal"; }
898
989
  static get encapsulation() { return "shadow"; }
@@ -1451,6 +1542,7 @@ export class Modal {
1451
1542
  }
1452
1543
  static get states() {
1453
1544
  return {
1545
+ "isSheetModal": {},
1454
1546
  "presented": {}
1455
1547
  };
1456
1548
  }