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
@@ -5,492 +5,844 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index$2 = require('./index-305a23dc.js');
9
- const config = require('./config-d5882735.js');
10
- const helpers = require('./helpers-ea4ccbcb.js');
11
- const lockController = require('./lock-controller-4ae2eb59.js');
12
- const index$1 = require('./index-cc7dfb7c.js');
13
- const overlays = require('./overlays-1a734051.js');
14
- const theme = require('./theme-fbc56b3b.js');
15
- const ionicGlobal = require('./ionic-global-fb752503.js');
16
- const animation = require('./animation-c8bdd3c7.js');
17
- const index = require('./index-306a7476.js');
18
- require('./framework-delegate-c0873a6f.js');
19
- require('./hardware-back-button-b67c8e75.js');
8
+ const index$3 = require('./index-bbb4336c.js');
9
+ const config = require('./config-4f60b98a.js');
10
+ const helpers = require('./helpers-76bb7efb.js');
11
+ const lockController = require('./lock-controller-6585a42a.js');
12
+ const index$1 = require('./index-5915f9b3.js');
13
+ const overlays = require('./overlays-27a6fb16.js');
14
+ const theme = require('./theme-d1c573d2.js');
15
+ const ionicGlobal = require('./ionic-global-f4a2093b.js');
16
+ const animation = require('./animation-9b401d39.js');
17
+ const index = require('./index-c8d52405.js');
18
+ const index$2 = require('./index-d1b59ffa.js');
19
+ require('./framework-delegate-1c29b14a.js');
20
+ require('./hardware-back-button-76833cac.js');
21
+ require('./gesture-controller-c40c045a.js');
22
+
23
+ /**
24
+ * Calculate the CSS top and bottom position of the toast, to be used
25
+ * as starting points for the animation keyframes.
26
+ *
27
+ * The default animations for both MD and iOS
28
+ * use translateY, which calculates from the
29
+ * top edge of the screen. This behavior impacts
30
+ * how we compute the offset when a toast has
31
+ * position='bottom' since we need to calculate from
32
+ * the bottom edge of the screen instead.
33
+ *
34
+ * @param position The value of the toast's position prop.
35
+ * @param positionAnchor The element the toast should be anchored to,
36
+ * if applicable.
37
+ * @param mode The toast component's mode (md, ios, etc).
38
+ * @param toast A reference to the toast element itself.
39
+ */
40
+ function getAnimationPosition(position, positionAnchor, mode, toast) {
41
+ /**
42
+ * Start with a predefined offset from the edge the toast will be
43
+ * positioned relative to, whether on the screen or anchor element.
44
+ */
45
+ let offset;
46
+ if (mode === 'md') {
47
+ offset = position === 'top' ? 8 : -8;
48
+ }
49
+ else {
50
+ offset = position === 'top' ? 10 : -10;
51
+ }
52
+ /**
53
+ * If positionAnchor is defined, add in the distance from the target
54
+ * screen edge to the target anchor edge. For position="top", the
55
+ * bottom anchor edge is targeted. For position="bottom", the top
56
+ * anchor edge is targeted.
57
+ */
58
+ if (positionAnchor && index.win) {
59
+ warnIfAnchorIsHidden(positionAnchor, toast);
60
+ const box = positionAnchor.getBoundingClientRect();
61
+ if (position === 'top') {
62
+ offset += box.bottom;
63
+ }
64
+ else if (position === 'bottom') {
65
+ /**
66
+ * Just box.top is the distance from the top edge of the screen
67
+ * to the top edge of the anchor. We want to calculate from the
68
+ * bottom edge of the screen instead.
69
+ */
70
+ offset -= index.win.innerHeight - box.top;
71
+ }
72
+ /**
73
+ * We don't include safe area here because that should already be
74
+ * accounted for when checking the position of the anchor.
75
+ */
76
+ return {
77
+ top: `${offset}px`,
78
+ bottom: `${offset}px`,
79
+ };
80
+ }
81
+ else {
82
+ return {
83
+ top: `calc(${offset}px + var(--ion-safe-area-top, 0px))`,
84
+ bottom: `calc(${offset}px - var(--ion-safe-area-bottom, 0px))`,
85
+ };
86
+ }
87
+ }
88
+ /**
89
+ * If the anchor element is hidden, getBoundingClientRect()
90
+ * will return all 0s for it, which can cause unexpected
91
+ * results in the position calculation when animating.
92
+ */
93
+ function warnIfAnchorIsHidden(positionAnchor, toast) {
94
+ if (positionAnchor.offsetParent === null) {
95
+ index$1.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);
96
+ }
97
+ }
98
+ /**
99
+ * Returns the top offset required to place
100
+ * the toast in the middle of the screen.
101
+ * Only needed when position="toast".
102
+ * @param toastHeight - The height of the ion-toast element
103
+ * @param wrapperHeight - The height of the .toast-wrapper element
104
+ * inside the toast's shadow root.
105
+ */
106
+ const getOffsetForMiddlePosition = (toastHeight, wrapperHeight) => {
107
+ return Math.floor(toastHeight / 2 - wrapperHeight / 2);
108
+ };
20
109
 
21
110
  /**
22
111
  * iOS Toast Enter Animation
23
112
  */
24
113
  const iosEnterAnimation = (baseEl, opts) => {
25
- const baseAnimation = animation.createAnimation();
26
- const wrapperAnimation = animation.createAnimation();
27
- const { position, top, bottom } = opts;
28
- const root = helpers.getElementRoot(baseEl);
29
- const wrapperEl = root.querySelector('.toast-wrapper');
30
- wrapperAnimation.addElement(wrapperEl);
31
- switch (position) {
32
- case 'top':
33
- wrapperAnimation.fromTo('transform', 'translateY(-100%)', `translateY(${top})`);
34
- break;
35
- case 'middle':
36
- const topPosition = Math.floor(baseEl.clientHeight / 2 - wrapperEl.clientHeight / 2);
37
- wrapperEl.style.top = `${topPosition}px`;
38
- wrapperAnimation.fromTo('opacity', 0.01, 1);
39
- break;
40
- default:
41
- wrapperAnimation.fromTo('transform', 'translateY(100%)', `translateY(${bottom})`);
42
- break;
43
- }
44
- return baseAnimation.easing('cubic-bezier(.155,1.105,.295,1.12)').duration(400).addAnimation(wrapperAnimation);
114
+ const baseAnimation = animation.createAnimation();
115
+ const wrapperAnimation = animation.createAnimation();
116
+ const { position, top, bottom } = opts;
117
+ const root = helpers.getElementRoot(baseEl);
118
+ const wrapperEl = root.querySelector('.toast-wrapper');
119
+ wrapperAnimation.addElement(wrapperEl);
120
+ switch (position) {
121
+ case 'top':
122
+ wrapperAnimation.fromTo('transform', 'translateY(-100%)', `translateY(${top})`);
123
+ break;
124
+ case 'middle':
125
+ const topPosition = getOffsetForMiddlePosition(baseEl.clientHeight, wrapperEl.clientHeight);
126
+ wrapperEl.style.top = `${topPosition}px`;
127
+ wrapperAnimation.fromTo('opacity', 0.01, 1);
128
+ break;
129
+ default:
130
+ wrapperAnimation.fromTo('transform', 'translateY(100%)', `translateY(${bottom})`);
131
+ break;
132
+ }
133
+ return baseAnimation.easing('cubic-bezier(.155,1.105,.295,1.12)').duration(400).addAnimation(wrapperAnimation);
45
134
  };
