@ionic/core 8.8.20-dev.11787158518.168a2fea → 8.8.20-dev.11789504012.1a675914

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 (1221) 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-divider.d.ts +11 -0
  27. package/components/ion-divider.js +4 -0
  28. package/components/ion-fab-button.js +1 -1
  29. package/components/ion-fab-list.js +1 -1
  30. package/components/ion-fab.js +1 -1
  31. package/components/ion-footer.js +1 -1
  32. package/components/ion-gallery-item.d.ts +11 -0
  33. package/components/ion-gallery-item.js +4 -0
  34. package/components/ion-gallery.d.ts +11 -0
  35. package/components/ion-gallery.js +4 -0
  36. package/components/ion-grid.js +1 -1
  37. package/components/ion-header.js +1 -1
  38. package/components/ion-icon.js +1 -1
  39. package/components/ion-img.js +1 -1
  40. package/components/ion-infinite-scroll-content.js +1 -1
  41. package/components/ion-infinite-scroll.js +1 -1
  42. package/components/ion-input-otp.js +1 -1
  43. package/components/ion-input-password-toggle.js +1 -1
  44. package/components/ion-input.js +1 -1
  45. package/components/ion-item-divider.js +1 -1
  46. package/components/ion-item-group.js +1 -1
  47. package/components/ion-item-option.js +1 -1
  48. package/components/ion-item-options.js +1 -1
  49. package/components/ion-item-sliding.js +1 -1
  50. package/components/ion-item.js +1 -1
  51. package/components/ion-label.js +1 -1
  52. package/components/ion-list-header.js +1 -1
  53. package/components/ion-list.js +1 -1
  54. package/components/ion-loading.js +1 -1
  55. package/components/ion-menu-button.js +1 -1
  56. package/components/ion-menu-toggle.js +1 -1
  57. package/components/ion-menu.js +1 -1
  58. package/components/ion-modal.js +1 -1
  59. package/components/ion-nav-link.js +1 -1
  60. package/components/ion-nav.js +1 -1
  61. package/components/ion-note.js +1 -1
  62. package/components/ion-picker-column-option.js +1 -1
  63. package/components/ion-picker-column.js +1 -1
  64. package/components/ion-picker-legacy-column.d.ts +11 -0
  65. package/components/ion-picker-legacy-column.js +4 -0
  66. package/components/ion-picker-legacy.d.ts +11 -0
  67. package/components/ion-picker-legacy.js +4 -0
  68. package/components/ion-picker.js +1 -1
  69. package/components/ion-popover.js +1 -1
  70. package/components/ion-progress-bar.js +1 -1
  71. package/components/ion-radio-group.js +1 -1
  72. package/components/ion-radio.js +1 -1
  73. package/components/ion-range.js +1 -1
  74. package/components/ion-refresher-content.js +1 -1
  75. package/components/ion-refresher.js +1 -1
  76. package/components/ion-reorder-group.js +1 -1
  77. package/components/ion-reorder.js +1 -1
  78. package/components/ion-ripple-effect.js +1 -1
  79. package/components/ion-route-redirect.js +1 -1
  80. package/components/ion-route.js +1 -1
  81. package/components/ion-router-link.js +1 -1
  82. package/components/ion-router-outlet.js +1 -1
  83. package/components/ion-router.js +1 -1
  84. package/components/ion-row.js +1 -1
  85. package/components/ion-searchbar.js +1 -1
  86. package/components/ion-segment-button.js +1 -1
  87. package/components/ion-segment-content.js +1 -1
  88. package/components/ion-segment-view.js +1 -1
  89. package/components/ion-segment.js +1 -1
  90. package/components/ion-select-modal.js +1 -1
  91. package/components/ion-select-option.js +1 -1
  92. package/components/ion-select-popover.js +1 -1
  93. package/components/ion-select.js +1 -1
  94. package/components/ion-skeleton-text.js +1 -1
  95. package/components/ion-spinner.js +1 -1
  96. package/components/ion-split-pane.js +1 -1
  97. package/components/ion-tab-bar.js +1 -1
  98. package/components/ion-tab-button.js +1 -1
  99. package/components/ion-tab.js +1 -1
  100. package/components/ion-tabs.js +1 -1
  101. package/components/ion-text.js +1 -1
  102. package/components/ion-textarea.js +1 -1
  103. package/components/ion-thumbnail.js +1 -1
  104. package/components/ion-title.js +1 -1
  105. package/components/ion-toast.js +1 -1
  106. package/components/ion-toggle.js +1 -1
  107. package/components/ion-toolbar.js +1 -1
  108. package/components/p-0MMiHJhx.js +4 -0
  109. package/components/p-0rXxxCTt.js +4 -0
  110. package/components/{p-DwpKZ6rl.js → p-B2SvA6NE.js} +1 -1
  111. package/components/p-B4GJERAm.js +4 -0
  112. package/components/p-B9_sPaDw.js +4 -0
  113. package/components/p-BE21dB_a.js +4 -0
  114. package/components/p-BJyeT56g.js +4 -0
  115. package/components/p-BTBa_wH7.js +4 -0
  116. package/components/p-BTEOs1at.js +4 -0
  117. package/components/p-BU8Blvqg.js +4 -0
  118. package/components/p-BXXTyrCp.js +4 -0
  119. package/components/p-BXjGM4gW.js +4 -0
  120. package/components/p-BXuZo5-p.js +4 -0
  121. package/components/p-BYRVyMu9.js +4 -0
  122. package/components/{p-ryyf_ItD.js → p-BZwQa9ey.js} +1 -1
  123. package/components/p-BZxBDeEU.js +4 -0
  124. package/components/p-BcWO94Sl.js +4 -0
  125. package/components/p-BjW8SOqw.js +4 -0
  126. package/components/p-Br6q6Rgq.js +4 -0
  127. package/components/p-BwKpO3Is.js +4 -0
  128. package/components/p-BwzRqsq1.js +4 -0
  129. package/components/p-C-cw-bM-.js +4 -0
  130. package/components/p-C0K6CGg9.js +4 -0
  131. package/components/p-C2J-Hvv3.js +4 -0
  132. package/components/p-C3ydXg9O.js +4 -0
  133. package/components/p-C5Bnq_Hm.js +4 -0
  134. package/components/p-C5JYXyPD.js +4 -0
  135. package/components/p-C898H5L0.js +4 -0
  136. package/components/p-C8kcgEG7.js +4 -0
  137. package/components/p-CEz0vNHD.js +4 -0
  138. package/components/p-CH8ypgvS.js +4 -0
  139. package/components/{p-CMLAwl_N.js → p-CKLXmqy1.js} +1 -1
  140. package/components/p-CMtmHGrE.js +4 -0
  141. package/components/p-CNlz8OTE.js +4 -0
  142. package/components/p-CODBQrPj.js +4 -0
  143. package/components/p-CToV3-ig.js +4 -0
  144. package/components/p-CV7PNBGr.js +4 -0
  145. package/components/p-CVYFPBs-.js +4 -0
  146. package/components/p-CgbD1udy.js +4 -0
  147. package/components/p-CjlmHeGM.js +4 -0
  148. package/components/p-ClTdIlic.js +4 -0
  149. package/components/p-CstXr-x9.js +4 -0
  150. package/components/{p-DzRT60Tw.js → p-Cu8FoYIJ.js} +1 -1
  151. package/components/p-CxhjkdQ_.js +4 -0
  152. package/components/p-D0Iqw6OZ.js +4 -0
  153. package/components/p-D12Xsfh7.js +4 -0
  154. package/components/p-DExJ63jR.js +4 -0
  155. package/components/p-DHvfufkW.js +4 -0
  156. package/components/p-DRUGmlKi.js +4 -0
  157. package/components/p-DYq-5riI.js +4 -0
  158. package/components/p-DaJxRxSQ.js +4 -0
  159. package/components/p-Db3A3kHi.js +4 -0
  160. package/components/p-Df6AAcu8.js +4 -0
  161. package/components/p-Dh1f5tAK.js +4 -0
  162. package/components/{p-63OhffQv.js → p-Di8NbWfs.js} +1 -1
  163. package/components/p-DqkLOArC.js +4 -0
  164. package/components/p-DriGEn08.js +4 -0
  165. package/components/p-DylrHLJF.js +4 -0
  166. package/components/p-WeNgVmOy.js +4 -0
  167. package/components/p-Wn4ujuPW.js +4 -0
  168. package/components/p-X6YgGSBf.js +4 -0
  169. package/components/p-dLA3JnNJ.js +4 -0
  170. package/components/p-eRqVSlkn.js +4 -0
  171. package/components/p-fUXE2zLc.js +4 -0
  172. package/components/p-o8OKV5aD.js +4 -0
  173. package/components/p-pztWcmzj.js +4 -0
  174. package/components/p-vXpMhGrs.js +4 -0
  175. package/css/core.css +1 -1
  176. package/css/core.css.map +1 -1
  177. package/css/display.css +1 -1
  178. package/css/display.css.map +1 -1
  179. package/css/flex-utils.css +1 -1
  180. package/css/flex-utils.css.map +1 -1
  181. package/css/float-elements.css.map +1 -1
  182. package/css/global.bundle.css.map +1 -1
  183. package/css/ionic/bundle.ionic.css +1 -0
  184. package/css/ionic/bundle.ionic.css.map +1 -0
  185. package/css/ionic/core.ionic.css +1 -0
  186. package/css/ionic/core.ionic.css.map +1 -0
  187. package/css/ionic/global.bundle.ionic.css +1 -0
  188. package/css/ionic/global.bundle.ionic.css.map +1 -0
  189. package/css/ionic/ionic-swiper.ionic.css +1 -0
  190. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  191. package/css/ionic/link.ionic.css +1 -0
  192. package/css/ionic/link.ionic.css.map +1 -0
  193. package/css/ionic/structure.ionic.css +1 -0
  194. package/css/ionic/structure.ionic.css.map +1 -0
  195. package/css/ionic/typography.ionic.css +1 -0
  196. package/css/ionic/typography.ionic.css.map +1 -0
  197. package/css/ionic/utils.bundle.ionic.css +1 -0
  198. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  199. package/css/ionic-swiper.css +1 -1
  200. package/css/ionic-swiper.css.map +1 -1
  201. package/css/ionic.bundle.css +1 -1
  202. package/css/ionic.bundle.css.map +1 -1
  203. package/css/normalize.css.map +1 -1
  204. package/css/padding.css.map +1 -1
  205. package/css/palettes/dark.always.css.map +1 -1
  206. package/css/palettes/dark.class.css.map +1 -1
  207. package/css/palettes/dark.system.css.map +1 -1
  208. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  209. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  210. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  211. package/css/palettes/high-contrast.always.css.map +1 -1
  212. package/css/palettes/high-contrast.class.css.map +1 -1
  213. package/css/palettes/high-contrast.system.css.map +1 -1
  214. package/css/structure.css.map +1 -1
  215. package/css/text-alignment.css.map +1 -1
  216. package/css/text-transformation.css.map +1 -1
  217. package/css/typography.css.map +1 -1
  218. package/css/utils.bundle.css +1 -1
  219. package/css/utils.bundle.css.map +1 -1
  220. package/dist/cjs/{animation-C0mOHzej.js → animation-CxRPIayb.js} +6 -6
  221. package/dist/cjs/{app-globals-BREG4twP.js → app-globals-BwvlV6g7.js} +1 -1
  222. package/dist/cjs/{button-active-CVMevT9a.js → button-active-qCQDwE2m.js} +3 -3
  223. package/dist/cjs/{capacitor-DmA66EwP.js → capacitor-CRl0exFC.js} +3 -3
  224. package/dist/cjs/clear-button-press-controller-C7B9kyMa.js +45 -0
  225. package/dist/cjs/{config-CjUbvdPW.js → config-DWdFbSNK.js} +4 -5
  226. package/dist/cjs/{dir-zwDPRE5K.js → dir-DD0jPVH3.js} +3 -2
  227. package/dist/cjs/{focus-visible-CCvKiLh3.js → focus-visible-BIj-I3-C.js} +24 -0
  228. package/dist/cjs/{format-pp0Du3K-.js → format-COAsdjOc.js} +30 -40
  229. package/dist/cjs/{framework-delegate-Dfo5XsGv.js → framework-delegate-IvkF1VuM.js} +10 -6
  230. package/dist/cjs/{gesture-controller-BDUH7687.js → gesture-controller-dtqlP_q4.js} +8 -15
  231. package/dist/cjs/{haptic-Ch-X4gRx.js → haptic-DG25gZzb.js} +4 -3
  232. package/dist/cjs/{helpers-YPQybDph.js → helpers-Dhimwhpn.js} +74 -7
  233. package/dist/cjs/{index-DwlRtFZe.js → index-BJ2-LydH.js} +3 -9
  234. package/dist/cjs/{index-zVCah4Uz.js → index-Bsq0SbXc.js} +2 -2
  235. package/dist/cjs/{index-uvry__L4.js → index-C1knGA9x.js} +65 -33
  236. package/dist/cjs/{index-wOmugbdg.js → index-CxDnX7hd.js} +2 -0
  237. package/dist/cjs/{index-DXsPSne6.js → index-DhDV4RxJ.js} +16 -15
  238. package/dist/cjs/{index-BLdJCcJY.js → index-DuleInoh.js} +5 -5
  239. package/dist/cjs/{index-B7zJsYWS.js → index-YYUVCfP-.js} +3 -3
  240. package/dist/cjs/{index-DDg31ZF5.js → index-yon1HGB7.js} +10 -9
  241. package/dist/cjs/index.cjs.js +18 -18
  242. package/dist/cjs/{input-shims-Cbu1fcye.js → input-shims-BgJcHtqI.js} +23 -20
  243. package/dist/cjs/input.utils--RmR5lVe.js +150 -0
  244. package/dist/cjs/ion-accordion_2.cjs.entry.js +376 -376
  245. package/dist/cjs/ion-action-sheet.cjs.entry.js +87 -179
  246. package/dist/cjs/ion-alert.cjs.entry.js +126 -251
  247. package/dist/cjs/ion-app_8.cjs.entry.js +608 -461
  248. package/dist/cjs/ion-avatar_3.cjs.entry.js +125 -19
  249. package/dist/cjs/ion-back-button.cjs.entry.js +49 -65
  250. package/dist/cjs/ion-backdrop.cjs.entry.js +22 -23
  251. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +157 -210
  252. package/dist/cjs/ion-button_2.cjs.entry.js +118 -153
  253. package/dist/cjs/ion-card_5.cjs.entry.js +80 -110
  254. package/dist/cjs/ion-checkbox.cjs.entry.js +134 -160
  255. package/dist/cjs/ion-chip.cjs.entry.js +56 -21
  256. package/dist/cjs/ion-col_3.cjs.entry.js +61 -186
  257. package/dist/cjs/ion-datetime-button.cjs.entry.js +248 -256
  258. package/dist/cjs/ion-datetime_3.cjs.entry.js +3210 -0
  259. package/dist/cjs/ion-divider.cjs.entry.js +51 -0
  260. package/dist/cjs/ion-fab_3.cjs.entry.js +109 -155
  261. package/dist/cjs/ion-gallery-item.cjs.entry.js +59 -0
  262. package/dist/cjs/ion-gallery.cjs.entry.js +608 -0
  263. package/dist/cjs/ion-img.cjs.entry.js +17 -35
  264. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +157 -109
  265. package/dist/cjs/ion-input-otp.cjs.entry.js +437 -435
  266. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +54 -40
  267. package/dist/cjs/ion-input.cjs.entry.js +305 -351
  268. package/dist/cjs/ion-item-option_3.cjs.entry.js +512 -137
  269. package/dist/cjs/ion-item_8.cjs.entry.js +186 -218
  270. package/dist/cjs/ion-loading.cjs.entry.js +69 -152
  271. package/dist/cjs/ion-menu_3.cjs.entry.js +136 -182
  272. package/dist/cjs/ion-modal.cjs.entry.js +501 -571
  273. package/dist/cjs/ion-nav_2.cjs.entry.js +164 -104
  274. package/dist/cjs/ion-picker-column-option.cjs.entry.js +40 -40
  275. package/dist/cjs/ion-picker-column.cjs.entry.js +410 -422
  276. package/dist/cjs/ion-picker.cjs.entry.js +401 -406
  277. package/dist/cjs/ion-popover.cjs.entry.js +212 -324
  278. package/dist/cjs/ion-progress-bar.cjs.entry.js +48 -36
  279. package/dist/cjs/ion-radio_2.cjs.entry.js +162 -217
  280. package/dist/cjs/ion-range.cjs.entry.js +251 -309
  281. package/dist/cjs/ion-refresher_2.cjs.entry.js +127 -175
  282. package/dist/cjs/ion-reorder_2.cjs.entry.js +47 -60
  283. package/dist/cjs/ion-ripple-effect.cjs.entry.js +26 -18
  284. package/dist/cjs/ion-route_4.cjs.entry.js +76 -179
  285. package/dist/cjs/ion-searchbar.cjs.entry.js +305 -308
  286. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  287. package/dist/cjs/ion-segment-view.cjs.entry.js +27 -28
  288. package/dist/cjs/ion-segment_2.cjs.entry.js +141 -177
  289. package/dist/cjs/ion-select-modal.cjs.entry.js +71 -50
  290. package/dist/cjs/ion-select_3.cjs.entry.js +416 -507
  291. package/dist/cjs/ion-spinner.cjs.entry.js +36 -28
  292. package/dist/cjs/ion-split-pane.cjs.entry.js +25 -34
  293. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +180 -117
  294. package/dist/cjs/ion-tab_2.cjs.entry.js +30 -55
  295. package/dist/cjs/ion-text.cjs.entry.js +7 -13
  296. package/dist/cjs/ion-textarea.cjs.entry.js +310 -303
  297. package/dist/cjs/ion-toast.cjs.entry.js +170 -265
  298. package/dist/cjs/ion-toggle.cjs.entry.js +172 -184
  299. package/dist/cjs/ionic-global-DYLhJaw7.js +519 -0
  300. package/dist/cjs/ionic.cjs.js +4 -4
  301. package/dist/cjs/{ios.transition-zTmJz8T-.js → ios.transition-Blgf-vZU.js} +21 -15
  302. package/dist/cjs/{item-multiple-inputs-BdYSbfKN.js → item-multiple-inputs-DKn76MYO.js} +1 -1
  303. package/dist/cjs/{keyboard-cHxZlTyz.js → keyboard-BgioTbwQ.js} +3 -3
  304. package/dist/cjs/{keyboard-Cix5TVkD.js → keyboard-Otnp8OQI.js} +5 -4
  305. package/dist/cjs/loader.cjs.js +4 -4
  306. package/dist/cjs/{md.transition-nb_4pUXu.js → md.transition-ClgvbGfq.js} +11 -9
  307. package/dist/cjs/notch-controller-0hkmmSGo.js +155 -0
  308. package/dist/cjs/{overlay-control-label-D2sdL2O8.js → overlay-control-label-DnRLQR1t.js} +13 -11
  309. package/dist/cjs/{overlays-KaNVDNqC.js → overlays-Bxjqh2m3.js} +336 -60
  310. package/dist/cjs/scroll-hide-controller-qWMU5yOk.js +345 -0
  311. package/dist/cjs/{select-option-render-pULCGldr.js → select-option-render-BqJEK1N1.js} +4 -3
  312. package/dist/cjs/{status-tap-o9IIymsP.js → status-tap-ClA8u57t.js} +5 -4
  313. package/dist/cjs/{swipe-back-B7X9VOlH.js → swipe-back-4vY7mi8i.js} +6 -5
  314. package/dist/cjs/{theme-Bw0rpaNN.js → theme-IlOsGAz7.js} +26 -7
  315. package/dist/cjs/validity-QmuwEptc.js +51 -0
  316. package/dist/collection/collection-manifest.json +13 -1
  317. package/dist/collection/components/accordion/accordion.ionic.css +201 -0
  318. package/dist/collection/components/accordion/accordion.ios.css +73 -58
  319. package/dist/collection/components/accordion/accordion.js +331 -324
  320. package/dist/collection/components/accordion/accordion.md.css +67 -59
  321. package/dist/collection/components/accordion-group/accordion-group.ionic.css +93 -0
  322. package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
  323. package/dist/collection/components/accordion-group/accordion-group.js +69 -56
  324. package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
  325. package/dist/collection/components/action-sheet/action-sheet.ionic.css +494 -0
  326. package/dist/collection/components/action-sheet/action-sheet.ios.css +184 -54
  327. package/dist/collection/components/action-sheet/action-sheet.js +76 -166
  328. package/dist/collection/components/action-sheet/action-sheet.md.css +179 -55
  329. package/dist/collection/components/action-sheet/test/basic/fixture.js +0 -3
  330. package/dist/collection/components/alert/alert.ionic.css +787 -0
  331. package/dist/collection/components/alert/alert.ios.css +247 -54
  332. package/dist/collection/components/alert/alert.js +113 -236
  333. package/dist/collection/components/alert/alert.md.css +243 -56
  334. package/dist/collection/components/app/app.js +15 -86
  335. package/dist/collection/components/avatar/avatar.ionic.css +385 -0
  336. package/dist/collection/components/avatar/avatar.ios.css +7 -33
  337. package/dist/collection/components/avatar/avatar.js +120 -4
  338. package/dist/collection/components/avatar/avatar.md.css +51 -0
  339. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  340. package/dist/collection/components/back-button/back-button.js +45 -61
  341. package/dist/collection/components/back-button/back-button.md.css +60 -48
  342. package/dist/collection/components/backdrop/backdrop.ionic.css +109 -0
  343. package/dist/collection/components/backdrop/backdrop.ios.css +56 -19
  344. package/dist/collection/components/backdrop/backdrop.js +26 -22
  345. package/dist/collection/components/backdrop/backdrop.md.css +56 -19
  346. package/dist/collection/components/badge/badge.ionic.css +272 -0
  347. package/dist/collection/components/badge/badge.ios.css +137 -12
  348. package/dist/collection/components/badge/badge.js +145 -15
  349. package/dist/collection/components/badge/badge.md.css +122 -12
  350. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  351. package/dist/collection/components/breadcrumb/breadcrumb.js +60 -99
  352. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  353. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  354. package/dist/collection/components/breadcrumbs/breadcrumbs.js +99 -112
  355. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  356. package/dist/collection/components/button/button.ionic.css +644 -0
  357. package/dist/collection/components/button/button.ios.css +154 -46
  358. package/dist/collection/components/button/button.js +122 -157
  359. package/dist/collection/components/button/button.md.css +150 -50
  360. package/dist/collection/components/buttons/buttons.ionic.css +97 -0
  361. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  362. package/dist/collection/components/buttons/buttons.js +29 -21
  363. package/dist/collection/components/buttons/buttons.md.css +55 -3
  364. package/dist/collection/components/card/card.ionic.css +144 -0
  365. package/dist/collection/components/card/card.ios.css +65 -14
  366. package/dist/collection/components/card/card.js +61 -63
  367. package/dist/collection/components/card/card.md.css +65 -14
  368. package/dist/collection/components/card-content/card-content.ionic.css +89 -0
  369. package/dist/collection/components/card-content/card-content.ios.css +20 -35
  370. package/dist/collection/components/card-content/card-content.js +12 -10
  371. package/dist/collection/components/card-content/card-content.md.css +20 -35
  372. package/dist/collection/components/card-header/card-header.ionic.css +85 -0
  373. package/dist/collection/components/card-header/card-header.ios.css +27 -15
  374. package/dist/collection/components/card-header/card-header.js +20 -21
  375. package/dist/collection/components/card-header/card-header.md.css +27 -15
  376. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +144 -0
  377. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  378. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -14
  379. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  380. package/dist/collection/components/card-title/card-title.ios.css +73 -0
  381. package/dist/collection/components/card-title/card-title.js +11 -14
  382. package/dist/collection/components/card-title/card-title.md.css +73 -0
  383. package/dist/collection/components/checkbox/checkbox.ionic.css +536 -0
  384. package/dist/collection/components/checkbox/checkbox.ios.css +246 -115
  385. package/dist/collection/components/checkbox/checkbox.js +172 -157
  386. package/dist/collection/components/checkbox/checkbox.md.css +247 -116
  387. package/dist/collection/components/chip/chip.ionic.css +217 -0
  388. package/dist/collection/components/chip/chip.ios.css +67 -14
  389. package/dist/collection/components/chip/chip.js +116 -20
  390. package/dist/collection/components/chip/chip.md.css +67 -14
  391. package/dist/collection/components/col/col.css +192 -4
  392. package/dist/collection/components/col/col.js +212 -186
  393. package/dist/collection/components/content/content.css +47 -2
  394. package/dist/collection/components/content/content.js +78 -102
  395. package/dist/collection/components/datetime/datetime.ionic.css +703 -0
  396. package/dist/collection/components/datetime/datetime.ios.css +304 -148
  397. package/dist/collection/components/datetime/datetime.js +900 -1090
  398. package/dist/collection/components/datetime/datetime.md.css +294 -138
  399. package/dist/collection/components/datetime/utils/data.js +19 -18
  400. package/dist/collection/components/datetime/utils/format.js +11 -21
  401. package/dist/collection/components/datetime/utils/manipulation.js +8 -8
  402. package/dist/collection/components/datetime/utils/parse.js +10 -10
  403. package/dist/collection/components/datetime/utils/state.js +2 -8
  404. package/dist/collection/components/datetime/utils/validate.js +5 -4
  405. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -5
  406. package/dist/collection/components/datetime-button/datetime-button.js +246 -253
  407. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -5
  408. package/dist/collection/components/divider/divider.ionic.css +148 -0
  409. package/dist/collection/components/divider/divider.ios.css +87 -0
  410. package/dist/collection/components/divider/divider.js +94 -0
  411. package/dist/collection/components/divider/divider.md.css +87 -0
  412. package/dist/collection/components/fab/fab.css +25 -1
  413. package/dist/collection/components/fab/fab.js +22 -25
  414. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  415. package/dist/collection/components/fab-button/fab-button.js +79 -117
  416. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  417. package/dist/collection/components/fab-list/fab-list.css +12 -0
  418. package/dist/collection/components/fab-list/fab-list.js +20 -15
  419. package/dist/collection/components/footer/footer-interface.js +1 -0
  420. package/dist/collection/components/footer/footer.ios.css +33 -6
  421. package/dist/collection/components/footer/footer.js +151 -65
  422. package/dist/collection/components/footer/footer.md.css +40 -0
  423. package/dist/collection/components/gallery/gallery-constants.js +12 -0
  424. package/dist/collection/components/gallery/gallery-interface.js +1 -0
  425. package/dist/collection/components/gallery/gallery.css +15 -0
  426. package/dist/collection/components/gallery/gallery.js +679 -0
  427. package/dist/collection/components/gallery/test/utils.js +100 -0
  428. package/dist/collection/components/gallery-item/gallery-item.css +49 -0
  429. package/dist/collection/components/gallery-item/gallery-item.js +99 -0
  430. package/dist/collection/components/grid/grid.css +12 -0
  431. package/dist/collection/components/grid/grid.js +15 -9
  432. package/dist/collection/components/header/header-interface.js +1 -0
  433. package/dist/collection/components/header/header.ionic.css +250 -0
  434. package/dist/collection/components/header/header.ios.css +178 -133
  435. package/dist/collection/components/header/header.js +202 -70
  436. package/dist/collection/components/header/header.md.css +199 -9
  437. package/dist/collection/components/header/header.utils.js +6 -13
  438. package/dist/collection/components/img/img.js +16 -34
  439. package/dist/collection/components/infinite-scroll/infinite-scroll.js +164 -76
  440. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  441. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +19 -30
  442. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  443. package/dist/collection/components/input/input.ionic.css +891 -0
  444. package/dist/collection/components/input/input.ios.css +247 -191
  445. package/dist/collection/components/input/input.js +333 -357
  446. package/dist/collection/components/input/input.md.css +234 -285
  447. package/dist/collection/components/input-otp/input-otp.ionic.css +371 -0
  448. package/dist/collection/components/input-otp/input-otp.ios.css +105 -60
  449. package/dist/collection/components/input-otp/input-otp.js +437 -432
  450. package/dist/collection/components/input-otp/input-otp.md.css +105 -60
  451. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +78 -0
  452. package/dist/collection/components/input-password-toggle/input-password-toggle.js +51 -36
  453. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +61 -0
  454. package/dist/collection/components/item/item.ionic.css +496 -0
  455. package/dist/collection/components/item/item.ios.css +120 -80
  456. package/dist/collection/components/item/item.js +98 -113
  457. package/dist/collection/components/item/item.md.css +131 -79
  458. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  459. package/dist/collection/components/item-divider/item-divider.js +21 -23
  460. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  461. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  462. package/dist/collection/components/item-group/item-group.js +13 -7
  463. package/dist/collection/components/item-group/item-group.md.css +12 -0
  464. package/dist/collection/components/item-option/item-option.ionic.css +277 -0
  465. package/dist/collection/components/item-option/item-option.ios.css +136 -29
  466. package/dist/collection/components/item-option/item-option.js +92 -56
  467. package/dist/collection/components/item-option/item-option.md.css +136 -29
  468. package/dist/collection/components/item-options/item-options.ionic.css +221 -0
  469. package/dist/collection/components/item-options/item-options.ios.css +77 -34
  470. package/dist/collection/components/item-options/item-options.js +20 -17
  471. package/dist/collection/components/item-options/item-options.md.css +77 -34
  472. package/dist/collection/components/item-sliding/item-sliding.ionic.css +211 -0
  473. package/dist/collection/components/item-sliding/item-sliding.js +441 -61
  474. package/dist/collection/components/item-sliding/{item-sliding.css → item-sliding.native.css} +84 -9
  475. package/dist/collection/components/item-sliding/test/test.utils.js +13 -0
  476. package/dist/collection/components/label/label.ios.css +18 -0
  477. package/dist/collection/components/label/label.js +15 -32
  478. package/dist/collection/components/label/label.md.css +18 -0
  479. package/dist/collection/components/list/list.ionic.css +212 -0
  480. package/dist/collection/components/list/list.ios.css +54 -14
  481. package/dist/collection/components/list/list.js +55 -19
  482. package/dist/collection/components/list/list.md.css +56 -16
  483. package/dist/collection/components/list-header/list-header.ionic.css +190 -0
  484. package/dist/collection/components/list-header/list-header.ios.css +82 -38
  485. package/dist/collection/components/list-header/list-header.js +11 -18
  486. package/dist/collection/components/list-header/list-header.md.css +82 -38
  487. package/dist/collection/components/loading/loading.ios.css +13 -1
  488. package/dist/collection/components/loading/loading.js +62 -143
  489. package/dist/collection/components/loading/loading.md.css +13 -1
  490. package/dist/collection/components/menu/menu.ios.css +15 -3
  491. package/dist/collection/components/menu/menu.js +71 -108
  492. package/dist/collection/components/menu/menu.md.css +15 -3
  493. package/dist/collection/components/menu-button/menu-button.ionic.css +236 -0
  494. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  495. package/dist/collection/components/menu-button/menu-button.js +43 -38
  496. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  497. package/dist/collection/components/menu-toggle/menu-toggle.js +21 -25
  498. package/dist/collection/components/modal/animations/ionic.enter.js +40 -0
  499. package/dist/collection/components/modal/animations/ionic.leave.js +28 -0
  500. package/dist/collection/components/modal/animations/ios.enter.js +1 -1
  501. package/dist/collection/components/modal/animations/md.enter.js +1 -1
  502. package/dist/collection/components/modal/animations/sheet.js +8 -2
  503. package/dist/collection/components/modal/gestures/sheet.js +86 -32
  504. package/dist/collection/components/modal/gestures/swipe-to-close.js +3 -15
  505. package/dist/collection/components/modal/modal.ionic.css +255 -0
  506. package/dist/collection/components/modal/modal.ios.css +178 -70
  507. package/dist/collection/components/modal/modal.js +272 -404
  508. package/dist/collection/components/modal/modal.md.css +178 -70
  509. package/dist/collection/components/modal/safe-area-utils.js +7 -6
  510. package/dist/collection/components/modal/test/fixtures.js +0 -3
  511. package/dist/collection/components/nav/nav.css +7 -1
  512. package/dist/collection/components/nav/nav.js +256 -72
  513. package/dist/collection/components/nav/view-controller.js +1 -7
  514. package/dist/collection/components/nav-link/nav-link.js +14 -21
  515. package/dist/collection/components/note/note.ios.css +12 -0
  516. package/dist/collection/components/note/note.js +11 -14
  517. package/dist/collection/components/note/note.md.css +12 -0
  518. package/dist/collection/components/picker/picker.ios.css +15 -3
  519. package/dist/collection/components/picker/picker.js +398 -403
  520. package/dist/collection/components/picker/picker.md.css +15 -3
  521. package/dist/collection/components/picker-column/picker-column.css +9 -5
  522. package/dist/collection/components/picker-column/picker-column.js +409 -418
  523. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  524. package/dist/collection/components/picker-column-option/picker-column-option.js +42 -38
  525. package/dist/collection/components/picker-column-option/picker-column-option.md.css +7 -6
  526. package/dist/collection/components/picker-legacy/animations/ios.enter.js +27 -0
  527. package/dist/collection/components/picker-legacy/animations/ios.leave.js +23 -0
  528. package/dist/collection/components/picker-legacy/picker-interface.js +1 -0
  529. package/dist/collection/components/picker-legacy/picker.ios.css +312 -0
  530. package/dist/collection/components/picker-legacy/picker.js +891 -0
  531. package/dist/collection/components/picker-legacy/picker.md.css +299 -0
  532. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +243 -0
  533. package/dist/collection/components/picker-legacy-column/picker-column.js +422 -0
  534. package/dist/collection/components/picker-legacy-column/picker-column.md.css +234 -0
  535. package/dist/collection/components/picker-legacy-column/test/test.utils.js +43 -0
  536. package/dist/collection/components/popover/animations/ios.enter.js +2 -1
  537. package/dist/collection/components/popover/animations/md.enter.js +2 -1
  538. package/dist/collection/components/popover/popover.ionic.css +290 -0
  539. package/dist/collection/components/popover/popover.ios.css +15 -2
  540. package/dist/collection/components/popover/popover.js +199 -313
  541. package/dist/collection/components/popover/popover.md.css +15 -2
  542. package/dist/collection/components/popover/test/fixture.js +0 -1
  543. package/dist/collection/components/popover/utils.js +6 -4
  544. package/dist/collection/components/progress-bar/progress-bar.ionic.css +287 -0
  545. package/dist/collection/components/progress-bar/progress-bar.ios.css +48 -17
  546. package/dist/collection/components/progress-bar/progress-bar.js +65 -33
  547. package/dist/collection/components/progress-bar/progress-bar.md.css +48 -17
  548. package/dist/collection/components/radio/radio.ionic.css +422 -0
  549. package/dist/collection/components/radio/radio.ios.css +207 -102
  550. package/dist/collection/components/radio/radio.js +77 -108
  551. package/dist/collection/components/radio/radio.md.css +207 -102
  552. package/dist/collection/components/radio-group/radio-group.ionic.css +119 -0
  553. package/dist/collection/components/radio-group/radio-group.ios.css +43 -19
  554. package/dist/collection/components/radio-group/radio-group.js +113 -107
  555. package/dist/collection/components/radio-group/radio-group.md.css +43 -19
  556. package/dist/collection/components/radio-group/test/fixtures.js +0 -2
  557. package/dist/collection/components/range/range.ionic.css +567 -0
  558. package/dist/collection/components/range/range.ios.css +128 -85
  559. package/dist/collection/components/range/range.js +247 -305
  560. package/dist/collection/components/range/range.md.css +128 -85
  561. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  562. package/dist/collection/components/refresher/refresher.js +88 -117
  563. package/dist/collection/components/refresher/refresher.md.css +15 -2
  564. package/dist/collection/components/refresher-content/refresher-content.js +37 -47
  565. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  566. package/dist/collection/components/reorder/reorder.js +26 -7
  567. package/dist/collection/components/reorder/reorder.md.css +6 -0
  568. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  569. package/dist/collection/components/reorder-group/reorder-group.js +22 -47
  570. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  571. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +215 -0
  572. package/dist/collection/components/ripple-effect/ripple-effect.js +26 -17
  573. package/dist/collection/components/route/route.js +14 -39
  574. package/dist/collection/components/route-redirect/route-redirect.js +0 -31
  575. package/dist/collection/components/router/router.js +37 -37
  576. package/dist/collection/components/router/utils/dom.js +7 -25
  577. package/dist/collection/components/router/utils/matching.js +9 -7
  578. package/dist/collection/components/router/utils/parser.js +1 -1
  579. package/dist/collection/components/router/utils/path.js +1 -0
  580. package/dist/collection/components/router-link/router-link.css +8 -2
  581. package/dist/collection/components/router-link/router-link.js +19 -40
  582. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  583. package/dist/collection/components/router-outlet/router-outlet.js +25 -83
  584. package/dist/collection/components/row/row.css +16 -0
  585. package/dist/collection/components/row/row.js +9 -2
  586. package/dist/collection/components/searchbar/searchbar.ionic.css +622 -0
  587. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  588. package/dist/collection/components/searchbar/searchbar.js +356 -321
  589. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  590. package/dist/collection/components/segment/segment.ionic.css +115 -0
  591. package/dist/collection/components/segment/segment.ios.css +45 -2
  592. package/dist/collection/components/segment/segment.js +94 -126
  593. package/dist/collection/components/segment/segment.md.css +45 -2
  594. package/dist/collection/components/segment-button/segment-button.ionic.css +352 -0
  595. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  596. package/dist/collection/components/segment-button/segment-button.js +46 -49
  597. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  598. package/dist/collection/components/segment-content/segment-content.js +1 -1
  599. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  600. package/dist/collection/components/segment-view/segment-view.js +27 -28
  601. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  602. package/dist/collection/components/select/select.ionic.css +809 -0
  603. package/dist/collection/components/select/select.ios.css +351 -206
  604. package/dist/collection/components/select/select.js +431 -431
  605. package/dist/collection/components/select/select.md.css +383 -230
  606. package/dist/collection/components/select-modal/select-modal.ionic.css +257 -0
  607. package/dist/collection/components/select-modal/select-modal.ios.css +293 -45
  608. package/dist/collection/components/select-modal/select-modal.js +81 -37
  609. package/dist/collection/components/select-modal/select-modal.md.css +273 -43
  610. package/dist/collection/components/select-modal/test/fixtures.js +1 -8
  611. package/dist/collection/components/select-option/select-option.js +15 -48
  612. package/dist/collection/components/select-popover/select-popover.ionic.css +255 -0
  613. package/dist/collection/components/select-popover/select-popover.ios.css +188 -124
  614. package/dist/collection/components/select-popover/select-popover.js +37 -44
  615. package/dist/collection/components/select-popover/select-popover.md.css +228 -47
  616. package/dist/collection/components/select-popover/test/fixtures.js +1 -8
  617. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  618. package/dist/collection/components/skeleton-text/skeleton-text.js +15 -15
  619. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +78 -10
  620. package/dist/collection/components/spinner/spinner.js +55 -26
  621. package/dist/collection/components/spinner/spinner.native.css +199 -0
  622. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  623. package/dist/collection/components/split-pane/split-pane.js +28 -33
  624. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  625. package/dist/collection/components/tab/tab.js +10 -17
  626. package/dist/collection/components/tab-bar/tab-bar.ionic.css +249 -0
  627. package/dist/collection/components/tab-bar/tab-bar.ios.css +86 -43
  628. package/dist/collection/components/tab-bar/tab-bar.js +190 -44
  629. package/dist/collection/components/tab-bar/tab-bar.md.css +86 -43
  630. package/dist/collection/components/tab-button/tab-button.ionic.css +373 -0
  631. package/dist/collection/components/tab-button/tab-button.ios.css +171 -95
  632. package/dist/collection/components/tab-button/tab-button.js +74 -68
  633. package/dist/collection/components/tab-button/tab-button.md.css +137 -93
  634. package/dist/collection/components/tabs/tabs.css +7 -1
  635. package/dist/collection/components/tabs/tabs.js +23 -33
  636. package/dist/collection/components/text/text.css +6 -0
  637. package/dist/collection/components/text/text.js +7 -12
  638. package/dist/collection/components/textarea/textarea.ionic.css +898 -0
  639. package/dist/collection/components/textarea/textarea.ios.css +329 -221
  640. package/dist/collection/components/textarea/textarea.js +334 -302
  641. package/dist/collection/components/textarea/textarea.md.css +358 -231
  642. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  643. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  644. package/dist/collection/components/title/title.ionic.css +127 -0
  645. package/dist/collection/components/title/title.ios.css +32 -4
  646. package/dist/collection/components/title/title.js +13 -23
  647. package/dist/collection/components/title/title.md.css +39 -4
  648. package/dist/collection/components/toast/animations/utils.js +1 -1
  649. package/dist/collection/components/toast/toast.ionic.css +394 -0
  650. package/dist/collection/components/toast/toast.ios.css +84 -45
  651. package/dist/collection/components/toast/toast.js +178 -232
  652. package/dist/collection/components/toast/toast.md.css +84 -45
  653. package/dist/collection/components/toggle/toggle.ionic.css +512 -0
  654. package/dist/collection/components/toggle/toggle.ios.css +247 -127
  655. package/dist/collection/components/toggle/toggle.js +164 -175
  656. package/dist/collection/components/toggle/toggle.md.css +245 -127
  657. package/dist/collection/components/toolbar/test/image.svg +1 -0
  658. package/dist/collection/components/toolbar/toolbar.ionic.css +249 -0
  659. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  660. package/dist/collection/components/toolbar/toolbar.js +222 -25
  661. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  662. package/dist/collection/global/config.js +6 -4
  663. package/dist/collection/global/ionic-global.js +242 -20
  664. package/dist/collection/index.js +1 -1
  665. package/dist/collection/utils/animation/animation.js +3 -3
  666. package/dist/collection/utils/config.js +4 -5
  667. package/dist/collection/utils/css-value-validation.js +39 -0
  668. package/dist/collection/utils/focus-controller/index.js +1 -1
  669. package/dist/collection/utils/focus-trap.js +16 -5
  670. package/dist/collection/utils/focus-visible.js +22 -0
  671. package/dist/collection/utils/forms/clear-button-press-controller.js +40 -0
  672. package/dist/collection/utils/forms/index.js +1 -1
  673. package/dist/collection/utils/forms/validity.js +31 -0
  674. package/dist/collection/utils/framework-delegate.js +9 -5
  675. package/dist/collection/utils/gesture/gesture-controller.js +8 -15
  676. package/dist/collection/utils/gesture/index.js +2 -10
  677. package/dist/collection/utils/hardware-back-button.js +18 -3
  678. package/dist/collection/utils/helpers.js +72 -5
  679. package/dist/collection/utils/input-shims/hacks/scroll-assist.js +5 -4
  680. package/dist/collection/utils/input-shims/hacks/scroll-data.js +2 -1
  681. package/dist/collection/utils/keyboard/keyboard-controller.js +8 -6
  682. package/dist/collection/utils/keyboard/keyboard.js +1 -1
  683. package/dist/collection/utils/logging/index.js +4 -23
  684. package/dist/collection/utils/media.js +1 -0
  685. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  686. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  687. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  688. package/dist/collection/utils/menu-controller/index.js +2 -1
  689. package/dist/collection/utils/native/haptic.js +3 -2
  690. package/dist/collection/utils/native/keyboard.js +2 -2
  691. package/dist/collection/utils/native/status-bar.js +1 -1
  692. package/dist/collection/utils/overlay-control-label.js +13 -11
  693. package/dist/collection/utils/overlays.js +312 -45
  694. package/dist/collection/utils/platform.js +5 -4
  695. package/dist/collection/utils/rtl/dir.js +3 -2
  696. package/dist/collection/utils/sanitization/index.js +2 -2
  697. package/dist/collection/utils/scroll-hide-controller.js +178 -0
  698. package/dist/collection/utils/select-option-render.js +2 -1
  699. package/dist/collection/utils/slot-mutation-controller.js +2 -1
  700. package/dist/collection/utils/test/playwright/apply-keyboard-focus.js +1 -1
  701. package/dist/collection/utils/test/playwright/drag-element.js +35 -11
  702. package/dist/collection/utils/test/playwright/generator.js +51 -25
  703. package/dist/collection/utils/test/playwright/page/event-spy.js +12 -11
  704. package/dist/collection/utils/test/playwright/page/utils/goto.js +15 -5
  705. package/dist/collection/utils/test/playwright/page/utils/set-content.js +27 -4
  706. package/dist/collection/utils/test/playwright/page/utils/set-ion-viewport.js +3 -2
  707. package/dist/collection/utils/test/press-keys.js +17 -10
  708. package/dist/collection/utils/theme.js +26 -7
  709. package/dist/collection/utils/transition/ios.transition.js +14 -9
  710. package/dist/collection/utils/transition/md.transition.js +4 -3
  711. package/dist/docs.json +10054 -537
  712. package/dist/esm/{animation-CGFdmGk9.js → animation-BsVixxLP.js} +5 -5
  713. package/dist/esm/{app-globals-CYmMeGdU.js → app-globals-rPvWQFXp.js} +1 -1
  714. package/dist/esm/{button-active-BDOsVAiZ.js → button-active-BS8YgJRD.js} +3 -3
  715. package/dist/esm/{capacitor-CFERIeaU.js → capacitor-BnXrCBvt.js} +1 -1
  716. package/dist/esm/clear-button-press-controller-Ci6Q_x5-.js +43 -0
  717. package/dist/esm/{config-DWCzVL3Y.js → config-BwKpO3Is.js} +4 -5
  718. package/dist/esm/{dir-Dojwmvde.js → dir-o8OKV5aD.js} +3 -2
  719. package/dist/esm/{focus-visible-BmVRXR1y.js → focus-visible-vXpMhGrs.js} +23 -1
  720. package/dist/esm/{format-Dcwga61t.js → format-2WlZcMvG.js} +31 -41
  721. package/dist/esm/{framework-delegate-BHTU2Ip9.js → framework-delegate-P5K_3uYw.js} +10 -6
  722. package/dist/esm/{gesture-controller-TXPDHL13.js → gesture-controller-BTEOs1at.js} +8 -15
  723. package/dist/esm/{haptic-Cq4UAeka.js → haptic-ByW74Ow9.js} +4 -3
  724. package/dist/esm/{helpers-CAGf8Wgp.js → helpers-ChPZH7zh.js} +74 -8
  725. package/dist/esm/{index-DcPaH5uL.js → index-Bck1OwMs.js} +3 -9
  726. package/dist/esm/{index-ChhhtsGZ.js → index-C0EQceqV.js} +66 -34
  727. package/dist/esm/{index-Clc-28O1.js → index-C7EAbm0C.js} +5 -4
  728. package/dist/esm/{index-CqneaaGd.js → index-C7F1yJyV.js} +13 -12
  729. package/dist/esm/{index-WlteAIqz.js → index-CXSPjEca.js} +5 -5
  730. package/dist/esm/{index-CKM1DdGm.js → index-Mq5pCWmZ.js} +3 -3
  731. package/dist/esm/{index-BvabGprD.js → index-PnwG0glX.js} +2 -1
  732. package/dist/esm/{index-T0JxBI8V.js → index-niemeDYi.js} +2 -2
  733. package/dist/esm/index.js +17 -18
  734. package/dist/esm/{input-shims-B8sfni1e.js → input-shims-CM5m0K8T.js} +15 -12
  735. package/dist/esm/input.utils-DhJNJPiU.js +147 -0
  736. package/dist/esm/ion-accordion_2.entry.js +376 -376
  737. package/dist/esm/ion-action-sheet.entry.js +87 -179
  738. package/dist/esm/ion-alert.entry.js +126 -251
  739. package/dist/esm/ion-app_8.entry.js +607 -460
  740. package/dist/esm/ion-avatar_3.entry.js +125 -19
  741. package/dist/esm/ion-back-button.entry.js +49 -65
  742. package/dist/esm/ion-backdrop.entry.js +22 -23
  743. package/dist/esm/ion-breadcrumb_2.entry.js +157 -210
  744. package/dist/esm/ion-button_2.entry.js +118 -153
  745. package/dist/esm/ion-card_5.entry.js +80 -110
  746. package/dist/esm/ion-checkbox.entry.js +134 -160
  747. package/dist/esm/ion-chip.entry.js +56 -21
  748. package/dist/esm/ion-col_3.entry.js +61 -186
  749. package/dist/esm/ion-datetime-button.entry.js +248 -256
  750. package/dist/esm/ion-datetime_3.entry.js +3206 -0
  751. package/dist/esm/ion-divider.entry.js +49 -0
  752. package/dist/esm/ion-fab_3.entry.js +109 -155
  753. package/dist/esm/ion-gallery-item.entry.js +57 -0
  754. package/dist/esm/ion-gallery.entry.js +606 -0
  755. package/dist/esm/ion-img.entry.js +17 -35
  756. package/dist/esm/ion-infinite-scroll_2.entry.js +157 -109
  757. package/dist/esm/ion-input-otp.entry.js +437 -435
  758. package/dist/esm/ion-input-password-toggle.entry.js +54 -40
  759. package/dist/esm/ion-input.entry.js +303 -349
  760. package/dist/esm/ion-item-option_3.entry.js +512 -137
  761. package/dist/esm/ion-item_8.entry.js +186 -218
  762. package/dist/esm/ion-loading.entry.js +69 -152
  763. package/dist/esm/ion-menu_3.entry.js +136 -182
  764. package/dist/esm/ion-modal.entry.js +459 -529
  765. package/dist/esm/ion-nav_2.entry.js +164 -104
  766. package/dist/esm/ion-picker-column-option.entry.js +40 -40
  767. package/dist/esm/ion-picker-column.entry.js +410 -422
  768. package/dist/esm/ion-picker.entry.js +401 -406
  769. package/dist/esm/ion-popover.entry.js +212 -324
  770. package/dist/esm/ion-progress-bar.entry.js +48 -36
  771. package/dist/esm/ion-radio_2.entry.js +162 -217
  772. package/dist/esm/ion-range.entry.js +251 -309
  773. package/dist/esm/ion-refresher_2.entry.js +127 -175
  774. package/dist/esm/ion-reorder_2.entry.js +47 -60
  775. package/dist/esm/ion-ripple-effect.entry.js +26 -18
  776. package/dist/esm/ion-route_4.entry.js +76 -179
  777. package/dist/esm/ion-searchbar.entry.js +305 -308
  778. package/dist/esm/ion-segment-content.entry.js +2 -2
  779. package/dist/esm/ion-segment-view.entry.js +27 -28
  780. package/dist/esm/ion-segment_2.entry.js +141 -177
  781. package/dist/esm/ion-select-modal.entry.js +71 -50
  782. package/dist/esm/ion-select_3.entry.js +416 -507
  783. package/dist/esm/ion-spinner.entry.js +36 -28
  784. package/dist/esm/ion-split-pane.entry.js +25 -34
  785. package/dist/esm/ion-tab-bar_2.entry.js +179 -116
  786. package/dist/esm/ion-tab_2.entry.js +30 -55
  787. package/dist/esm/ion-text.entry.js +7 -13
  788. package/dist/esm/ion-textarea.entry.js +309 -302
  789. package/dist/esm/ion-toast.entry.js +149 -244
  790. package/dist/esm/ion-toggle.entry.js +172 -184
  791. package/dist/esm/ionic-global-BJDU78B6.js +508 -0
  792. package/dist/esm/ionic.js +5 -5
  793. package/dist/esm/{ios.transition-DXRCmcbC.js → ios.transition-6oGu53GR.js} +21 -15
  794. package/dist/esm/{item-multiple-inputs-rU8VaNNg.js → item-multiple-inputs-C6onMFOo.js} +1 -1
  795. package/dist/esm/{keyboard-Cj8mLJeq.js → keyboard-XukEYIFf.js} +5 -4
  796. package/dist/esm/{keyboard-DAF8GNJ9.js → keyboard-x-uHYVoq.js} +3 -3
  797. package/dist/esm/loader.js +5 -5
  798. package/dist/esm/{md.transition-BMngO4i_.js → md.transition-Dy5HxiSE.js} +11 -9
  799. package/dist/esm/notch-controller-BYB7mUMg.js +153 -0
  800. package/dist/esm/{overlay-control-label-BSQPZ79H.js → overlay-control-label-CODBQrPj.js} +13 -11
  801. package/dist/esm/{overlays-CPmIs9Ls.js → overlays-C3YvaMgX.js} +333 -57
  802. package/dist/esm/scroll-hide-controller-B3MRYNXh.js +342 -0
  803. package/dist/esm/{select-option-render-C4m76VGH.js → select-option-render-BlKZ2H83.js} +4 -3
  804. package/dist/esm/{status-tap-CHB7KwIb.js → status-tap-DK-ylvU7.js} +5 -4
  805. package/dist/esm/{swipe-back-C9HW1bug.js → swipe-back-DFICtpMC.js} +6 -5
  806. package/dist/esm/theme-DaJxRxSQ.js +67 -0
  807. package/dist/esm/validity-BjW8SOqw.js +48 -0
  808. package/dist/html.html-data.json +2690 -123
  809. package/dist/ionic/index.esm.js +1 -1
  810. package/dist/ionic/ionic.esm.js +1 -1
  811. package/dist/ionic/p--sroV-k-.js +4 -0
  812. package/dist/ionic/p-0115c2fa.entry.js +4 -0
  813. package/dist/ionic/p-0ac15b5f.entry.js +4 -0
  814. package/dist/ionic/p-0b2c58e0.entry.js +4 -0
  815. package/dist/ionic/p-0bfb8d9e.entry.js +4 -0
  816. package/dist/ionic/p-1147fa06.entry.js +4 -0
  817. package/dist/ionic/p-1e45586e.entry.js +4 -0
  818. package/dist/ionic/p-1febf200.entry.js +4 -0
  819. package/dist/ionic/p-208cecae.entry.js +4 -0
  820. package/dist/ionic/p-29f69d29.entry.js +4 -0
  821. package/dist/ionic/p-2b5e04c5.entry.js +4 -0
  822. package/dist/ionic/p-311ef139.entry.js +4 -0
  823. package/dist/ionic/p-3eff3411.entry.js +4 -0
  824. package/dist/ionic/p-3f17704b.entry.js +4 -0
  825. package/dist/ionic/p-46e754ae.entry.js +4 -0
  826. package/dist/ionic/p-4901a10b.entry.js +4 -0
  827. package/dist/ionic/p-4c8178d8.entry.js +4 -0
  828. package/dist/ionic/p-5196bee9.entry.js +4 -0
  829. package/dist/ionic/p-5386b094.entry.js +4 -0
  830. package/dist/ionic/p-54579b68.entry.js +4 -0
  831. package/dist/ionic/p-54baa1af.entry.js +4 -0
  832. package/dist/ionic/p-59e59209.entry.js +4 -0
  833. package/dist/ionic/p-5ad0c670.entry.js +4 -0
  834. package/dist/ionic/p-62602fbd.entry.js +4 -0
  835. package/dist/ionic/p-6b86cb62.entry.js +4 -0
  836. package/dist/ionic/p-7134537b.entry.js +4 -0
  837. package/dist/ionic/p-72eacca0.entry.js +4 -0
  838. package/dist/ionic/p-7ae06f6f.entry.js +4 -0
  839. package/dist/ionic/p-7bde9ee1.entry.js +4 -0
  840. package/dist/ionic/p-7f59020c.entry.js +4 -0
  841. package/dist/ionic/p-7k7Q1A38.js +4 -0
  842. package/dist/ionic/p-87ab986c.entry.js +4 -0
  843. package/dist/ionic/p-9dff6288.entry.js +4 -0
  844. package/dist/ionic/p-9e09cb80.entry.js +4 -0
  845. package/dist/ionic/p-BFhQ1N-L.js +4 -0
  846. package/dist/ionic/p-BG7tpRhR.js +4 -0
  847. package/dist/ionic/p-BITyMTKr.js +4 -0
  848. package/dist/ionic/p-BRPONI7N.js +4 -0
  849. package/dist/ionic/p-BTEOs1at.js +4 -0
  850. package/dist/ionic/p-BVdSuKmt.js +4 -0
  851. package/dist/ionic/p-BYRVyMu9.js +4 -0
  852. package/dist/ionic/p-BjW8SOqw.js +4 -0
  853. package/dist/ionic/p-Bpx1lBiP.js +4 -0
  854. package/dist/ionic/p-BwKpO3Is.js +4 -0
  855. package/dist/ionic/p-C-BLhfUi.js +4 -0
  856. package/dist/ionic/p-C-aO35cw.js +4 -0
  857. package/dist/ionic/p-C0EQceqV.js +5 -0
  858. package/dist/ionic/p-CDrQfM-I.js +4 -0
  859. package/dist/ionic/p-CODBQrPj.js +4 -0
  860. package/dist/ionic/p-CTSaffvS.js +4 -0
  861. package/dist/ionic/p-CaM5HwzM.js +4 -0
  862. package/dist/ionic/p-CgaW5Zy8.js +4 -0
  863. package/dist/ionic/p-Cipl19Qe.js +4 -0
  864. package/dist/ionic/p-CnBfCmL2.js +4 -0
  865. package/dist/ionic/p-D-Xit5Ye.js +4 -0
  866. package/dist/ionic/p-D7LIC84Z.js +4 -0
  867. package/dist/ionic/p-D844sgjq.js +4 -0
  868. package/dist/ionic/p-DWDKFjrH.js +4 -0
  869. package/dist/ionic/p-DaJxRxSQ.js +4 -0
  870. package/dist/ionic/p-DhyWlGap.js +4 -0
  871. package/dist/ionic/p-DiyY-i-5.js +4 -0
  872. package/dist/ionic/p-DrxPmT9E.js +4 -0
  873. package/dist/ionic/p-PnwG0glX.js +4 -0
  874. package/dist/ionic/p-YIsE5bNG.js +4 -0
  875. package/dist/ionic/p-a320cdb2.entry.js +4 -0
  876. package/dist/ionic/p-a37444b3.entry.js +4 -0
  877. package/dist/ionic/p-a4bed36b.entry.js +4 -0
  878. package/dist/ionic/p-a7914fe5.entry.js +4 -0
  879. package/dist/ionic/p-aa298c58.entry.js +4 -0
  880. package/dist/ionic/p-ace3062d.entry.js +4 -0
  881. package/dist/ionic/p-b70775b0.entry.js +4 -0
  882. package/dist/ionic/p-b7c75507.entry.js +4 -0
  883. package/dist/ionic/p-b920f149.entry.js +4 -0
  884. package/dist/ionic/p-c39025c0.entry.js +4 -0
  885. package/dist/ionic/p-c9cda5ce.entry.js +4 -0
  886. package/dist/ionic/p-cc314123.entry.js +4 -0
  887. package/dist/ionic/p-d1f42864.entry.js +4 -0
  888. package/dist/ionic/p-d4506138.entry.js +4 -0
  889. package/dist/ionic/p-dbd06d8d.entry.js +4 -0
  890. package/dist/ionic/p-dda49380.entry.js +4 -0
  891. package/dist/ionic/p-de4e8418.entry.js +4 -0
  892. package/dist/ionic/p-e95618c4.entry.js +4 -0
  893. package/dist/ionic/p-f89fcf62.entry.js +4 -0
  894. package/dist/ionic/p-fcce2dda.entry.js +4 -0
  895. package/dist/ionic/p-fd2a869f.entry.js +4 -0
  896. package/dist/ionic/p-fd95a423.entry.js +4 -0
  897. package/dist/ionic/p-fe14205b.entry.js +4 -0
  898. package/dist/ionic/p-i6iV8hMy.js +4 -0
  899. package/dist/ionic/p-nUlpIttM.js +4 -0
  900. package/dist/ionic/p-o8OKV5aD.js +4 -0
  901. package/dist/ionic/p-vXpMhGrs.js +4 -0
  902. package/dist/ionic/p-zRFin7iz.js +4 -0
  903. package/dist/ionic/p-zn4qAQ_d.js +4 -0
  904. package/dist/types/components/accordion/accordion.d.ts +12 -3
  905. package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
  906. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  907. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  908. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  909. package/dist/types/components/alert/alert.d.ts +3 -2
  910. package/dist/types/components/app/app.d.ts +4 -5
  911. package/dist/types/components/avatar/avatar.d.ts +32 -0
  912. package/dist/types/components/back-button/back-button.d.ts +8 -1
  913. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  914. package/dist/types/components/badge/badge.d.ts +34 -1
  915. package/dist/types/components/breadcrumb/breadcrumb.d.ts +14 -1
  916. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  917. package/dist/types/components/button/button.d.ts +23 -8
  918. package/dist/types/components/buttons/buttons.d.ts +5 -1
  919. package/dist/types/components/card/card.d.ts +8 -1
  920. package/dist/types/components/card-content/card-content.d.ts +2 -1
  921. package/dist/types/components/card-header/card-header.d.ts +3 -2
  922. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  923. package/dist/types/components/card-title/card-title.d.ts +2 -1
  924. package/dist/types/components/checkbox/checkbox.d.ts +26 -5
  925. package/dist/types/components/chip/chip.d.ts +26 -1
  926. package/dist/types/components/col/col.d.ts +52 -5
  927. package/dist/types/components/content/content.d.ts +3 -0
  928. package/dist/types/components/datetime/datetime.d.ts +26 -1
  929. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  930. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  931. package/dist/types/components/divider/divider.d.ts +20 -0
  932. package/dist/types/components/fab/fab.d.ts +4 -0
  933. package/dist/types/components/fab-button/fab-button.d.ts +11 -3
  934. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  935. package/dist/types/components/footer/footer-interface.d.ts +1 -0
  936. package/dist/types/components/footer/footer.d.ts +20 -3
  937. package/dist/types/components/gallery/gallery-constants.d.ts +9 -0
  938. package/dist/types/components/gallery/gallery-interface.d.ts +10 -0
  939. package/dist/types/components/gallery/gallery.d.ts +218 -0
  940. package/dist/types/components/gallery/test/utils.d.ts +3 -0
  941. package/dist/types/components/gallery-item/gallery-item.d.ts +33 -0
  942. package/dist/types/components/grid/grid.d.ts +4 -0
  943. package/dist/types/components/header/header-interface.d.ts +1 -0
  944. package/dist/types/components/header/header.d.ts +26 -3
  945. package/dist/types/components/header/header.utils.d.ts +4 -5
  946. package/dist/types/components/img/img.d.ts +2 -1
  947. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +21 -0
  948. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  949. package/dist/types/components/input/input.d.ts +40 -17
  950. package/dist/types/components/input-otp/input-otp.d.ts +37 -0
  951. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +14 -0
  952. package/dist/types/components/item/item.d.ts +17 -4
  953. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  954. package/dist/types/components/item-group/item-group.d.ts +4 -0
  955. package/dist/types/components/item-option/item-option.d.ts +18 -1
  956. package/dist/types/components/item-options/item-options.d.ts +4 -0
  957. package/dist/types/components/item-sliding/item-sliding.d.ts +47 -1
  958. package/dist/types/components/item-sliding/test/test.utils.d.ts +13 -0
  959. package/dist/types/components/label/label.d.ts +2 -1
  960. package/dist/types/components/list/list.d.ts +15 -1
  961. package/dist/types/components/list-header/list-header.d.ts +2 -1
  962. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  963. package/dist/types/components/loading/loading.d.ts +3 -2
  964. package/dist/types/components/menu/menu.d.ts +3 -0
  965. package/dist/types/components/menu-button/menu-button.d.ts +8 -1
  966. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  967. package/dist/types/components/modal/animations/ionic.enter.d.ts +6 -0
  968. package/dist/types/components/modal/animations/ionic.leave.d.ts +6 -0
  969. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  970. package/dist/types/components/modal/modal-interface.d.ts +4 -16
  971. package/dist/types/components/modal/modal.d.ts +15 -12
  972. package/dist/types/components/nav/nav-interface.d.ts +10 -1
  973. package/dist/types/components/nav/nav.d.ts +27 -3
  974. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  975. package/dist/types/components/note/note.d.ts +2 -1
  976. package/dist/types/components/picker/picker.d.ts +2 -1
  977. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  978. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  979. package/dist/types/components/picker-legacy/animations/ios.enter.d.ts +5 -0
  980. package/dist/types/components/picker-legacy/animations/ios.leave.d.ts +5 -0
  981. package/dist/types/components/picker-legacy/picker-interface.d.ts +52 -0
  982. package/dist/types/components/picker-legacy/picker.d.ts +159 -0
  983. package/dist/types/components/picker-legacy-column/picker-column.d.ts +46 -0
  984. package/dist/types/components/picker-legacy-column/test/test.utils.d.ts +9 -0
  985. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  986. package/dist/types/components/popover/popover.d.ts +6 -5
  987. package/dist/types/components/progress-bar/progress-bar.d.ts +10 -1
  988. package/dist/types/components/radio/radio.d.ts +2 -1
  989. package/dist/types/components/radio-group/radio-group.d.ts +12 -0
  990. package/dist/types/components/range/range.d.ts +2 -1
  991. package/dist/types/components/refresher/refresher.d.ts +2 -1
  992. package/dist/types/components/refresher-content/refresher-content.d.ts +10 -0
  993. package/dist/types/components/reorder/reorder.d.ts +9 -0
  994. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  995. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  996. package/dist/types/components/route/route.d.ts +5 -1
  997. package/dist/types/components/router/router.d.ts +4 -0
  998. package/dist/types/components/router-link/router-link.d.ts +4 -0
  999. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -8
  1000. package/dist/types/components/row/row.d.ts +4 -0
  1001. package/dist/types/components/searchbar/searchbar.d.ts +57 -11
  1002. package/dist/types/components/segment/segment.d.ts +2 -1
  1003. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  1004. package/dist/types/components/select/select.d.ts +55 -26
  1005. package/dist/types/components/select-modal/select-modal.d.ts +13 -0
  1006. package/dist/types/components/select-option/select-option.d.ts +7 -4
  1007. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  1008. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  1009. package/dist/types/components/spinner/spinner.d.ts +15 -0
  1010. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  1011. package/dist/types/components/tab/tab.d.ts +4 -0
  1012. package/dist/types/components/tab-bar/tab-bar-interface.d.ts +1 -0
  1013. package/dist/types/components/tab-bar/tab-bar.d.ts +41 -3
  1014. package/dist/types/components/tab-button/tab-button.d.ts +12 -1
  1015. package/dist/types/components/tabs/tabs.d.ts +3 -0
  1016. package/dist/types/components/text/text.d.ts +2 -1
  1017. package/dist/types/components/textarea/textarea.d.ts +58 -16
  1018. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  1019. package/dist/types/components/title/title.d.ts +4 -0
  1020. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  1021. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  1022. package/dist/types/components/toast/toast.d.ts +19 -2
  1023. package/dist/types/components/toggle/toggle.d.ts +18 -1
  1024. package/dist/types/components/toolbar/toolbar.d.ts +43 -3
  1025. package/dist/types/components.d.ts +2171 -263
  1026. package/dist/types/global/ionic-global.d.ts +28 -2
  1027. package/dist/types/index.d.ts +1 -1
  1028. package/dist/types/interface.d.ts +4 -0
  1029. package/dist/types/utils/config.d.ts +133 -3
  1030. package/dist/types/utils/css-value-validation.d.ts +21 -0
  1031. package/dist/types/utils/focus-trap.d.ts +1 -1
  1032. package/dist/types/utils/focus-visible.d.ts +13 -0
  1033. package/dist/types/utils/forms/clear-button-press-controller.d.ts +20 -0
  1034. package/dist/types/utils/forms/index.d.ts +1 -1
  1035. package/dist/types/utils/forms/validity.d.ts +7 -0
  1036. package/dist/types/utils/helpers.d.ts +22 -0
  1037. package/dist/types/utils/logging/index.d.ts +1 -2
  1038. package/dist/types/utils/overlay-control-label.d.ts +11 -9
  1039. package/dist/types/utils/overlays-interface.d.ts +31 -1
  1040. package/dist/types/utils/overlays.d.ts +10 -12
  1041. package/dist/types/utils/scroll-hide-controller.d.ts +56 -0
  1042. package/dist/types/utils/test/playwright/drag-element.d.ts +16 -3
  1043. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  1044. package/dist/types/utils/test/playwright/playwright-page.d.ts +1 -1
  1045. package/dist/types/utils/test/playwright/testExpect.d.ts +1 -1
  1046. package/dist/types/utils/theme.d.ts +9 -0
  1047. package/hydrate/index.js +12008 -10485
  1048. package/hydrate/index.mjs +12008 -10485
  1049. package/package.json +16 -56
  1050. package/components/p--m5cCjbK.js +0 -4
  1051. package/components/p-1jI5oW-W.js +0 -4
  1052. package/components/p-8FN7p701.js +0 -4
  1053. package/components/p-B4uHHhPK.js +0 -4
  1054. package/components/p-BMPN55of.js +0 -4
  1055. package/components/p-BNJOu1Q2.js +0 -4
  1056. package/components/p-BOvLNVKq.js +0 -4
  1057. package/components/p-BSQPZ79H.js +0 -4
  1058. package/components/p-BeamQXHF.js +0 -4
  1059. package/components/p-BhamHSw3.js +0 -4
  1060. package/components/p-Bjig0DJK.js +0 -4
  1061. package/components/p-BjluhQMI.js +0 -4
  1062. package/components/p-BlsIikdZ.js +0 -4
  1063. package/components/p-BmVRXR1y.js +0 -4
  1064. package/components/p-BqPNzJf6.js +0 -4
  1065. package/components/p-BrD9Xv62.js +0 -4
  1066. package/components/p-BvJqoZ5R.js +0 -4
  1067. package/components/p-Bz6z3Asd.js +0 -4
  1068. package/components/p-C5KYjZWD.js +0 -4
  1069. package/components/p-C6HnVvHO.js +0 -4
  1070. package/components/p-C7jvh5Wy.js +0 -4
  1071. package/components/p-C9BGR5fy.js +0 -4
  1072. package/components/p-CB-y1CdP.js +0 -4
  1073. package/components/p-CEW4RXZO.js +0 -4
  1074. package/components/p-CHH3loEE.js +0 -4
  1075. package/components/p-CIGNaXM1.js +0 -4
  1076. package/components/p-CJKUWjmg.js +0 -4
  1077. package/components/p-C_phlPMC.js +0 -4
  1078. package/components/p-CbhUdtjf.js +0 -4
  1079. package/components/p-CejmQs3h.js +0 -4
  1080. package/components/p-CtZqa4HM.js +0 -4
  1081. package/components/p-D7-vHX0A.js +0 -4
  1082. package/components/p-D9qIVSWm.js +0 -4
  1083. package/components/p-DD5fQ4EQ.js +0 -4
  1084. package/components/p-DE-3iMNW.js +0 -4
  1085. package/components/p-DFvZn99E.js +0 -4
  1086. package/components/p-DHFt2rdc.js +0 -4
  1087. package/components/p-DJztqcrH.js +0 -4
  1088. package/components/p-DM-PrAoh.js +0 -4
  1089. package/components/p-DSzSbVP2.js +0 -4
  1090. package/components/p-DV85C0e0.js +0 -4
  1091. package/components/p-DWCzVL3Y.js +0 -4
  1092. package/components/p-D_RCyzwu.js +0 -4
  1093. package/components/p-D_tD8r3L.js +0 -4
  1094. package/components/p-DaA_8eqt.js +0 -4
  1095. package/components/p-DjCtLZbF.js +0 -4
  1096. package/components/p-Dmd2xqCe.js +0 -4
  1097. package/components/p-Dojwmvde.js +0 -4
  1098. package/components/p-G0TxqHfe.js +0 -4
  1099. package/components/p-G6JR-cr_.js +0 -4
  1100. package/components/p-GG5GhznE.js +0 -4
  1101. package/components/p-LpMHEu3v.js +0 -4
  1102. package/components/p-TXPDHL13.js +0 -4
  1103. package/components/p-UIBJkZf8.js +0 -4
  1104. package/components/p-ZjP4CjeZ.js +0 -4
  1105. package/components/p-_IKFD3ID.js +0 -4
  1106. package/components/p-byZM6qHV.js +0 -4
  1107. package/components/p-dKq2jIum.js +0 -4
  1108. package/components/p-fruGqVHh.js +0 -4
  1109. package/components/p-iYhH60Tc.js +0 -4
  1110. package/components/p-ia3IDdJS.js +0 -4
  1111. package/dist/cjs/hardware-back-button-fqpYh-kd.js +0 -121
  1112. package/dist/cjs/index-DkNv4J_i.js +0 -10
  1113. package/dist/cjs/input.utils-BZdMWVrt.js +0 -35
  1114. package/dist/cjs/ion-datetime.cjs.entry.js +0 -2770
  1115. package/dist/cjs/ionic-global-k6hOWWpn.js +0 -156
  1116. package/dist/cjs/keyboard-controller-PtZoN2GS.js +0 -167
  1117. package/dist/cjs/slot-mutation-controller-DPHmqXdV.js +0 -397
  1118. package/dist/cjs/validity-BpS37YFM.js +0 -19
  1119. package/dist/collection/utils/forms/start-container-controller.js +0 -132
  1120. package/dist/esm/hardware-back-button-gLJHMX_F.js +0 -115
  1121. package/dist/esm/index-ZjP4CjeZ.js +0 -7
  1122. package/dist/esm/input.utils-B1ValN_N.js +0 -33
  1123. package/dist/esm/ion-datetime.entry.js +0 -2768
  1124. package/dist/esm/ionic-global-BVB7BrLT.js +0 -151
  1125. package/dist/esm/keyboard-controller-DEwoa1ev.js +0 -165
  1126. package/dist/esm/slot-mutation-controller-DiE_C9un.js +0 -393
  1127. package/dist/esm/theme-byZM6qHV.js +0 -48
  1128. package/dist/esm/validity-DJztqcrH.js +0 -17
  1129. package/dist/ionic/p-06ec7136.entry.js +0 -4
  1130. package/dist/ionic/p-09fe4fa3.entry.js +0 -4
  1131. package/dist/ionic/p-10d45a07.entry.js +0 -4
  1132. package/dist/ionic/p-208c8a07.entry.js +0 -4
  1133. package/dist/ionic/p-212474fa.entry.js +0 -4
  1134. package/dist/ionic/p-2eef1396.entry.js +0 -4
  1135. package/dist/ionic/p-347e005d.entry.js +0 -4
  1136. package/dist/ionic/p-3a0b3f1d.entry.js +0 -4
  1137. package/dist/ionic/p-3b071259.entry.js +0 -4
  1138. package/dist/ionic/p-40424a88.entry.js +0 -4
  1139. package/dist/ionic/p-4204184c.entry.js +0 -4
  1140. package/dist/ionic/p-47464391.entry.js +0 -4
  1141. package/dist/ionic/p-4eOQC00Z.js +0 -4
  1142. package/dist/ionic/p-4f9c9126.entry.js +0 -4
  1143. package/dist/ionic/p-5JsKPLJD.js +0 -4
  1144. package/dist/ionic/p-5bc485c6.entry.js +0 -4
  1145. package/dist/ionic/p-603a61e6.entry.js +0 -4
  1146. package/dist/ionic/p-60576951.entry.js +0 -4
  1147. package/dist/ionic/p-67a81d33.entry.js +0 -4
  1148. package/dist/ionic/p-6affb775.entry.js +0 -4
  1149. package/dist/ionic/p-6f120c25.entry.js +0 -4
  1150. package/dist/ionic/p-71c82b60.entry.js +0 -4
  1151. package/dist/ionic/p-79325ffe.entry.js +0 -4
  1152. package/dist/ionic/p-7CBuOvEo.js +0 -4
  1153. package/dist/ionic/p-7e4d51fa.entry.js +0 -4
  1154. package/dist/ionic/p-7f5d4664.entry.js +0 -4
  1155. package/dist/ionic/p-80ee82fc.entry.js +0 -4
  1156. package/dist/ionic/p-84af7dbc.entry.js +0 -4
  1157. package/dist/ionic/p-89ca830a.entry.js +0 -4
  1158. package/dist/ionic/p-93b8ec8f.entry.js +0 -4
  1159. package/dist/ionic/p-946f65c2.entry.js +0 -4
  1160. package/dist/ionic/p-9c4b39fb.entry.js +0 -4
  1161. package/dist/ionic/p-B1NEZUzQ.js +0 -4
  1162. package/dist/ionic/p-B1ck5iy-.js +0 -4
  1163. package/dist/ionic/p-B4FrqdW0.js +0 -4
  1164. package/dist/ionic/p-BB0LlG4y.js +0 -4
  1165. package/dist/ionic/p-BMPN55of.js +0 -4
  1166. package/dist/ionic/p-BSQPZ79H.js +0 -4
  1167. package/dist/ionic/p-BYEAtHr-.js +0 -4
  1168. package/dist/ionic/p-BhamHSw3.js +0 -4
  1169. package/dist/ionic/p-BmVRXR1y.js +0 -4
  1170. package/dist/ionic/p-BvabGprD.js +0 -4
  1171. package/dist/ionic/p-C-94tAim.js +0 -4
  1172. package/dist/ionic/p-C-eHZMYE.js +0 -4
  1173. package/dist/ionic/p-CBR_W98Z.js +0 -4
  1174. package/dist/ionic/p-CBWAXjA5.js +0 -4
  1175. package/dist/ionic/p-CIGNaXM1.js +0 -4
  1176. package/dist/ionic/p-CMRtMbJc.js +0 -4
  1177. package/dist/ionic/p-CPcPmkGv.js +0 -4
  1178. package/dist/ionic/p-CaRuIadB.js +0 -4
  1179. package/dist/ionic/p-Cdjxf_yg.js +0 -4
  1180. package/dist/ionic/p-ChhhtsGZ.js +0 -5
  1181. package/dist/ionic/p-CzS1qWve.js +0 -4
  1182. package/dist/ionic/p-D5t_-oMk.js +0 -4
  1183. package/dist/ionic/p-D94_RztK.js +0 -4
  1184. package/dist/ionic/p-DJztqcrH.js +0 -4
  1185. package/dist/ionic/p-DWCzVL3Y.js +0 -4
  1186. package/dist/ionic/p-DjjfauRM.js +0 -4
  1187. package/dist/ionic/p-DkUB-ROc.js +0 -4
  1188. package/dist/ionic/p-Dn0mqQ_R.js +0 -4
  1189. package/dist/ionic/p-Dojwmvde.js +0 -4
  1190. package/dist/ionic/p-DplOqGUv.js +0 -4
  1191. package/dist/ionic/p-Dst_XmZh.js +0 -4
  1192. package/dist/ionic/p-T71k3C35.js +0 -4
  1193. package/dist/ionic/p-TXPDHL13.js +0 -4
  1194. package/dist/ionic/p-UIBJkZf8.js +0 -4
  1195. package/dist/ionic/p-ZjP4CjeZ.js +0 -4
  1196. package/dist/ionic/p-a438b193.entry.js +0 -4
  1197. package/dist/ionic/p-babaaaa7.entry.js +0 -4
  1198. package/dist/ionic/p-be08d500.entry.js +0 -4
  1199. package/dist/ionic/p-be9a4f51.entry.js +0 -4
  1200. package/dist/ionic/p-byZM6qHV.js +0 -4
  1201. package/dist/ionic/p-c00d3092.entry.js +0 -4
  1202. package/dist/ionic/p-c36dc8f5.entry.js +0 -4
  1203. package/dist/ionic/p-c72a7e17.entry.js +0 -4
  1204. package/dist/ionic/p-c8edd88c.entry.js +0 -4
  1205. package/dist/ionic/p-ce0e380b.entry.js +0 -4
  1206. package/dist/ionic/p-ce32912b.entry.js +0 -4
  1207. package/dist/ionic/p-d07cf130.entry.js +0 -4
  1208. package/dist/ionic/p-d27edeb3.entry.js +0 -4
  1209. package/dist/ionic/p-d5d2c506.entry.js +0 -4
  1210. package/dist/ionic/p-d5e31ca9.entry.js +0 -4
  1211. package/dist/ionic/p-de91444f.entry.js +0 -4
  1212. package/dist/ionic/p-ded69ceb.entry.js +0 -4
  1213. package/dist/ionic/p-df72866d.entry.js +0 -4
  1214. package/dist/ionic/p-e47e3151.entry.js +0 -4
  1215. package/dist/ionic/p-e621e5e8.entry.js +0 -4
  1216. package/dist/ionic/p-eea9cf93.entry.js +0 -4
  1217. package/dist/ionic/p-f402f5a4.entry.js +0 -4
  1218. package/dist/ionic/p-fe1bfbcf.entry.js +0 -4
  1219. package/dist/ionic/p-ffb90460.entry.js +0 -4
  1220. package/dist/types/utils/forms/start-container-controller.d.ts +0 -34
  1221. /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
