voyager-ionic-core 7.5.1 → 7.6.0

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 (1918) hide show
  1. package/components/action-sheet.js +299 -289
  2. package/components/alert.js +477 -467
  3. package/components/animation.js +992 -976
  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 +1055 -1055
  13. package/components/dir.js +5 -5
  14. package/components/focus-visible.js +63 -63
  15. package/components/form-controller.js +45 -49
  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 -59
  29. package/components/index9.js +171 -171
  30. package/components/input-shims.js +488 -475
  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 +223 -213
  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 +1722 -1684
  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 +45 -45
  78. package/components/ion-fab.d.ts +2 -2
  79. package/components/ion-fab.js +76 -76
  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 +299 -299
  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 +482 -450
  94. package/components/ion-item-divider.d.ts +2 -2
  95. package/components/ion-item-divider.js +36 -36
  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 +69 -69
  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 -619
  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 -740
  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 +41 -41
  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 +406 -397
  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 -401
  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 +145 -145
  172. package/components/ion-tab-bar.d.ts +2 -2
  173. package/components/ion-tab-bar.js +79 -79
  174. package/components/ion-tab-button.d.ts +2 -2
  175. package/components/ion-tab-button.js +106 -106
  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 +424 -392
  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 +57 -57
  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 +35 -35
  202. package/components/list.js +52 -52
  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 +470 -470
  212. package/components/popover.js +1156 -1146
  213. package/components/radio-group.js +162 -151
  214. package/components/radio.js +248 -209
  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 +37 -26
  222. package/css/core.css +66 -0
  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.map +1 -1
  233. package/css/padding.css +44 -0
  234. package/css/padding.css.map +1 -1
  235. package/css/structure.css +44 -0
  236. package/css/structure.css.map +1 -1
  237. package/css/text-alignment.css +44 -0
  238. package/css/text-alignment.css.map +1 -1
  239. package/css/text-transformation.css +44 -0
  240. package/css/text-transformation.css.map +1 -1
  241. package/css/typography.css +44 -0
  242. package/css/typography.css.map +1 -1
  243. package/css/utils.bundle.css +220 -0
  244. package/css/utils.bundle.css.map +1 -1
  245. package/dist/cjs/animation-9b401d39.js +1062 -0
  246. package/dist/cjs/{app-globals-fe1ad535.js → app-globals-0af482c7.js} +1 -1
  247. package/dist/cjs/button-active-a5185907.js +69 -0
  248. package/dist/cjs/{capacitor-2ffba62a.js → capacitor-c04564bf.js} +5 -5
  249. package/dist/cjs/compare-with-utils-df1001d7.js +44 -0
  250. package/dist/cjs/config-4f60b98a.js +199 -0
  251. package/dist/cjs/cubic-bezier-f2dccc53.js +92 -0
  252. package/dist/cjs/data-36b9094e.js +1622 -0
  253. package/dist/cjs/{dir-f1e0ca26.js → dir-94c21456.js} +5 -5
  254. package/dist/cjs/focus-visible-7a0ce04f.js +77 -0
  255. package/dist/cjs/form-controller-7d42a722.js +66 -0
  256. package/dist/cjs/framework-delegate-1c29b14a.js +144 -0
  257. package/dist/cjs/gesture-controller-c40c045a.js +197 -0
  258. package/dist/cjs/haptic-b882e0bb.js +212 -0
  259. package/dist/cjs/hardware-back-button-76833cac.js +76 -0
  260. package/dist/cjs/helpers-76bb7efb.js +441 -0
  261. package/dist/cjs/{index-cc7dfb7c.js → index-5915f9b3.js} +3 -3
  262. package/dist/cjs/index-b4f986cd.js +198 -0
  263. package/dist/cjs/{index-305a23dc.js → index-bbb4336c.js} +184 -63
  264. package/dist/cjs/index-c8d52405.js +10 -0
  265. package/dist/cjs/index-ce101dc9.js +308 -0
  266. package/dist/cjs/index-d1b59ffa.js +459 -0
  267. package/dist/cjs/{index-10873539.js → index-da15e99c.js} +60 -61
  268. package/dist/cjs/index-f8f13389.js +243 -0
  269. package/dist/cjs/index.cjs.js +113 -113
  270. package/dist/cjs/input-shims-a23bb0f4.js +601 -0
  271. package/dist/cjs/input.utils-3d0166a2.js +138 -0
  272. package/dist/cjs/ion-accordion_2.cjs.entry.js +491 -481
  273. package/dist/cjs/ion-action-sheet.cjs.entry.js +262 -252
  274. package/dist/cjs/ion-alert.cjs.entry.js +442 -432
  275. package/dist/cjs/ion-app_8.cjs.entry.js +1153 -1153
  276. package/dist/cjs/ion-avatar_3.cjs.entry.js +29 -29
  277. package/dist/cjs/ion-back-button.cjs.entry.js +73 -73
  278. package/dist/cjs/ion-backdrop.cjs.entry.js +40 -40
  279. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +194 -194
  280. package/dist/cjs/ion-button_2.cjs.entry.js +303 -303
  281. package/dist/cjs/ion-card_5.cjs.entry.js +105 -105
  282. package/dist/cjs/ion-checkbox.cjs.entry.js +149 -147
  283. package/dist/cjs/ion-chip.cjs.entry.js +20 -20
  284. package/dist/cjs/ion-col_3.cjs.entry.js +136 -136
  285. package/dist/cjs/ion-datetime-button.cjs.entry.js +325 -325
  286. package/dist/cjs/ion-datetime_3.cjs.entry.js +2185 -2137
  287. package/dist/cjs/ion-fab_3.cjs.entry.js +152 -152
  288. package/dist/cjs/ion-img.cjs.entry.js +79 -79
  289. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +198 -190
  290. package/dist/cjs/ion-input.cjs.entry.js +426 -394
  291. package/dist/cjs/ion-item-option_3.cjs.entry.js +459 -459
  292. package/dist/cjs/ion-item_8.cjs.entry.js +447 -434
  293. package/dist/cjs/ion-loading.cjs.entry.js +220 -210
  294. package/dist/cjs/ion-menu_3.cjs.entry.js +670 -658
  295. package/dist/cjs/ion-modal.cjs.entry.js +1415 -1405
  296. package/dist/cjs/ion-nav_2.cjs.entry.js +904 -904
  297. package/dist/cjs/ion-picker-column-internal.cjs.entry.js +331 -327
  298. package/dist/cjs/ion-picker-internal.cjs.entry.js +455 -455
  299. package/dist/cjs/ion-popover.cjs.entry.js +1110 -1100
  300. package/dist/cjs/ion-progress-bar.cjs.entry.js +40 -40
  301. package/dist/cjs/ion-radio_2.cjs.entry.js +322 -309
  302. package/dist/cjs/ion-range.cjs.entry.js +558 -556
  303. package/dist/cjs/ion-refresher_2.cjs.entry.js +786 -779
  304. package/dist/cjs/ion-reorder_2.cjs.entry.js +269 -269
  305. package/dist/cjs/ion-ripple-effect.cjs.entry.js +66 -66
  306. package/dist/cjs/ion-route_4.cjs.entry.js +693 -693
  307. package/dist/cjs/ion-searchbar.cjs.entry.js +363 -354
  308. package/dist/cjs/ion-segment_2.cjs.entry.js +509 -483
  309. package/dist/cjs/ion-select_3.cjs.entry.js +784 -768
  310. package/dist/cjs/ion-spinner.cjs.entry.js +46 -46
  311. package/dist/cjs/ion-split-pane.cjs.entry.js +117 -117
  312. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +142 -142
  313. package/dist/cjs/ion-tab_2.cjs.entry.js +187 -187
  314. package/dist/cjs/ion-text.cjs.entry.js +13 -13
  315. package/dist/cjs/ion-textarea.cjs.entry.js +381 -349
  316. package/dist/cjs/ion-toast.cjs.entry.js +771 -419
  317. package/dist/cjs/ion-toggle.cjs.entry.js +227 -225
  318. package/dist/cjs/ionic-global-f4a2093b.js +230 -0
  319. package/dist/cjs/ionic.cjs.js +5 -5
  320. package/dist/cjs/ios.transition-6787b799.js +654 -0
  321. package/dist/cjs/keyboard-0272231f.js +81 -0
  322. package/dist/cjs/{keyboard-38f2bb7b.js → keyboard-af1bb365.js} +62 -62
  323. package/dist/cjs/keyboard-controller-c05e747a.js +167 -0
  324. package/dist/cjs/loader.cjs.js +4 -4
  325. package/dist/cjs/lock-controller-6585a42a.js +40 -0
  326. package/dist/cjs/md.transition-e033d20a.js +59 -0
  327. package/dist/cjs/notch-controller-9735e7ac.js +155 -0
  328. package/dist/cjs/overlays-27a6fb16.js +716 -0
  329. package/dist/cjs/spinner-configs-282fd50a.js +147 -0
  330. package/dist/cjs/status-tap-415acac6.js +42 -0
  331. package/dist/cjs/swipe-back-e37a1a5c.js +81 -0
  332. package/dist/cjs/theme-d1c573d2.js +48 -0
  333. package/dist/cjs/watch-options-f5f3e158.js +49 -0
  334. package/dist/collection/collection-manifest.json +7 -7
  335. package/dist/collection/components/accordion/accordion.ios.css +44 -0
  336. package/dist/collection/components/accordion/accordion.js +410 -410
  337. package/dist/collection/components/accordion/accordion.md.css +22 -0
  338. package/dist/collection/components/accordion/test/a11y/accordion.e2e.js +31 -31
  339. package/dist/collection/components/accordion/test/accordion.e2e.js +24 -24
  340. package/dist/collection/components/accordion/test/accordion.spec.js +195 -0
  341. package/dist/collection/components/accordion/test/basic/accordion.e2e.js +26 -26
  342. package/dist/collection/components/accordion/test/multiple/accordion.e2e.js +18 -18
  343. package/dist/collection/components/accordion/test/nested/accordion.e2e.js +16 -16
  344. package/dist/collection/components/accordion/test/standalone/accordion.e2e.js +6 -6
  345. package/dist/collection/components/accordion-group/accordion-group.ios.css +44 -0
  346. package/dist/collection/components/accordion-group/accordion-group.js +422 -412
  347. package/dist/collection/components/accordion-group/accordion-group.md.css +68 -2
  348. package/dist/collection/components/action-sheet/action-sheet.ios.css +62 -5
  349. package/dist/collection/components/action-sheet/action-sheet.js +739 -729
  350. package/dist/collection/components/action-sheet/action-sheet.md.css +62 -5
  351. package/dist/collection/components/action-sheet/animations/ios.enter.js +18 -18
  352. package/dist/collection/components/action-sheet/animations/ios.leave.js +12 -12
  353. package/dist/collection/components/action-sheet/animations/md.enter.js +18 -18
  354. package/dist/collection/components/action-sheet/animations/md.leave.js +12 -12
  355. package/dist/collection/components/action-sheet/test/a11y/action-sheet.e2e.js +59 -59
  356. package/dist/collection/components/action-sheet/test/action-sheet-id.spec.js +32 -0
  357. package/dist/collection/components/action-sheet/test/basic/action-sheet-rendering.e2e.js +33 -33
  358. package/dist/collection/components/action-sheet/test/basic/action-sheet.e2e.js +118 -59
  359. package/dist/collection/components/action-sheet/test/basic/action-sheet.spec.js +18 -0
  360. package/dist/collection/components/action-sheet/test/basic/fixture.js +23 -23
  361. package/dist/collection/components/action-sheet/test/is-open/action-sheet.e2e.js +25 -25
  362. package/dist/collection/components/action-sheet/test/translucent/action-sheet.e2e.js +10 -10
  363. package/dist/collection/components/action-sheet/test/trigger/action-sheet.e2e.js +21 -21
  364. package/dist/collection/components/alert/alert.ios.css +122 -5
  365. package/dist/collection/components/alert/alert.js +977 -967
  366. package/dist/collection/components/alert/alert.md.css +152 -7
  367. package/dist/collection/components/alert/animations/ios.enter.js +19 -19
  368. package/dist/collection/components/alert/animations/ios.leave.js +13 -13
  369. package/dist/collection/components/alert/animations/md.enter.js +19 -19
  370. package/dist/collection/components/alert/animations/md.leave.js +10 -10
  371. package/dist/collection/components/alert/test/a11y/alert.e2e.js +139 -91
  372. package/dist/collection/components/alert/test/alert-id.spec.js +32 -0
  373. package/dist/collection/components/alert/test/alert.spec.js +37 -0
  374. package/dist/collection/components/alert/test/basic/alert-tablet.e2e.js +40 -0
  375. package/dist/collection/components/alert/test/basic/alert.e2e.js +96 -96
  376. package/dist/collection/components/alert/test/is-open/alert.e2e.js +25 -25
  377. package/dist/collection/components/alert/test/standalone/alert.e2e.js +9 -9
  378. package/dist/collection/components/alert/test/trigger/alert.e2e.js +21 -21
  379. package/dist/collection/components/app/app.js +116 -116
  380. package/dist/collection/components/app/test/safe-area/app.e2e.js +24 -24
  381. package/dist/collection/components/avatar/avatar.ios.css +44 -0
  382. package/dist/collection/components/avatar/avatar.js +17 -17
  383. package/dist/collection/components/avatar/avatar.md.css +44 -0
  384. package/dist/collection/components/avatar/test/basic/avatar.e2e.js +12 -12
  385. package/dist/collection/components/back-button/back-button.ios.css +44 -0
  386. package/dist/collection/components/back-button/back-button.js +214 -214
  387. package/dist/collection/components/back-button/back-button.md.css +44 -0
  388. package/dist/collection/components/back-button/test/a11y/back-button.e2e.js +6 -6
  389. package/dist/collection/components/back-button/test/back-button.spec.js +86 -0
  390. package/dist/collection/components/back-button/test/basic/back-button.e2e.js +6 -6
  391. package/dist/collection/components/back-button/test/toolbar/back-button.e2e.js +6 -6
  392. package/dist/collection/components/backdrop/backdrop.ios.css +44 -0
  393. package/dist/collection/components/backdrop/backdrop.js +131 -131
  394. package/dist/collection/components/backdrop/backdrop.md.css +44 -0
  395. package/dist/collection/components/badge/badge.ios.css +44 -0
  396. package/dist/collection/components/badge/badge.js +49 -49
  397. package/dist/collection/components/badge/badge.md.css +44 -0
  398. package/dist/collection/components/badge/test/a11y/badge.e2e.js +6 -6
  399. package/dist/collection/components/badge/test/basic/badge.e2e.js +6 -6
  400. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +44 -0
  401. package/dist/collection/components/breadcrumb/breadcrumb.js +395 -395
  402. package/dist/collection/components/breadcrumb/breadcrumb.md.css +44 -0
  403. package/dist/collection/components/breadcrumb/test/aria.spec.js +22 -0
  404. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +22 -0
  405. package/dist/collection/components/breadcrumbs/breadcrumbs.js +247 -247
  406. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +22 -0
  407. package/dist/collection/components/breadcrumbs/test/a11y/breadcrumbs.e2e.js +12 -12
  408. package/dist/collection/components/breadcrumbs/test/basic/breadcrumbs.e2e.js +6 -6
  409. package/dist/collection/components/breadcrumbs/test/breadcrumbs.spec.js +58 -0
  410. package/dist/collection/components/breadcrumbs/test/collapsed/breadcrumbs.e2e.js +6 -6
  411. package/dist/collection/components/breadcrumbs/test/reactive/breadcrumbs.e2e.js +43 -43
  412. package/dist/collection/components/button/button.ios.css +66 -0
  413. package/dist/collection/components/button/button.js +541 -541
  414. package/dist/collection/components/button/button.md.css +44 -0
  415. package/dist/collection/components/button/test/a11y/button.e2e.js +21 -21
  416. package/dist/collection/components/button/test/basic/button.e2e.js +32 -32
  417. package/dist/collection/components/button/test/clear/button.e2e.js +6 -6
  418. package/dist/collection/components/button/test/expand/button.e2e.js +6 -6
  419. package/dist/collection/components/button/test/form-reference/button.e2e.js +84 -84
  420. package/dist/collection/components/button/test/form-reference/button.spec.js +26 -0
  421. package/dist/collection/components/button/test/icon/button.e2e.js +6 -6
  422. package/dist/collection/components/button/test/outline/button.e2e.js +6 -6
  423. package/dist/collection/components/button/test/round/button.e2e.js +6 -6
  424. package/dist/collection/components/button/test/size/button.e2e.js +22 -22
  425. package/dist/collection/components/button/test/strong/button.e2e.js +22 -22
  426. package/dist/collection/components/button/test/wrap/button.e2e.js +73 -73
  427. package/dist/collection/components/buttons/buttons.ios.css +66 -0
  428. package/dist/collection/components/buttons/buttons.js +46 -46
  429. package/dist/collection/components/buttons/buttons.md.css +66 -0
  430. package/dist/collection/components/buttons/test/a11y/buttons.e2e.js +21 -21
  431. package/dist/collection/components/card/card.ios.css +44 -0
  432. package/dist/collection/components/card/card.js +251 -251
  433. package/dist/collection/components/card/card.md.css +44 -0
  434. package/dist/collection/components/card/test/a11y/card.e2e.js +6 -6
  435. package/dist/collection/components/card/test/aria.spec.js +16 -0
  436. package/dist/collection/components/card/test/basic/card.e2e.js +38 -38
  437. package/dist/collection/components/card-content/card-content.ios.css +44 -0
  438. package/dist/collection/components/card-content/card-content.js +21 -21
  439. package/dist/collection/components/card-content/card-content.md.css +44 -0
  440. package/dist/collection/components/card-header/card-header.ios.css +44 -0
  441. package/dist/collection/components/card-header/card-header.js +70 -70
  442. package/dist/collection/components/card-header/card-header.md.css +44 -0
  443. package/dist/collection/components/card-header/test/basic/card-header.e2e.js +6 -6
  444. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +44 -0
  445. package/dist/collection/components/card-subtitle/card-subtitle.js +50 -50
  446. package/dist/collection/components/card-subtitle/card-subtitle.md.css +44 -0
  447. package/dist/collection/components/card-title/card-title.ios.css +44 -0
  448. package/dist/collection/components/card-title/card-title.js +50 -50
  449. package/dist/collection/components/card-title/card-title.md.css +44 -0
  450. package/dist/collection/components/checkbox/checkbox.ios.css +69 -9
  451. package/dist/collection/components/checkbox/checkbox.js +418 -415
  452. package/dist/collection/components/checkbox/checkbox.md.css +69 -9
  453. package/dist/collection/components/checkbox/test/a11y/checkbox.e2e.js +14 -14
  454. package/dist/collection/components/checkbox/test/basic/checkbox.e2e.js +50 -50
  455. package/dist/collection/components/checkbox/test/checkbox.spec.js +34 -0
  456. package/dist/collection/components/checkbox/test/color/checkbox.e2e.js +11 -11
  457. package/dist/collection/components/checkbox/test/indeterminate/checkbox.e2e.js +6 -6
  458. package/dist/collection/components/checkbox/test/item/checkbox.e2e.js +29 -29
  459. package/dist/collection/components/checkbox/test/label/checkbox.e2e.js +75 -75
  460. package/dist/collection/components/checkbox/test/legacy/basic/checkbox.e2e.js +45 -45
  461. package/dist/collection/components/checkbox/test/legacy/indeterminate/checkbox.e2e.js +6 -6
  462. package/dist/collection/components/checkbox/test/states/checkbox.e2e.js +21 -21
  463. package/dist/collection/components/chip/chip.ios.css +22 -0
  464. package/dist/collection/components/chip/chip.js +90 -90
  465. package/dist/collection/components/chip/chip.md.css +22 -0
  466. package/dist/collection/components/chip/test/a11y/chip.e2e.js +19 -19
  467. package/dist/collection/components/chip/test/basic/chip.e2e.js +42 -42
  468. package/dist/collection/components/chip/test/states/chip.e2e.js +14 -14
  469. package/dist/collection/components/col/col.css +66 -0
  470. package/dist/collection/components/col/col.js +536 -536
  471. package/dist/collection/components/content/content.css +22 -0
  472. package/dist/collection/components/content/content.js +745 -745
  473. package/dist/collection/components/content/test/basic/content.e2e.js +6 -6
  474. package/dist/collection/components/content/test/fixed/content.e2e.js +6 -6
  475. package/dist/collection/components/content/test/fullscreen/content.e2e.js +6 -6
  476. package/dist/collection/components/content/test/standalone/content.e2e.js +5 -5
  477. package/dist/collection/components/datetime/datetime.ios.css +69 -4
  478. package/dist/collection/components/datetime/datetime.js +2246 -2208
  479. package/dist/collection/components/datetime/datetime.md.css +69 -8
  480. package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +73 -7
  481. package/dist/collection/components/datetime/test/a11y/datetime.spec.js +43 -0
  482. package/dist/collection/components/datetime/test/basic/datetime.e2e.js +241 -241
  483. package/dist/collection/components/datetime/test/color/datetime.e2e.js +9 -9
  484. package/dist/collection/components/datetime/test/comparison.spec.js +43 -0
  485. package/dist/collection/components/datetime/test/custom/datetime.e2e.js +37 -37
  486. package/dist/collection/components/datetime/test/data.spec.js +456 -0
  487. package/dist/collection/components/datetime/test/datetime.e2e.js +29 -29
  488. package/dist/collection/components/datetime/test/disable-dates/datetime.e2e.js +119 -119
  489. package/dist/collection/components/datetime/test/disabled/datetime.e2e.js +68 -0
  490. package/dist/collection/components/datetime/test/disabled/datetime.spec.js +33 -0
  491. package/dist/collection/components/datetime/test/display/datetime.e2e.js +86 -86
  492. package/dist/collection/components/datetime/test/first-day-of-week/datetime.e2e.js +6 -6
  493. package/dist/collection/components/datetime/test/format.spec.js +124 -0
  494. package/dist/collection/components/datetime/test/helpers.spec.js +72 -0
  495. package/dist/collection/components/datetime/test/highlighted-dates/datetime.e2e.js +76 -76
  496. package/dist/collection/components/datetime/test/hour-cycle/datetime.e2e.js +21 -21
  497. package/dist/collection/components/datetime/test/locale/datetime.e2e.js +98 -98
  498. package/dist/collection/components/datetime/test/manipulation.spec.js +433 -0
  499. package/dist/collection/components/datetime/test/minmax/datetime.e2e.js +178 -178
  500. package/dist/collection/components/datetime/test/month-year-picker/datetime.e2e.js +17 -17
  501. package/dist/collection/components/datetime/test/multiple/datetime.e2e.js +170 -170
  502. package/dist/collection/components/datetime/test/parse.spec.js +222 -0
  503. package/dist/collection/components/datetime/test/position/datetime.e2e.js +14 -14
  504. package/dist/collection/components/datetime/test/prefer-wheel/datetime.e2e.js +263 -263
  505. package/dist/collection/components/datetime/test/presentation/datetime.e2e.js +137 -137
  506. package/dist/collection/components/datetime/test/readonly/datetime.e2e.js +113 -0
  507. package/dist/collection/components/datetime/test/set-value/datetime.e2e.js +40 -40
  508. package/dist/collection/components/datetime/test/state.spec.js +114 -0
  509. package/dist/collection/components/datetime/test/time-label/datetime.e2e.js +13 -13
  510. package/dist/collection/components/datetime/test/values/datetime.e2e.js +77 -77
  511. package/dist/collection/components/datetime/utils/comparison.js +22 -22
  512. package/dist/collection/components/datetime/utils/data.js +394 -394
  513. package/dist/collection/components/datetime/utils/format.js +143 -143
  514. package/dist/collection/components/datetime/utils/helpers.js +74 -74
  515. package/dist/collection/components/datetime/utils/manipulation.js +274 -274
  516. package/dist/collection/components/datetime/utils/parse.js +139 -139
  517. package/dist/collection/components/datetime/utils/state.js +123 -123
  518. package/dist/collection/components/datetime-button/datetime-button.css +22 -0
  519. package/dist/collection/components/datetime-button/datetime-button.js +399 -399
  520. package/dist/collection/components/datetime-button/test/a11y/datetime-button.e2e.js +11 -11
  521. package/dist/collection/components/datetime-button/test/basic/datetime-button.e2e.js +123 -123
  522. package/dist/collection/components/datetime-button/test/disabled/datetime-button.e2e.js +13 -13
  523. package/dist/collection/components/datetime-button/test/multiple/datetime-button.e2e.js +38 -38
  524. package/dist/collection/components/datetime-button/test/overlays/datetime-button.e2e.js +102 -102
  525. package/dist/collection/components/fab/fab.css +112 -36
  526. package/dist/collection/components/fab/fab.js +179 -179
  527. package/dist/collection/components/fab/test/basic/fab.e2e.js +50 -50
  528. package/dist/collection/components/fab/test/custom-size/fab.e2e.js +6 -6
  529. package/dist/collection/components/fab/test/safe-area/fab.e2e.js +63 -0
  530. package/dist/collection/components/fab/test/states/fab.e2e.js +6 -6
  531. package/dist/collection/components/fab/test/translucent/fab.e2e.js +17 -17
  532. package/dist/collection/components/fab-button/fab-button.ios.css +44 -0
  533. package/dist/collection/components/fab-button/fab-button.js +374 -374
  534. package/dist/collection/components/fab-button/fab-button.md.css +44 -0
  535. package/dist/collection/components/fab-button/test/a11y/fab-button.e2e.js +6 -6
  536. package/dist/collection/components/fab-list/fab-list.css +46 -2
  537. package/dist/collection/components/fab-list/fab-list.js +79 -79
  538. package/dist/collection/components/footer/footer.ios.css +44 -0
  539. package/dist/collection/components/footer/footer.js +135 -135
  540. package/dist/collection/components/footer/footer.md.css +44 -0
  541. package/dist/collection/components/footer/footer.utils.js +25 -25
  542. package/dist/collection/components/footer/test/basic/footer.e2e.js +18 -18
  543. package/dist/collection/components/footer/test/fade/footer.e2e.js +10 -10
  544. package/dist/collection/components/footer/test/scroll-target/footer.e2e.js +15 -15
  545. package/dist/collection/components/footer/test/with-tabs/footer.e2e.js +6 -6
  546. package/dist/collection/components/grid/grid.css +66 -0
  547. package/dist/collection/components/grid/grid.js +44 -44
  548. package/dist/collection/components/grid/test/basic/grid.e2e.js +6 -6
  549. package/dist/collection/components/grid/test/offsets/grid.e2e.js +6 -6
  550. package/dist/collection/components/grid/test/padding/grid.e2e.js +6 -6
  551. package/dist/collection/components/grid/test/sizes/grid.e2e.js +6 -6
  552. package/dist/collection/components/header/header.ios.css +48 -1
  553. package/dist/collection/components/header/header.js +181 -181
  554. package/dist/collection/components/header/header.md.css +44 -0
  555. package/dist/collection/components/header/header.utils.js +148 -148
  556. package/dist/collection/components/header/test/a11y/header.e2e.js +18 -18
  557. package/dist/collection/components/header/test/basic/header.e2e.js +23 -23
  558. package/dist/collection/components/header/test/condense/header.e2e.js +25 -25
  559. package/dist/collection/components/header/test/fade/header.e2e.js +10 -10
  560. package/dist/collection/components/header/test/scroll-target/header.e2e.js +15 -15
  561. package/dist/collection/components/icon/test/basic/icon.e2e.js +6 -6
  562. package/dist/collection/components/icon/test/dir/icon.e2e.js +11 -11
  563. package/dist/collection/components/img/img.js +177 -177
  564. package/dist/collection/components/img/test/basic/img.e2e.js +62 -62
  565. package/dist/collection/components/img/test/draggable/img.e2e.js +10 -10
  566. package/dist/collection/components/infinite-scroll/infinite-scroll.js +279 -271
  567. package/dist/collection/components/infinite-scroll/test/basic/infinite-scroll.e2e.js +11 -11
  568. package/dist/collection/components/infinite-scroll/test/scroll-target/infinite-scroll.e2e.js +11 -11
  569. package/dist/collection/components/infinite-scroll/test/small-dom-update/infinite-scroll.e2e.js +31 -0
  570. package/dist/collection/components/infinite-scroll/test/top/infinite-scroll.e2e.js +11 -11
  571. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +44 -0
  572. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +86 -86
  573. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +44 -0
  574. package/dist/collection/components/infinite-scroll-content/test/infinite-scroll-content.spec.js +37 -0
  575. package/dist/collection/components/input/input.ios.css +91 -18
  576. package/dist/collection/components/input/input.js +1234 -1200
  577. package/dist/collection/components/input/input.md.css +167 -22
  578. package/dist/collection/components/input/input.utils.js +22 -22
  579. package/dist/collection/components/input/test/a11y/input.e2e.js +12 -12
  580. package/dist/collection/components/input/test/basic/input.e2e.js +63 -63
  581. package/dist/collection/components/input/test/bottom-content/input.e2e.js +89 -89
  582. package/dist/collection/components/input/test/card/input.e2e.js +6 -6
  583. package/dist/collection/components/input/test/clear-on-edit/input.e2e.js +25 -25
  584. package/dist/collection/components/input/test/color/input.e2e.js +88 -88
  585. package/dist/collection/components/input/test/fill/input.e2e.js +63 -63
  586. package/dist/collection/components/input/test/highlight/input.e2e.js +52 -52
  587. package/dist/collection/components/input/test/input.e2e.js +6 -6
  588. package/dist/collection/components/input/test/input.spec.js +85 -0
  589. package/dist/collection/components/input/test/item/input.e2e.js +11 -11
  590. package/dist/collection/components/input/test/item/input.spec.js +24 -0
  591. package/dist/collection/components/input/test/label-placement/input.e2e.js +104 -104
  592. package/dist/collection/components/input/test/legacy/a11y/input.e2e.js +15 -15
  593. package/dist/collection/components/input/test/legacy/basic/input.e2e.js +102 -102
  594. package/dist/collection/components/input/test/legacy/clear-on-edit/input.e2e.js +44 -44
  595. package/dist/collection/components/input/test/legacy/input-events.e2e.js +56 -56
  596. package/dist/collection/components/input/test/legacy/masking/input.e2e.js +15 -15
  597. package/dist/collection/components/input/test/legacy/spec/input.e2e.js +8 -8
  598. package/dist/collection/components/input/test/slot/input.e2e.js +51 -0
  599. package/dist/collection/components/input/test/states/input.e2e.js +11 -11
  600. package/dist/collection/components/item/item.ios.css +145 -15
  601. package/dist/collection/components/item/item.js +614 -614
  602. package/dist/collection/components/item/item.md.css +192 -18
  603. package/dist/collection/components/item/test/a11y/item.e2e.js +47 -47
  604. package/dist/collection/components/item/test/a11y/item.spec.js +48 -0
  605. package/dist/collection/components/item/test/alignment/item.e2e.js +6 -6
  606. package/dist/collection/components/item/test/basic/item.e2e.js +32 -6
  607. package/dist/collection/components/item/test/buttons/item.e2e.js +18 -18
  608. package/dist/collection/components/item/test/colors/item.e2e.js +6 -6
  609. package/dist/collection/components/item/test/counter/item.e2e.js +34 -34
  610. package/dist/collection/components/item/test/css-variables/item.e2e.js +6 -6
  611. package/dist/collection/components/item/test/disabled/item.e2e.js +6 -7
  612. package/dist/collection/components/item/test/dividers/item.e2e.js +6 -6
  613. package/dist/collection/components/item/test/groups/item.e2e.js +8 -8
  614. package/dist/collection/components/item/test/highlight/item.e2e.js +6 -6
  615. package/dist/collection/components/item/test/icons/item.e2e.js +6 -6
  616. package/dist/collection/components/item/test/images/item.e2e.js +6 -6
  617. package/dist/collection/components/item/test/inputs/item.e2e.js +139 -139
  618. package/dist/collection/components/item/test/legacy/alignment/item.e2e.js +6 -6
  619. package/dist/collection/components/item/test/legacy/disabled/item.e2e.js +6 -6
  620. package/dist/collection/components/item/test/legacy/fill/item.e2e.js +6 -6
  621. package/dist/collection/components/item/test/legacy/form/item.e2e.js +6 -6
  622. package/dist/collection/components/item/test/lines/item.e2e.js +6 -6
  623. package/dist/collection/components/item/test/media/item.e2e.js +6 -6
  624. package/dist/collection/components/item/test/reorder/item.e2e.js +8 -8
  625. package/dist/collection/components/item/test/slotted-inputs/item.e2e.js +6 -6
  626. package/dist/collection/components/item/test/states/item.e2e.js +6 -6
  627. package/dist/collection/components/item-divider/item-divider.ios.css +101 -8
  628. package/dist/collection/components/item-divider/item-divider.js +71 -71
  629. package/dist/collection/components/item-divider/item-divider.md.css +101 -8
  630. package/dist/collection/components/item-divider/test/a11y/item-divider.e2e.js +11 -11
  631. package/dist/collection/components/item-divider/test/basic/item-divider.e2e.js +38 -16
  632. package/dist/collection/components/item-divider/test/spec/item-divider.e2e.js +8 -8
  633. package/dist/collection/components/item-group/item-group.ios.css +44 -0
  634. package/dist/collection/components/item-group/item-group.js +22 -22
  635. package/dist/collection/components/item-group/item-group.md.css +44 -0
  636. package/dist/collection/components/item-option/item-option.ios.css +44 -10
  637. package/dist/collection/components/item-option/item-option.js +197 -197
  638. package/dist/collection/components/item-option/item-option.md.css +44 -10
  639. package/dist/collection/components/item-options/item-options.ios.css +66 -0
  640. package/dist/collection/components/item-options/item-options.js +110 -110
  641. package/dist/collection/components/item-options/item-options.md.css +66 -0
  642. package/dist/collection/components/item-sliding/item-sliding.css +22 -0
  643. package/dist/collection/components/item-sliding/item-sliding.js +538 -538
  644. package/dist/collection/components/item-sliding/test/a11y/item-sliding.e2e.js +5 -5
  645. package/dist/collection/components/item-sliding/test/async/item-sliding.e2e.js +25 -25
  646. package/dist/collection/components/item-sliding/test/basic/item-sliding.e2e.js +140 -63
  647. package/dist/collection/components/item-sliding/test/icons/item-sliding.e2e.js +20 -20
  648. package/dist/collection/components/item-sliding/test/scroll-target/item-sliding.e2e.js +18 -18
  649. package/dist/collection/components/item-sliding/test/test.utils.js +20 -20
  650. package/dist/collection/components/label/label.ios.css +81 -4
  651. package/dist/collection/components/label/label.js +174 -174
  652. package/dist/collection/components/label/label.md.css +80 -3
  653. package/dist/collection/components/label/test/a11y/label.e2e.js +21 -21
  654. package/dist/collection/components/label/test/basic/label.e2e.js +21 -21
  655. package/dist/collection/components/label/test/color/label.e2e.js +21 -21
  656. package/dist/collection/components/label/test/headings/label.e2e.js +5 -5
  657. package/dist/collection/components/list/list.ios.css +81 -1
  658. package/dist/collection/components/list/list.js +101 -101
  659. package/dist/collection/components/list/list.md.css +107 -3
  660. package/dist/collection/components/list/test/a11y/list.e2e.js +6 -6
  661. package/dist/collection/components/list/test/basic/list.e2e.js +6 -6
  662. package/dist/collection/components/list/test/inset/list.e2e.js +16 -16
  663. package/dist/collection/components/list/test/lines/list.e2e.js +158 -15
  664. package/dist/collection/components/list-header/list-header.ios.css +81 -2
  665. package/dist/collection/components/list-header/list-header.js +69 -69
  666. package/dist/collection/components/list-header/list-header.md.css +81 -2
  667. package/dist/collection/components/list-header/test/a11y/list-header.e2e.js +6 -6
  668. package/dist/collection/components/list-header/test/basic/list-header.e2e.js +34 -6
  669. package/dist/collection/components/loading/animations/ios.enter.js +19 -19
  670. package/dist/collection/components/loading/animations/ios.leave.js +13 -13
  671. package/dist/collection/components/loading/animations/md.enter.js +19 -19
  672. package/dist/collection/components/loading/animations/md.leave.js +13 -13
  673. package/dist/collection/components/loading/loading.ios.css +44 -0
  674. package/dist/collection/components/loading/loading.js +730 -720
  675. package/dist/collection/components/loading/loading.md.css +44 -0
  676. package/dist/collection/components/loading/test/a11y/loading.e2e.js +26 -26
  677. package/dist/collection/components/loading/test/basic/loading.e2e.js +60 -60
  678. package/dist/collection/components/loading/test/basic/loading.spec.js +16 -0
  679. package/dist/collection/components/loading/test/is-open/loading.e2e.js +17 -17
  680. package/dist/collection/components/loading/test/loading-id.spec.js +32 -0
  681. package/dist/collection/components/loading/test/loading.spec.js +37 -0
  682. package/dist/collection/components/loading/test/standalone/loading.e2e.js +13 -13
  683. package/dist/collection/components/loading/test/trigger/loading.e2e.js +21 -21
  684. package/dist/collection/components/menu/menu.ios.css +48 -4
  685. package/dist/collection/components/menu/menu.js +956 -944
  686. package/dist/collection/components/menu/menu.md.css +48 -4
  687. package/dist/collection/components/menu/test/a11y/menu.e2e.js +13 -13
  688. package/dist/collection/components/menu/test/basic/menu.e2e.js +102 -102
  689. package/dist/collection/components/menu/test/disable/menu.e2e.js +44 -44
  690. package/dist/collection/components/menu/test/focus-trap/menu.e2e.js +61 -61
  691. package/dist/collection/components/menu/test/multiple/menu.e2e.js +49 -49
  692. package/dist/collection/components/menu/test/safe-area/menu.e2e.js +54 -54
  693. package/dist/collection/components/menu-button/menu-button.ios.css +44 -0
  694. package/dist/collection/components/menu-button/menu-button.js +173 -173
  695. package/dist/collection/components/menu-button/menu-button.md.css +44 -0
  696. package/dist/collection/components/menu-button/test/a11y/menu-button.e2e.js +12 -12
  697. package/dist/collection/components/menu-button/test/async/menu-button.e2e.js +12 -12
  698. package/dist/collection/components/menu-button/test/basic/menu-button.e2e.js +6 -6
  699. package/dist/collection/components/menu-toggle/menu-toggle-util.js +2 -2
  700. package/dist/collection/components/menu-toggle/menu-toggle.js +93 -93
  701. package/dist/collection/components/menu-toggle/test/basic/menu-toggle.e2e.js +33 -33
  702. package/dist/collection/components/modal/animations/ios.enter.js +81 -81
  703. package/dist/collection/components/modal/animations/ios.leave.js +74 -74
  704. package/dist/collection/components/modal/animations/md.enter.js +21 -21
  705. package/dist/collection/components/modal/animations/md.leave.js +15 -15
  706. package/dist/collection/components/modal/animations/sheet.js +43 -43
  707. package/dist/collection/components/modal/gestures/sheet.js +289 -289
  708. package/dist/collection/components/modal/gestures/swipe-to-close.js +248 -247
  709. package/dist/collection/components/modal/gestures/utils.js +39 -39
  710. package/dist/collection/components/modal/modal.ios.css +46 -2
  711. package/dist/collection/components/modal/modal.js +1290 -1280
  712. package/dist/collection/components/modal/modal.md.css +44 -0
  713. package/dist/collection/components/modal/test/a11y/modal.e2e.js +12 -12
  714. package/dist/collection/components/modal/test/a11y/modal.spec.js +22 -0
  715. package/dist/collection/components/modal/test/basic/modal.e2e.js +110 -110
  716. package/dist/collection/components/modal/test/basic/modal.spec.js +16 -0
  717. package/dist/collection/components/modal/test/can-dismiss/modal-card.e2e.js +44 -44
  718. package/dist/collection/components/modal/test/can-dismiss/modal-sheet.e2e.js +62 -62
  719. package/dist/collection/components/modal/test/can-dismiss/modal.e2e.js +16 -16
  720. package/dist/collection/components/modal/test/can-dismiss/modal.spec.js +191 -0
  721. package/dist/collection/components/modal/test/card/modal-card.e2e.js +69 -69
  722. package/dist/collection/components/modal/test/card/modal-tablet.e2e.js +67 -67
  723. package/dist/collection/components/modal/test/card-nav/modal.e2e.js +26 -26
  724. package/dist/collection/components/modal/test/card-refresher/modal.e2e.js +14 -14
  725. package/dist/collection/components/modal/test/card-scroll-target/modal.e2e.js +34 -34
  726. package/dist/collection/components/modal/test/custom/modal.e2e.js +16 -16
  727. package/dist/collection/components/modal/test/custom-dialog/modal.e2e.js +12 -12
  728. package/dist/collection/components/modal/test/dark-mode/model.e2e.js +12 -12
  729. package/dist/collection/components/modal/test/fixtures.js +21 -21
  730. package/dist/collection/components/modal/test/inline/modal.e2e.js +34 -34
  731. package/dist/collection/components/modal/test/is-open/modal.e2e.js +17 -17
  732. package/dist/collection/components/modal/test/modal-id.spec.js +32 -0
  733. package/dist/collection/components/modal/test/sheet/modal.e2e.js +178 -178
  734. package/dist/collection/components/modal/test/standalone/modal.e2e.js +12 -12
  735. package/dist/collection/components/modal/test/trigger/modal.e2e.js +23 -23
  736. package/dist/collection/components/modal/utils.js +55 -55
  737. package/dist/collection/components/modal/utils.spec.js +7 -7
  738. package/dist/collection/components/nav/nav.css +22 -0
  739. package/dist/collection/components/nav/nav.js +1748 -1748
  740. package/dist/collection/components/nav/test/basic/nav.e2e.js +58 -58
  741. package/dist/collection/components/nav/test/modal-navigation/nav.e2e.js +52 -52
  742. package/dist/collection/components/nav/test/nav-controller.spec.js +749 -0
  743. package/dist/collection/components/nav/test/nested/nav.e2e.js +54 -54
  744. package/dist/collection/components/nav/test/routing/nav.e2e.js +75 -75
  745. package/dist/collection/components/nav/view-controller.js +52 -52
  746. package/dist/collection/components/nav-link/nav-link-utils.js +16 -16
  747. package/dist/collection/components/nav-link/nav-link.js +106 -106
  748. package/dist/collection/components/note/note.ios.css +44 -0
  749. package/dist/collection/components/note/note.js +49 -49
  750. package/dist/collection/components/note/note.md.css +44 -0
  751. package/dist/collection/components/note/test/a11y/note.e2e.js +59 -16
  752. package/dist/collection/components/note/test/basic/note.e2e.js +33 -33
  753. package/dist/collection/components/picker/animations/ios.enter.js +18 -18
  754. package/dist/collection/components/picker/animations/ios.leave.js +14 -14
  755. package/dist/collection/components/picker/picker.ios.css +45 -1
  756. package/dist/collection/components/picker/picker.js +782 -772
  757. package/dist/collection/components/picker/picker.md.css +45 -1
  758. package/dist/collection/components/picker/test/basic/picker.e2e.js +17 -17
  759. package/dist/collection/components/picker/test/is-open/picker.e2e.js +17 -17
  760. package/dist/collection/components/picker/test/picker-id.spec.js +32 -0
  761. package/dist/collection/components/picker/test/trigger/picker.e2e.js +21 -21
  762. package/dist/collection/components/picker-column/picker-column.ios.css +44 -0
  763. package/dist/collection/components/picker-column/picker-column.js +377 -377
  764. package/dist/collection/components/picker-column/picker-column.md.css +44 -0
  765. package/dist/collection/components/picker-column/test/picker-column-aria.spec.js +35 -0
  766. package/dist/collection/components/picker-column/test/picker-column-dynamic.spec.js +29 -0
  767. package/dist/collection/components/picker-column/test/picker-column.spec.js +17 -0
  768. package/dist/collection/components/picker-column/test/standalone/picker-column.e2e.js +27 -27
  769. package/dist/collection/components/picker-column/test/test.utils.js +29 -29
  770. package/dist/collection/components/picker-column-internal/picker-column-internal.ios.css +33 -3
  771. package/dist/collection/components/picker-column-internal/picker-column-internal.js +523 -501
  772. package/dist/collection/components/picker-column-internal/picker-column-internal.md.css +55 -3
  773. package/dist/collection/components/picker-column-internal/test/basic/picker-column-internal.e2e.js +53 -53
  774. package/dist/collection/components/picker-column-internal/test/disabled/picker-column-internal.e2e.js +66 -37
  775. package/dist/collection/components/picker-internal/picker-internal.ios.css +46 -2
  776. package/dist/collection/components/picker-internal/picker-internal.js +517 -517
  777. package/dist/collection/components/picker-internal/picker-internal.md.css +46 -2
  778. package/dist/collection/components/picker-internal/test/a11y/picker-internal.e2e.js +6 -6
  779. package/dist/collection/components/picker-internal/test/basic/picker-internal.e2e.js +76 -71
  780. package/dist/collection/components/picker-internal/test/keyboard-entry/picker-internal.e2e.js +39 -39
  781. package/dist/collection/components/popover/animations/ios.enter.js +79 -79
  782. package/dist/collection/components/popover/animations/ios.leave.js +28 -28
  783. package/dist/collection/components/popover/animations/md.enter.js +58 -58
  784. package/dist/collection/components/popover/animations/md.leave.js +19 -19
  785. package/dist/collection/components/popover/popover.ios.css +48 -4
  786. package/dist/collection/components/popover/popover.js +1189 -1179
  787. package/dist/collection/components/popover/popover.md.css +46 -2
  788. package/dist/collection/components/popover/test/adjustment/popover.e2e.js +22 -22
  789. package/dist/collection/components/popover/test/arrow/popover.e2e.js +15 -15
  790. package/dist/collection/components/popover/test/async/popover.e2e.js +29 -29
  791. package/dist/collection/components/popover/test/basic/popover.e2e.js +108 -108
  792. package/dist/collection/components/popover/test/basic/popover.spec.js +16 -0
  793. package/dist/collection/components/popover/test/dismiss-on-select/popover.e2e.js +26 -26
  794. package/dist/collection/components/popover/test/fixture.js +16 -16
  795. package/dist/collection/components/popover/test/inline/popover.e2e.js +18 -18
  796. package/dist/collection/components/popover/test/is-open/popover.e2e.js +5 -5
  797. package/dist/collection/components/popover/test/nested/popover.e2e.js +81 -81
  798. package/dist/collection/components/popover/test/popover-id.spec.js +32 -0
  799. package/dist/collection/components/popover/test/position/popover.e2e.js +18 -18
  800. package/dist/collection/components/popover/test/reference/popover.e2e.js +14 -14
  801. package/dist/collection/components/popover/test/size/popover.e2e.js +29 -29
  802. package/dist/collection/components/popover/test/standalone/popover.e2e.js +7 -7
  803. package/dist/collection/components/popover/test/test.utils.js +23 -23
  804. package/dist/collection/components/popover/test/trigger/popover.e2e.js +35 -35
  805. package/dist/collection/components/popover/test/util.spec.js +53 -0
  806. package/dist/collection/components/popover/utils.js +606 -606
  807. package/dist/collection/components/progress-bar/progress-bar.ios.css +22 -0
  808. package/dist/collection/components/progress-bar/progress-bar.js +145 -145
  809. package/dist/collection/components/progress-bar/progress-bar.md.css +22 -0
  810. package/dist/collection/components/progress-bar/test/basic/progress-bar.e2e.js +6 -6
  811. package/dist/collection/components/progress-bar/test/buffer/progress-bar.e2e.js +10 -10
  812. package/dist/collection/components/progress-bar/test/determinate/progress-bar.e2e.js +10 -10
  813. package/dist/collection/components/radio/radio.ios.css +70 -10
  814. package/dist/collection/components/radio/radio.js +454 -447
  815. package/dist/collection/components/radio/radio.md.css +70 -10
  816. package/dist/collection/components/radio/test/a11y/radio.e2e.js +40 -40
  817. package/dist/collection/components/radio/test/color/radio.e2e.js +11 -11
  818. package/dist/collection/components/radio/test/item/radio.e2e.js +37 -37
  819. package/dist/collection/components/radio/test/label-placement/radio.e2e.js +70 -70
  820. package/dist/collection/components/radio/test/legacy/a11y/radio.e2e.js +29 -29
  821. package/dist/collection/components/radio/test/legacy/basic/radio.e2e.js +43 -43
  822. package/dist/collection/components/radio/test/radio.spec.js +60 -0
  823. package/dist/collection/components/radio/test/states/radio.e2e.js +21 -21
  824. package/dist/collection/components/radio-group/radio-group.js +280 -247
  825. package/dist/collection/components/radio-group/test/basic/radio-group.e2e.js +35 -35
  826. package/dist/collection/components/radio-group/test/fixtures.js +22 -22
  827. package/dist/collection/components/radio-group/test/form/radio-group.e2e.js +39 -39
  828. package/dist/collection/components/radio-group/test/legacy/basic/radio-group.e2e.js +59 -59
  829. package/dist/collection/components/radio-group/test/legacy/form/radio-group.e2e.js +22 -22
  830. package/dist/collection/components/radio-group/test/legacy/search/radio-group.e2e.js +27 -27
  831. package/dist/collection/components/radio-group/test/radio-group-events.e2e.js +42 -42
  832. package/dist/collection/components/radio-group/test/radio-group.spec.js +69 -0
  833. package/dist/collection/components/radio-group/test/search/radio-group.e2e.js +23 -23
  834. package/dist/collection/components/range/range.ios.css +45 -7
  835. package/dist/collection/components/range/range.js +1001 -998
  836. package/dist/collection/components/range/range.md.css +45 -7
  837. package/dist/collection/components/range/test/a11y/range.e2e.js +46 -46
  838. package/dist/collection/components/range/test/active-bar-start/range.e2e.js +6 -6
  839. package/dist/collection/components/range/test/basic/range.e2e.js +23 -23
  840. package/dist/collection/components/range/test/color/range.e2e.js +6 -6
  841. package/dist/collection/components/range/test/custom/range.e2e.js +6 -6
  842. package/dist/collection/components/range/test/item/range.e2e.js +28 -28
  843. package/dist/collection/components/range/test/label/range.e2e.js +99 -99
  844. package/dist/collection/components/range/test/label/range.spec.js +23 -0
  845. package/dist/collection/components/range/test/legacy/a11y/range.e2e.js +25 -25
  846. package/dist/collection/components/range/test/legacy/active-bar-start/range.e2e.js +6 -6
  847. package/dist/collection/components/range/test/legacy/basic/range.e2e.js +61 -61
  848. package/dist/collection/components/range/test/legacy/range-events.e2e.js +80 -80
  849. package/dist/collection/components/range/test/legacy/scroll-target/range.e2e.js +23 -23
  850. package/dist/collection/components/range/test/range-events.e2e.js +135 -135
  851. package/dist/collection/components/range/test/range.spec.js +221 -0
  852. package/dist/collection/components/range/test/scroll-target/range.e2e.js +23 -23
  853. package/dist/collection/components/range/test/states/range.e2e.js +21 -21
  854. package/dist/collection/components/refresher/refresher.ios.css +44 -0
  855. package/dist/collection/components/refresher/refresher.js +806 -806
  856. package/dist/collection/components/refresher/refresher.md.css +44 -0
  857. package/dist/collection/components/refresher/refresher.utils.js +148 -141
  858. package/dist/collection/components/refresher/test/basic/refresher.e2e.js +25 -25
  859. package/dist/collection/components/refresher/test/scroll-target/refresher.e2e.js +25 -25
  860. package/dist/collection/components/refresher/test/test.utils.js +5 -5
  861. package/dist/collection/components/refresher-content/refresher-content.js +131 -131
  862. package/dist/collection/components/refresher-content/test/refresher-content.spec.js +46 -0
  863. package/dist/collection/components/reorder/reorder.ios.css +23 -34
  864. package/dist/collection/components/reorder/reorder.js +37 -37
  865. package/dist/collection/components/reorder/reorder.md.css +23 -34
  866. package/dist/collection/components/reorder-group/reorder-group.css +22 -0
  867. package/dist/collection/components/reorder-group/reorder-group.js +327 -327
  868. package/dist/collection/components/reorder-group/test/a11y/reorder-group.e2e.js +6 -6
  869. package/dist/collection/components/reorder-group/test/basic/reorder-group.e2e.js +11 -11
  870. package/dist/collection/components/reorder-group/test/interactive/reorder-group.e2e.js +21 -21
  871. package/dist/collection/components/reorder-group/test/nested/reorder-group.e2e.js +21 -21
  872. package/dist/collection/components/reorder-group/test/scroll-target/reorder-group.e2e.js +21 -21
  873. package/dist/collection/components/ripple-effect/ripple-effect.css +22 -0
  874. package/dist/collection/components/ripple-effect/ripple-effect.js +135 -135
  875. package/dist/collection/components/ripple-effect/test/basic/ripple-effect.e2e.js +48 -48
  876. package/dist/collection/components/route/route.js +151 -151
  877. package/dist/collection/components/route-redirect/route-redirect.js +76 -76
  878. package/dist/collection/components/router/router.js +472 -472
  879. package/dist/collection/components/router/test/basic/router.e2e.js +55 -55
  880. package/dist/collection/components/router/test/guards/href/router.e2e.js +51 -51
  881. package/dist/collection/components/router/test/guards/link/router.e2e.js +51 -51
  882. package/dist/collection/components/router/test/guards/push/router.e2e.js +51 -51
  883. package/dist/collection/components/router/test/guards/router.e2e.js +5 -5
  884. package/dist/collection/components/router/test/guards/test.utils.js +2 -2
  885. package/dist/collection/components/router/test/matching.spec.js +250 -0
  886. package/dist/collection/components/router/test/parser.spec.js +133 -0
  887. package/dist/collection/components/router/test/path.spec.js +218 -0
  888. package/dist/collection/components/router/test/router.spec.js +55 -0
  889. package/dist/collection/components/router/utils/debug.js +14 -14
  890. package/dist/collection/components/router/utils/dom.js +56 -56
  891. package/dist/collection/components/router/utils/matching.js +150 -150
  892. package/dist/collection/components/router/utils/parser.js +52 -52
  893. package/dist/collection/components/router/utils/path.js +66 -66
  894. package/dist/collection/components/router-link/router-link.css +22 -0
  895. package/dist/collection/components/router-link/router-link.js +157 -157
  896. package/dist/collection/components/router-outlet/router-outlet.css +22 -0
  897. package/dist/collection/components/router-outlet/router-outlet.js +459 -459
  898. package/dist/collection/components/router-outlet/test/basic/router-outlet.e2e.js +31 -31
  899. package/dist/collection/components/row/row.css +66 -0
  900. package/dist/collection/components/row/row.js +15 -15
  901. package/dist/collection/components/searchbar/searchbar.ios.css +44 -0
  902. package/dist/collection/components/searchbar/searchbar.js +893 -884
  903. package/dist/collection/components/searchbar/searchbar.md.css +56 -6
  904. package/dist/collection/components/searchbar/test/a11y/searchbar.e2e.js +11 -11
  905. package/dist/collection/components/searchbar/test/basic/searchbar.e2e.js +116 -91
  906. package/dist/collection/components/searchbar/test/events/searchbar.e2e.js +55 -55
  907. package/dist/collection/components/searchbar/test/searchbar.spec.js +15 -0
  908. package/dist/collection/components/segment/segment.ios.css +66 -0
  909. package/dist/collection/components/segment/segment.js +633 -607
  910. package/dist/collection/components/segment/segment.md.css +66 -0
  911. package/dist/collection/components/segment/test/a11y/segment.e2e.js +37 -37
  912. package/dist/collection/components/segment/test/basic/segment.e2e.js +22 -22
  913. package/dist/collection/components/segment/test/custom/segment.e2e.js +6 -6
  914. package/dist/collection/components/segment/test/icon/segment.e2e.js +6 -6
  915. package/dist/collection/components/segment/test/modes/segment.e2e.js +15 -15
  916. package/dist/collection/components/segment/test/scrollable/segment.e2e.js +12 -12
  917. package/dist/collection/components/segment/test/segment-events.e2e.js +97 -97
  918. package/dist/collection/components/segment/test/segment.spec.js +37 -0
  919. package/dist/collection/components/segment/test/toolbar/segment.e2e.js +21 -21
  920. package/dist/collection/components/segment/test/wrap/segment.e2e.js +21 -21
  921. package/dist/collection/components/segment-button/segment-button.ios.css +44 -0
  922. package/dist/collection/components/segment-button/segment-button.js +217 -217
  923. package/dist/collection/components/segment-button/segment-button.md.css +44 -0
  924. package/dist/collection/components/select/select.ios.css +138 -22
  925. package/dist/collection/components/select/select.js +1201 -1184
  926. package/dist/collection/components/select/select.md.css +189 -26
  927. package/dist/collection/components/select/test/a11y/select.e2e.js +14 -14
  928. package/dist/collection/components/select/test/async/select.e2e.js +14 -14
  929. package/dist/collection/components/select/test/basic/select.e2e.js +140 -140
  930. package/dist/collection/components/select/test/card/select.e2e.js +6 -6
  931. package/dist/collection/components/select/test/color/select.e2e.js +22 -22
  932. package/dist/collection/components/select/test/compare-with/select.e2e.js +33 -33
  933. package/dist/collection/components/select/test/custom/select.e2e.js +19 -19
  934. package/dist/collection/components/select/test/disabled/select.e2e.js +17 -17
  935. package/dist/collection/components/select/test/fill/select.e2e.js +63 -63
  936. package/dist/collection/components/select/test/highlight/select.e2e.js +74 -74
  937. package/dist/collection/components/select/test/item/select.e2e.js +26 -11
  938. package/dist/collection/components/select/test/label/select.e2e.js +141 -141
  939. package/dist/collection/components/select/test/legacy/async/select.e2e.js +8 -8
  940. package/dist/collection/components/select/test/legacy/basic/select.e2e.js +108 -108
  941. package/dist/collection/components/select/test/legacy/compare-with/select.e2e.js +33 -33
  942. package/dist/collection/components/select/test/legacy/custom/custom.e2e.js +5 -5
  943. package/dist/collection/components/select/test/legacy/single-value/select.e2e.js +8 -8
  944. package/dist/collection/components/select/test/legacy/spec/select.e2e.js +6 -6
  945. package/dist/collection/components/select/test/legacy/standalone/select.e2e.js +11 -11
  946. package/dist/collection/components/select/test/legacy/wrapping/select.e2e.js +17 -17
  947. package/dist/collection/components/select/test/popover-size/select.e2e.js +63 -63
  948. package/dist/collection/components/select/test/select.spec.js +59 -0
  949. package/dist/collection/components/select/test/slot/select.e2e.js +67 -0
  950. package/dist/collection/components/select/test/states/select.e2e.js +21 -21
  951. package/dist/collection/components/select/test/toggle-icon/select.e2e.js +14 -14
  952. package/dist/collection/components/select/test/wrapping/select.e2e.js +16 -16
  953. package/dist/collection/components/select-option/select-option.js +60 -60
  954. package/dist/collection/components/select-popover/select-popover.ios.css +66 -0
  955. package/dist/collection/components/select-popover/select-popover.js +197 -197
  956. package/dist/collection/components/select-popover/select-popover.md.css +66 -0
  957. package/dist/collection/components/select-popover/test/basic/select-popover.e2e.js +52 -52
  958. package/dist/collection/components/select-popover/test/fixtures.js +33 -33
  959. package/dist/collection/components/skeleton-text/skeleton-text.css +22 -0
  960. package/dist/collection/components/skeleton-text/skeleton-text.js +87 -48
  961. package/dist/collection/components/skeleton-text/test/basic/skeleton-text.e2e.js +6 -6
  962. package/dist/collection/components/skeleton-text/test/custom/skeleton-text.e2e.js +6 -6
  963. package/dist/collection/components/slides/IonicSlides.js +95 -95
  964. package/dist/collection/components/spinner/spinner-configs.js +121 -121
  965. package/dist/collection/components/spinner/spinner.css +22 -0
  966. package/dist/collection/components/spinner/spinner.js +137 -137
  967. package/dist/collection/components/spinner/test/basic/spinner.e2e.js +10 -10
  968. package/dist/collection/components/spinner/test/color/spinner.e2e.js +10 -10
  969. package/dist/collection/components/spinner/test/resize/spinner.e2e.js +8 -8
  970. package/dist/collection/components/split-pane/split-pane.ios.css +66 -0
  971. package/dist/collection/components/split-pane/split-pane.js +225 -225
  972. package/dist/collection/components/split-pane/split-pane.md.css +66 -0
  973. package/dist/collection/components/split-pane/test/basic/split-pane.e2e.js +18 -18
  974. package/dist/collection/components/split-pane/test/multiple/split-pane.e2e.js +31 -0
  975. package/dist/collection/components/tab/tab.js +170 -170
  976. package/dist/collection/components/tab-bar/tab-bar.ios.css +70 -4
  977. package/dist/collection/components/tab-bar/tab-bar.js +177 -177
  978. package/dist/collection/components/tab-bar/tab-bar.md.css +70 -4
  979. package/dist/collection/components/tab-bar/test/basic/tab-bar.e2e.js +43 -0
  980. package/dist/collection/components/tab-bar/test/custom/tab-bar.e2e.js +6 -6
  981. package/dist/collection/components/tab-bar/test/translucent/tab-bar.e2e.js +14 -14
  982. package/dist/collection/components/tab-button/tab-button.ios.css +47 -3
  983. package/dist/collection/components/tab-button/tab-button.js +267 -267
  984. package/dist/collection/components/tab-button/tab-button.md.css +47 -3
  985. package/dist/collection/components/tab-button/test/a11y/tab-button.e2e.js +6 -6
  986. package/dist/collection/components/tab-button/test/basic/tab-button.e2e.js +16 -16
  987. package/dist/collection/components/tab-button/test/layout/tab-button.e2e.js +26 -26
  988. package/dist/collection/components/tab-button/test/states/tab-button.e2e.js +26 -26
  989. package/dist/collection/components/tabs/tabs.css +22 -0
  990. package/dist/collection/components/tabs/tabs.js +344 -344
  991. package/dist/collection/components/tabs/test/basic/tabs.e2e.js +24 -24
  992. package/dist/collection/components/tabs/test/placements/tabs.e2e.js +17 -17
  993. package/dist/collection/components/text/test/basic/text.e2e.js +11 -11
  994. package/dist/collection/components/text/text.css +22 -0
  995. package/dist/collection/components/text/text.js +47 -47
  996. package/dist/collection/components/textarea/test/a11y/textarea.e2e.js +12 -12
  997. package/dist/collection/components/textarea/test/autogrow/textarea.e2e.js +31 -31
  998. package/dist/collection/components/textarea/test/bottom-content/textarea.e2e.js +82 -82
  999. package/dist/collection/components/textarea/test/card/textarea.e2e.js +6 -6
  1000. package/dist/collection/components/textarea/test/clear-on-edit/textarea.e2e.js +17 -17
  1001. package/dist/collection/components/textarea/test/color/textarea.e2e.js +88 -88
  1002. package/dist/collection/components/textarea/test/cols/textarea.e2e.js +11 -11
  1003. package/dist/collection/components/textarea/test/fill/textarea.e2e.js +63 -63
  1004. package/dist/collection/components/textarea/test/highlight/textarea.e2e.js +52 -52
  1005. package/dist/collection/components/textarea/test/item/textarea.e2e.js +11 -11
  1006. package/dist/collection/components/textarea/test/label-placement/textarea.e2e.js +150 -150
  1007. package/dist/collection/components/textarea/test/legacy/a11y/textarea.e2e.js +15 -15
  1008. package/dist/collection/components/textarea/test/legacy/autogrow/textarea.e2e.js +31 -31
  1009. package/dist/collection/components/textarea/test/legacy/basic/textarea.e2e.js +30 -30
  1010. package/dist/collection/components/textarea/test/legacy/clear-on-edit/textarea.e2e.js +17 -17
  1011. package/dist/collection/components/textarea/test/slot/textarea.e2e.js +51 -0
  1012. package/dist/collection/components/textarea/test/states/textarea.e2e.js +11 -11
  1013. package/dist/collection/components/textarea/test/textarea-events.e2e.js +57 -57
  1014. package/dist/collection/components/textarea/test/textarea.spec.js +59 -0
  1015. package/dist/collection/components/textarea/textarea.ios.css +144 -24
  1016. package/dist/collection/components/textarea/textarea.js +1050 -1016
  1017. package/dist/collection/components/textarea/textarea.md.css +205 -34
  1018. package/dist/collection/components/thumbnail/test/basic/thumbnail.e2e.js +28 -28
  1019. package/dist/collection/components/thumbnail/thumbnail.css +22 -0
  1020. package/dist/collection/components/thumbnail/thumbnail.js +15 -15
  1021. package/dist/collection/components/title/test/a11y/title.e2e.js +17 -17
  1022. package/dist/collection/components/title/test/basic/title.e2e.js +13 -13
  1023. package/dist/collection/components/title/title.ios.css +24 -2
  1024. package/dist/collection/components/title/title.js +119 -119
  1025. package/dist/collection/components/title/title.md.css +22 -0
  1026. package/dist/collection/components/toast/animations/ios.enter.js +21 -20
  1027. package/dist/collection/components/toast/animations/ios.leave.js +18 -18
  1028. package/dist/collection/components/toast/animations/md.enter.js +23 -22
  1029. package/dist/collection/components/toast/animations/md.leave.js +6 -6
  1030. package/dist/collection/components/toast/animations/utils.js +62 -56
  1031. package/dist/collection/components/toast/gestures/swipe-to-dismiss.js +267 -0
  1032. package/dist/collection/components/toast/test/a11y/toast.e2e.js +92 -92
  1033. package/dist/collection/components/toast/test/basic/toast.e2e.js +101 -101
  1034. package/dist/collection/components/toast/test/is-open/toast.e2e.js +17 -17
  1035. package/dist/collection/components/toast/test/layout/toast.e2e.js +9 -9
  1036. package/dist/collection/components/toast/test/position-anchor/toast.e2e.js +37 -37
  1037. package/dist/collection/components/toast/test/standalone/toast.e2e.js +10 -10
  1038. package/dist/collection/components/toast/test/swipe-gesture/toast.e2e.js +84 -0
  1039. package/dist/collection/components/toast/test/toast-config.spec.js +25 -0
  1040. package/dist/collection/components/toast/test/toast-id.spec.js +32 -0
  1041. package/dist/collection/components/toast/test/toast.spec.js +200 -0
  1042. package/dist/collection/components/toast/test/trigger/toast.e2e.js +21 -21
  1043. package/dist/collection/components/toast/toast.ios.css +55 -11
  1044. package/dist/collection/components/toast/toast.js +1065 -952
  1045. package/dist/collection/components/toast/toast.md.css +55 -1
  1046. package/dist/collection/components/toggle/test/a11y/toggle.e2e.js +6 -6
  1047. package/dist/collection/components/toggle/test/color/toggle.e2e.js +11 -11
  1048. package/dist/collection/components/toggle/test/enable-on-off-labels/toggle.e2e.js +27 -27
  1049. package/dist/collection/components/toggle/test/item/toggle.e2e.js +52 -52
  1050. package/dist/collection/components/toggle/test/label/toggle.e2e.js +65 -65
  1051. package/dist/collection/components/toggle/test/legacy/basic/toggle.e2e.js +69 -69
  1052. package/dist/collection/components/toggle/test/legacy/enable-on-off-labels/toggle.e2e.js +23 -23
  1053. package/dist/collection/components/toggle/test/legacy/sizes/toggle.e2e.js +6 -6
  1054. package/dist/collection/components/toggle/test/sizes/toggle.e2e.js +6 -6
  1055. package/dist/collection/components/toggle/test/states/toggle.e2e.js +16 -16
  1056. package/dist/collection/components/toggle/test/toggle.spec.js +67 -0
  1057. package/dist/collection/components/toggle/toggle.ios.css +69 -9
  1058. package/dist/collection/components/toggle/toggle.js +487 -484
  1059. package/dist/collection/components/toggle/toggle.md.css +69 -9
  1060. package/dist/collection/components/toolbar/test/basic/toolbar.e2e.js +7 -7
  1061. package/dist/collection/components/toolbar/test/colors/toolbar.e2e.js +6 -6
  1062. package/dist/collection/components/toolbar/toolbar.ios.css +44 -0
  1063. package/dist/collection/components/toolbar/toolbar.js +100 -100
  1064. package/dist/collection/components/toolbar/toolbar.md.css +44 -0
  1065. package/dist/collection/css/test/a11y/typography.e2e.js +6 -6
  1066. package/dist/collection/global/config.js +51 -51
  1067. package/dist/collection/global/ionic-global.js +54 -54
  1068. package/dist/collection/global/test/config-controller.spec.js +77 -0
  1069. package/dist/collection/utils/animation/animation-utils.js +91 -91
  1070. package/dist/collection/utils/animation/animation.js +906 -890
  1071. package/dist/collection/utils/animation/cubic-bezier.js +49 -49
  1072. package/dist/collection/utils/animation/test/animation.spec.js +447 -0
  1073. package/dist/collection/utils/animation/test/animationbuilder/animation.e2e.js +26 -26
  1074. package/dist/collection/utils/animation/test/basic/animation.e2e.js +12 -12
  1075. package/dist/collection/utils/animation/test/display/animation.e2e.js +18 -18
  1076. package/dist/collection/utils/animation/test/hooks/animation.e2e.js +39 -39
  1077. package/dist/collection/utils/animation/test/multiple/animation.e2e.js +27 -27
  1078. package/dist/collection/utils/browser/index.js +0 -22
  1079. package/dist/collection/utils/config.js +20 -20
  1080. package/dist/collection/utils/content/content.utils.spec.js +121 -121
  1081. package/dist/collection/utils/content/index.js +58 -59
  1082. package/dist/collection/utils/floating-point/floating-point.spec.js +14 -14
  1083. package/dist/collection/utils/floating-point/index.js +5 -5
  1084. package/dist/collection/utils/focus-visible.js +63 -63
  1085. package/dist/collection/utils/forms/compare-with-utils.js +39 -0
  1086. package/dist/collection/utils/forms/form-controller.js +45 -49
  1087. package/dist/collection/utils/forms/index.js +1 -0
  1088. package/dist/collection/utils/forms/notch-controller.js +120 -120
  1089. package/dist/collection/utils/framework-delegate.js +121 -121
  1090. package/dist/collection/utils/gesture/button-active.js +56 -56
  1091. package/dist/collection/utils/gesture/gesture-controller.js +182 -182
  1092. package/dist/collection/utils/gesture/index.js +222 -222
  1093. package/dist/collection/utils/gesture/listener.js +36 -36
  1094. package/dist/collection/utils/gesture/pointer-events.js +113 -113
  1095. package/dist/collection/utils/gesture/recognizers.js +46 -46
  1096. package/dist/collection/utils/gesture/swipe-back.js +65 -65
  1097. package/dist/collection/utils/hardware-back-button.js +48 -48
  1098. package/dist/collection/utils/helpers.js +258 -258
  1099. package/dist/collection/utils/helpers.spec.js +28 -28
  1100. package/dist/collection/utils/input-shims/hacks/common.js +61 -53
  1101. package/dist/collection/utils/input-shims/hacks/hide-caret.js +19 -19
  1102. package/dist/collection/utils/input-shims/hacks/input-blurring.js +47 -47
  1103. package/dist/collection/utils/input-shims/hacks/scroll-assist.js +225 -225
  1104. package/dist/collection/utils/input-shims/hacks/scroll-data.js +29 -29
  1105. package/dist/collection/utils/input-shims/hacks/scroll-padding.js +21 -21
  1106. package/dist/collection/utils/input-shims/hacks/test/scroll-assist.e2e.js +97 -97
  1107. package/dist/collection/utils/input-shims/input-shims.js +87 -81
  1108. package/dist/collection/utils/keyboard/keyboard-controller.js +128 -128
  1109. package/dist/collection/utils/keyboard/keyboard.js +59 -59
  1110. package/dist/collection/utils/keyboard/test/keyboard-controller.spec.js +21 -0
  1111. package/dist/collection/utils/keyboard/test/keyboard.spec.js +214 -0
  1112. package/dist/collection/utils/lock-controller.js +24 -24
  1113. package/dist/collection/utils/logging/index.js +3 -3
  1114. package/dist/collection/utils/media.js +13 -13
  1115. package/dist/collection/utils/menu-controller/animations/base.js +8 -8
  1116. package/dist/collection/utils/menu-controller/animations/overlay.js +21 -21
  1117. package/dist/collection/utils/menu-controller/animations/push.js +20 -20
  1118. package/dist/collection/utils/menu-controller/animations/reveal.js +6 -6
  1119. package/dist/collection/utils/menu-controller/index.js +204 -206
  1120. package/dist/collection/utils/native/capacitor.js +4 -4
  1121. package/dist/collection/utils/native/haptic.js +151 -151
  1122. package/dist/collection/utils/native/keyboard.js +47 -47
  1123. package/dist/collection/utils/native/native-interface.js +15 -15
  1124. package/dist/collection/utils/native/status-bar.js +36 -36
  1125. package/dist/collection/utils/overlays.js +495 -494
  1126. package/dist/collection/utils/platform.js +56 -56
  1127. package/dist/collection/utils/rtl/dir.js +5 -5
  1128. package/dist/collection/utils/rtl/dir.spec.js +17 -17
  1129. package/dist/collection/utils/sanitization/index.js +122 -122
  1130. package/dist/collection/utils/sanitization/test/sanitization.spec.js +43 -0
  1131. package/dist/collection/utils/slot-mutation-controller.js +86 -85
  1132. package/dist/collection/utils/status-tap.js +26 -26
  1133. package/dist/collection/utils/tap-click/index.js +171 -171
  1134. package/dist/collection/utils/tap-click/test/tap-click.e2e.js +12 -12
  1135. package/dist/collection/utils/test/aria.spec.js +79 -0
  1136. package/dist/collection/utils/test/attributes.spec.js +53 -0
  1137. package/dist/collection/utils/test/framework-delegate/framework-delegate.e2e.js +25 -25
  1138. package/dist/collection/utils/test/hardware-back-button.spec.js +53 -0
  1139. package/dist/collection/utils/test/overlays/overlays.e2e.js +137 -137
  1140. package/dist/collection/utils/test/overlays/overlays.spec.js +102 -0
  1141. package/dist/collection/utils/test/platform.spec.js +132 -0
  1142. package/dist/collection/utils/test/platform.utils.js +77 -77
  1143. package/dist/collection/utils/test/playwright/drag-element.js +69 -69
  1144. package/dist/collection/utils/test/playwright/generator.js +48 -25
  1145. package/dist/collection/utils/test/playwright/matchers/index.js +3 -3
  1146. package/dist/collection/utils/test/playwright/matchers/toHaveReceivedEvent.js +21 -21
  1147. package/dist/collection/utils/test/playwright/matchers/toHaveReceivedEventDetail.js +28 -28
  1148. package/dist/collection/utils/test/playwright/matchers/toHaveReceivedEventTimes.js +22 -22
  1149. package/dist/collection/utils/test/playwright/page/event-spy.js +110 -110
  1150. package/dist/collection/utils/test/playwright/page/utils/goto.js +52 -52
  1151. package/dist/collection/utils/test/playwright/page/utils/locator.js +8 -8
  1152. package/dist/collection/utils/test/playwright/page/utils/set-content.js +44 -35
  1153. package/dist/collection/utils/test/playwright/page/utils/set-ion-viewport.js +19 -19
  1154. package/dist/collection/utils/test/playwright/page/utils/spy-on-event.js +4 -4
  1155. package/dist/collection/utils/test/playwright/page/utils/wait-for-changes.js +48 -48
  1156. package/dist/collection/utils/test/playwright/playwright-page.js +35 -35
  1157. package/dist/collection/utils/test/playwright/viewports/index.js +13 -13
  1158. package/dist/collection/utils/test/press-keys.js +77 -77
  1159. package/dist/collection/utils/test/ready.spec.js +39 -0
  1160. package/dist/collection/utils/test/theme.spec.js +56 -0
  1161. package/dist/collection/utils/theme.js +23 -23
  1162. package/dist/collection/utils/transition/index.js +163 -163
  1163. package/dist/collection/utils/transition/ios.transition.js +598 -598
  1164. package/dist/collection/utils/transition/md.transition.js +44 -44
  1165. package/dist/collection/utils/watch-options.js +37 -26
  1166. package/dist/docs.json +196 -39
  1167. package/dist/esm/animation-dde8cc0d.js +1060 -0
  1168. package/dist/esm/{app-globals-ec816a70.js → app-globals-722340c4.js} +1 -1
  1169. package/dist/esm/button-active-c6ee4f50.js +67 -0
  1170. package/dist/esm/capacitor-59395cbd.js +13 -0
  1171. package/dist/esm/compare-with-utils-a96ff2ea.js +41 -0
  1172. package/dist/esm/config-49c88215.js +193 -0
  1173. package/dist/esm/cubic-bezier-fe2083dc.js +90 -0
  1174. package/dist/esm/data-f5c75b4e.js +1575 -0
  1175. package/dist/esm/{dir-912e3e13.js → dir-babeabeb.js} +5 -5
  1176. package/dist/esm/focus-visible-dd40d69f.js +75 -0
  1177. package/dist/esm/form-controller-548aa79c.js +64 -0
  1178. package/dist/esm/framework-delegate-bc1fd82a.js +140 -0
  1179. package/dist/esm/gesture-controller-1bf57181.js +195 -0
  1180. package/dist/esm/haptic-554688a5.js +206 -0
  1181. package/dist/esm/hardware-back-button-b2bc76db.js +71 -0
  1182. package/dist/esm/helpers-ae653409.js +418 -0
  1183. package/dist/esm/{index-b49b173c.js → index-08d686eb.js} +184 -63
  1184. package/dist/esm/index-0c12c22b.js +306 -0
  1185. package/dist/esm/index-1932b201.js +231 -0
  1186. package/dist/esm/index-2cf77112.js +457 -0
  1187. package/dist/esm/index-82eeb47f.js +196 -0
  1188. package/dist/esm/{index-595d62c9.js → index-9b0d46f4.js} +3 -3
  1189. package/dist/esm/index-a5d50daf.js +7 -0
  1190. package/dist/esm/{index-746a238e.js → index-b9e742e5.js} +60 -61
  1191. package/dist/esm/index.js +113 -113
  1192. package/dist/esm/input-shims-6539ce13.js +599 -0
  1193. package/dist/esm/input.utils-a5a2d164.js +135 -0
  1194. package/dist/esm/ion-accordion_2.entry.js +491 -481
  1195. package/dist/esm/ion-action-sheet.entry.js +262 -252
  1196. package/dist/esm/ion-alert.entry.js +442 -432
  1197. package/dist/esm/ion-app_8.entry.js +1153 -1153
  1198. package/dist/esm/ion-avatar_3.entry.js +29 -29
  1199. package/dist/esm/ion-back-button.entry.js +73 -73
  1200. package/dist/esm/ion-backdrop.entry.js +40 -40
  1201. package/dist/esm/ion-breadcrumb_2.entry.js +194 -194
  1202. package/dist/esm/ion-button_2.entry.js +303 -303
  1203. package/dist/esm/ion-card_5.entry.js +105 -105
  1204. package/dist/esm/ion-checkbox.entry.js +149 -147
  1205. package/dist/esm/ion-chip.entry.js +20 -20
  1206. package/dist/esm/ion-col_3.entry.js +136 -136
  1207. package/dist/esm/ion-datetime-button.entry.js +325 -325
  1208. package/dist/esm/ion-datetime_3.entry.js +2185 -2137
  1209. package/dist/esm/ion-fab_3.entry.js +152 -152
  1210. package/dist/esm/ion-img.entry.js +79 -79
  1211. package/dist/esm/ion-infinite-scroll_2.entry.js +198 -190
  1212. package/dist/esm/ion-input.entry.js +426 -394
  1213. package/dist/esm/ion-item-option_3.entry.js +459 -459
  1214. package/dist/esm/ion-item_8.entry.js +447 -434
  1215. package/dist/esm/ion-loading.entry.js +220 -210
  1216. package/dist/esm/ion-menu_3.entry.js +670 -658
  1217. package/dist/esm/ion-modal.entry.js +1415 -1405
  1218. package/dist/esm/ion-nav_2.entry.js +904 -904
  1219. package/dist/esm/ion-picker-column-internal.entry.js +331 -327
  1220. package/dist/esm/ion-picker-internal.entry.js +455 -455
  1221. package/dist/esm/ion-popover.entry.js +1110 -1100
  1222. package/dist/esm/ion-progress-bar.entry.js +40 -40
  1223. package/dist/esm/ion-radio_2.entry.js +322 -309
  1224. package/dist/esm/ion-range.entry.js +558 -556
  1225. package/dist/esm/ion-refresher_2.entry.js +786 -779
  1226. package/dist/esm/ion-reorder_2.entry.js +269 -269
  1227. package/dist/esm/ion-ripple-effect.entry.js +66 -66
  1228. package/dist/esm/ion-route_4.entry.js +693 -693
  1229. package/dist/esm/ion-searchbar.entry.js +363 -354
  1230. package/dist/esm/ion-segment_2.entry.js +509 -483
  1231. package/dist/esm/ion-select_3.entry.js +784 -768
  1232. package/dist/esm/ion-spinner.entry.js +46 -46
  1233. package/dist/esm/ion-split-pane.entry.js +117 -117
  1234. package/dist/esm/ion-tab-bar_2.entry.js +142 -142
  1235. package/dist/esm/ion-tab_2.entry.js +187 -187
  1236. package/dist/esm/ion-text.entry.js +13 -13
  1237. package/dist/esm/ion-textarea.entry.js +381 -349
  1238. package/dist/esm/ion-toast.entry.js +771 -419
  1239. package/dist/esm/ion-toggle.entry.js +227 -225
  1240. package/dist/esm/ionic-global-c0cda98e.js +224 -0
  1241. package/dist/esm/ionic.js +6 -6
  1242. package/dist/esm/ios.transition-802a84a6.js +651 -0
  1243. package/dist/esm/keyboard-52278bd7.js +146 -0
  1244. package/dist/esm/keyboard-73175e24.js +79 -0
  1245. package/dist/esm/keyboard-controller-ec5c2bfa.js +165 -0
  1246. package/dist/esm/loader.js +5 -5
  1247. package/dist/esm/lock-controller-316928be.js +38 -0
  1248. package/dist/esm/md.transition-43c2874d.js +57 -0
  1249. package/dist/esm/notch-controller-fea7f9c5.js +153 -0
  1250. package/dist/esm/overlays-32ef481d.js +693 -0
  1251. package/dist/esm/spinner-configs-964f7cf3.js +145 -0
  1252. package/dist/esm/status-tap-2b93b1b5.js +40 -0
  1253. package/dist/esm/swipe-back-18cb49f7.js +79 -0
  1254. package/dist/esm/theme-01f3f29c.js +43 -0
  1255. package/dist/esm/watch-options-c2911ace.js +47 -0
  1256. package/dist/esm-es5/animation-dde8cc0d.js +4 -0
  1257. package/dist/esm-es5/app-globals-722340c4.js +4 -0
  1258. package/dist/esm-es5/{button-active-d926d4f4.js → button-active-c6ee4f50.js} +1 -1
  1259. package/dist/esm-es5/{capacitor-b4979570.js → capacitor-59395cbd.js} +1 -1
  1260. package/dist/esm-es5/compare-with-utils-a96ff2ea.js +4 -0
  1261. package/dist/esm-es5/config-49c88215.js +4 -0
  1262. package/dist/esm-es5/cubic-bezier-fe2083dc.js +4 -0
  1263. package/dist/esm-es5/data-f5c75b4e.js +4 -0
  1264. package/dist/esm-es5/{dir-912e3e13.js → dir-babeabeb.js} +1 -1
  1265. package/dist/esm-es5/focus-visible-dd40d69f.js +4 -0
  1266. package/dist/esm-es5/form-controller-548aa79c.js +4 -0
  1267. package/dist/esm-es5/framework-delegate-bc1fd82a.js +4 -0
  1268. package/dist/esm-es5/{gesture-controller-0fa396c4.js → gesture-controller-1bf57181.js} +1 -1
  1269. package/dist/esm-es5/{haptic-1243b917.js → haptic-554688a5.js} +1 -1
  1270. package/dist/esm-es5/hardware-back-button-b2bc76db.js +4 -0
  1271. package/dist/esm-es5/helpers-ae653409.js +4 -0
  1272. package/dist/esm-es5/index-08d686eb.js +5 -0
  1273. package/dist/esm-es5/index-0c12c22b.js +4 -0
  1274. package/dist/esm-es5/{index-a09eac70.js → index-1932b201.js} +1 -1
  1275. package/dist/esm-es5/index-2cf77112.js +4 -0
  1276. package/dist/esm-es5/index-82eeb47f.js +4 -0
  1277. package/dist/esm-es5/index-b9e742e5.js +4 -0
  1278. package/dist/esm-es5/index.js +1 -1
  1279. package/dist/esm-es5/input-shims-6539ce13.js +4 -0
  1280. package/dist/esm-es5/input.utils-a5a2d164.js +4 -0
  1281. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  1282. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  1283. package/dist/esm-es5/ion-alert.entry.js +1 -1
  1284. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  1285. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  1286. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  1287. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  1288. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  1289. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  1290. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  1291. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  1292. package/dist/esm-es5/ion-chip.entry.js +1 -1
  1293. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  1294. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  1295. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  1296. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  1297. package/dist/esm-es5/ion-img.entry.js +1 -1
  1298. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  1299. package/dist/esm-es5/ion-input.entry.js +1 -1
  1300. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  1301. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  1302. package/dist/esm-es5/ion-loading.entry.js +1 -1
  1303. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  1304. package/dist/esm-es5/ion-modal.entry.js +1 -1
  1305. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  1306. package/dist/esm-es5/ion-picker-column-internal.entry.js +1 -1
  1307. package/dist/esm-es5/ion-picker-internal.entry.js +1 -1
  1308. package/dist/esm-es5/ion-popover.entry.js +1 -1
  1309. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  1310. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  1311. package/dist/esm-es5/ion-range.entry.js +1 -1
  1312. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  1313. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  1314. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  1315. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  1316. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  1317. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  1318. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  1319. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  1320. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  1321. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  1322. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  1323. package/dist/esm-es5/ion-text.entry.js +1 -1
  1324. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  1325. package/dist/esm-es5/ion-toast.entry.js +1 -1
  1326. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  1327. package/dist/esm-es5/ionic-global-c0cda98e.js +4 -0
  1328. package/dist/esm-es5/ionic.js +1 -1
  1329. package/dist/esm-es5/{ios.transition-4d1322d6.js → ios.transition-802a84a6.js} +1 -1
  1330. package/dist/esm-es5/{keyboard-b551279d.js → keyboard-52278bd7.js} +1 -1
  1331. package/dist/esm-es5/{keyboard-b063f012.js → keyboard-73175e24.js} +1 -1
  1332. package/dist/esm-es5/keyboard-controller-ec5c2bfa.js +4 -0
  1333. package/dist/esm-es5/loader.js +1 -1
  1334. package/dist/esm-es5/md.transition-43c2874d.js +4 -0
  1335. package/dist/esm-es5/notch-controller-fea7f9c5.js +4 -0
  1336. package/dist/esm-es5/overlays-32ef481d.js +4 -0
  1337. package/dist/esm-es5/spinner-configs-964f7cf3.js +4 -0
  1338. package/dist/esm-es5/status-tap-2b93b1b5.js +4 -0
  1339. package/dist/esm-es5/swipe-back-18cb49f7.js +4 -0
  1340. package/dist/esm-es5/watch-options-c2911ace.js +4 -0
  1341. package/dist/html.html-data.json +17 -4
  1342. package/dist/ionic/index.esm.js +1 -1
  1343. package/dist/ionic/ionic.esm.js +1 -1
  1344. package/dist/ionic/ionic.js +15 -15
  1345. package/dist/ionic/p-012c3ceb.system.js +4 -0
  1346. package/dist/ionic/p-013013a3.js +4 -0
  1347. package/dist/ionic/p-01d14eba.system.entry.js +4 -0
  1348. package/dist/ionic/p-042e6f4b.entry.js +4 -0
  1349. package/dist/ionic/{p-819ff3b9.system.js → p-08e01816.system.js} +1 -1
  1350. package/dist/ionic/{p-f919c026.entry.js → p-0add7211.entry.js} +1 -1
  1351. package/dist/ionic/p-0bd51c34.system.js +4 -0
  1352. package/dist/ionic/{p-6f6646bf.system.entry.js → p-0e53f8ea.system.entry.js} +1 -1
  1353. package/dist/ionic/{p-6ea2e653.entry.js → p-1161a793.entry.js} +1 -1
  1354. package/dist/ionic/{p-96ba8eac.entry.js → p-1208f939.entry.js} +1 -1
  1355. package/dist/ionic/p-16756e94.system.entry.js +4 -0
  1356. package/dist/ionic/p-1786bc72.js +4 -0
  1357. package/dist/ionic/{p-1ecba429.entry.js → p-17da5ed1.entry.js} +1 -1
  1358. package/dist/ionic/p-18ba8221.entry.js +4 -0
  1359. package/dist/ionic/p-1b19c04b.entry.js +4 -0
  1360. package/dist/ionic/p-1cca10d6.system.js +4 -0
  1361. package/dist/ionic/p-1e4371bd.js +4 -0
  1362. package/dist/ionic/{p-fcf47f80.entry.js → p-2092f39f.entry.js} +1 -1
  1363. package/dist/ionic/p-251666e2.entry.js +4 -0
  1364. package/dist/ionic/{p-7423746f.entry.js → p-270e1a1d.entry.js} +1 -1
  1365. package/dist/ionic/{p-419eb426.js → p-27281edd.js} +1 -1
  1366. package/dist/ionic/p-28249b10.system.entry.js +4 -0
  1367. package/dist/ionic/p-28a2c2a2.entry.js +4 -0
  1368. package/dist/ionic/{p-6129af0a.system.entry.js → p-2938823a.system.entry.js} +1 -1
  1369. package/dist/ionic/p-29d03b3a.js +4 -0
  1370. package/dist/ionic/{p-17240d90.js → p-2aea8b1e.js} +1 -1
  1371. package/dist/ionic/p-2b7827c7.js +4 -0
  1372. package/dist/ionic/p-2d3b9fa3.system.entry.js +4 -0
  1373. package/dist/ionic/p-2d539df1.entry.js +4 -0
  1374. package/dist/ionic/p-31b2326e.system.js +4 -0
  1375. package/dist/ionic/{p-e028178a.system.js → p-31fcb233.system.js} +1 -1
  1376. package/dist/ionic/p-32ad210f.system.js +4 -0
  1377. package/dist/ionic/{p-aa377971.system.js → p-33a37fad.system.js} +1 -1
  1378. package/dist/ionic/p-350f7292.system.entry.js +4 -0
  1379. package/dist/ionic/{p-cabd2c6d.entry.js → p-353b349d.entry.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-38c337e7.system.js +4 -0
  1383. package/dist/ionic/p-38f2c6bb.system.js +4 -0
  1384. package/dist/ionic/{p-9e106f58.entry.js → p-3a45a82b.entry.js} +1 -1
  1385. package/dist/ionic/{p-3bad5c1a.js → p-3a75d7fd.js} +1 -1
  1386. package/dist/ionic/p-3dd98a73.entry.js +4 -0
  1387. package/dist/ionic/p-3e6b47e8.system.entry.js +4 -0
  1388. package/dist/ionic/p-3f5179b5.entry.js +4 -0
  1389. package/dist/ionic/p-40f68333.system.js +4 -0
  1390. package/dist/ionic/p-4155f352.system.js +4 -0
  1391. package/dist/ionic/{p-b287ab05.js → p-4180a747.js} +1 -1
  1392. package/dist/ionic/p-4233cc1e.system.entry.js +4 -0
  1393. package/dist/ionic/{p-b923f3d7.js → p-42f189f4.js} +1 -1
  1394. package/dist/ionic/p-459d13d5.js +4 -0
  1395. package/dist/ionic/p-4609d030.system.js +4 -0
  1396. package/dist/ionic/p-46d400b4.system.entry.js +4 -0
  1397. package/dist/ionic/{p-cf62e1c8.js → p-47b6ba5b.js} +1 -1
  1398. package/dist/ionic/p-4d67d27a.entry.js +4 -0
  1399. package/dist/ionic/p-4f255d5a.system.js +4 -0
  1400. package/dist/ionic/p-4fb51e61.system.entry.js +4 -0
  1401. package/dist/ionic/{p-c575a7b8.system.entry.js → p-517a9885.system.entry.js} +1 -1
  1402. package/dist/ionic/{p-8083aadb.entry.js → p-51a087d6.entry.js} +1 -1
  1403. package/dist/ionic/p-53ec4f1c.system.js +4 -0
  1404. package/dist/ionic/{p-6f8a95a3.system.entry.js → p-564af202.system.entry.js} +2 -2
  1405. package/dist/ionic/{p-0ac3fb2c.entry.js → p-588fdf40.entry.js} +1 -1
  1406. package/dist/ionic/p-5b365ca7.system.js +4 -0
  1407. package/dist/ionic/{p-c42c86c0.system.entry.js → p-5bebc7b3.system.entry.js} +1 -1
  1408. package/dist/ionic/p-5e4eec2e.entry.js +4 -0
  1409. package/dist/ionic/{p-2a8eeef7.system.js → p-5e745192.system.js} +1 -1
  1410. package/dist/ionic/{p-76378400.js → p-5ecae037.js} +1 -1
  1411. package/dist/ionic/{p-c679fcb5.entry.js → p-5eda1d7d.entry.js} +1 -1
  1412. package/dist/ionic/{p-1289b3b5.system.entry.js → p-6577aea9.system.entry.js} +2 -2
  1413. package/dist/ionic/p-66d633fb.js +4 -0
  1414. package/dist/ionic/{p-0bbede6a.system.entry.js → p-6ad34705.system.entry.js} +1 -1
  1415. package/dist/ionic/p-6de472cb.js +4 -0
  1416. package/dist/ionic/{p-ce7d67a7.system.entry.js → p-6de62649.system.entry.js} +2 -2
  1417. package/dist/ionic/{p-8a2801f1.system.entry.js → p-6e70dd1a.system.entry.js} +1 -1
  1418. package/dist/ionic/{p-61b192a4.system.entry.js → p-6f8dbe92.system.entry.js} +1 -1
  1419. package/dist/ionic/{p-0b00b937.entry.js → p-6fbecbda.entry.js} +1 -1
  1420. package/dist/ionic/p-72f6ff89.js +4 -0
  1421. package/dist/ionic/p-765f4dde.entry.js +4 -0
  1422. package/dist/ionic/p-7798c78a.system.js +4 -0
  1423. package/dist/ionic/p-78aadecb.entry.js +4 -0
  1424. package/dist/ionic/p-790220fd.system.js +4 -0
  1425. package/dist/ionic/p-7d92bf15.system.entry.js +4 -0
  1426. package/dist/ionic/p-80fa068e.entry.js +4 -0
  1427. package/dist/ionic/p-82e3d633.system.js +4 -0
  1428. package/dist/ionic/p-8314281e.system.js +4 -0
  1429. package/dist/ionic/p-8804a472.system.entry.js +4 -0
  1430. package/dist/ionic/p-888db766.system.js +4 -0
  1431. package/dist/ionic/p-88d5fbd3.js +4 -0
  1432. package/dist/ionic/p-88fde0e0.entry.js +4 -0
  1433. package/dist/ionic/p-8985cdb6.system.js +4 -0
  1434. package/dist/ionic/p-8aa1d0b7.system.js +4 -0
  1435. package/dist/ionic/p-8acae6b0.system.entry.js +4 -0
  1436. package/dist/ionic/p-8d69a624.entry.js +4 -0
  1437. package/dist/ionic/p-8f5d30f5.entry.js +4 -0
  1438. package/dist/ionic/{p-beb864e4.system.entry.js → p-908475e7.system.entry.js} +1 -1
  1439. package/dist/ionic/p-91d33c4a.js +4 -0
  1440. package/dist/ionic/p-953009b1.entry.js +4 -0
  1441. package/dist/ionic/{p-eb8dc56f.system.entry.js → p-958d6ebe.system.entry.js} +2 -2
  1442. package/dist/ionic/{p-78030c1f.system.entry.js → p-9709ebd8.system.entry.js} +1 -1
  1443. package/dist/ionic/p-9738fd82.js +5 -0
  1444. package/dist/ionic/p-979d4f5c.system.js +4 -0
  1445. package/dist/ionic/{p-c4a5de01.entry.js → p-98f3d827.entry.js} +1 -1
  1446. package/dist/ionic/p-9b7f0b0f.entry.js +4 -0
  1447. package/dist/ionic/p-9e447eb1.system.js +4 -0
  1448. package/dist/ionic/p-9eec42cc.system.entry.js +4 -0
  1449. package/dist/ionic/p-9f6ee2c0.system.entry.js +4 -0
  1450. package/dist/ionic/p-a0bb7b92.system.entry.js +4 -0
  1451. package/dist/ionic/p-a0d7bb5e.system.js +4 -0
  1452. package/dist/ionic/p-a1987850.entry.js +4 -0
  1453. package/dist/ionic/{p-8209372c.entry.js → p-a3277a67.entry.js} +1 -1
  1454. package/dist/ionic/{p-4e6e43c1.entry.js → p-a4afcc88.entry.js} +1 -1
  1455. package/dist/ionic/p-a9978d08.entry.js +4 -0
  1456. package/dist/ionic/p-ada96dd0.system.entry.js +4 -0
  1457. package/dist/ionic/p-afd6ca9d.entry.js +4 -0
  1458. package/dist/ionic/p-b3b3efba.system.entry.js +4 -0
  1459. package/dist/ionic/p-b4a51c42.system.js +4 -0
  1460. package/dist/ionic/p-b56d0866.system.entry.js +4 -0
  1461. package/dist/ionic/{p-4e50b8d1.entry.js → p-b5f9f14c.entry.js} +1 -1
  1462. package/dist/ionic/{p-eab10949.system.entry.js → p-b6f5e4f2.system.entry.js} +1 -1
  1463. package/dist/ionic/p-b6f9d32a.entry.js +4 -0
  1464. package/dist/ionic/p-b7010c69.system.entry.js +4 -0
  1465. package/dist/ionic/{p-181b7c2a.js → p-c3c3333a.js} +1 -1
  1466. package/dist/ionic/p-c468af8a.system.js +4 -0
  1467. package/dist/ionic/p-c61cc894.js +4 -0
  1468. package/dist/ionic/p-c7c8429a.system.js +4 -0
  1469. package/dist/ionic/p-c847fb35.system.entry.js +4 -0
  1470. package/dist/ionic/{p-e0f52215.system.entry.js → p-c91ccbfa.system.entry.js} +1 -1
  1471. package/dist/ionic/p-c9a21dfd.system.entry.js +4 -0
  1472. package/dist/ionic/p-cabad15b.system.js +4 -0
  1473. package/dist/ionic/{p-8c1805f4.system.entry.js → p-caf21b46.system.entry.js} +1 -1
  1474. package/dist/ionic/p-cce9f61a.system.entry.js +4 -0
  1475. package/dist/ionic/{p-de68588d.js → p-cdbeaadc.js} +1 -1
  1476. package/dist/ionic/{p-108f9d49.entry.js → p-cfe57b1b.entry.js} +1 -1
  1477. package/dist/ionic/p-d032f825.system.entry.js +4 -0
  1478. package/dist/ionic/{p-31119a15.entry.js → p-d37b441e.entry.js} +1 -1
  1479. package/dist/ionic/p-d3b030b8.system.js +5 -0
  1480. package/dist/ionic/p-d51674c5.system.js +4 -0
  1481. package/dist/ionic/p-d8d84afa.system.js +4 -0
  1482. package/dist/ionic/p-dc6af8e9.entry.js +4 -0
  1483. package/dist/ionic/{p-3818f63f.entry.js → p-ddb30596.entry.js} +1 -1
  1484. package/dist/ionic/p-ddbb2d5b.system.js +4 -0
  1485. package/dist/ionic/p-de6f8b28.system.js +4 -0
  1486. package/dist/ionic/p-de756e5c.js +4 -0
  1487. package/dist/ionic/p-dee7c1d0.system.entry.js +4 -0
  1488. package/dist/ionic/{p-e0f0d55f.system.js → p-e24ce1e5.system.js} +1 -1
  1489. package/dist/ionic/p-e3584231.system.js +4 -0
  1490. package/dist/ionic/{p-c4f2dce7.system.js → p-e673a0a2.system.js} +1 -1
  1491. package/dist/ionic/p-e6d68e02.system.entry.js +4 -0
  1492. package/dist/ionic/{p-012952cd.system.entry.js → p-e7ea9815.system.entry.js} +2 -2
  1493. package/dist/ionic/{p-db1a1e00.entry.js → p-e94c392d.entry.js} +1 -1
  1494. package/dist/ionic/{p-a04bfada.entry.js → p-ea69616e.entry.js} +1 -1
  1495. package/dist/ionic/p-eef72e06.js +4 -0
  1496. package/dist/ionic/p-ef126ae8.system.entry.js +4 -0
  1497. package/dist/ionic/p-f0445d82.system.entry.js +4 -0
  1498. package/dist/ionic/p-f233f1e0.system.js +4 -0
  1499. package/dist/ionic/p-f5d2dc9b.js +4 -0
  1500. package/dist/ionic/p-f656e032.system.entry.js +4 -0
  1501. package/dist/ionic/p-f70970cf.js +4 -0
  1502. package/dist/ionic/p-f8a5bb89.entry.js +4 -0
  1503. package/dist/ionic/p-fba0a6e7.system.entry.js +4 -0
  1504. package/dist/ionic/p-feae5133.entry.js +4 -0
  1505. package/dist/ionic/p-ff4b7e40.system.js +4 -0
  1506. package/dist/types/components/accordion/accordion.d.ts +62 -62
  1507. package/dist/types/components/accordion-group/accordion-group-interface.d.ts +3 -3
  1508. package/dist/types/components/accordion-group/accordion-group.d.ts +76 -76
  1509. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +25 -25
  1510. package/dist/types/components/action-sheet/action-sheet.d.ts +149 -149
  1511. package/dist/types/components/action-sheet/test/basic/fixture.d.ts +7 -7
  1512. package/dist/types/components/alert/alert-interface.d.ts +45 -45
  1513. package/dist/types/components/alert/alert.d.ts +181 -181
  1514. package/dist/types/components/app/app.d.ts +15 -15
  1515. package/dist/types/components/avatar/avatar.d.ts +1 -1
  1516. package/dist/types/components/back-button/back-button.d.ts +41 -41
  1517. package/dist/types/components/backdrop/backdrop.d.ts +22 -22
  1518. package/dist/types/components/badge/badge.d.ts +7 -7
  1519. package/dist/types/components/breadcrumb/breadcrumb-interface.d.ts +4 -4
  1520. package/dist/types/components/breadcrumb/breadcrumb.d.ts +87 -87
  1521. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +39 -39
  1522. package/dist/types/components/button/button.d.ts +121 -121
  1523. package/dist/types/components/buttons/buttons.d.ts +14 -14
  1524. package/dist/types/components/card/card.d.ts +57 -57
  1525. package/dist/types/components/card-content/card-content.d.ts +1 -1
  1526. package/dist/types/components/card-header/card-header.d.ts +13 -13
  1527. package/dist/types/components/card-subtitle/card-subtitle.d.ts +7 -7
  1528. package/dist/types/components/card-title/card-title.d.ts +7 -7
  1529. package/dist/types/components/checkbox/checkbox-interface.d.ts +4 -4
  1530. package/dist/types/components/checkbox/checkbox.d.ts +112 -111
  1531. package/dist/types/components/chip/chip.d.ts +15 -15
  1532. package/dist/types/components/col/col.d.ts +128 -128
  1533. package/dist/types/components/content/content-interface.d.ts +6 -6
  1534. package/dist/types/components/content/content.d.ts +129 -129
  1535. package/dist/types/components/datetime/datetime-interface.d.ts +15 -15
  1536. package/dist/types/components/datetime/datetime.d.ts +407 -407
  1537. package/dist/types/components/datetime/utils/data.d.ts +11 -11
  1538. package/dist/types/components/datetime/utils/manipulation.d.ts +25 -25
  1539. package/dist/types/components/datetime/utils/state.d.ts +8 -8
  1540. package/dist/types/components/datetime-button/datetime-button.d.ts +59 -59
  1541. package/dist/types/components/fab/fab.d.ts +33 -33
  1542. package/dist/types/components/fab-button/fab-button.d.ts +88 -88
  1543. package/dist/types/components/fab-list/fab-list.d.ts +11 -11
  1544. package/dist/types/components/footer/footer.d.ts +27 -27
  1545. package/dist/types/components/grid/grid.d.ts +5 -5
  1546. package/dist/types/components/header/header.d.ts +31 -31
  1547. package/dist/types/components/header/header.utils.d.ts +7 -7
  1548. package/dist/types/components/img/img.d.ts +30 -30
  1549. package/dist/types/components/infinite-scroll/infinite-scroll-interface.d.ts +1 -1
  1550. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +65 -58
  1551. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +23 -23
  1552. package/dist/types/components/input/input-interface.d.ts +6 -6
  1553. package/dist/types/components/input/input.d.ts +321 -315
  1554. package/dist/types/components/item/item.d.ts +111 -111
  1555. package/dist/types/components/item-divider/item-divider.d.ts +16 -16
  1556. package/dist/types/components/item-group/item-group.d.ts +1 -1
  1557. package/dist/types/components/item-option/item-option.d.ts +44 -44
  1558. package/dist/types/components/item-options/item-options.d.ts +13 -13
  1559. package/dist/types/components/item-sliding/item-sliding-interface.d.ts +1 -1
  1560. package/dist/types/components/item-sliding/item-sliding.d.ts +75 -75
  1561. package/dist/types/components/label/label.d.ts +30 -30
  1562. package/dist/types/components/list/list.d.ts +17 -17
  1563. package/dist/types/components/list-header/list-header.d.ts +11 -11
  1564. package/dist/types/components/loading/loading-interface.d.ts +16 -16
  1565. package/dist/types/components/loading/loading.d.ts +152 -152
  1566. package/dist/types/components/menu/menu-interface.d.ts +39 -39
  1567. package/dist/types/components/menu/menu.d.ts +140 -140
  1568. package/dist/types/components/menu-button/menu-button.d.ts +30 -30
  1569. package/dist/types/components/menu-toggle/menu-toggle.d.ts +21 -21
  1570. package/dist/types/components/modal/animations/sheet.d.ts +4 -4
  1571. package/dist/types/components/modal/gestures/sheet.d.ts +30 -30
  1572. package/dist/types/components/modal/gestures/swipe-to-close.d.ts +1 -1
  1573. package/dist/types/components/modal/modal-interface.d.ts +27 -27
  1574. package/dist/types/components/modal/modal.d.ts +265 -265
  1575. package/dist/types/components/modal/test/fixtures.d.ts +7 -7
  1576. package/dist/types/components/nav/nav-interface.d.ts +40 -40
  1577. package/dist/types/components/nav/nav.d.ts +247 -247
  1578. package/dist/types/components/nav/view-controller.d.ts +13 -13
  1579. package/dist/types/components/nav-link/nav-link.d.ts +19 -19
  1580. package/dist/types/components/note/note.d.ts +7 -7
  1581. package/dist/types/components/picker/picker-interface.d.ts +43 -43
  1582. package/dist/types/components/picker/picker.d.ts +149 -149
  1583. package/dist/types/components/picker-column/picker-column.d.ts +39 -39
  1584. package/dist/types/components/picker-column-internal/picker-column-internal-interfaces.d.ts +3 -3
  1585. package/dist/types/components/picker-column-internal/picker-column-internal.d.ts +93 -89
  1586. package/dist/types/components/picker-internal/picker-internal-interfaces.d.ts +4 -4
  1587. package/dist/types/components/picker-internal/picker-internal.d.ts +94 -94
  1588. package/dist/types/components/popover/popover-interface.d.ts +26 -26
  1589. package/dist/types/components/popover/popover.d.ts +279 -279
  1590. package/dist/types/components/popover/test/fixture.d.ts +5 -5
  1591. package/dist/types/components/popover/utils.d.ts +25 -25
  1592. package/dist/types/components/progress-bar/progress-bar.d.ts +27 -27
  1593. package/dist/types/components/radio/radio.d.ts +100 -99
  1594. package/dist/types/components/radio-group/radio-group-interface.d.ts +5 -4
  1595. package/dist/types/components/radio-group/radio-group.d.ts +51 -44
  1596. package/dist/types/components/radio-group/test/fixtures.d.ts +5 -5
  1597. package/dist/types/components/range/range-interface.d.ts +7 -7
  1598. package/dist/types/components/range/range.d.ts +193 -192
  1599. package/dist/types/components/refresher/refresher-interface.d.ts +3 -3
  1600. package/dist/types/components/refresher/refresher.d.ts +132 -132
  1601. package/dist/types/components/refresher-content/refresher-content.d.ts +44 -44
  1602. package/dist/types/components/reorder/reorder.d.ts +3 -3
  1603. package/dist/types/components/reorder-group/reorder-group-interface.d.ts +5 -5
  1604. package/dist/types/components/reorder-group/reorder-group.d.ts +53 -53
  1605. package/dist/types/components/ripple-effect/ripple-effect.d.ts +20 -20
  1606. package/dist/types/components/route/route-interface.d.ts +1 -1
  1607. package/dist/types/components/route/route.d.ts +43 -43
  1608. package/dist/types/components/route-redirect/route-redirect.d.ts +33 -33
  1609. package/dist/types/components/router/router.d.ts +74 -73
  1610. package/dist/types/components/router/utils/dom.d.ts +2 -2
  1611. package/dist/types/components/router/utils/interface.d.ts +31 -31
  1612. package/dist/types/components/router/utils/matching.d.ts +6 -6
  1613. package/dist/types/components/router-link/router-link.d.ts +34 -34
  1614. package/dist/types/components/router-outlet/router-outlet.d.ts +41 -41
  1615. package/dist/types/components/row/row.d.ts +1 -1
  1616. package/dist/types/components/searchbar/searchbar-interface.d.ts +6 -6
  1617. package/dist/types/components/searchbar/searchbar.d.ts +235 -233
  1618. package/dist/types/components/segment/segment-interface.d.ts +3 -3
  1619. package/dist/types/components/segment/segment.d.ts +82 -82
  1620. package/dist/types/components/segment-button/segment-button.d.ts +36 -36
  1621. package/dist/types/components/select/select-interface.d.ts +3 -3
  1622. package/dist/types/components/select/select.d.ts +238 -233
  1623. package/dist/types/components/select-option/select-option.d.ts +11 -11
  1624. package/dist/types/components/select-popover/select-popover-interface.d.ts +8 -8
  1625. package/dist/types/components/select-popover/select-popover.d.ts +39 -39
  1626. package/dist/types/components/select-popover/test/fixtures.d.ts +12 -12
  1627. package/dist/types/components/skeleton-text/skeleton-text.d.ts +15 -7
  1628. package/dist/types/components/spinner/spinner-configs.d.ts +96 -96
  1629. package/dist/types/components/spinner/spinner-interface.d.ts +14 -14
  1630. package/dist/types/components/spinner/spinner.d.ts +21 -21
  1631. package/dist/types/components/split-pane/split-pane.d.ts +33 -33
  1632. package/dist/types/components/tab/tab.d.ts +21 -21
  1633. package/dist/types/components/tab-bar/tab-bar-interface.d.ts +4 -4
  1634. package/dist/types/components/tab-bar/tab-bar.d.ts +34 -34
  1635. package/dist/types/components/tab-button/tab-button.d.ts +56 -56
  1636. package/dist/types/components/tabs/tabs-interface.d.ts +4 -4
  1637. package/dist/types/components/tabs/tabs.d.ts +52 -52
  1638. package/dist/types/components/text/text.d.ts +7 -7
  1639. package/dist/types/components/textarea/textarea-interface.d.ts +6 -6
  1640. package/dist/types/components/textarea/textarea.d.ts +275 -269
  1641. package/dist/types/components/thumbnail/thumbnail.d.ts +1 -1
  1642. package/dist/types/components/title/title.d.ts +21 -21
  1643. package/dist/types/components/toast/animations/utils.d.ts +15 -4
  1644. package/dist/types/components/toast/gestures/swipe-to-dismiss.d.ts +9 -0
  1645. package/dist/types/components/toast/toast-interface.d.ts +37 -35
  1646. package/dist/types/components/toast/toast.d.ts +241 -214
  1647. package/dist/types/components/toggle/toggle-interface.d.ts +4 -4
  1648. package/dist/types/components/toggle/toggle.d.ts +117 -116
  1649. package/dist/types/components/toolbar/toolbar.d.ts +11 -11
  1650. package/dist/types/components.d.ts +679 -16
  1651. package/dist/types/global/config.d.ts +6 -6
  1652. package/dist/types/interface.d.ts +1 -5
  1653. package/dist/types/jest.d.ts +5 -0
  1654. package/dist/types/stencil-public-runtime.d.ts +10 -0
  1655. package/dist/types/utils/animation/animation-interface.d.ts +205 -205
  1656. package/dist/types/utils/browser/index.d.ts +17 -8
  1657. package/dist/types/utils/config.d.ts +175 -175
  1658. package/dist/types/utils/content/index.d.ts +1 -1
  1659. package/dist/types/utils/element-interface.d.ts +6 -6
  1660. package/dist/types/utils/focus-visible.d.ts +5 -4
  1661. package/dist/types/utils/forms/compare-with-utils.d.ts +18 -0
  1662. package/dist/types/utils/forms/form-controller.d.ts +3 -3
  1663. package/dist/types/utils/forms/index.d.ts +1 -0
  1664. package/dist/types/utils/forms/notch-controller.d.ts +2 -2
  1665. package/dist/types/utils/framework-delegate.d.ts +3 -3
  1666. package/dist/types/utils/gesture/gesture-controller.d.ts +49 -49
  1667. package/dist/types/utils/gesture/index.d.ts +31 -31
  1668. package/dist/types/utils/gesture/listener.d.ts +2 -2
  1669. package/dist/types/utils/gesture/pointer-events.d.ts +12 -12
  1670. package/dist/types/utils/gesture/recognizers.d.ts +4 -4
  1671. package/dist/types/utils/hardware-back-button.d.ts +4 -0
  1672. package/dist/types/utils/helpers.d.ts +8 -8
  1673. package/dist/types/utils/input-shims/hacks/scroll-data.d.ts +4 -4
  1674. package/dist/types/utils/keyboard/keyboard-controller.d.ts +3 -3
  1675. package/dist/types/utils/lock-controller.d.ts +1 -1
  1676. package/dist/types/utils/native/haptic.d.ts +38 -38
  1677. package/dist/types/utils/native/keyboard.d.ts +29 -29
  1678. package/dist/types/utils/native/native-interface.d.ts +15 -15
  1679. package/dist/types/utils/native/status-bar.d.ts +8 -8
  1680. package/dist/types/utils/overlays-interface.d.ts +27 -27
  1681. package/dist/types/utils/overlays.d.ts +29 -28
  1682. package/dist/types/utils/platform.d.ts +16 -16
  1683. package/dist/types/utils/sanitization/index.d.ts +2 -2
  1684. package/dist/types/utils/slot-mutation-controller.d.ts +3 -3
  1685. package/dist/types/utils/test/platform.utils.d.ts +67 -67
  1686. package/dist/types/utils/test/playwright/generator.d.ts +16 -7
  1687. package/dist/types/utils/test/playwright/matchers/index.d.ts +3 -3
  1688. package/dist/types/utils/test/playwright/matchers/toHaveReceivedEvent.d.ts +2 -2
  1689. package/dist/types/utils/test/playwright/matchers/toHaveReceivedEventDetail.d.ts +2 -2
  1690. package/dist/types/utils/test/playwright/matchers/toHaveReceivedEventTimes.d.ts +2 -2
  1691. package/dist/types/utils/test/playwright/page/event-spy.d.ts +15 -15
  1692. package/dist/types/utils/test/playwright/page/utils/goto.d.ts +3 -3
  1693. package/dist/types/utils/test/playwright/page/utils/locator.d.ts +15 -15
  1694. package/dist/types/utils/test/playwright/playwright-declarations.d.ts +92 -92
  1695. package/dist/types/utils/test/playwright/playwright-page.d.ts +3 -3
  1696. package/dist/types/utils/test/playwright/viewports/index.d.ts +12 -12
  1697. package/dist/types/utils/test/press-keys.d.ts +14 -14
  1698. package/dist/types/utils/transition/index.d.ts +6 -6
  1699. package/dist/types/utils/watch-options.d.ts +9 -1
  1700. package/hydrate/index.d.ts +1 -1
  1701. package/hydrate/index.js +30673 -29948
  1702. package/package.json +10 -12
  1703. package/dist/cjs/animation-c8bdd3c7.js +0 -1046
  1704. package/dist/cjs/button-active-c0ff1915.js +0 -69
  1705. package/dist/cjs/config-d5882735.js +0 -199
  1706. package/dist/cjs/cubic-bezier-6b9222ad.js +0 -92
  1707. package/dist/cjs/data-c8d21093.js +0 -1622
  1708. package/dist/cjs/focus-visible-a7545600.js +0 -77
  1709. package/dist/cjs/form-controller-5e223b54.js +0 -70
  1710. package/dist/cjs/framework-delegate-c0873a6f.js +0 -144
  1711. package/dist/cjs/gesture-controller-b46721be.js +0 -197
  1712. package/dist/cjs/haptic-678abc9f.js +0 -212
  1713. package/dist/cjs/hardware-back-button-b67c8e75.js +0 -76
  1714. package/dist/cjs/helpers-ea4ccbcb.js +0 -441
  1715. package/dist/cjs/index-0ee995e4.js +0 -459
  1716. package/dist/cjs/index-306a7476.js +0 -32
  1717. package/dist/cjs/index-5e7529f6.js +0 -310
  1718. package/dist/cjs/index-9f379eaa.js +0 -198
  1719. package/dist/cjs/index-eccba000.js +0 -243
  1720. package/dist/cjs/input-shims-da7dc0de.js +0 -588
  1721. package/dist/cjs/input.utils-0fe3097c.js +0 -137
  1722. package/dist/cjs/ionic-global-fb752503.js +0 -230
  1723. package/dist/cjs/ios.transition-5af5991e.js +0 -654
  1724. package/dist/cjs/keyboard-controller-50beb83a.js +0 -167
  1725. package/dist/cjs/keyboard-fd7db491.js +0 -81
  1726. package/dist/cjs/lock-controller-4ae2eb59.js +0 -40
  1727. package/dist/cjs/md.transition-1e740a6a.js +0 -59
  1728. package/dist/cjs/notch-controller-f4f6af5d.js +0 -155
  1729. package/dist/cjs/overlays-1a734051.js +0 -714
  1730. package/dist/cjs/spinner-configs-f7b5105b.js +0 -147
  1731. package/dist/cjs/status-tap-778e8054.js +0 -42
  1732. package/dist/cjs/swipe-back-7e843e77.js +0 -81
  1733. package/dist/cjs/theme-fbc56b3b.js +0 -48
  1734. package/dist/cjs/watch-options-f3f77e54.js +0 -38
  1735. package/dist/collection/components/item/test/text/item.e2e.js +0 -14
  1736. package/dist/esm/animation-92066c62.js +0 -1044
  1737. package/dist/esm/button-active-d926d4f4.js +0 -67
  1738. package/dist/esm/capacitor-b4979570.js +0 -13
  1739. package/dist/esm/config-96c9ace3.js +0 -193
  1740. package/dist/esm/cubic-bezier-66542bc5.js +0 -90
  1741. package/dist/esm/data-44d9e816.js +0 -1575
  1742. package/dist/esm/focus-visible-85493433.js +0 -75
  1743. package/dist/esm/form-controller-ed77647a.js +0 -68
  1744. package/dist/esm/framework-delegate-aa433dea.js +0 -140
  1745. package/dist/esm/gesture-controller-0fa396c4.js +0 -195
  1746. package/dist/esm/haptic-1243b917.js +0 -206
  1747. package/dist/esm/hardware-back-button-39299f84.js +0 -71
  1748. package/dist/esm/helpers-3379ba19.js +0 -418
  1749. package/dist/esm/index-7a14ecec.js +0 -29
  1750. package/dist/esm/index-a09eac70.js +0 -231
  1751. package/dist/esm/index-df55802d.js +0 -308
  1752. package/dist/esm/index-f0cc4e14.js +0 -196
  1753. package/dist/esm/index-ff313b19.js +0 -457
  1754. package/dist/esm/input-shims-d78a3c77.js +0 -586
  1755. package/dist/esm/input.utils-ec063df4.js +0 -134
  1756. package/dist/esm/ionic-global-246ca78f.js +0 -224
  1757. package/dist/esm/ios.transition-4d1322d6.js +0 -651
  1758. package/dist/esm/keyboard-b063f012.js +0 -79
  1759. package/dist/esm/keyboard-b551279d.js +0 -146
  1760. package/dist/esm/keyboard-controller-0c2dce71.js +0 -165
  1761. package/dist/esm/lock-controller-e8c6c051.js +0 -38
  1762. package/dist/esm/md.transition-66b425d0.js +0 -57
  1763. package/dist/esm/notch-controller-8c9c0e54.js +0 -153
  1764. package/dist/esm/overlays-cec6bac8.js +0 -692
  1765. package/dist/esm/spinner-configs-d09fbbbb.js +0 -145
  1766. package/dist/esm/status-tap-9aeeaca5.js +0 -40
  1767. package/dist/esm/swipe-back-cd4295f3.js +0 -79
  1768. package/dist/esm/theme-17531cdf.js +0 -43
  1769. package/dist/esm/watch-options-355a920a.js +0 -36
  1770. package/dist/esm-es5/animation-92066c62.js +0 -4
  1771. package/dist/esm-es5/app-globals-ec816a70.js +0 -4
  1772. package/dist/esm-es5/config-96c9ace3.js +0 -4
  1773. package/dist/esm-es5/cubic-bezier-66542bc5.js +0 -4
  1774. package/dist/esm-es5/data-44d9e816.js +0 -4
  1775. package/dist/esm-es5/focus-visible-85493433.js +0 -4
  1776. package/dist/esm-es5/form-controller-ed77647a.js +0 -4
  1777. package/dist/esm-es5/framework-delegate-aa433dea.js +0 -4
  1778. package/dist/esm-es5/hardware-back-button-39299f84.js +0 -4
  1779. package/dist/esm-es5/helpers-3379ba19.js +0 -4
  1780. package/dist/esm-es5/index-746a238e.js +0 -4
  1781. package/dist/esm-es5/index-b49b173c.js +0 -5
  1782. package/dist/esm-es5/index-df55802d.js +0 -4
  1783. package/dist/esm-es5/index-f0cc4e14.js +0 -4
  1784. package/dist/esm-es5/index-ff313b19.js +0 -4
  1785. package/dist/esm-es5/input-shims-d78a3c77.js +0 -4
  1786. package/dist/esm-es5/input.utils-ec063df4.js +0 -4
  1787. package/dist/esm-es5/ionic-global-246ca78f.js +0 -4
  1788. package/dist/esm-es5/keyboard-controller-0c2dce71.js +0 -4
  1789. package/dist/esm-es5/md.transition-66b425d0.js +0 -4
  1790. package/dist/esm-es5/notch-controller-8c9c0e54.js +0 -4
  1791. package/dist/esm-es5/overlays-cec6bac8.js +0 -4
  1792. package/dist/esm-es5/spinner-configs-d09fbbbb.js +0 -4
  1793. package/dist/esm-es5/status-tap-9aeeaca5.js +0 -4
  1794. package/dist/esm-es5/swipe-back-cd4295f3.js +0 -4
  1795. package/dist/esm-es5/watch-options-355a920a.js +0 -4
  1796. package/dist/ionic/p-015187e5.system.js +0 -4
  1797. package/dist/ionic/p-06ac429a.js +0 -5
  1798. package/dist/ionic/p-091c8792.system.js +0 -4
  1799. package/dist/ionic/p-0b7c25ee.system.entry.js +0 -4
  1800. package/dist/ionic/p-0f1f59da.system.entry.js +0 -4
  1801. package/dist/ionic/p-19fba51c.entry.js +0 -4
  1802. package/dist/ionic/p-1a463b1e.system.entry.js +0 -4
  1803. package/dist/ionic/p-1edb53a1.entry.js +0 -4
  1804. package/dist/ionic/p-1f260a7b.entry.js +0 -4
  1805. package/dist/ionic/p-1f81b5be.entry.js +0 -4
  1806. package/dist/ionic/p-276afddd.js +0 -4
  1807. package/dist/ionic/p-28ea45b9.js +0 -4
  1808. package/dist/ionic/p-29073efe.system.entry.js +0 -4
  1809. package/dist/ionic/p-2b89ea1b.system.js +0 -4
  1810. package/dist/ionic/p-303bf1e8.system.entry.js +0 -4
  1811. package/dist/ionic/p-32083c2d.js +0 -4
  1812. package/dist/ionic/p-33a8349a.system.entry.js +0 -4
  1813. package/dist/ionic/p-34259245.system.entry.js +0 -4
  1814. package/dist/ionic/p-35b26732.entry.js +0 -4
  1815. package/dist/ionic/p-35e399bd.entry.js +0 -4
  1816. package/dist/ionic/p-3632220b.system.js +0 -4
  1817. package/dist/ionic/p-38089641.entry.js +0 -4
  1818. package/dist/ionic/p-38c5fe2b.system.entry.js +0 -4
  1819. package/dist/ionic/p-3a58e3a4.system.entry.js +0 -4
  1820. package/dist/ionic/p-3d726a67.system.js +0 -4
  1821. package/dist/ionic/p-3f3da911.system.entry.js +0 -4
  1822. package/dist/ionic/p-41477ad9.system.js +0 -4
  1823. package/dist/ionic/p-4215652f.system.entry.js +0 -4
  1824. package/dist/ionic/p-446230d7.js +0 -4
  1825. package/dist/ionic/p-44bc8b45.system.js +0 -4
  1826. package/dist/ionic/p-479cdbf8.system.js +0 -4
  1827. package/dist/ionic/p-4f97c112.entry.js +0 -4
  1828. package/dist/ionic/p-54200074.entry.js +0 -4
  1829. package/dist/ionic/p-54f6cd27.system.entry.js +0 -4
  1830. package/dist/ionic/p-56dc022e.system.js +0 -4
  1831. package/dist/ionic/p-572cce26.system.entry.js +0 -4
  1832. package/dist/ionic/p-5b976d70.entry.js +0 -4
  1833. package/dist/ionic/p-5bf16a18.js +0 -4
  1834. package/dist/ionic/p-613d4042.system.js +0 -4
  1835. package/dist/ionic/p-629aa3fd.system.js +0 -5
  1836. package/dist/ionic/p-62e7d4fa.js +0 -4
  1837. package/dist/ionic/p-64475ab5.system.js +0 -4
  1838. package/dist/ionic/p-673846f6.entry.js +0 -4
  1839. package/dist/ionic/p-6ce0a709.system.entry.js +0 -4
  1840. package/dist/ionic/p-755b2917.system.js +0 -4
  1841. package/dist/ionic/p-772f6c84.system.js +0 -4
  1842. package/dist/ionic/p-815c2fba.system.js +0 -4
  1843. package/dist/ionic/p-818b2e75.entry.js +0 -4
  1844. package/dist/ionic/p-81c818e7.js +0 -4
  1845. package/dist/ionic/p-81ef7437.system.entry.js +0 -4
  1846. package/dist/ionic/p-87411e39.system.js +0 -4
  1847. package/dist/ionic/p-8b1be026.js +0 -4
  1848. package/dist/ionic/p-8c15eda7.system.js +0 -4
  1849. package/dist/ionic/p-8cf94fc1.js +0 -4
  1850. package/dist/ionic/p-8d6728a1.system.entry.js +0 -4
  1851. package/dist/ionic/p-8e24ebbc.js +0 -4
  1852. package/dist/ionic/p-8f01a9a2.system.js +0 -4
  1853. package/dist/ionic/p-939e0fa1.system.js +0 -4
  1854. package/dist/ionic/p-9ab6f3e6.system.js +0 -4
  1855. package/dist/ionic/p-9dc85536.system.entry.js +0 -4
  1856. package/dist/ionic/p-9e852ff1.system.js +0 -4
  1857. package/dist/ionic/p-9f2e0db9.js +0 -4
  1858. package/dist/ionic/p-a164e3ab.system.entry.js +0 -4
  1859. package/dist/ionic/p-a200a7fc.entry.js +0 -4
  1860. package/dist/ionic/p-a34fc12e.system.entry.js +0 -4
  1861. package/dist/ionic/p-a9c32660.entry.js +0 -4
  1862. package/dist/ionic/p-ab4cff27.system.js +0 -4
  1863. package/dist/ionic/p-ad48dd13.system.js +0 -4
  1864. package/dist/ionic/p-afb6658f.entry.js +0 -4
  1865. package/dist/ionic/p-b132c2c0.system.js +0 -4
  1866. package/dist/ionic/p-b24aa895.js +0 -4
  1867. package/dist/ionic/p-b3c68723.system.js +0 -4
  1868. package/dist/ionic/p-b4b4bb29.system.js +0 -4
  1869. package/dist/ionic/p-b61a2fa0.system.entry.js +0 -4
  1870. package/dist/ionic/p-b753ec0d.system.entry.js +0 -4
  1871. package/dist/ionic/p-b8c3f071.system.js +0 -4
  1872. package/dist/ionic/p-b912e055.system.js +0 -4
  1873. package/dist/ionic/p-bb055450.system.entry.js +0 -4
  1874. package/dist/ionic/p-bba2ce59.system.js +0 -4
  1875. package/dist/ionic/p-c105bd36.entry.js +0 -4
  1876. package/dist/ionic/p-c44fe9fd.js +0 -4
  1877. package/dist/ionic/p-c49672d8.system.js +0 -4
  1878. package/dist/ionic/p-c87827ca.system.js +0 -4
  1879. package/dist/ionic/p-c8c9d699.system.entry.js +0 -4
  1880. package/dist/ionic/p-c92f0a6d.system.entry.js +0 -4
  1881. package/dist/ionic/p-c956e82c.system.entry.js +0 -4
  1882. package/dist/ionic/p-ca5cf574.js +0 -4
  1883. package/dist/ionic/p-cc196b34.js +0 -4
  1884. package/dist/ionic/p-ccdcb022.system.js +0 -4
  1885. package/dist/ionic/p-cd2d17c3.system.entry.js +0 -4
  1886. package/dist/ionic/p-cf0c93e3.system.entry.js +0 -4
  1887. package/dist/ionic/p-d1de1188.js +0 -4
  1888. package/dist/ionic/p-d35217be.entry.js +0 -4
  1889. package/dist/ionic/p-d6e53e66.entry.js +0 -4
  1890. package/dist/ionic/p-e1d5752d.system.entry.js +0 -4
  1891. package/dist/ionic/p-e25cb483.entry.js +0 -4
  1892. package/dist/ionic/p-e65ebe96.entry.js +0 -4
  1893. package/dist/ionic/p-e74faf2a.entry.js +0 -4
  1894. package/dist/ionic/p-eac263dd.entry.js +0 -4
  1895. package/dist/ionic/p-eb7d0922.js +0 -4
  1896. package/dist/ionic/p-f4309ac7.entry.js +0 -4
  1897. package/dist/ionic/p-f5bf698b.entry.js +0 -4
  1898. package/dist/ionic/p-f7566bad.entry.js +0 -4
  1899. package/dist/ionic/p-f9fa802c.system.entry.js +0 -4
  1900. package/dist/ionic/p-fa8d4788.system.js +0 -4
  1901. package/dist/ionic/p-ff5a10f9.system.js +0 -4
  1902. /package/dist/esm-es5/{index-595d62c9.js → index-9b0d46f4.js} +0 -0
  1903. /package/dist/esm-es5/{index-7a14ecec.js → index-a5d50daf.js} +0 -0
  1904. /package/dist/esm-es5/{lock-controller-e8c6c051.js → lock-controller-316928be.js} +0 -0
  1905. /package/dist/esm-es5/{theme-17531cdf.js → theme-01f3f29c.js} +0 -0
  1906. /package/dist/ionic/{p-1b8e1d03.js → p-06fee233.js} +0 -0
  1907. /package/dist/ionic/{p-63eb0acd.js → p-23a9d086.js} +0 -0
  1908. /package/dist/ionic/{p-7c2bac85.js → p-2408c236.js} +0 -0
  1909. /package/dist/ionic/{p-7b021525.js → p-41d5544e.js} +0 -0
  1910. /package/dist/ionic/{p-1d072d3d.js → p-47794def.js} +0 -0
  1911. /package/dist/ionic/{p-185e427e.js → p-4b3623da.js} +0 -0
  1912. /package/dist/ionic/{p-0e94957a.system.js → p-792919fd.system.js} +0 -0
  1913. /package/dist/ionic/{p-b347cfd1.js → p-7b30edcc.js} +0 -0
  1914. /package/dist/ionic/{p-e0b06b65.js → p-bb3615f7.js} +0 -0
  1915. /package/dist/ionic/{p-53b2a46f.js → p-ccd02320.js} +0 -0
  1916. /package/dist/ionic/{p-76fce40e.js → p-d47265c8.js} +0 -0
  1917. /package/dist/ionic/{p-c18d6eac.js → p-f0c2a614.js} +0 -0
  1918. /package/dist/ionic/{p-6dbfe5d4.js → p-fb813dab.js} +0 -0
@@ -1,492 +1,844 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { r as registerInstance, d as createEvent, h, H as Host, f as getElement } from './index-b49b173c.js';
5
- import { E as ENABLE_HTML_CONTENT_DEFAULT, a as sanitizeDOMString } from './config-96c9ace3.js';
6
- import { g as getElementRoot, r as raf } from './helpers-3379ba19.js';
7
- import { c as createLockController } from './lock-controller-e8c6c051.js';
8
- import { p as printIonWarning } from './index-595d62c9.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-cec6bac8.js';
10
- import { g as getClassMap, c as createColorClasses } from './theme-17531cdf.js';
11
- import { c as config, b as getIonMode } from './ionic-global-246ca78f.js';
12
- import { c as createAnimation } from './animation-92066c62.js';
13
- import { w as win } from './index-7a14ecec.js';
14
- import './framework-delegate-aa433dea.js';
15
- import './hardware-back-button-39299f84.js';
4
+ import { r as registerInstance, d as createEvent, h, H as Host, f as getElement } from './index-08d686eb.js';
5
+ import { E as ENABLE_HTML_CONTENT_DEFAULT, a as sanitizeDOMString } from './config-49c88215.js';
6
+ import { g as getElementRoot, r as raf } from './helpers-ae653409.js';
7
+ import { c as createLockController } from './lock-controller-316928be.js';
8
+ import { p as printIonWarning } from './index-9b0d46f4.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-32ef481d.js';
10
+ import { g as getClassMap, c as createColorClasses } from './theme-01f3f29c.js';
11
+ import { c as config, b as getIonMode } from './ionic-global-c0cda98e.js';
12
+ import { c as createAnimation } from './animation-dde8cc0d.js';
13
+ import { w as win } from './index-a5d50daf.js';
14
+ import { createGesture } from './index-2cf77112.js';
15
+ import './framework-delegate-bc1fd82a.js';
16
+ import './hardware-back-button-b2bc76db.js';
17
+ import './gesture-controller-1bf57181.js';
18
+
19
+ /**
20
+ * Calculate the CSS top and bottom position of the toast, to be used
21
+ * as starting points for the animation keyframes.
22
+ *
23
+ * The default animations for both MD and iOS
24
+ * use translateY, which calculates from the
25
+ * top edge of the screen. This behavior impacts
26
+ * how we compute the offset when a toast has
27
+ * position='bottom' since we need to calculate from
28
+ * the bottom edge of the screen instead.
29
+ *
30
+ * @param position The value of the toast's position prop.
31
+ * @param positionAnchor The element the toast should be anchored to,
32
+ * if applicable.
33
+ * @param mode The toast component's mode (md, ios, etc).
34
+ * @param toast A reference to the toast element itself.
35
+ */
36
+ function getAnimationPosition(position, positionAnchor, mode, toast) {
37
+ /**
38
+ * Start with a predefined offset from the edge the toast will be
39
+ * positioned relative to, whether on the screen or anchor element.
40
+ */
41
+ let offset;
42
+ if (mode === 'md') {
43
+ offset = position === 'top' ? 8 : -8;
44
+ }
45
+ else {
46
+ offset = position === 'top' ? 10 : -10;
47
+ }
48
+ /**
49
+ * If positionAnchor is defined, add in the distance from the target
50
+ * screen edge to the target anchor edge. For position="top", the
51
+ * bottom anchor edge is targeted. For position="bottom", the top
52
+ * anchor edge is targeted.
53
+ */
54
+ if (positionAnchor && win) {
55
+ warnIfAnchorIsHidden(positionAnchor, toast);
56
+ const box = positionAnchor.getBoundingClientRect();
57
+ if (position === 'top') {
58
+ offset += box.bottom;
59
+ }
60
+ else if (position === 'bottom') {
61
+ /**
62
+ * Just box.top is the distance from the top edge of the screen
63
+ * to the top edge of the anchor. We want to calculate from the
64
+ * bottom edge of the screen instead.
65
+ */
66
+ offset -= win.innerHeight - box.top;
67
+ }
68
+ /**
69
+ * We don't include safe area here because that should already be
70
+ * accounted for when checking the position of the anchor.
71
+ */
72
+ return {
73
+ top: `${offset}px`,
74
+ bottom: `${offset}px`,
75
+ };
76
+ }
77
+ else {
78
+ return {
79
+ top: `calc(${offset}px + var(--ion-safe-area-top, 0px))`,
80
+ bottom: `calc(${offset}px - var(--ion-safe-area-bottom, 0px))`,
81
+ };
82
+ }
83
+ }
84
+ /**
85
+ * If the anchor element is hidden, getBoundingClientRect()
86
+ * will return all 0s for it, which can cause unexpected
87
+ * results in the position calculation when animating.
88
+ */
89
+ function warnIfAnchorIsHidden(positionAnchor, toast) {
90
+ if (positionAnchor.offsetParent === null) {
91
+ 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);
92
+ }
93
+ }
94
+ /**
95
+ * Returns the top offset required to place
96
+ * the toast in the middle of the screen.
97
+ * Only needed when position="toast".
98
+ * @param toastHeight - The height of the ion-toast element
99
+ * @param wrapperHeight - The height of the .toast-wrapper element
100
+ * inside the toast's shadow root.
101
+ */
102
+ const getOffsetForMiddlePosition = (toastHeight, wrapperHeight) => {
103
+ return Math.floor(toastHeight / 2 - wrapperHeight / 2);
104
+ };
16
105
 
