voyager-ionic-core 7.5.5 → 7.6.1

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 (1858) hide show
  1. package/components/action-sheet.js +297 -287
  2. package/components/alert.js +477 -467
  3. package/components/animation.js +991 -990
  4. package/components/backdrop.js +56 -56
  5. package/components/button-active.js +56 -56
  6. package/components/button.js +236 -236
  7. package/components/buttons.js +29 -29
  8. package/components/capacitor.js +4 -4
  9. package/components/checkbox.js +172 -170
  10. package/components/config.js +142 -142
  11. package/components/cubic-bezier.js +49 -49
  12. package/components/data.js +1112 -1062
  13. package/components/dir.js +5 -5
  14. package/components/focus-visible.js +63 -63
  15. package/components/form-controller.js +45 -45
  16. package/components/framework-delegate.js +121 -121
  17. package/components/gesture-controller.js +182 -182
  18. package/components/haptic.js +150 -150
  19. package/components/hardware-back-button.js +48 -48
  20. package/components/helpers.js +257 -257
  21. package/components/icon.js +133 -133
  22. package/components/index.js +95 -95
  23. package/components/index2.js +163 -163
  24. package/components/index3.js +417 -417
  25. package/components/index4.js +257 -259
  26. package/components/index5.js +0 -22
  27. package/components/index6.js +3 -3
  28. package/components/index8.js +58 -58
  29. package/components/index9.js +171 -171
  30. package/components/input-shims.js +488 -483
  31. package/components/input.utils.js +107 -106
  32. package/components/ion-accordion-group.d.ts +2 -2
  33. package/components/ion-accordion-group.js +220 -220
  34. package/components/ion-accordion.d.ts +2 -2
  35. package/components/ion-accordion.js +326 -326
  36. package/components/ion-action-sheet.d.ts +2 -2
  37. package/components/ion-alert.d.ts +2 -2
  38. package/components/ion-app.d.ts +2 -2
  39. package/components/ion-app.js +93 -93
  40. package/components/ion-avatar.d.ts +2 -2
  41. package/components/ion-avatar.js +23 -23
  42. package/components/ion-back-button.d.ts +2 -2
  43. package/components/ion-back-button.js +102 -102
  44. package/components/ion-backdrop.d.ts +2 -2
  45. package/components/ion-badge.d.ts +2 -2
  46. package/components/ion-badge.js +29 -29
  47. package/components/ion-breadcrumb.d.ts +2 -2
  48. package/components/ion-breadcrumb.js +111 -111
  49. package/components/ion-breadcrumbs.d.ts +2 -2
  50. package/components/ion-breadcrumbs.js +139 -139
  51. package/components/ion-button.d.ts +2 -2
  52. package/components/ion-buttons.d.ts +2 -2
  53. package/components/ion-card-content.d.ts +2 -2
  54. package/components/ion-card-content.js +27 -27
  55. package/components/ion-card-header.d.ts +2 -2
  56. package/components/ion-card-header.js +33 -33
  57. package/components/ion-card-subtitle.d.ts +2 -2
  58. package/components/ion-card-subtitle.js +30 -30
  59. package/components/ion-card-title.d.ts +2 -2
  60. package/components/ion-card-title.js +30 -30
  61. package/components/ion-card.d.ts +2 -2
  62. package/components/ion-card.js +78 -78
  63. package/components/ion-checkbox.d.ts +2 -2
  64. package/components/ion-chip.d.ts +2 -2
  65. package/components/ion-chip.js +41 -41
  66. package/components/ion-col.d.ts +2 -2
  67. package/components/ion-col.js +156 -156
  68. package/components/ion-content.d.ts +2 -2
  69. package/components/ion-content.js +394 -394
  70. package/components/ion-datetime-button.d.ts +2 -2
  71. package/components/ion-datetime-button.js +348 -348
  72. package/components/ion-datetime.d.ts +2 -2
  73. package/components/ion-datetime.js +1741 -1709
  74. package/components/ion-fab-button.d.ts +2 -2
  75. package/components/ion-fab-button.js +109 -109
  76. package/components/ion-fab-list.d.ts +2 -2
  77. package/components/ion-fab-list.js +44 -44
  78. package/components/ion-fab.d.ts +2 -2
  79. package/components/ion-fab.js +75 -75
  80. package/components/ion-footer.d.ts +2 -2
  81. package/components/ion-footer.js +124 -124
  82. package/components/ion-grid.d.ts +2 -2
  83. package/components/ion-grid.js +27 -27
  84. package/components/ion-header.d.ts +2 -2
  85. package/components/ion-header.js +298 -298
  86. package/components/ion-img.d.ts +2 -2
  87. package/components/ion-img.js +97 -97
  88. package/components/ion-infinite-scroll-content.d.ts +2 -2
  89. package/components/ion-infinite-scroll-content.js +49 -49
  90. package/components/ion-infinite-scroll.d.ts +2 -2
  91. package/components/ion-infinite-scroll.js +187 -179
  92. package/components/ion-input.d.ts +2 -2
  93. package/components/ion-input.js +498 -454
  94. package/components/ion-item-divider.d.ts +2 -2
  95. package/components/ion-item-divider.js +34 -34
  96. package/components/ion-item-group.d.ts +2 -2
  97. package/components/ion-item-group.js +28 -28
  98. package/components/ion-item-option.d.ts +2 -2
  99. package/components/ion-item-option.js +67 -67
  100. package/components/ion-item-options.d.ts +2 -2
  101. package/components/ion-item-options.js +50 -50
  102. package/components/ion-item-sliding.d.ts +2 -2
  103. package/components/ion-item-sliding.js +404 -404
  104. package/components/ion-item.d.ts +2 -2
  105. package/components/ion-label.d.ts +2 -2
  106. package/components/ion-list-header.d.ts +2 -2
  107. package/components/ion-list.d.ts +2 -2
  108. package/components/ion-loading.d.ts +2 -2
  109. package/components/ion-loading.js +257 -247
  110. package/components/ion-menu-button.d.ts +2 -2
  111. package/components/ion-menu-button.js +77 -77
  112. package/components/ion-menu-toggle.d.ts +2 -2
  113. package/components/ion-menu-toggle.js +41 -41
  114. package/components/ion-menu.d.ts +2 -2
  115. package/components/ion-menu.js +631 -631
  116. package/components/ion-modal.d.ts +2 -2
  117. package/components/ion-modal.js +1451 -1441
  118. package/components/ion-nav-link.d.ts +2 -2
  119. package/components/ion-nav-link.js +47 -47
  120. package/components/ion-nav.d.ts +2 -2
  121. package/components/ion-nav.js +910 -910
  122. package/components/ion-note.d.ts +2 -2
  123. package/components/ion-picker-column-internal.d.ts +2 -2
  124. package/components/ion-picker-column.d.ts +2 -2
  125. package/components/ion-picker-internal.d.ts +2 -2
  126. package/components/ion-picker.d.ts +2 -2
  127. package/components/ion-picker.js +263 -253
  128. package/components/ion-popover.d.ts +2 -2
  129. package/components/ion-progress-bar.d.ts +2 -2
  130. package/components/ion-progress-bar.js +57 -57
  131. package/components/ion-radio-group.d.ts +2 -2
  132. package/components/ion-radio.d.ts +2 -2
  133. package/components/ion-range.d.ts +2 -2
  134. package/components/ion-range.js +593 -591
  135. package/components/ion-refresher-content.d.ts +2 -2
  136. package/components/ion-refresher-content.js +63 -63
  137. package/components/ion-refresher.d.ts +2 -2
  138. package/components/ion-refresher.js +747 -747
  139. package/components/ion-reorder-group.d.ts +2 -2
  140. package/components/ion-reorder-group.js +259 -259
  141. package/components/ion-reorder.d.ts +2 -2
  142. package/components/ion-reorder.js +39 -39
  143. package/components/ion-ripple-effect.d.ts +2 -2
  144. package/components/ion-route-redirect.d.ts +2 -2
  145. package/components/ion-route-redirect.js +34 -34
  146. package/components/ion-route.d.ts +2 -2
  147. package/components/ion-route.js +56 -56
  148. package/components/ion-router-link.d.ts +2 -2
  149. package/components/ion-router-link.js +45 -45
  150. package/components/ion-router-outlet.d.ts +2 -2
  151. package/components/ion-router-outlet.js +193 -193
  152. package/components/ion-router.d.ts +2 -2
  153. package/components/ion-router.js +632 -632
  154. package/components/ion-row.d.ts +2 -2
  155. package/components/ion-row.js +20 -20
  156. package/components/ion-searchbar.d.ts +2 -2
  157. package/components/ion-searchbar.js +402 -400
  158. package/components/ion-segment-button.d.ts +2 -2
  159. package/components/ion-segment-button.js +117 -117
  160. package/components/ion-segment.d.ts +2 -2
  161. package/components/ion-segment.js +427 -427
  162. package/components/ion-select-option.d.ts +2 -2
  163. package/components/ion-select-option.js +27 -27
  164. package/components/ion-select-popover.d.ts +2 -2
  165. package/components/ion-select.d.ts +2 -2
  166. package/components/ion-select.js +778 -763
  167. package/components/ion-skeleton-text.d.ts +2 -2
  168. package/components/ion-skeleton-text.js +45 -32
  169. package/components/ion-spinner.d.ts +2 -2
  170. package/components/ion-split-pane.d.ts +2 -2
  171. package/components/ion-split-pane.js +147 -147
  172. package/components/ion-tab-bar.d.ts +2 -2
  173. package/components/ion-tab-bar.js +77 -77
  174. package/components/ion-tab-button.d.ts +2 -2
  175. package/components/ion-tab-button.js +104 -104
  176. package/components/ion-tab.d.ts +2 -2
  177. package/components/ion-tab.js +72 -72
  178. package/components/ion-tabs.d.ts +2 -2
  179. package/components/ion-tabs.js +160 -160
  180. package/components/ion-text.d.ts +2 -2
  181. package/components/ion-text.js +26 -26
  182. package/components/ion-textarea.d.ts +2 -2
  183. package/components/ion-textarea.js +443 -395
  184. package/components/ion-thumbnail.d.ts +2 -2
  185. package/components/ion-thumbnail.js +20 -20
  186. package/components/ion-title.d.ts +2 -2
  187. package/components/ion-title.js +56 -56
  188. package/components/ion-toast.d.ts +2 -2
  189. package/components/ion-toast.js +819 -464
  190. package/components/ion-toggle.d.ts +2 -2
  191. package/components/ion-toggle.js +243 -241
  192. package/components/ion-toolbar.d.ts +2 -2
  193. package/components/ion-toolbar.js +71 -71
  194. package/components/ionic-global.js +163 -163
  195. package/components/ios.transition.js +598 -598
  196. package/components/item.js +301 -301
  197. package/components/keyboard-controller.js +128 -128
  198. package/components/keyboard.js +62 -62
  199. package/components/keyboard2.js +59 -59
  200. package/components/label.js +85 -85
  201. package/components/list-header.js +33 -33
  202. package/components/list.js +50 -50
  203. package/components/lock-controller.js +24 -24
  204. package/components/md.transition.js +44 -44
  205. package/components/menu-toggle-util.js +2 -2
  206. package/components/notch-controller.js +120 -120
  207. package/components/note.js +29 -29
  208. package/components/overlays.js +496 -495
  209. package/components/picker-column-internal.js +350 -345
  210. package/components/picker-column.js +334 -334
  211. package/components/picker-internal.js +468 -468
  212. package/components/popover.js +1154 -1144
  213. package/components/radio-group.js +161 -159
  214. package/components/radio.js +248 -208
  215. package/components/ripple-effect.js +81 -81
  216. package/components/select-popover.js +163 -163
  217. package/components/spinner.js +182 -182
  218. package/components/status-tap.js +26 -26
  219. package/components/swipe-back.js +65 -65
  220. package/components/theme.js +23 -23
  221. package/components/watch-options.js +30 -30
  222. package/css/core.css +66 -8
  223. package/css/core.css.map +1 -1
  224. package/css/display.css +44 -0
  225. package/css/display.css.map +1 -1
  226. package/css/float-elements.css +44 -0
  227. package/css/float-elements.css.map +1 -1
  228. package/css/global.bundle.css +88 -0
  229. package/css/global.bundle.css.map +1 -1
  230. package/css/ionic-swiper.css +22 -0
  231. package/css/ionic-swiper.css.map +1 -1
  232. package/css/ionic.bundle.css +1 -1
  233. package/css/ionic.bundle.css.map +1 -1
  234. package/css/padding.css +44 -0
  235. package/css/padding.css.map +1 -1
  236. package/css/structure.css +44 -0
  237. package/css/structure.css.map +1 -1
  238. package/css/text-alignment.css +44 -0
  239. package/css/text-alignment.css.map +1 -1
  240. package/css/text-transformation.css +44 -0
  241. package/css/text-transformation.css.map +1 -1
  242. package/css/typography.css +44 -0
  243. package/css/typography.css.map +1 -1
  244. package/css/utils.bundle.css +220 -0
  245. package/css/utils.bundle.css.map +1 -1
  246. package/dist/cjs/animation-9b401d39.js +1062 -0
  247. package/dist/cjs/{app-globals-1d4c1dbf.js → app-globals-7def22c8.js} +1 -1
  248. package/dist/cjs/button-active-962fe442.js +69 -0
  249. package/dist/cjs/{capacitor-2ffba62a.js → capacitor-c04564bf.js} +5 -5
  250. package/dist/cjs/compare-with-utils-df1001d7.js +44 -0
  251. package/dist/cjs/config-4f60b98a.js +199 -0
  252. package/dist/cjs/cubic-bezier-f2dccc53.js +92 -0
  253. package/dist/cjs/data-a5109f09.js +1672 -0
  254. package/dist/cjs/{dir-f1e0ca26.js → dir-94c21456.js} +5 -5
  255. package/dist/cjs/focus-visible-7a0ce04f.js +77 -0
  256. package/dist/cjs/form-controller-7d42a722.js +66 -0
  257. package/dist/cjs/framework-delegate-1c29b14a.js +144 -0
  258. package/dist/cjs/gesture-controller-c40c045a.js +197 -0
  259. package/dist/cjs/haptic-b882e0bb.js +212 -0
  260. package/dist/cjs/hardware-back-button-76833cac.js +76 -0
  261. package/dist/cjs/helpers-76bb7efb.js +441 -0
  262. package/dist/cjs/index-17ab7794.js +243 -0
  263. package/dist/cjs/index-3b012034.js +308 -0
  264. package/dist/cjs/{index-c2940dc1.js → index-50dcfe2f.js} +79 -15
  265. package/dist/cjs/{index-cc7dfb7c.js → index-5915f9b3.js} +3 -3
  266. package/dist/cjs/index-b4f986cd.js +198 -0
  267. package/dist/cjs/index-c8d52405.js +10 -0
  268. package/dist/cjs/index-d1b59ffa.js +459 -0
  269. package/dist/cjs/{index-da2c7a37.js → index-da15e99c.js} +60 -60
  270. package/dist/cjs/index.cjs.js +113 -113
  271. package/dist/cjs/input-shims-a23bb0f4.js +601 -0
  272. package/dist/cjs/input.utils-3d0166a2.js +138 -0
  273. package/dist/cjs/ion-accordion_2.cjs.entry.js +488 -488
  274. package/dist/cjs/ion-action-sheet.cjs.entry.js +260 -250
  275. package/dist/cjs/ion-alert.cjs.entry.js +442 -432
  276. package/dist/cjs/ion-app_8.cjs.entry.js +1151 -1151
  277. package/dist/cjs/ion-avatar_3.cjs.entry.js +29 -29
  278. package/dist/cjs/ion-back-button.cjs.entry.js +73 -73
  279. package/dist/cjs/ion-backdrop.cjs.entry.js +40 -40
  280. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +194 -194
  281. package/dist/cjs/ion-button_2.cjs.entry.js +303 -303
  282. package/dist/cjs/ion-card_5.cjs.entry.js +105 -105
  283. package/dist/cjs/ion-checkbox.cjs.entry.js +149 -147
  284. package/dist/cjs/ion-chip.cjs.entry.js +20 -20
  285. package/dist/cjs/ion-col_3.cjs.entry.js +136 -136
  286. package/dist/cjs/ion-datetime-button.cjs.entry.js +325 -325
  287. package/dist/cjs/ion-datetime_3.cjs.entry.js +2204 -2162
  288. package/dist/cjs/ion-fab_3.cjs.entry.js +150 -150
  289. package/dist/cjs/ion-img.cjs.entry.js +79 -79
  290. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +198 -190
  291. package/dist/cjs/ion-input.cjs.entry.js +443 -399
  292. package/dist/cjs/ion-item-option_3.cjs.entry.js +457 -457
  293. package/dist/cjs/ion-item_8.cjs.entry.js +441 -428
  294. package/dist/cjs/ion-loading.cjs.entry.js +220 -210
  295. package/dist/cjs/ion-menu_3.cjs.entry.js +670 -670
  296. package/dist/cjs/ion-modal.cjs.entry.js +1415 -1405
  297. package/dist/cjs/ion-nav_2.cjs.entry.js +904 -904
  298. package/dist/cjs/ion-picker-column-internal.cjs.entry.js +331 -327
  299. package/dist/cjs/ion-picker-internal.cjs.entry.js +453 -453
  300. package/dist/cjs/ion-popover.cjs.entry.js +1108 -1098
  301. package/dist/cjs/ion-progress-bar.cjs.entry.js +40 -40
  302. package/dist/cjs/ion-radio_2.cjs.entry.js +321 -316
  303. package/dist/cjs/ion-range.cjs.entry.js +558 -556
  304. package/dist/cjs/ion-refresher_2.cjs.entry.js +786 -786
  305. package/dist/cjs/ion-reorder_2.cjs.entry.js +267 -267
  306. package/dist/cjs/ion-ripple-effect.cjs.entry.js +66 -66
  307. package/dist/cjs/ion-route_4.cjs.entry.js +693 -693
  308. package/dist/cjs/ion-searchbar.cjs.entry.js +360 -358
  309. package/dist/cjs/ion-segment_2.cjs.entry.js +507 -507
  310. package/dist/cjs/ion-select_3.cjs.entry.js +784 -768
  311. package/dist/cjs/ion-spinner.cjs.entry.js +46 -46
  312. package/dist/cjs/ion-split-pane.cjs.entry.js +119 -119
  313. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +138 -138
  314. package/dist/cjs/ion-tab_2.cjs.entry.js +187 -187
  315. package/dist/cjs/ion-text.cjs.entry.js +13 -13
  316. package/dist/cjs/ion-textarea.cjs.entry.js +401 -353
  317. package/dist/cjs/ion-toast.cjs.entry.js +771 -419
  318. package/dist/cjs/ion-toggle.cjs.entry.js +227 -225
  319. package/dist/cjs/ionic-global-a4edbf03.js +230 -0
  320. package/dist/cjs/ionic.cjs.js +5 -5
  321. package/dist/cjs/ios.transition-b5353f3e.js +654 -0
  322. package/dist/cjs/keyboard-0272231f.js +81 -0
  323. package/dist/cjs/{keyboard-38f2bb7b.js → keyboard-af1bb365.js} +62 -62
  324. package/dist/cjs/keyboard-controller-c05e747a.js +167 -0
  325. package/dist/cjs/loader.cjs.js +4 -4
  326. package/dist/cjs/lock-controller-6585a42a.js +40 -0
  327. package/dist/cjs/md.transition-67157dd9.js +59 -0
  328. package/dist/cjs/notch-controller-9735e7ac.js +155 -0
  329. package/dist/cjs/overlays-e77cc023.js +716 -0
  330. package/dist/cjs/spinner-configs-282fd50a.js +147 -0
  331. package/dist/cjs/status-tap-b5d77c08.js +42 -0
  332. package/dist/cjs/swipe-back-e37a1a5c.js +81 -0
  333. package/dist/cjs/theme-d1c573d2.js +48 -0
  334. package/dist/cjs/watch-options-f5f3e158.js +49 -0
  335. package/dist/collection/collection-manifest.json +7 -7
  336. package/dist/collection/components/accordion/accordion.ios.css +44 -0
  337. package/dist/collection/components/accordion/accordion.js +410 -410
  338. package/dist/collection/components/accordion/accordion.md.css +22 -0
  339. package/dist/collection/components/accordion/test/a11y/accordion.e2e.js +31 -31
  340. package/dist/collection/components/accordion/test/accordion.e2e.js +24 -24
  341. package/dist/collection/components/accordion/test/accordion.spec.js +195 -0
  342. package/dist/collection/components/accordion/test/basic/accordion.e2e.js +26 -26
  343. package/dist/collection/components/accordion/test/multiple/accordion.e2e.js +18 -18
  344. package/dist/collection/components/accordion/test/nested/accordion.e2e.js +16 -16
  345. package/dist/collection/components/accordion/test/standalone/accordion.e2e.js +6 -6
  346. package/dist/collection/components/accordion-group/accordion-group.ios.css +44 -0
  347. package/dist/collection/components/accordion-group/accordion-group.js +421 -421
  348. package/dist/collection/components/accordion-group/accordion-group.md.css +66 -0
  349. package/dist/collection/components/action-sheet/action-sheet.ios.css +44 -0
  350. package/dist/collection/components/action-sheet/action-sheet.js +739 -729
  351. package/dist/collection/components/action-sheet/action-sheet.md.css +44 -0
  352. package/dist/collection/components/action-sheet/animations/ios.enter.js +18 -18
  353. package/dist/collection/components/action-sheet/animations/ios.leave.js +12 -12
  354. package/dist/collection/components/action-sheet/animations/md.enter.js +18 -18
  355. package/dist/collection/components/action-sheet/animations/md.leave.js +12 -12
  356. package/dist/collection/components/action-sheet/test/a11y/action-sheet.e2e.js +59 -59
  357. package/dist/collection/components/action-sheet/test/action-sheet-id.spec.js +32 -0
  358. package/dist/collection/components/action-sheet/test/basic/action-sheet-rendering.e2e.js +33 -33
  359. package/dist/collection/components/action-sheet/test/basic/action-sheet.e2e.js +74 -74
  360. package/dist/collection/components/action-sheet/test/basic/action-sheet.spec.js +18 -0
  361. package/dist/collection/components/action-sheet/test/basic/fixture.js +23 -23
  362. package/dist/collection/components/action-sheet/test/is-open/action-sheet.e2e.js +25 -25
  363. package/dist/collection/components/action-sheet/test/translucent/action-sheet.e2e.js +10 -10
  364. package/dist/collection/components/action-sheet/test/trigger/action-sheet.e2e.js +21 -21
  365. package/dist/collection/components/alert/alert.ios.css +85 -1
  366. package/dist/collection/components/alert/alert.js +977 -967
  367. package/dist/collection/components/alert/alert.md.css +115 -3
  368. package/dist/collection/components/alert/animations/ios.enter.js +19 -19
  369. package/dist/collection/components/alert/animations/ios.leave.js +13 -13
  370. package/dist/collection/components/alert/animations/md.enter.js +19 -19
  371. package/dist/collection/components/alert/animations/md.leave.js +10 -10
  372. package/dist/collection/components/alert/test/a11y/alert.e2e.js +116 -116
  373. package/dist/collection/components/alert/test/alert-id.spec.js +32 -0
  374. package/dist/collection/components/alert/test/alert.spec.js +37 -0
  375. package/dist/collection/components/alert/test/basic/alert-tablet.e2e.js +40 -0
  376. package/dist/collection/components/alert/test/basic/alert.e2e.js +96 -96
  377. package/dist/collection/components/alert/test/is-open/alert.e2e.js +25 -25
  378. package/dist/collection/components/alert/test/standalone/alert.e2e.js +9 -9
  379. package/dist/collection/components/alert/test/trigger/alert.e2e.js +21 -21
  380. package/dist/collection/components/app/app.js +116 -116
  381. package/dist/collection/components/app/test/safe-area/app.e2e.js +24 -24
  382. package/dist/collection/components/avatar/avatar.ios.css +44 -0
  383. package/dist/collection/components/avatar/avatar.js +17 -17
  384. package/dist/collection/components/avatar/avatar.md.css +44 -0
  385. package/dist/collection/components/avatar/test/basic/avatar.e2e.js +12 -12
  386. package/dist/collection/components/back-button/back-button.ios.css +44 -0
  387. package/dist/collection/components/back-button/back-button.js +214 -214
  388. package/dist/collection/components/back-button/back-button.md.css +44 -0
  389. package/dist/collection/components/back-button/test/a11y/back-button.e2e.js +6 -6
  390. package/dist/collection/components/back-button/test/back-button.spec.js +86 -0
  391. package/dist/collection/components/back-button/test/basic/back-button.e2e.js +6 -6
  392. package/dist/collection/components/back-button/test/toolbar/back-button.e2e.js +6 -6
  393. package/dist/collection/components/backdrop/backdrop.ios.css +44 -0
  394. package/dist/collection/components/backdrop/backdrop.js +131 -131
  395. package/dist/collection/components/backdrop/backdrop.md.css +44 -0
  396. package/dist/collection/components/badge/badge.ios.css +44 -0
  397. package/dist/collection/components/badge/badge.js +49 -49
  398. package/dist/collection/components/badge/badge.md.css +44 -0
  399. package/dist/collection/components/badge/test/a11y/badge.e2e.js +6 -6
  400. package/dist/collection/components/badge/test/basic/badge.e2e.js +6 -6
  401. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +44 -0
  402. package/dist/collection/components/breadcrumb/breadcrumb.js +395 -395
  403. package/dist/collection/components/breadcrumb/breadcrumb.md.css +44 -0
  404. package/dist/collection/components/breadcrumb/test/aria.spec.js +22 -0
  405. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +22 -0
  406. package/dist/collection/components/breadcrumbs/breadcrumbs.js +247 -247
  407. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +22 -0
  408. package/dist/collection/components/breadcrumbs/test/a11y/breadcrumbs.e2e.js +12 -12
  409. package/dist/collection/components/breadcrumbs/test/basic/breadcrumbs.e2e.js +6 -6
  410. package/dist/collection/components/breadcrumbs/test/breadcrumbs.spec.js +58 -0
  411. package/dist/collection/components/breadcrumbs/test/collapsed/breadcrumbs.e2e.js +6 -6
  412. package/dist/collection/components/breadcrumbs/test/reactive/breadcrumbs.e2e.js +43 -43
  413. package/dist/collection/components/button/button.ios.css +66 -0
  414. package/dist/collection/components/button/button.js +541 -541
  415. package/dist/collection/components/button/button.md.css +44 -0
  416. package/dist/collection/components/button/test/a11y/button.e2e.js +21 -21
  417. package/dist/collection/components/button/test/basic/button.e2e.js +32 -32
  418. package/dist/collection/components/button/test/clear/button.e2e.js +6 -6
  419. package/dist/collection/components/button/test/expand/button.e2e.js +6 -6
  420. package/dist/collection/components/button/test/form-reference/button.e2e.js +84 -84
  421. package/dist/collection/components/button/test/form-reference/button.spec.js +26 -0
  422. package/dist/collection/components/button/test/icon/button.e2e.js +6 -6
  423. package/dist/collection/components/button/test/outline/button.e2e.js +6 -6
  424. package/dist/collection/components/button/test/round/button.e2e.js +6 -6
  425. package/dist/collection/components/button/test/size/button.e2e.js +22 -22
  426. package/dist/collection/components/button/test/strong/button.e2e.js +22 -22
  427. package/dist/collection/components/button/test/wrap/button.e2e.js +73 -73
  428. package/dist/collection/components/buttons/buttons.ios.css +66 -0
  429. package/dist/collection/components/buttons/buttons.js +46 -46
  430. package/dist/collection/components/buttons/buttons.md.css +66 -0
  431. package/dist/collection/components/buttons/test/a11y/buttons.e2e.js +21 -21
  432. package/dist/collection/components/card/card.ios.css +44 -0
  433. package/dist/collection/components/card/card.js +251 -251
  434. package/dist/collection/components/card/card.md.css +44 -0
  435. package/dist/collection/components/card/test/a11y/card.e2e.js +6 -6
  436. package/dist/collection/components/card/test/aria.spec.js +16 -0
  437. package/dist/collection/components/card/test/basic/card.e2e.js +38 -38
  438. package/dist/collection/components/card-content/card-content.ios.css +44 -0
  439. package/dist/collection/components/card-content/card-content.js +21 -21
  440. package/dist/collection/components/card-content/card-content.md.css +44 -0
  441. package/dist/collection/components/card-header/card-header.ios.css +44 -0
  442. package/dist/collection/components/card-header/card-header.js +70 -70
  443. package/dist/collection/components/card-header/card-header.md.css +44 -0
  444. package/dist/collection/components/card-header/test/basic/card-header.e2e.js +6 -6
  445. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +44 -0
  446. package/dist/collection/components/card-subtitle/card-subtitle.js +50 -50
  447. package/dist/collection/components/card-subtitle/card-subtitle.md.css +44 -0
  448. package/dist/collection/components/card-title/card-title.ios.css +44 -0
  449. package/dist/collection/components/card-title/card-title.js +50 -50
  450. package/dist/collection/components/card-title/card-title.md.css +44 -0
  451. package/dist/collection/components/checkbox/checkbox.ios.css +66 -6
  452. package/dist/collection/components/checkbox/checkbox.js +418 -415
  453. package/dist/collection/components/checkbox/checkbox.md.css +66 -6
  454. package/dist/collection/components/checkbox/test/a11y/checkbox.e2e.js +14 -14
  455. package/dist/collection/components/checkbox/test/basic/checkbox.e2e.js +50 -50
  456. package/dist/collection/components/checkbox/test/checkbox.spec.js +34 -0
  457. package/dist/collection/components/checkbox/test/color/checkbox.e2e.js +11 -11
  458. package/dist/collection/components/checkbox/test/indeterminate/checkbox.e2e.js +6 -6
  459. package/dist/collection/components/checkbox/test/item/checkbox.e2e.js +29 -29
  460. package/dist/collection/components/checkbox/test/label/checkbox.e2e.js +75 -75
  461. package/dist/collection/components/checkbox/test/legacy/basic/checkbox.e2e.js +45 -45
  462. package/dist/collection/components/checkbox/test/legacy/indeterminate/checkbox.e2e.js +6 -6
  463. package/dist/collection/components/checkbox/test/states/checkbox.e2e.js +21 -21
  464. package/dist/collection/components/chip/chip.ios.css +22 -0
  465. package/dist/collection/components/chip/chip.js +90 -90
  466. package/dist/collection/components/chip/chip.md.css +22 -0
  467. package/dist/collection/components/chip/test/a11y/chip.e2e.js +19 -19
  468. package/dist/collection/components/chip/test/basic/chip.e2e.js +42 -42
  469. package/dist/collection/components/chip/test/states/chip.e2e.js +14 -14
  470. package/dist/collection/components/col/col.css +66 -0
  471. package/dist/collection/components/col/col.js +536 -536
  472. package/dist/collection/components/content/content.css +22 -0
  473. package/dist/collection/components/content/content.js +745 -745
  474. package/dist/collection/components/content/test/basic/content.e2e.js +6 -6
  475. package/dist/collection/components/content/test/fixed/content.e2e.js +6 -6
  476. package/dist/collection/components/content/test/fullscreen/content.e2e.js +6 -6
  477. package/dist/collection/components/content/test/standalone/content.e2e.js +5 -5
  478. package/dist/collection/components/datetime/datetime.ios.css +45 -0
  479. package/dist/collection/components/datetime/datetime.js +2264 -2232
  480. package/dist/collection/components/datetime/datetime.md.css +45 -0
  481. package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +58 -58
  482. package/dist/collection/components/datetime/test/a11y/datetime.spec.js +43 -0
  483. package/dist/collection/components/datetime/test/basic/datetime.e2e.js +241 -241
  484. package/dist/collection/components/datetime/test/color/datetime.e2e.js +9 -9
  485. package/dist/collection/components/datetime/test/comparison.spec.js +43 -0
  486. package/dist/collection/components/datetime/test/custom/datetime.e2e.js +37 -37
  487. package/dist/collection/components/datetime/test/data.spec.js +456 -0
  488. package/dist/collection/components/datetime/test/datetime.e2e.js +29 -29
  489. package/dist/collection/components/datetime/test/disable-dates/datetime.e2e.js +119 -119
  490. package/dist/collection/components/datetime/test/disabled/datetime.e2e.js +43 -43
  491. package/dist/collection/components/datetime/test/disabled/datetime.spec.js +33 -0
  492. package/dist/collection/components/datetime/test/display/datetime.e2e.js +86 -86
  493. package/dist/collection/components/datetime/test/first-day-of-week/datetime.e2e.js +6 -6
  494. package/dist/collection/components/datetime/test/format.spec.js +124 -0
  495. package/dist/collection/components/datetime/test/helpers.spec.js +72 -0
  496. package/dist/collection/components/datetime/test/highlighted-dates/datetime.e2e.js +76 -76
  497. package/dist/collection/components/datetime/test/hour-cycle/datetime.e2e.js +21 -21
  498. package/dist/collection/components/datetime/test/locale/datetime.e2e.js +98 -98
  499. package/dist/collection/components/datetime/test/manipulation.spec.js +565 -0
  500. package/dist/collection/components/datetime/test/minmax/datetime.e2e.js +178 -178
  501. package/dist/collection/components/datetime/test/month-year-picker/datetime.e2e.js +17 -17
  502. package/dist/collection/components/datetime/test/multiple/datetime.e2e.js +170 -170
  503. package/dist/collection/components/datetime/test/parse.spec.js +222 -0
  504. package/dist/collection/components/datetime/test/position/datetime.e2e.js +14 -14
  505. package/dist/collection/components/datetime/test/prefer-wheel/datetime.e2e.js +263 -263
  506. package/dist/collection/components/datetime/test/prefer-wheel/datetime.spec.js +27 -0
  507. package/dist/collection/components/datetime/test/presentation/datetime.e2e.js +137 -137
  508. package/dist/collection/components/datetime/test/readonly/datetime.e2e.js +86 -86
  509. package/dist/collection/components/datetime/test/set-value/datetime.e2e.js +40 -40
  510. package/dist/collection/components/datetime/test/state.spec.js +114 -0
  511. package/dist/collection/components/datetime/test/time-label/datetime.e2e.js +13 -13
  512. package/dist/collection/components/datetime/test/values/datetime.e2e.js +77 -77
  513. package/dist/collection/components/datetime/utils/comparison.js +22 -22
  514. package/dist/collection/components/datetime/utils/data.js +394 -394
  515. package/dist/collection/components/datetime/utils/format.js +143 -143
  516. package/dist/collection/components/datetime/utils/helpers.js +74 -74
  517. package/dist/collection/components/datetime/utils/manipulation.js +332 -282
  518. package/dist/collection/components/datetime/utils/parse.js +139 -139
  519. package/dist/collection/components/datetime/utils/state.js +123 -123
  520. package/dist/collection/components/datetime-button/datetime-button.css +22 -0
  521. package/dist/collection/components/datetime-button/datetime-button.js +399 -399
  522. package/dist/collection/components/datetime-button/test/a11y/datetime-button.e2e.js +11 -11
  523. package/dist/collection/components/datetime-button/test/basic/datetime-button.e2e.js +123 -123
  524. package/dist/collection/components/datetime-button/test/disabled/datetime-button.e2e.js +13 -13
  525. package/dist/collection/components/datetime-button/test/multiple/datetime-button.e2e.js +38 -38
  526. package/dist/collection/components/datetime-button/test/overlays/datetime-button.e2e.js +102 -102
  527. package/dist/collection/components/fab/fab.css +88 -0
  528. package/dist/collection/components/fab/fab.js +179 -179
  529. package/dist/collection/components/fab/test/basic/fab.e2e.js +50 -50
  530. package/dist/collection/components/fab/test/custom-size/fab.e2e.js +6 -6
  531. package/dist/collection/components/fab/test/safe-area/fab.e2e.js +25 -25
  532. package/dist/collection/components/fab/test/states/fab.e2e.js +6 -6
  533. package/dist/collection/components/fab/test/translucent/fab.e2e.js +17 -17
  534. package/dist/collection/components/fab-button/fab-button.ios.css +44 -0
  535. package/dist/collection/components/fab-button/fab-button.js +374 -374
  536. package/dist/collection/components/fab-button/fab-button.md.css +44 -0
  537. package/dist/collection/components/fab-button/test/a11y/fab-button.e2e.js +6 -6
  538. package/dist/collection/components/fab-list/fab-list.css +44 -0
  539. package/dist/collection/components/fab-list/fab-list.js +79 -79
  540. package/dist/collection/components/footer/footer.ios.css +44 -0
  541. package/dist/collection/components/footer/footer.js +135 -135
  542. package/dist/collection/components/footer/footer.md.css +44 -0
  543. package/dist/collection/components/footer/footer.utils.js +25 -25
  544. package/dist/collection/components/footer/test/basic/footer.e2e.js +18 -18
  545. package/dist/collection/components/footer/test/fade/footer.e2e.js +10 -10
  546. package/dist/collection/components/footer/test/scroll-target/footer.e2e.js +15 -15
  547. package/dist/collection/components/footer/test/with-tabs/footer.e2e.js +6 -6
  548. package/dist/collection/components/grid/grid.css +66 -0
  549. package/dist/collection/components/grid/grid.js +44 -44
  550. package/dist/collection/components/grid/test/basic/grid.e2e.js +6 -6
  551. package/dist/collection/components/grid/test/offsets/grid.e2e.js +6 -6
  552. package/dist/collection/components/grid/test/padding/grid.e2e.js +6 -6
  553. package/dist/collection/components/grid/test/sizes/grid.e2e.js +6 -6
  554. package/dist/collection/components/header/header.ios.css +44 -0
  555. package/dist/collection/components/header/header.js +181 -181
  556. package/dist/collection/components/header/header.md.css +44 -0
  557. package/dist/collection/components/header/header.utils.js +148 -148
  558. package/dist/collection/components/header/test/a11y/header.e2e.js +18 -18
  559. package/dist/collection/components/header/test/basic/header.e2e.js +23 -23
  560. package/dist/collection/components/header/test/condense/header.e2e.js +25 -25
  561. package/dist/collection/components/header/test/fade/header.e2e.js +10 -10
  562. package/dist/collection/components/header/test/scroll-target/header.e2e.js +15 -15
  563. package/dist/collection/components/icon/test/basic/icon.e2e.js +6 -6
  564. package/dist/collection/components/icon/test/dir/icon.e2e.js +11 -11
  565. package/dist/collection/components/img/img.js +177 -177
  566. package/dist/collection/components/img/test/basic/img.e2e.js +62 -62
  567. package/dist/collection/components/img/test/draggable/img.e2e.js +10 -10
  568. package/dist/collection/components/infinite-scroll/infinite-scroll.js +279 -271
  569. package/dist/collection/components/infinite-scroll/test/basic/infinite-scroll.e2e.js +11 -11
  570. package/dist/collection/components/infinite-scroll/test/scroll-target/infinite-scroll.e2e.js +11 -11
  571. package/dist/collection/components/infinite-scroll/test/small-dom-update/infinite-scroll.e2e.js +31 -0
  572. package/dist/collection/components/infinite-scroll/test/top/infinite-scroll.e2e.js +11 -11
  573. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +44 -0
  574. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +86 -86
  575. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +44 -0
  576. package/dist/collection/components/infinite-scroll-content/test/infinite-scroll-content.spec.js +37 -0
  577. package/dist/collection/components/input/input.ios.css +76 -3
  578. package/dist/collection/components/input/input.js +1250 -1204
  579. package/dist/collection/components/input/input.md.css +145 -12
  580. package/dist/collection/components/input/input.utils.js +22 -22
  581. package/dist/collection/components/input/test/a11y/input.e2e.js +12 -12
  582. package/dist/collection/components/input/test/basic/input.e2e.js +63 -63
  583. package/dist/collection/components/input/test/bottom-content/input.e2e.js +89 -89
  584. package/dist/collection/components/input/test/card/input.e2e.js +6 -6
  585. package/dist/collection/components/input/test/clear-on-edit/input.e2e.js +45 -25
  586. package/dist/collection/components/input/test/color/input.e2e.js +88 -88
  587. package/dist/collection/components/input/test/fill/input.e2e.js +63 -63
  588. package/dist/collection/components/input/test/highlight/input.e2e.js +52 -52
  589. package/dist/collection/components/input/test/input.e2e.js +6 -6
  590. package/dist/collection/components/input/test/input.spec.js +85 -0
  591. package/dist/collection/components/input/test/item/input.e2e.js +11 -11
  592. package/dist/collection/components/input/test/item/input.spec.js +24 -0
  593. package/dist/collection/components/input/test/label-placement/input.e2e.js +104 -104
  594. package/dist/collection/components/input/test/legacy/a11y/input.e2e.js +15 -15
  595. package/dist/collection/components/input/test/legacy/basic/input.e2e.js +102 -102
  596. package/dist/collection/components/input/test/legacy/clear-on-edit/input.e2e.js +44 -44
  597. package/dist/collection/components/input/test/legacy/input-events.e2e.js +56 -56
  598. package/dist/collection/components/input/test/legacy/masking/input.e2e.js +15 -15
  599. package/dist/collection/components/input/test/legacy/spec/input.e2e.js +8 -8
  600. package/dist/collection/components/input/test/slot/input.e2e.js +51 -0
  601. package/dist/collection/components/input/test/states/input.e2e.js +11 -11
  602. package/dist/collection/components/item/item.ios.css +85 -3
  603. package/dist/collection/components/item/item.js +614 -614
  604. package/dist/collection/components/item/item.md.css +129 -3
  605. package/dist/collection/components/item/test/a11y/item.e2e.js +47 -47
  606. package/dist/collection/components/item/test/a11y/item.spec.js +48 -0
  607. package/dist/collection/components/item/test/alignment/item.e2e.js +6 -6
  608. package/dist/collection/components/item/test/basic/item.e2e.js +16 -16
  609. package/dist/collection/components/item/test/buttons/item.e2e.js +18 -18
  610. package/dist/collection/components/item/test/colors/item.e2e.js +6 -6
  611. package/dist/collection/components/item/test/counter/item.e2e.js +34 -34
  612. package/dist/collection/components/item/test/css-variables/item.e2e.js +6 -6
  613. package/dist/collection/components/item/test/disabled/item.e2e.js +6 -7
  614. package/dist/collection/components/item/test/dividers/item.e2e.js +6 -6
  615. package/dist/collection/components/item/test/groups/item.e2e.js +8 -8
  616. package/dist/collection/components/item/test/highlight/item.e2e.js +6 -6
  617. package/dist/collection/components/item/test/icons/item.e2e.js +6 -6
  618. package/dist/collection/components/item/test/images/item.e2e.js +6 -6
  619. package/dist/collection/components/item/test/inputs/item.e2e.js +139 -139
  620. package/dist/collection/components/item/test/legacy/alignment/item.e2e.js +6 -6
  621. package/dist/collection/components/item/test/legacy/disabled/item.e2e.js +6 -6
  622. package/dist/collection/components/item/test/legacy/fill/item.e2e.js +6 -6
  623. package/dist/collection/components/item/test/legacy/form/item.e2e.js +6 -6
  624. package/dist/collection/components/item/test/lines/item.e2e.js +6 -6
  625. package/dist/collection/components/item/test/media/item.e2e.js +6 -6
  626. package/dist/collection/components/item/test/reorder/item.e2e.js +8 -8
  627. package/dist/collection/components/item/test/slotted-inputs/item.e2e.js +6 -6
  628. package/dist/collection/components/item/test/states/item.e2e.js +6 -6
  629. package/dist/collection/components/item-divider/item-divider.ios.css +66 -0
  630. package/dist/collection/components/item-divider/item-divider.js +71 -71
  631. package/dist/collection/components/item-divider/item-divider.md.css +66 -0
  632. package/dist/collection/components/item-divider/test/a11y/item-divider.e2e.js +11 -11
  633. package/dist/collection/components/item-divider/test/basic/item-divider.e2e.js +25 -25
  634. package/dist/collection/components/item-divider/test/spec/item-divider.e2e.js +8 -8
  635. package/dist/collection/components/item-group/item-group.ios.css +44 -0
  636. package/dist/collection/components/item-group/item-group.js +22 -22
  637. package/dist/collection/components/item-group/item-group.md.css +44 -0
  638. package/dist/collection/components/item-option/item-option.ios.css +44 -0
  639. package/dist/collection/components/item-option/item-option.js +197 -197
  640. package/dist/collection/components/item-option/item-option.md.css +44 -0
  641. package/dist/collection/components/item-options/item-options.ios.css +66 -0
  642. package/dist/collection/components/item-options/item-options.js +110 -110
  643. package/dist/collection/components/item-options/item-options.md.css +66 -0
  644. package/dist/collection/components/item-sliding/item-sliding.css +22 -0
  645. package/dist/collection/components/item-sliding/item-sliding.js +538 -538
  646. package/dist/collection/components/item-sliding/test/a11y/item-sliding.e2e.js +5 -5
  647. package/dist/collection/components/item-sliding/test/async/item-sliding.e2e.js +25 -25
  648. package/dist/collection/components/item-sliding/test/basic/item-sliding.e2e.js +87 -87
  649. package/dist/collection/components/item-sliding/test/icons/item-sliding.e2e.js +20 -20
  650. package/dist/collection/components/item-sliding/test/scroll-target/item-sliding.e2e.js +18 -18
  651. package/dist/collection/components/item-sliding/test/test.utils.js +20 -20
  652. package/dist/collection/components/label/label.ios.css +80 -3
  653. package/dist/collection/components/label/label.js +174 -174
  654. package/dist/collection/components/label/label.md.css +80 -3
  655. package/dist/collection/components/label/test/a11y/label.e2e.js +21 -21
  656. package/dist/collection/components/label/test/basic/label.e2e.js +21 -21
  657. package/dist/collection/components/label/test/color/label.e2e.js +21 -21
  658. package/dist/collection/components/label/test/headings/label.e2e.js +5 -5
  659. package/dist/collection/components/list/list.ios.css +66 -0
  660. package/dist/collection/components/list/list.js +101 -101
  661. package/dist/collection/components/list/list.md.css +66 -0
  662. package/dist/collection/components/list/test/a11y/list.e2e.js +6 -6
  663. package/dist/collection/components/list/test/basic/list.e2e.js +6 -6
  664. package/dist/collection/components/list/test/inset/list.e2e.js +16 -16
  665. package/dist/collection/components/list/test/lines/list.e2e.js +40 -40
  666. package/dist/collection/components/list-header/list-header.ios.css +66 -0
  667. package/dist/collection/components/list-header/list-header.js +69 -69
  668. package/dist/collection/components/list-header/list-header.md.css +66 -0
  669. package/dist/collection/components/list-header/test/a11y/list-header.e2e.js +6 -6
  670. package/dist/collection/components/list-header/test/basic/list-header.e2e.js +14 -14
  671. package/dist/collection/components/loading/animations/ios.enter.js +19 -19
  672. package/dist/collection/components/loading/animations/ios.leave.js +13 -13
  673. package/dist/collection/components/loading/animations/md.enter.js +19 -19
  674. package/dist/collection/components/loading/animations/md.leave.js +13 -13
  675. package/dist/collection/components/loading/loading.ios.css +44 -0
  676. package/dist/collection/components/loading/loading.js +730 -720
  677. package/dist/collection/components/loading/loading.md.css +44 -0
  678. package/dist/collection/components/loading/test/a11y/loading.e2e.js +26 -26
  679. package/dist/collection/components/loading/test/basic/loading.e2e.js +60 -60
  680. package/dist/collection/components/loading/test/basic/loading.spec.js +16 -0
  681. package/dist/collection/components/loading/test/is-open/loading.e2e.js +17 -17
  682. package/dist/collection/components/loading/test/loading-id.spec.js +32 -0
  683. package/dist/collection/components/loading/test/loading.spec.js +37 -0
  684. package/dist/collection/components/loading/test/standalone/loading.e2e.js +13 -13
  685. package/dist/collection/components/loading/test/trigger/loading.e2e.js +21 -21
  686. package/dist/collection/components/menu/menu.ios.css +47 -4
  687. package/dist/collection/components/menu/menu.js +956 -956
  688. package/dist/collection/components/menu/menu.md.css +47 -4
  689. package/dist/collection/components/menu/test/a11y/menu.e2e.js +13 -13
  690. package/dist/collection/components/menu/test/basic/menu.e2e.js +102 -102
  691. package/dist/collection/components/menu/test/custom/menu.e2e.js +61 -0
  692. package/dist/collection/components/menu/test/disable/menu.e2e.js +44 -44
  693. package/dist/collection/components/menu/test/focus-trap/menu.e2e.js +61 -61
  694. package/dist/collection/components/menu/test/multiple/menu.e2e.js +49 -49
  695. package/dist/collection/components/menu/test/safe-area/menu.e2e.js +54 -54
  696. package/dist/collection/components/menu-button/menu-button.ios.css +44 -0
  697. package/dist/collection/components/menu-button/menu-button.js +173 -173
  698. package/dist/collection/components/menu-button/menu-button.md.css +44 -0
  699. package/dist/collection/components/menu-button/test/a11y/menu-button.e2e.js +12 -12
  700. package/dist/collection/components/menu-button/test/async/menu-button.e2e.js +12 -12
  701. package/dist/collection/components/menu-button/test/basic/menu-button.e2e.js +6 -6
  702. package/dist/collection/components/menu-toggle/menu-toggle-util.js +2 -2
  703. package/dist/collection/components/menu-toggle/menu-toggle.js +93 -93
  704. package/dist/collection/components/menu-toggle/test/basic/menu-toggle.e2e.js +33 -33
  705. package/dist/collection/components/modal/animations/ios.enter.js +81 -81
  706. package/dist/collection/components/modal/animations/ios.leave.js +74 -74
  707. package/dist/collection/components/modal/animations/md.enter.js +21 -21
  708. package/dist/collection/components/modal/animations/md.leave.js +15 -15
  709. package/dist/collection/components/modal/animations/sheet.js +43 -43
  710. package/dist/collection/components/modal/gestures/sheet.js +289 -289
  711. package/dist/collection/components/modal/gestures/swipe-to-close.js +248 -247
  712. package/dist/collection/components/modal/gestures/utils.js +39 -39
  713. package/dist/collection/components/modal/modal.ios.css +44 -0
  714. package/dist/collection/components/modal/modal.js +1290 -1280
  715. package/dist/collection/components/modal/modal.md.css +44 -0
  716. package/dist/collection/components/modal/test/a11y/modal.e2e.js +12 -12
  717. package/dist/collection/components/modal/test/a11y/modal.spec.js +22 -0
  718. package/dist/collection/components/modal/test/basic/modal.e2e.js +110 -110
  719. package/dist/collection/components/modal/test/basic/modal.spec.js +16 -0
  720. package/dist/collection/components/modal/test/can-dismiss/modal-card.e2e.js +44 -44
  721. package/dist/collection/components/modal/test/can-dismiss/modal-sheet.e2e.js +62 -62
  722. package/dist/collection/components/modal/test/can-dismiss/modal.e2e.js +16 -16
  723. package/dist/collection/components/modal/test/can-dismiss/modal.spec.js +191 -0
  724. package/dist/collection/components/modal/test/card/modal-card.e2e.js +69 -69
  725. package/dist/collection/components/modal/test/card/modal-tablet.e2e.js +67 -67
  726. package/dist/collection/components/modal/test/card-nav/modal.e2e.js +26 -26
  727. package/dist/collection/components/modal/test/card-refresher/modal.e2e.js +14 -14
  728. package/dist/collection/components/modal/test/card-scroll-target/modal.e2e.js +34 -34
  729. package/dist/collection/components/modal/test/custom/modal.e2e.js +16 -16
  730. package/dist/collection/components/modal/test/custom-dialog/modal.e2e.js +12 -12
  731. package/dist/collection/components/modal/test/dark-mode/model.e2e.js +12 -12
  732. package/dist/collection/components/modal/test/fixtures.js +21 -21
  733. package/dist/collection/components/modal/test/inline/modal.e2e.js +34 -34
  734. package/dist/collection/components/modal/test/is-open/modal.e2e.js +17 -17
  735. package/dist/collection/components/modal/test/modal-id.spec.js +32 -0
  736. package/dist/collection/components/modal/test/sheet/modal.e2e.js +178 -178
  737. package/dist/collection/components/modal/test/standalone/modal.e2e.js +12 -12
  738. package/dist/collection/components/modal/test/trigger/modal.e2e.js +23 -23
  739. package/dist/collection/components/modal/utils.js +55 -55
  740. package/dist/collection/components/modal/utils.spec.js +7 -7
  741. package/dist/collection/components/nav/nav.css +22 -0
  742. package/dist/collection/components/nav/nav.js +1748 -1748
  743. package/dist/collection/components/nav/test/basic/nav.e2e.js +58 -58
  744. package/dist/collection/components/nav/test/modal-navigation/nav.e2e.js +52 -52
  745. package/dist/collection/components/nav/test/nav-controller.spec.js +749 -0
  746. package/dist/collection/components/nav/test/nested/nav.e2e.js +54 -54
  747. package/dist/collection/components/nav/test/routing/nav.e2e.js +75 -75
  748. package/dist/collection/components/nav/view-controller.js +52 -52
  749. package/dist/collection/components/nav-link/nav-link-utils.js +16 -16
  750. package/dist/collection/components/nav-link/nav-link.js +106 -106
  751. package/dist/collection/components/note/note.ios.css +44 -0
  752. package/dist/collection/components/note/note.js +49 -49
  753. package/dist/collection/components/note/note.md.css +44 -0
  754. package/dist/collection/components/note/test/a11y/note.e2e.js +59 -16
  755. package/dist/collection/components/note/test/basic/note.e2e.js +33 -33
  756. package/dist/collection/components/picker/animations/ios.enter.js +18 -18
  757. package/dist/collection/components/picker/animations/ios.leave.js +14 -14
  758. package/dist/collection/components/picker/picker.ios.css +44 -0
  759. package/dist/collection/components/picker/picker.js +782 -772
  760. package/dist/collection/components/picker/picker.md.css +44 -0
  761. package/dist/collection/components/picker/test/basic/picker.e2e.js +17 -17
  762. package/dist/collection/components/picker/test/is-open/picker.e2e.js +17 -17
  763. package/dist/collection/components/picker/test/picker-id.spec.js +32 -0
  764. package/dist/collection/components/picker/test/trigger/picker.e2e.js +21 -21
  765. package/dist/collection/components/picker-column/picker-column.ios.css +44 -0
  766. package/dist/collection/components/picker-column/picker-column.js +377 -377
  767. package/dist/collection/components/picker-column/picker-column.md.css +44 -0
  768. package/dist/collection/components/picker-column/test/picker-column-aria.spec.js +35 -0
  769. package/dist/collection/components/picker-column/test/picker-column-dynamic.spec.js +29 -0
  770. package/dist/collection/components/picker-column/test/picker-column.spec.js +17 -0
  771. package/dist/collection/components/picker-column/test/standalone/picker-column.e2e.js +27 -27
  772. package/dist/collection/components/picker-column/test/test.utils.js +29 -29
  773. package/dist/collection/components/picker-column-internal/picker-column-internal.ios.css +33 -3
  774. package/dist/collection/components/picker-column-internal/picker-column-internal.js +523 -501
  775. package/dist/collection/components/picker-column-internal/picker-column-internal.md.css +55 -3
  776. package/dist/collection/components/picker-column-internal/test/basic/picker-column-internal.e2e.js +53 -53
  777. package/dist/collection/components/picker-column-internal/test/disabled/picker-column-internal.e2e.js +66 -37
  778. package/dist/collection/components/picker-internal/picker-internal.ios.css +44 -0
  779. package/dist/collection/components/picker-internal/picker-internal.js +517 -517
  780. package/dist/collection/components/picker-internal/picker-internal.md.css +44 -0
  781. package/dist/collection/components/picker-internal/test/a11y/picker-internal.e2e.js +6 -6
  782. package/dist/collection/components/picker-internal/test/basic/picker-internal.e2e.js +76 -76
  783. package/dist/collection/components/picker-internal/test/keyboard-entry/picker-internal.e2e.js +39 -39
  784. package/dist/collection/components/popover/animations/ios.enter.js +79 -79
  785. package/dist/collection/components/popover/animations/ios.leave.js +28 -28
  786. package/dist/collection/components/popover/animations/md.enter.js +58 -58
  787. package/dist/collection/components/popover/animations/md.leave.js +19 -19
  788. package/dist/collection/components/popover/popover.ios.css +44 -0
  789. package/dist/collection/components/popover/popover.js +1189 -1179
  790. package/dist/collection/components/popover/popover.md.css +44 -0
  791. package/dist/collection/components/popover/test/adjustment/popover.e2e.js +22 -22
  792. package/dist/collection/components/popover/test/arrow/popover.e2e.js +15 -15
  793. package/dist/collection/components/popover/test/async/popover.e2e.js +29 -29
  794. package/dist/collection/components/popover/test/basic/popover.e2e.js +108 -108
  795. package/dist/collection/components/popover/test/basic/popover.spec.js +16 -0
  796. package/dist/collection/components/popover/test/dismiss-on-select/popover.e2e.js +26 -26
  797. package/dist/collection/components/popover/test/fixture.js +16 -16
  798. package/dist/collection/components/popover/test/inline/popover.e2e.js +18 -18
  799. package/dist/collection/components/popover/test/is-open/popover.e2e.js +5 -5
  800. package/dist/collection/components/popover/test/nested/popover.e2e.js +81 -81
  801. package/dist/collection/components/popover/test/popover-id.spec.js +32 -0
  802. package/dist/collection/components/popover/test/position/popover.e2e.js +18 -18
  803. package/dist/collection/components/popover/test/reference/popover.e2e.js +14 -14
  804. package/dist/collection/components/popover/test/size/popover.e2e.js +29 -29
  805. package/dist/collection/components/popover/test/standalone/popover.e2e.js +7 -7
  806. package/dist/collection/components/popover/test/test.utils.js +23 -23
  807. package/dist/collection/components/popover/test/trigger/popover.e2e.js +35 -35
  808. package/dist/collection/components/popover/test/util.spec.js +53 -0
  809. package/dist/collection/components/popover/utils.js +606 -606
  810. package/dist/collection/components/progress-bar/progress-bar.ios.css +22 -0
  811. package/dist/collection/components/progress-bar/progress-bar.js +145 -145
  812. package/dist/collection/components/progress-bar/progress-bar.md.css +22 -0
  813. package/dist/collection/components/progress-bar/test/basic/progress-bar.e2e.js +6 -6
  814. package/dist/collection/components/progress-bar/test/buffer/progress-bar.e2e.js +10 -10
  815. package/dist/collection/components/progress-bar/test/determinate/progress-bar.e2e.js +10 -10
  816. package/dist/collection/components/radio/radio.ios.css +66 -6
  817. package/dist/collection/components/radio/radio.js +453 -449
  818. package/dist/collection/components/radio/radio.md.css +66 -6
  819. package/dist/collection/components/radio/test/a11y/radio.e2e.js +41 -40
  820. package/dist/collection/components/radio/test/color/radio.e2e.js +11 -11
  821. package/dist/collection/components/radio/test/item/radio.e2e.js +37 -37
  822. package/dist/collection/components/radio/test/label-placement/radio.e2e.js +70 -70
  823. package/dist/collection/components/radio/test/legacy/a11y/radio.e2e.js +29 -29
  824. package/dist/collection/components/radio/test/legacy/basic/radio.e2e.js +43 -43
  825. package/dist/collection/components/radio/test/radio.spec.js +60 -0
  826. package/dist/collection/components/radio/test/states/radio.e2e.js +21 -21
  827. package/dist/collection/components/radio-group/radio-group.js +279 -255
  828. package/dist/collection/components/radio-group/test/basic/radio-group.e2e.js +35 -35
  829. package/dist/collection/components/radio-group/test/fixtures.js +22 -22
  830. package/dist/collection/components/radio-group/test/form/radio-group.e2e.js +39 -39
  831. package/dist/collection/components/radio-group/test/legacy/basic/radio-group.e2e.js +59 -59
  832. package/dist/collection/components/radio-group/test/legacy/form/radio-group.e2e.js +22 -22
  833. package/dist/collection/components/radio-group/test/legacy/search/radio-group.e2e.js +27 -27
  834. package/dist/collection/components/radio-group/test/radio-group-events.e2e.js +42 -42
  835. package/dist/collection/components/radio-group/test/radio-group.spec.js +69 -0
  836. package/dist/collection/components/radio-group/test/search/radio-group.e2e.js +23 -23
  837. package/dist/collection/components/range/range.ios.css +44 -6
  838. package/dist/collection/components/range/range.js +1001 -998
  839. package/dist/collection/components/range/range.md.css +44 -6
  840. package/dist/collection/components/range/test/a11y/range.e2e.js +46 -46
  841. package/dist/collection/components/range/test/active-bar-start/range.e2e.js +6 -6
  842. package/dist/collection/components/range/test/basic/range.e2e.js +23 -23
  843. package/dist/collection/components/range/test/color/range.e2e.js +6 -6
  844. package/dist/collection/components/range/test/custom/range.e2e.js +6 -6
  845. package/dist/collection/components/range/test/item/range.e2e.js +28 -28
  846. package/dist/collection/components/range/test/label/range.e2e.js +99 -99
  847. package/dist/collection/components/range/test/label/range.spec.js +23 -0
  848. package/dist/collection/components/range/test/legacy/a11y/range.e2e.js +25 -25
  849. package/dist/collection/components/range/test/legacy/active-bar-start/range.e2e.js +6 -6
  850. package/dist/collection/components/range/test/legacy/basic/range.e2e.js +61 -61
  851. package/dist/collection/components/range/test/legacy/range-events.e2e.js +80 -80
  852. package/dist/collection/components/range/test/legacy/scroll-target/range.e2e.js +23 -23
  853. package/dist/collection/components/range/test/range-events.e2e.js +135 -135
  854. package/dist/collection/components/range/test/range.spec.js +221 -0
  855. package/dist/collection/components/range/test/scroll-target/range.e2e.js +23 -23
  856. package/dist/collection/components/range/test/states/range.e2e.js +21 -21
  857. package/dist/collection/components/refresher/refresher.ios.css +44 -0
  858. package/dist/collection/components/refresher/refresher.js +806 -806
  859. package/dist/collection/components/refresher/refresher.md.css +44 -0
  860. package/dist/collection/components/refresher/refresher.utils.js +148 -148
  861. package/dist/collection/components/refresher/test/basic/refresher.e2e.js +25 -25
  862. package/dist/collection/components/refresher/test/scroll-target/refresher.e2e.js +25 -25
  863. package/dist/collection/components/refresher/test/test.utils.js +5 -5
  864. package/dist/collection/components/refresher-content/refresher-content.js +131 -131
  865. package/dist/collection/components/refresher-content/test/refresher-content.spec.js +46 -0
  866. package/dist/collection/components/reorder/reorder.ios.css +22 -0
  867. package/dist/collection/components/reorder/reorder.js +37 -37
  868. package/dist/collection/components/reorder/reorder.md.css +22 -0
  869. package/dist/collection/components/reorder-group/reorder-group.css +22 -0
  870. package/dist/collection/components/reorder-group/reorder-group.js +327 -327
  871. package/dist/collection/components/reorder-group/test/a11y/reorder-group.e2e.js +6 -6
  872. package/dist/collection/components/reorder-group/test/basic/reorder-group.e2e.js +11 -11
  873. package/dist/collection/components/reorder-group/test/interactive/reorder-group.e2e.js +21 -21
  874. package/dist/collection/components/reorder-group/test/nested/reorder-group.e2e.js +21 -21
  875. package/dist/collection/components/reorder-group/test/scroll-target/reorder-group.e2e.js +21 -21
  876. package/dist/collection/components/ripple-effect/ripple-effect.css +22 -0
  877. package/dist/collection/components/ripple-effect/ripple-effect.js +135 -135
  878. package/dist/collection/components/ripple-effect/test/basic/ripple-effect.e2e.js +48 -48
  879. package/dist/collection/components/route/route.js +151 -151
  880. package/dist/collection/components/route-redirect/route-redirect.js +76 -76
  881. package/dist/collection/components/router/router.js +472 -472
  882. package/dist/collection/components/router/test/basic/router.e2e.js +55 -55
  883. package/dist/collection/components/router/test/guards/href/router.e2e.js +51 -51
  884. package/dist/collection/components/router/test/guards/link/router.e2e.js +51 -51
  885. package/dist/collection/components/router/test/guards/push/router.e2e.js +51 -51
  886. package/dist/collection/components/router/test/guards/router.e2e.js +5 -5
  887. package/dist/collection/components/router/test/guards/test.utils.js +2 -2
  888. package/dist/collection/components/router/test/matching.spec.js +250 -0
  889. package/dist/collection/components/router/test/parser.spec.js +133 -0
  890. package/dist/collection/components/router/test/path.spec.js +218 -0
  891. package/dist/collection/components/router/test/router.spec.js +55 -0
  892. package/dist/collection/components/router/utils/debug.js +14 -14
  893. package/dist/collection/components/router/utils/dom.js +56 -56
  894. package/dist/collection/components/router/utils/matching.js +150 -150
  895. package/dist/collection/components/router/utils/parser.js +52 -52
  896. package/dist/collection/components/router/utils/path.js +66 -66
  897. package/dist/collection/components/router-link/router-link.css +22 -0
  898. package/dist/collection/components/router-link/router-link.js +157 -157
  899. package/dist/collection/components/router-outlet/router-outlet.css +22 -0
  900. package/dist/collection/components/router-outlet/router-outlet.js +459 -459
  901. package/dist/collection/components/router-outlet/test/basic/router-outlet.e2e.js +31 -31
  902. package/dist/collection/components/row/row.css +66 -0
  903. package/dist/collection/components/row/row.js +15 -15
  904. package/dist/collection/components/searchbar/searchbar.ios.css +44 -0
  905. package/dist/collection/components/searchbar/searchbar.js +891 -889
  906. package/dist/collection/components/searchbar/searchbar.md.css +44 -0
  907. package/dist/collection/components/searchbar/test/a11y/searchbar.e2e.js +11 -11
  908. package/dist/collection/components/searchbar/test/basic/searchbar.e2e.js +101 -101
  909. package/dist/collection/components/searchbar/test/events/searchbar.e2e.js +55 -55
  910. package/dist/collection/components/searchbar/test/searchbar.spec.js +15 -0
  911. package/dist/collection/components/segment/segment.ios.css +66 -0
  912. package/dist/collection/components/segment/segment.js +631 -631
  913. package/dist/collection/components/segment/segment.md.css +66 -0
  914. package/dist/collection/components/segment/test/a11y/segment.e2e.js +37 -37
  915. package/dist/collection/components/segment/test/basic/segment.e2e.js +22 -22
  916. package/dist/collection/components/segment/test/custom/segment.e2e.js +6 -6
  917. package/dist/collection/components/segment/test/icon/segment.e2e.js +6 -6
  918. package/dist/collection/components/segment/test/modes/segment.e2e.js +15 -15
  919. package/dist/collection/components/segment/test/scrollable/segment.e2e.js +12 -12
  920. package/dist/collection/components/segment/test/segment-events.e2e.js +97 -97
  921. package/dist/collection/components/segment/test/segment.spec.js +37 -0
  922. package/dist/collection/components/segment/test/toolbar/segment.e2e.js +21 -21
  923. package/dist/collection/components/segment/test/wrap/segment.e2e.js +21 -21
  924. package/dist/collection/components/segment-button/segment-button.ios.css +44 -0
  925. package/dist/collection/components/segment-button/segment-button.js +217 -217
  926. package/dist/collection/components/segment-button/segment-button.md.css +44 -0
  927. package/dist/collection/components/select/select.ios.css +126 -7
  928. package/dist/collection/components/select/select.js +1201 -1184
  929. package/dist/collection/components/select/select.md.css +173 -19
  930. package/dist/collection/components/select/test/a11y/select.e2e.js +14 -14
  931. package/dist/collection/components/select/test/async/select.e2e.js +14 -14
  932. package/dist/collection/components/select/test/basic/select.e2e.js +140 -140
  933. package/dist/collection/components/select/test/card/select.e2e.js +6 -6
  934. package/dist/collection/components/select/test/color/select.e2e.js +22 -22
  935. package/dist/collection/components/select/test/compare-with/select.e2e.js +33 -33
  936. package/dist/collection/components/select/test/custom/select.e2e.js +19 -19
  937. package/dist/collection/components/select/test/disabled/select.e2e.js +17 -17
  938. package/dist/collection/components/select/test/fill/select.e2e.js +63 -63
  939. package/dist/collection/components/select/test/highlight/select.e2e.js +74 -74
  940. package/dist/collection/components/select/test/item/select.e2e.js +26 -11
  941. package/dist/collection/components/select/test/label/select.e2e.js +141 -141
  942. package/dist/collection/components/select/test/legacy/async/select.e2e.js +8 -8
  943. package/dist/collection/components/select/test/legacy/basic/select.e2e.js +108 -108
  944. package/dist/collection/components/select/test/legacy/compare-with/select.e2e.js +33 -33
  945. package/dist/collection/components/select/test/legacy/custom/custom.e2e.js +5 -5
  946. package/dist/collection/components/select/test/legacy/single-value/select.e2e.js +8 -8
  947. package/dist/collection/components/select/test/legacy/spec/select.e2e.js +6 -6
  948. package/dist/collection/components/select/test/legacy/standalone/select.e2e.js +11 -11
  949. package/dist/collection/components/select/test/legacy/wrapping/select.e2e.js +17 -17
  950. package/dist/collection/components/select/test/popover-size/select.e2e.js +63 -63
  951. package/dist/collection/components/select/test/select.spec.js +59 -0
  952. package/dist/collection/components/select/test/slot/select.e2e.js +67 -0
  953. package/dist/collection/components/select/test/states/select.e2e.js +21 -21
  954. package/dist/collection/components/select/test/toggle-icon/select.e2e.js +14 -14
  955. package/dist/collection/components/select/test/wrapping/select.e2e.js +16 -16
  956. package/dist/collection/components/select-option/select-option.js +60 -60
  957. package/dist/collection/components/select-popover/select-popover.ios.css +66 -0
  958. package/dist/collection/components/select-popover/select-popover.js +197 -197
  959. package/dist/collection/components/select-popover/select-popover.md.css +66 -0
  960. package/dist/collection/components/select-popover/test/basic/select-popover.e2e.js +52 -52
  961. package/dist/collection/components/select-popover/test/fixtures.js +33 -33
  962. package/dist/collection/components/skeleton-text/skeleton-text.css +22 -0
  963. package/dist/collection/components/skeleton-text/skeleton-text.js +87 -48
  964. package/dist/collection/components/skeleton-text/test/basic/skeleton-text.e2e.js +6 -6
  965. package/dist/collection/components/skeleton-text/test/custom/skeleton-text.e2e.js +6 -6
  966. package/dist/collection/components/slides/IonicSlides.js +95 -95
  967. package/dist/collection/components/spinner/spinner-configs.js +121 -121
  968. package/dist/collection/components/spinner/spinner.css +22 -0
  969. package/dist/collection/components/spinner/spinner.js +137 -137
  970. package/dist/collection/components/spinner/test/basic/spinner.e2e.js +10 -10
  971. package/dist/collection/components/spinner/test/color/spinner.e2e.js +10 -10
  972. package/dist/collection/components/spinner/test/resize/spinner.e2e.js +8 -8
  973. package/dist/collection/components/split-pane/split-pane.ios.css +67 -2
  974. package/dist/collection/components/split-pane/split-pane.js +225 -225
  975. package/dist/collection/components/split-pane/split-pane.md.css +67 -2
  976. package/dist/collection/components/split-pane/test/basic/split-pane.e2e.js +18 -18
  977. package/dist/collection/components/split-pane/test/multiple/split-pane.e2e.js +23 -23
  978. package/dist/collection/components/tab/tab.js +170 -170
  979. package/dist/collection/components/tab-bar/tab-bar.ios.css +66 -0
  980. package/dist/collection/components/tab-bar/tab-bar.js +177 -177
  981. package/dist/collection/components/tab-bar/tab-bar.md.css +66 -0
  982. package/dist/collection/components/tab-bar/test/basic/tab-bar.e2e.js +8 -8
  983. package/dist/collection/components/tab-bar/test/custom/tab-bar.e2e.js +6 -6
  984. package/dist/collection/components/tab-bar/test/translucent/tab-bar.e2e.js +14 -14
  985. package/dist/collection/components/tab-button/tab-button.ios.css +44 -0
  986. package/dist/collection/components/tab-button/tab-button.js +267 -267
  987. package/dist/collection/components/tab-button/tab-button.md.css +44 -0
  988. package/dist/collection/components/tab-button/test/a11y/tab-button.e2e.js +6 -6
  989. package/dist/collection/components/tab-button/test/basic/tab-button.e2e.js +16 -16
  990. package/dist/collection/components/tab-button/test/layout/tab-button.e2e.js +26 -26
  991. package/dist/collection/components/tab-button/test/states/tab-button.e2e.js +26 -26
  992. package/dist/collection/components/tabs/tabs.css +22 -0
  993. package/dist/collection/components/tabs/tabs.js +344 -344
  994. package/dist/collection/components/tabs/test/basic/tabs.e2e.js +24 -24
  995. package/dist/collection/components/tabs/test/placements/tabs.e2e.js +17 -17
  996. package/dist/collection/components/text/test/basic/text.e2e.js +11 -11
  997. package/dist/collection/components/text/text.css +22 -0
  998. package/dist/collection/components/text/text.js +47 -47
  999. package/dist/collection/components/textarea/test/a11y/textarea.e2e.js +12 -12
  1000. package/dist/collection/components/textarea/test/autogrow/textarea.e2e.js +31 -31
  1001. package/dist/collection/components/textarea/test/bottom-content/textarea.e2e.js +82 -82
  1002. package/dist/collection/components/textarea/test/card/textarea.e2e.js +6 -6
  1003. package/dist/collection/components/textarea/test/clear-on-edit/textarea.e2e.js +53 -17
  1004. package/dist/collection/components/textarea/test/color/textarea.e2e.js +88 -88
  1005. package/dist/collection/components/textarea/test/cols/textarea.e2e.js +11 -11
  1006. package/dist/collection/components/textarea/test/fill/textarea.e2e.js +63 -63
  1007. package/dist/collection/components/textarea/test/highlight/textarea.e2e.js +52 -52
  1008. package/dist/collection/components/textarea/test/item/textarea.e2e.js +11 -11
  1009. package/dist/collection/components/textarea/test/label-placement/textarea.e2e.js +150 -150
  1010. package/dist/collection/components/textarea/test/legacy/a11y/textarea.e2e.js +15 -15
  1011. package/dist/collection/components/textarea/test/legacy/autogrow/textarea.e2e.js +31 -31
  1012. package/dist/collection/components/textarea/test/legacy/basic/textarea.e2e.js +30 -30
  1013. package/dist/collection/components/textarea/test/legacy/clear-on-edit/textarea.e2e.js +17 -17
  1014. package/dist/collection/components/textarea/test/slot/textarea.e2e.js +51 -0
  1015. package/dist/collection/components/textarea/test/states/textarea.e2e.js +11 -11
  1016. package/dist/collection/components/textarea/test/textarea-events.e2e.js +57 -57
  1017. package/dist/collection/components/textarea/test/textarea.spec.js +59 -0
  1018. package/dist/collection/components/textarea/textarea.ios.css +125 -5
  1019. package/dist/collection/components/textarea/textarea.js +1069 -1019
  1020. package/dist/collection/components/textarea/textarea.md.css +179 -14
  1021. package/dist/collection/components/thumbnail/test/basic/thumbnail.e2e.js +28 -28
  1022. package/dist/collection/components/thumbnail/thumbnail.css +22 -0
  1023. package/dist/collection/components/thumbnail/thumbnail.js +15 -15
  1024. package/dist/collection/components/title/test/a11y/title.e2e.js +17 -17
  1025. package/dist/collection/components/title/test/basic/title.e2e.js +13 -13
  1026. package/dist/collection/components/title/title.ios.css +22 -0
  1027. package/dist/collection/components/title/title.js +119 -119
  1028. package/dist/collection/components/title/title.md.css +22 -0
  1029. package/dist/collection/components/toast/animations/ios.enter.js +21 -20
  1030. package/dist/collection/components/toast/animations/ios.leave.js +18 -18
  1031. package/dist/collection/components/toast/animations/md.enter.js +23 -22
  1032. package/dist/collection/components/toast/animations/md.leave.js +6 -6
  1033. package/dist/collection/components/toast/animations/utils.js +62 -56
  1034. package/dist/collection/components/toast/gestures/swipe-to-dismiss.js +267 -0
  1035. package/dist/collection/components/toast/test/a11y/toast.e2e.js +92 -92
  1036. package/dist/collection/components/toast/test/basic/toast.e2e.js +101 -101
  1037. package/dist/collection/components/toast/test/is-open/toast.e2e.js +17 -17
  1038. package/dist/collection/components/toast/test/layout/toast.e2e.js +9 -9
  1039. package/dist/collection/components/toast/test/position-anchor/toast.e2e.js +37 -37
  1040. package/dist/collection/components/toast/test/standalone/toast.e2e.js +10 -10
  1041. package/dist/collection/components/toast/test/swipe-gesture/toast.e2e.js +84 -0
  1042. package/dist/collection/components/toast/test/toast-config.spec.js +25 -0
  1043. package/dist/collection/components/toast/test/toast-id.spec.js +32 -0
  1044. package/dist/collection/components/toast/test/toast.spec.js +200 -0
  1045. package/dist/collection/components/toast/test/trigger/toast.e2e.js +21 -21
  1046. package/dist/collection/components/toast/toast.ios.css +54 -10
  1047. package/dist/collection/components/toast/toast.js +1065 -952
  1048. package/dist/collection/components/toast/toast.md.css +54 -0
  1049. package/dist/collection/components/toggle/test/a11y/toggle.e2e.js +6 -6
  1050. package/dist/collection/components/toggle/test/color/toggle.e2e.js +11 -11
  1051. package/dist/collection/components/toggle/test/enable-on-off-labels/toggle.e2e.js +27 -27
  1052. package/dist/collection/components/toggle/test/item/toggle.e2e.js +52 -52
  1053. package/dist/collection/components/toggle/test/label/toggle.e2e.js +65 -65
  1054. package/dist/collection/components/toggle/test/legacy/basic/toggle.e2e.js +69 -69
  1055. package/dist/collection/components/toggle/test/legacy/enable-on-off-labels/toggle.e2e.js +23 -23
  1056. package/dist/collection/components/toggle/test/legacy/sizes/toggle.e2e.js +6 -6
  1057. package/dist/collection/components/toggle/test/sizes/toggle.e2e.js +6 -6
  1058. package/dist/collection/components/toggle/test/states/toggle.e2e.js +16 -16
  1059. package/dist/collection/components/toggle/test/toggle.spec.js +67 -0
  1060. package/dist/collection/components/toggle/toggle.ios.css +66 -6
  1061. package/dist/collection/components/toggle/toggle.js +487 -484
  1062. package/dist/collection/components/toggle/toggle.md.css +66 -6
  1063. package/dist/collection/components/toolbar/test/basic/toolbar.e2e.js +7 -7
  1064. package/dist/collection/components/toolbar/test/colors/toolbar.e2e.js +6 -6
  1065. package/dist/collection/components/toolbar/toolbar.ios.css +44 -0
  1066. package/dist/collection/components/toolbar/toolbar.js +100 -100
  1067. package/dist/collection/components/toolbar/toolbar.md.css +44 -0
  1068. package/dist/collection/css/test/a11y/typography.e2e.js +6 -6
  1069. package/dist/collection/global/config.js +51 -51
  1070. package/dist/collection/global/ionic-global.js +54 -54
  1071. package/dist/collection/global/test/config-controller.spec.js +77 -0
  1072. package/dist/collection/utils/animation/animation-utils.js +91 -91
  1073. package/dist/collection/utils/animation/animation.js +905 -904
  1074. package/dist/collection/utils/animation/cubic-bezier.js +49 -49
  1075. package/dist/collection/utils/animation/test/animation.spec.js +447 -0
  1076. package/dist/collection/utils/animation/test/animationbuilder/animation.e2e.js +26 -26
  1077. package/dist/collection/utils/animation/test/basic/animation.e2e.js +12 -12
  1078. package/dist/collection/utils/animation/test/display/animation.e2e.js +18 -18
  1079. package/dist/collection/utils/animation/test/hooks/animation.e2e.js +39 -39
  1080. package/dist/collection/utils/animation/test/multiple/animation.e2e.js +27 -27
  1081. package/dist/collection/utils/browser/index.js +0 -22
  1082. package/dist/collection/utils/config.js +20 -20
  1083. package/dist/collection/utils/content/content.utils.spec.js +121 -121
  1084. package/dist/collection/utils/content/index.js +58 -58
  1085. package/dist/collection/utils/floating-point/floating-point.spec.js +14 -14
  1086. package/dist/collection/utils/floating-point/index.js +5 -5
  1087. package/dist/collection/utils/focus-visible.js +63 -63
  1088. package/dist/collection/utils/forms/compare-with-utils.js +39 -0
  1089. package/dist/collection/utils/forms/form-controller.js +45 -45
  1090. package/dist/collection/utils/forms/index.js +1 -0
  1091. package/dist/collection/utils/forms/notch-controller.js +120 -120
  1092. package/dist/collection/utils/framework-delegate.js +121 -121
  1093. package/dist/collection/utils/gesture/button-active.js +56 -56
  1094. package/dist/collection/utils/gesture/gesture-controller.js +182 -182
  1095. package/dist/collection/utils/gesture/index.js +222 -222
  1096. package/dist/collection/utils/gesture/listener.js +36 -36
  1097. package/dist/collection/utils/gesture/pointer-events.js +113 -113
  1098. package/dist/collection/utils/gesture/recognizers.js +46 -46
  1099. package/dist/collection/utils/gesture/swipe-back.js +65 -65
  1100. package/dist/collection/utils/hardware-back-button.js +48 -48
  1101. package/dist/collection/utils/helpers.js +258 -258
  1102. package/dist/collection/utils/helpers.spec.js +28 -28
  1103. package/dist/collection/utils/input-shims/hacks/common.js +61 -61
  1104. package/dist/collection/utils/input-shims/hacks/hide-caret.js +19 -19
  1105. package/dist/collection/utils/input-shims/hacks/input-blurring.js +47 -47
  1106. package/dist/collection/utils/input-shims/hacks/scroll-assist.js +225 -225
  1107. package/dist/collection/utils/input-shims/hacks/scroll-data.js +29 -29
  1108. package/dist/collection/utils/input-shims/hacks/scroll-padding.js +21 -21
  1109. package/dist/collection/utils/input-shims/hacks/test/scroll-assist.e2e.js +97 -97
  1110. package/dist/collection/utils/input-shims/input-shims.js +87 -81
  1111. package/dist/collection/utils/keyboard/keyboard-controller.js +128 -128
  1112. package/dist/collection/utils/keyboard/keyboard.js +59 -59
  1113. package/dist/collection/utils/keyboard/test/keyboard-controller.spec.js +21 -0
  1114. package/dist/collection/utils/keyboard/test/keyboard.spec.js +214 -0
  1115. package/dist/collection/utils/lock-controller.js +24 -24
  1116. package/dist/collection/utils/logging/index.js +3 -3
  1117. package/dist/collection/utils/media.js +13 -13
  1118. package/dist/collection/utils/menu-controller/animations/base.js +8 -8
  1119. package/dist/collection/utils/menu-controller/animations/overlay.js +21 -21
  1120. package/dist/collection/utils/menu-controller/animations/push.js +20 -20
  1121. package/dist/collection/utils/menu-controller/animations/reveal.js +6 -6
  1122. package/dist/collection/utils/menu-controller/index.js +204 -206
  1123. package/dist/collection/utils/native/capacitor.js +4 -4
  1124. package/dist/collection/utils/native/haptic.js +151 -151
  1125. package/dist/collection/utils/native/keyboard.js +47 -47
  1126. package/dist/collection/utils/native/native-interface.js +15 -15
  1127. package/dist/collection/utils/native/status-bar.js +36 -36
  1128. package/dist/collection/utils/overlays.js +495 -494
  1129. package/dist/collection/utils/platform.js +56 -56
  1130. package/dist/collection/utils/rtl/dir.js +5 -5
  1131. package/dist/collection/utils/rtl/dir.spec.js +17 -17
  1132. package/dist/collection/utils/sanitization/index.js +122 -122
  1133. package/dist/collection/utils/sanitization/test/sanitization.spec.js +43 -0
  1134. package/dist/collection/utils/slot-mutation-controller.js +86 -85
  1135. package/dist/collection/utils/status-tap.js +26 -26
  1136. package/dist/collection/utils/tap-click/index.js +171 -171
  1137. package/dist/collection/utils/tap-click/test/tap-click.e2e.js +12 -12
  1138. package/dist/collection/utils/test/aria.spec.js +79 -0
  1139. package/dist/collection/utils/test/attributes.spec.js +53 -0
  1140. package/dist/collection/utils/test/framework-delegate/framework-delegate.e2e.js +25 -25
  1141. package/dist/collection/utils/test/hardware-back-button.spec.js +53 -0
  1142. package/dist/collection/utils/test/overlays/overlays.e2e.js +137 -137
  1143. package/dist/collection/utils/test/overlays/overlays.spec.js +102 -0
  1144. package/dist/collection/utils/test/platform.spec.js +132 -0
  1145. package/dist/collection/utils/test/platform.utils.js +77 -77
  1146. package/dist/collection/utils/test/playwright/drag-element.js +69 -69
  1147. package/dist/collection/utils/test/playwright/generator.js +48 -25
  1148. package/dist/collection/utils/test/playwright/matchers/index.js +3 -3
  1149. package/dist/collection/utils/test/playwright/matchers/toHaveReceivedEvent.js +21 -21
  1150. package/dist/collection/utils/test/playwright/matchers/toHaveReceivedEventDetail.js +28 -28
  1151. package/dist/collection/utils/test/playwright/matchers/toHaveReceivedEventTimes.js +22 -22
  1152. package/dist/collection/utils/test/playwright/page/event-spy.js +110 -110
  1153. package/dist/collection/utils/test/playwright/page/utils/goto.js +52 -52
  1154. package/dist/collection/utils/test/playwright/page/utils/locator.js +8 -8
  1155. package/dist/collection/utils/test/playwright/page/utils/set-content.js +44 -35
  1156. package/dist/collection/utils/test/playwright/page/utils/set-ion-viewport.js +19 -19
  1157. package/dist/collection/utils/test/playwright/page/utils/spy-on-event.js +4 -4
  1158. package/dist/collection/utils/test/playwright/page/utils/wait-for-changes.js +48 -48
  1159. package/dist/collection/utils/test/playwright/playwright-page.js +35 -35
  1160. package/dist/collection/utils/test/playwright/viewports/index.js +13 -13
  1161. package/dist/collection/utils/test/press-keys.js +77 -77
  1162. package/dist/collection/utils/test/ready.spec.js +39 -0
  1163. package/dist/collection/utils/test/theme.spec.js +56 -0
  1164. package/dist/collection/utils/theme.js +23 -23
  1165. package/dist/collection/utils/transition/index.js +163 -163
  1166. package/dist/collection/utils/transition/ios.transition.js +598 -598
  1167. package/dist/collection/utils/transition/md.transition.js +44 -44
  1168. package/dist/collection/utils/watch-options.js +30 -30
  1169. package/dist/docs.json +195 -38
  1170. package/dist/esm/animation-dde8cc0d.js +1060 -0
  1171. package/dist/esm/{app-globals-2398e405.js → app-globals-8c62bec2.js} +1 -1
  1172. package/dist/esm/button-active-308d3edd.js +67 -0
  1173. package/dist/esm/capacitor-59395cbd.js +13 -0
  1174. package/dist/esm/compare-with-utils-a96ff2ea.js +41 -0
  1175. package/dist/esm/config-49c88215.js +193 -0
  1176. package/dist/esm/cubic-bezier-fe2083dc.js +90 -0
  1177. package/dist/esm/data-775093f5.js +1625 -0
  1178. package/dist/esm/{dir-912e3e13.js → dir-babeabeb.js} +5 -5
  1179. package/dist/esm/focus-visible-dd40d69f.js +75 -0
  1180. package/dist/esm/form-controller-548aa79c.js +64 -0
  1181. package/dist/esm/framework-delegate-bc1fd82a.js +140 -0
  1182. package/dist/esm/gesture-controller-1bf57181.js +195 -0
  1183. package/dist/esm/haptic-554688a5.js +206 -0
  1184. package/dist/esm/hardware-back-button-b2bc76db.js +71 -0
  1185. package/dist/esm/helpers-ae653409.js +418 -0
  1186. package/dist/esm/index-1193f005.js +306 -0
  1187. package/dist/esm/index-2cf77112.js +457 -0
  1188. package/dist/esm/index-4743453d.js +231 -0
  1189. package/dist/esm/index-82eeb47f.js +196 -0
  1190. package/dist/esm/{index-595d62c9.js → index-9b0d46f4.js} +3 -3
  1191. package/dist/esm/index-a5d50daf.js +7 -0
  1192. package/dist/esm/{index-7c9b1bca.js → index-b7d870cf.js} +79 -15
  1193. package/dist/esm/{index-4392efa5.js → index-b9e742e5.js} +60 -60
  1194. package/dist/esm/index.js +113 -113
  1195. package/dist/esm/input-shims-6539ce13.js +599 -0
  1196. package/dist/esm/input.utils-a5a2d164.js +135 -0
  1197. package/dist/esm/ion-accordion_2.entry.js +488 -488
  1198. package/dist/esm/ion-action-sheet.entry.js +260 -250
  1199. package/dist/esm/ion-alert.entry.js +442 -432
  1200. package/dist/esm/ion-app_8.entry.js +1151 -1151
  1201. package/dist/esm/ion-avatar_3.entry.js +29 -29
  1202. package/dist/esm/ion-back-button.entry.js +73 -73
  1203. package/dist/esm/ion-backdrop.entry.js +40 -40
  1204. package/dist/esm/ion-breadcrumb_2.entry.js +194 -194
  1205. package/dist/esm/ion-button_2.entry.js +303 -303
  1206. package/dist/esm/ion-card_5.entry.js +105 -105
  1207. package/dist/esm/ion-checkbox.entry.js +149 -147
  1208. package/dist/esm/ion-chip.entry.js +20 -20
  1209. package/dist/esm/ion-col_3.entry.js +136 -136
  1210. package/dist/esm/ion-datetime-button.entry.js +325 -325
  1211. package/dist/esm/ion-datetime_3.entry.js +2204 -2162
  1212. package/dist/esm/ion-fab_3.entry.js +150 -150
  1213. package/dist/esm/ion-img.entry.js +79 -79
  1214. package/dist/esm/ion-infinite-scroll_2.entry.js +198 -190
  1215. package/dist/esm/ion-input.entry.js +443 -399
  1216. package/dist/esm/ion-item-option_3.entry.js +457 -457
  1217. package/dist/esm/ion-item_8.entry.js +441 -428
  1218. package/dist/esm/ion-loading.entry.js +220 -210
  1219. package/dist/esm/ion-menu_3.entry.js +670 -670
  1220. package/dist/esm/ion-modal.entry.js +1415 -1405
  1221. package/dist/esm/ion-nav_2.entry.js +904 -904
  1222. package/dist/esm/ion-picker-column-internal.entry.js +331 -327
  1223. package/dist/esm/ion-picker-internal.entry.js +453 -453
  1224. package/dist/esm/ion-popover.entry.js +1108 -1098
  1225. package/dist/esm/ion-progress-bar.entry.js +40 -40
  1226. package/dist/esm/ion-radio_2.entry.js +321 -316
  1227. package/dist/esm/ion-range.entry.js +558 -556
  1228. package/dist/esm/ion-refresher_2.entry.js +786 -786
  1229. package/dist/esm/ion-reorder_2.entry.js +267 -267
  1230. package/dist/esm/ion-ripple-effect.entry.js +66 -66
  1231. package/dist/esm/ion-route_4.entry.js +693 -693
  1232. package/dist/esm/ion-searchbar.entry.js +360 -358
  1233. package/dist/esm/ion-segment_2.entry.js +507 -507
  1234. package/dist/esm/ion-select_3.entry.js +784 -768
  1235. package/dist/esm/ion-spinner.entry.js +46 -46
  1236. package/dist/esm/ion-split-pane.entry.js +119 -119
  1237. package/dist/esm/ion-tab-bar_2.entry.js +138 -138
  1238. package/dist/esm/ion-tab_2.entry.js +187 -187
  1239. package/dist/esm/ion-text.entry.js +13 -13
  1240. package/dist/esm/ion-textarea.entry.js +401 -353
  1241. package/dist/esm/ion-toast.entry.js +771 -419
  1242. package/dist/esm/ion-toggle.entry.js +227 -225
  1243. package/dist/esm/ionic-global-1f99b929.js +224 -0
  1244. package/dist/esm/ionic.js +6 -6
  1245. package/dist/esm/ios.transition-3376ccb2.js +651 -0
  1246. package/dist/esm/keyboard-52278bd7.js +146 -0
  1247. package/dist/esm/keyboard-73175e24.js +79 -0
  1248. package/dist/esm/keyboard-controller-ec5c2bfa.js +165 -0
  1249. package/dist/esm/loader.js +5 -5
  1250. package/dist/esm/lock-controller-316928be.js +38 -0
  1251. package/dist/esm/md.transition-f992779f.js +57 -0
  1252. package/dist/esm/notch-controller-fea7f9c5.js +153 -0
  1253. package/dist/esm/overlays-b33f6bca.js +693 -0
  1254. package/dist/esm/spinner-configs-964f7cf3.js +145 -0
  1255. package/dist/esm/status-tap-16fd8f3d.js +40 -0
  1256. package/dist/esm/swipe-back-18cb49f7.js +79 -0
  1257. package/dist/esm/theme-01f3f29c.js +43 -0
  1258. package/dist/esm/watch-options-c2911ace.js +47 -0
  1259. package/dist/esm-es5/{animation-8aa13916.js → animation-dde8cc0d.js} +1 -1
  1260. package/dist/esm-es5/app-globals-8c62bec2.js +4 -0
  1261. package/dist/esm-es5/{button-active-ce5cba4c.js → button-active-308d3edd.js} +1 -1
  1262. package/dist/esm-es5/{capacitor-b4979570.js → capacitor-59395cbd.js} +1 -1
  1263. package/dist/esm-es5/compare-with-utils-a96ff2ea.js +4 -0
  1264. package/dist/esm-es5/data-775093f5.js +4 -0
  1265. package/dist/esm-es5/{form-controller-64edeaad.js → form-controller-548aa79c.js} +1 -1
  1266. package/dist/esm-es5/{framework-delegate-aa433dea.js → framework-delegate-bc1fd82a.js} +1 -1
  1267. package/dist/esm-es5/{haptic-1243b917.js → haptic-554688a5.js} +1 -1
  1268. package/dist/esm-es5/index-1193f005.js +4 -0
  1269. package/dist/esm-es5/{index-ff313b19.js → index-2cf77112.js} +1 -1
  1270. package/dist/esm-es5/{index-6a0ccabb.js → index-4743453d.js} +1 -1
  1271. package/dist/esm-es5/{index-f0cc4e14.js → index-82eeb47f.js} +1 -1
  1272. package/dist/esm-es5/index-b7d870cf.js +5 -0
  1273. package/dist/esm-es5/{index-4392efa5.js → index-b9e742e5.js} +1 -1
  1274. package/dist/esm-es5/index.js +1 -1
  1275. package/dist/esm-es5/input-shims-6539ce13.js +4 -0
  1276. package/dist/esm-es5/input.utils-a5a2d164.js +4 -0
  1277. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  1278. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  1279. package/dist/esm-es5/ion-alert.entry.js +1 -1
  1280. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  1281. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  1282. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  1283. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  1284. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  1285. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  1286. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  1287. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  1288. package/dist/esm-es5/ion-chip.entry.js +1 -1
  1289. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  1290. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  1291. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  1292. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  1293. package/dist/esm-es5/ion-img.entry.js +1 -1
  1294. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  1295. package/dist/esm-es5/ion-input.entry.js +1 -1
  1296. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  1297. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  1298. package/dist/esm-es5/ion-loading.entry.js +1 -1
  1299. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  1300. package/dist/esm-es5/ion-modal.entry.js +1 -1
  1301. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  1302. package/dist/esm-es5/ion-picker-column-internal.entry.js +1 -1
  1303. package/dist/esm-es5/ion-picker-internal.entry.js +1 -1
  1304. package/dist/esm-es5/ion-popover.entry.js +1 -1
  1305. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  1306. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  1307. package/dist/esm-es5/ion-range.entry.js +1 -1
  1308. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  1309. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  1310. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  1311. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  1312. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  1313. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  1314. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  1315. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  1316. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  1317. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  1318. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  1319. package/dist/esm-es5/ion-text.entry.js +1 -1
  1320. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  1321. package/dist/esm-es5/ion-toast.entry.js +1 -1
  1322. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  1323. package/dist/esm-es5/{ionic-global-40e42e7f.js → ionic-global-1f99b929.js} +1 -1
  1324. package/dist/esm-es5/ionic.js +1 -1
  1325. package/dist/esm-es5/{ios.transition-1651c430.js → ios.transition-3376ccb2.js} +1 -1
  1326. package/dist/esm-es5/{keyboard-b551279d.js → keyboard-52278bd7.js} +1 -1
  1327. package/dist/esm-es5/{keyboard-b063f012.js → keyboard-73175e24.js} +1 -1
  1328. package/dist/esm-es5/{keyboard-controller-0c2dce71.js → keyboard-controller-ec5c2bfa.js} +1 -1
  1329. package/dist/esm-es5/loader.js +1 -1
  1330. package/dist/esm-es5/md.transition-f992779f.js +4 -0
  1331. package/dist/esm-es5/{notch-controller-8c9c0e54.js → notch-controller-fea7f9c5.js} +1 -1
  1332. package/dist/esm-es5/{overlays-6c9feb7e.js → overlays-b33f6bca.js} +1 -1
  1333. package/dist/esm-es5/{status-tap-9ce68758.js → status-tap-16fd8f3d.js} +1 -1
  1334. package/dist/esm-es5/{swipe-back-cd4295f3.js → swipe-back-18cb49f7.js} +1 -1
  1335. package/dist/html.html-data.json +16 -3
  1336. package/dist/ionic/index.esm.js +1 -1
  1337. package/dist/ionic/ionic.esm.js +1 -1
  1338. package/dist/ionic/ionic.js +15 -15
  1339. package/dist/ionic/p-013013a3.js +4 -0
  1340. package/dist/ionic/p-0235067a.js +4 -0
  1341. package/dist/ionic/{p-a0b6d438.js → p-04377cfa.js} +1 -1
  1342. package/dist/ionic/p-043aa6cc.system.entry.js +4 -0
  1343. package/dist/ionic/{p-5d711127.js → p-0509fd34.js} +1 -1
  1344. package/dist/ionic/p-0550f802.entry.js +4 -0
  1345. package/dist/ionic/p-06abe918.system.entry.js +4 -0
  1346. package/dist/ionic/{p-702d85d8.system.js → p-0aa78a8d.system.js} +1 -1
  1347. package/dist/ionic/{p-41477ad9.system.js → p-0bd51c34.system.js} +1 -1
  1348. package/dist/ionic/p-0dfa4ab4.system.entry.js +4 -0
  1349. package/dist/ionic/p-0ebc87b7.system.entry.js +4 -0
  1350. package/dist/ionic/{p-bed722c4.system.entry.js → p-10ec9af7.system.entry.js} +1 -1
  1351. package/dist/ionic/{p-f4cc91f6.entry.js → p-11786dc7.entry.js} +1 -1
  1352. package/dist/ionic/{p-0dc0d9b5.entry.js → p-11a3973f.entry.js} +1 -1
  1353. package/dist/ionic/{p-a545b4f1.system.js → p-1501b945.system.js} +1 -1
  1354. package/dist/ionic/{p-4e6a1efb.system.entry.js → p-158efe8d.system.entry.js} +1 -1
  1355. package/dist/ionic/p-164aa69c.entry.js +4 -0
  1356. package/dist/ionic/p-17d283b9.system.entry.js +4 -0
  1357. package/dist/ionic/p-18cae04f.js +4 -0
  1358. package/dist/ionic/{p-abacb44b.system.entry.js → p-19c379da.system.entry.js} +1 -1
  1359. package/dist/ionic/p-19d9ceb8.system.js +4 -0
  1360. package/dist/ionic/p-1b27ac67.entry.js +4 -0
  1361. package/dist/ionic/{p-b91fe549.entry.js → p-1c249831.entry.js} +1 -1
  1362. package/dist/ionic/{p-b4b4bb29.system.js → p-1cca10d6.system.js} +1 -1
  1363. package/dist/ionic/p-1e4371bd.js +4 -0
  1364. package/dist/ionic/{p-c7b8c2ef.system.entry.js → p-20e0e75d.system.entry.js} +1 -1
  1365. package/dist/ionic/{p-34d2de14.system.entry.js → p-22827063.system.entry.js} +1 -1
  1366. package/dist/ionic/{p-64ed03a3.entry.js → p-26c4bf85.entry.js} +1 -1
  1367. package/dist/ionic/{p-419eb426.js → p-27281edd.js} +1 -1
  1368. package/dist/ionic/{p-965677f1.entry.js → p-2894d5f6.entry.js} +1 -1
  1369. package/dist/ionic/p-290d3fe9.js +5 -0
  1370. package/dist/ionic/p-29d03b3a.js +4 -0
  1371. package/dist/ionic/p-2a583966.entry.js +4 -0
  1372. package/dist/ionic/p-2b7827c7.js +4 -0
  1373. package/dist/ionic/{p-3d7fea9b.system.entry.js → p-2ba9a9bd.system.entry.js} +1 -1
  1374. package/dist/ionic/p-2cf21a15.system.entry.js +4 -0
  1375. package/dist/ionic/p-2df97906.system.entry.js +4 -0
  1376. package/dist/ionic/{p-fa8d4788.system.js → p-31b2326e.system.js} +1 -1
  1377. package/dist/ionic/{p-744973f3.entry.js → p-3313c481.entry.js} +1 -1
  1378. package/dist/ionic/{p-ffb876b0.system.entry.js → p-332ea4d3.system.entry.js} +1 -1
  1379. package/dist/ionic/{p-97e31c0a.system.js → p-3671f1b9.system.js} +1 -1
  1380. package/dist/ionic/p-36d187af.js +4 -0
  1381. package/dist/ionic/p-376a6063.js +4 -0
  1382. package/dist/ionic/p-38531958.system.entry.js +4 -0
  1383. package/dist/ionic/{p-55ed230e.system.js → p-38c337e7.system.js} +1 -1
  1384. package/dist/ionic/p-38f2c6bb.system.js +4 -0
  1385. package/dist/ionic/{p-3bad5c1a.js → p-3a75d7fd.js} +1 -1
  1386. package/dist/ionic/{p-8b29691f.entry.js → p-3dfc522b.entry.js} +1 -1
  1387. package/dist/ionic/{p-3de79805.entry.js → p-3e8d5e53.entry.js} +1 -1
  1388. package/dist/ionic/p-40f68333.system.js +4 -0
  1389. package/dist/ionic/{p-a6d83a03.system.entry.js → p-41208f54.system.entry.js} +1 -1
  1390. package/dist/ionic/{p-b287ab05.js → p-4180a747.js} +1 -1
  1391. package/dist/ionic/{p-b923f3d7.js → p-42f189f4.js} +1 -1
  1392. package/dist/ionic/{p-d7ea6a0d.system.entry.js → p-4489dd20.system.entry.js} +1 -1
  1393. package/dist/ionic/p-44a56556.js +4 -0
  1394. package/dist/ionic/{p-e76a4bc8.entry.js → p-44dc52e5.entry.js} +1 -1
  1395. package/dist/ionic/{p-f5a750e4.system.entry.js → p-4685218a.system.entry.js} +1 -1
  1396. package/dist/ionic/p-469dd571.system.entry.js +4 -0
  1397. package/dist/ionic/{p-5bd4e009.entry.js → p-47bb15a1.entry.js} +1 -1
  1398. package/dist/ionic/{p-664d2b07.system.entry.js → p-4981ea0a.system.entry.js} +1 -1
  1399. package/dist/ionic/{p-cf425ec5.system.entry.js → p-507ddbfe.system.entry.js} +1 -1
  1400. package/dist/ionic/{p-14aca3fb.entry.js → p-529b24fb.entry.js} +1 -1
  1401. package/dist/ionic/p-52cfafe9.system.js +5 -0
  1402. package/dist/ionic/p-53ec4f1c.system.js +4 -0
  1403. package/dist/ionic/{p-c0c81820.system.js → p-5ad1fe3b.system.js} +1 -1
  1404. package/dist/ionic/{p-7cee75c0.entry.js → p-60959b71.entry.js} +1 -1
  1405. package/dist/ionic/p-61e4d3ec.entry.js +4 -0
  1406. package/dist/ionic/{p-1cb5f2f8.system.entry.js → p-648ad047.system.entry.js} +1 -1
  1407. package/dist/ionic/p-66d633fb.js +4 -0
  1408. package/dist/ionic/{p-63f08fe3.entry.js → p-6855f26a.entry.js} +1 -1
  1409. package/dist/ionic/{p-1a8ae7a7.system.entry.js → p-69641343.system.entry.js} +1 -1
  1410. package/dist/ionic/{p-800ef057.js → p-6ab03751.js} +1 -1
  1411. package/dist/ionic/{p-18e01b30.system.entry.js → p-6c277fa2.system.entry.js} +1 -1
  1412. package/dist/ionic/{p-0e23256e.system.entry.js → p-6e0539ea.system.entry.js} +1 -1
  1413. package/dist/ionic/p-6fba0ce1.system.entry.js +4 -0
  1414. package/dist/ionic/{p-4c80afe1.system.entry.js → p-745e3339.system.entry.js} +1 -1
  1415. package/dist/ionic/p-767f1a92.entry.js +4 -0
  1416. package/dist/ionic/{p-8a308596.system.js → p-7798c78a.system.js} +2 -2
  1417. package/dist/ionic/p-7dc892f8.entry.js +4 -0
  1418. package/dist/ionic/{p-6c3d5383.js → p-7fae5c36.js} +1 -1
  1419. package/dist/ionic/{p-48d9faa7.entry.js → p-803efb5d.entry.js} +1 -1
  1420. package/dist/ionic/{p-a8e68fd9.entry.js → p-806a9810.entry.js} +1 -1
  1421. package/dist/ionic/p-84b567a6.entry.js +4 -0
  1422. package/dist/ionic/p-85f48531.entry.js +4 -0
  1423. package/dist/ionic/p-87bb3735.system.js +4 -0
  1424. package/dist/ionic/{p-613d4042.system.js → p-888db766.system.js} +1 -1
  1425. package/dist/ionic/p-88d5fbd3.js +4 -0
  1426. package/dist/ionic/{p-ccdcb022.system.js → p-8985cdb6.system.js} +1 -1
  1427. package/dist/ionic/p-8aa1d0b7.system.js +4 -0
  1428. package/dist/ionic/{p-a9c3699b.system.entry.js → p-8f301ac5.system.entry.js} +1 -1
  1429. package/dist/ionic/{p-174f3446.entry.js → p-928ee57a.entry.js} +1 -1
  1430. package/dist/ionic/p-932f2259.system.entry.js +4 -0
  1431. package/dist/ionic/p-93390f78.entry.js +4 -0
  1432. package/dist/ionic/p-950c05ad.entry.js +4 -0
  1433. package/dist/ionic/{p-3fb57e1b.system.entry.js → p-96d4814f.system.entry.js} +1 -1
  1434. package/dist/ionic/p-97174c1e.js +4 -0
  1435. package/dist/ionic/p-979d4f5c.system.js +4 -0
  1436. package/dist/ionic/p-98f35d98.js +4 -0
  1437. package/dist/ionic/{p-14b4348c.system.js → p-9a68d8ef.system.js} +1 -1
  1438. package/dist/ionic/p-9ba72fdb.system.entry.js +4 -0
  1439. package/dist/ionic/{p-41122cd6.system.js → p-9f94c72e.system.js} +1 -1
  1440. package/dist/ionic/{p-92800752.entry.js → p-9fb45814.entry.js} +1 -1
  1441. package/dist/ionic/p-9fda6824.system.entry.js +4 -0
  1442. package/dist/ionic/{p-1dc91702.entry.js → p-a06501e3.entry.js} +1 -1
  1443. package/dist/ionic/{p-c4042875.system.js → p-a074be82.system.js} +1 -1
  1444. package/dist/ionic/{p-c7d30db9.entry.js → p-a3013394.entry.js} +1 -1
  1445. package/dist/ionic/p-a42ef163.system.entry.js +4 -0
  1446. package/dist/ionic/p-a49931aa.system.js +4 -0
  1447. package/dist/ionic/{p-db5043df.system.entry.js → p-a821750c.system.entry.js} +1 -1
  1448. package/dist/ionic/{p-1d269117.system.entry.js → p-abd5d0d5.system.entry.js} +1 -1
  1449. package/dist/ionic/{p-9209d90c.entry.js → p-ade3cf46.entry.js} +1 -1
  1450. package/dist/ionic/{p-1e86a71b.entry.js → p-ae4b7df8.entry.js} +1 -1
  1451. package/dist/ionic/p-aee39e06.entry.js +4 -0
  1452. package/dist/ionic/{p-09d142b3.system.js → p-afa9f205.system.js} +1 -1
  1453. package/dist/ionic/{p-67e18f02.system.entry.js → p-b7058a0e.system.entry.js} +1 -1
  1454. package/dist/ionic/p-b78e6a44.entry.js +4 -0
  1455. package/dist/ionic/{p-beb64be7.system.entry.js → p-b7a2ffc9.system.entry.js} +1 -1
  1456. package/dist/ionic/{p-0330f0a3.system.entry.js → p-b8a9e195.system.entry.js} +1 -1
  1457. package/dist/ionic/{p-8ad82eb3.entry.js → p-b964aba3.entry.js} +1 -1
  1458. package/dist/ionic/{p-ff5144f3.system.entry.js → p-beeed22c.system.entry.js} +1 -1
  1459. package/dist/ionic/{p-5deff017.entry.js → p-c08fe2c0.entry.js} +1 -1
  1460. package/dist/ionic/p-c1701827.entry.js +4 -0
  1461. package/dist/ionic/{p-b2a74a72.entry.js → p-c5acfeb1.entry.js} +1 -1
  1462. package/dist/ionic/p-c61cc894.js +4 -0
  1463. package/dist/ionic/{p-ab4cff27.system.js → p-cabad15b.system.js} +1 -1
  1464. package/dist/ionic/{p-07d9e9cd.system.entry.js → p-cb8dff22.system.entry.js} +1 -1
  1465. package/dist/ionic/p-cd1b920b.entry.js +4 -0
  1466. package/dist/ionic/p-cd574dfa.js +4 -0
  1467. package/dist/ionic/{p-0492946a.entry.js → p-cf235986.entry.js} +1 -1
  1468. package/dist/ionic/p-cf53213c.entry.js +4 -0
  1469. package/dist/ionic/p-d51674c5.system.js +4 -0
  1470. package/dist/ionic/{p-45da1e68.system.entry.js → p-d93eed83.system.entry.js} +1 -1
  1471. package/dist/ionic/{p-c919498d.entry.js → p-da5e2652.entry.js} +1 -1
  1472. package/dist/ionic/p-dc6d8647.entry.js +4 -0
  1473. package/dist/ionic/p-dc71e4ef.system.entry.js +4 -0
  1474. package/dist/ionic/{p-bba2ce59.system.js → p-ddbb2d5b.system.js} +1 -1
  1475. package/dist/ionic/{p-6e23777e.system.entry.js → p-ddd48faf.system.entry.js} +1 -1
  1476. package/dist/ionic/p-de6f8b28.system.js +4 -0
  1477. package/dist/ionic/p-de756e5c.js +4 -0
  1478. package/dist/ionic/{p-7ab6fc5a.system.entry.js → p-e2903cdc.system.entry.js} +1 -1
  1479. package/dist/ionic/{p-0a794e83.entry.js → p-e33d1ebc.entry.js} +1 -1
  1480. package/dist/ionic/p-ebe8bd8a.entry.js +4 -0
  1481. package/dist/ionic/p-eef72e06.js +4 -0
  1482. package/dist/ionic/{p-5da0eb3e.system.entry.js → p-f0504446.system.entry.js} +1 -1
  1483. package/dist/ionic/p-f434bcf3.system.entry.js +4 -0
  1484. package/dist/ionic/p-f5d2dc9b.js +4 -0
  1485. package/dist/ionic/{p-a936d224.system.js → p-f6e9c227.system.js} +1 -1
  1486. package/dist/ionic/p-f894e0ad.entry.js +4 -0
  1487. package/dist/types/components/accordion/accordion.d.ts +62 -62
  1488. package/dist/types/components/accordion-group/accordion-group-interface.d.ts +3 -3
  1489. package/dist/types/components/accordion-group/accordion-group.d.ts +76 -76
  1490. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +25 -25
  1491. package/dist/types/components/action-sheet/action-sheet.d.ts +149 -149
  1492. package/dist/types/components/action-sheet/test/basic/fixture.d.ts +7 -7
  1493. package/dist/types/components/alert/alert-interface.d.ts +45 -45
  1494. package/dist/types/components/alert/alert.d.ts +181 -181
  1495. package/dist/types/components/app/app.d.ts +15 -15
  1496. package/dist/types/components/avatar/avatar.d.ts +1 -1
  1497. package/dist/types/components/back-button/back-button.d.ts +41 -41
  1498. package/dist/types/components/backdrop/backdrop.d.ts +22 -22
  1499. package/dist/types/components/badge/badge.d.ts +7 -7
  1500. package/dist/types/components/breadcrumb/breadcrumb-interface.d.ts +4 -4
  1501. package/dist/types/components/breadcrumb/breadcrumb.d.ts +87 -87
  1502. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +39 -39
  1503. package/dist/types/components/button/button.d.ts +121 -121
  1504. package/dist/types/components/buttons/buttons.d.ts +14 -14
  1505. package/dist/types/components/card/card.d.ts +57 -57
  1506. package/dist/types/components/card-content/card-content.d.ts +1 -1
  1507. package/dist/types/components/card-header/card-header.d.ts +13 -13
  1508. package/dist/types/components/card-subtitle/card-subtitle.d.ts +7 -7
  1509. package/dist/types/components/card-title/card-title.d.ts +7 -7
  1510. package/dist/types/components/checkbox/checkbox-interface.d.ts +4 -4
  1511. package/dist/types/components/checkbox/checkbox.d.ts +112 -111
  1512. package/dist/types/components/chip/chip.d.ts +15 -15
  1513. package/dist/types/components/col/col.d.ts +128 -128
  1514. package/dist/types/components/content/content-interface.d.ts +6 -6
  1515. package/dist/types/components/content/content.d.ts +129 -129
  1516. package/dist/types/components/datetime/datetime-interface.d.ts +15 -15
  1517. package/dist/types/components/datetime/datetime.d.ts +407 -407
  1518. package/dist/types/components/datetime/utils/data.d.ts +11 -11
  1519. package/dist/types/components/datetime/utils/manipulation.d.ts +59 -32
  1520. package/dist/types/components/datetime/utils/state.d.ts +8 -8
  1521. package/dist/types/components/datetime-button/datetime-button.d.ts +59 -59
  1522. package/dist/types/components/fab/fab.d.ts +33 -33
  1523. package/dist/types/components/fab-button/fab-button.d.ts +88 -88
  1524. package/dist/types/components/fab-list/fab-list.d.ts +11 -11
  1525. package/dist/types/components/footer/footer.d.ts +27 -27
  1526. package/dist/types/components/grid/grid.d.ts +5 -5
  1527. package/dist/types/components/header/header.d.ts +31 -31
  1528. package/dist/types/components/header/header.utils.d.ts +7 -7
  1529. package/dist/types/components/img/img.d.ts +30 -30
  1530. package/dist/types/components/infinite-scroll/infinite-scroll-interface.d.ts +1 -1
  1531. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +65 -58
  1532. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +23 -23
  1533. package/dist/types/components/input/input-interface.d.ts +6 -6
  1534. package/dist/types/components/input/input.d.ts +321 -315
  1535. package/dist/types/components/item/item.d.ts +111 -111
  1536. package/dist/types/components/item-divider/item-divider.d.ts +16 -16
  1537. package/dist/types/components/item-group/item-group.d.ts +1 -1
  1538. package/dist/types/components/item-option/item-option.d.ts +44 -44
  1539. package/dist/types/components/item-options/item-options.d.ts +13 -13
  1540. package/dist/types/components/item-sliding/item-sliding-interface.d.ts +1 -1
  1541. package/dist/types/components/item-sliding/item-sliding.d.ts +75 -75
  1542. package/dist/types/components/label/label.d.ts +30 -30
  1543. package/dist/types/components/list/list.d.ts +17 -17
  1544. package/dist/types/components/list-header/list-header.d.ts +11 -11
  1545. package/dist/types/components/loading/loading-interface.d.ts +16 -16
  1546. package/dist/types/components/loading/loading.d.ts +152 -152
  1547. package/dist/types/components/menu/menu-interface.d.ts +39 -39
  1548. package/dist/types/components/menu/menu.d.ts +140 -140
  1549. package/dist/types/components/menu-button/menu-button.d.ts +30 -30
  1550. package/dist/types/components/menu-toggle/menu-toggle.d.ts +21 -21
  1551. package/dist/types/components/modal/animations/sheet.d.ts +4 -4
  1552. package/dist/types/components/modal/gestures/sheet.d.ts +30 -30
  1553. package/dist/types/components/modal/gestures/swipe-to-close.d.ts +1 -1
  1554. package/dist/types/components/modal/modal-interface.d.ts +27 -27
  1555. package/dist/types/components/modal/modal.d.ts +265 -265
  1556. package/dist/types/components/modal/test/fixtures.d.ts +7 -7
  1557. package/dist/types/components/nav/nav-interface.d.ts +40 -40
  1558. package/dist/types/components/nav/nav.d.ts +247 -247
  1559. package/dist/types/components/nav/view-controller.d.ts +13 -13
  1560. package/dist/types/components/nav-link/nav-link.d.ts +19 -19
  1561. package/dist/types/components/note/note.d.ts +7 -7
  1562. package/dist/types/components/picker/picker-interface.d.ts +43 -43
  1563. package/dist/types/components/picker/picker.d.ts +149 -149
  1564. package/dist/types/components/picker-column/picker-column.d.ts +39 -39
  1565. package/dist/types/components/picker-column-internal/picker-column-internal-interfaces.d.ts +3 -3
  1566. package/dist/types/components/picker-column-internal/picker-column-internal.d.ts +93 -89
  1567. package/dist/types/components/picker-internal/picker-internal-interfaces.d.ts +4 -4
  1568. package/dist/types/components/picker-internal/picker-internal.d.ts +94 -94
  1569. package/dist/types/components/popover/popover-interface.d.ts +26 -26
  1570. package/dist/types/components/popover/popover.d.ts +279 -279
  1571. package/dist/types/components/popover/test/fixture.d.ts +5 -5
  1572. package/dist/types/components/popover/utils.d.ts +25 -25
  1573. package/dist/types/components/progress-bar/progress-bar.d.ts +27 -27
  1574. package/dist/types/components/radio/radio.d.ts +100 -99
  1575. package/dist/types/components/radio-group/radio-group-interface.d.ts +5 -4
  1576. package/dist/types/components/radio-group/radio-group.d.ts +51 -44
  1577. package/dist/types/components/radio-group/test/fixtures.d.ts +5 -5
  1578. package/dist/types/components/range/range-interface.d.ts +7 -7
  1579. package/dist/types/components/range/range.d.ts +193 -192
  1580. package/dist/types/components/refresher/refresher-interface.d.ts +3 -3
  1581. package/dist/types/components/refresher/refresher.d.ts +132 -132
  1582. package/dist/types/components/refresher-content/refresher-content.d.ts +44 -44
  1583. package/dist/types/components/reorder/reorder.d.ts +3 -3
  1584. package/dist/types/components/reorder-group/reorder-group-interface.d.ts +5 -5
  1585. package/dist/types/components/reorder-group/reorder-group.d.ts +53 -53
  1586. package/dist/types/components/ripple-effect/ripple-effect.d.ts +20 -20
  1587. package/dist/types/components/route/route-interface.d.ts +1 -1
  1588. package/dist/types/components/route/route.d.ts +43 -43
  1589. package/dist/types/components/route-redirect/route-redirect.d.ts +33 -33
  1590. package/dist/types/components/router/router.d.ts +74 -73
  1591. package/dist/types/components/router/utils/dom.d.ts +2 -2
  1592. package/dist/types/components/router/utils/interface.d.ts +31 -31
  1593. package/dist/types/components/router/utils/matching.d.ts +6 -6
  1594. package/dist/types/components/router-link/router-link.d.ts +34 -34
  1595. package/dist/types/components/router-outlet/router-outlet.d.ts +41 -41
  1596. package/dist/types/components/row/row.d.ts +1 -1
  1597. package/dist/types/components/searchbar/searchbar-interface.d.ts +6 -6
  1598. package/dist/types/components/searchbar/searchbar.d.ts +235 -233
  1599. package/dist/types/components/segment/segment-interface.d.ts +3 -3
  1600. package/dist/types/components/segment/segment.d.ts +82 -82
  1601. package/dist/types/components/segment-button/segment-button.d.ts +36 -36
  1602. package/dist/types/components/select/select-interface.d.ts +3 -3
  1603. package/dist/types/components/select/select.d.ts +238 -233
  1604. package/dist/types/components/select-option/select-option.d.ts +11 -11
  1605. package/dist/types/components/select-popover/select-popover-interface.d.ts +8 -8
  1606. package/dist/types/components/select-popover/select-popover.d.ts +39 -39
  1607. package/dist/types/components/select-popover/test/fixtures.d.ts +12 -12
  1608. package/dist/types/components/skeleton-text/skeleton-text.d.ts +15 -7
  1609. package/dist/types/components/spinner/spinner-configs.d.ts +96 -96
  1610. package/dist/types/components/spinner/spinner-interface.d.ts +14 -14
  1611. package/dist/types/components/spinner/spinner.d.ts +21 -21
  1612. package/dist/types/components/split-pane/split-pane.d.ts +33 -33
  1613. package/dist/types/components/tab/tab.d.ts +21 -21
  1614. package/dist/types/components/tab-bar/tab-bar-interface.d.ts +4 -4
  1615. package/dist/types/components/tab-bar/tab-bar.d.ts +34 -34
  1616. package/dist/types/components/tab-button/tab-button.d.ts +56 -56
  1617. package/dist/types/components/tabs/tabs-interface.d.ts +4 -4
  1618. package/dist/types/components/tabs/tabs.d.ts +52 -52
  1619. package/dist/types/components/text/text.d.ts +7 -7
  1620. package/dist/types/components/textarea/textarea-interface.d.ts +6 -6
  1621. package/dist/types/components/textarea/textarea.d.ts +275 -269
  1622. package/dist/types/components/thumbnail/thumbnail.d.ts +1 -1
  1623. package/dist/types/components/title/title.d.ts +21 -21
  1624. package/dist/types/components/toast/animations/utils.d.ts +15 -4
  1625. package/dist/types/components/toast/gestures/swipe-to-dismiss.d.ts +9 -0
  1626. package/dist/types/components/toast/toast-interface.d.ts +37 -35
  1627. package/dist/types/components/toast/toast.d.ts +241 -214
  1628. package/dist/types/components/toggle/toggle-interface.d.ts +4 -4
  1629. package/dist/types/components/toggle/toggle.d.ts +117 -116
  1630. package/dist/types/components/toolbar/toolbar.d.ts +11 -11
  1631. package/dist/types/components.d.ts +52 -13
  1632. package/dist/types/global/config.d.ts +6 -6
  1633. package/dist/types/interface.d.ts +1 -5
  1634. package/dist/types/jest.d.ts +5 -0
  1635. package/dist/types/stencil-public-runtime.d.ts +8 -0
  1636. package/dist/types/utils/animation/animation-interface.d.ts +205 -205
  1637. package/dist/types/utils/browser/index.d.ts +17 -8
  1638. package/dist/types/utils/config.d.ts +175 -175
  1639. package/dist/types/utils/element-interface.d.ts +6 -6
  1640. package/dist/types/utils/focus-visible.d.ts +2 -2
  1641. package/dist/types/utils/forms/compare-with-utils.d.ts +18 -0
  1642. package/dist/types/utils/forms/form-controller.d.ts +3 -3
  1643. package/dist/types/utils/forms/index.d.ts +1 -0
  1644. package/dist/types/utils/forms/notch-controller.d.ts +2 -2
  1645. package/dist/types/utils/framework-delegate.d.ts +3 -3
  1646. package/dist/types/utils/gesture/gesture-controller.d.ts +49 -49
  1647. package/dist/types/utils/gesture/index.d.ts +31 -31
  1648. package/dist/types/utils/gesture/listener.d.ts +2 -2
  1649. package/dist/types/utils/gesture/pointer-events.d.ts +12 -12
  1650. package/dist/types/utils/gesture/recognizers.d.ts +4 -4
  1651. package/dist/types/utils/hardware-back-button.d.ts +4 -0
  1652. package/dist/types/utils/helpers.d.ts +8 -8
  1653. package/dist/types/utils/input-shims/hacks/scroll-data.d.ts +4 -4
  1654. package/dist/types/utils/keyboard/keyboard-controller.d.ts +3 -3
  1655. package/dist/types/utils/lock-controller.d.ts +1 -1
  1656. package/dist/types/utils/native/haptic.d.ts +38 -38
  1657. package/dist/types/utils/native/keyboard.d.ts +29 -29
  1658. package/dist/types/utils/native/native-interface.d.ts +15 -15
  1659. package/dist/types/utils/native/status-bar.d.ts +8 -8
  1660. package/dist/types/utils/overlays-interface.d.ts +27 -27
  1661. package/dist/types/utils/overlays.d.ts +29 -28
  1662. package/dist/types/utils/platform.d.ts +16 -16
  1663. package/dist/types/utils/sanitization/index.d.ts +2 -2
  1664. package/dist/types/utils/slot-mutation-controller.d.ts +3 -3
  1665. package/dist/types/utils/test/platform.utils.d.ts +66 -66
  1666. package/dist/types/utils/test/playwright/generator.d.ts +16 -7
  1667. package/dist/types/utils/test/playwright/matchers/index.d.ts +3 -3
  1668. package/dist/types/utils/test/playwright/matchers/toHaveReceivedEvent.d.ts +2 -2
  1669. package/dist/types/utils/test/playwright/matchers/toHaveReceivedEventDetail.d.ts +2 -2
  1670. package/dist/types/utils/test/playwright/matchers/toHaveReceivedEventTimes.d.ts +2 -2
  1671. package/dist/types/utils/test/playwright/page/event-spy.d.ts +15 -15
  1672. package/dist/types/utils/test/playwright/page/utils/goto.d.ts +3 -3
  1673. package/dist/types/utils/test/playwright/page/utils/locator.d.ts +15 -15
  1674. package/dist/types/utils/test/playwright/playwright-declarations.d.ts +92 -92
  1675. package/dist/types/utils/test/playwright/playwright-page.d.ts +3 -3
  1676. package/dist/types/utils/test/playwright/viewports/index.d.ts +12 -12
  1677. package/dist/types/utils/test/press-keys.d.ts +14 -14
  1678. package/dist/types/utils/transition/index.d.ts +6 -6
  1679. package/dist/types/utils/watch-options.d.ts +1 -1
  1680. package/hydrate/index.d.ts +1 -1
  1681. package/hydrate/index.js +30685 -30001
  1682. package/package.json +4 -3
  1683. package/dist/cjs/animation-1083855c.js +0 -1061
  1684. package/dist/cjs/button-active-af897e0e.js +0 -69
  1685. package/dist/cjs/config-d5882735.js +0 -199
  1686. package/dist/cjs/cubic-bezier-6b9222ad.js +0 -92
  1687. package/dist/cjs/data-c8d21093.js +0 -1622
  1688. package/dist/cjs/focus-visible-a7545600.js +0 -77
  1689. package/dist/cjs/form-controller-9343050c.js +0 -66
  1690. package/dist/cjs/framework-delegate-c0873a6f.js +0 -144
  1691. package/dist/cjs/gesture-controller-b46721be.js +0 -197
  1692. package/dist/cjs/haptic-678abc9f.js +0 -212
  1693. package/dist/cjs/hardware-back-button-b67c8e75.js +0 -76
  1694. package/dist/cjs/helpers-ea4ccbcb.js +0 -441
  1695. package/dist/cjs/index-0ee995e4.js +0 -459
  1696. package/dist/cjs/index-306a7476.js +0 -32
  1697. package/dist/cjs/index-573877f3.js +0 -243
  1698. package/dist/cjs/index-9f379eaa.js +0 -198
  1699. package/dist/cjs/index-d7561763.js +0 -310
  1700. package/dist/cjs/input-shims-b0a75a01.js +0 -596
  1701. package/dist/cjs/input.utils-0fe3097c.js +0 -137
  1702. package/dist/cjs/ionic-global-ea2901a3.js +0 -230
  1703. package/dist/cjs/ios.transition-ac909bc8.js +0 -654
  1704. package/dist/cjs/keyboard-controller-50beb83a.js +0 -167
  1705. package/dist/cjs/keyboard-fd7db491.js +0 -81
  1706. package/dist/cjs/lock-controller-4ae2eb59.js +0 -40
  1707. package/dist/cjs/md.transition-907af519.js +0 -59
  1708. package/dist/cjs/notch-controller-f4f6af5d.js +0 -155
  1709. package/dist/cjs/overlays-2ffc5f27.js +0 -714
  1710. package/dist/cjs/spinner-configs-f7b5105b.js +0 -147
  1711. package/dist/cjs/status-tap-3fb2391a.js +0 -42
  1712. package/dist/cjs/swipe-back-7e843e77.js +0 -81
  1713. package/dist/cjs/theme-fbc56b3b.js +0 -48
  1714. package/dist/cjs/watch-options-53bbb124.js +0 -49
  1715. package/dist/collection/components/item/test/text/item.e2e.js +0 -14
  1716. package/dist/esm/animation-8aa13916.js +0 -1059
  1717. package/dist/esm/button-active-ce5cba4c.js +0 -67
  1718. package/dist/esm/capacitor-b4979570.js +0 -13
  1719. package/dist/esm/config-96c9ace3.js +0 -193
  1720. package/dist/esm/cubic-bezier-66542bc5.js +0 -90
  1721. package/dist/esm/data-44d9e816.js +0 -1575
  1722. package/dist/esm/focus-visible-85493433.js +0 -75
  1723. package/dist/esm/form-controller-64edeaad.js +0 -64
  1724. package/dist/esm/framework-delegate-aa433dea.js +0 -140
  1725. package/dist/esm/gesture-controller-0fa396c4.js +0 -195
  1726. package/dist/esm/haptic-1243b917.js +0 -206
  1727. package/dist/esm/hardware-back-button-39299f84.js +0 -71
  1728. package/dist/esm/helpers-3379ba19.js +0 -418
  1729. package/dist/esm/index-0aa6e61f.js +0 -308
  1730. package/dist/esm/index-6a0ccabb.js +0 -231
  1731. package/dist/esm/index-7a14ecec.js +0 -29
  1732. package/dist/esm/index-f0cc4e14.js +0 -196
  1733. package/dist/esm/index-ff313b19.js +0 -457
  1734. package/dist/esm/input-shims-d0c93e5d.js +0 -594
  1735. package/dist/esm/input.utils-ec063df4.js +0 -134
  1736. package/dist/esm/ionic-global-40e42e7f.js +0 -224
  1737. package/dist/esm/ios.transition-1651c430.js +0 -651
  1738. package/dist/esm/keyboard-b063f012.js +0 -79
  1739. package/dist/esm/keyboard-b551279d.js +0 -146
  1740. package/dist/esm/keyboard-controller-0c2dce71.js +0 -165
  1741. package/dist/esm/lock-controller-e8c6c051.js +0 -38
  1742. package/dist/esm/md.transition-66f18369.js +0 -57
  1743. package/dist/esm/notch-controller-8c9c0e54.js +0 -153
  1744. package/dist/esm/overlays-6c9feb7e.js +0 -692
  1745. package/dist/esm/spinner-configs-d09fbbbb.js +0 -145
  1746. package/dist/esm/status-tap-9ce68758.js +0 -40
  1747. package/dist/esm/swipe-back-cd4295f3.js +0 -79
  1748. package/dist/esm/theme-17531cdf.js +0 -43
  1749. package/dist/esm/watch-options-02d8498b.js +0 -47
  1750. package/dist/esm-es5/app-globals-2398e405.js +0 -4
  1751. package/dist/esm-es5/data-44d9e816.js +0 -4
  1752. package/dist/esm-es5/index-0aa6e61f.js +0 -4
  1753. package/dist/esm-es5/index-7c9b1bca.js +0 -5
  1754. package/dist/esm-es5/input-shims-d0c93e5d.js +0 -4
  1755. package/dist/esm-es5/input.utils-ec063df4.js +0 -4
  1756. package/dist/esm-es5/md.transition-66f18369.js +0 -4
  1757. package/dist/ionic/p-0d8e9393.entry.js +0 -4
  1758. package/dist/ionic/p-114a36ed.js +0 -4
  1759. package/dist/ionic/p-17240d90.js +0 -4
  1760. package/dist/ionic/p-1e5165db.system.entry.js +0 -4
  1761. package/dist/ionic/p-1f4f0d59.system.entry.js +0 -4
  1762. package/dist/ionic/p-20cf4994.js +0 -4
  1763. package/dist/ionic/p-236063ec.system.entry.js +0 -4
  1764. package/dist/ionic/p-276afddd.js +0 -4
  1765. package/dist/ionic/p-2e8e0045.js +0 -4
  1766. package/dist/ionic/p-32083c2d.js +0 -4
  1767. package/dist/ionic/p-352c0232.system.entry.js +0 -4
  1768. package/dist/ionic/p-3602001b.system.js +0 -4
  1769. package/dist/ionic/p-3632220b.system.js +0 -4
  1770. package/dist/ionic/p-377c636c.system.entry.js +0 -4
  1771. package/dist/ionic/p-39044fe6.system.entry.js +0 -4
  1772. package/dist/ionic/p-3ce8c3e3.entry.js +0 -4
  1773. package/dist/ionic/p-40903d34.system.js +0 -4
  1774. package/dist/ionic/p-4518e4c0.system.entry.js +0 -4
  1775. package/dist/ionic/p-4794e0ac.system.entry.js +0 -4
  1776. package/dist/ionic/p-4a142496.system.entry.js +0 -4
  1777. package/dist/ionic/p-4cd588b3.system.entry.js +0 -4
  1778. package/dist/ionic/p-4dbac22d.entry.js +0 -4
  1779. package/dist/ionic/p-4ecb5692.entry.js +0 -4
  1780. package/dist/ionic/p-5370e786.js +0 -4
  1781. package/dist/ionic/p-5cfb3feb.system.entry.js +0 -4
  1782. package/dist/ionic/p-63d519fb.entry.js +0 -4
  1783. package/dist/ionic/p-64296b15.entry.js +0 -4
  1784. package/dist/ionic/p-67aab78f.js +0 -4
  1785. package/dist/ionic/p-67ed452a.system.entry.js +0 -4
  1786. package/dist/ionic/p-67eecef4.system.js +0 -4
  1787. package/dist/ionic/p-7176cea3.entry.js +0 -4
  1788. package/dist/ionic/p-73411c1b.entry.js +0 -4
  1789. package/dist/ionic/p-73420380.js +0 -4
  1790. package/dist/ionic/p-77e7a9c8.entry.js +0 -4
  1791. package/dist/ionic/p-81c818e7.js +0 -4
  1792. package/dist/ionic/p-8b1be026.js +0 -4
  1793. package/dist/ionic/p-8cf94fc1.js +0 -4
  1794. package/dist/ionic/p-8e1bded3.entry.js +0 -4
  1795. package/dist/ionic/p-97c65aa5.js +0 -4
  1796. package/dist/ionic/p-9ab6f3e6.system.js +0 -4
  1797. package/dist/ionic/p-9b89cbde.js +0 -4
  1798. package/dist/ionic/p-a5c1e6ce.entry.js +0 -4
  1799. package/dist/ionic/p-af016cd3.entry.js +0 -4
  1800. package/dist/ionic/p-b0cee324.entry.js +0 -4
  1801. package/dist/ionic/p-b1142133.entry.js +0 -4
  1802. package/dist/ionic/p-b17b7c3c.system.entry.js +0 -4
  1803. package/dist/ionic/p-b203659a.system.entry.js +0 -4
  1804. package/dist/ionic/p-b6f8ee31.entry.js +0 -4
  1805. package/dist/ionic/p-b8c3f071.system.js +0 -4
  1806. package/dist/ionic/p-b906c5ca.entry.js +0 -4
  1807. package/dist/ionic/p-b912e055.system.js +0 -4
  1808. package/dist/ionic/p-c224b9a9.js +0 -5
  1809. package/dist/ionic/p-ca5219df.entry.js +0 -4
  1810. package/dist/ionic/p-cc196b34.js +0 -4
  1811. package/dist/ionic/p-d1de1188.js +0 -4
  1812. package/dist/ionic/p-d2597b3e.system.js +0 -5
  1813. package/dist/ionic/p-d3952bd5.system.entry.js +0 -4
  1814. package/dist/ionic/p-dfa756ed.system.js +0 -4
  1815. package/dist/ionic/p-e6b240a0.js +0 -4
  1816. package/dist/ionic/p-e8400078.system.entry.js +0 -4
  1817. package/dist/ionic/p-ed636a74.entry.js +0 -4
  1818. package/dist/ionic/p-f8e620f1.entry.js +0 -4
  1819. package/dist/ionic/p-ff5a10f9.system.js +0 -4
  1820. /package/dist/esm-es5/{config-96c9ace3.js → config-49c88215.js} +0 -0
  1821. /package/dist/esm-es5/{cubic-bezier-66542bc5.js → cubic-bezier-fe2083dc.js} +0 -0
  1822. /package/dist/esm-es5/{dir-912e3e13.js → dir-babeabeb.js} +0 -0
  1823. /package/dist/esm-es5/{focus-visible-85493433.js → focus-visible-dd40d69f.js} +0 -0
  1824. /package/dist/esm-es5/{gesture-controller-0fa396c4.js → gesture-controller-1bf57181.js} +0 -0
  1825. /package/dist/esm-es5/{hardware-back-button-39299f84.js → hardware-back-button-b2bc76db.js} +0 -0
  1826. /package/dist/esm-es5/{helpers-3379ba19.js → helpers-ae653409.js} +0 -0
  1827. /package/dist/esm-es5/{index-595d62c9.js → index-9b0d46f4.js} +0 -0
  1828. /package/dist/esm-es5/{index-7a14ecec.js → index-a5d50daf.js} +0 -0
  1829. /package/dist/esm-es5/{lock-controller-e8c6c051.js → lock-controller-316928be.js} +0 -0
  1830. /package/dist/esm-es5/{spinner-configs-d09fbbbb.js → spinner-configs-964f7cf3.js} +0 -0
  1831. /package/dist/esm-es5/{theme-17531cdf.js → theme-01f3f29c.js} +0 -0
  1832. /package/dist/esm-es5/{watch-options-02d8498b.js → watch-options-c2911ace.js} +0 -0
  1833. /package/dist/ionic/{p-5aac9314.system.js → p-012c3ceb.system.js} +0 -0
  1834. /package/dist/ionic/{p-1b8e1d03.js → p-06fee233.js} +0 -0
  1835. /package/dist/ionic/{p-819ff3b9.system.js → p-08e01816.system.js} +0 -0
  1836. /package/dist/ionic/{p-63eb0acd.js → p-23a9d086.js} +0 -0
  1837. /package/dist/ionic/{p-7c2bac85.js → p-2408c236.js} +0 -0
  1838. /package/dist/ionic/{p-815c2fba.system.js → p-32ad210f.system.js} +0 -0
  1839. /package/dist/ionic/{p-7b021525.js → p-41d5544e.js} +0 -0
  1840. /package/dist/ionic/{p-f10de93b.js → p-459d13d5.js} +0 -0
  1841. /package/dist/ionic/{p-44bc8b45.system.js → p-4609d030.system.js} +0 -0
  1842. /package/dist/ionic/{p-1d072d3d.js → p-47794def.js} +0 -0
  1843. /package/dist/ionic/{p-185e427e.js → p-4b3623da.js} +0 -0
  1844. /package/dist/ionic/{p-772f6c84.system.js → p-4f255d5a.system.js} +0 -0
  1845. /package/dist/ionic/{p-8c15eda7.system.js → p-790220fd.system.js} +0 -0
  1846. /package/dist/ionic/{p-0e94957a.system.js → p-792919fd.system.js} +0 -0
  1847. /package/dist/ionic/{p-b347cfd1.js → p-7b30edcc.js} +0 -0
  1848. /package/dist/ionic/{p-e0b06b65.js → p-bb3615f7.js} +0 -0
  1849. /package/dist/ionic/{p-87411e39.system.js → p-c468af8a.system.js} +0 -0
  1850. /package/dist/ionic/{p-9e852ff1.system.js → p-c7c8429a.system.js} +0 -0
  1851. /package/dist/ionic/{p-53b2a46f.js → p-ccd02320.js} +0 -0
  1852. /package/dist/ionic/{p-76fce40e.js → p-d47265c8.js} +0 -0
  1853. /package/dist/ionic/{p-56dc022e.system.js → p-d8d84afa.system.js} +0 -0
  1854. /package/dist/ionic/{p-c4f2dce7.system.js → p-e673a0a2.system.js} +0 -0
  1855. /package/dist/ionic/{p-c18d6eac.js → p-f0c2a614.js} +0 -0
  1856. /package/dist/ionic/{p-2b89ea1b.system.js → p-f233f1e0.system.js} +0 -0
  1857. /package/dist/ionic/{p-6dbfe5d4.js → p-fb813dab.js} +0 -0
  1858. /package/dist/ionic/{p-479cdbf8.system.js → p-ff4b7e40.system.js} +0 -0