@@ -7,11 +7,11 @@ import { CoreDelegate, attachComponent, detachComponent } from "../../utils/fram
7
7
  import { addEventListener, raf, hasLazyBuild } from "../../utils/helpers";
8
8
  import { createLockController } from "../../utils/lock-controller";
9
9
  import { printIonWarning } from "../../utils/logging/index";
10
- import { BACKDROP, cleanupRootFocusTrapAccessibility, dismiss, eventMethod, FOCUS_TRAP_DISABLE_CLASS, prepareOverlay, present, setOverlayId, } from "../../utils/overlays";
10
+ import { BACKDROP, dismiss, eventMethod, prepareOverlay, present, setOverlayId, FOCUS_TRAP_DISABLE_CLASS, } from "../../utils/overlays";
11
11
  import { isPlatform } from "../../utils/platform";
12
12
  import { getClassMap } from "../../utils/theme";
13
13
  import { deepReady, waitForMount } from "../../utils/transition/index";
14
- import { getIonMode } from "../../global/ionic-global";
14
+ import { getIonTheme } from "../../global/ionic-global";
15
15
  import { iosEnterAnimation } from "./animations/ios.enter";
16
16
  import { iosLeaveAnimation } from "./animations/ios.leave";
17
17
  import { mdEnterAnimation } from "./animations/md.enter";