17
106
  /**
18
107
  * iOS Toast Enter Animation
19
108
  */
20
109
  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);
110
+ const baseAnimation = createAnimation();
111
+ const wrapperAnimation = createAnimation();
112
+ const { position, top, bottom } = opts;
113
+ const root = getElementRoot(baseEl);
114
+ const wrapperEl = root.querySelector('.toast-wrapper');
115
+ wrapperAnimation.addElement(wrapperEl);
116
+ switch (position) {
117
+ case 'top':
118
+ wrapperAnimation.fromTo('transform', 'translateY(-100%)', `translateY(${top})`);
119
+ break;
120
+ case 'middle':
121
+ const topPosition = getOffsetForMiddlePosition(baseEl.clientHeight, wrapperEl.clientHeight);
122
+ wrapperEl.style.top = `${topPosition}px`;
123
+ wrapperAnimation.fromTo('opacity', 0.01, 1);
124
+ break;
125
+ default:
126
+ wrapperAnimation.fromTo('transform', 'translateY(100%)', `translateY(${bottom})`);
127
+ break;
128
+ }
129
+ return baseAnimation.easing('cubic-bezier(.155,1.105,.295,1.12)').duration(400).addAnimation(wrapperAnimation);
41
130
  };
42
131
 
43
132
  /**
44
133
  * iOS Toast Leave Animation
45
134
  */