46
135
 
47
136
  /**
48
137
  * iOS Toast Leave Animation
49
138
  */
50
139
  const iosLeaveAnimation = (baseEl, opts) => {
51
- const baseAnimation = animation.createAnimation();
52
- const wrapperAnimation = animation.createAnimation();
53
- const { position, top, bottom } = opts;
54
- const root = helpers.getElementRoot(baseEl);
55
- const wrapperEl = root.querySelector('.toast-wrapper');
56
- wrapperAnimation.addElement(wrapperEl);
57
- switch (position) {
58
- case 'top':
59
- wrapperAnimation.fromTo('transform', `translateY(${top})`, 'translateY(-100%)');
60
- break;
61
- case 'middle':
62
- wrapperAnimation.fromTo('opacity', 0.99, 0);
63
- break;
64
- default:
65
- wrapperAnimation.fromTo('transform', `translateY(${bottom})`, 'translateY(100%)');
66
- break;
67
- }
68
- return baseAnimation.easing('cubic-bezier(.36,.66,.04,1)').duration(300).addAnimation(wrapperAnimation);
140
+ const baseAnimation = animation.createAnimation();
141
+ const wrapperAnimation = animation.createAnimation();
142
+ const { position, top, bottom } = opts;
143
+ const root = helpers.getElementRoot(baseEl);
144
+ const wrapperEl = root.querySelector('.toast-wrapper');
145
+ wrapperAnimation.addElement(wrapperEl);
146
+ switch (position) {
147
+ case 'top':
148
+ wrapperAnimation.fromTo('transform', `translateY(${top})`, 'translateY(-100%)');
149
+ break;
150
+ case 'middle':
151
+ wrapperAnimation.fromTo('opacity', 0.99, 0);
152
+ break;
153
+ default:
154
+ wrapperAnimation.fromTo('transform', `translateY(${bottom})`, 'translateY(100%)');
155
+ break;
156
+ }
157
+ return baseAnimation.easing('cubic-bezier(.36,.66,.04,1)').duration(300).addAnimation(wrapperAnimation);
69
158
  };
70
159
 
71
160
  /**
72
161
  * MD Toast Enter Animation
73
162
  */
74
163
  const mdEnterAnimation = (baseEl, opts) => {
75
- const baseAnimation = animation.createAnimation();
76
- const wrapperAnimation = animation.createAnimation();
77
- const { position, top, bottom } = opts;
78
- const root = helpers.getElementRoot(baseEl);
79
- const wrapperEl = root.querySelector('.toast-wrapper');
80
- wrapperAnimation.addElement(wrapperEl);
81
- switch (position) {
82
- case 'top':
83
- wrapperEl.style.top = top;
84
- wrapperAnimation.fromTo('opacity', 0.01, 1);
85
- break;
86
- case 'middle':
87
- const topPosition = Math.floor(baseEl.clientHeight / 2 - wrapperEl.clientHeight / 2);
88
- wrapperEl.style.top = `${topPosition}px`;
89
- wrapperAnimation.fromTo('opacity', 0.01, 1);
90
- break;
91
- default:
92
- wrapperEl.style.bottom = bottom;
93
- wrapperAnimation.fromTo('opacity', 0.01, 1);
94
- break;
95
- }
96
- return baseAnimation.easing('cubic-bezier(.36,.66,.04,1)').duration(400).addAnimation(wrapperAnimation);
164
+ const baseAnimation = animation.createAnimation();
165
+ const wrapperAnimation = animation.createAnimation();
166
+ const { position, top, bottom } = opts;
167
+ const root = helpers.getElementRoot(baseEl);
168
+ const wrapperEl = root.querySelector('.toast-wrapper');
169
+ wrapperAnimation.addElement(wrapperEl);
170
+ switch (position) {
171
+ case 'top':
172
+ wrapperEl.style.setProperty('transform', `translateY(${top})`);
173
+ wrapperAnimation.fromTo('opacity', 0.01, 1);
174
+ break;
175
+ case 'middle':
176
+ const topPosition = getOffsetForMiddlePosition(baseEl.clientHeight, wrapperEl.clientHeight);
177
+ wrapperEl.style.top = `${topPosition}px`;
178
+ wrapperAnimation.fromTo('opacity', 0.01, 1);
179
+ break;
180
+ default:
181
+ wrapperEl.style.setProperty('transform', `translateY(${bottom})`);
182
+ wrapperAnimation.fromTo('opacity', 0.01, 1);
183
+ break;
184
+ }
185
+ return baseAnimation.easing('cubic-bezier(.36,.66,.04,1)').duration(400).addAnimation(wrapperAnimation);
97
186
  };
98
187
 
99
188
  /**
100
189
  * md Toast Leave Animation
101
190
  */
102
191
  const mdLeaveAnimation = (baseEl) => {
103
- const baseAnimation = animation.createAnimation();
104
- const wrapperAnimation = animation.createAnimation();
105
- const root = helpers.getElementRoot(baseEl);
106
- const wrapperEl = root.querySelector('.toast-wrapper');
107
- wrapperAnimation.addElement(wrapperEl).fromTo('opacity', 0.99, 0);
108
- return baseAnimation.easing('cubic-bezier(.36,.66,.04,1)').duration(300).addAnimation(wrapperAnimation);
192
+ const baseAnimation = animation.createAnimation();
193
+ const wrapperAnimation = animation.createAnimation();
194
+ const root = helpers.getElementRoot(baseEl);
195
+ const wrapperEl = root.querySelector('.toast-wrapper');
196
+ wrapperAnimation.addElement(wrapperEl).fromTo('opacity', 0.99, 0);
197
+ return baseAnimation.easing('cubic-bezier(.36,.66,.04,1)').duration(300).addAnimation(wrapperAnimation);
109
198
  };
110
199
 
111
200
  /**
112
- * Calculate the CSS top and bottom position of the toast, to be used
113
- * as starting points for the animation keyframes.
114
- *
115
- * Note that MD animates bottom-positioned toasts using style.bottom,
116
- * which calculates from the bottom edge of the screen, while iOS uses
117
- * translateY, which calculates from the top edge of the screen. This
118
- * is why the bottom calculates differ slightly between modes.
119
- *
120
- * @param position The value of the toast's position prop.
121
- * @param positionAnchor The element the toast should be anchored to,
122
- * if applicable.
123
- * @param mode The toast component's mode (md, ios, etc).
124
- * @param toast A reference to the toast element itself.
201
+ * Create a gesture that allows the Toast
202
+ * to be swiped to dismiss.
203
+ * @param el - The Toast element
204
+ * @param toastPosition - The last computed position of the Toast. This is computed in the "present" method.
205
+ * @param onDismiss - A callback to fire when the Toast was swiped to dismiss.
125
206
  */