@@ -19,191 +19,192 @@ import { mdLeaveAnimation } from "./animations/md.leave";
19
19
  import { configureDismissInteraction, configureKeyboardInteraction, configureTriggerInteraction } from "./utils";
20
20
  // TODO(FW-2832): types
21
21
  /**
22
- * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
22
+ * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
23
+ * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
23
24
  *
24
25
  * @slot - Content is placed inside of the `.popover-content` element.
25
26
  *
26
27
  * @part backdrop - The `ion-backdrop` element.
27
- * @part arrow - The arrow that points to the reference element. Only applies on `ios` mode.
28
+ * @part arrow - The arrow that points to the reference element. Only applies on `"ios"` theme.
28
29
  * @part content - The wrapper element for the default slot.
29
30
  */
30
31
  export class Popover {
31
- usersElement;
32
- triggerEl;
33
- parentPopover = null;
34
- coreDelegate = CoreDelegate();
35
- lockController = createLockController();
36
- destroyTriggerInteraction;
37
- destroyKeyboardInteraction;
38
- destroyDismissInteraction;
39
- headerResizeObserver;
40
- inline = false;
41
- workingDelegate;
42
- focusDescendantOnPresent = false;
43
- lastFocus;
44
- presented = false;
45
- el;
46
- /** @internal */
47
- hasController = false;
48
- /** @internal */
49
- delegate;
50
- /** @internal */
51
- overlayIndex;
52
- /**
53
- * Animation to use when the popover is presented.
54
- */
55
- enterAnimation;
56
- /**
57
- * Animation to use when the popover is dismissed.
58
- */
59
- leaveAnimation;
60
- /**
61
- * The component to display inside of the popover.
62
- * You only need to use this if you are not using
63
- * a JavaScript framework. Otherwise, you can just
64
- * slot your component inside of `ion-popover`.
65
- */
66
- component;
67
- /**
68
- * The data to pass to the popover component.
69
- * You only need to use this if you are not using
70
- * a JavaScript framework. Otherwise, you can just
71
- * set the props directly on your component.
72
- */
73
- componentProps;
74
- /**
75
- * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
76
- */
77
- keyboardClose = true;
78
- /**
79
- * Additional classes to apply for custom CSS. If multiple classes are
80
- * provided they should be separated by spaces.
81
- * @internal
82
- */
83
- cssClass;
84
- /**
85
- * If `true`, the popover will be dismissed when the backdrop is clicked.
86
- */
87
- backdropDismiss = true;
88
- /**
89
- * The event to pass to the popover animation.
90
- */
91
- event;
92
- /**
93
- * If `true`, a backdrop will be displayed behind the popover.
94
- * This property controls whether or not the backdrop
95
- * darkens the screen when the popover is presented.
96
- * It does not control whether or not the backdrop
97
- * is active or present in the DOM.
98
- */
99
- showBackdrop = true;
100
- /**
101
- * If `true`, the popover will be translucent.
102
- * Only applies when the mode is `"ios"` and the device supports
103
- * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
104
- */
105
- translucent = false;
106
- /**
107
- * If `true`, the popover will animate.
108
- */
109
- animated = true;
110
- /**
111
- * Additional attributes to pass to the popover.
112
- */
113
- htmlAttributes;
114
- /**
115
- * Describes what kind of interaction with the trigger that
116
- * should cause the popover to open. Does not apply when the `trigger`
117
- * property is `undefined`.
118
- * If `"click"`, the popover will be presented when the trigger is left clicked.
119
- * If `"hover"`, the popover will be presented when a pointer hovers over the trigger.
120
- * If `"context-menu"`, the popover will be presented when the trigger is right
121
- * clicked on desktop and long pressed on mobile. This will also prevent your
122
- * device's normal context menu from appearing.
123
- */
124
- triggerAction = 'click';
125
- /**
126
- * An ID corresponding to the trigger element that
127
- * causes the popover to open. Use the `trigger-action`
128
- * property to customize the interaction that results in
129
- * the popover opening.
130
- */
131
- trigger;
132
- /**
133
- * Describes how to calculate the popover width.
134
- * If `"cover"`, the popover width will match the width of the trigger.
135
- * If `"auto"`, the popover width will be set to a static default value.
136
- */
137
- size = 'auto';
138
- /**
139
- * If `true`, the popover will be automatically
140
- * dismissed when the content has been clicked.
141
- */
142
- dismissOnSelect = false;
143
- /**
144
- * Describes what to position the popover relative to.
145
- * If `"trigger"`, the popover will be positioned relative
146
- * to the trigger button. If passing in an event, this is
147
- * determined via event.target.
148
- * If `"event"`, the popover will be positioned relative
149
- * to the x/y coordinates of the trigger action. If passing
150
- * in an event, this is determined via event.clientX and event.clientY.
151
- */
152
- reference = 'trigger';
153
- /**
154
- * Describes which side of the `reference` point to position
155
- * the popover on. The `"start"` and `"end"` values are RTL-aware,
156
- * and the `"left"` and `"right"` values are not.
157
- */
158
- side = 'bottom';
159
- /**
160
- * Describes how to align the popover content with the `reference` point.
161
- * Defaults to `"center"` for `ios` mode, and `"start"` for `md` mode.
162
- */
163
- alignment;
164
- /**
165
- * If `true`, the popover will display an arrow that points at the
166
- * `reference` when running in `ios` mode. Does not apply in `md` mode.
167
- */
168
- arrow = true;
169
- /**
170
- * If `true`, the popover will open. If `false`, the popover will close.
171
- * Use this if you need finer grained control over presentation, otherwise
172
- * just use the popoverController or the `trigger` property.
173
- * Note: `isOpen` will not automatically be set back to `false` when
174
- * the popover dismisses. You will need to do that in your code.
175
- */
176
- isOpen = false;
177
- /**
178
- * @internal
179
- *
180
- * If `true` the popover will not register its own keyboard event handlers.
181
- * This allows the contents of the popover to handle their own keyboard interactions.
182
- *
183
- * If `false`, the popover will register its own keyboard event handlers for
184
- * navigating `ion-list` items within a popover (up/down/home/end/etc.).
185
- * This will also cancel browser keyboard event bindings to prevent scroll
186
- * behavior in a popover using a list of items.
187
- */
188
- keyboardEvents = false;
189
- /**
190
- * If `true`, focus will not be allowed to move outside of this overlay.
191
- * If `false`, focus will be allowed to move outside of the overlay.
192
- *
193
- * In most scenarios this property should remain set to `true`. Setting
194
- * this property to `false` can cause severe accessibility issues as users
195
- * relying on assistive technologies may be able to move focus into
196
- * a confusing state. We recommend only setting this to `false` when
197
- * absolutely necessary.
198
- *
199
- * Developers may want to consider disabling focus trapping if this
200
- * overlay presents a non-Ionic overlay from a 3rd party library.
201
- * Developers would disable focus trapping on the Ionic overlay
202
- * when presenting the 3rd party overlay and then re-enable
203
- * focus trapping when dismissing the 3rd party overlay and moving
204
- * focus back to the Ionic overlay.
205
- */
206
- focusTrap = true;
32
+ constructor() {
33
+ this.parentPopover = null;
34
+ this.coreDelegate = CoreDelegate();
35
+ this.lockController = createLockController();
36
+ this.inline = false;
37
+ this.focusDescendantOnPresent = false;
38
+ this.presented = false;
39
+ /** @internal */
40
+ this.hasController = false;
41
+ /**
42
+ * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
43
+ */
44
+ this.keyboardClose = true;
45
+ /**
46
+ * If `true`, the popover will be dismissed when the backdrop is clicked.
47
+ */
48
+ this.backdropDismiss = true;
49
+ /**
50
+ * If `true`, a backdrop will be displayed behind the popover.
51
+ * This property controls whether or not the backdrop
52
+ * darkens the screen when the popover is presented.
53
+ * It does not control whether or not the backdrop
54
+ * is active or present in the DOM.
55
+ */
56
+ this.showBackdrop = true;
57
+ /**
58
+ * If `true`, the popover will be translucent.
59
+ * Only applies when the theme is `"ios"` and the device supports
60
+ * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
61
+ */
62
+ this.translucent = false;
63
+ /**
64
+ * If `true`, the popover will animate.
65
+ */
66
+ this.animated = true;
67
+ /**
68
+ * Describes what kind of interaction with the trigger that
69
+ * should cause the popover to open. Does not apply when the `trigger`
70
+ * property is `undefined`.
71
+ * If `"click"`, the popover will be presented when the trigger is left clicked.
72
+ * If `"hover"`, the popover will be presented when a pointer hovers over the trigger.
73
+ * If `"context-menu"`, the popover will be presented when the trigger is right
74
+ * clicked on desktop and long pressed on mobile. This will also prevent your
75
+ * device's normal context menu from appearing.
76
+ */
77
+ this.triggerAction = 'click';
78
+ /**
79
+ * Describes how to calculate the popover width.
80
+ * If `"cover"`, the popover width will match the width of the trigger.
81
+ * If `"auto"`, the popover width will be set to a static default value.
82
+ */
83
+ this.size = 'auto';
84
+ /**
85
+ * If `true`, the popover will be automatically
86
+ * dismissed when the content has been clicked.
87
+ */
88
+ this.dismissOnSelect = false;
89
+ /**
90
+ * Describes what to position the popover relative to.
91
+ * If `"trigger"`, the popover will be positioned relative
92
+ * to the trigger button. If passing in an event, this is
93
+ * determined via event.target.
94
+ * If `"event"`, the popover will be positioned relative
95
+ * to the x/y coordinates of the trigger action. If passing
96
+ * in an event, this is determined via event.clientX and event.clientY.
97
+ */
98
+ this.reference = 'trigger';
99
+ /**
100
+ * Describes which side of the `reference` point to position
101
+ * the popover on. The `"start"` and `"end"` values are RTL-aware,
102
+ * and the `"left"` and `"right"` values are not.
103
+ */
104
+ this.side = 'bottom';
105
+ /**
106
+ * If `true`, the popover will display an arrow that points at the
107
+ * `reference` on `"ios"` theme.
108
+ */
109
+ this.arrow = true;
110
+ /**
111
+ * If `true`, the popover will open. If `false`, the popover will close.
112
+ * Use this if you need finer grained control over presentation, otherwise
113
+ * just use the popoverController or the `trigger` property.
114
+ * Note: `isOpen` will not automatically be set back to `false` when
115
+ * the popover dismisses. You will need to do that in your code.
116
+ */
117
+ this.isOpen = false;
118
+ /**
119
+ * @internal
120
+ *
121
+ * If `true` the popover will not register its own keyboard event handlers.
122
+ * This allows the contents of the popover to handle their own keyboard interactions.
123
+ *
124
+ * If `false`, the popover will register its own keyboard event handlers for
125
+ * navigating `ion-list` items within a popover (up/down/home/end/etc.).
126
+ * This will also cancel browser keyboard event bindings to prevent scroll
127
+ * behavior in a popover using a list of items.
128
+ */
129
+ this.keyboardEvents = false;
130
+ /**
131
+ * If `true`, focus will not be allowed to move outside of this overlay.
132
+ * If `false`, focus will be allowed to move outside of the overlay.
133
+ *
134
+ * In most scenarios this property should remain set to `true`. Setting
135
+ * this property to `false` can cause severe accessibility issues as users
136
+ * relying on assistive technologies may be able to move focus into
137
+ * a confusing state. We recommend only setting this to `false` when
138
+ * absolutely necessary.
139
+ *
140
+ * Developers may want to consider disabling focus trapping if this
141
+ * overlay presents a non-Ionic overlay from a 3rd party library.
142
+ * Developers would disable focus trapping on the Ionic overlay
143
+ * when presenting the 3rd party overlay and then re-enable
144
+ * focus trapping when dismissing the 3rd party overlay and moving
145
+ * focus back to the Ionic overlay.
146
+ */
147
+ this.focusTrap = true;
148
+ /**
149
+ * If `true`, the component passed into `ion-popover` will
150
+ * automatically be mounted when the popover is created. The
151
+ * component will remain mounted even when the popover is dismissed.
152
+ * However, the component will be destroyed when the popover is
153
+ * destroyed. This property is not reactive and should only be
154
+ * used when initially creating a popover.
155
+ *
156
+ * Note: This feature only applies to inline popovers in JavaScript
157
+ * frameworks such as Angular, React, and Vue.
158
+ */
159
+ this.keepContentsMounted = false;
160
+ this.onBackdropTap = () => {
161
+ this.dismiss(undefined, BACKDROP);
162
+ };
163
+ this.onLifecycle = (modalEvent) => {
164
+ const el = this.usersElement;
165
+ const name = LIFECYCLE_MAP[modalEvent.type];
166
+ if (el && name) {
167
+ const event = new CustomEvent(name, {
168
+ bubbles: false,
169
+ cancelable: false,
170
+ detail: modalEvent.detail,
171
+ });
172
+ el.dispatchEvent(event);
173
+ }
174
+ };
175
+ this.configureTriggerInteraction = () => {
176
+ const { trigger, triggerAction, el, destroyTriggerInteraction } = this;
177
+ if (destroyTriggerInteraction) {
178
+ destroyTriggerInteraction();
179
+ }
180
+ if (trigger === undefined) {
181
+ return;
182
+ }
183
+ const triggerEl = (this.triggerEl = trigger !== undefined ? document.getElementById(trigger) : null);
184
+ if (!triggerEl) {
185
+ printIonWarning(`[ion-popover] - A trigger element with the ID "${trigger}" was not found in the DOM. The trigger element must be in the DOM when the "trigger" property is set on ion-popover.`, this.el);
186
+ return;
187
+ }
188
+ this.destroyTriggerInteraction = configureTriggerInteraction(triggerEl, triggerAction, el);
189
+ };
190
+ this.configureKeyboardInteraction = () => {
191
+ const { destroyKeyboardInteraction, el } = this;
192
+ if (destroyKeyboardInteraction) {
193
+ destroyKeyboardInteraction();
194
+ }
195
+ this.destroyKeyboardInteraction = configureKeyboardInteraction(el);
196
+ };
197
+ this.configureDismissInteraction = () => {
198
+ const { destroyDismissInteraction, parentPopover, triggerAction, triggerEl, el } = this;
199
+ if (!parentPopover || !triggerEl) {
200
+ return;
201
+ }
202
+ if (destroyDismissInteraction) {
203
+ destroyDismissInteraction();
204
+ }
205
+ this.destroyDismissInteraction = configureDismissInteraction(triggerEl, triggerAction, el, parentPopover);
206
+ };
207
+ }
207
208
  onTriggerChange() {
208
209
  this.configureTriggerInteraction();
209
210
  }
@@ -215,66 +216,6 @@ export class Popover {
215
216
  this.dismiss();
216
217
  }
217
218
  }