46
135
  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);
136
+ const baseAnimation = createAnimation();
137
+ const wrapperAnimation = createAnimation();
138
+ const { position, top, bottom } = opts;
139
+ const root = getElementRoot(baseEl);
140
+ const wrapperEl = root.querySelector('.toast-wrapper');
141
+ wrapperAnimation.addElement(wrapperEl);
142
+ switch (position) {
143
+ case 'top':
144
+ wrapperAnimation.fromTo('transform', `translateY(${top})`, 'translateY(-100%)');
145
+ break;
146
+ case 'middle':
147
+ wrapperAnimation.fromTo('opacity', 0.99, 0);
148
+ break;
149
+ default:
150
+ wrapperAnimation.fromTo('transform', `translateY(${bottom})`, 'translateY(100%)');
151
+ break;
152
+ }
153
+ return baseAnimation.easing('cubic-bezier(.36,.66,.04,1)').duration(300).addAnimation(wrapperAnimation);
65
154
  };
66
155
 
67
156
  /**
68
157
  * MD Toast Enter Animation
69
158
  */
70
159
  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);
160
+ const baseAnimation = createAnimation();
161
+ const wrapperAnimation = createAnimation();
162
+ const { position, top, bottom } = opts;
163
+ const root = getElementRoot(baseEl);
164
+ const wrapperEl = root.querySelector('.toast-wrapper');
165
+ wrapperAnimation.addElement(wrapperEl);
166
+ switch (position) {
167
+ case 'top':
168
+ wrapperEl.style.setProperty('transform', `translateY(${top})`);
169
+ wrapperAnimation.fromTo('opacity', 0.01, 1);
170
+ break;
171
+ case 'middle':
172
+ const topPosition = getOffsetForMiddlePosition(baseEl.clientHeight, wrapperEl.clientHeight);
173
+ wrapperEl.style.top = `${topPosition}px`;
174
+ wrapperAnimation.fromTo('opacity', 0.01, 1);
175
+ break;
176
+ default:
177
+ wrapperEl.style.setProperty('transform', `translateY(${bottom})`);
178
+ wrapperAnimation.fromTo('opacity', 0.01, 1);
179
+ break;
180
+ }
181
+ return baseAnimation.easing('cubic-bezier(.36,.66,.04,1)').duration(400).addAnimation(wrapperAnimation);
93
182
  };