126
- function getAnimationPosition(position, positionAnchor, mode, toast) {
127
- /**
128
- * Start with a predefined offset from the edge the toast will be
129
- * positioned relative to, whether on the screen or anchor element.
130
- */
131
- let offset;
132
- if (mode === 'md') {
133
- offset = 8;
134
- }
135
- else {
136
- offset = position === 'top' ? 10 : -10;
137
- }
138
- /**
139
- * If positionAnchor is defined, add in the distance from the target
140
- * screen edge to the target anchor edge. For position="top", the
141
- * bottom anchor edge is targeted. For position="bottom", the top
142
- * anchor edge is targeted.
143
- */
144
- if (positionAnchor && index.win) {
145
- warnIfAnchorIsHidden(positionAnchor, toast);
146
- const box = positionAnchor.getBoundingClientRect();
147
- if (position === 'top') {
148
- offset += box.bottom;
149
- }
150
- else if (position === 'bottom') {
151
- /**
152
- * Just box.top is the distance from the top edge of the screen
153
- * to the top edge of the anchor. We want to calculate from the
154
- * bottom edge of the screen instead.
155
- */
156
- if (mode === 'md') {
157
- offset += index.win.innerHeight - box.top;
158
- }
159
- else {
160
- offset -= index.win.innerHeight - box.top;
161
- }
162
- }
207
+ const createSwipeToDismissGesture = (el, toastPosition, onDismiss) => {
208
+ /**
209
+ * Users should swipe on the visible toast wrapper
210
+ * rather than on ion-toast which covers the entire screen.
211
+ * When testing the class instance the inner wrapper will not
212
+ * be defined. As a result, we use a placeholder element in those environments.
213
+ */
214
+ const wrapperEl = helpers.getElementRoot(el).querySelector('.toast-wrapper');
215
+ const hostElHeight = el.clientHeight;
216
+ const wrapperElBox = wrapperEl.getBoundingClientRect();
217
+ /**
218
+ * The maximum amount that
219
+ * the toast can be swiped. This should
220
+ * account for the wrapper element's height
221
+ * too so the toast can be swiped offscreen
222
+ * completely.
223
+ */
224
+ let MAX_SWIPE_DISTANCE = 0;
225
+ /**
226
+ * The step value at which a toast
227
+ * is eligible for dismissing via gesture.
228
+ */
229
+ const DISMISS_THRESHOLD = 0.5;
163
230
  /**
164
- * We don't include safe area here because that should already be
165
- * accounted for when checking the position of the anchor.
231
+ * The middle position Toast starts 50% of the way
232
+ * through the animation, so we need to use this
233
+ * as the starting point for our step values.
166
234
  */
167
- return {
168
- top: `${offset}px`,
169
- bottom: `${offset}px`,
235
+ const STEP_OFFSET = el.position === 'middle' ? 0.5 : 0;
236
+ /**
237
+ * When the Toast is at the top users will be
238
+ * swiping up. As a result, the delta values will be
239
+ * negative numbers which will result in negative steps
240
+ * and thresholds. As a result, we need to make those numbers
241
+ * positive.
242
+ */
243
+ const INVERSION_FACTOR = el.position === 'top' ? -1 : 1;
244
+ /**
245
+ * The top offset that places the
246
+ * toast in the middle of the screen.
247
+ * Only needed when position="middle".
248
+ */
249
+ const topPosition = getOffsetForMiddlePosition(hostElHeight, wrapperElBox.height);
250
+ const SWIPE_UP_DOWN_KEYFRAMES = [
251
+ { offset: 0, transform: `translateY(-${topPosition + wrapperElBox.height}px)` },
252
+ { offset: 0.5, transform: `translateY(0px)` },
253
+ { offset: 1, transform: `translateY(${topPosition + wrapperElBox.height}px)` },
254
+ ];
255
+ const swipeAnimation = animation.createAnimation('toast-swipe-to-dismiss-animation')
256
+ .addElement(wrapperEl)
257
+ /**
258
+ * The specific value here does not actually
259
+ * matter. We just need this to be a positive
260
+ * value so the animation does not jump
261
+ * to the end when the user beings to drag.
262
+ */
263
+ .duration(100);
264
+ switch (el.position) {
265
+ case 'middle':
266
+ MAX_SWIPE_DISTANCE = hostElHeight + wrapperElBox.height;
267
+ swipeAnimation.keyframes(SWIPE_UP_DOWN_KEYFRAMES);
268
+ /**
269
+ * Toast can be swiped up or down but
270
+ * should start in the middle of the screen.
271
+ */
272
+ swipeAnimation.progressStart(true, 0.5);
273
+ break;
274
+ case 'top':
275
+ /**
276
+ * The bottom edge of the wrapper
277
+ * includes the distance between the top
278
+ * of the screen and the top of the wrapper
279
+ * as well as the wrapper height so the wrapper
280
+ * can be dragged fully offscreen.
281
+ */
282
+ MAX_SWIPE_DISTANCE = wrapperElBox.bottom;
283
+ swipeAnimation.keyframes([
284
+ { offset: 0, transform: `translateY(${toastPosition.top})` },
285
+ { offset: 1, transform: 'translateY(-100%)' },
286
+ ]);
287
+ swipeAnimation.progressStart(true, 0);
288
+ break;
289
+ case 'bottom':
290
+ default:
291
+ /**
292
+ * This computes the distance between the
293
+ * top of the wrapper and the bottom of the
294
+ * screen including the height of the wrapper
295
+ * element so it can be dragged fully offscreen.
296
+ */
297
+ MAX_SWIPE_DISTANCE = hostElHeight - wrapperElBox.top;
298
+ swipeAnimation.keyframes([
299
+ { offset: 0, transform: `translateY(${toastPosition.bottom})` },
300
+ { offset: 1, transform: 'translateY(100%)' },
301
+ ]);
302
+ swipeAnimation.progressStart(true, 0);
303
+ break;
304
+ }
305
+ const computeStep = (delta) => {
306
+ return (delta * INVERSION_FACTOR) / MAX_SWIPE_DISTANCE;
170
307
  };
171
- }
172
- else {
173
- return {
174
- top: `calc(${offset}px + var(--ion-safe-area-top, 0px))`,
175
- bottom: mode === 'md'
176
- ? `calc(${offset}px + var(--ion-safe-area-bottom, 0px))`
177
- : `calc(${offset}px - var(--ion-safe-area-bottom, 0px))`,
308
+ const onMove = (detail) => {
309
+ const step = STEP_OFFSET + computeStep(detail.deltaY);
310
+ swipeAnimation.progressStep(step);
178
311
  };
179
- }
180
- }
181
- /**
182
- * If the anchor element is hidden, getBoundingClientRect()
183
- * will return all 0s for it, which can cause unexpected
184
- * results in the position calculation when animating.
185
- */
186
- function warnIfAnchorIsHidden(positionAnchor, toast) {
187
- if (positionAnchor.offsetParent === null) {
188
- index$1.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);
189
- }
190
- }
312
+ const onEnd = (detail) => {
313
+ const velocity = detail.velocityY;
314
+ const threshold = ((detail.deltaY + velocity * 1000) / MAX_SWIPE_DISTANCE) * INVERSION_FACTOR;
315
+ /**
316
+ * Disable the gesture for the remainder of the animation.
317
+ * It will be re-enabled if the toast animates back to
318
+ * its initial presented position.
319
+ */
320
+ gesture.enable(false);
321
+ let shouldDismiss = true;
322
+ let playTo = 1;
323
+ let step = 0;
324
+ let remainingDistance = 0;
325
+ if (el.position === 'middle') {
326
+ /**
327
+ * A middle positioned Toast appears
328
+ * in the middle of the screen (at animation offset 0.5).
329
+ * As a result, the threshold will be calculated relative
330
+ * to this starting position. In other words at animation offset 0.5
331
+ * the threshold will be 0. We want the middle Toast to be eligible
332
+ * for dismiss when the user has swiped either half way up or down the
333
+ * screen. As a result, we divide DISMISS_THRESHOLD in half. We also
334
+ * consider when the threshold is a negative in the event the
335
+ * user drags up (since the deltaY will also be negative).
336
+ */
337
+ shouldDismiss = threshold >= DISMISS_THRESHOLD / 2 || threshold <= -DISMISS_THRESHOLD / 2;
338
+ /**
339
+ * Since we are replacing the keyframes
340
+ * below the animation always starts from
341
+ * the beginning of the new keyframes.
342
+ * Similarly, we are always playing to
343
+ * the end of the new keyframes.
344
+ */
345
+ playTo = 1;
346
+ step = 0;
347
+ /**
348
+ * The Toast should animate from wherever its
349
+ * current position is to the desired end state.
350
+ *
351
+ * To begin, we get the current position of the
352
+ * Toast for its starting state.
353
+ */
354
+ const wrapperElBox = wrapperEl.getBoundingClientRect();
355
+ const startOffset = wrapperElBox.top - topPosition;
356
+ const startPosition = `${startOffset}px`;
357
+ /**
358
+ * If the deltaY is negative then the user is swiping
359
+ * up, so the Toast should animate to the top of the screen.
360
+ * If the deltaY is positive then the user is swiping
361
+ * down, so the Toast should animate to the bottom of the screen.
362
+ * We also account for when the deltaY is 0, but realistically
363
+ * that should never happen because it means the user did not drag
364
+ * the toast.
365
+ */
366
+ const offsetFactor = detail.deltaY <= 0 ? -1 : 1;
367
+ const endOffset = (topPosition + wrapperElBox.height) * offsetFactor;
368
+ /**
369
+ * If the Toast should dismiss
370
+ * then we need to figure out which edge of
371
+ * the screen it should animate towards.
372
+ * By default, the Toast will come
373
+ * back to its default state in the
374
+ * middle of the screen.
375
+ */
376
+ const endPosition = shouldDismiss ? `${endOffset}px` : '0px';
377
+ const KEYFRAMES = [
378
+ { offset: 0, transform: `translateY(${startPosition})` },
379
+ { offset: 1, transform: `translateY(${endPosition})` },
380
+ ];
381
+ swipeAnimation.keyframes(KEYFRAMES);
382
+ /**
383
+ * Compute the remaining amount of pixels the
384
+ * toast needs to move to be fully dismissed.
385
+ */
386
+ remainingDistance = endOffset - startOffset;
387
+ }
388
+ else {
389
+ shouldDismiss = threshold >= DISMISS_THRESHOLD;
390
+ playTo = shouldDismiss ? 1 : 0;
391
+ step = computeStep(detail.deltaY);
392
+ /**
393
+ * Compute the remaining amount of pixels the
394
+ * toast needs to move to be fully dismissed.
395
+ */
396
+ const remainingStepAmount = shouldDismiss ? 1 - step : step;
397
+ remainingDistance = remainingStepAmount * MAX_SWIPE_DISTANCE;
398
+ }
399
+ /**
400
+ * The animation speed should depend on how quickly
401
+ * the user flicks the toast across the screen. However,
402
+ * it should be no slower than 200ms.
403
+ * We use Math.abs on the remainingDistance because that value
404
+ * can be negative when swiping up on a middle position toast.
405
+ */
406
+ const duration = Math.min(Math.abs(remainingDistance) / Math.abs(velocity), 200);
407
+ swipeAnimation
408
+ .onFinish(() => {
409
+ if (shouldDismiss) {
410
+ onDismiss();
411
+ swipeAnimation.destroy();
412
+ }
413
+ else {
414
+ if (el.position === 'middle') {
415
+ /**
416
+ * If the toast snapped back to
417
+ * the middle of the screen we need
418
+ * to reset the keyframes
419
+ * so the toast can be swiped
420
+ * up or down again.
421
+ */
422
+ swipeAnimation.keyframes(SWIPE_UP_DOWN_KEYFRAMES).progressStart(true, 0.5);
423
+ }
424
+ else {
425
+ swipeAnimation.progressStart(true, 0);
426
+ }
427
+ /**
428
+ * If the toast did not dismiss then
429
+ * the user should be able to swipe again.
430
+ */
431
+ gesture.enable(true);
432
+ }
433
+ /**
434
+ * This must be a one time callback
435
+ * otherwise a new callback will
436
+ * be added every time onEnd runs.
437
+ */
438
+ }, { oneTimeCallback: true })
439
+ .progressEnd(playTo, step, duration);
440
+ };
441
+ const gesture = index$2.createGesture({
442
+ el: wrapperEl,
443
+ gestureName: 'toast-swipe-to-dismiss',
444
+ gesturePriority: overlays.OVERLAY_GESTURE_PRIORITY,
445
+ /**
446
+ * Toast only supports vertical swipes.
447
+ * This needs to be updated if we later
448
+ * support horizontal swipes.
449
+ */
450
+ direction: 'y',
451
+ onMove,
452
+ onEnd,
453
+ });
454
+ return gesture;
455
+ };
191
456
 
192
- 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}}";
457
+ 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}}";
193
458
 