218
- /**
219
- * If `true`, the component passed into `ion-popover` will
220
- * automatically be mounted when the popover is created. The
221
- * component will remain mounted even when the popover is dismissed.
222
- * However, the component will be destroyed when the popover is
223
- * destroyed. This property is not reactive and should only be
224
- * used when initially creating a popover.
225
- *
226
- * Note: This feature only applies to inline popovers in JavaScript
227
- * frameworks such as Angular, React, and Vue.
228
- */
229
- keepContentsMounted = false;
230
- /**
231
- * Emitted after the popover has presented.
232
- */
233
- didPresent;
234
- /**
235
- * Emitted before the popover has presented.
236
- */
237
- willPresent;
238
- /**
239
- * Emitted before the popover has dismissed.
240
- */
241
- willDismiss;
242
- /**
243
- * Emitted after the popover has dismissed.
244
- */
245
- didDismiss;
246
- /**
247
- * Emitted after the popover has presented.
248
- * Shorthand for ionPopoverWillDismiss.
249
- */
250
- didPresentShorthand;
251
- /**
252
- * Emitted before the popover has presented.
253
- * Shorthand for ionPopoverWillPresent.
254
- */
255
- willPresentShorthand;
256
- /**
257
- * Emitted before the popover has dismissed.
258
- * Shorthand for ionPopoverWillDismiss.
259
- */
260
- willDismissShorthand;
261
- /**
262
- * Emitted after the popover has dismissed.
263
- * Shorthand for ionPopoverDidDismiss.
264
- */
265
- didDismissShorthand;
266
- /**
267
- * Emitted before the popover has presented, but after the component
268
- * has been mounted in the DOM.
269
- * This event exists for ion-popover to resolve an issue with the
270
- * popover and the lazy build, that the transition is unable to get
271
- * the correct dimensions of the popover with auto sizing.
272
- * This is not required for other overlays, since the existing
273
- * overlay transitions are not effected by auto sizing content.
274
- *
275
- * @internal
276
- */
277
- ionMount;
278
219
  connectedCallback() {
279
220
  const { configureTriggerInteraction, el } = this;
280
221
  prepareOverlay(el);
@@ -289,17 +230,14 @@ export class Popover {
289
230
  this.headerResizeObserver.disconnect();
290
231
  this.headerResizeObserver = undefined;
291
232
  }
292
- // Clean up aria-hidden if removed without dismiss() being called
293
- if (this.presented) {
294
- cleanupRootFocusTrapAccessibility();
295
- }
296
233
  }