94
183
 
95
184
  /**
96
185
  * md Toast Leave Animation
97
186
  */
98
187
  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);
188
+ const baseAnimation = createAnimation();
189
+ const wrapperAnimation = createAnimation();
190
+ const root = getElementRoot(baseEl);
191
+ const wrapperEl = root.querySelector('.toast-wrapper');
192
+ wrapperAnimation.addElement(wrapperEl).fromTo('opacity', 0.99, 0);
193
+ return baseAnimation.easing('cubic-bezier(.36,.66,.04,1)').duration(300).addAnimation(wrapperAnimation);
105
194
  };
106
195
 
107
196
  /**
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.
197
+ * Create a gesture that allows the Toast
198
+ * to be swiped to dismiss.
199
+ * @param el - The Toast element
200
+ * @param toastPosition - The last computed position of the Toast. This is computed in the "present" method.
201
+ * @param onDismiss - A callback to fire when the Toast was swiped to dismiss.
121
202
  */
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
- }
203
+ const createSwipeToDismissGesture = (el, toastPosition, onDismiss) => {
204
+ /**
205
+ * Users should swipe on the visible toast wrapper
206
+ * rather than on ion-toast which covers the entire screen.
207
+ * When testing the class instance the inner wrapper will not
208
+ * be defined. As a result, we use a placeholder element in those environments.
209
+ */
210
+ const wrapperEl = getElementRoot(el).querySelector('.toast-wrapper');
211
+ const hostElHeight = el.clientHeight;
212
+ const wrapperElBox = wrapperEl.getBoundingClientRect();
213
+ /**
214
+ * The maximum amount that
215
+ * the toast can be swiped. This should
216
+ * account for the wrapper element's height
217
+ * too so the toast can be swiped offscreen
218
+ * completely.
219
+ */
220
+ let MAX_SWIPE_DISTANCE = 0;
221
+ /**
222
+ * The step value at which a toast
223
+ * is eligible for dismissing via gesture.
224
+ */
225
+ const DISMISS_THRESHOLD = 0.5;
159
226
  /**
160
- * We don't include safe area here because that should already be
161
- * accounted for when checking the position of the anchor.
227
+ * The middle position Toast starts 50% of the way
228
+ * through the animation, so we need to use this
229
+ * as the starting point for our step values.
162
230
  */
163
- return {
164
- top: `${offset}px`,
165
- bottom: `${offset}px`,
231
+ const STEP_OFFSET = el.position === 'middle' ? 0.5 : 0;
232
+ /**
233
+ * When the Toast is at the top users will be
234
+ * swiping up. As a result, the delta values will be
235
+ * negative numbers which will result in negative steps
236
+ * and thresholds. As a result, we need to make those numbers
237
+ * positive.
238
+ */
239
+ const INVERSION_FACTOR = el.position === 'top' ? -1 : 1;
240
+ /**
241
+ * The top offset that places the
242
+ * toast in the middle of the screen.
243
+ * Only needed when position="middle".
244
+ */
245
+ const topPosition = getOffsetForMiddlePosition(hostElHeight, wrapperElBox.height);
246
+ const SWIPE_UP_DOWN_KEYFRAMES = [
247
+ { offset: 0, transform: `translateY(-${topPosition + wrapperElBox.height}px)` },
248
+ { offset: 0.5, transform: `translateY(0px)` },
249
+ { offset: 1, transform: `translateY(${topPosition + wrapperElBox.height}px)` },
250
+ ];
251
+ const swipeAnimation = createAnimation('toast-swipe-to-dismiss-animation')
252
+ .addElement(wrapperEl)
253
+ /**
254
+ * The specific value here does not actually
255
+ * matter. We just need this to be a positive
256
+ * value so the animation does not jump
257
+ * to the end when the user beings to drag.
258
+ */
259
+ .duration(100);
260
+ switch (el.position) {
261
+ case 'middle':
262
+ MAX_SWIPE_DISTANCE = hostElHeight + wrapperElBox.height;
263
+ swipeAnimation.keyframes(SWIPE_UP_DOWN_KEYFRAMES);
264
+ /**
265
+ * Toast can be swiped up or down but
266
+ * should start in the middle of the screen.
267
+ */
268
+ swipeAnimation.progressStart(true, 0.5);
269
+ break;
270
+ case 'top':
271
+ /**
272
+ * The bottom edge of the wrapper
273
+ * includes the distance between the top
274
+ * of the screen and the top of the wrapper
275
+ * as well as the wrapper height so the wrapper
276
+ * can be dragged fully offscreen.
277
+ */
278
+ MAX_SWIPE_DISTANCE = wrapperElBox.bottom;
279
+ swipeAnimation.keyframes([
280
+ { offset: 0, transform: `translateY(${toastPosition.top})` },
281
+ { offset: 1, transform: 'translateY(-100%)' },
282
+ ]);
283
+ swipeAnimation.progressStart(true, 0);
284
+ break;
285
+ case 'bottom':
286
+ default:
287
+ /**
288
+ * This computes the distance between the
289
+ * top of the wrapper and the bottom of the
290
+ * screen including the height of the wrapper
291
+ * element so it can be dragged fully offscreen.
292
+ */
293
+ MAX_SWIPE_DISTANCE = hostElHeight - wrapperElBox.top;
294
+ swipeAnimation.keyframes([
295
+ { offset: 0, transform: `translateY(${toastPosition.bottom})` },
296
+ { offset: 1, transform: 'translateY(100%)' },
297
+ ]);
298
+ swipeAnimation.progressStart(true, 0);
299
+ break;
300
+ }
301
+ const computeStep = (delta) => {
302
+ return (delta * INVERSION_FACTOR) / MAX_SWIPE_DISTANCE;
166
303
  };
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))`,
304
+ const onMove = (detail) => {
305
+ const step = STEP_OFFSET + computeStep(detail.deltaY);
306
+ swipeAnimation.progressStep(step);
174
307
  };
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
- }
308
+ const onEnd = (detail) => {
309
+ const velocity = detail.velocityY;
310
+ const threshold = ((detail.deltaY + velocity * 1000) / MAX_SWIPE_DISTANCE) * INVERSION_FACTOR;
311
+ /**
312
+ * Disable the gesture for the remainder of the animation.
313
+ * It will be re-enabled if the toast animates back to
314
+ * its initial presented position.
315
+ */
316
+ gesture.enable(false);
317
+ let shouldDismiss = true;
318
+ let playTo = 1;
319
+ let step = 0;
320
+ let remainingDistance = 0;
321
+ if (el.position === 'middle') {
322
+ /**
323
+ * A middle positioned Toast appears
324
+ * in the middle of the screen (at animation offset 0.5).
325
+ * As a result, the threshold will be calculated relative
326
+ * to this starting position. In other words at animation offset 0.5
327
+ * the threshold will be 0. We want the middle Toast to be eligible
328
+ * for dismiss when the user has swiped either half way up or down the
329
+ * screen. As a result, we divide DISMISS_THRESHOLD in half. We also
330
+ * consider when the threshold is a negative in the event the
331
+ * user drags up (since the deltaY will also be negative).
332
+ */
333
+ shouldDismiss = threshold >= DISMISS_THRESHOLD / 2 || threshold <= -DISMISS_THRESHOLD / 2;
334
+ /**
335
+ * Since we are replacing the keyframes
336
+ * below the animation always starts from
337
+ * the beginning of the new keyframes.
338
+ * Similarly, we are always playing to
339
+ * the end of the new keyframes.
340
+ */
341
+ playTo = 1;
342
+ step = 0;
343
+ /**
344
+ * The Toast should animate from wherever its
345
+ * current position is to the desired end state.
346
+ *
347
+ * To begin, we get the current position of the
348
+ * Toast for its starting state.
349
+ */
350
+ const wrapperElBox = wrapperEl.getBoundingClientRect();
351
+ const startOffset = wrapperElBox.top - topPosition;
352
+ const startPosition = `${startOffset}px`;
353
+ /**
354
+ * If the deltaY is negative then the user is swiping
355
+ * up, so the Toast should animate to the top of the screen.
356
+ * If the deltaY is positive then the user is swiping
357
+ * down, so the Toast should animate to the bottom of the screen.
358
+ * We also account for when the deltaY is 0, but realistically
359
+ * that should never happen because it means the user did not drag
360
+ * the toast.
361
+ */
362
+ const offsetFactor = detail.deltaY <= 0 ? -1 : 1;
363
+ const endOffset = (topPosition + wrapperElBox.height) * offsetFactor;
364
+ /**
365
+ * If the Toast should dismiss
366
+ * then we need to figure out which edge of
367
+ * the screen it should animate towards.
368
+ * By default, the Toast will come
369
+ * back to its default state in the
370
+ * middle of the screen.
371
+ */
372
+ const endPosition = shouldDismiss ? `${endOffset}px` : '0px';
373
+ const KEYFRAMES = [
374
+ { offset: 0, transform: `translateY(${startPosition})` },
375
+ { offset: 1, transform: `translateY(${endPosition})` },
376
+ ];
377
+ swipeAnimation.keyframes(KEYFRAMES);
378
+ /**
379
+ * Compute the remaining amount of pixels the
380
+ * toast needs to move to be fully dismissed.
381
+ */
382
+ remainingDistance = endOffset - startOffset;
383
+ }
384
+ else {
385
+ shouldDismiss = threshold >= DISMISS_THRESHOLD;
386
+ playTo = shouldDismiss ? 1 : 0;
387
+ step = computeStep(detail.deltaY);
388
+ /**
389
+ * Compute the remaining amount of pixels the
390
+ * toast needs to move to be fully dismissed.
391
+ */
392
+ const remainingStepAmount = shouldDismiss ? 1 - step : step;
393
+ remainingDistance = remainingStepAmount * MAX_SWIPE_DISTANCE;
394
+ }
395
+ /**
396
+ * The animation speed should depend on how quickly
397
+ * the user flicks the toast across the screen. However,
398
+ * it should be no slower than 200ms.
399
+ * We use Math.abs on the remainingDistance because that value
400
+ * can be negative when swiping up on a middle position toast.
401
+ */
402
+ const duration = Math.min(Math.abs(remainingDistance) / Math.abs(velocity), 200);
403
+ swipeAnimation
404
+ .onFinish(() => {
405
+ if (shouldDismiss) {
406
+ onDismiss();
407
+ swipeAnimation.destroy();
408
+ }
409
+ else {
410
+ if (el.position === 'middle') {
411
+ /**
412
+ * If the toast snapped back to
413
+ * the middle of the screen we need
414
+ * to reset the keyframes
415
+ * so the toast can be swiped
416
+ * up or down again.
417
+ */
418
+ swipeAnimation.keyframes(SWIPE_UP_DOWN_KEYFRAMES).progressStart(true, 0.5);
419
+ }
420
+ else {
421
+ swipeAnimation.progressStart(true, 0);
422
+ }
423
+ /**
424
+ * If the toast did not dismiss then
425
+ * the user should be able to swipe again.
426
+ */
427
+ gesture.enable(true);
428
+ }
429
+ /**
430
+ * This must be a one time callback
431
+ * otherwise a new callback will
432
+ * be added every time onEnd runs.
433
+ */
434
+ }, { oneTimeCallback: true })
435
+ .progressEnd(playTo, step, duration);
436
+ };
437
+ const gesture = createGesture({
438
+ el: wrapperEl,
439
+ gestureName: 'toast-swipe-to-dismiss',
440
+ gesturePriority: OVERLAY_GESTURE_PRIORITY,
441
+ /**
442
+ * Toast only supports vertical swipes.
443
+ * This needs to be updated if we later
444
+ * support horizontal swipes.
445
+ */
446
+ direction: 'y',
447
+ onMove,
448
+ onEnd,
449
+ });
450
+ return gesture;
451
+ };
187
452
 
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}}";
453
+ 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
454
 
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)}}";
455
+ 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
456
 
192
457
  const Toast = class {
193
- constructor(hostRef) {
194
- registerInstance(this, hostRef);
195
- this.didPresent = createEvent(this, "ionToastDidPresent", 7);
196
- this.willPresent = createEvent(this, "ionToastWillPresent", 7);
197
- this.willDismiss = createEvent(this, "ionToastWillDismiss", 7);
198
- this.didDismiss = createEvent(this, "ionToastDidDismiss", 7);
199
- this.didPresentShorthand = createEvent(this, "didPresent", 7);
200
- this.willPresentShorthand = createEvent(this, "willPresent", 7);
201
- this.willDismissShorthand = createEvent(this, "willDismiss", 7);
202
- this.didDismissShorthand = createEvent(this, "didDismiss", 7);
203
- this.delegateController = createDelegateController(this);
204
- this.lockController = createLockController();
205
- this.triggerController = createTriggerController();
206
- this.customHTMLEnabled = config.get('innerHTMLTemplatesEnabled', ENABLE_HTML_CONTENT_DEFAULT);
207
- this.presented = false;
208
- this.dispatchCancelHandler = (ev) => {
209
- const role = ev.detail.role;
210
- if (isCancel(role)) {
211
- const cancelButton = this.getButtons().find((b) => b.role === 'cancel');
212
- this.callButtonHandler(cancelButton);
213
- }
214
- };
215
- this.revealContentToScreenReader = false;
216
- this.overlayIndex = undefined;
217
- this.delegate = undefined;
218
- this.hasController = false;
219
- this.color = undefined;
220
- this.enterAnimation = undefined;
221
- this.leaveAnimation = undefined;
222
- this.cssClass = undefined;
223
- this.duration = config.getNumber('toastDuration', 0);
224
- this.header = undefined;
225
- this.layout = 'baseline';
226
- this.message = undefined;
227
- this.keyboardClose = false;
228
- this.position = 'bottom';
229
- this.positionAnchor = undefined;
230
- this.buttons = undefined;
231
- this.translucent = false;
232
- this.animated = true;
233
- this.icon = undefined;
234
- this.htmlAttributes = undefined;
235
- this.isOpen = false;
236
- this.trigger = undefined;
237
- }
238
- onIsOpenChange(newValue, oldValue) {
239
- if (newValue === true && oldValue === false) {
240
- this.present();
458
+ constructor(hostRef) {
459
+ registerInstance(this, hostRef);
460
+ this.didPresent = createEvent(this, "ionToastDidPresent", 7);
461
+ this.willPresent = createEvent(this, "ionToastWillPresent", 7);
462
+ this.willDismiss = createEvent(this, "ionToastWillDismiss", 7);
463
+ this.didDismiss = createEvent(this, "ionToastDidDismiss", 7);
464
+ this.didPresentShorthand = createEvent(this, "didPresent", 7);
465
+ this.willPresentShorthand = createEvent(this, "willPresent", 7);
466
+ this.willDismissShorthand = createEvent(this, "willDismiss", 7);
467
+ this.didDismissShorthand = createEvent(this, "didDismiss", 7);
468
+ this.delegateController = createDelegateController(this);
469
+ this.lockController = createLockController();
470
+ this.triggerController = createTriggerController();
471
+ this.customHTMLEnabled = config.get('innerHTMLTemplatesEnabled', ENABLE_HTML_CONTENT_DEFAULT);
472
+ this.presented = false;
473
+ this.dispatchCancelHandler = (ev) => {
474
+ const role = ev.detail.role;
475
+ if (isCancel(role)) {
476
+ const cancelButton = this.getButtons().find((b) => b.role === 'cancel');
477
+ this.callButtonHandler(cancelButton);
478
+ }
479
+ };
480
+ /**
481
+ * Create a new swipe gesture so Toast
482
+ * can be swiped to dismiss.
483
+ */
484
+ this.createSwipeGesture = (toastPosition) => {
485
+ const gesture = (this.gesture = createSwipeToDismissGesture(this.el, toastPosition, () => {
486
+ /**
487
+ * If the gesture completed then
488
+ * we should dismiss the toast.
489
+ */
490
+ this.dismiss(undefined, GESTURE);
491
+ }));
492
+ gesture.enable(true);
493
+ };
494
+ /**
495
+ * Destroy an existing swipe gesture
496
+ * so Toast can no longer be swiped to dismiss.
497
+ */
498
+ this.destroySwipeGesture = () => {
499
+ const { gesture } = this;
500
+ if (gesture === undefined) {
501
+ return;
502
+ }
503
+ gesture.destroy();
504
+ this.gesture = undefined;
505
+ };
506
+ /**
507
+ * Returns `true` if swipeGesture
508
+ * is configured to a value that enables the swipe behavior.
509
+ * Returns `false` otherwise.
510
+ */
511
+ this.prefersSwipeGesture = () => {
512
+ const { swipeGesture } = this;
513
+ return swipeGesture === 'vertical';
514
+ };
515
+ this.revealContentToScreenReader = false;
516
+ this.overlayIndex = undefined;
517
+ this.delegate = undefined;
518
+ this.hasController = false;
519
+ this.color = undefined;
520
+ this.enterAnimation = undefined;
521
+ this.leaveAnimation = undefined;
522
+ this.cssClass = undefined;
523
+ this.duration = config.getNumber('toastDuration', 0);
524
+ this.header = undefined;
525
+ this.layout = 'baseline';
526
+ this.message = undefined;
527
+ this.keyboardClose = false;
528
+ this.position = 'bottom';
529
+ this.positionAnchor = undefined;
530
+ this.buttons = undefined;
531
+ this.translucent = false;
532
+ this.animated = true;
533
+ this.icon = undefined;
534
+ this.htmlAttributes = undefined;
535
+ this.swipeGesture = undefined;
536
+ this.isOpen = false;
537
+ this.trigger = undefined;
538
+ }
539
+ swipeGestureChanged() {
540
+ /**
541
+ * If the Toast is presented, then we need to destroy
542
+ * any actives gestures before a new gesture is potentially
543
+ * created below.
544
+ *
545
+ * If the Toast is dismissed, then no gesture should be available
546
+ * since the Toast is not visible. This case should never
547
+ * happen since the "dismiss" method handles destroying
548
+ * any active swipe gestures, but we keep this code
549
+ * around to handle the first case.
550
+ */
551
+ this.destroySwipeGesture();
552
+ /**
553
+ * A new swipe gesture should only be created
554
+ * if the Toast is presented. If the Toast is not
555
+ * yet presented then the "present" method will
556
+ * handle calling the swipe gesture setup function.
557
+ */
558
+ if (this.presented && this.prefersSwipeGesture()) {
559
+ /**
560
+ * If the Toast is presented then
561
+ * lastPresentedPosition is defined.
562
+ */
563
+ this.createSwipeGesture(this.lastPresentedPosition);
564
+ }
241
565
  }
242
- else if (newValue === false && oldValue === true) {
243
- this.dismiss();
566
+ onIsOpenChange(newValue, oldValue) {
567
+ if (newValue === true && oldValue === false) {
568
+ this.present();
569
+ }
570
+ else if (newValue === false && oldValue === true) {
571
+ this.dismiss();
572
+ }
244
573
  }
245
- }
246
- triggerChanged() {
247
- const { trigger, el, triggerController } = this;
248
- if (trigger) {
249
- triggerController.addClickListener(el, trigger);
574
+ triggerChanged() {
575
+ const { trigger, el, triggerController } = this;
576
+ if (trigger) {
577
+ triggerController.addClickListener(el, trigger);
578
+ }
250
579
  }
251
- }
252
- connectedCallback() {
253
- prepareOverlay(this.el);
254
- this.triggerChanged();
255
- }
256
- disconnectedCallback() {
257
- this.triggerController.removeClickListener();
258
- }
259
- componentWillLoad() {
260
- setOverlayId(this.el);
261
- }
262
- componentDidLoad() {
263
- /**
264
- * If toast was rendered with isOpen="true"
265
- * then we should open toast immediately.
266
- */
267
- if (this.isOpen === true) {
268
- raf(() => this.present());
580
+ connectedCallback() {
581
+ prepareOverlay(this.el);
582
+ this.triggerChanged();
583
+ }
584
+ disconnectedCallback() {
585
+ this.triggerController.removeClickListener();
586
+ }
587
+ componentWillLoad() {
588
+ setOverlayId(this.el);
589
+ }
590
+ componentDidLoad() {
591
+ /**
592
+ * If toast was rendered with isOpen="true"
593
+ * then we should open toast immediately.
594
+ */
595
+ if (this.isOpen === true) {
596
+ raf(() => this.present());
597
+ }
598
+ /**
599
+ * When binding values in frameworks such as Angular
600
+ * it is possible for the value to be set after the Web Component
601
+ * initializes but before the value watcher is set up in Stencil.
602
+ * As a result, the watcher callback may not be fired.
603
+ * We work around this by manually calling the watcher
604
+ * callback when the component has loaded and the watcher
605
+ * is configured.
606
+ */
607
+ this.triggerChanged();
269
608
  }
270
- }
271
- /**
272
- * Present the toast overlay after it has been created.
273
- */
274
- async present() {
275
- const unlock = await this.lockController.lock();
276
- await this.delegateController.attachViewToDom();
277
- const { el, position } = this;
278
- const anchor = this.getAnchorElement();
279
- const animationPosition = getAnimationPosition(position, anchor, getIonMode(this), el);
280
609
  /**
281
- * Cache the calculated position of the toast, so we can re-use it
282
- * in the dismiss animation.
610
+ * Present the toast overlay after it has been created.
283
611
  */
284
- this.lastPresentedPosition = animationPosition;
285
- await present(this, 'toastEnter', iosEnterAnimation, mdEnterAnimation, {
286
- position,
287
- top: animationPosition.top,
288
- bottom: animationPosition.bottom,
289
- });
612
+ async present() {
613
+ const unlock = await this.lockController.lock();
614
+ await this.delegateController.attachViewToDom();
615
+ const { el, position } = this;
616
+ const anchor = this.getAnchorElement();
617
+ const animationPosition = getAnimationPosition(position, anchor, getIonMode(this), el);
618
+ /**
619
+ * Cache the calculated position of the toast, so we can re-use it
620
+ * in the dismiss animation.
621
+ */
622
+ this.lastPresentedPosition = animationPosition;
623
+ await present(this, 'toastEnter', iosEnterAnimation, mdEnterAnimation, {
624
+ position,
625
+ top: animationPosition.top,
626
+ bottom: animationPosition.bottom,
627
+ });
628
+ /**
629
+ * Content is revealed to screen readers after
630
+ * the transition to avoid jank since this
631
+ * state updates will cause a re-render.
632
+ */
633
+ this.revealContentToScreenReader = true;
634
+ if (this.duration > 0) {
635
+ this.durationTimeout = setTimeout(() => this.dismiss(undefined, 'timeout'), this.duration);
636
+ }
637
+ /**
638
+ * If the Toast has a swipe gesture then we can
639
+ * create the gesture so users can swipe the
640
+ * presented Toast.
641
+ */
642
+ if (this.prefersSwipeGesture()) {
643
+ this.createSwipeGesture(animationPosition);
644
+ }
645
+ unlock();
646
+ }
290
647
  /**
291
- * Content is revealed to screen readers after
292
- * the transition to avoid jank since this
293
- * state updates will cause a re-render.
648
+ * Dismiss the toast overlay after it has been presented.
649
+ *
650
+ * @param data Any data to emit in the dismiss events.
651
+ * @param role The role of the element that is dismissing the toast.
652
+ * This can be useful in a button handler for determining which button was
653
+ * clicked to dismiss the toast.
654
+ * Some examples include: ``"cancel"`, `"destructive"`, "selected"`, and `"backdrop"`.
294
655
  */
295
- this.revealContentToScreenReader = true;
296
- if (this.duration > 0) {
297
- this.durationTimeout = setTimeout(() => this.dismiss(undefined, 'timeout'), this.duration);
298
- }
299
- unlock();
300
- }
301
- /**
302
- * Dismiss the toast overlay after it has been presented.
303
- *
304
- * @param data Any data to emit in the dismiss events.
305
- * @param role The role of the element that is dismissing the toast.
306
- * This can be useful in a button handler for determining which button was
307
- * clicked to dismiss the toast.
308
- * Some examples include: ``"cancel"`, `"destructive"`, "selected"`, and `"backdrop"`.
309
- */
310
- async dismiss(data, role) {
311
- var _a, _b;
312
- const unlock = await this.lockController.lock();
313
- const { durationTimeout, position, lastPresentedPosition } = this;
314
- if (durationTimeout) {
315
- clearTimeout(durationTimeout);
656
+ async dismiss(data, role) {
657
+ var _a, _b;
658
+ const unlock = await this.lockController.lock();
659
+ const { durationTimeout, position, lastPresentedPosition } = this;
660
+ if (durationTimeout) {
661
+ clearTimeout(durationTimeout);
662
+ }
663
+ const dismissed = await dismiss(this, data, role, 'toastLeave', iosLeaveAnimation, mdLeaveAnimation,
664
+ /**
665
+ * Fetch the cached position that was calculated back in the present
666
+ * animation. We always want to animate the dismiss from the same
667
+ * position the present stopped at, so the animation looks continuous.
668
+ */
669
+ {
670
+ position,
671
+ top: (_a = lastPresentedPosition === null || lastPresentedPosition === void 0 ? void 0 : lastPresentedPosition.top) !== null && _a !== void 0 ? _a : '',
672
+ bottom: (_b = lastPresentedPosition === null || lastPresentedPosition === void 0 ? void 0 : lastPresentedPosition.bottom) !== null && _b !== void 0 ? _b : '',
673
+ });
674
+ if (dismissed) {
675
+ this.delegateController.removeViewFromDom();
676
+ this.revealContentToScreenReader = false;
677
+ }
678
+ this.lastPresentedPosition = undefined;
679
+ /**
680
+ * If the Toast has a swipe gesture then we can
681
+ * safely destroy it now that it is dismissed.
682
+ */
683
+ this.destroySwipeGesture();
684
+ unlock();
685
+ return dismissed;
316
686
  }
317
- const dismissed = await dismiss(this, data, role, 'toastLeave', iosLeaveAnimation, mdLeaveAnimation,
318
687
  /**
319
- * Fetch the cached position that was calculated back in the present
320
- * animation. We always want to animate the dismiss from the same
321
- * position the present stopped at, so the animation looks continuous.
688
+ * Returns a promise that resolves when the toast did dismiss.
322
689
  */
323
- {
324
- position,
325
- top: (_a = lastPresentedPosition === null || lastPresentedPosition === void 0 ? void 0 : lastPresentedPosition.top) !== null && _a !== void 0 ? _a : '',
326
- bottom: (_b = lastPresentedPosition === null || lastPresentedPosition === void 0 ? void 0 : lastPresentedPosition.bottom) !== null && _b !== void 0 ? _b : '',
327
- });
328
- if (dismissed) {
329
- this.delegateController.removeViewFromDom();
330
- this.revealContentToScreenReader = false;
690
+ onDidDismiss() {
691
+ return eventMethod(this.el, 'ionToastDidDismiss');
331
692
  }
332
- this.lastPresentedPosition = undefined;
333
- unlock();
334
- return dismissed;
335
- }
336
- /**
337
- * Returns a promise that resolves when the toast did dismiss.
338
- */
339
- onDidDismiss() {
340
- return eventMethod(this.el, 'ionToastDidDismiss');
341
- }
342
- /**
343
- * Returns a promise that resolves when the toast will dismiss.
344
- */
345
- onWillDismiss() {
346
- return eventMethod(this.el, 'ionToastWillDismiss');
347
- }
348
- getButtons() {
349
- const buttons = this.buttons
350
- ? this.buttons.map((b) => {
351
- return typeof b === 'string' ? { text: b } : b;
352
- })
353
- : [];
354
- return buttons;
355
- }
356
- /**
357
- * Returns the element specified by the positionAnchor prop,
358
- * or undefined if prop's value is an ID string and the element
359
- * is not found in the DOM.
360
- */
361
- getAnchorElement() {
362
- const { position, positionAnchor, el } = this;
363
693
  /**
364
- * If positionAnchor is undefined then
365
- * no anchor should be used when presenting the toast.
694
+ * Returns a promise that resolves when the toast will dismiss.
366
695
  */
367
- if (positionAnchor === undefined) {
368
- return;
696
+ onWillDismiss() {
697
+ return eventMethod(this.el, 'ionToastWillDismiss');
369
698
  }
370
- if (position === 'middle' && positionAnchor !== undefined) {
371
- printIonWarning('The positionAnchor property is ignored when using position="middle".', this.el);
372
- return undefined;
699
+ getButtons() {
700
+ const buttons = this.buttons
701
+ ? this.buttons.map((b) => {
702
+ return typeof b === 'string' ? { text: b } : b;
703
+ })
704
+ : [];
705
+ return buttons;
373
706
  }
374
- if (typeof positionAnchor === 'string') {
375
- /**
376
- * If the anchor is defined as an ID, find the element.
377
- * We do this on every present so the toast doesn't need
378
- * to account for the surrounding DOM changing since the
379
- * last time it was presented.
380
- */
381
- const foundEl = document.getElementById(positionAnchor);
382
- if (foundEl === null) {
383
- printIonWarning(`An anchor element with an ID of "${positionAnchor}" was not found in the DOM.`, el);
707
+ /**
708
+ * Returns the element specified by the positionAnchor prop,
709
+ * or undefined if prop's value is an ID string and the element
710
+ * is not found in the DOM.
711
+ */
712
+ getAnchorElement() {
713
+ const { position, positionAnchor, el } = this;
714
+ /**
715
+ * If positionAnchor is undefined then
716
+ * no anchor should be used when presenting the toast.
717
+ */
718
+ if (positionAnchor === undefined) {
719
+ return;
720
+ }
721
+ if (position === 'middle' && positionAnchor !== undefined) {
722
+ printIonWarning('The positionAnchor property is ignored when using position="middle".', this.el);
723
+ return undefined;
724
+ }
725
+ if (typeof positionAnchor === 'string') {
726
+ /**
727
+ * If the anchor is defined as an ID, find the element.
728
+ * We do this on every present so the toast doesn't need
729
+ * to account for the surrounding DOM changing since the
730
+ * last time it was presented.
731
+ */
732
+ const foundEl = document.getElementById(positionAnchor);
733
+ if (foundEl === null) {
734
+ printIonWarning(`An anchor element with an ID of "${positionAnchor}" was not found in the DOM.`, el);
735
+ return undefined;
736
+ }
737
+ return foundEl;
738
+ }
739
+ if (positionAnchor instanceof HTMLElement) {
740
+ return positionAnchor;
741
+ }
742
+ printIonWarning('Invalid positionAnchor value:', positionAnchor, el);
384
743
  return undefined;
385
- }
386
- return foundEl;
387
- }
388
- if (positionAnchor instanceof HTMLElement) {
389
- return positionAnchor;
390
- }
391
- printIonWarning('Invalid positionAnchor value:', positionAnchor, el);
392
- return undefined;
393
- }
394
- async buttonClick(button) {
395
- const role = button.role;
396
- if (isCancel(role)) {
397
- return this.dismiss(undefined, role);
398
744
  }
399
- const shouldDismiss = await this.callButtonHandler(button);
400
- if (shouldDismiss) {
401
- return this.dismiss(undefined, role);
745
+ async buttonClick(button) {
746
+ const role = button.role;
747
+ if (isCancel(role)) {
748
+ return this.dismiss(undefined, role);
749
+ }
750
+ const shouldDismiss = await this.callButtonHandler(button);
751
+ if (shouldDismiss) {
752
+ return this.dismiss(undefined, role);
753
+ }
754
+ return Promise.resolve();
402
755
  }
403
- return Promise.resolve();
404
- }
405
- async callButtonHandler(button) {
406
- if (button === null || button === void 0 ? void 0 : button.handler) {
407
- // a handler has been provided, execute it
408
- // pass the handler the values from the inputs
409
- try {
410
- const rtn = await safeCall(button.handler);
411
- if (rtn === false) {
412
- // if the return value of the handler is false then do not dismiss
413
- return false;
756
+ async callButtonHandler(button) {
757
+ if (button === null || button === void 0 ? void 0 : button.handler) {
758
+ // a handler has been provided, execute it
759
+ // pass the handler the values from the inputs
760
+ try {
761
+ const rtn = await safeCall(button.handler);
762
+ if (rtn === false) {
763
+ // if the return value of the handler is false then do not dismiss
764
+ return false;
765
+ }
766
+ }
767
+ catch (e) {
768
+ console.error(e);
769
+ }
414
770
  }
415
- }
416
- catch (e) {
417
- console.error(e);
418
- }
771
+ return true;
419
772
  }
420
- return true;
421
- }
422
- renderButtons(buttons, side) {
423
- if (buttons.length === 0) {
424
- return;
773
+ renderButtons(buttons, side) {
774
+ if (buttons.length === 0) {
775
+ return;
776
+ }
777
+ const mode = getIonMode(this);
778
+ const buttonGroupsClasses = {
779
+ 'toast-button-group': true,
780
+ [`toast-button-group-${side}`]: true,
781
+ };
782
+ 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' })))))));
425
783
  }
426
- const mode = getIonMode(this);
427
- const buttonGroupsClasses = {
428
- 'toast-button-group': true,
429
- [`toast-button-group-${side}`]: true,
430
- };
431
- 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' })))))));
432
- }
433
- /**
434
- * Render the `message` property.
435
- * @param key - A key to give the element a stable identity. This is used to improve compatibility with screen readers.
436
- * @param ariaHidden - If "true" then content will be hidden from screen readers.
437
- */
438
- renderToastMessage(key, ariaHidden = null) {
439
- const { customHTMLEnabled, message } = this;
440
- if (customHTMLEnabled) {
441
- return (h("div", { key: key, "aria-hidden": ariaHidden, class: "toast-message", part: "message", innerHTML: sanitizeDOMString(message) }));
784
+ /**
785
+ * Render the `message` property.
786
+ * @param key - A key to give the element a stable identity. This is used to improve compatibility with screen readers.
787
+ * @param ariaHidden - If "true" then content will be hidden from screen readers.
788
+ */
789
+ renderToastMessage(key, ariaHidden = null) {
790
+ const { customHTMLEnabled, message } = this;
791
+ if (customHTMLEnabled) {
792
+ return (h("div", { key: key, "aria-hidden": ariaHidden, class: "toast-message", part: "message", innerHTML: sanitizeDOMString(message) }));
793
+ }
794
+ return (h("div", { key: key, "aria-hidden": ariaHidden, class: "toast-message", part: "message" }, message));
442
795
  }
443
- return (h("div", { key: key, "aria-hidden": ariaHidden, class: "toast-message", part: "message" }, message));
444
- }
445
- /**
446
- * Render the `header` property.
447
- * @param key - A key to give the element a stable identity. This is used to improve compatibility with screen readers.
448
- * @param ariaHidden - If "true" then content will be hidden from screen readers.
449
- */
450
- renderHeader(key, ariaHidden = null) {
451
- return (h("div", { key: key, class: "toast-header", "aria-hidden": ariaHidden, part: "header" }, this.header));
452
- }
453
- render() {
454
- const { layout, el, revealContentToScreenReader, header, message } = this;
455
- const allButtons = this.getButtons();
456
- const startButtons = allButtons.filter((b) => b.side === 'start');
457
- const endButtons = allButtons.filter((b) => b.side !== 'start');
458
- const mode = getIonMode(this);
459
- const wrapperClass = {
460
- 'toast-wrapper': true,
461
- [`toast-${this.position}`]: true,
462
- [`toast-layout-${layout}`]: true,
463
- };
464
796
  /**
465
- * Stacked buttons are only meant to be
466
- * used with one type of button.
797
+ * Render the `header` property.
798
+ * @param key - A key to give the element a stable identity. This is used to improve compatibility with screen readers.
799
+ * @param ariaHidden - If "true" then content will be hidden from screen readers.
467
800
  */
468
- if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
469
- 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);
801
+ renderHeader(key, ariaHidden = null) {
802
+ return (h("div", { key: key, class: "toast-header", "aria-hidden": ariaHidden, part: "header" }, this.header));
803
+ }
804
+ render() {
805
+ const { layout, el, revealContentToScreenReader, header, message } = this;
806
+ const allButtons = this.getButtons();
807
+ const startButtons = allButtons.filter((b) => b.side === 'start');
808
+ const endButtons = allButtons.filter((b) => b.side !== 'start');
809
+ const mode = getIonMode(this);
810
+ const wrapperClass = {
811
+ 'toast-wrapper': true,
812
+ [`toast-${this.position}`]: true,
813
+ [`toast-layout-${layout}`]: true,
814
+ };
815
+ /**
816
+ * Stacked buttons are only meant to be
817
+ * used with one type of button.
818
+ */
819
+ if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
820
+ 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);
821
+ }
822
+ return (h(Host, Object.assign({ tabindex: "-1" }, this.htmlAttributes, { style: {
823
+ zIndex: `${60000 + this.overlayIndex}`,
824
+ }, 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')))));
470
825
  }
471
- return (h(Host, Object.assign({ tabindex: "-1" }, this.htmlAttributes, { style: {
472
- zIndex: `${60000 + this.overlayIndex}`,
473
- }, 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')))));
474
- }
475
- get el() { return getElement(this); }
476
- static get watchers() { return {
477
- "isOpen": ["onIsOpenChange"],
478
- "trigger": ["triggerChanged"]
479
- }; }
826
+ get el() { return getElement(this); }
827
+ static get watchers() { return {
828
+ "swipeGesture": ["swipeGestureChanged"],
829
+ "isOpen": ["onIsOpenChange"],
830
+ "trigger": ["triggerChanged"]
831
+ }; }
480
832
  };
481
833
  const buttonClass = (button) => {
482
- 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));
834
+ 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));
483
835
  };
484
836
  const buttonPart = (button) => {
485
- return isCancel(button.role) ? 'button cancel' : 'button';
837
+ return isCancel(button.role) ? 'button cancel' : 'button';
486
838
  };
487
839
  Toast.style = {
488
- ios: toastIosCss,
489
- md: toastMdCss
840
+ ios: toastIosCss,
841
+ md: toastMdCss
490
842
  };
491
843
 
492
844
  export { Toast as ion_toast };