@@ -1,547 +1,902 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
4
+ import { Build, proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
5
5
  import { E as ENABLE_HTML_CONTENT_DEFAULT, a as sanitizeDOMString } from './config.js';
6
6
  import { g as getElementRoot, r as raf } from './helpers.js';
7
7
  import { c as createLockController } from './lock-controller.js';
8
8
  import { p as printIonWarning } from './index6.js';
9
- import { d as createDelegateController, e as createTriggerController, i as isCancel, j as prepareOverlay, k as setOverlayId, f as present, g as dismiss, h as eventMethod, s as safeCall } from './overlays.js';
9
+ import { O as OVERLAY_GESTURE_PRIORITY, d as createDelegateController, e as createTriggerController, i as isCancel, j as prepareOverlay, k as setOverlayId, f as present, g as dismiss, h as eventMethod, s as safeCall, G as GESTURE } from './overlays.js';
10
10
  import { g as getClassMap, c as createColorClasses } from './theme.js';
11
11
  import { c as config, b as getIonMode } from './ionic-global.js';
12
12
  import { c as createAnimation } from './animation.js';
13
13
  import { w as win } from './index5.js';
14
+ import { createGesture } from './index3.js';
14
15
  import { d as defineCustomElement$3 } from './icon.js';
15
16
  import { d as defineCustomElement$2 } from './ripple-effect.js';
16
17
 
18
+ /**
19
+ * Calculate the CSS top and bottom position of the toast, to be used
20
+ * as starting points for the animation keyframes.
21
+ *
22
+ * The default animations for both MD and iOS
23
+ * use translateY, which calculates from the
24
+ * top edge of the screen. This behavior impacts
25
+ * how we compute the offset when a toast has
26
+ * position='bottom' since we need to calculate from
27
+ * the bottom edge of the screen instead.
28
+ *
29
+ * @param position The value of the toast's position prop.
30
+ * @param positionAnchor The element the toast should be anchored to,
31
+ * if applicable.
32
+ * @param mode The toast component's mode (md, ios, etc).
33
+ * @param toast A reference to the toast element itself.
34
+ */
35
+ function getAnimationPosition(position, positionAnchor, mode, toast) {
36
+ /**
37
+ * Start with a predefined offset from the edge the toast will be
38
+ * positioned relative to, whether on the screen or anchor element.
39
+ */
40
+ let offset;
41
+ if (mode === 'md') {
42
+ offset = position === 'top' ? 8 : -8;
43
+ }
44
+ else {
45
+ offset = position === 'top' ? 10 : -10;
46
+ }
47
+ /**
48
+ * If positionAnchor is defined, add in the distance from the target
49
+ * screen edge to the target anchor edge. For position="top", the
50
+ * bottom anchor edge is targeted. For position="bottom", the top
51
+ * anchor edge is targeted.
52
+ */
53
+ if (positionAnchor && win) {
54
+ warnIfAnchorIsHidden(positionAnchor, toast);
55
+ const box = positionAnchor.getBoundingClientRect();
56
+ if (position === 'top') {
57
+ offset += box.bottom;
58
+ }
59
+ else if (position === 'bottom') {
60
+ /**
61
+ * Just box.top is the distance from the top edge of the screen
62
+ * to the top edge of the anchor. We want to calculate from the
63
+ * bottom edge of the screen instead.
64
+ */
65
+ offset -= win.innerHeight - box.top;
66
+ }
67
+ /**
68
+ * We don't include safe area here because that should already be
69
+ * accounted for when checking the position of the anchor.
70
+ */
71
+ return {
72
+ top: `${offset}px`,
73
+ bottom: `${offset}px`,
74
+ };
75
+ }
76
+ else {
77
+ return {
78
+ top: `calc(${offset}px + var(--ion-safe-area-top, 0px))`,
79
+ bottom: `calc(${offset}px - var(--ion-safe-area-bottom, 0px))`,
80
+ };
81
+ }
82
+ }
83
+ /**
84
+ * If the anchor element is hidden, getBoundingClientRect()
85
+ * will return all 0s for it, which can cause unexpected
86
+ * results in the position calculation when animating.
87
+ */
88
+ function warnIfAnchorIsHidden(positionAnchor, toast) {
89
+ if (positionAnchor.offsetParent === null) {
90
+ printIonWarning('The positionAnchor element for ion-toast was found in the DOM, but appears to be hidden. This may lead to unexpected positioning of the toast.', toast);
91
+ }
92
+ }
93
+ /**
94
+ * Returns the top offset required to place
95
+ * the toast in the middle of the screen.
96
+ * Only needed when position="toast".
97
+ * @param toastHeight - The height of the ion-toast element
98
+ * @param wrapperHeight - The height of the .toast-wrapper element
99
+ * inside the toast's shadow root.
100
+ */
101
+ const getOffsetForMiddlePosition = (toastHeight, wrapperHeight) => {
102
+ return Math.floor(toastHeight / 2 - wrapperHeight / 2);
103
+ };
104
+
17
105
  /**
18
106
  * iOS Toast Enter Animation
19
107
  */
20
108
  const iosEnterAnimation = (baseEl, opts) => {
21
- const baseAnimation = createAnimation();
22
- const wrapperAnimation = createAnimation();
23
- const { position, top, bottom } = opts;
24
- const root = getElementRoot(baseEl);
25
- const wrapperEl = root.querySelector('.toast-wrapper');
26
- wrapperAnimation.addElement(wrapperEl);
27
- switch (position) {
28
- case 'top':
29
- wrapperAnimation.fromTo('transform', 'translateY(-100%)', `translateY(${top})`);
30
- break;
31
- case 'middle':
32
- const topPosition = Math.floor(baseEl.clientHeight / 2 - wrapperEl.clientHeight / 2);
33
- wrapperEl.style.top = `${topPosition}px`;
34
- wrapperAnimation.fromTo('opacity', 0.01, 1);
35
- break;
36
- default:
37
- wrapperAnimation.fromTo('transform', 'translateY(100%)', `translateY(${bottom})`);
38
- break;
39
- }
40
- return baseAnimation.easing('cubic-bezier(.155,1.105,.295,1.12)').duration(400).addAnimation(wrapperAnimation);
109
+ const baseAnimation = createAnimation();
110
+ const wrapperAnimation = createAnimation();
111
+ const { position, top, bottom } = opts;
112
+ const root = getElementRoot(baseEl);
113
+ const wrapperEl = root.querySelector('.toast-wrapper');
114
+ wrapperAnimation.addElement(wrapperEl);
115
+ switch (position) {
116
+ case 'top':
117
+ wrapperAnimation.fromTo('transform', 'translateY(-100%)', `translateY(${top})`);
118
+ break;
119
+ case 'middle':
120
+ const topPosition = getOffsetForMiddlePosition(baseEl.clientHeight, wrapperEl.clientHeight);
121
+ wrapperEl.style.top = `${topPosition}px`;
122
+ wrapperAnimation.fromTo('opacity', 0.01, 1);
123
+ break;
124
+ default:
125
+ wrapperAnimation.fromTo('transform', 'translateY(100%)', `translateY(${bottom})`);
126
+ break;
127
+ }
128
+ return baseAnimation.easing('cubic-bezier(.155,1.105,.295,1.12)').duration(400).addAnimation(wrapperAnimation);
41
129
  };
42
130
 
43
131
  /**
44
132
  * iOS Toast Leave Animation
45
133
  */
46
134
  const iosLeaveAnimation = (baseEl, opts) => {
47
- const baseAnimation = createAnimation();
48
- const wrapperAnimation = createAnimation();
49
- const { position, top, bottom } = opts;
50
- const root = getElementRoot(baseEl);
51
- const wrapperEl = root.querySelector('.toast-wrapper');
52
- wrapperAnimation.addElement(wrapperEl);
53
- switch (position) {
54
- case 'top':
55
- wrapperAnimation.fromTo('transform', `translateY(${top})`, 'translateY(-100%)');
56
- break;
57
- case 'middle':
58
- wrapperAnimation.fromTo('opacity', 0.99, 0);
59
- break;
60
- default:
61
- wrapperAnimation.fromTo('transform', `translateY(${bottom})`, 'translateY(100%)');
62
- break;
63
- }
64
- return baseAnimation.easing('cubic-bezier(.36,.66,.04,1)').duration(300).addAnimation(wrapperAnimation);
135
+ const baseAnimation = createAnimation();
136
+ const wrapperAnimation = createAnimation();
137
+ const { position, top, bottom } = opts;
138
+ const root = getElementRoot(baseEl);
139
+ const wrapperEl = root.querySelector('.toast-wrapper');
140
+ wrapperAnimation.addElement(wrapperEl);
141
+ switch (position) {
142
+ case 'top':
143
+ wrapperAnimation.fromTo('transform', `translateY(${top})`, 'translateY(-100%)');
144
+ break;
145
+ case 'middle':
146
+ wrapperAnimation.fromTo('opacity', 0.99, 0);
147
+ break;
148
+ default:
149
+ wrapperAnimation.fromTo('transform', `translateY(${bottom})`, 'translateY(100%)');
150
+ break;
151
+ }
152
+ return baseAnimation.easing('cubic-bezier(.36,.66,.04,1)').duration(300).addAnimation(wrapperAnimation);
65
153
  };
66
154
 
67
155
  /**
68
156
  * MD Toast Enter Animation
69
157
  */
70
158
  const mdEnterAnimation = (baseEl, opts) => {
71
- const baseAnimation = createAnimation();
72
- const wrapperAnimation = createAnimation();
73
- const { position, top, bottom } = opts;
74
- const root = getElementRoot(baseEl);
75
- const wrapperEl = root.querySelector('.toast-wrapper');
76
- wrapperAnimation.addElement(wrapperEl);
77
- switch (position) {
78
- case 'top':
79
- wrapperEl.style.top = top;
80
- wrapperAnimation.fromTo('opacity', 0.01, 1);
81
- break;
82
- case 'middle':
83
- const topPosition = Math.floor(baseEl.clientHeight / 2 - wrapperEl.clientHeight / 2);
84
- wrapperEl.style.top = `${topPosition}px`;
85
- wrapperAnimation.fromTo('opacity', 0.01, 1);
86
- break;
87
- default:
88
- wrapperEl.style.bottom = bottom;
89
- wrapperAnimation.fromTo('opacity', 0.01, 1);
90
- break;
91
- }
92
- return baseAnimation.easing('cubic-bezier(.36,.66,.04,1)').duration(400).addAnimation(wrapperAnimation);
159
+ const baseAnimation = createAnimation();
160
+ const wrapperAnimation = createAnimation();
161
+ const { position, top, bottom } = opts;
162
+ const root = getElementRoot(baseEl);
163
+ const wrapperEl = root.querySelector('.toast-wrapper');
164
+ wrapperAnimation.addElement(wrapperEl);
165
+ switch (position) {
166
+ case 'top':
167
+ wrapperEl.style.setProperty('transform', `translateY(${top})`);
168
+ wrapperAnimation.fromTo('opacity', 0.01, 1);
169
+ break;
170
+ case 'middle':
171
+ const topPosition = getOffsetForMiddlePosition(baseEl.clientHeight, wrapperEl.clientHeight);
172
+ wrapperEl.style.top = `${topPosition}px`;
173
+ wrapperAnimation.fromTo('opacity', 0.01, 1);
174
+ break;
175
+ default:
176
+ wrapperEl.style.setProperty('transform', `translateY(${bottom})`);
177
+ wrapperAnimation.fromTo('opacity', 0.01, 1);
178
+ break;
179
+ }
180
+ return baseAnimation.easing('cubic-bezier(.36,.66,.04,1)').duration(400).addAnimation(wrapperAnimation);
93
181
  };
94
182
 
95
183
  /**
96
184
  * md Toast Leave Animation
97
185
  */
98
186
  const mdLeaveAnimation = (baseEl) => {
99
- const baseAnimation = createAnimation();
100
- const wrapperAnimation = createAnimation();
101
- const root = getElementRoot(baseEl);
102
- const wrapperEl = root.querySelector('.toast-wrapper');
103
- wrapperAnimation.addElement(wrapperEl).fromTo('opacity', 0.99, 0);
104
- return baseAnimation.easing('cubic-bezier(.36,.66,.04,1)').duration(300).addAnimation(wrapperAnimation);
187
+ const baseAnimation = createAnimation();
188
+ const wrapperAnimation = createAnimation();
189
+ const root = getElementRoot(baseEl);
190
+ const wrapperEl = root.querySelector('.toast-wrapper');
191
+ wrapperAnimation.addElement(wrapperEl).fromTo('opacity', 0.99, 0);
192
+ return baseAnimation.easing('cubic-bezier(.36,.66,.04,1)').duration(300).addAnimation(wrapperAnimation);
105
193
  };
106
194
 
107
195
  /**
108
- * Calculate the CSS top and bottom position of the toast, to be used
109
- * as starting points for the animation keyframes.
110
- *
111
- * Note that MD animates bottom-positioned toasts using style.bottom,
112
- * which calculates from the bottom edge of the screen, while iOS uses
113
- * translateY, which calculates from the top edge of the screen. This
114
- * is why the bottom calculates differ slightly between modes.
115
- *
116
- * @param position The value of the toast's position prop.
117
- * @param positionAnchor The element the toast should be anchored to,
118
- * if applicable.
119
- * @param mode The toast component's mode (md, ios, etc).
120
- * @param toast A reference to the toast element itself.
196
+ * Create a gesture that allows the Toast
197
+ * to be swiped to dismiss.
198
+ * @param el - The Toast element
199
+ * @param toastPosition - The last computed position of the Toast. This is computed in the "present" method.
200
+ * @param onDismiss - A callback to fire when the Toast was swiped to dismiss.
121
201
  */
122
- function getAnimationPosition(position, positionAnchor, mode, toast) {
123
- /**
124
- * Start with a predefined offset from the edge the toast will be
125
- * positioned relative to, whether on the screen or anchor element.
126
- */
127
- let offset;
128
- if (mode === 'md') {
129
- offset = 8;
130
- }
131
- else {
132
- offset = position === 'top' ? 10 : -10;
133
- }
134
- /**
135
- * If positionAnchor is defined, add in the distance from the target
136
- * screen edge to the target anchor edge. For position="top", the
137
- * bottom anchor edge is targeted. For position="bottom", the top
138
- * anchor edge is targeted.
139
- */
140
- if (positionAnchor && win) {
141
- warnIfAnchorIsHidden(positionAnchor, toast);
142
- const box = positionAnchor.getBoundingClientRect();
143
- if (position === 'top') {
144
- offset += box.bottom;
145
- }
146
- else if (position === 'bottom') {
147
- /**
148
- * Just box.top is the distance from the top edge of the screen
149
- * to the top edge of the anchor. We want to calculate from the
150
- * bottom edge of the screen instead.
151
- */
152
- if (mode === 'md') {
153
- offset += win.innerHeight - box.top;
154
- }
155
- else {
156
- offset -= win.innerHeight - box.top;
157
- }
158
- }
202
+ const createSwipeToDismissGesture = (el, toastPosition, onDismiss) => {
159
203
  /**
160
- * We don't include safe area here because that should already be
161
- * accounted for when checking the position of the anchor.
204
+ * Users should swipe on the visible toast wrapper
205
+ * rather than on ion-toast which covers the entire screen.
206
+ * When testing the class instance the inner wrapper will not
207
+ * be defined. As a result, we use a placeholder element in those environments.
162
208
  */
163
- return {
164
- top: `${offset}px`,
165
- bottom: `${offset}px`,
209
+ const wrapperEl = Build.isTesting
210
+ ? document.createElement('div')
211
+ : getElementRoot(el).querySelector('.toast-wrapper');
212
+ const hostElHeight = el.clientHeight;
213
+ const wrapperElBox = wrapperEl.getBoundingClientRect();
214
+ /**
215
+ * The maximum amount that
216
+ * the toast can be swiped. This should
217
+ * account for the wrapper element's height
218
+ * too so the toast can be swiped offscreen
219
+ * completely.
220
+ */
221
+ let MAX_SWIPE_DISTANCE = 0;
222
+ /**
223
+ * The step value at which a toast
224
+ * is eligible for dismissing via gesture.
225
+ */
226
+ const DISMISS_THRESHOLD = 0.5;
227
+ /**
228
+ * The middle position Toast starts 50% of the way
229
+ * through the animation, so we need to use this
230
+ * as the starting point for our step values.
231
+ */
232
+ const STEP_OFFSET = el.position === 'middle' ? 0.5 : 0;
233
+ /**
234
+ * When the Toast is at the top users will be
235
+ * swiping up. As a result, the delta values will be
236
+ * negative numbers which will result in negative steps
237
+ * and thresholds. As a result, we need to make those numbers
238
+ * positive.
239
+ */
240
+ const INVERSION_FACTOR = el.position === 'top' ? -1 : 1;
241
+ /**
242
+ * The top offset that places the
243
+ * toast in the middle of the screen.
244
+ * Only needed when position="middle".
245
+ */
246
+ const topPosition = getOffsetForMiddlePosition(hostElHeight, wrapperElBox.height);
247
+ const SWIPE_UP_DOWN_KEYFRAMES = [
248
+ { offset: 0, transform: `translateY(-${topPosition + wrapperElBox.height}px)` },
249
+ { offset: 0.5, transform: `translateY(0px)` },
250
+ { offset: 1, transform: `translateY(${topPosition + wrapperElBox.height}px)` },
251
+ ];
252
+ const swipeAnimation = createAnimation('toast-swipe-to-dismiss-animation')
253
+ .addElement(wrapperEl)
254
+ /**
255
+ * The specific value here does not actually
256
+ * matter. We just need this to be a positive
257
+ * value so the animation does not jump
258
+ * to the end when the user beings to drag.
259
+ */
260
+ .duration(100);
261
+ switch (el.position) {
262
+ case 'middle':
263
+ MAX_SWIPE_DISTANCE = hostElHeight + wrapperElBox.height;
264
+ swipeAnimation.keyframes(SWIPE_UP_DOWN_KEYFRAMES);
265
+ /**
266
+ * Toast can be swiped up or down but
267
+ * should start in the middle of the screen.
268
+ */
269
+ swipeAnimation.progressStart(true, 0.5);
270
+ break;
271
+ case 'top':
272
+ /**
273
+ * The bottom edge of the wrapper
274
+ * includes the distance between the top
275
+ * of the screen and the top of the wrapper
276
+ * as well as the wrapper height so the wrapper
277
+ * can be dragged fully offscreen.
278
+ */
279
+ MAX_SWIPE_DISTANCE = wrapperElBox.bottom;
280
+ swipeAnimation.keyframes([
281
+ { offset: 0, transform: `translateY(${toastPosition.top})` },
282
+ { offset: 1, transform: 'translateY(-100%)' },
283
+ ]);
284
+ swipeAnimation.progressStart(true, 0);
285
+ break;
286
+ case 'bottom':
287
+ default:
288
+ /**
289
+ * This computes the distance between the
290
+ * top of the wrapper and the bottom of the
291
+ * screen including the height of the wrapper
292
+ * element so it can be dragged fully offscreen.
293
+ */
294
+ MAX_SWIPE_DISTANCE = hostElHeight - wrapperElBox.top;
295
+ swipeAnimation.keyframes([
296
+ { offset: 0, transform: `translateY(${toastPosition.bottom})` },
297
+ { offset: 1, transform: 'translateY(100%)' },
298
+ ]);
299
+ swipeAnimation.progressStart(true, 0);
300
+ break;
301
+ }
302
+ const computeStep = (delta) => {
303
+ return (delta * INVERSION_FACTOR) / MAX_SWIPE_DISTANCE;
166
304
  };
167
- }
168
- else {
169
- return {
170
- top: `calc(${offset}px + var(--ion-safe-area-top, 0px))`,
171
- bottom: mode === 'md'
172
- ? `calc(${offset}px + var(--ion-safe-area-bottom, 0px))`
173
- : `calc(${offset}px - var(--ion-safe-area-bottom, 0px))`,
305
+ const onMove = (detail) => {
306
+ const step = STEP_OFFSET + computeStep(detail.deltaY);
307
+ swipeAnimation.progressStep(step);
174
308
  };
175
- }
176
- }
177
- /**
178
- * If the anchor element is hidden, getBoundingClientRect()
179
- * will return all 0s for it, which can cause unexpected
180
- * results in the position calculation when animating.
181
- */
182
- function warnIfAnchorIsHidden(positionAnchor, toast) {
183
- if (positionAnchor.offsetParent === null) {
184
- printIonWarning('The positionAnchor element for ion-toast was found in the DOM, but appears to be hidden. This may lead to unexpected positioning of the toast.', toast);
185
- }
186
- }
309
+ const onEnd = (detail) => {
310
+ const velocity = detail.velocityY;
311
+ const threshold = ((detail.deltaY + velocity * 1000) / MAX_SWIPE_DISTANCE) * INVERSION_FACTOR;
312
+ /**
313
+ * Disable the gesture for the remainder of the animation.
314
+ * It will be re-enabled if the toast animates back to
315
+ * its initial presented position.
316
+ */
317
+ gesture.enable(false);
318
+ let shouldDismiss = true;
319
+ let playTo = 1;
320
+ let step = 0;
321
+ let remainingDistance = 0;
322
+ if (el.position === 'middle') {
323
+ /**
324
+ * A middle positioned Toast appears
325
+ * in the middle of the screen (at animation offset 0.5).
326
+ * As a result, the threshold will be calculated relative
327
+ * to this starting position. In other words at animation offset 0.5
328
+ * the threshold will be 0. We want the middle Toast to be eligible
329
+ * for dismiss when the user has swiped either half way up or down the
330
+ * screen. As a result, we divide DISMISS_THRESHOLD in half. We also
331
+ * consider when the threshold is a negative in the event the
332
+ * user drags up (since the deltaY will also be negative).
333
+ */
334
+ shouldDismiss = threshold >= DISMISS_THRESHOLD / 2 || threshold <= -DISMISS_THRESHOLD / 2;
335
+ /**
336
+ * Since we are replacing the keyframes
337
+ * below the animation always starts from
338
+ * the beginning of the new keyframes.
339
+ * Similarly, we are always playing to
340
+ * the end of the new keyframes.
341
+ */
342
+ playTo = 1;
343
+ step = 0;
344
+ /**
345
+ * The Toast should animate from wherever its
346
+ * current position is to the desired end state.
347
+ *
348
+ * To begin, we get the current position of the
349
+ * Toast for its starting state.
350
+ */
351
+ const wrapperElBox = wrapperEl.getBoundingClientRect();
352
+ const startOffset = wrapperElBox.top - topPosition;
353
+ const startPosition = `${startOffset}px`;
354
+ /**
355
+ * If the deltaY is negative then the user is swiping
356
+ * up, so the Toast should animate to the top of the screen.
357
+ * If the deltaY is positive then the user is swiping
358
+ * down, so the Toast should animate to the bottom of the screen.
359
+ * We also account for when the deltaY is 0, but realistically
360
+ * that should never happen because it means the user did not drag
361
+ * the toast.
362
+ */
363
+ const offsetFactor = detail.deltaY <= 0 ? -1 : 1;
364
+ const endOffset = (topPosition + wrapperElBox.height) * offsetFactor;
365
+ /**
366
+ * If the Toast should dismiss
367
+ * then we need to figure out which edge of
368
+ * the screen it should animate towards.
369
+ * By default, the Toast will come
370
+ * back to its default state in the
371
+ * middle of the screen.
372
+ */
373
+ const endPosition = shouldDismiss ? `${endOffset}px` : '0px';
374
+ const KEYFRAMES = [
375
+ { offset: 0, transform: `translateY(${startPosition})` },
376
+ { offset: 1, transform: `translateY(${endPosition})` },
377
+ ];
378
+ swipeAnimation.keyframes(KEYFRAMES);
379
+ /**
380
+ * Compute the remaining amount of pixels the
381
+ * toast needs to move to be fully dismissed.
382
+ */
383
+ remainingDistance = endOffset - startOffset;
384
+ }
385
+ else {
386
+ shouldDismiss = threshold >= DISMISS_THRESHOLD;
387
+ playTo = shouldDismiss ? 1 : 0;
388
+ step = computeStep(detail.deltaY);
389
+ /**
390
+ * Compute the remaining amount of pixels the
391
+ * toast needs to move to be fully dismissed.
392
+ */
393
+ const remainingStepAmount = shouldDismiss ? 1 - step : step;
394
+ remainingDistance = remainingStepAmount * MAX_SWIPE_DISTANCE;
395
+ }
396
+ /**
397
+ * The animation speed should depend on how quickly
398
+ * the user flicks the toast across the screen. However,
399
+ * it should be no slower than 200ms.
400
+ * We use Math.abs on the remainingDistance because that value
401
+ * can be negative when swiping up on a middle position toast.
402
+ */
403
+ const duration = Math.min(Math.abs(remainingDistance) / Math.abs(velocity), 200);
404
+ swipeAnimation
405
+ .onFinish(() => {
406
+ if (shouldDismiss) {
407
+ onDismiss();
408
+ swipeAnimation.destroy();
409
+ }
410
+ else {
411
+ if (el.position === 'middle') {
412
+ /**
413
+ * If the toast snapped back to
414
+ * the middle of the screen we need
415
+ * to reset the keyframes
416
+ * so the toast can be swiped
417
+ * up or down again.
418
+ */
419
+ swipeAnimation.keyframes(SWIPE_UP_DOWN_KEYFRAMES).progressStart(true, 0.5);
420
+ }
421
+ else {
422
+ swipeAnimation.progressStart(true, 0);
423
+ }
424
+ /**
425
+ * If the toast did not dismiss then
426
+ * the user should be able to swipe again.
427
+ */
428
+ gesture.enable(true);
429
+ }
430
+ /**
431
+ * This must be a one time callback
432
+ * otherwise a new callback will
433
+ * be added every time onEnd runs.
434
+ */
435
+ }, { oneTimeCallback: true })
436
+ .progressEnd(playTo, step, duration);
437
+ };
438
+ const gesture = createGesture({
439
+ el: wrapperEl,
440
+ gestureName: 'toast-swipe-to-dismiss',
441
+ gesturePriority: OVERLAY_GESTURE_PRIORITY,
442
+ /**
443
+ * Toast only supports vertical swipes.
444
+ * This needs to be updated if we later
445
+ * support horizontal swipes.
446
+ */
447
+ direction: 'y',
448
+ onMove,
449
+ onEnd,
450
+ });
451
+ return gesture;
452
+ };
187
453
 
188
- const toastIosCss = ":host{--border-width:0;--border-style:none;--border-color:initial;--box-shadow:none;--min-width:auto;--width:auto;--min-height:auto;--height:auto;--max-height:auto;--white-space:normal;top:0;display:block;position:absolute;width:100%;height:100%;outline:none;color:var(--color);font-family:var(--ion-font-family, inherit);contain:strict;z-index:1001;pointer-events:none}@supports (inset-inline-start: 0){:host{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host{left:0}:host-context([dir=rtl]){left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(:dir(rtl)){left:unset;right:unset;right:0}}}:host(.overlay-hidden){display:none}:host(.ion-color){--button-color:inherit;color:var(--ion-color-contrast)}:host(.ion-color) .toast-button-cancel{color:inherit}:host(.ion-color) .toast-wrapper{background:var(--ion-color-base)}.toast-wrapper{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}@supports (inset-inline-start: 0){.toast-wrapper{inset-inline-start:var(--start);inset-inline-end:var(--end)}}@supports not (inset-inline-start: 0){.toast-wrapper{left:var(--start);right:var(--end)}:host-context([dir=rtl]) .toast-wrapper{left:unset;right:unset;left:var(--end);right:var(--start)}[dir=rtl] .toast-wrapper{left:unset;right:unset;left:var(--end);right:var(--start)}@supports selector(:dir(rtl)){.toast-wrapper:dir(rtl){left:unset;right:unset;left:var(--end);right:var(--start)}}}.toast-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;pointer-events:auto;height:inherit;min-height:inherit;max-height:inherit;contain:content}.toast-layout-stacked .toast-container{-ms-flex-wrap:wrap;flex-wrap:wrap}.toast-layout-baseline .toast-content{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center}.toast-icon{-webkit-margin-start:16px;margin-inline-start:16px}.toast-content{min-width:0}.toast-message{-ms-flex:1;flex:1;white-space:var(--white-space)}.toast-button-group{display:-ms-flexbox;display:flex}.toast-layout-stacked .toast-button-group{-ms-flex-pack:end;justify-content:end;width:100%}.toast-button{border:0;outline:none;color:var(--button-color);z-index:0}.toast-icon,.toast-button-icon{font-size:1.4em}.toast-button-inner{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}@media (any-hover: hover){.toast-button:hover{cursor:pointer}}:host{--background:var(--ion-color-step-50, #f2f2f2);--border-radius:14px;--button-color:var(--ion-color-primary, #3880ff);--color:var(--ion-color-step-850, #262626);--max-width:700px;--max-height:478px;--start:10px;--end:10px;font-size:clamp(14px, 0.875rem, 43.4px)}.toast-wrapper{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:auto;margin-bottom:auto;display:block;position:absolute;z-index:10}@supports ((-webkit-backdrop-filter: blur(0)) or (backdrop-filter: blur(0))){:host(.toast-translucent) .toast-wrapper{background:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}:host(.ion-color.toast-translucent) .toast-wrapper{background:rgba(var(--ion-color-base-rgb), 0.8)}}.toast-wrapper.toast-top{-webkit-transform:translate3d(0, -100%, 0);transform:translate3d(0, -100%, 0);top:0}.toast-wrapper.toast-middle{opacity:0.01}.toast-wrapper.toast-bottom{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0);bottom:0}.toast-content{-webkit-padding-start:15px;padding-inline-start:15px;-webkit-padding-end:15px;padding-inline-end:15px;padding-top:15px;padding-bottom:15px}.toast-header{margin-bottom:2px;font-weight:500}.toast-button{-webkit-padding-start:15px;padding-inline-start:15px;-webkit-padding-end:15px;padding-inline-end:15px;padding-top:10px;padding-bottom:10px;min-height:44px;-webkit-transition:background-color, opacity 100ms linear;transition:background-color, opacity 100ms linear;border:0;background-color:transparent;font-family:var(--ion-font-family);font-size:clamp(17px, 1.0625rem, 21.998px);font-weight:500;overflow:hidden}.toast-button.ion-activated{opacity:0.4}@media (any-hover: hover){.toast-button:hover{opacity:0.6}}";
454
+ const toastIosCss = ":host{--border-width:0;--border-style:none;--border-color:initial;--box-shadow:none;--min-width:auto;--width:auto;--min-height:auto;--height:auto;--max-height:auto;--white-space:normal;top:0;display:block;position:absolute;width:100%;height:100%;outline:none;color:var(--color);font-family:var(--ion-font-family, inherit);contain:strict;z-index:1001;pointer-events:none}@supports (inset-inline-start: 0){:host{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host{left:0}:host-context([dir=rtl]){left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(:dir(rtl)){left:unset;right:unset;right:0}}}:host(.overlay-hidden){display:none}:host(.ion-color){--button-color:inherit;color:var(--ion-color-contrast)}:host(.ion-color) .toast-button-cancel{color:inherit}:host(.ion-color) .toast-wrapper{background:var(--ion-color-base)}.toast-wrapper{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}@supports (inset-inline-start: 0){.toast-wrapper{inset-inline-start:var(--start);inset-inline-end:var(--end)}}@supports not (inset-inline-start: 0){.toast-wrapper{left:var(--start);right:var(--end)}:host-context([dir=rtl]) .toast-wrapper{left:unset;right:unset;left:var(--end);right:var(--start)}[dir=rtl] .toast-wrapper{left:unset;right:unset;left:var(--end);right:var(--start)}@supports selector(:dir(rtl)){.toast-wrapper:dir(rtl){left:unset;right:unset;left:var(--end);right:var(--start)}}}.toast-wrapper.toast-top{-webkit-transform:translate3d(0, -100%, 0);transform:translate3d(0, -100%, 0);top:0}.toast-wrapper.toast-bottom{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0);bottom:0}.toast-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;pointer-events:auto;height:inherit;min-height:inherit;max-height:inherit;contain:content}.toast-layout-stacked .toast-container{-ms-flex-wrap:wrap;flex-wrap:wrap}.toast-layout-baseline .toast-content{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center}.toast-icon{-webkit-margin-start:16px;margin-inline-start:16px}.toast-content{min-width:0}.toast-message{-ms-flex:1;flex:1;white-space:var(--white-space)}.toast-button-group{display:-ms-flexbox;display:flex}.toast-layout-stacked .toast-button-group{-ms-flex-pack:end;justify-content:end;width:100%}.toast-button{border:0;outline:none;color:var(--button-color);z-index:0}.toast-icon,.toast-button-icon{font-size:1.4em}.toast-button-inner{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}@media (any-hover: hover){.toast-button:hover{cursor:pointer}}:host{--background:var(--ion-color-step-50, #f2f2f2);--border-radius:14px;--button-color:var(--ion-color-primary, #3880ff);--color:var(--ion-color-step-850, #262626);--max-width:700px;--max-height:478px;--start:10px;--end:10px;font-size:clamp(14px, 0.875rem, 43.4px)}.toast-wrapper{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:auto;margin-bottom:auto;display:block;position:absolute;z-index:10}@supports ((-webkit-backdrop-filter: blur(0)) or (backdrop-filter: blur(0))){:host(.toast-translucent) .toast-wrapper{background:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}:host(.ion-color.toast-translucent) .toast-wrapper{background:rgba(var(--ion-color-base-rgb), 0.8)}}.toast-wrapper.toast-middle{opacity:0.01}.toast-content{-webkit-padding-start:15px;padding-inline-start:15px;-webkit-padding-end:15px;padding-inline-end:15px;padding-top:15px;padding-bottom:15px}.toast-header{margin-bottom:2px;font-weight:500}.toast-button{-webkit-padding-start:15px;padding-inline-start:15px;-webkit-padding-end:15px;padding-inline-end:15px;padding-top:10px;padding-bottom:10px;min-height:44px;-webkit-transition:background-color, opacity 100ms linear;transition:background-color, opacity 100ms linear;border:0;background-color:transparent;font-family:var(--ion-font-family);font-size:clamp(17px, 1.0625rem, 21.998px);font-weight:500;overflow:hidden}.toast-button.ion-activated{opacity:0.4}@media (any-hover: hover){.toast-button:hover{opacity:0.6}}";
189
455
 
190
- const toastMdCss = ":host{--border-width:0;--border-style:none;--border-color:initial;--box-shadow:none;--min-width:auto;--width:auto;--min-height:auto;--height:auto;--max-height:auto;--white-space:normal;top:0;display:block;position:absolute;width:100%;height:100%;outline:none;color:var(--color);font-family:var(--ion-font-family, inherit);contain:strict;z-index:1001;pointer-events:none}@supports (inset-inline-start: 0){:host{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host{left:0}:host-context([dir=rtl]){left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(:dir(rtl)){left:unset;right:unset;right:0}}}:host(.overlay-hidden){display:none}:host(.ion-color){--button-color:inherit;color:var(--ion-color-contrast)}:host(.ion-color) .toast-button-cancel{color:inherit}:host(.ion-color) .toast-wrapper{background:var(--ion-color-base)}.toast-wrapper{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}@supports (inset-inline-start: 0){.toast-wrapper{inset-inline-start:var(--start);inset-inline-end:var(--end)}}@supports not (inset-inline-start: 0){.toast-wrapper{left:var(--start);right:var(--end)}:host-context([dir=rtl]) .toast-wrapper{left:unset;right:unset;left:var(--end);right:var(--start)}[dir=rtl] .toast-wrapper{left:unset;right:unset;left:var(--end);right:var(--start)}@supports selector(:dir(rtl)){.toast-wrapper:dir(rtl){left:unset;right:unset;left:var(--end);right:var(--start)}}}.toast-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;pointer-events:auto;height:inherit;min-height:inherit;max-height:inherit;contain:content}.toast-layout-stacked .toast-container{-ms-flex-wrap:wrap;flex-wrap:wrap}.toast-layout-baseline .toast-content{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center}.toast-icon{-webkit-margin-start:16px;margin-inline-start:16px}.toast-content{min-width:0}.toast-message{-ms-flex:1;flex:1;white-space:var(--white-space)}.toast-button-group{display:-ms-flexbox;display:flex}.toast-layout-stacked .toast-button-group{-ms-flex-pack:end;justify-content:end;width:100%}.toast-button{border:0;outline:none;color:var(--button-color);z-index:0}.toast-icon,.toast-button-icon{font-size:1.4em}.toast-button-inner{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}@media (any-hover: hover){.toast-button:hover{cursor:pointer}}:host{--background:var(--ion-color-step-800, #333333);--border-radius:4px;--box-shadow:0 3px 5px -1px rgba(0, 0, 0, 0.2), 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12);--button-color:var(--ion-color-primary, #3880ff);--color:var(--ion-color-step-50, #f2f2f2);--max-width:700px;--start:8px;--end:8px;font-size:0.875rem}.toast-wrapper{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:auto;margin-bottom:auto;display:block;position:absolute;opacity:0.01;z-index:10}.toast-content{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:14px;padding-bottom:14px}.toast-header{margin-bottom:2px;font-weight:500;line-height:1.25rem}.toast-message{line-height:1.25rem}.toast-layout-baseline .toast-button-group-start{-webkit-margin-start:8px;margin-inline-start:8px}.toast-layout-stacked .toast-button-group-start{-webkit-margin-end:8px;margin-inline-end:8px;margin-top:8px}.toast-layout-baseline .toast-button-group-end{-webkit-margin-end:8px;margin-inline-end:8px}.toast-layout-stacked .toast-button-group-end{-webkit-margin-end:8px;margin-inline-end:8px;margin-bottom:8px}.toast-button{-webkit-padding-start:15px;padding-inline-start:15px;-webkit-padding-end:15px;padding-inline-end:15px;padding-top:10px;padding-bottom:10px;position:relative;background-color:transparent;font-family:var(--ion-font-family);font-size:0.875rem;font-weight:500;letter-spacing:0.84px;text-transform:uppercase;overflow:hidden}.toast-button-cancel{color:var(--ion-color-step-100, #e6e6e6)}.toast-button-icon-only{border-radius:50%;-webkit-padding-start:9px;padding-inline-start:9px;-webkit-padding-end:9px;padding-inline-end:9px;padding-top:9px;padding-bottom:9px;width:36px;height:36px}@media (any-hover: hover){.toast-button:hover{background-color:rgba(var(--ion-color-primary-rgb, 56, 128, 255), 0.08)}.toast-button-cancel:hover{background-color:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.08)}}";
456
+ const toastMdCss = ":host{--border-width:0;--border-style:none;--border-color:initial;--box-shadow:none;--min-width:auto;--width:auto;--min-height:auto;--height:auto;--max-height:auto;--white-space:normal;top:0;display:block;position:absolute;width:100%;height:100%;outline:none;color:var(--color);font-family:var(--ion-font-family, inherit);contain:strict;z-index:1001;pointer-events:none}@supports (inset-inline-start: 0){:host{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host{left:0}:host-context([dir=rtl]){left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(:dir(rtl)){left:unset;right:unset;right:0}}}:host(.overlay-hidden){display:none}:host(.ion-color){--button-color:inherit;color:var(--ion-color-contrast)}:host(.ion-color) .toast-button-cancel{color:inherit}:host(.ion-color) .toast-wrapper{background:var(--ion-color-base)}.toast-wrapper{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}@supports (inset-inline-start: 0){.toast-wrapper{inset-inline-start:var(--start);inset-inline-end:var(--end)}}@supports not (inset-inline-start: 0){.toast-wrapper{left:var(--start);right:var(--end)}:host-context([dir=rtl]) .toast-wrapper{left:unset;right:unset;left:var(--end);right:var(--start)}[dir=rtl] .toast-wrapper{left:unset;right:unset;left:var(--end);right:var(--start)}@supports selector(:dir(rtl)){.toast-wrapper:dir(rtl){left:unset;right:unset;left:var(--end);right:var(--start)}}}.toast-wrapper.toast-top{-webkit-transform:translate3d(0, -100%, 0);transform:translate3d(0, -100%, 0);top:0}.toast-wrapper.toast-bottom{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0);bottom:0}.toast-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;pointer-events:auto;height:inherit;min-height:inherit;max-height:inherit;contain:content}.toast-layout-stacked .toast-container{-ms-flex-wrap:wrap;flex-wrap:wrap}.toast-layout-baseline .toast-content{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center}.toast-icon{-webkit-margin-start:16px;margin-inline-start:16px}.toast-content{min-width:0}.toast-message{-ms-flex:1;flex:1;white-space:var(--white-space)}.toast-button-group{display:-ms-flexbox;display:flex}.toast-layout-stacked .toast-button-group{-ms-flex-pack:end;justify-content:end;width:100%}.toast-button{border:0;outline:none;color:var(--button-color);z-index:0}.toast-icon,.toast-button-icon{font-size:1.4em}.toast-button-inner{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}@media (any-hover: hover){.toast-button:hover{cursor:pointer}}:host{--background:var(--ion-color-step-800, #333333);--border-radius:4px;--box-shadow:0 3px 5px -1px rgba(0, 0, 0, 0.2), 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12);--button-color:var(--ion-color-primary, #3880ff);--color:var(--ion-color-step-50, #f2f2f2);--max-width:700px;--start:8px;--end:8px;font-size:0.875rem}.toast-wrapper{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:auto;margin-bottom:auto;display:block;position:absolute;opacity:0.01;z-index:10}.toast-content{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:14px;padding-bottom:14px}.toast-header{margin-bottom:2px;font-weight:500;line-height:1.25rem}.toast-message{line-height:1.25rem}.toast-layout-baseline .toast-button-group-start{-webkit-margin-start:8px;margin-inline-start:8px}.toast-layout-stacked .toast-button-group-start{-webkit-margin-end:8px;margin-inline-end:8px;margin-top:8px}.toast-layout-baseline .toast-button-group-end{-webkit-margin-end:8px;margin-inline-end:8px}.toast-layout-stacked .toast-button-group-end{-webkit-margin-end:8px;margin-inline-end:8px;margin-bottom:8px}.toast-button{-webkit-padding-start:15px;padding-inline-start:15px;-webkit-padding-end:15px;padding-inline-end:15px;padding-top:10px;padding-bottom:10px;position:relative;background-color:transparent;font-family:var(--ion-font-family);font-size:0.875rem;font-weight:500;letter-spacing:0.84px;text-transform:uppercase;overflow:hidden}.toast-button-cancel{color:var(--ion-color-step-100, #e6e6e6)}.toast-button-icon-only{border-radius:50%;-webkit-padding-start:9px;padding-inline-start:9px;-webkit-padding-end:9px;padding-inline-end:9px;padding-top:9px;padding-bottom:9px;width:36px;height:36px}@media (any-hover: hover){.toast-button:hover{background-color:rgba(var(--ion-color-primary-rgb, 56, 128, 255), 0.08)}.toast-button-cancel:hover{background-color:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.08)}}";
191
457
 
192
458
  const Toast = /*@__PURE__*/ proxyCustomElement(class Toast extends HTMLElement {
193
- constructor() {
194
- super();
195
- this.__registerHost();
196
- this.__attachShadow();
197
- this.didPresent = createEvent(this, "ionToastDidPresent", 7);
198
- this.willPresent = createEvent(this, "ionToastWillPresent", 7);
199
- this.willDismiss = createEvent(this, "ionToastWillDismiss", 7);
200
- this.didDismiss = createEvent(this, "ionToastDidDismiss", 7);
201
- this.didPresentShorthand = createEvent(this, "didPresent", 7);
202
- this.willPresentShorthand = createEvent(this, "willPresent", 7);
203
- this.willDismissShorthand = createEvent(this, "willDismiss", 7);
204
- this.didDismissShorthand = createEvent(this, "didDismiss", 7);
205
- this.delegateController = createDelegateController(this);
206
- this.lockController = createLockController();
207
- this.triggerController = createTriggerController();
208
- this.customHTMLEnabled = config.get('innerHTMLTemplatesEnabled', ENABLE_HTML_CONTENT_DEFAULT);
209
- this.presented = false;
210
- this.dispatchCancelHandler = (ev) => {
211
- const role = ev.detail.role;
212
- if (isCancel(role)) {
213
- const cancelButton = this.getButtons().find((b) => b.role === 'cancel');
214
- this.callButtonHandler(cancelButton);
215
- }
216
- };
217
- this.revealContentToScreenReader = false;
218
- this.overlayIndex = undefined;
219
- this.delegate = undefined;
220
- this.hasController = false;
221
- this.color = undefined;
222
- this.enterAnimation = undefined;
223
- this.leaveAnimation = undefined;
224
- this.cssClass = undefined;
225
- this.duration = config.getNumber('toastDuration', 0);
226
- this.header = undefined;
227
- this.layout = 'baseline';
228
- this.message = undefined;
229
- this.keyboardClose = false;
230
- this.position = 'bottom';
231
- this.positionAnchor = undefined;
232
- this.buttons = undefined;
233
- this.translucent = false;
234
- this.animated = true;
235
- this.icon = undefined;
236
- this.htmlAttributes = undefined;
237
- this.isOpen = false;
238
- this.trigger = undefined;
239
- }
240
- onIsOpenChange(newValue, oldValue) {
241
- if (newValue === true && oldValue === false) {
242
- this.present();
459
+ constructor() {
460
+ super();
461
+ this.__registerHost();
462
+ this.__attachShadow();
463
+ this.didPresent = createEvent(this, "ionToastDidPresent", 7);
464
+ this.willPresent = createEvent(this, "ionToastWillPresent", 7);
465
+ this.willDismiss = createEvent(this, "ionToastWillDismiss", 7);
466
+ this.didDismiss = createEvent(this, "ionToastDidDismiss", 7);
467
+ this.didPresentShorthand = createEvent(this, "didPresent", 7);
468
+ this.willPresentShorthand = createEvent(this, "willPresent", 7);
469
+ this.willDismissShorthand = createEvent(this, "willDismiss", 7);
470
+ this.didDismissShorthand = createEvent(this, "didDismiss", 7);
471
+ this.delegateController = createDelegateController(this);
472
+ this.lockController = createLockController();
473
+ this.triggerController = createTriggerController();
474
+ this.customHTMLEnabled = config.get('innerHTMLTemplatesEnabled', ENABLE_HTML_CONTENT_DEFAULT);
475
+ this.presented = false;
476
+ this.dispatchCancelHandler = (ev) => {
477
+ const role = ev.detail.role;
478
+ if (isCancel(role)) {
479
+ const cancelButton = this.getButtons().find((b) => b.role === 'cancel');
480
+ this.callButtonHandler(cancelButton);
481
+ }
482
+ };
483
+ /**
484
+ * Create a new swipe gesture so Toast
485
+ * can be swiped to dismiss.
486
+ */
487
+ this.createSwipeGesture = (toastPosition) => {
488
+ const gesture = (this.gesture = createSwipeToDismissGesture(this.el, toastPosition, () => {
489
+ /**
490
+ * If the gesture completed then
491
+ * we should dismiss the toast.
492
+ */
493
+ this.dismiss(undefined, GESTURE);
494
+ }));
495
+ gesture.enable(true);
496
+ };
497
+ /**
498
+ * Destroy an existing swipe gesture
499
+ * so Toast can no longer be swiped to dismiss.
500
+ */
501
+ this.destroySwipeGesture = () => {
502
+ const { gesture } = this;
503
+ if (gesture === undefined) {
504
+ return;
505
+ }
506
+ gesture.destroy();
507
+ this.gesture = undefined;
508
+ };
509
+ /**
510
+ * Returns `true` if swipeGesture
511
+ * is configured to a value that enables the swipe behavior.
512
+ * Returns `false` otherwise.
513
+ */
514
+ this.prefersSwipeGesture = () => {
515
+ const { swipeGesture } = this;
516
+ return swipeGesture === 'vertical';
517
+ };
518
+ this.revealContentToScreenReader = false;
519
+ this.overlayIndex = undefined;
520
+ this.delegate = undefined;
521
+ this.hasController = false;
522
+ this.color = undefined;
523
+ this.enterAnimation = undefined;
524
+ this.leaveAnimation = undefined;
525
+ this.cssClass = undefined;
526
+ this.duration = config.getNumber('toastDuration', 0);
527
+ this.header = undefined;
528
+ this.layout = 'baseline';
529
+ this.message = undefined;
530
+ this.keyboardClose = false;
531
+ this.position = 'bottom';
532
+ this.positionAnchor = undefined;
533
+ this.buttons = undefined;
534
+ this.translucent = false;
535
+ this.animated = true;
536
+ this.icon = undefined;
537
+ this.htmlAttributes = undefined;
538
+ this.swipeGesture = undefined;
539
+ this.isOpen = false;
540
+ this.trigger = undefined;
541
+ }
542
+ swipeGestureChanged() {
543
+ /**
544
+ * If the Toast is presented, then we need to destroy
545
+ * any actives gestures before a new gesture is potentially
546
+ * created below.
547
+ *
548
+ * If the Toast is dismissed, then no gesture should be available
549
+ * since the Toast is not visible. This case should never
550
+ * happen since the "dismiss" method handles destroying
551
+ * any active swipe gestures, but we keep this code
552
+ * around to handle the first case.
553
+ */
554
+ this.destroySwipeGesture();
555
+ /**
556
+ * A new swipe gesture should only be created
557
+ * if the Toast is presented. If the Toast is not
558
+ * yet presented then the "present" method will
559
+ * handle calling the swipe gesture setup function.
560
+ */
561
+ if (this.presented && this.prefersSwipeGesture()) {
562
+ /**
563
+ * If the Toast is presented then
564
+ * lastPresentedPosition is defined.
565
+ */
566
+ this.createSwipeGesture(this.lastPresentedPosition);
567
+ }
568
+ }
569
+ onIsOpenChange(newValue, oldValue) {
570
+ if (newValue === true && oldValue === false) {
571
+ this.present();
572
+ }
573
+ else if (newValue === false && oldValue === true) {
574
+ this.dismiss();
575
+ }
243
576
  }
244
- else if (newValue === false && oldValue === true) {
245
- this.dismiss();
577
+ triggerChanged() {
578
+ const { trigger, el, triggerController } = this;
579
+ if (trigger) {
580
+ triggerController.addClickListener(el, trigger);
581
+ }
246
582
  }
247
- }
248
- triggerChanged() {
249
- const { trigger, el, triggerController } = this;
250
- if (trigger) {
251
- triggerController.addClickListener(el, trigger);
583
+ connectedCallback() {
584
+ prepareOverlay(this.el);
585
+ this.triggerChanged();
252
586
  }
253
- }
254
- connectedCallback() {
255
- prepareOverlay(this.el);
256
- this.triggerChanged();
257
- }
258
- disconnectedCallback() {
259
- this.triggerController.removeClickListener();
260
- }
261
- componentWillLoad() {
262
- setOverlayId(this.el);
263
- }
264
- componentDidLoad() {
265
- /**
266
- * If toast was rendered with isOpen="true"
267
- * then we should open toast immediately.
268
- */
269
- if (this.isOpen === true) {
270
- raf(() => this.present());
587
+ disconnectedCallback() {
588
+ this.triggerController.removeClickListener();
589
+ }
590
+ componentWillLoad() {
591
+ setOverlayId(this.el);
592
+ }
593
+ componentDidLoad() {
594
+ /**
595
+ * If toast was rendered with isOpen="true"
596
+ * then we should open toast immediately.
597
+ */
598
+ if (this.isOpen === true) {
599
+ raf(() => this.present());
600
+ }
601
+ /**
602
+ * When binding values in frameworks such as Angular
603
+ * it is possible for the value to be set after the Web Component
604
+ * initializes but before the value watcher is set up in Stencil.
605
+ * As a result, the watcher callback may not be fired.
606
+ * We work around this by manually calling the watcher
607
+ * callback when the component has loaded and the watcher
608
+ * is configured.
609
+ */
610
+ this.triggerChanged();
271
611
  }
272
- }
273
- /**
274
- * Present the toast overlay after it has been created.
275
- */
276
- async present() {
277
- const unlock = await this.lockController.lock();
278
- await this.delegateController.attachViewToDom();
279
- const { el, position } = this;
280
- const anchor = this.getAnchorElement();
281
- const animationPosition = getAnimationPosition(position, anchor, getIonMode(this), el);
282
612
  /**
283
- * Cache the calculated position of the toast, so we can re-use it
284
- * in the dismiss animation.
613
+ * Present the toast overlay after it has been created.
285
614
  */
286
- this.lastPresentedPosition = animationPosition;
287
- await present(this, 'toastEnter', iosEnterAnimation, mdEnterAnimation, {
288
- position,
289
- top: animationPosition.top,
290
- bottom: animationPosition.bottom,
291
- });
615
+ async present() {
616
+ const unlock = await this.lockController.lock();
617
+ await this.delegateController.attachViewToDom();
618
+ const { el, position } = this;
619
+ const anchor = this.getAnchorElement();
620
+ const animationPosition = getAnimationPosition(position, anchor, getIonMode(this), el);
621
+ /**
622
+ * Cache the calculated position of the toast, so we can re-use it
623
+ * in the dismiss animation.
624
+ */
625
+ this.lastPresentedPosition = animationPosition;
626
+ await present(this, 'toastEnter', iosEnterAnimation, mdEnterAnimation, {
627
+ position,
628
+ top: animationPosition.top,
629
+ bottom: animationPosition.bottom,
630
+ });
631
+ /**
632
+ * Content is revealed to screen readers after
633
+ * the transition to avoid jank since this
634
+ * state updates will cause a re-render.
635
+ */
636
+ this.revealContentToScreenReader = true;
637
+ if (this.duration > 0) {
638
+ this.durationTimeout = setTimeout(() => this.dismiss(undefined, 'timeout'), this.duration);
639
+ }
640
+ /**
641
+ * If the Toast has a swipe gesture then we can
642
+ * create the gesture so users can swipe the
643
+ * presented Toast.
644
+ */
645
+ if (this.prefersSwipeGesture()) {
646
+ this.createSwipeGesture(animationPosition);
647
+ }
648
+ unlock();
649
+ }
292
650
  /**
293
- * Content is revealed to screen readers after
294
- * the transition to avoid jank since this
295
- * state updates will cause a re-render.
651
+ * Dismiss the toast overlay after it has been presented.
652
+ *
653
+ * @param data Any data to emit in the dismiss events.
654
+ * @param role The role of the element that is dismissing the toast.
655
+ * This can be useful in a button handler for determining which button was
656
+ * clicked to dismiss the toast.
657
+ * Some examples include: ``"cancel"`, `"destructive"`, "selected"`, and `"backdrop"`.
296
658
  */
297
- this.revealContentToScreenReader = true;
298
- if (this.duration > 0) {
299
- this.durationTimeout = setTimeout(() => this.dismiss(undefined, 'timeout'), this.duration);
300
- }
301
- unlock();
302
- }
303
- /**
304
- * Dismiss the toast overlay after it has been presented.
305
- *
306
- * @param data Any data to emit in the dismiss events.
307
- * @param role The role of the element that is dismissing the toast.
308
- * This can be useful in a button handler for determining which button was
309
- * clicked to dismiss the toast.
310
- * Some examples include: ``"cancel"`, `"destructive"`, "selected"`, and `"backdrop"`.
311
- */
312
- async dismiss(data, role) {
313
- var _a, _b;
314
- const unlock = await this.lockController.lock();
315
- const { durationTimeout, position, lastPresentedPosition } = this;
316
- if (durationTimeout) {
317
- clearTimeout(durationTimeout);
659
+ async dismiss(data, role) {
660
+ var _a, _b;
661
+ const unlock = await this.lockController.lock();
662
+ const { durationTimeout, position, lastPresentedPosition } = this;
663
+ if (durationTimeout) {
664
+ clearTimeout(durationTimeout);
665
+ }
666
+ const dismissed = await dismiss(this, data, role, 'toastLeave', iosLeaveAnimation, mdLeaveAnimation,
667
+ /**
668
+ * Fetch the cached position that was calculated back in the present
669
+ * animation. We always want to animate the dismiss from the same
670
+ * position the present stopped at, so the animation looks continuous.
671
+ */
672
+ {
673
+ position,
674
+ top: (_a = lastPresentedPosition === null || lastPresentedPosition === void 0 ? void 0 : lastPresentedPosition.top) !== null && _a !== void 0 ? _a : '',
675
+ bottom: (_b = lastPresentedPosition === null || lastPresentedPosition === void 0 ? void 0 : lastPresentedPosition.bottom) !== null && _b !== void 0 ? _b : '',
676
+ });
677
+ if (dismissed) {
678
+ this.delegateController.removeViewFromDom();
679
+ this.revealContentToScreenReader = false;
680
+ }
681
+ this.lastPresentedPosition = undefined;
682
+ /**
683
+ * If the Toast has a swipe gesture then we can
684
+ * safely destroy it now that it is dismissed.
685
+ */
686
+ this.destroySwipeGesture();
687
+ unlock();
688
+ return dismissed;
318
689
  }
319
- const dismissed = await dismiss(this, data, role, 'toastLeave', iosLeaveAnimation, mdLeaveAnimation,
320
690
  /**
321
- * Fetch the cached position that was calculated back in the present
322
- * animation. We always want to animate the dismiss from the same
323
- * position the present stopped at, so the animation looks continuous.
691
+ * Returns a promise that resolves when the toast did dismiss.
324
692
  */
325
- {
326
- position,
327
- top: (_a = lastPresentedPosition === null || lastPresentedPosition === void 0 ? void 0 : lastPresentedPosition.top) !== null && _a !== void 0 ? _a : '',
328
- bottom: (_b = lastPresentedPosition === null || lastPresentedPosition === void 0 ? void 0 : lastPresentedPosition.bottom) !== null && _b !== void 0 ? _b : '',
329
- });
330
- if (dismissed) {
331
- this.delegateController.removeViewFromDom();
332
- this.revealContentToScreenReader = false;
693
+ onDidDismiss() {
694
+ return eventMethod(this.el, 'ionToastDidDismiss');
333
695
  }
334
- this.lastPresentedPosition = undefined;
335
- unlock();
336
- return dismissed;
337
- }
338
- /**
339
- * Returns a promise that resolves when the toast did dismiss.
340
- */
341
- onDidDismiss() {
342
- return eventMethod(this.el, 'ionToastDidDismiss');
343
- }
344
- /**
345
- * Returns a promise that resolves when the toast will dismiss.
346
- */
347
- onWillDismiss() {
348
- return eventMethod(this.el, 'ionToastWillDismiss');
349
- }
350
- getButtons() {
351
- const buttons = this.buttons
352
- ? this.buttons.map((b) => {
353
- return typeof b === 'string' ? { text: b } : b;
354
- })
355
- : [];
356
- return buttons;
357
- }
358
- /**
359
- * Returns the element specified by the positionAnchor prop,
360
- * or undefined if prop's value is an ID string and the element
361
- * is not found in the DOM.
362
- */
363
- getAnchorElement() {
364
- const { position, positionAnchor, el } = this;
365
696
  /**
366
- * If positionAnchor is undefined then
367
- * no anchor should be used when presenting the toast.
697
+ * Returns a promise that resolves when the toast will dismiss.
368
698
  */
369
- if (positionAnchor === undefined) {
370
- return;
699
+ onWillDismiss() {
700
+ return eventMethod(this.el, 'ionToastWillDismiss');
371
701
  }
372
- if (position === 'middle' && positionAnchor !== undefined) {
373
- printIonWarning('The positionAnchor property is ignored when using position="middle".', this.el);
374
- return undefined;
702
+ getButtons() {
703
+ const buttons = this.buttons
704
+ ? this.buttons.map((b) => {
705
+ return typeof b === 'string' ? { text: b } : b;
706
+ })
707
+ : [];
708
+ return buttons;
375
709
  }
376
- if (typeof positionAnchor === 'string') {
377
- /**
378
- * If the anchor is defined as an ID, find the element.
379
- * We do this on every present so the toast doesn't need
380
- * to account for the surrounding DOM changing since the
381
- * last time it was presented.
382
- */
383
- const foundEl = document.getElementById(positionAnchor);
384
- if (foundEl === null) {
385
- printIonWarning(`An anchor element with an ID of "${positionAnchor}" was not found in the DOM.`, el);
710
+ /**
711
+ * Returns the element specified by the positionAnchor prop,
712
+ * or undefined if prop's value is an ID string and the element
713
+ * is not found in the DOM.
714
+ */
715
+ getAnchorElement() {
716
+ const { position, positionAnchor, el } = this;
717
+ /**
718
+ * If positionAnchor is undefined then
719
+ * no anchor should be used when presenting the toast.
720
+ */
721
+ if (positionAnchor === undefined) {
722
+ return;
723
+ }
724
+ if (position === 'middle' && positionAnchor !== undefined) {
725
+ printIonWarning('The positionAnchor property is ignored when using position="middle".', this.el);
726
+ return undefined;
727
+ }
728
+ if (typeof positionAnchor === 'string') {
729
+ /**
730
+ * If the anchor is defined as an ID, find the element.
731
+ * We do this on every present so the toast doesn't need
732
+ * to account for the surrounding DOM changing since the
733
+ * last time it was presented.
734
+ */
735
+ const foundEl = document.getElementById(positionAnchor);
736
+ if (foundEl === null) {
737
+ printIonWarning(`An anchor element with an ID of "${positionAnchor}" was not found in the DOM.`, el);
738
+ return undefined;
739
+ }
740
+ return foundEl;
741
+ }
742
+ if (positionAnchor instanceof HTMLElement) {
743
+ return positionAnchor;
744
+ }
745
+ printIonWarning('Invalid positionAnchor value:', positionAnchor, el);
386
746
  return undefined;
387
- }
388
- return foundEl;
389
- }
390
- if (positionAnchor instanceof HTMLElement) {
391
- return positionAnchor;
392
747
  }
393
- printIonWarning('Invalid positionAnchor value:', positionAnchor, el);
394
- return undefined;
395
- }
396
- async buttonClick(button) {
397
- const role = button.role;
398
- if (isCancel(role)) {
399
- return this.dismiss(undefined, role);
400
- }
401
- const shouldDismiss = await this.callButtonHandler(button);
402
- if (shouldDismiss) {
403
- return this.dismiss(undefined, role);
748
+ async buttonClick(button) {
749
+ const role = button.role;
750
+ if (isCancel(role)) {
751
+ return this.dismiss(undefined, role);
752
+ }
753
+ const shouldDismiss = await this.callButtonHandler(button);
754
+ if (shouldDismiss) {
755
+ return this.dismiss(undefined, role);
756
+ }
757
+ return Promise.resolve();
404
758
  }
405
- return Promise.resolve();
406
- }
407
- async callButtonHandler(button) {
408
- if (button === null || button === void 0 ? void 0 : button.handler) {
409
- // a handler has been provided, execute it
410
- // pass the handler the values from the inputs
411
- try {
412
- const rtn = await safeCall(button.handler);
413
- if (rtn === false) {
414
- // if the return value of the handler is false then do not dismiss
415
- return false;
759
+ async callButtonHandler(button) {
760
+ if (button === null || button === void 0 ? void 0 : button.handler) {
761
+ // a handler has been provided, execute it
762
+ // pass the handler the values from the inputs
763
+ try {
764
+ const rtn = await safeCall(button.handler);
765
+ if (rtn === false) {
766
+ // if the return value of the handler is false then do not dismiss
767
+ return false;
768
+ }
769
+ }
770
+ catch (e) {
771
+ console.error(e);
772
+ }
416
773
  }
417
- }
418
- catch (e) {
419
- console.error(e);
420
- }
774
+ return true;
421
775
  }
422
- return true;
423
- }
424
- renderButtons(buttons, side) {
425
- if (buttons.length === 0) {
426
- return;
776
+ renderButtons(buttons, side) {
777
+ if (buttons.length === 0) {
778
+ return;
779
+ }
780
+ const mode = getIonMode(this);
781
+ const buttonGroupsClasses = {
782
+ 'toast-button-group': true,
783
+ [`toast-button-group-${side}`]: true,
784
+ };
785
+ return (h("div", { class: buttonGroupsClasses }, buttons.map((b) => (h("button", Object.assign({}, b.htmlAttributes, { type: "button", class: buttonClass(b), tabIndex: 0, onClick: () => this.buttonClick(b), part: buttonPart(b) }), h("div", { class: "toast-button-inner" }, b.icon && (h("ion-icon", { "aria-hidden": "true", icon: b.icon, slot: b.text === undefined ? 'icon-only' : undefined, class: "toast-button-icon" })), b.text), mode === 'md' && (h("ion-ripple-effect", { type: b.icon !== undefined && b.text === undefined ? 'unbounded' : 'bounded' })))))));
427
786
  }
428
- const mode = getIonMode(this);
429
- const buttonGroupsClasses = {
430
- 'toast-button-group': true,
431
- [`toast-button-group-${side}`]: true,
432
- };
433
- return (h("div", { class: buttonGroupsClasses }, buttons.map((b) => (h("button", Object.assign({}, b.htmlAttributes, { type: "button", class: buttonClass(b), tabIndex: 0, onClick: () => this.buttonClick(b), part: buttonPart(b) }), h("div", { class: "toast-button-inner" }, b.icon && (h("ion-icon", { "aria-hidden": "true", icon: b.icon, slot: b.text === undefined ? 'icon-only' : undefined, class: "toast-button-icon" })), b.text), mode === 'md' && (h("ion-ripple-effect", { type: b.icon !== undefined && b.text === undefined ? 'unbounded' : 'bounded' })))))));
434
- }
435
- /**
436
- * Render the `message` property.
437
- * @param key - A key to give the element a stable identity. This is used to improve compatibility with screen readers.
438
- * @param ariaHidden - If "true" then content will be hidden from screen readers.
439
- */
440
- renderToastMessage(key, ariaHidden = null) {
441
- const { customHTMLEnabled, message } = this;
442
- if (customHTMLEnabled) {
443
- return (h("div", { key: key, "aria-hidden": ariaHidden, class: "toast-message", part: "message", innerHTML: sanitizeDOMString(message) }));
787
+ /**
788
+ * Render the `message` property.
789
+ * @param key - A key to give the element a stable identity. This is used to improve compatibility with screen readers.
790
+ * @param ariaHidden - If "true" then content will be hidden from screen readers.
791
+ */
792
+ renderToastMessage(key, ariaHidden = null) {
793
+ const { customHTMLEnabled, message } = this;
794
+ if (customHTMLEnabled) {
795
+ return (h("div", { key: key, "aria-hidden": ariaHidden, class: "toast-message", part: "message", innerHTML: sanitizeDOMString(message) }));
796
+ }
797
+ return (h("div", { key: key, "aria-hidden": ariaHidden, class: "toast-message", part: "message" }, message));
444
798
  }
445
- return (h("div", { key: key, "aria-hidden": ariaHidden, class: "toast-message", part: "message" }, message));
446
- }
447
- /**
448
- * Render the `header` property.
449
- * @param key - A key to give the element a stable identity. This is used to improve compatibility with screen readers.
450
- * @param ariaHidden - If "true" then content will be hidden from screen readers.
451
- */
452
- renderHeader(key, ariaHidden = null) {
453
- return (h("div", { key: key, class: "toast-header", "aria-hidden": ariaHidden, part: "header" }, this.header));
454
- }
455
- render() {
456
- const { layout, el, revealContentToScreenReader, header, message } = this;
457
- const allButtons = this.getButtons();
458
- const startButtons = allButtons.filter((b) => b.side === 'start');
459
- const endButtons = allButtons.filter((b) => b.side !== 'start');
460
- const mode = getIonMode(this);
461
- const wrapperClass = {
462
- 'toast-wrapper': true,
463
- [`toast-${this.position}`]: true,
464
- [`toast-layout-${layout}`]: true,
465
- };
466
799
  /**
467
- * Stacked buttons are only meant to be
468
- * used with one type of button.
800
+ * Render the `header` property.
801
+ * @param key - A key to give the element a stable identity. This is used to improve compatibility with screen readers.
802
+ * @param ariaHidden - If "true" then content will be hidden from screen readers.
469
803
  */
470
- if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
471
- printIonWarning('This toast is using start and end buttons with the stacked toast layout. We recommend following the best practice of using either start or end buttons with the stacked toast layout.', el);
804
+ renderHeader(key, ariaHidden = null) {
805
+ return (h("div", { key: key, class: "toast-header", "aria-hidden": ariaHidden, part: "header" }, this.header));
472
806
  }
473
- return (h(Host, Object.assign({ tabindex: "-1" }, this.htmlAttributes, { style: {
474
- zIndex: `${60000 + this.overlayIndex}`,
475
- }, class: createColorClasses(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), h("div", { class: wrapperClass }, h("div", { class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (h("ion-icon", { class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), h("div", { class: "toast-content", role: "status", "aria-atomic": "true", "aria-live": "polite" }, !revealContentToScreenReader && header !== undefined && this.renderHeader('oldHeader', 'true'), !revealContentToScreenReader && message !== undefined && this.renderToastMessage('oldMessage', 'true'), revealContentToScreenReader && header !== undefined && this.renderHeader('header'), revealContentToScreenReader && message !== undefined && this.renderToastMessage('header')), this.renderButtons(endButtons, 'end')))));
476
- }
477
- get el() { return this; }
478
- static get watchers() { return {
479
- "isOpen": ["onIsOpenChange"],
480
- "trigger": ["triggerChanged"]
481
- }; }
482
- static get style() { return {
483
- ios: toastIosCss,
484
- md: toastMdCss
485
- }; }
807
+ render() {
808
+ const { layout, el, revealContentToScreenReader, header, message } = this;
809
+ const allButtons = this.getButtons();
810
+ const startButtons = allButtons.filter((b) => b.side === 'start');
811
+ const endButtons = allButtons.filter((b) => b.side !== 'start');
812
+ const mode = getIonMode(this);
813
+ const wrapperClass = {
814
+ 'toast-wrapper': true,
815
+ [`toast-${this.position}`]: true,
816
+ [`toast-layout-${layout}`]: true,
817
+ };
818
+ /**
819
+ * Stacked buttons are only meant to be
820
+ * used with one type of button.
821
+ */
822
+ if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
823
+ printIonWarning('This toast is using start and end buttons with the stacked toast layout. We recommend following the best practice of using either start or end buttons with the stacked toast layout.', el);
824
+ }
825
+ return (h(Host, Object.assign({ tabindex: "-1" }, this.htmlAttributes, { style: {
826
+ zIndex: `${60000 + this.overlayIndex}`,
827
+ }, class: createColorClasses(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), h("div", { class: wrapperClass }, h("div", { class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (h("ion-icon", { class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), h("div", { class: "toast-content", role: "status", "aria-atomic": "true", "aria-live": "polite" }, !revealContentToScreenReader && header !== undefined && this.renderHeader('oldHeader', 'true'), !revealContentToScreenReader && message !== undefined && this.renderToastMessage('oldMessage', 'true'), revealContentToScreenReader && header !== undefined && this.renderHeader('header'), revealContentToScreenReader && message !== undefined && this.renderToastMessage('header')), this.renderButtons(endButtons, 'end')))));
828
+ }
829
+ get el() { return this; }
830
+ static get watchers() { return {
831
+ "swipeGesture": ["swipeGestureChanged"],
832
+ "isOpen": ["onIsOpenChange"],
833
+ "trigger": ["triggerChanged"]
834
+ }; }
835
+ static get style() { return {
836
+ ios: toastIosCss,
837
+ md: toastMdCss
838
+ }; }
486
839
  }, [33, "ion-toast", {
487
- "overlayIndex": [2, "overlay-index"],
488
- "delegate": [16],
489
- "hasController": [4, "has-controller"],
490
- "color": [513],
491
- "enterAnimation": [16],
492
- "leaveAnimation": [16],
493
- "cssClass": [1, "css-class"],
494
- "duration": [2],
495
- "header": [1],
496
- "layout": [1],
497
- "message": [1],
498
- "keyboardClose": [4, "keyboard-close"],
499
- "position": [1],
500
- "positionAnchor": [1, "position-anchor"],
501
- "buttons": [16],
502
- "translucent": [4],
503
- "animated": [4],
504
- "icon": [1],
505
- "htmlAttributes": [16],
506
- "isOpen": [4, "is-open"],
507
- "trigger": [1],
508
- "revealContentToScreenReader": [32],
509
- "present": [64],
510
- "dismiss": [64],
511
- "onDidDismiss": [64],
512
- "onWillDismiss": [64]
513
- }, undefined, {
514
- "isOpen": ["onIsOpenChange"],
515
- "trigger": ["triggerChanged"]
516
- }]);
840
+ "overlayIndex": [2, "overlay-index"],
841
+ "delegate": [16],
842
+ "hasController": [4, "has-controller"],
843
+ "color": [513],
844
+ "enterAnimation": [16],
845
+ "leaveAnimation": [16],
846
+ "cssClass": [1, "css-class"],
847
+ "duration": [2],
848
+ "header": [1],
849
+ "layout": [1],
850
+ "message": [1],
851
+ "keyboardClose": [4, "keyboard-close"],
852
+ "position": [1],
853
+ "positionAnchor": [1, "position-anchor"],
854
+ "buttons": [16],
855
+ "translucent": [4],
856
+ "animated": [4],
857
+ "icon": [1],
858
+ "htmlAttributes": [16],
859
+ "swipeGesture": [1, "swipe-gesture"],
860
+ "isOpen": [4, "is-open"],
861
+ "trigger": [1],
862
+ "revealContentToScreenReader": [32],
863
+ "present": [64],
864
+ "dismiss": [64],
865
+ "onDidDismiss": [64],
866
+ "onWillDismiss": [64]
867
+ }, undefined, {
868
+ "swipeGesture": ["swipeGestureChanged"],
869
+ "isOpen": ["onIsOpenChange"],
870
+ "trigger": ["triggerChanged"]
871
+ }]);
517
872
  const buttonClass = (button) => {
518
- return Object.assign({ 'toast-button': true, 'toast-button-icon-only': button.icon !== undefined && button.text === undefined, [`toast-button-${button.role}`]: button.role !== undefined, 'ion-focusable': true, 'ion-activatable': true }, getClassMap(button.cssClass));
873
+ return Object.assign({ 'toast-button': true, 'toast-button-icon-only': button.icon !== undefined && button.text === undefined, [`toast-button-${button.role}`]: button.role !== undefined, 'ion-focusable': true, 'ion-activatable': true }, getClassMap(button.cssClass));
519
874
  };
520
875
  const buttonPart = (button) => {
521
- return isCancel(button.role) ? 'button cancel' : 'button';
876
+ return isCancel(button.role) ? 'button cancel' : 'button';
522
877
  };
523
878
  function defineCustomElement$1() {
524
- if (typeof customElements === "undefined") {
525
- return;
526
- }
527
- const components = ["ion-toast", "ion-icon", "ion-ripple-effect"];
528
- components.forEach(tagName => { switch (tagName) {
529
- case "ion-toast":
530
- if (!customElements.get(tagName)) {
531
- customElements.define(tagName, Toast);
532
- }
533
- break;
534
- case "ion-icon":
535
- if (!customElements.get(tagName)) {
536
- defineCustomElement$3();
537
- }
538
- break;
539
- case "ion-ripple-effect":
540
- if (!customElements.get(tagName)) {
541
- defineCustomElement$2();
542
- }
543
- break;
544
- } });
879
+ if (typeof customElements === "undefined") {
880
+ return;
881
+ }
882
+ const components = ["ion-toast", "ion-icon", "ion-ripple-effect"];
883
+ components.forEach(tagName => { switch (tagName) {
884
+ case "ion-toast":
885
+ if (!customElements.get(tagName)) {
886
+ customElements.define(tagName, Toast);
887
+ }
888
+ break;
889
+ case "ion-icon":
890
+ if (!customElements.get(tagName)) {
891
+ defineCustomElement$3();
892
+ }
893
+ break;
894
+ case "ion-ripple-effect":
895
+ if (!customElements.get(tagName)) {
896
+ defineCustomElement$2();
897
+ }
898
+ break;
899
+ } });
545
900
  }
546
901
 
547
902
  const IonToast = Toast;