297
234
  componentWillLoad() {
235
+ var _a, _b;
298
236
  const { el } = this;
299
- const popoverId = this.htmlAttributes?.id ?? setOverlayId(el);
237
+ const popoverId = (_b = (_a = this.htmlAttributes) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : setOverlayId(el);
300
238
  this.parentPopover = el.closest(`ion-popover:not(#${popoverId})`);
301
239
  if (this.alignment === undefined) {
302
- this.alignment = getIonMode(this) === 'ios' ? 'center' : 'start';
240
+ this.alignment = getIonTheme(this) === 'ios' ? 'center' : 'start';
303
241
  }
304
242
  }
305
243
  componentDidLoad() {
@@ -421,7 +359,7 @@ export class Popover {
421
359
  else if (!this.keepContentsMounted) {
422
360
  await waitForMount();
423
361
  }
424
- await present(this, 'popoverEnter', iosEnterAnimation, mdEnterAnimation, {
362
+ await present(this, 'popoverEnter', iosEnterAnimation, mdEnterAnimation, undefined, {
425
363
  event: event || this.event,
426
364
  size: this.size,
427
365
  trigger: this.triggerEl,
@@ -446,7 +384,8 @@ export class Popover {
446
384
  * of the content to the height of the header correctly.
447
385
  */
448
386
  recalculateContentOnHeaderReady() {
449
- const popoverContent = this.el.shadowRoot?.querySelector('.popover-content');
387
+ var _a;
388
+ const popoverContent = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.popover-content');
450
389
  if (!popoverContent) {
451
390
  return;
452
391
  }
@@ -457,8 +396,9 @@ export class Popover {
457
396
  return;
458
397
  }
459
398
  this.headerResizeObserver = new ResizeObserver(async () => {
399
+ var _a;
460
400
  if (header.offsetHeight > 0) {
461
- this.headerResizeObserver?.disconnect();
401
+ (_a = this.headerResizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
462
402
  this.headerResizeObserver = undefined;
463
403
  for (const contentEl of contentElements) {
464
404
  await contentEl.recalculateDimensions();
@@ -523,83 +463,29 @@ export class Popover {
523
463
  onWillDismiss() {
524
464
  return eventMethod(this.el, 'ionPopoverWillDismiss');
525
465
  }
526
- onBackdropTap = () => {
527
- this.dismiss(undefined, BACKDROP);
528
- };
529
- onLifecycle = (modalEvent) => {
530
- const el = this.usersElement;
531
- const name = LIFECYCLE_MAP[modalEvent.type];
532
- if (el && name) {
533
- const event = new CustomEvent(name, {
534
- bubbles: false,
535
- cancelable: false,
536
- detail: modalEvent.detail,
537
- });
538
- el.dispatchEvent(event);
539
- }
540
- };
541
- configureTriggerInteraction = () => {
542
- const { trigger, triggerAction, el, destroyTriggerInteraction } = this;
543
- if (destroyTriggerInteraction) {
544
- destroyTriggerInteraction();
545
- }
546
- if (trigger === undefined) {
547
- return;
548
- }
549
- const triggerEl = (this.triggerEl = trigger !== undefined ? document.getElementById(trigger) : null);
550
- if (!triggerEl) {
551
- printIonWarning(`[ion-popover] - A trigger element with the ID "${trigger}" was not found in the DOM. The trigger element must be in the DOM when the "trigger" property is set on ion-popover.`, this.el);
552
- return;
553
- }
554
- this.destroyTriggerInteraction = configureTriggerInteraction(triggerEl, triggerAction, el);
555
- };
556
- configureKeyboardInteraction = () => {
557
- const { destroyKeyboardInteraction, el } = this;
558
- if (destroyKeyboardInteraction) {
559
- destroyKeyboardInteraction();
560
- }
561
- this.destroyKeyboardInteraction = configureKeyboardInteraction(el);
562
- };
563
- configureDismissInteraction = () => {
564
- const { destroyDismissInteraction, parentPopover, triggerAction, triggerEl, el } = this;
565
- if (!parentPopover || !triggerEl) {
566
- return;
567
- }
568
- if (destroyDismissInteraction) {
569
- destroyDismissInteraction();
570
- }
571
- this.destroyDismissInteraction = configureDismissInteraction(triggerEl, triggerAction, el, parentPopover);
572
- };
573
466
  render() {
574
- const mode = getIonMode(this);
467
+ const theme = getIonTheme(this);
575
468
  const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
576
469
  const desktop = isPlatform('desktop');
577
470
  const enableArrow = arrow && !parentPopover;
578
- return (h(Host, { key: '52ffc7116969ae1b8b927e67f2acbfe5f5434f70', "aria-modal": "true", "no-router": true, tabindex: "-1", ...htmlAttributes, style: {
471
+ return (h(Host, Object.assign({ key: '25b3729884cdc23f02cefe748d5bed47b7a5fa38', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
579
472
  zIndex: `${20000 + this.overlayIndex}`,
580
- }, class: {
581
- ...getClassMap(this.cssClass),
582
- [mode]: true,
583
- 'popover-translucent': this.translucent,
584
- 'overlay-hidden': true,
585
- 'popover-desktop': desktop,
586
- [`popover-side-${side}`]: true,
587
- [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false,
588
- 'popover-nested': !!parentPopover,
589
- }, onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }, !parentPopover && h("ion-backdrop", { key: '79a8e851dbd22119e21ffb2f4709c555251045c8', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), h("div", { key: 'c46c9f62c3ef3f902e23f27404eaa446a5d8cf88', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && h("div", { key: '9fdcbbc4ea6c7bde74f646d48eb77296b2c9dd83', class: "popover-arrow", part: "arrow" }), h("div", { key: '138e56bb83462ebb0908edb522b45ecf94b82aeb', class: "popover-content", part: "content" }, h("slot", { key: 'daeefcf002e8d89e91d6e0faf7f63f75b68a2dbe' })))));
473
+ }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [theme]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && h("ion-backdrop", { key: '9b96606f71b1d41d737a62fcfd4756022d453405', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), h("div", { key: 'a49a4271e58d966cb9f97ebe0b97f1749f99ba58', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && h("div", { key: '6386d13c525f9fd2829b13291e2b49afec26d156', class: "popover-arrow", part: "arrow" }), h("div", { key: 'd45512ad6746fcdc0bf8188353943e62b77b18c9', class: "popover-content", part: "content" }, h("slot", { key: '02ffde8e0aa104ab794c0b6fe748f1109c8dd6c7' })))));
590
474
  }
591
475
  static get is() { return "ion-popover"; }
592
476
  static get encapsulation() { return "shadow"; }
593
477
  static get originalStyleUrls() {
594
478
  return {
595
479
  "ios": ["popover.ios.scss"],
596
- "md": ["popover.md.scss"]
480
+ "md": ["popover.md.scss"],
481
+ "ionic": ["popover.ionic.scss"]
597
482
  };
598
483
  }
599
484
  static get styleUrls() {
600
485
  return {
601
486
  "ios": ["popover.ios.css"],
602
- "md": ["popover.md.css"]
487
+ "md": ["popover.md.css"],
488
+ "ionic": ["popover.ionic.css"]
603
489
  };
604
490
  }
605
491
  static get properties() {
@@ -887,7 +773,7 @@ export class Popover {
887
773
  "optional": false,
888
774
  "docs": {
889
775
  "tags": [],
890
- "text": "If `true`, the popover will be translucent.\nOnly applies when the mode is `\"ios\"` and the device supports\n[`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility)."
776
+ "text": "If `true`, the popover will be translucent.\nOnly applies when the theme is `\"ios\"` and the device supports\n[`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility)."
891
777
  },
892
778
  "getter": false,
893
779
  "setter": false,
@@ -1098,7 +984,7 @@ export class Popover {
1098
984
  "optional": true,
1099
985
  "docs": {
1100
986
  "tags": [],
1101
- "text": "Describes how to align the popover content with the `reference` point.\nDefaults to `\"center\"` for `ios` mode, and `\"start\"` for `md` mode."
987
+ "text": "Describes how to align the popover content with the `reference` point.\nDefaults to `\"center\"` for `\"ios\"` theme, and `\"start\"` for `\"md\"` theme."
1102
988
  },
1103
989
  "getter": false,
1104
990
  "setter": false,
@@ -1117,7 +1003,7 @@ export class Popover {
1117
1003
  "optional": false,
1118
1004
  "docs": {
1119
1005
  "tags": [],
1120
- "text": "If `true`, the popover will display an arrow that points at the\n`reference` when running in `ios` mode. Does not apply in `md` mode."
1006
+ "text": "If `true`, the popover will display an arrow that points at the\n`reference` on `\"ios\"` theme."
1121
1007
  },
1122
1008
  "getter": false,
1123
1009
  "setter": false,