194
- 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)}}";
459
+ 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)}}";
195
460
 
196
461
  const Toast = class {
197
- constructor(hostRef) {
198
- index$2.registerInstance(this, hostRef);
199
- this.didPresent = index$2.createEvent(this, "ionToastDidPresent", 7);
200
- this.willPresent = index$2.createEvent(this, "ionToastWillPresent", 7);
201
- this.willDismiss = index$2.createEvent(this, "ionToastWillDismiss", 7);
202
- this.didDismiss = index$2.createEvent(this, "ionToastDidDismiss", 7);
203
- this.didPresentShorthand = index$2.createEvent(this, "didPresent", 7);
204
- this.willPresentShorthand = index$2.createEvent(this, "willPresent", 7);
205
- this.willDismissShorthand = index$2.createEvent(this, "willDismiss", 7);
206
- this.didDismissShorthand = index$2.createEvent(this, "didDismiss", 7);
207
- this.delegateController = overlays.createDelegateController(this);
208
- this.lockController = lockController.createLockController();
209
- this.triggerController = overlays.createTriggerController();
210
- this.customHTMLEnabled = ionicGlobal.config.get('innerHTMLTemplatesEnabled', config.ENABLE_HTML_CONTENT_DEFAULT);
211
- this.presented = false;
212
- this.dispatchCancelHandler = (ev) => {
213
- const role = ev.detail.role;
214
- if (overlays.isCancel(role)) {
215
- const cancelButton = this.getButtons().find((b) => b.role === 'cancel');
216
- this.callButtonHandler(cancelButton);
217
- }
218
- };
219
- this.revealContentToScreenReader = false;
220
- this.overlayIndex = undefined;
221
- this.delegate = undefined;
222
- this.hasController = false;
223
- this.color = undefined;
224
- this.enterAnimation = undefined;
225
- this.leaveAnimation = undefined;
226
- this.cssClass = undefined;
227
- this.duration = ionicGlobal.config.getNumber('toastDuration', 0);
228
- this.header = undefined;
229
- this.layout = 'baseline';
230
- this.message = undefined;
231
- this.keyboardClose = false;
232
- this.position = 'bottom';
233
- this.positionAnchor = undefined;
234
- this.buttons = undefined;
235
- this.translucent = false;
236
- this.animated = true;
237
- this.icon = undefined;
238
- this.htmlAttributes = undefined;
239
- this.isOpen = false;
240
- this.trigger = undefined;
241
- }
242
- onIsOpenChange(newValue, oldValue) {
243
- if (newValue === true && oldValue === false) {
244
- this.present();
462
+ constructor(hostRef) {
463
+ index$3.registerInstance(this, hostRef);
464
+ this.didPresent = index$3.createEvent(this, "ionToastDidPresent", 7);
465
+ this.willPresent = index$3.createEvent(this, "ionToastWillPresent", 7);
466
+ this.willDismiss = index$3.createEvent(this, "ionToastWillDismiss", 7);
467
+ this.didDismiss = index$3.createEvent(this, "ionToastDidDismiss", 7);
468
+ this.didPresentShorthand = index$3.createEvent(this, "didPresent", 7);
469
+ this.willPresentShorthand = index$3.createEvent(this, "willPresent", 7);
470
+ this.willDismissShorthand = index$3.createEvent(this, "willDismiss", 7);
471
+ this.didDismissShorthand = index$3.createEvent(this, "didDismiss", 7);
472
+ this.delegateController = overlays.createDelegateController(this);
473
+ this.lockController = lockController.createLockController();
474
+ this.triggerController = overlays.createTriggerController();
475
+ this.customHTMLEnabled = ionicGlobal.config.get('innerHTMLTemplatesEnabled', config.ENABLE_HTML_CONTENT_DEFAULT);
476
+ this.presented = false;
477
+ this.dispatchCancelHandler = (ev) => {
478
+ const role = ev.detail.role;
479
+ if (overlays.isCancel(role)) {
480
+ const cancelButton = this.getButtons().find((b) => b.role === 'cancel');
481
+ this.callButtonHandler(cancelButton);
482
+ }
483
+ };
484
+ /**
485
+ * Create a new swipe gesture so Toast
486
+ * can be swiped to dismiss.
487
+ */
488
+ this.createSwipeGesture = (toastPosition) => {
489
+ const gesture = (this.gesture = createSwipeToDismissGesture(this.el, toastPosition, () => {
490
+ /**
491
+ * If the gesture completed then
492
+ * we should dismiss the toast.
493
+ */
494
+ this.dismiss(undefined, overlays.GESTURE);
495
+ }));
496
+ gesture.enable(true);
497
+ };
498
+ /**
499
+ * Destroy an existing swipe gesture
500
+ * so Toast can no longer be swiped to dismiss.
501
+ */
502
+ this.destroySwipeGesture = () => {
503
+ const { gesture } = this;
504
+ if (gesture === undefined) {
505
+ return;
506
+ }
507
+ gesture.destroy();
508
+ this.gesture = undefined;
509
+ };
510
+ /**
511
+ * Returns `true` if swipeGesture
512
+ * is configured to a value that enables the swipe behavior.
513
+ * Returns `false` otherwise.
514
+ */
515
+ this.prefersSwipeGesture = () => {
516
+ const { swipeGesture } = this;
517
+ return swipeGesture === 'vertical';
518
+ };
519
+ this.revealContentToScreenReader = false;
520
+ this.overlayIndex = undefined;
521
+ this.delegate = undefined;
522
+ this.hasController = false;
523
+ this.color = undefined;
524
+ this.enterAnimation = undefined;
525
+ this.leaveAnimation = undefined;
526
+ this.cssClass = undefined;
527
+ this.duration = ionicGlobal.config.getNumber('toastDuration', 0);
528
+ this.header = undefined;
529
+ this.layout = 'baseline';
530
+ this.message = undefined;
531
+ this.keyboardClose = false;
532
+ this.position = 'bottom';
533
+ this.positionAnchor = undefined;
534
+ this.buttons = undefined;
535
+ this.translucent = false;
536
+ this.animated = true;
537
+ this.icon = undefined;
538
+ this.htmlAttributes = undefined;
539
+ this.swipeGesture = undefined;
540
+ this.isOpen = false;
541
+ this.trigger = undefined;
542
+ }
543
+ swipeGestureChanged() {
544
+ /**
545
+ * If the Toast is presented, then we need to destroy
546
+ * any actives gestures before a new gesture is potentially
547
+ * created below.
548
+ *
549
+ * If the Toast is dismissed, then no gesture should be available
550
+ * since the Toast is not visible. This case should never
551
+ * happen since the "dismiss" method handles destroying
552
+ * any active swipe gestures, but we keep this code
553
+ * around to handle the first case.
554
+ */
555
+ this.destroySwipeGesture();
556
+ /**
557
+ * A new swipe gesture should only be created
558
+ * if the Toast is presented. If the Toast is not
559
+ * yet presented then the "present" method will
560
+ * handle calling the swipe gesture setup function.
561
+ */
562
+ if (this.presented && this.prefersSwipeGesture()) {
563
+ /**
564
+ * If the Toast is presented then
565
+ * lastPresentedPosition is defined.
566
+ */
567
+ this.createSwipeGesture(this.lastPresentedPosition);
568
+ }
245
569
  }
246
- else if (newValue === false && oldValue === true) {
247
- this.dismiss();
570
+ onIsOpenChange(newValue, oldValue) {
571
+ if (newValue === true && oldValue === false) {
572
+ this.present();
573
+ }
574
+ else if (newValue === false && oldValue === true) {
575
+ this.dismiss();
576
+ }
248
577
  }
249
- }
250
- triggerChanged() {
251
- const { trigger, el, triggerController } = this;
252
- if (trigger) {
253
- triggerController.addClickListener(el, trigger);
578
+ triggerChanged() {
579
+ const { trigger, el, triggerController } = this;
580
+ if (trigger) {
581
+ triggerController.addClickListener(el, trigger);
582
+ }
254
583
  }
255
- }
256
- connectedCallback() {
257
- overlays.prepareOverlay(this.el);
258
- this.triggerChanged();
259
- }
260
- disconnectedCallback() {
261
- this.triggerController.removeClickListener();
262
- }
263
- componentWillLoad() {
264
- overlays.setOverlayId(this.el);
265
- }
266
- componentDidLoad() {
267
- /**
268
- * If toast was rendered with isOpen="true"
269
- * then we should open toast immediately.
270
- */
271
- if (this.isOpen === true) {
272
- helpers.raf(() => this.present());
584
+ connectedCallback() {
585
+ overlays.prepareOverlay(this.el);
586
+ this.triggerChanged();
587
+ }
588
+ disconnectedCallback() {
589
+ this.triggerController.removeClickListener();
590
+ }
591
+ componentWillLoad() {
592
+ overlays.setOverlayId(this.el);
593
+ }
594
+ componentDidLoad() {
595
+ /**
596
+ * If toast was rendered with isOpen="true"
597
+ * then we should open toast immediately.
598
+ */
599
+ if (this.isOpen === true) {
600
+ helpers.raf(() => this.present());
601
+ }
602
+ /**
603
+ * When binding values in frameworks such as Angular
604
+ * it is possible for the value to be set after the Web Component
605
+ * initializes but before the value watcher is set up in Stencil.
606
+ * As a result, the watcher callback may not be fired.
607
+ * We work around this by manually calling the watcher
608
+ * callback when the component has loaded and the watcher
609
+ * is configured.
610
+ */
611
+ this.triggerChanged();
273
612
  }
274
- }
275
- /**
276
- * Present the toast overlay after it has been created.
277
- */
278
- async present() {
279
- const unlock = await this.lockController.lock();
280
- await this.delegateController.attachViewToDom();
281
- const { el, position } = this;
282
- const anchor = this.getAnchorElement();
283
- const animationPosition = getAnimationPosition(position, anchor, ionicGlobal.getIonMode(this), el);
284
613
  /**
285
- * Cache the calculated position of the toast, so we can re-use it
286
- * in the dismiss animation.
614
+ * Present the toast overlay after it has been created.
287
615
  */
288
- this.lastPresentedPosition = animationPosition;
289
- await overlays.present(this, 'toastEnter', iosEnterAnimation, mdEnterAnimation, {
290
- position,
291
- top: animationPosition.top,
292
- bottom: animationPosition.bottom,
293
- });
616
+ async present() {
617
+ const unlock = await this.lockController.lock();
618
+ await this.delegateController.attachViewToDom();
619
+ const { el, position } = this;
620
+ const anchor = this.getAnchorElement();
621
+ const animationPosition = getAnimationPosition(position, anchor, ionicGlobal.getIonMode(this), el);
622
+ /**
623
+ * Cache the calculated position of the toast, so we can re-use it
624
+ * in the dismiss animation.
625
+ */
626
+ this.lastPresentedPosition = animationPosition;
627
+ await overlays.present(this, 'toastEnter', iosEnterAnimation, mdEnterAnimation, {
628
+ position,
629
+ top: animationPosition.top,
630
+ bottom: animationPosition.bottom,
631
+ });
632
+ /**
633
+ * Content is revealed to screen readers after
634
+ * the transition to avoid jank since this
635
+ * state updates will cause a re-render.
636
+ */
637
+ this.revealContentToScreenReader = true;
638
+ if (this.duration > 0) {
639
+ this.durationTimeout = setTimeout(() => this.dismiss(undefined, 'timeout'), this.duration);
640
+ }
641
+ /**
642
+ * If the Toast has a swipe gesture then we can
643
+ * create the gesture so users can swipe the
644
+ * presented Toast.
645
+ */
646
+ if (this.prefersSwipeGesture()) {
647
+ this.createSwipeGesture(animationPosition);
648
+ }
649
+ unlock();
650
+ }
294
651
  /**
295
- * Content is revealed to screen readers after
296
- * the transition to avoid jank since this
297
- * state updates will cause a re-render.
652
+ * Dismiss the toast overlay after it has been presented.
653
+ *
654
+ * @param data Any data to emit in the dismiss events.
655
+ * @param role The role of the element that is dismissing the toast.
656
+ * This can be useful in a button handler for determining which button was
657
+ * clicked to dismiss the toast.
658
+ * Some examples include: ``"cancel"`, `"destructive"`, "selected"`, and `"backdrop"`.
298
659
  */
299
- this.revealContentToScreenReader = true;
300
- if (this.duration > 0) {
301
- this.durationTimeout = setTimeout(() => this.dismiss(undefined, 'timeout'), this.duration);
302
- }
303
- unlock();
304
- }
305
- /**
306
- * Dismiss the toast overlay after it has been presented.
307
- *
308
- * @param data Any data to emit in the dismiss events.
309
- * @param role The role of the element that is dismissing the toast.
310
- * This can be useful in a button handler for determining which button was
311
- * clicked to dismiss the toast.
312
- * Some examples include: ``"cancel"`, `"destructive"`, "selected"`, and `"backdrop"`.
313
- */
314
- async dismiss(data, role) {
315
- var _a, _b;
316
- const unlock = await this.lockController.lock();
317
- const { durationTimeout, position, lastPresentedPosition } = this;
318
- if (durationTimeout) {
319
- clearTimeout(durationTimeout);
660
+ async dismiss(data, role) {
661
+ var _a, _b;
662
+ const unlock = await this.lockController.lock();
663
+ const { durationTimeout, position, lastPresentedPosition } = this;
664
+ if (durationTimeout) {
665
+ clearTimeout(durationTimeout);
666
+ }
667
+ const dismissed = await overlays.dismiss(this, data, role, 'toastLeave', iosLeaveAnimation, mdLeaveAnimation,
668
+ /**
669
+ * Fetch the cached position that was calculated back in the present
670
+ * animation. We always want to animate the dismiss from the same
671
+ * position the present stopped at, so the animation looks continuous.
672
+ */
673
+ {
674
+ position,
675
+ top: (_a = lastPresentedPosition === null || lastPresentedPosition === void 0 ? void 0 : lastPresentedPosition.top) !== null && _a !== void 0 ? _a : '',
676
+ bottom: (_b = lastPresentedPosition === null || lastPresentedPosition === void 0 ? void 0 : lastPresentedPosition.bottom) !== null && _b !== void 0 ? _b : '',
677
+ });
678
+ if (dismissed) {
679
+ this.delegateController.removeViewFromDom();
680
+ this.revealContentToScreenReader = false;
681
+ }
682
+ this.lastPresentedPosition = undefined;
683
+ /**
684
+ * If the Toast has a swipe gesture then we can
685
+ * safely destroy it now that it is dismissed.
686
+ */
687
+ this.destroySwipeGesture();
688
+ unlock();
689
+ return dismissed;
320
690
  }
321
- const dismissed = await overlays.dismiss(this, data, role, 'toastLeave', iosLeaveAnimation, mdLeaveAnimation,
322
691
  /**
323
- * Fetch the cached position that was calculated back in the present
324
- * animation. We always want to animate the dismiss from the same
325
- * position the present stopped at, so the animation looks continuous.
692
+ * Returns a promise that resolves when the toast did dismiss.
326
693
  */
327
- {
328
- position,
329
- top: (_a = lastPresentedPosition === null || lastPresentedPosition === void 0 ? void 0 : lastPresentedPosition.top) !== null && _a !== void 0 ? _a : '',
330
- bottom: (_b = lastPresentedPosition === null || lastPresentedPosition === void 0 ? void 0 : lastPresentedPosition.bottom) !== null && _b !== void 0 ? _b : '',
331
- });
332
- if (dismissed) {
333
- this.delegateController.removeViewFromDom();
334
- this.revealContentToScreenReader = false;
694
+ onDidDismiss() {
695
+ return overlays.eventMethod(this.el, 'ionToastDidDismiss');
335
696
  }
336
- this.lastPresentedPosition = undefined;
337
- unlock();
338
- return dismissed;
339
- }
340
- /**
341
- * Returns a promise that resolves when the toast did dismiss.
342
- */
343
- onDidDismiss() {
344
- return overlays.eventMethod(this.el, 'ionToastDidDismiss');
345
- }
346
- /**
347
- * Returns a promise that resolves when the toast will dismiss.
348
- */
349
- onWillDismiss() {
350
- return overlays.eventMethod(this.el, 'ionToastWillDismiss');
351
- }
352
- getButtons() {
353
- const buttons = this.buttons
354
- ? this.buttons.map((b) => {
355
- return typeof b === 'string' ? { text: b } : b;
356
- })
357
- : [];
358
- return buttons;
359
- }
360
- /**
361
- * Returns the element specified by the positionAnchor prop,
362
- * or undefined if prop's value is an ID string and the element
363
- * is not found in the DOM.
364
- */
365
- getAnchorElement() {
366
- const { position, positionAnchor, el } = this;
367
697
  /**
368
- * If positionAnchor is undefined then
369
- * no anchor should be used when presenting the toast.
698
+ * Returns a promise that resolves when the toast will dismiss.
370
699
  */
371
- if (positionAnchor === undefined) {
372
- return;
700
+ onWillDismiss() {
701
+ return overlays.eventMethod(this.el, 'ionToastWillDismiss');
373
702
  }
374
- if (position === 'middle' && positionAnchor !== undefined) {
375
- index$1.printIonWarning('The positionAnchor property is ignored when using position="middle".', this.el);
376
- return undefined;
703
+ getButtons() {
704
+ const buttons = this.buttons
705
+ ? this.buttons.map((b) => {
706
+ return typeof b === 'string' ? { text: b } : b;
707
+ })
708
+ : [];
709
+ return buttons;
377
710
  }
378
- if (typeof positionAnchor === 'string') {
379
- /**
380
- * If the anchor is defined as an ID, find the element.
381
- * We do this on every present so the toast doesn't need
382
- * to account for the surrounding DOM changing since the
383
- * last time it was presented.
384
- */
385
- const foundEl = document.getElementById(positionAnchor);
386
- if (foundEl === null) {
387
- index$1.printIonWarning(`An anchor element with an ID of "${positionAnchor}" was not found in the DOM.`, el);
711
+ /**
712
+ * Returns the element specified by the positionAnchor prop,
713
+ * or undefined if prop's value is an ID string and the element
714
+ * is not found in the DOM.
715
+ */
716
+ getAnchorElement() {
717
+ const { position, positionAnchor, el } = this;
718
+ /**
719
+ * If positionAnchor is undefined then
720
+ * no anchor should be used when presenting the toast.
721
+ */
722
+ if (positionAnchor === undefined) {
723
+ return;
724
+ }
725
+ if (position === 'middle' && positionAnchor !== undefined) {
726
+ index$1.printIonWarning('The positionAnchor property is ignored when using position="middle".', this.el);
727
+ return undefined;
728
+ }
729
+ if (typeof positionAnchor === 'string') {
730
+ /**
731
+ * If the anchor is defined as an ID, find the element.
732
+ * We do this on every present so the toast doesn't need
733
+ * to account for the surrounding DOM changing since the
734
+ * last time it was presented.
735
+ */
736
+ const foundEl = document.getElementById(positionAnchor);
737
+ if (foundEl === null) {
738
+ index$1.printIonWarning(`An anchor element with an ID of "${positionAnchor}" was not found in the DOM.`, el);
739
+ return undefined;
740
+ }
741
+ return foundEl;
742
+ }
743
+ if (positionAnchor instanceof HTMLElement) {
744
+ return positionAnchor;
745
+ }
746
+ index$1.printIonWarning('Invalid positionAnchor value:', positionAnchor, el);
388
747
  return undefined;
389
- }
390
- return foundEl;
391
- }
392
- if (positionAnchor instanceof HTMLElement) {
393
- return positionAnchor;
394
- }
395
- index$1.printIonWarning('Invalid positionAnchor value:', positionAnchor, el);
396
- return undefined;
397
- }
398
- async buttonClick(button) {
399
- const role = button.role;
400
- if (overlays.isCancel(role)) {
401
- return this.dismiss(undefined, role);
402
748
  }
403
- const shouldDismiss = await this.callButtonHandler(button);
404
- if (shouldDismiss) {
405
- return this.dismiss(undefined, role);
749
+ async buttonClick(button) {
750
+ const role = button.role;
751
+ if (overlays.isCancel(role)) {
752
+ return this.dismiss(undefined, role);
753
+ }
754
+ const shouldDismiss = await this.callButtonHandler(button);
755
+ if (shouldDismiss) {
756
+ return this.dismiss(undefined, role);
757
+ }
758
+ return Promise.resolve();
406
759
  }
407
- return Promise.resolve();
408
- }
409
- async callButtonHandler(button) {
410
- if (button === null || button === void 0 ? void 0 : button.handler) {
411
- // a handler has been provided, execute it
412
- // pass the handler the values from the inputs
413
- try {
414
- const rtn = await overlays.safeCall(button.handler);
415
- if (rtn === false) {
416
- // if the return value of the handler is false then do not dismiss
417
- return false;
760
+ async callButtonHandler(button) {
761
+ if (button === null || button === void 0 ? void 0 : button.handler) {
762
+ // a handler has been provided, execute it
763
+ // pass the handler the values from the inputs
764
+ try {
765
+ const rtn = await overlays.safeCall(button.handler);
766
+ if (rtn === false) {
767
+ // if the return value of the handler is false then do not dismiss
768
+ return false;
769
+ }
770
+ }
771
+ catch (e) {
772
+ console.error(e);
773
+ }
418
774
  }
419
- }
420
- catch (e) {
421
- console.error(e);
422
- }
775
+ return true;
423
776
  }
424
- return true;
425
- }
426
- renderButtons(buttons, side) {
427
- if (buttons.length === 0) {
428
- return;
777
+ renderButtons(buttons, side) {
778
+ if (buttons.length === 0) {
779
+ return;
780
+ }
781
+ const mode = ionicGlobal.getIonMode(this);
782
+ const buttonGroupsClasses = {
783
+ 'toast-button-group': true,
784
+ [`toast-button-group-${side}`]: true,
785
+ };
786
+ return (index$3.h("div", { class: buttonGroupsClasses }, buttons.map((b) => (index$3.h("button", Object.assign({}, b.htmlAttributes, { type: "button", class: buttonClass(b), tabIndex: 0, onClick: () => this.buttonClick(b), part: buttonPart(b) }), index$3.h("div", { class: "toast-button-inner" }, b.icon && (index$3.h("ion-icon", { "aria-hidden": "true", icon: b.icon, slot: b.text === undefined ? 'icon-only' : undefined, class: "toast-button-icon" })), b.text), mode === 'md' && (index$3.h("ion-ripple-effect", { type: b.icon !== undefined && b.text === undefined ? 'unbounded' : 'bounded' })))))));
429
787
  }
430
- const mode = ionicGlobal.getIonMode(this);
431
- const buttonGroupsClasses = {
432
- 'toast-button-group': true,
433
- [`toast-button-group-${side}`]: true,
434
- };
435
- return (index$2.h("div", { class: buttonGroupsClasses }, buttons.map((b) => (index$2.h("button", Object.assign({}, b.htmlAttributes, { type: "button", class: buttonClass(b), tabIndex: 0, onClick: () => this.buttonClick(b), part: buttonPart(b) }), index$2.h("div", { class: "toast-button-inner" }, b.icon && (index$2.h("ion-icon", { "aria-hidden": "true", icon: b.icon, slot: b.text === undefined ? 'icon-only' : undefined, class: "toast-button-icon" })), b.text), mode === 'md' && (index$2.h("ion-ripple-effect", { type: b.icon !== undefined && b.text === undefined ? 'unbounded' : 'bounded' })))))));
436
- }
437
- /**
438
- * Render the `message` property.
439
- * @param key - A key to give the element a stable identity. This is used to improve compatibility with screen readers.
440
- * @param ariaHidden - If "true" then content will be hidden from screen readers.
441
- */
442
- renderToastMessage(key, ariaHidden = null) {
443
- const { customHTMLEnabled, message } = this;
444
- if (customHTMLEnabled) {
445
- return (index$2.h("div", { key: key, "aria-hidden": ariaHidden, class: "toast-message", part: "message", innerHTML: config.sanitizeDOMString(message) }));
788
+ /**
789
+ * Render the `message` property.
790
+ * @param key - A key to give the element a stable identity. This is used to improve compatibility with screen readers.
791
+ * @param ariaHidden - If "true" then content will be hidden from screen readers.
792
+ */
793
+ renderToastMessage(key, ariaHidden = null) {
794
+ const { customHTMLEnabled, message } = this;
795
+ if (customHTMLEnabled) {
796
+ return (index$3.h("div", { key: key, "aria-hidden": ariaHidden, class: "toast-message", part: "message", innerHTML: config.sanitizeDOMString(message) }));
797
+ }
798
+ return (index$3.h("div", { key: key, "aria-hidden": ariaHidden, class: "toast-message", part: "message" }, message));
446
799
  }
447
- return (index$2.h("div", { key: key, "aria-hidden": ariaHidden, class: "toast-message", part: "message" }, message));
448
- }
449
- /**
450
- * Render the `header` property.
451
- * @param key - A key to give the element a stable identity. This is used to improve compatibility with screen readers.
452
- * @param ariaHidden - If "true" then content will be hidden from screen readers.
453
- */
454
- renderHeader(key, ariaHidden = null) {
455
- return (index$2.h("div", { key: key, class: "toast-header", "aria-hidden": ariaHidden, part: "header" }, this.header));
456
- }
457
- render() {
458
- const { layout, el, revealContentToScreenReader, header, message } = this;
459
- const allButtons = this.getButtons();
460
- const startButtons = allButtons.filter((b) => b.side === 'start');
461
- const endButtons = allButtons.filter((b) => b.side !== 'start');
462
- const mode = ionicGlobal.getIonMode(this);
463
- const wrapperClass = {
464
- 'toast-wrapper': true,
465
- [`toast-${this.position}`]: true,
466
- [`toast-layout-${layout}`]: true,
467
- };
468
800
  /**
469
- * Stacked buttons are only meant to be
470
- * used with one type of button.
801
+ * Render the `header` property.
802
+ * @param key - A key to give the element a stable identity. This is used to improve compatibility with screen readers.
803
+ * @param ariaHidden - If "true" then content will be hidden from screen readers.
471
804
  */
472
- if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
473
- index$1.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);
805
+ renderHeader(key, ariaHidden = null) {
806
+ return (index$3.h("div", { key: key, class: "toast-header", "aria-hidden": ariaHidden, part: "header" }, this.header));
807
+ }
808
+ render() {
809
+ const { layout, el, revealContentToScreenReader, header, message } = this;
810
+ const allButtons = this.getButtons();
811
+ const startButtons = allButtons.filter((b) => b.side === 'start');
812
+ const endButtons = allButtons.filter((b) => b.side !== 'start');
813
+ const mode = ionicGlobal.getIonMode(this);
814
+ const wrapperClass = {
815
+ 'toast-wrapper': true,
816
+ [`toast-${this.position}`]: true,
817
+ [`toast-layout-${layout}`]: true,
818
+ };
819
+ /**
820
+ * Stacked buttons are only meant to be
821
+ * used with one type of button.
822
+ */
823
+ if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
824
+ index$1.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);
825
+ }
826
+ return (index$3.h(index$3.Host, Object.assign({ tabindex: "-1" }, this.htmlAttributes, { style: {
827
+ zIndex: `${60000 + this.overlayIndex}`,
828
+ }, class: theme.createColorClasses(this.color, Object.assign(Object.assign({ [mode]: true }, theme.getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), index$3.h("div", { class: wrapperClass }, index$3.h("div", { class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (index$3.h("ion-icon", { class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), index$3.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
829
  }
475
- return (index$2.h(index$2.Host, Object.assign({ tabindex: "-1" }, this.htmlAttributes, { style: {
476
- zIndex: `${60000 + this.overlayIndex}`,
477
- }, class: theme.createColorClasses(this.color, Object.assign(Object.assign({ [mode]: true }, theme.getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), index$2.h("div", { class: wrapperClass }, index$2.h("div", { class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (index$2.h("ion-icon", { class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), index$2.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')))));
478
- }
479
- get el() { return index$2.getElement(this); }
480
- static get watchers() { return {
481
- "isOpen": ["onIsOpenChange"],
482
- "trigger": ["triggerChanged"]
483
- }; }
830
+ get el() { return index$3.getElement(this); }
831
+ static get watchers() { return {
832
+ "swipeGesture": ["swipeGestureChanged"],
833
+ "isOpen": ["onIsOpenChange"],
834
+ "trigger": ["triggerChanged"]
835
+ }; }
484
836
  };
485
837
  const buttonClass = (button) => {
486
- 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 }, theme.getClassMap(button.cssClass));
838
+ 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 }, theme.getClassMap(button.cssClass));
487
839
  };
488
840
  const buttonPart = (button) => {
489
- return overlays.isCancel(button.role) ? 'button cancel' : 'button';
841
+ return overlays.isCancel(button.role) ? 'button cancel' : 'button';
490
842
  };
491
843
  Toast.style = {
492
- ios: toastIosCss,
493
- md: toastMdCss
844
+ ios: toastIosCss,
845
+ md: toastMdCss
494
846
  };
495
847
 
496
848
  exports.ion_toast = Toast;