voyager-ionic-core 7.2.3 → 7.5.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 (1402) hide show
  1. package/components/action-sheet.js +14 -19
  2. package/components/alert.js +25 -20
  3. package/components/animation.js +60 -1
  4. package/components/button-active.js +1 -1
  5. package/components/button.js +20 -2
  6. package/components/buttons.js +2 -2
  7. package/components/checkbox.js +18 -7
  8. package/components/data.js +143 -31
  9. package/components/framework-delegate.js +21 -2
  10. package/components/haptic.js +1 -0
  11. package/components/icon.js +37 -18
  12. package/components/index.d.ts +6 -0
  13. package/components/index.js +4 -3
  14. package/components/index2.js +203 -429
  15. package/components/index3.js +429 -203
  16. package/components/index4.js +26 -19
  17. package/components/index7.js +1 -1
  18. package/components/input-shims.js +88 -7
  19. package/components/ion-accordion-group.js +5 -1
  20. package/components/ion-accordion.js +2 -0
  21. package/components/ion-back-button.js +2 -2
  22. package/components/ion-badge.js +2 -2
  23. package/components/ion-breadcrumb.js +2 -2
  24. package/components/ion-breadcrumbs.js +5 -1
  25. package/components/ion-card-content.js +2 -2
  26. package/components/ion-card-subtitle.js +2 -2
  27. package/components/ion-card-title.js +2 -2
  28. package/components/ion-card.js +2 -2
  29. package/components/ion-chip.js +8 -3
  30. package/components/ion-content.js +51 -5
  31. package/components/ion-datetime-button.js +9 -6
  32. package/components/ion-datetime.js +146 -96
  33. package/components/ion-fab-list.js +3 -1
  34. package/components/ion-fab.js +3 -1
  35. package/components/ion-header.js +1 -1
  36. package/components/ion-img.js +2 -0
  37. package/components/ion-infinite-scroll.js +3 -0
  38. package/components/ion-input.js +8 -3
  39. package/components/ion-item-divider.js +2 -2
  40. package/components/ion-item-option.js +2 -2
  41. package/components/ion-item-options.js +2 -2
  42. package/components/ion-item-sliding.js +3 -1
  43. package/components/ion-loading.js +13 -18
  44. package/components/ion-menu-button.js +2 -2
  45. package/components/ion-menu.js +73 -35
  46. package/components/ion-modal.js +46 -42
  47. package/components/ion-nav.js +6 -2
  48. package/components/ion-picker.js +11 -16
  49. package/components/ion-range.js +41 -6
  50. package/components/ion-refresher.js +5 -3
  51. package/components/ion-reorder-group.js +3 -1
  52. package/components/ion-reorder.js +2 -2
  53. package/components/ion-route-redirect.js +3 -0
  54. package/components/ion-route.js +4 -0
  55. package/components/ion-router-outlet.js +10 -14
  56. package/components/ion-router.js +3 -0
  57. package/components/ion-searchbar.js +13 -3
  58. package/components/ion-segment-button.js +2 -0
  59. package/components/ion-segment.js +42 -25
  60. package/components/ion-select.js +39 -20
  61. package/components/ion-split-pane.js +4 -0
  62. package/components/ion-tab-bar.js +6 -0
  63. package/components/ion-tab.js +2 -0
  64. package/components/ion-textarea.js +8 -4
  65. package/components/ion-title.js +4 -2
  66. package/components/ion-toast.js +171 -29
  67. package/components/ion-toggle.js +12 -4
  68. package/components/ion-toolbar.js +2 -2
  69. package/components/ios.transition.js +6 -5
  70. package/components/item.js +48 -10
  71. package/components/label.js +5 -2
  72. package/components/list-header.js +2 -2
  73. package/components/lock-controller.js +38 -0
  74. package/components/md.transition.js +1 -1
  75. package/components/notch-controller.js +1 -1
  76. package/components/note.js +2 -2
  77. package/components/overlays.js +31 -10
  78. package/components/picker-column-internal.js +2 -0
  79. package/components/picker-column.js +3 -1
  80. package/components/popover.js +20 -30
  81. package/components/radio-group.js +4 -2
  82. package/components/radio.js +15 -4
  83. package/components/swipe-back.js +8 -4
  84. package/css/core.css +100 -1
  85. package/css/core.css.map +1 -1
  86. package/css/display.css +33 -0
  87. package/css/display.css.map +1 -1
  88. package/css/float-elements.css +33 -0
  89. package/css/float-elements.css.map +1 -1
  90. package/css/global.bundle.css +84 -6
  91. package/css/global.bundle.css.map +1 -1
  92. package/css/ionic-swiper.css +33 -0
  93. package/css/ionic-swiper.css.map +1 -1
  94. package/css/ionic.bundle.css +1 -1
  95. package/css/ionic.bundle.css.map +1 -1
  96. package/css/padding.css +33 -0
  97. package/css/padding.css.map +1 -1
  98. package/css/structure.css +33 -0
  99. package/css/structure.css.map +1 -1
  100. package/css/text-alignment.css +33 -0
  101. package/css/text-alignment.css.map +1 -1
  102. package/css/text-transformation.css +33 -0
  103. package/css/text-transformation.css.map +1 -1
  104. package/css/typography.css +51 -6
  105. package/css/typography.css.map +1 -1
  106. package/css/utils.bundle.css +165 -0
  107. package/css/utils.bundle.css.map +1 -1
  108. package/dist/cjs/{animation-c68ec4cb.js → animation-c8bdd3c7.js} +62 -3
  109. package/dist/cjs/{app-globals-3ba8ddad.js → app-globals-fe1ad535.js} +1 -1
  110. package/dist/cjs/{button-active-7578c6c2.js → button-active-c0ff1915.js} +3 -3
  111. package/dist/cjs/{capacitor-a77e977e.js → capacitor-2ffba62a.js} +1 -1
  112. package/dist/cjs/{data-3a7f5c1a.js → data-c8d21093.js} +144 -32
  113. package/dist/cjs/{form-controller-d42b8c05.js → form-controller-5e223b54.js} +1 -1
  114. package/dist/cjs/{framework-delegate-d2bbe945.js → framework-delegate-c0873a6f.js} +22 -3
  115. package/dist/cjs/{haptic-89b33156.js → haptic-678abc9f.js} +2 -1
  116. package/dist/cjs/{index-b0e73ba0.js → index-09471526.js} +1 -1
  117. package/dist/cjs/{index-def9efb5.js → index-0ee995e4.js} +1 -1
  118. package/dist/cjs/{index-dc56ac38.js → index-10873539.js} +2 -2
  119. package/dist/cjs/{index-b358eb23.js → index-305a23dc.js} +283 -96
  120. package/dist/cjs/{index-1901dd17.js → index-5e7529f6.js} +30 -23
  121. package/dist/cjs/{index-404c1016.js → index-9f379eaa.js} +2 -2
  122. package/dist/cjs/{index-4e642409.js → index-d93fb71d.js} +4 -4
  123. package/dist/cjs/index.cjs.js +26 -23
  124. package/dist/cjs/{input-shims-9b42b3fe.js → input-shims-da7dc0de.js} +96 -16
  125. package/dist/cjs/{input.utils-7e077818.js → input.utils-0fe3097c.js} +3 -3
  126. package/dist/cjs/ion-accordion_2.cjs.entry.js +5 -5
  127. package/dist/cjs/ion-action-sheet.cjs.entry.js +26 -34
  128. package/dist/cjs/ion-alert.cjs.entry.js +35 -35
  129. package/dist/cjs/ion-app_8.cjs.entry.js +84 -44
  130. package/dist/cjs/ion-avatar_3.cjs.entry.js +5 -5
  131. package/dist/cjs/ion-back-button.cjs.entry.js +7 -7
  132. package/dist/cjs/ion-backdrop.cjs.entry.js +3 -3
  133. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +7 -7
  134. package/dist/cjs/ion-button_2.cjs.entry.js +54 -25
  135. package/dist/cjs/ion-card_5.cjs.entry.js +12 -12
  136. package/dist/cjs/ion-checkbox.cjs.entry.js +20 -13
  137. package/dist/cjs/ion-chip.cjs.entry.js +10 -5
  138. package/dist/cjs/ion-col_3.cjs.entry.js +2 -2
  139. package/dist/cjs/ion-datetime-button.cjs.entry.js +14 -11
  140. package/dist/cjs/ion-datetime_3.cjs.entry.js +159 -128
  141. package/dist/cjs/ion-fab_3.cjs.entry.js +7 -7
  142. package/dist/cjs/ion-img.cjs.entry.js +3 -3
  143. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +6 -6
  144. package/dist/cjs/ion-input.cjs.entry.js +13 -13
  145. package/dist/cjs/ion-item-option_3.cjs.entry.js +12 -12
  146. package/dist/cjs/ion-item_8.cjs.entry.js +49 -22
  147. package/dist/cjs/ion-loading.cjs.entry.js +21 -29
  148. package/dist/cjs/ion-menu_3.cjs.entry.js +83 -49
  149. package/dist/cjs/ion-modal.cjs.entry.js +59 -58
  150. package/dist/cjs/ion-nav_2.cjs.entry.js +9 -8
  151. package/dist/cjs/ion-picker-column-internal.cjs.entry.js +7 -7
  152. package/dist/cjs/ion-picker-internal.cjs.entry.js +2 -2
  153. package/dist/cjs/ion-popover.cjs.entry.js +26 -40
  154. package/dist/cjs/ion-progress-bar.cjs.entry.js +4 -4
  155. package/dist/cjs/ion-radio_2.cjs.entry.js +16 -11
  156. package/dist/cjs/ion-range.cjs.entry.js +42 -14
  157. package/dist/cjs/ion-refresher_2.cjs.entry.js +16 -16
  158. package/dist/cjs/ion-reorder_2.cjs.entry.js +12 -12
  159. package/dist/cjs/ion-ripple-effect.cjs.entry.js +2 -2
  160. package/dist/cjs/ion-route_4.cjs.entry.js +7 -4
  161. package/dist/cjs/ion-searchbar.cjs.entry.js +15 -9
  162. package/dist/cjs/ion-segment_2.cjs.entry.js +40 -29
  163. package/dist/cjs/ion-select_3.cjs.entry.js +48 -34
  164. package/dist/cjs/ion-spinner.cjs.entry.js +4 -4
  165. package/dist/cjs/ion-split-pane.cjs.entry.js +2 -2
  166. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +12 -8
  167. package/dist/cjs/ion-tab_2.cjs.entry.js +3 -3
  168. package/dist/cjs/ion-text.cjs.entry.js +3 -3
  169. package/dist/cjs/ion-textarea.cjs.entry.js +12 -12
  170. package/dist/cjs/ion-toast.cjs.entry.js +192 -55
  171. package/dist/cjs/ion-toggle.cjs.entry.js +20 -15
  172. package/dist/cjs/{ionic-global-5e671da5.js → ionic-global-fb752503.js} +1 -1
  173. package/dist/cjs/ionic.cjs.js +5 -8
  174. package/dist/cjs/{ios.transition-0b0d2e7f.js → ios.transition-a4d545dd.js} +10 -9
  175. package/dist/cjs/{keyboard-2eabd73b.js → keyboard-38f2bb7b.js} +3 -3
  176. package/dist/cjs/{keyboard-controller-4aa8c1d6.js → keyboard-controller-50beb83a.js} +2 -2
  177. package/dist/cjs/{keyboard-f35d0b9d.js → keyboard-fd7db491.js} +1 -1
  178. package/dist/cjs/loader.cjs.js +5 -14
  179. package/dist/cjs/lock-controller-4ae2eb59.js +40 -0
  180. package/dist/cjs/{md.transition-481e9b5f.js → md.transition-80bb961b.js} +5 -5
  181. package/dist/cjs/{notch-controller-159c65d4.js → notch-controller-f4f6af5d.js} +3 -3
  182. package/dist/cjs/{overlays-d17b3668.js → overlays-1a734051.js} +37 -16
  183. package/dist/cjs/{status-tap-6061aa3f.js → status-tap-778e8054.js} +4 -4
  184. package/dist/cjs/{swipe-back-75dad2d4.js → swipe-back-7e843e77.js} +11 -7
  185. package/dist/collection/collection-manifest.json +94 -94
  186. package/dist/collection/components/accordion/accordion.ios.css +66 -0
  187. package/dist/collection/components/accordion/accordion.js +4 -4
  188. package/dist/collection/components/accordion/accordion.md.css +33 -0
  189. package/dist/collection/components/accordion/test/a11y/accordion.e2e.js +1 -1
  190. package/dist/collection/components/accordion/test/accordion.e2e.js +1 -1
  191. package/dist/collection/components/accordion/test/basic/accordion.e2e.js +1 -1
  192. package/dist/collection/components/accordion/test/multiple/accordion.e2e.js +1 -1
  193. package/dist/collection/components/accordion/test/nested/accordion.e2e.js +1 -1
  194. package/dist/collection/components/accordion/test/standalone/accordion.e2e.js +2 -2
  195. package/dist/collection/components/accordion-group/accordion-group.ios.css +66 -0
  196. package/dist/collection/components/accordion-group/accordion-group.js +12 -7
  197. package/dist/collection/components/accordion-group/accordion-group.md.css +99 -0
  198. package/dist/collection/components/action-sheet/action-sheet.ios.css +80 -12
  199. package/dist/collection/components/action-sheet/action-sheet.js +47 -39
  200. package/dist/collection/components/action-sheet/action-sheet.md.css +76 -8
  201. package/dist/collection/components/action-sheet/test/a11y/action-sheet.e2e.js +46 -4
  202. package/dist/collection/components/action-sheet/test/basic/action-sheet-rendering.e2e.js +1 -1
  203. package/dist/collection/components/action-sheet/test/basic/action-sheet.e2e.js +2 -2
  204. package/dist/collection/components/action-sheet/test/basic/fixture.js +1 -1
  205. package/dist/collection/components/action-sheet/test/is-open/action-sheet.e2e.js +1 -1
  206. package/dist/collection/components/action-sheet/test/translucent/action-sheet.e2e.js +1 -1
  207. package/dist/collection/components/action-sheet/test/trigger/action-sheet.e2e.js +1 -1
  208. package/dist/collection/components/alert/alert.ios.css +141 -29
  209. package/dist/collection/components/alert/alert.js +60 -42
  210. package/dist/collection/components/alert/alert.md.css +111 -17
  211. package/dist/collection/components/alert/test/a11y/alert.e2e.js +133 -2
  212. package/dist/collection/components/alert/test/basic/alert.e2e.js +1 -1
  213. package/dist/collection/components/alert/test/is-open/alert.e2e.js +1 -1
  214. package/dist/collection/components/alert/test/standalone/alert.e2e.js +1 -1
  215. package/dist/collection/components/alert/test/trigger/alert.e2e.js +1 -1
  216. package/dist/collection/components/app/app.js +7 -5
  217. package/dist/collection/components/app/test/safe-area/app.e2e.js +1 -1
  218. package/dist/collection/components/avatar/avatar.ios.css +66 -0
  219. package/dist/collection/components/avatar/avatar.js +2 -2
  220. package/dist/collection/components/avatar/avatar.md.css +66 -0
  221. package/dist/collection/components/avatar/test/basic/avatar.e2e.js +1 -1
  222. package/dist/collection/components/back-button/back-button.ios.css +83 -1
  223. package/dist/collection/components/back-button/back-button.js +8 -6
  224. package/dist/collection/components/back-button/back-button.md.css +75 -3
  225. package/dist/collection/components/back-button/test/a11y/back-button.e2e.js +26 -0
  226. package/dist/collection/components/back-button/test/basic/back-button.e2e.js +1 -1
  227. package/dist/collection/components/back-button/test/toolbar/back-button.e2e.js +1 -1
  228. package/dist/collection/components/backdrop/backdrop.ios.css +66 -0
  229. package/dist/collection/components/backdrop/backdrop.js +2 -2
  230. package/dist/collection/components/backdrop/backdrop.md.css +66 -0
  231. package/dist/collection/components/badge/badge.ios.css +75 -1
  232. package/dist/collection/components/badge/badge.js +4 -3
  233. package/dist/collection/components/badge/badge.md.css +67 -1
  234. package/dist/collection/components/badge/test/a11y/badge.e2e.js +22 -0
  235. package/dist/collection/components/badge/test/basic/badge.e2e.js +1 -1
  236. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +80 -3
  237. package/dist/collection/components/breadcrumb/breadcrumb.js +11 -7
  238. package/dist/collection/components/breadcrumb/breadcrumb.md.css +69 -3
  239. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +33 -0
  240. package/dist/collection/components/breadcrumbs/breadcrumbs.js +6 -4
  241. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +33 -0
  242. package/dist/collection/components/breadcrumbs/test/a11y/breadcrumbs.e2e.js +23 -2
  243. package/dist/collection/components/breadcrumbs/test/basic/breadcrumbs.e2e.js +1 -1
  244. package/dist/collection/components/breadcrumbs/test/collapsed/breadcrumbs.e2e.js +1 -1
  245. package/dist/collection/components/breadcrumbs/test/reactive/breadcrumbs.e2e.js +1 -1
  246. package/dist/collection/components/button/button.ios.css +118 -19
  247. package/dist/collection/components/button/button.js +26 -6
  248. package/dist/collection/components/button/button.md.css +69 -3
  249. package/dist/collection/components/button/test/a11y/button.e2e.js +61 -0
  250. package/dist/collection/components/button/test/basic/button.e2e.js +1 -1
  251. package/dist/collection/components/button/test/clear/button.e2e.js +1 -1
  252. package/dist/collection/components/button/test/expand/button.e2e.js +1 -1
  253. package/dist/collection/components/button/test/form-reference/button.e2e.js +1 -1
  254. package/dist/collection/components/button/test/icon/button.e2e.js +1 -1
  255. package/dist/collection/components/button/test/outline/button.e2e.js +1 -1
  256. package/dist/collection/components/button/test/round/button.e2e.js +1 -1
  257. package/dist/collection/components/button/test/size/button.e2e.js +1 -1
  258. package/dist/collection/components/button/test/strong/button.e2e.js +1 -1
  259. package/dist/collection/components/button/test/wrap/button.e2e.js +1 -1
  260. package/dist/collection/components/buttons/buttons.ios.css +102 -3
  261. package/dist/collection/components/buttons/buttons.js +2 -2
  262. package/dist/collection/components/buttons/buttons.md.css +101 -2
  263. package/dist/collection/components/buttons/test/a11y/buttons.e2e.js +74 -0
  264. package/dist/collection/components/card/card.ios.css +67 -1
  265. package/dist/collection/components/card/card.js +8 -5
  266. package/dist/collection/components/card/card.md.css +67 -1
  267. package/dist/collection/components/card/test/a11y/card.e2e.js +31 -0
  268. package/dist/collection/components/card/test/basic/card.e2e.js +1 -1
  269. package/dist/collection/components/card-content/card-content.ios.css +71 -5
  270. package/dist/collection/components/card-content/card-content.js +2 -2
  271. package/dist/collection/components/card-content/card-content.md.css +71 -5
  272. package/dist/collection/components/card-header/card-header.ios.css +66 -0
  273. package/dist/collection/components/card-header/card-header.js +4 -3
  274. package/dist/collection/components/card-header/card-header.md.css +66 -0
  275. package/dist/collection/components/card-header/test/basic/card-header.e2e.js +1 -1
  276. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +67 -1
  277. package/dist/collection/components/card-subtitle/card-subtitle.js +4 -3
  278. package/dist/collection/components/card-subtitle/card-subtitle.md.css +67 -1
  279. package/dist/collection/components/card-title/card-title.ios.css +67 -1
  280. package/dist/collection/components/card-title/card-title.js +4 -3
  281. package/dist/collection/components/card-title/card-title.md.css +67 -1
  282. package/dist/collection/components/checkbox/checkbox.ios.css +168 -2
  283. package/dist/collection/components/checkbox/checkbox.js +41 -13
  284. package/dist/collection/components/checkbox/checkbox.md.css +166 -0
  285. package/dist/collection/components/checkbox/test/a11y/checkbox.e2e.js +20 -2
  286. package/dist/collection/components/checkbox/test/basic/checkbox.e2e.js +18 -1
  287. package/dist/collection/components/checkbox/test/color/checkbox.e2e.js +3 -3
  288. package/dist/collection/components/checkbox/test/indeterminate/checkbox.e2e.js +1 -1
  289. package/dist/collection/components/checkbox/test/item/checkbox.e2e.js +18 -5
  290. package/dist/collection/components/checkbox/test/label/checkbox.e2e.js +38 -11
  291. package/dist/collection/components/checkbox/test/legacy/basic/checkbox.e2e.js +19 -2
  292. package/dist/collection/components/checkbox/test/legacy/indeterminate/checkbox.e2e.js +2 -2
  293. package/dist/collection/components/checkbox/test/states/checkbox.e2e.js +5 -5
  294. package/dist/collection/components/chip/chip.ios.css +190 -0
  295. package/dist/collection/components/chip/chip.js +8 -5
  296. package/dist/collection/components/chip/{chip.css → chip.md.css} +43 -7
  297. package/dist/collection/components/chip/test/a11y/chip.e2e.js +58 -0
  298. package/dist/collection/components/chip/test/basic/chip.e2e.js +1 -1
  299. package/dist/collection/components/chip/test/states/chip.e2e.js +1 -1
  300. package/dist/collection/components/col/col.css +66 -0
  301. package/dist/collection/components/col/col.js +2 -2
  302. package/dist/collection/components/content/content.css +33 -0
  303. package/dist/collection/components/content/content.js +76 -24
  304. package/dist/collection/components/content/test/basic/content.e2e.js +1 -1
  305. package/dist/collection/components/content/test/fixed/content.e2e.js +1 -1
  306. package/dist/collection/components/content/test/fullscreen/content.e2e.js +1 -1
  307. package/dist/collection/components/content/test/standalone/content.e2e.js +1 -1
  308. package/dist/collection/components/datetime/datetime.ios.css +228 -34
  309. package/dist/collection/components/datetime/datetime.js +181 -120
  310. package/dist/collection/components/datetime/datetime.md.css +117 -33
  311. package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +28 -0
  312. package/dist/collection/components/datetime/test/basic/datetime.e2e.js +26 -1
  313. package/dist/collection/components/datetime/test/color/datetime.e2e.js +2 -2
  314. package/dist/collection/components/datetime/test/custom/datetime.e2e.js +28 -9
  315. package/dist/collection/components/datetime/test/datetime.e2e.js +1 -1
  316. package/dist/collection/components/datetime/test/disable-dates/datetime.e2e.js +1 -1
  317. package/dist/collection/components/datetime/test/display/datetime.e2e.js +1 -1
  318. package/dist/collection/components/datetime/test/first-day-of-week/datetime.e2e.js +1 -1
  319. package/dist/collection/components/datetime/test/highlighted-dates/datetime.e2e.js +1 -1
  320. package/dist/collection/components/datetime/test/hour-cycle/datetime.e2e.js +15 -1
  321. package/dist/collection/components/datetime/test/locale/datetime.e2e.js +1 -1
  322. package/dist/collection/components/datetime/test/minmax/datetime.e2e.js +1 -1
  323. package/dist/collection/components/datetime/test/month-year-picker/datetime.e2e.js +1 -1
  324. package/dist/collection/components/datetime/test/multiple/datetime.e2e.js +1 -1
  325. package/dist/collection/components/datetime/test/position/datetime.e2e.js +1 -1
  326. package/dist/collection/components/datetime/test/prefer-wheel/datetime.e2e.js +16 -1
  327. package/dist/collection/components/datetime/test/presentation/datetime.e2e.js +49 -18
  328. package/dist/collection/components/datetime/test/set-value/datetime.e2e.js +10 -13
  329. package/dist/collection/components/datetime/test/time-label/datetime.e2e.js +1 -1
  330. package/dist/collection/components/datetime/test/values/datetime.e2e.js +1 -1
  331. package/dist/collection/components/datetime/utils/data.js +50 -16
  332. package/dist/collection/components/datetime/utils/format.js +28 -11
  333. package/dist/collection/components/datetime/utils/helpers.js +37 -5
  334. package/dist/collection/components/datetime/utils/manipulation.js +3 -3
  335. package/dist/collection/components/datetime/utils/parse.js +36 -5
  336. package/dist/collection/components/datetime/utils/state.js +3 -3
  337. package/dist/collection/components/datetime-button/datetime-button.css +36 -2
  338. package/dist/collection/components/datetime-button/datetime-button.js +14 -10
  339. package/dist/collection/components/datetime-button/test/a11y/datetime-button.e2e.js +38 -0
  340. package/dist/collection/components/datetime-button/test/basic/datetime-button.e2e.js +1 -1
  341. package/dist/collection/components/datetime-button/test/disabled/datetime-button.e2e.js +1 -1
  342. package/dist/collection/components/datetime-button/test/multiple/datetime-button.e2e.js +1 -1
  343. package/dist/collection/components/datetime-button/test/overlays/datetime-button.e2e.js +1 -1
  344. package/dist/collection/components/fab/fab.css +220 -28
  345. package/dist/collection/components/fab/fab.js +6 -4
  346. package/dist/collection/components/fab/test/basic/fab.e2e.js +1 -1
  347. package/dist/collection/components/fab/test/custom-size/fab.e2e.js +17 -0
  348. package/dist/collection/components/fab/test/states/fab.e2e.js +1 -1
  349. package/dist/collection/components/fab/test/translucent/fab.e2e.js +1 -1
  350. package/dist/collection/components/fab-button/fab-button.ios.css +66 -0
  351. package/dist/collection/components/fab-button/fab-button.js +9 -6
  352. package/dist/collection/components/fab-button/fab-button.md.css +66 -0
  353. package/dist/collection/components/fab-button/test/a11y/fab-button.e2e.js +1 -1
  354. package/dist/collection/components/fab-list/fab-list.css +83 -10
  355. package/dist/collection/components/fab-list/fab-list.js +2 -2
  356. package/dist/collection/components/footer/footer.ios.css +66 -0
  357. package/dist/collection/components/footer/footer.js +3 -3
  358. package/dist/collection/components/footer/footer.md.css +66 -0
  359. package/dist/collection/components/footer/footer.utils.js +1 -1
  360. package/dist/collection/components/footer/test/basic/footer.e2e.js +1 -1
  361. package/dist/collection/components/footer/test/fade/footer.e2e.js +1 -1
  362. package/dist/collection/components/footer/test/scroll-target/footer.e2e.js +1 -1
  363. package/dist/collection/components/footer/test/with-tabs/footer.e2e.js +1 -1
  364. package/dist/collection/components/grid/grid.css +66 -0
  365. package/dist/collection/components/grid/grid.js +2 -2
  366. package/dist/collection/components/grid/test/basic/grid.e2e.js +1 -1
  367. package/dist/collection/components/grid/test/offsets/grid.e2e.js +1 -1
  368. package/dist/collection/components/grid/test/padding/grid.e2e.js +1 -1
  369. package/dist/collection/components/grid/test/sizes/grid.e2e.js +1 -1
  370. package/dist/collection/components/header/header.ios.css +96 -2
  371. package/dist/collection/components/header/header.js +3 -3
  372. package/dist/collection/components/header/header.md.css +66 -0
  373. package/dist/collection/components/header/header.utils.js +1 -1
  374. package/dist/collection/components/header/test/a11y/header.e2e.js +2 -2
  375. package/dist/collection/components/header/test/basic/header.e2e.js +1 -1
  376. package/dist/collection/components/header/test/condense/header.e2e.js +1 -1
  377. package/dist/collection/components/header/test/fade/header.e2e.js +1 -1
  378. package/dist/collection/components/header/test/scroll-target/header.e2e.js +1 -1
  379. package/dist/collection/components/icon/test/basic/icon.e2e.js +1 -1
  380. package/dist/collection/components/icon/test/dir/icon.e2e.js +1 -1
  381. package/dist/collection/components/img/img.js +2 -2
  382. package/dist/collection/components/img/test/basic/img.e2e.js +1 -1
  383. package/dist/collection/components/img/test/draggable/img.e2e.js +1 -1
  384. package/dist/collection/components/infinite-scroll/infinite-scroll.js +4 -3
  385. package/dist/collection/components/infinite-scroll/test/basic/infinite-scroll.e2e.js +1 -1
  386. package/dist/collection/components/infinite-scroll/test/scroll-target/infinite-scroll.e2e.js +1 -1
  387. package/dist/collection/components/infinite-scroll/test/top/infinite-scroll.e2e.js +1 -1
  388. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +66 -0
  389. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +7 -5
  390. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +66 -0
  391. package/dist/collection/components/input/input.ios.css +100 -1
  392. package/dist/collection/components/input/input.js +27 -16
  393. package/dist/collection/components/input/input.md.css +199 -1
  394. package/dist/collection/components/input/test/a11y/input.e2e.js +17 -3
  395. package/dist/collection/components/input/test/basic/input.e2e.js +1 -1
  396. package/dist/collection/components/input/test/bottom-content/input.e2e.js +8 -8
  397. package/dist/collection/components/input/test/card/input.e2e.js +2 -2
  398. package/dist/collection/components/input/test/clear-on-edit/input.e2e.js +33 -0
  399. package/dist/collection/components/input/test/color/input.e2e.js +16 -16
  400. package/dist/collection/components/input/test/fill/input.e2e.js +11 -11
  401. package/dist/collection/components/input/test/highlight/input.e2e.js +10 -10
  402. package/dist/collection/components/input/test/input.e2e.js +1 -1
  403. package/dist/collection/components/input/test/item/input.e2e.js +3 -3
  404. package/dist/collection/components/input/test/label-placement/input.e2e.js +17 -17
  405. package/dist/collection/components/input/test/legacy/a11y/input.e2e.js +1 -1
  406. package/dist/collection/components/input/test/legacy/basic/input.e2e.js +11 -11
  407. package/dist/collection/components/input/test/legacy/clear-on-edit/input.e2e.js +1 -1
  408. package/dist/collection/components/input/test/legacy/input-events.e2e.js +1 -1
  409. package/dist/collection/components/input/test/legacy/masking/input.e2e.js +1 -1
  410. package/dist/collection/components/input/test/legacy/spec/input.e2e.js +1 -1
  411. package/dist/collection/components/input/test/states/input.e2e.js +3 -3
  412. package/dist/collection/components/item/item.ios.css +78 -8
  413. package/dist/collection/components/item/item.js +57 -14
  414. package/dist/collection/components/item/item.md.css +146 -10
  415. package/dist/collection/components/item/test/a11y/item.e2e.js +118 -3
  416. package/dist/collection/components/item/test/alignment/item.e2e.js +1 -1
  417. package/dist/collection/components/item/test/basic/item.e2e.js +1 -1
  418. package/dist/collection/components/item/test/buttons/item.e2e.js +1 -1
  419. package/dist/collection/components/item/test/colors/item.e2e.js +1 -1
  420. package/dist/collection/components/item/test/counter/item.e2e.js +1 -1
  421. package/dist/collection/components/item/test/css-variables/item.e2e.js +1 -1
  422. package/dist/collection/components/item/test/disabled/item.e2e.js +1 -1
  423. package/dist/collection/components/item/test/dividers/item.e2e.js +1 -1
  424. package/dist/collection/components/item/test/groups/item.e2e.js +1 -1
  425. package/dist/collection/components/item/test/highlight/item.e2e.js +1 -1
  426. package/dist/collection/components/item/test/icons/item.e2e.js +1 -1
  427. package/dist/collection/components/item/test/images/item.e2e.js +1 -1
  428. package/dist/collection/components/item/test/inputs/item.e2e.js +1 -1
  429. package/dist/collection/components/item/test/legacy/alignment/item.e2e.js +1 -1
  430. package/dist/collection/components/item/test/legacy/disabled/item.e2e.js +1 -1
  431. package/dist/collection/components/item/test/legacy/fill/item.e2e.js +1 -1
  432. package/dist/collection/components/item/test/legacy/form/item.e2e.js +1 -1
  433. package/dist/collection/components/item/test/lines/item.e2e.js +1 -1
  434. package/dist/collection/components/item/test/media/item.e2e.js +1 -1
  435. package/dist/collection/components/item/test/reorder/item.e2e.js +1 -1
  436. package/dist/collection/components/item/test/slotted-inputs/item.e2e.js +1 -1
  437. package/dist/collection/components/item/test/states/item.e2e.js +1 -1
  438. package/dist/collection/components/item/test/text/item.e2e.js +1 -1
  439. package/dist/collection/components/item-divider/item-divider.ios.css +101 -9
  440. package/dist/collection/components/item-divider/item-divider.js +4 -3
  441. package/dist/collection/components/item-divider/item-divider.md.css +103 -11
  442. package/dist/collection/components/item-divider/test/a11y/item-divider.e2e.js +44 -0
  443. package/dist/collection/components/item-divider/test/basic/item-divider.e2e.js +1 -1
  444. package/dist/collection/components/item-divider/test/spec/item-divider.e2e.js +1 -1
  445. package/dist/collection/components/item-group/item-group.ios.css +68 -1
  446. package/dist/collection/components/item-group/item-group.js +2 -2
  447. package/dist/collection/components/item-group/item-group.md.css +68 -1
  448. package/dist/collection/components/item-option/item-option.ios.css +67 -1
  449. package/dist/collection/components/item-option/item-option.js +4 -3
  450. package/dist/collection/components/item-option/item-option.md.css +67 -1
  451. package/dist/collection/components/item-options/item-options.ios.css +99 -1
  452. package/dist/collection/components/item-options/item-options.js +6 -4
  453. package/dist/collection/components/item-options/item-options.md.css +99 -1
  454. package/dist/collection/components/item-sliding/item-sliding.css +33 -0
  455. package/dist/collection/components/item-sliding/item-sliding.js +14 -8
  456. package/dist/collection/components/item-sliding/test/a11y/item-sliding.e2e.js +34 -0
  457. package/dist/collection/components/item-sliding/test/async/item-sliding.e2e.js +1 -1
  458. package/dist/collection/components/item-sliding/test/basic/item-sliding.e2e.js +39 -13
  459. package/dist/collection/components/item-sliding/test/icons/item-sliding.e2e.js +22 -7
  460. package/dist/collection/components/item-sliding/test/scroll-target/item-sliding.e2e.js +4 -10
  461. package/dist/collection/components/item-sliding/test/test.utils.js +9 -1
  462. package/dist/collection/components/label/label.ios.css +107 -10
  463. package/dist/collection/components/label/label.js +8 -5
  464. package/dist/collection/components/label/label.md.css +106 -9
  465. package/dist/collection/components/label/test/a11y/label.e2e.js +66 -0
  466. package/dist/collection/components/label/test/basic/label.e2e.js +1 -1
  467. package/dist/collection/components/label/test/color/label.e2e.js +1 -1
  468. package/dist/collection/components/label/test/headings/label.e2e.js +1 -1
  469. package/dist/collection/components/list/list.ios.css +99 -0
  470. package/dist/collection/components/list/list.js +4 -3
  471. package/dist/collection/components/list/list.md.css +99 -0
  472. package/dist/collection/components/list/test/a11y/list.e2e.js +2 -2
  473. package/dist/collection/components/list/test/basic/list.e2e.js +1 -1
  474. package/dist/collection/components/list/test/inset/list.e2e.js +1 -1
  475. package/dist/collection/components/list/test/lines/list.e2e.js +1 -1
  476. package/dist/collection/components/list-header/list-header.ios.css +100 -1
  477. package/dist/collection/components/list-header/list-header.js +4 -3
  478. package/dist/collection/components/list-header/list-header.md.css +100 -1
  479. package/dist/collection/components/list-header/test/a11y/list-header.e2e.js +24 -0
  480. package/dist/collection/components/list-header/test/basic/list-header.e2e.js +1 -1
  481. package/dist/collection/components/loading/loading.ios.css +67 -1
  482. package/dist/collection/components/loading/loading.js +49 -40
  483. package/dist/collection/components/loading/loading.md.css +67 -1
  484. package/dist/collection/components/loading/test/a11y/loading.e2e.js +21 -2
  485. package/dist/collection/components/loading/test/basic/loading.e2e.js +1 -1
  486. package/dist/collection/components/loading/test/is-open/loading.e2e.js +1 -1
  487. package/dist/collection/components/loading/test/standalone/loading.e2e.js +1 -1
  488. package/dist/collection/components/loading/test/trigger/loading.e2e.js +1 -1
  489. package/dist/collection/components/menu/menu.ios.css +168 -0
  490. package/dist/collection/components/menu/menu.js +83 -42
  491. package/dist/collection/components/menu/menu.md.css +168 -0
  492. package/dist/collection/components/menu/test/a11y/menu.e2e.js +2 -2
  493. package/dist/collection/components/menu/test/basic/menu.e2e.js +1 -1
  494. package/dist/collection/components/menu/test/disable/menu.e2e.js +55 -0
  495. package/dist/collection/components/menu/test/focus-trap/menu.e2e.js +1 -1
  496. package/dist/collection/components/menu/test/multiple/menu.e2e.js +60 -0
  497. package/dist/collection/components/menu/test/safe-area/menu.e2e.js +87 -0
  498. package/dist/collection/components/menu-button/menu-button.ios.css +70 -2
  499. package/dist/collection/components/menu-button/menu-button.js +7 -6
  500. package/dist/collection/components/menu-button/menu-button.md.css +71 -3
  501. package/dist/collection/components/menu-button/test/a11y/menu-button.e2e.js +22 -3
  502. package/dist/collection/components/menu-button/test/async/menu-button.e2e.js +23 -0
  503. package/dist/collection/components/menu-button/test/basic/menu-button.e2e.js +1 -1
  504. package/dist/collection/components/menu-toggle/menu-toggle.js +3 -3
  505. package/dist/collection/components/menu-toggle/test/basic/menu-toggle.e2e.js +1 -1
  506. package/dist/collection/components/modal/animations/ios.enter.js +2 -2
  507. package/dist/collection/components/modal/animations/ios.leave.js +2 -2
  508. package/dist/collection/components/modal/animations/md.enter.js +1 -1
  509. package/dist/collection/components/modal/animations/md.leave.js +1 -1
  510. package/dist/collection/components/modal/animations/sheet.js +1 -1
  511. package/dist/collection/components/modal/gestures/sheet.js +2 -2
  512. package/dist/collection/components/modal/gestures/swipe-to-close.js +2 -2
  513. package/dist/collection/components/modal/modal.ios.css +66 -0
  514. package/dist/collection/components/modal/modal.js +102 -76
  515. package/dist/collection/components/modal/modal.md.css +66 -0
  516. package/dist/collection/components/modal/test/a11y/modal.e2e.js +2 -2
  517. package/dist/collection/components/modal/test/basic/modal.e2e.js +1 -1
  518. package/dist/collection/components/modal/test/can-dismiss/modal-card.e2e.js +1 -1
  519. package/dist/collection/components/modal/test/can-dismiss/modal-sheet.e2e.js +2 -2
  520. package/dist/collection/components/modal/test/can-dismiss/modal.e2e.js +1 -1
  521. package/dist/collection/components/modal/test/card/modal-card.e2e.js +2 -2
  522. package/dist/collection/components/modal/test/card/modal-tablet.e2e.js +6 -6
  523. package/dist/collection/components/modal/test/card-nav/modal.e2e.js +5 -6
  524. package/dist/collection/components/modal/test/card-refresher/modal.e2e.js +2 -2
  525. package/dist/collection/components/modal/test/card-scroll-target/modal.e2e.js +2 -2
  526. package/dist/collection/components/modal/test/custom/modal.e2e.js +1 -1
  527. package/dist/collection/components/modal/test/custom-dialog/modal.e2e.js +1 -1
  528. package/dist/collection/components/modal/test/dark-mode/model.e2e.js +1 -1
  529. package/dist/collection/components/modal/test/fixtures.js +1 -1
  530. package/dist/collection/components/modal/test/inline/modal.e2e.js +1 -1
  531. package/dist/collection/components/modal/test/is-open/modal.e2e.js +1 -1
  532. package/dist/collection/components/modal/test/sheet/modal.e2e.js +2 -2
  533. package/dist/collection/components/modal/test/trigger/modal.e2e.js +1 -1
  534. package/dist/collection/components/modal/utils.spec.js +1 -1
  535. package/dist/collection/components/nav/nav.css +33 -1
  536. package/dist/collection/components/nav/nav.js +130 -67
  537. package/dist/collection/components/nav/test/basic/nav.e2e.js +1 -1
  538. package/dist/collection/components/nav/test/modal-navigation/nav.e2e.js +1 -1
  539. package/dist/collection/components/nav/test/nested/nav.e2e.js +1 -1
  540. package/dist/collection/components/nav/test/routing/nav.e2e.js +1 -1
  541. package/dist/collection/components/nav-link/nav-link.js +10 -6
  542. package/dist/collection/components/note/note.ios.css +67 -0
  543. package/dist/collection/components/note/note.js +4 -3
  544. package/dist/collection/components/note/note.md.css +67 -1
  545. package/dist/collection/components/note/test/a11y/note.e2e.js +52 -0
  546. package/dist/collection/components/note/test/basic/note.e2e.js +1 -1
  547. package/dist/collection/components/picker/picker.ios.css +66 -0
  548. package/dist/collection/components/picker/picker.js +50 -39
  549. package/dist/collection/components/picker/picker.md.css +66 -0
  550. package/dist/collection/components/picker/test/basic/picker.e2e.js +1 -1
  551. package/dist/collection/components/picker/test/is-open/picker.e2e.js +1 -1
  552. package/dist/collection/components/picker/test/trigger/picker.e2e.js +1 -1
  553. package/dist/collection/components/picker-column/picker-column.ios.css +66 -0
  554. package/dist/collection/components/picker-column/picker-column.js +6 -4
  555. package/dist/collection/components/picker-column/picker-column.md.css +66 -0
  556. package/dist/collection/components/picker-column/test/standalone/picker-column.e2e.js +1 -1
  557. package/dist/collection/components/picker-column/test/test.utils.js +2 -2
  558. package/dist/collection/components/picker-column-internal/picker-column-internal.ios.css +33 -0
  559. package/dist/collection/components/picker-column-internal/picker-column-internal.js +12 -7
  560. package/dist/collection/components/picker-column-internal/picker-column-internal.md.css +66 -0
  561. package/dist/collection/components/picker-column-internal/test/basic/picker-column-internal.e2e.js +1 -1
  562. package/dist/collection/components/picker-column-internal/test/disabled/picker-column-internal.e2e.js +1 -1
  563. package/dist/collection/components/picker-internal/picker-internal.ios.css +66 -0
  564. package/dist/collection/components/picker-internal/picker-internal.js +5 -3
  565. package/dist/collection/components/picker-internal/picker-internal.md.css +66 -0
  566. package/dist/collection/components/picker-internal/test/a11y/picker-internal.e2e.js +2 -2
  567. package/dist/collection/components/picker-internal/test/basic/picker-internal.e2e.js +1 -1
  568. package/dist/collection/components/picker-internal/test/keyboard-entry/picker-internal.e2e.js +1 -1
  569. package/dist/collection/components/popover/animations/ios.enter.js +1 -1
  570. package/dist/collection/components/popover/animations/md.enter.js +1 -1
  571. package/dist/collection/components/popover/popover.ios.css +66 -0
  572. package/dist/collection/components/popover/popover.js +84 -67
  573. package/dist/collection/components/popover/popover.md.css +66 -0
  574. package/dist/collection/components/popover/test/adjustment/popover.e2e.js +1 -1
  575. package/dist/collection/components/popover/test/arrow/popover.e2e.js +2 -2
  576. package/dist/collection/components/popover/test/async/popover.e2e.js +42 -0
  577. package/dist/collection/components/popover/test/basic/popover.e2e.js +2 -2
  578. package/dist/collection/components/popover/test/dismiss-on-select/popover.e2e.js +2 -2
  579. package/dist/collection/components/popover/test/fixture.js +1 -1
  580. package/dist/collection/components/popover/test/inline/popover.e2e.js +2 -2
  581. package/dist/collection/components/popover/test/is-open/popover.e2e.js +1 -1
  582. package/dist/collection/components/popover/test/nested/popover.e2e.js +1 -1
  583. package/dist/collection/components/popover/test/position/popover.e2e.js +2 -2
  584. package/dist/collection/components/popover/test/reference/popover.e2e.js +1 -1
  585. package/dist/collection/components/popover/test/size/popover.e2e.js +2 -2
  586. package/dist/collection/components/popover/test/standalone/popover.e2e.js +1 -1
  587. package/dist/collection/components/popover/test/test.utils.js +1 -1
  588. package/dist/collection/components/popover/test/trigger/popover.e2e.js +2 -2
  589. package/dist/collection/components/progress-bar/progress-bar.ios.css +33 -0
  590. package/dist/collection/components/progress-bar/progress-bar.js +5 -4
  591. package/dist/collection/components/progress-bar/progress-bar.md.css +33 -0
  592. package/dist/collection/components/progress-bar/test/basic/progress-bar.e2e.js +1 -1
  593. package/dist/collection/components/progress-bar/test/buffer/progress-bar.e2e.js +20 -0
  594. package/dist/collection/components/progress-bar/test/determinate/progress-bar.e2e.js +20 -0
  595. package/dist/collection/components/radio/radio.ios.css +171 -5
  596. package/dist/collection/components/radio/radio.js +38 -11
  597. package/dist/collection/components/radio/radio.md.css +171 -5
  598. package/dist/collection/components/radio/test/a11y/radio.e2e.js +23 -2
  599. package/dist/collection/components/radio/test/color/radio.e2e.js +3 -3
  600. package/dist/collection/components/radio/test/item/radio.e2e.js +42 -4
  601. package/dist/collection/components/radio/test/label-placement/radio.e2e.js +41 -10
  602. package/dist/collection/components/radio/test/legacy/a11y/radio.e2e.js +5 -3
  603. package/dist/collection/components/radio/test/legacy/basic/radio.e2e.js +1 -1
  604. package/dist/collection/components/radio/test/states/radio.e2e.js +5 -5
  605. package/dist/collection/components/radio-group/radio-group.js +7 -5
  606. package/dist/collection/components/radio-group/test/basic/radio-group.e2e.js +2 -2
  607. package/dist/collection/components/radio-group/test/fixtures.js +1 -1
  608. package/dist/collection/components/radio-group/test/form/radio-group.e2e.js +1 -1
  609. package/dist/collection/components/radio-group/test/legacy/basic/radio-group.e2e.js +1 -1
  610. package/dist/collection/components/radio-group/test/legacy/form/radio-group.e2e.js +1 -1
  611. package/dist/collection/components/radio-group/test/legacy/search/radio-group.e2e.js +1 -1
  612. package/dist/collection/components/radio-group/test/radio-group-events.e2e.js +1 -1
  613. package/dist/collection/components/radio-group/test/search/radio-group.e2e.js +2 -2
  614. package/dist/collection/components/range/range.ios.css +161 -8
  615. package/dist/collection/components/range/range.js +53 -17
  616. package/dist/collection/components/range/range.md.css +178 -11
  617. package/dist/collection/components/range/test/a11y/range.e2e.js +24 -2
  618. package/dist/collection/components/range/test/active-bar-start/range.e2e.js +1 -1
  619. package/dist/collection/components/range/test/basic/range.e2e.js +1 -1
  620. package/dist/collection/components/range/test/color/range.e2e.js +2 -2
  621. package/dist/collection/components/range/test/custom/range.e2e.js +2 -2
  622. package/dist/collection/components/range/test/item/range.e2e.js +30 -4
  623. package/dist/collection/components/range/test/label/range.e2e.js +72 -13
  624. package/dist/collection/components/range/test/legacy/a11y/range.e2e.js +4 -4
  625. package/dist/collection/components/range/test/legacy/active-bar-start/range.e2e.js +2 -2
  626. package/dist/collection/components/range/test/legacy/basic/range.e2e.js +3 -8
  627. package/dist/collection/components/range/test/legacy/range-events.e2e.js +1 -1
  628. package/dist/collection/components/range/test/legacy/scroll-target/range.e2e.js +1 -1
  629. package/dist/collection/components/range/test/range-events.e2e.js +17 -18
  630. package/dist/collection/components/range/test/scroll-target/range.e2e.js +1 -1
  631. package/dist/collection/components/range/test/states/range.e2e.js +5 -5
  632. package/dist/collection/components/refresher/refresher.ios.css +66 -0
  633. package/dist/collection/components/refresher/refresher.js +11 -7
  634. package/dist/collection/components/refresher/refresher.md.css +66 -0
  635. package/dist/collection/components/refresher/refresher.utils.js +1 -1
  636. package/dist/collection/components/refresher/test/basic/refresher.e2e.js +3 -4
  637. package/dist/collection/components/refresher/test/scroll-target/refresher.e2e.js +5 -6
  638. package/dist/collection/components/refresher/test/test.utils.js +4 -1
  639. package/dist/collection/components/refresher-content/refresher-content.js +13 -9
  640. package/dist/collection/components/reorder/reorder.ios.css +75 -2
  641. package/dist/collection/components/reorder/reorder.js +3 -3
  642. package/dist/collection/components/reorder/reorder.md.css +75 -2
  643. package/dist/collection/components/reorder-group/reorder-group.css +33 -0
  644. package/dist/collection/components/reorder-group/reorder-group.js +6 -4
  645. package/dist/collection/components/reorder-group/test/a11y/reorder-group.e2e.js +33 -0
  646. package/dist/collection/components/reorder-group/test/basic/reorder-group.e2e.js +1 -1
  647. package/dist/collection/components/reorder-group/test/interactive/reorder-group.e2e.js +3 -5
  648. package/dist/collection/components/reorder-group/test/nested/reorder-group.e2e.js +3 -5
  649. package/dist/collection/components/reorder-group/test/scroll-target/reorder-group.e2e.js +3 -5
  650. package/dist/collection/components/ripple-effect/ripple-effect.css +33 -0
  651. package/dist/collection/components/ripple-effect/ripple-effect.js +4 -3
  652. package/dist/collection/components/ripple-effect/test/basic/ripple-effect.e2e.js +1 -1
  653. package/dist/collection/components/route/route.js +4 -2
  654. package/dist/collection/components/router/router.js +28 -16
  655. package/dist/collection/components/router/test/basic/router.e2e.js +1 -1
  656. package/dist/collection/components/router/test/guards/href/router.e2e.js +2 -2
  657. package/dist/collection/components/router/test/guards/link/router.e2e.js +2 -2
  658. package/dist/collection/components/router/test/guards/push/router.e2e.js +2 -2
  659. package/dist/collection/components/router/test/guards/router.e2e.js +1 -1
  660. package/dist/collection/components/router/utils/debug.js +1 -1
  661. package/dist/collection/components/router/utils/dom.js +1 -1
  662. package/dist/collection/components/router/utils/parser.js +1 -1
  663. package/dist/collection/components/router/utils/path.js +2 -1
  664. package/dist/collection/components/router-link/router-link.css +33 -0
  665. package/dist/collection/components/router-link/router-link.js +8 -5
  666. package/dist/collection/components/router-outlet/router-outlet.css +42 -0
  667. package/dist/collection/components/router-outlet/{route-outlet.js → router-outlet.js} +42 -30
  668. package/dist/collection/components/router-outlet/test/basic/router-outlet.e2e.js +1 -1
  669. package/dist/collection/components/row/row.css +66 -0
  670. package/dist/collection/components/row/row.js +2 -2
  671. package/dist/collection/components/searchbar/searchbar.ios.css +95 -16
  672. package/dist/collection/components/searchbar/searchbar.js +27 -13
  673. package/dist/collection/components/searchbar/searchbar.md.css +77 -10
  674. package/dist/collection/components/searchbar/test/a11y/searchbar.e2e.js +37 -0
  675. package/dist/collection/components/searchbar/test/basic/searchbar.e2e.js +19 -1
  676. package/dist/collection/components/searchbar/test/events/searchbar.e2e.js +1 -1
  677. package/dist/collection/components/segment/segment.ios.css +99 -0
  678. package/dist/collection/components/segment/segment.js +47 -30
  679. package/dist/collection/components/segment/segment.md.css +99 -0
  680. package/dist/collection/components/segment/test/a11y/segment.e2e.js +2 -2
  681. package/dist/collection/components/segment/test/basic/segment.e2e.js +1 -1
  682. package/dist/collection/components/segment/test/custom/segment.e2e.js +1 -1
  683. package/dist/collection/components/segment/test/icon/segment.e2e.js +1 -1
  684. package/dist/collection/components/segment/test/modes/segment.e2e.js +1 -1
  685. package/dist/collection/components/segment/test/scrollable/segment.e2e.js +41 -2
  686. package/dist/collection/components/segment/test/segment-events.e2e.js +1 -1
  687. package/dist/collection/components/segment/test/toolbar/segment.e2e.js +1 -1
  688. package/dist/collection/components/segment/test/wrap/segment.e2e.js +1 -1
  689. package/dist/collection/components/segment-button/segment-button.ios.css +66 -0
  690. package/dist/collection/components/segment-button/segment-button.js +8 -5
  691. package/dist/collection/components/segment-button/segment-button.md.css +66 -0
  692. package/dist/collection/components/select/select.ios.css +102 -3
  693. package/dist/collection/components/select/select.js +51 -29
  694. package/dist/collection/components/select/select.md.css +167 -2
  695. package/dist/collection/components/select/test/a11y/select.e2e.js +24 -2
  696. package/dist/collection/components/select/test/async/select.e2e.js +1 -1
  697. package/dist/collection/components/select/test/basic/select.e2e.js +22 -1
  698. package/dist/collection/components/select/test/card/select.e2e.js +2 -2
  699. package/dist/collection/components/select/test/color/select.e2e.js +4 -4
  700. package/dist/collection/components/select/test/compare-with/select.e2e.js +1 -1
  701. package/dist/collection/components/select/test/custom/select.e2e.js +1 -1
  702. package/dist/collection/components/select/test/disabled/select.e2e.js +30 -0
  703. package/dist/collection/components/select/test/fill/select.e2e.js +11 -11
  704. package/dist/collection/components/select/test/highlight/select.e2e.js +4 -4
  705. package/dist/collection/components/select/test/item/select.e2e.js +3 -3
  706. package/dist/collection/components/select/test/label/select.e2e.js +21 -21
  707. package/dist/collection/components/select/test/legacy/async/select.e2e.js +1 -1
  708. package/dist/collection/components/select/test/legacy/basic/select.e2e.js +1 -1
  709. package/dist/collection/components/select/test/legacy/compare-with/select.e2e.js +1 -1
  710. package/dist/collection/components/select/test/legacy/custom/custom.e2e.js +1 -1
  711. package/dist/collection/components/select/test/legacy/single-value/select.e2e.js +1 -1
  712. package/dist/collection/components/select/test/legacy/spec/select.e2e.js +1 -1
  713. package/dist/collection/components/select/test/legacy/wrapping/select.e2e.js +1 -1
  714. package/dist/collection/components/select/test/popover-size/select.e2e.js +1 -1
  715. package/dist/collection/components/select/test/states/select.e2e.js +5 -5
  716. package/dist/collection/components/select/test/toggle-icon/select.e2e.js +1 -1
  717. package/dist/collection/components/select/test/wrapping/select.e2e.js +1 -1
  718. package/dist/collection/components/select-option/select-option.js +2 -2
  719. package/dist/collection/components/select-popover/select-popover.ios.css +101 -1
  720. package/dist/collection/components/select-popover/select-popover.js +4 -3
  721. package/dist/collection/components/select-popover/select-popover.md.css +99 -0
  722. package/dist/collection/components/select-popover/test/basic/select-popover.e2e.js +2 -2
  723. package/dist/collection/components/select-popover/test/fixtures.js +1 -1
  724. package/dist/collection/components/skeleton-text/skeleton-text.css +33 -0
  725. package/dist/collection/components/skeleton-text/skeleton-text.js +3 -3
  726. package/dist/collection/components/skeleton-text/test/basic/skeleton-text.e2e.js +1 -1
  727. package/dist/collection/components/skeleton-text/test/custom/skeleton-text.e2e.js +1 -1
  728. package/dist/collection/components/spinner/spinner.css +33 -0
  729. package/dist/collection/components/spinner/spinner.js +8 -6
  730. package/dist/collection/components/spinner/test/basic/spinner.e2e.js +1 -1
  731. package/dist/collection/components/spinner/test/color/spinner.e2e.js +1 -1
  732. package/dist/collection/components/spinner/test/resize/spinner.e2e.js +1 -1
  733. package/dist/collection/components/split-pane/split-pane.ios.css +99 -0
  734. package/dist/collection/components/split-pane/split-pane.js +2 -2
  735. package/dist/collection/components/split-pane/split-pane.md.css +99 -0
  736. package/dist/collection/components/split-pane/test/basic/split-pane.e2e.js +1 -1
  737. package/dist/collection/components/tab/tab.js +7 -4
  738. package/dist/collection/components/tab-bar/tab-bar.ios.css +99 -0
  739. package/dist/collection/components/tab-bar/tab-bar.js +27 -4
  740. package/dist/collection/components/tab-bar/tab-bar.md.css +99 -0
  741. package/dist/collection/components/tab-bar/test/custom/tab-bar.e2e.js +1 -1
  742. package/dist/collection/components/tab-bar/test/translucent/tab-bar.e2e.js +31 -1
  743. package/dist/collection/components/tab-button/tab-button.ios.css +66 -0
  744. package/dist/collection/components/tab-button/tab-button.js +7 -5
  745. package/dist/collection/components/tab-button/tab-button.md.css +66 -0
  746. package/dist/collection/components/tab-button/test/a11y/tab-button.e2e.js +2 -2
  747. package/dist/collection/components/tab-button/test/basic/tab-button.e2e.js +1 -1
  748. package/dist/collection/components/tab-button/test/layout/tab-button.e2e.js +1 -1
  749. package/dist/collection/components/tab-button/test/states/tab-button.e2e.js +1 -1
  750. package/dist/collection/components/tabs/tabs.css +33 -0
  751. package/dist/collection/components/tabs/tabs.js +19 -10
  752. package/dist/collection/components/tabs/test/basic/tabs.e2e.js +1 -1
  753. package/dist/collection/components/tabs/test/placements/tabs.e2e.js +1 -1
  754. package/dist/collection/components/text/test/basic/text.e2e.js +1 -1
  755. package/dist/collection/components/text/text.css +33 -0
  756. package/dist/collection/components/text/text.js +4 -3
  757. package/dist/collection/components/textarea/test/a11y/textarea.e2e.js +17 -3
  758. package/dist/collection/components/textarea/test/autogrow/textarea.e2e.js +1 -1
  759. package/dist/collection/components/textarea/test/bottom-content/textarea.e2e.js +7 -7
  760. package/dist/collection/components/textarea/test/card/textarea.e2e.js +2 -2
  761. package/dist/collection/components/textarea/test/clear-on-edit/textarea.e2e.js +25 -0
  762. package/dist/collection/components/textarea/test/color/textarea.e2e.js +16 -16
  763. package/dist/collection/components/textarea/test/cols/textarea.e2e.js +37 -0
  764. package/dist/collection/components/textarea/test/fill/textarea.e2e.js +11 -11
  765. package/dist/collection/components/textarea/test/highlight/textarea.e2e.js +10 -10
  766. package/dist/collection/components/textarea/test/item/textarea.e2e.js +3 -3
  767. package/dist/collection/components/textarea/test/label-placement/textarea.e2e.js +22 -22
  768. package/dist/collection/components/textarea/test/legacy/a11y/textarea.e2e.js +1 -1
  769. package/dist/collection/components/textarea/test/legacy/autogrow/textarea.e2e.js +6 -6
  770. package/dist/collection/components/textarea/test/legacy/basic/textarea.e2e.js +1 -1
  771. package/dist/collection/components/textarea/test/legacy/clear-on-edit/textarea.e2e.js +1 -1
  772. package/dist/collection/components/textarea/test/states/textarea.e2e.js +3 -3
  773. package/dist/collection/components/textarea/test/textarea-events.e2e.js +1 -1
  774. package/dist/collection/components/textarea/textarea.ios.css +149 -1
  775. package/dist/collection/components/textarea/textarea.js +23 -14
  776. package/dist/collection/components/textarea/textarea.md.css +215 -1
  777. package/dist/collection/components/thumbnail/test/basic/thumbnail.e2e.js +1 -1
  778. package/dist/collection/components/thumbnail/thumbnail.css +33 -0
  779. package/dist/collection/components/thumbnail/thumbnail.js +2 -2
  780. package/dist/collection/components/title/test/a11y/title.e2e.js +61 -0
  781. package/dist/collection/components/title/test/basic/title.e2e.js +16 -1
  782. package/dist/collection/components/title/title.ios.css +44 -11
  783. package/dist/collection/components/title/title.js +6 -4
  784. package/dist/collection/components/title/title.md.css +35 -2
  785. package/dist/collection/components/toast/animations/ios.enter.js +2 -3
  786. package/dist/collection/components/toast/animations/ios.leave.js +2 -3
  787. package/dist/collection/components/toast/animations/md.enter.js +2 -3
  788. package/dist/collection/components/toast/animations/utils.js +85 -0
  789. package/dist/collection/components/toast/test/a11y/toast.e2e.js +112 -7
  790. package/dist/collection/components/toast/test/basic/toast.e2e.js +1 -1
  791. package/dist/collection/components/toast/test/is-open/toast.e2e.js +1 -1
  792. package/dist/collection/components/toast/test/layout/toast.e2e.js +1 -1
  793. package/dist/collection/components/toast/test/position-anchor/toast.e2e.js +45 -0
  794. package/dist/collection/components/toast/test/standalone/toast.e2e.js +1 -1
  795. package/dist/collection/components/toast/test/trigger/toast.e2e.js +1 -1
  796. package/dist/collection/components/toast/toast.ios.css +74 -3
  797. package/dist/collection/components/toast/toast.js +155 -48
  798. package/dist/collection/components/toast/toast.md.css +74 -4
  799. package/dist/collection/components/toggle/test/a11y/toggle.e2e.js +2 -2
  800. package/dist/collection/components/toggle/test/color/toggle.e2e.js +3 -3
  801. package/dist/collection/components/toggle/test/enable-on-off-labels/toggle.e2e.js +1 -1
  802. package/dist/collection/components/toggle/test/item/toggle.e2e.js +48 -5
  803. package/dist/collection/components/toggle/test/label/toggle.e2e.js +37 -10
  804. package/dist/collection/components/toggle/test/legacy/basic/toggle.e2e.js +1 -1
  805. package/dist/collection/components/toggle/test/legacy/enable-on-off-labels/toggle.e2e.js +3 -3
  806. package/dist/collection/components/toggle/test/legacy/sizes/toggle.e2e.js +2 -2
  807. package/dist/collection/components/toggle/test/sizes/toggle.e2e.js +1 -1
  808. package/dist/collection/components/toggle/test/states/toggle.e2e.js +4 -4
  809. package/dist/collection/components/toggle/toggle.ios.css +166 -1
  810. package/dist/collection/components/toggle/toggle.js +37 -11
  811. package/dist/collection/components/toggle/toggle.md.css +166 -1
  812. package/dist/collection/components/toolbar/test/basic/toolbar.e2e.js +1 -1
  813. package/dist/collection/components/toolbar/test/colors/toolbar.e2e.js +1 -1
  814. package/dist/collection/components/toolbar/toolbar.ios.css +68 -8
  815. package/dist/collection/components/toolbar/toolbar.js +4 -3
  816. package/dist/collection/components/toolbar/toolbar.md.css +68 -4
  817. package/dist/collection/css/test/a11y/typography.e2e.js +32 -0
  818. package/dist/collection/global/ionic-global.js +3 -3
  819. package/dist/collection/index.js +3 -1
  820. package/dist/collection/utils/animation/animation.js +63 -4
  821. package/dist/collection/utils/animation/test/animationbuilder/animation.e2e.js +3 -0
  822. package/dist/collection/utils/animation/test/display/animation.e2e.js +1 -1
  823. package/dist/collection/utils/animation/test/hooks/animation.e2e.js +1 -1
  824. package/dist/collection/utils/animation/test/multiple/animation.e2e.js +1 -1
  825. package/dist/collection/utils/content/content.utils.spec.js +1 -1
  826. package/dist/collection/utils/content/index.js +2 -2
  827. package/dist/collection/utils/floating-point/floating-point.spec.js +1 -1
  828. package/dist/collection/utils/forms/notch-controller.js +1 -1
  829. package/dist/collection/utils/framework-delegate.js +22 -3
  830. package/dist/collection/utils/gesture/button-active.js +3 -3
  831. package/dist/collection/utils/gesture/index.js +3 -3
  832. package/dist/collection/utils/gesture/pointer-events.js +1 -1
  833. package/dist/collection/utils/gesture/swipe-back.js +10 -6
  834. package/dist/collection/utils/helpers.spec.js +1 -1
  835. package/dist/collection/utils/input-shims/hacks/hide-caret.js +2 -2
  836. package/dist/collection/utils/input-shims/hacks/input-blurring.js +1 -1
  837. package/dist/collection/utils/input-shims/hacks/scroll-assist.js +92 -10
  838. package/dist/collection/utils/input-shims/hacks/scroll-data.js +3 -4
  839. package/dist/collection/utils/input-shims/hacks/test/scroll-assist.e2e.js +1 -1
  840. package/dist/collection/utils/input-shims/input-shims.js +6 -6
  841. package/dist/collection/utils/keyboard/keyboard-controller.js +1 -1
  842. package/dist/collection/utils/keyboard/keyboard.js +1 -1
  843. package/dist/collection/utils/lock-controller.js +36 -0
  844. package/dist/collection/utils/menu-controller/animations/base.js +1 -1
  845. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  846. package/dist/collection/utils/menu-controller/animations/push.js +3 -3
  847. package/dist/collection/utils/menu-controller/animations/reveal.js +3 -3
  848. package/dist/collection/utils/menu-controller/index.js +31 -24
  849. package/dist/collection/utils/native/haptic.js +2 -1
  850. package/dist/collection/utils/native/keyboard.js +2 -2
  851. package/dist/collection/utils/native/status-bar.js +1 -1
  852. package/dist/collection/utils/overlays.js +36 -15
  853. package/dist/collection/utils/platform.js +1 -1
  854. package/dist/collection/utils/rtl/dir.spec.js +1 -1
  855. package/dist/collection/utils/status-tap.js +3 -3
  856. package/dist/collection/utils/tap-click/index.js +1 -1
  857. package/dist/collection/utils/tap-click/test/tap-click.e2e.js +1 -1
  858. package/dist/collection/utils/test/framework-delegate/framework-delegate.e2e.js +1 -1
  859. package/dist/collection/utils/test/overlays/overlays.e2e.js +1 -1
  860. package/dist/collection/utils/test/playwright/drag-element.js +67 -8
  861. package/dist/collection/utils/test/playwright/matchers/index.js +3 -3
  862. package/dist/collection/utils/test/playwright/matchers/toHaveReceivedEventDetail.js +2 -2
  863. package/dist/collection/utils/test/playwright/page/utils/goto.js +3 -0
  864. package/dist/collection/utils/test/playwright/page/utils/index.js +0 -1
  865. package/dist/collection/utils/test/playwright/page/utils/locator.js +1 -1
  866. package/dist/collection/utils/test/playwright/page/utils/set-content.js +3 -0
  867. package/dist/collection/utils/test/playwright/page/utils/spy-on-event.js +1 -1
  868. package/dist/collection/utils/test/playwright/playwright-page.js +4 -5
  869. package/dist/collection/utils/test/playwright/viewports/index.js +4 -0
  870. package/dist/collection/utils/transition/index.js +3 -3
  871. package/dist/collection/utils/transition/ios.transition.js +7 -6
  872. package/dist/collection/utils/transition/md.transition.js +2 -2
  873. package/dist/docs.d.ts +361 -88
  874. package/dist/docs.json +7240 -118
  875. package/dist/esm/{animation-258fd22b.js → animation-92066c62.js} +62 -3
  876. package/dist/esm/{app-globals-70454efb.js → app-globals-ec816a70.js} +1 -1
  877. package/dist/esm/{button-active-aef107f0.js → button-active-d926d4f4.js} +3 -3
  878. package/dist/esm/{capacitor-6d1861b7.js → capacitor-b4979570.js} +1 -1
  879. package/dist/esm/{data-605c040f.js → data-44d9e816.js} +144 -32
  880. package/dist/esm/{form-controller-6cd7ebd1.js → form-controller-ed77647a.js} +1 -1
  881. package/dist/esm/{framework-delegate-6a45ed30.js → framework-delegate-aa433dea.js} +22 -3
  882. package/dist/esm/{haptic-d85b8584.js → haptic-1243b917.js} +2 -1
  883. package/dist/esm/{index-7373924f.js → index-746a238e.js} +2 -2
  884. package/dist/esm/{index-afea2bcf.js → index-7d2b2808.js} +4 -4
  885. package/dist/esm/{index-36a5fd75.js → index-b49b173c.js} +283 -96
  886. package/dist/esm/{index-393bc14a.js → index-c132c5f1.js} +1 -1
  887. package/dist/esm/{index-6e89f340.js → index-df55802d.js} +30 -23
  888. package/dist/esm/{index-2d0c7c77.js → index-f0cc4e14.js} +2 -2
  889. package/dist/esm/{index-422b6e83.js → index-ff313b19.js} +2 -2
  890. package/dist/esm/index.js +18 -17
  891. package/dist/esm/{input-shims-5b912f6d.js → input-shims-d78a3c77.js} +93 -13
  892. package/dist/esm/{input.utils-4c00ca72.js → input.utils-ec063df4.js} +3 -3
  893. package/dist/esm/ion-accordion_2.entry.js +5 -5
  894. package/dist/esm/ion-action-sheet.entry.js +26 -34
  895. package/dist/esm/ion-alert.entry.js +35 -35
  896. package/dist/esm/ion-app_8.entry.js +84 -44
  897. package/dist/esm/ion-avatar_3.entry.js +5 -5
  898. package/dist/esm/ion-back-button.entry.js +7 -7
  899. package/dist/esm/ion-backdrop.entry.js +3 -3
  900. package/dist/esm/ion-breadcrumb_2.entry.js +7 -7
  901. package/dist/esm/ion-button_2.entry.js +54 -25
  902. package/dist/esm/ion-card_5.entry.js +12 -12
  903. package/dist/esm/ion-checkbox.entry.js +20 -13
  904. package/dist/esm/ion-chip.entry.js +10 -5
  905. package/dist/esm/ion-col_3.entry.js +2 -2
  906. package/dist/esm/ion-datetime-button.entry.js +14 -11
  907. package/dist/esm/ion-datetime_3.entry.js +159 -128
  908. package/dist/esm/ion-fab_3.entry.js +7 -7
  909. package/dist/esm/ion-img.entry.js +3 -3
  910. package/dist/esm/ion-infinite-scroll_2.entry.js +6 -6
  911. package/dist/esm/ion-input.entry.js +13 -13
  912. package/dist/esm/ion-item-option_3.entry.js +12 -12
  913. package/dist/esm/ion-item_8.entry.js +49 -22
  914. package/dist/esm/ion-loading.entry.js +21 -29
  915. package/dist/esm/ion-menu_3.entry.js +82 -48
  916. package/dist/esm/ion-modal.entry.js +59 -58
  917. package/dist/esm/ion-nav_2.entry.js +9 -8
  918. package/dist/esm/ion-picker-column-internal.entry.js +7 -7
  919. package/dist/esm/ion-picker-internal.entry.js +2 -2
  920. package/dist/esm/ion-popover.entry.js +26 -40
  921. package/dist/esm/ion-progress-bar.entry.js +4 -4
  922. package/dist/esm/ion-radio_2.entry.js +16 -11
  923. package/dist/esm/ion-range.entry.js +42 -14
  924. package/dist/esm/ion-refresher_2.entry.js +16 -16
  925. package/dist/esm/ion-reorder_2.entry.js +12 -12
  926. package/dist/esm/ion-ripple-effect.entry.js +2 -2
  927. package/dist/esm/ion-route_4.entry.js +7 -4
  928. package/dist/esm/ion-searchbar.entry.js +15 -9
  929. package/dist/esm/ion-segment_2.entry.js +40 -29
  930. package/dist/esm/ion-select_3.entry.js +48 -34
  931. package/dist/esm/ion-spinner.entry.js +4 -4
  932. package/dist/esm/ion-split-pane.entry.js +2 -2
  933. package/dist/esm/ion-tab-bar_2.entry.js +12 -8
  934. package/dist/esm/ion-tab_2.entry.js +3 -3
  935. package/dist/esm/ion-text.entry.js +3 -3
  936. package/dist/esm/ion-textarea.entry.js +12 -12
  937. package/dist/esm/ion-toast.entry.js +177 -40
  938. package/dist/esm/ion-toggle.entry.js +20 -15
  939. package/dist/esm/{ionic-global-a9abd569.js → ionic-global-246ca78f.js} +1 -1
  940. package/dist/esm/ionic.js +6 -9
  941. package/dist/esm/{ios.transition-6a838b0c.js → ios.transition-a86d7bbe.js} +10 -9
  942. package/dist/esm/{keyboard-cdb83866.js → keyboard-b063f012.js} +1 -1
  943. package/dist/esm/{keyboard-a818f780.js → keyboard-b551279d.js} +3 -3
  944. package/dist/esm/{keyboard-controller-4149afc6.js → keyboard-controller-0c2dce71.js} +2 -2
  945. package/dist/esm/loader.js +6 -15
  946. package/dist/esm/lock-controller-e8c6c051.js +38 -0
  947. package/dist/esm/{md.transition-b7d7b475.js → md.transition-365ef6b6.js} +5 -5
  948. package/dist/esm/{notch-controller-cfcb8c01.js → notch-controller-8c9c0e54.js} +3 -3
  949. package/dist/esm/{overlays-4801a327.js → overlays-cec6bac8.js} +36 -15
  950. package/dist/esm/{status-tap-211f1ad8.js → status-tap-9aeeaca5.js} +4 -4
  951. package/dist/esm/{swipe-back-1bb66ed2.js → swipe-back-cd4295f3.js} +11 -7
  952. package/dist/esm-es5/animation-92066c62.js +4 -0
  953. package/dist/esm-es5/app-globals-ec816a70.js +4 -0
  954. package/dist/esm-es5/{button-active-aef107f0.js → button-active-d926d4f4.js} +1 -1
  955. package/dist/esm-es5/{capacitor-6d1861b7.js → capacitor-b4979570.js} +1 -1
  956. package/dist/esm-es5/data-44d9e816.js +4 -0
  957. package/dist/esm-es5/form-controller-ed77647a.js +4 -0
  958. package/dist/esm-es5/framework-delegate-aa433dea.js +4 -0
  959. package/dist/esm-es5/{haptic-d85b8584.js → haptic-1243b917.js} +1 -1
  960. package/dist/esm-es5/{index-7373924f.js → index-746a238e.js} +1 -1
  961. package/dist/esm-es5/{index-afea2bcf.js → index-7d2b2808.js} +1 -1
  962. package/dist/esm-es5/index-b49b173c.js +5 -0
  963. package/dist/esm-es5/index-df55802d.js +4 -0
  964. package/dist/esm-es5/{index-2d0c7c77.js → index-f0cc4e14.js} +1 -1
  965. package/dist/esm-es5/{index-422b6e83.js → index-ff313b19.js} +1 -1
  966. package/dist/esm-es5/index.js +1 -1
  967. package/dist/esm-es5/input-shims-d78a3c77.js +4 -0
  968. package/dist/esm-es5/{input.utils-4c00ca72.js → input.utils-ec063df4.js} +1 -1
  969. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  970. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  971. package/dist/esm-es5/ion-alert.entry.js +1 -1
  972. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  973. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  974. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  975. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  976. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  977. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  978. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  979. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  980. package/dist/esm-es5/ion-chip.entry.js +1 -1
  981. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  982. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  983. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  984. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  985. package/dist/esm-es5/ion-img.entry.js +1 -1
  986. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  987. package/dist/esm-es5/ion-input.entry.js +1 -1
  988. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  989. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  990. package/dist/esm-es5/ion-loading.entry.js +1 -1
  991. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  992. package/dist/esm-es5/ion-modal.entry.js +1 -1
  993. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  994. package/dist/esm-es5/ion-picker-column-internal.entry.js +1 -1
  995. package/dist/esm-es5/ion-picker-internal.entry.js +1 -1
  996. package/dist/esm-es5/ion-popover.entry.js +1 -1
  997. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  998. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  999. package/dist/esm-es5/ion-range.entry.js +1 -1
  1000. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  1001. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  1002. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  1003. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  1004. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  1005. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  1006. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  1007. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  1008. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  1009. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  1010. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  1011. package/dist/esm-es5/ion-text.entry.js +1 -1
  1012. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  1013. package/dist/esm-es5/ion-toast.entry.js +1 -1
  1014. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  1015. package/dist/esm-es5/{ionic-global-a9abd569.js → ionic-global-246ca78f.js} +1 -1
  1016. package/dist/esm-es5/ionic.js +1 -1
  1017. package/dist/esm-es5/ios.transition-a86d7bbe.js +4 -0
  1018. package/dist/esm-es5/{keyboard-cdb83866.js → keyboard-b063f012.js} +1 -1
  1019. package/dist/esm-es5/{keyboard-a818f780.js → keyboard-b551279d.js} +1 -1
  1020. package/dist/esm-es5/{keyboard-controller-4149afc6.js → keyboard-controller-0c2dce71.js} +1 -1
  1021. package/dist/esm-es5/loader.js +1 -1
  1022. package/dist/esm-es5/lock-controller-e8c6c051.js +4 -0
  1023. package/dist/esm-es5/md.transition-365ef6b6.js +4 -0
  1024. package/dist/esm-es5/{notch-controller-cfcb8c01.js → notch-controller-8c9c0e54.js} +1 -1
  1025. package/dist/esm-es5/overlays-cec6bac8.js +4 -0
  1026. package/dist/esm-es5/{status-tap-211f1ad8.js → status-tap-9aeeaca5.js} +1 -1
  1027. package/dist/esm-es5/swipe-back-cd4295f3.js +4 -0
  1028. package/dist/html.html-data.json +150 -92
  1029. package/dist/ionic/index.esm.js +1 -1
  1030. package/dist/ionic/ionic.esm.js +1 -1
  1031. package/dist/ionic/ionic.js +2 -6
  1032. package/dist/ionic/p-012952cd.system.entry.js +4 -0
  1033. package/dist/ionic/p-015187e5.system.js +4 -0
  1034. package/dist/ionic/p-06ac429a.js +5 -0
  1035. package/dist/ionic/p-0ac3fb2c.entry.js +4 -0
  1036. package/dist/ionic/{p-30ae30f8.entry.js → p-0b00b937.entry.js} +1 -1
  1037. package/dist/ionic/{p-7cc4d08a.system.entry.js → p-0b7c25ee.system.entry.js} +1 -1
  1038. package/dist/ionic/p-0bbede6a.system.entry.js +4 -0
  1039. package/dist/ionic/{p-f6f393ee.system.entry.js → p-0f1f59da.system.entry.js} +1 -1
  1040. package/dist/ionic/{p-9a7f5ed5.entry.js → p-108f9d49.entry.js} +1 -1
  1041. package/dist/ionic/p-1289b3b5.system.entry.js +4 -0
  1042. package/dist/ionic/{p-fa98c2a6.system.js → p-128a98e8.system.js} +1 -1
  1043. package/dist/ionic/{p-dcf7bf1d.entry.js → p-15decbec.entry.js} +1 -1
  1044. package/dist/ionic/p-16e44585.js +4 -0
  1045. package/dist/ionic/p-17240d90.js +4 -0
  1046. package/dist/ionic/{p-609ac308.js → p-181b7c2a.js} +1 -1
  1047. package/dist/ionic/p-19fba51c.entry.js +4 -0
  1048. package/dist/ionic/p-1a463b1e.system.entry.js +4 -0
  1049. package/dist/ionic/{p-ee5049fd.entry.js → p-1ecba429.entry.js} +1 -1
  1050. package/dist/ionic/p-1edb53a1.entry.js +4 -0
  1051. package/dist/ionic/p-1f260a7b.entry.js +4 -0
  1052. package/dist/ionic/{p-5d6123f1.entry.js → p-1f81b5be.entry.js} +1 -1
  1053. package/dist/ionic/{p-8a95273c.js → p-276afddd.js} +1 -1
  1054. package/dist/ionic/p-28ea45b9.js +4 -0
  1055. package/dist/ionic/p-29073efe.system.entry.js +4 -0
  1056. package/dist/ionic/p-2bbf3ac4.system.entry.js +4 -0
  1057. package/dist/ionic/p-303bf1e8.system.entry.js +4 -0
  1058. package/dist/ionic/p-31119a15.entry.js +4 -0
  1059. package/dist/ionic/p-32083c2d.js +4 -0
  1060. package/dist/ionic/{p-088a58a8.system.entry.js → p-33a8349a.system.entry.js} +1 -1
  1061. package/dist/ionic/p-34259245.system.entry.js +4 -0
  1062. package/dist/ionic/p-35b26732.entry.js +4 -0
  1063. package/dist/ionic/p-35e399bd.entry.js +4 -0
  1064. package/dist/ionic/{p-f3116c14.system.js → p-3632220b.system.js} +1 -1
  1065. package/dist/ionic/p-38089641.entry.js +4 -0
  1066. package/dist/ionic/p-3818f63f.entry.js +4 -0
  1067. package/dist/ionic/p-38c5fe2b.system.entry.js +4 -0
  1068. package/dist/ionic/{p-9edd7119.system.entry.js → p-3a58e3a4.system.entry.js} +1 -1
  1069. package/dist/ionic/p-3bad5c1a.js +4 -0
  1070. package/dist/ionic/{p-aa7b8135.system.js → p-3d726a67.system.js} +1 -1
  1071. package/dist/ionic/{p-e8b9a6b2.system.entry.js → p-3f3da911.system.entry.js} +1 -1
  1072. package/dist/ionic/{p-59a47aff.system.js → p-41477ad9.system.js} +1 -1
  1073. package/dist/ionic/{p-d7fd994b.js → p-419eb426.js} +1 -1
  1074. package/dist/ionic/p-4215652f.system.entry.js +4 -0
  1075. package/dist/ionic/p-446230d7.js +4 -0
  1076. package/dist/ionic/p-4e50b8d1.entry.js +4 -0
  1077. package/dist/ionic/{p-138fcf0f.entry.js → p-4e6e43c1.entry.js} +1 -1
  1078. package/dist/ionic/p-4f97c112.entry.js +4 -0
  1079. package/dist/ionic/p-53b2a46f.js +4 -0
  1080. package/dist/ionic/p-54200074.entry.js +4 -0
  1081. package/dist/ionic/{p-465e0121.system.entry.js → p-54f6cd27.system.entry.js} +1 -1
  1082. package/dist/ionic/p-572cce26.system.entry.js +4 -0
  1083. package/dist/ionic/p-5b976d70.entry.js +4 -0
  1084. package/dist/ionic/p-5c3e72a8.system.js +4 -0
  1085. package/dist/ionic/{p-9cfa25d2.system.entry.js → p-6129af0a.system.entry.js} +1 -1
  1086. package/dist/ionic/{p-084b2140.system.js → p-613d4042.system.js} +1 -1
  1087. package/dist/ionic/p-629aa3fd.system.js +5 -0
  1088. package/dist/ionic/p-62e7d4fa.js +4 -0
  1089. package/dist/ionic/{p-4c9a0825.system.js → p-64475ab5.system.js} +2 -2
  1090. package/dist/ionic/p-673846f6.entry.js +4 -0
  1091. package/dist/ionic/p-6ce0a709.system.entry.js +4 -0
  1092. package/dist/ionic/{p-477f7813.entry.js → p-6ea2e653.entry.js} +1 -1
  1093. package/dist/ionic/p-6f6646bf.system.entry.js +4 -0
  1094. package/dist/ionic/{p-94d4b708.system.entry.js → p-6f8a95a3.system.entry.js} +1 -1
  1095. package/dist/ionic/{p-c1f5d275.js → p-76378400.js} +1 -1
  1096. package/dist/ionic/p-772f6c84.system.js +4 -0
  1097. package/dist/ionic/p-78030c1f.system.entry.js +4 -0
  1098. package/dist/ionic/p-8083aadb.entry.js +4 -0
  1099. package/dist/ionic/{p-a780a377.entry.js → p-818b2e75.entry.js} +1 -1
  1100. package/dist/ionic/p-81c818e7.js +4 -0
  1101. package/dist/ionic/p-81ef7437.system.entry.js +4 -0
  1102. package/dist/ionic/{p-b46c09ac.system.entry.js → p-8a2801f1.system.entry.js} +1 -1
  1103. package/dist/ionic/{p-46956a85.js → p-8b1be026.js} +1 -1
  1104. package/dist/ionic/p-8c1805f4.system.entry.js +4 -0
  1105. package/dist/ionic/{p-0c92638a.js → p-8cf94fc1.js} +1 -1
  1106. package/dist/ionic/p-8d6728a1.system.entry.js +4 -0
  1107. package/dist/ionic/p-8e24ebbc.js +4 -0
  1108. package/dist/ionic/p-8f01a9a2.system.js +4 -0
  1109. package/dist/ionic/{p-f9f3ef7c.system.js → p-939e0fa1.system.js} +1 -1
  1110. package/dist/ionic/p-95817276.system.entry.js +4 -0
  1111. package/dist/ionic/{p-0dd11651.entry.js → p-96ba8eac.entry.js} +1 -1
  1112. package/dist/ionic/{p-86e57430.system.js → p-9ab6f3e6.system.js} +1 -1
  1113. package/dist/ionic/p-9b9dcc3e.system.entry.js +4 -0
  1114. package/dist/ionic/p-9dc85536.system.entry.js +4 -0
  1115. package/dist/ionic/p-9f2e0db9.js +4 -0
  1116. package/dist/ionic/p-a04bfada.entry.js +4 -0
  1117. package/dist/ionic/p-a164e3ab.system.entry.js +4 -0
  1118. package/dist/ionic/p-a200a7fc.entry.js +4 -0
  1119. package/dist/ionic/p-a34fc12e.system.entry.js +4 -0
  1120. package/dist/ionic/p-a7f8dc42.entry.js +4 -0
  1121. package/dist/ionic/p-a9c32660.entry.js +4 -0
  1122. package/dist/ionic/{p-0b761768.system.js → p-aa377971.system.js} +1 -1
  1123. package/dist/ionic/{p-2d55f2bd.system.js → p-ab4cff27.system.js} +1 -1
  1124. package/dist/ionic/p-ad48dd13.system.js +4 -0
  1125. package/dist/ionic/{p-66bd7d60.entry.js → p-afb6658f.entry.js} +1 -1
  1126. package/dist/ionic/p-b132c2c0.system.js +4 -0
  1127. package/dist/ionic/p-b24aa895.js +4 -0
  1128. package/dist/ionic/p-b287ab05.js +4 -0
  1129. package/dist/ionic/{p-c75da7cf.system.js → p-b3c68723.system.js} +1 -1
  1130. package/dist/ionic/{p-e3f387af.system.js → p-b4b4bb29.system.js} +1 -1
  1131. package/dist/ionic/p-b61a2fa0.system.entry.js +4 -0
  1132. package/dist/ionic/p-b753ec0d.system.entry.js +4 -0
  1133. package/dist/ionic/p-b8c3f071.system.js +4 -0
  1134. package/dist/ionic/p-b9047b05.system.js +4 -0
  1135. package/dist/ionic/p-b912e055.system.js +4 -0
  1136. package/dist/ionic/{p-28342e96.js → p-b923f3d7.js} +1 -1
  1137. package/dist/ionic/{p-c3325038.system.js → p-bba2ce59.system.js} +1 -1
  1138. package/dist/ionic/{p-46cac66d.system.entry.js → p-beb864e4.system.entry.js} +1 -1
  1139. package/dist/ionic/p-c05315f5.system.entry.js +4 -0
  1140. package/dist/ionic/p-c105bd36.entry.js +4 -0
  1141. package/dist/ionic/p-c42c86c0.system.entry.js +4 -0
  1142. package/dist/ionic/{p-505d3b57.system.js → p-c49672d8.system.js} +1 -1
  1143. package/dist/ionic/{p-ed70dec7.entry.js → p-c4a5de01.entry.js} +1 -1
  1144. package/dist/ionic/{p-f7515628.entry.js → p-c679fcb5.entry.js} +1 -1
  1145. package/dist/ionic/p-c8c9d699.system.entry.js +4 -0
  1146. package/dist/ionic/p-c92f0a6d.system.entry.js +4 -0
  1147. package/dist/ionic/p-c956e82c.system.entry.js +4 -0
  1148. package/dist/ionic/{p-40ed5852.system.js → p-c994fff0.system.js} +1 -1
  1149. package/dist/ionic/p-ca5cf574.js +4 -0
  1150. package/dist/ionic/p-cabd2c6d.entry.js +4 -0
  1151. package/dist/ionic/p-cc196b34.js +4 -0
  1152. package/dist/ionic/{p-0fba861a.system.js → p-ccdcb022.system.js} +1 -1
  1153. package/dist/ionic/p-cd2d17c3.system.entry.js +4 -0
  1154. package/dist/ionic/{p-8a9d2a85.system.entry.js → p-ce7d67a7.system.entry.js} +1 -1
  1155. package/dist/ionic/p-ced41304.system.js +4 -0
  1156. package/dist/ionic/{p-fc2c5521.system.entry.js → p-cf0c93e3.system.entry.js} +1 -1
  1157. package/dist/ionic/p-cf62e1c8.js +4 -0
  1158. package/dist/ionic/{p-9912d985.js → p-d1de1188.js} +1 -1
  1159. package/dist/ionic/p-d35217be.entry.js +4 -0
  1160. package/dist/ionic/p-d6e53e66.entry.js +4 -0
  1161. package/dist/ionic/{p-c056132d.entry.js → p-db1a1e00.entry.js} +1 -1
  1162. package/dist/ionic/{p-13cb1942.system.entry.js → p-e0f52215.system.entry.js} +1 -1
  1163. package/dist/ionic/p-e1d5752d.system.entry.js +4 -0
  1164. package/dist/ionic/p-e2bb634f.js +4 -0
  1165. package/dist/ionic/{p-c7d59299.js → p-e38a5f77.js} +1 -1
  1166. package/dist/ionic/p-e42aaa8b.entry.js +4 -0
  1167. package/dist/ionic/p-e65ebe96.entry.js +4 -0
  1168. package/dist/ionic/p-e74faf2a.entry.js +4 -0
  1169. package/dist/ionic/{p-dd54d07b.system.entry.js → p-eab10949.system.entry.js} +1 -1
  1170. package/dist/ionic/p-eac263dd.entry.js +4 -0
  1171. package/dist/ionic/p-f34f001c.entry.js +4 -0
  1172. package/dist/ionic/p-f4309ac7.entry.js +4 -0
  1173. package/dist/ionic/p-f5bf698b.entry.js +4 -0
  1174. package/dist/ionic/p-f7566bad.entry.js +4 -0
  1175. package/dist/ionic/p-f919c026.entry.js +4 -0
  1176. package/dist/ionic/p-f9fa802c.system.entry.js +4 -0
  1177. package/dist/ionic/{p-c3da26fd.system.js → p-fa8d4788.system.js} +1 -1
  1178. package/dist/ionic/{p-1699be8e.entry.js → p-fcf47f80.entry.js} +1 -1
  1179. package/dist/ionic/{p-3ca87455.system.js → p-ff5a10f9.system.js} +1 -1
  1180. package/dist/node_modules/ionicons/dist/collection/components/icon/icon.css +49 -6
  1181. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -0
  1182. package/dist/types/components/action-sheet/action-sheet.d.ts +1 -1
  1183. package/dist/types/components/alert/alert-interface.d.ts +3 -0
  1184. package/dist/types/components/alert/alert.d.ts +1 -1
  1185. package/dist/types/components/button/button.d.ts +9 -0
  1186. package/dist/types/components/checkbox/checkbox.d.ts +9 -1
  1187. package/dist/types/components/content/content.d.ts +2 -1
  1188. package/dist/types/components/datetime/datetime-interface.d.ts +1 -0
  1189. package/dist/types/components/datetime/datetime.d.ts +25 -12
  1190. package/dist/types/components/datetime/utils/data.d.ts +4 -4
  1191. package/dist/types/components/datetime/utils/format.d.ts +3 -3
  1192. package/dist/types/components/datetime/utils/helpers.d.ts +15 -1
  1193. package/dist/types/components/datetime/utils/parse.d.ts +5 -5
  1194. package/dist/types/components/item/item.d.ts +2 -0
  1195. package/dist/types/components/item-sliding/test/test.utils.d.ts +5 -0
  1196. package/dist/types/components/loading/loading.d.ts +1 -1
  1197. package/dist/types/components/menu/menu-interface.d.ts +0 -1
  1198. package/dist/types/components/menu/menu.d.ts +10 -1
  1199. package/dist/types/components/modal/modal.d.ts +1 -1
  1200. package/dist/types/components/picker/picker-interface.d.ts +3 -0
  1201. package/dist/types/components/picker/picker.d.ts +1 -1
  1202. package/dist/types/components/popover/popover.d.ts +1 -1
  1203. package/dist/types/components/radio/radio.d.ts +8 -1
  1204. package/dist/types/components/range/range.d.ts +10 -1
  1205. package/dist/types/components/router-outlet/{route-outlet.d.ts → router-outlet.d.ts} +1 -2
  1206. package/dist/types/components/segment/segment.d.ts +1 -0
  1207. package/dist/types/components/tab-bar/tab-bar.d.ts +8 -0
  1208. package/dist/types/components/toast/animations/ios.enter.d.ts +2 -1
  1209. package/dist/types/components/toast/animations/ios.leave.d.ts +2 -2
  1210. package/dist/types/components/toast/animations/md.enter.d.ts +2 -1
  1211. package/dist/types/components/toast/animations/utils.d.ts +18 -0
  1212. package/dist/types/components/toast/toast-interface.d.ts +17 -0
  1213. package/dist/types/components/toast/toast.d.ts +23 -2
  1214. package/dist/types/components/toggle/toggle.d.ts +8 -1
  1215. package/dist/types/components.d.ts +58 -24
  1216. package/dist/types/index.d.ts +2 -0
  1217. package/dist/types/interface.d.ts +1 -0
  1218. package/dist/types/stencil-public-runtime.d.ts +17 -5
  1219. package/dist/types/utils/browser/index.d.ts +16 -1
  1220. package/dist/types/utils/input-shims/hacks/scroll-data.d.ts +1 -1
  1221. package/dist/types/utils/lock-controller.d.ts +10 -0
  1222. package/dist/types/utils/menu-controller/index.d.ts +1 -2
  1223. package/dist/types/utils/overlays.d.ts +5 -2
  1224. package/dist/types/utils/test/playwright/drag-element.d.ts +8 -1
  1225. package/dist/types/utils/test/playwright/page/utils/index.d.ts +0 -1
  1226. package/dist/types/utils/test/playwright/playwright-declarations.d.ts +0 -5
  1227. package/dist/types/utils/test/playwright/viewports/index.d.ts +4 -0
  1228. package/hydrate/index.d.ts +6 -6
  1229. package/hydrate/index.js +1320 -691
  1230. package/hydrate/package.json +1 -1
  1231. package/loader/index.d.ts +1 -1
  1232. package/package.json +12 -12
  1233. package/dist/collection/components/router-outlet/route-outlet.css +0 -10
  1234. package/dist/collection/utils/test/playwright/page/utils/get-snapshot-settings.js +0 -32
  1235. package/dist/esm/polyfills/css-shim.js +0 -1
  1236. package/dist/esm-es5/animation-258fd22b.js +0 -4
  1237. package/dist/esm-es5/app-globals-70454efb.js +0 -4
  1238. package/dist/esm-es5/data-605c040f.js +0 -4
  1239. package/dist/esm-es5/form-controller-6cd7ebd1.js +0 -4
  1240. package/dist/esm-es5/framework-delegate-6a45ed30.js +0 -4
  1241. package/dist/esm-es5/index-36a5fd75.js +0 -5
  1242. package/dist/esm-es5/index-6e89f340.js +0 -4
  1243. package/dist/esm-es5/input-shims-5b912f6d.js +0 -4
  1244. package/dist/esm-es5/ios.transition-6a838b0c.js +0 -4
  1245. package/dist/esm-es5/md.transition-b7d7b475.js +0 -4
  1246. package/dist/esm-es5/overlays-4801a327.js +0 -4
  1247. package/dist/esm-es5/swipe-back-1bb66ed2.js +0 -4
  1248. package/dist/ionic/p-004db8b3.entry.js +0 -4
  1249. package/dist/ionic/p-026e6f00.system.entry.js +0 -4
  1250. package/dist/ionic/p-05111967.entry.js +0 -4
  1251. package/dist/ionic/p-0e51ceb7.system.entry.js +0 -4
  1252. package/dist/ionic/p-163145e8.system.entry.js +0 -4
  1253. package/dist/ionic/p-164b025e.system.js +0 -4
  1254. package/dist/ionic/p-1ce8e1ca.system.entry.js +0 -4
  1255. package/dist/ionic/p-1f05aa2b.system.entry.js +0 -4
  1256. package/dist/ionic/p-21e3627d.entry.js +0 -4
  1257. package/dist/ionic/p-2e5dc115.entry.js +0 -4
  1258. package/dist/ionic/p-322237d0.entry.js +0 -4
  1259. package/dist/ionic/p-335e3cfe.js +0 -4
  1260. package/dist/ionic/p-34f66fef.entry.js +0 -4
  1261. package/dist/ionic/p-355aae8e.system.entry.js +0 -4
  1262. package/dist/ionic/p-37184fe8.js +0 -4
  1263. package/dist/ionic/p-39a30df1.entry.js +0 -4
  1264. package/dist/ionic/p-3bf5cd2e.system.entry.js +0 -4
  1265. package/dist/ionic/p-3f9dbcfc.system.entry.js +0 -4
  1266. package/dist/ionic/p-40f778e6.js +0 -4
  1267. package/dist/ionic/p-4108c24e.entry.js +0 -4
  1268. package/dist/ionic/p-43060640.system.entry.js +0 -4
  1269. package/dist/ionic/p-451cbc39.js +0 -4
  1270. package/dist/ionic/p-49ead5cb.system.js +0 -4
  1271. package/dist/ionic/p-4ab679fd.system.js +0 -4
  1272. package/dist/ionic/p-4f7973ad.entry.js +0 -4
  1273. package/dist/ionic/p-52540082.js +0 -4
  1274. package/dist/ionic/p-54ada505.entry.js +0 -4
  1275. package/dist/ionic/p-54d3d2b6.entry.js +0 -4
  1276. package/dist/ionic/p-565d288e.system.js +0 -4
  1277. package/dist/ionic/p-5a3ee051.system.js +0 -4
  1278. package/dist/ionic/p-5db06d92.system.entry.js +0 -4
  1279. package/dist/ionic/p-5dc1aee9.entry.js +0 -4
  1280. package/dist/ionic/p-5de3c520.js +0 -4
  1281. package/dist/ionic/p-627e74b4.js +0 -4
  1282. package/dist/ionic/p-69a66969.js +0 -4
  1283. package/dist/ionic/p-6a0edd6d.system.js +0 -5
  1284. package/dist/ionic/p-6eeeee8b.system.entry.js +0 -4
  1285. package/dist/ionic/p-6f59ad61.entry.js +0 -4
  1286. package/dist/ionic/p-72969d37.entry.js +0 -4
  1287. package/dist/ionic/p-74a23266.system.entry.js +0 -4
  1288. package/dist/ionic/p-7c63a67f.system.entry.js +0 -4
  1289. package/dist/ionic/p-8711de04.entry.js +0 -4
  1290. package/dist/ionic/p-871802fe.entry.js +0 -4
  1291. package/dist/ionic/p-897e142d.entry.js +0 -4
  1292. package/dist/ionic/p-8da248f0.system.entry.js +0 -4
  1293. package/dist/ionic/p-90bfa7eb.system.entry.js +0 -4
  1294. package/dist/ionic/p-9131f2ce.system.entry.js +0 -4
  1295. package/dist/ionic/p-921d49a0.entry.js +0 -4
  1296. package/dist/ionic/p-94bb8e22.entry.js +0 -4
  1297. package/dist/ionic/p-954ce757.system.entry.js +0 -4
  1298. package/dist/ionic/p-99eac672.system.js +0 -4
  1299. package/dist/ionic/p-9c935c1f.system.entry.js +0 -4
  1300. package/dist/ionic/p-9dcf76ff.system.entry.js +0 -4
  1301. package/dist/ionic/p-9ee9d00e.js +0 -4
  1302. package/dist/ionic/p-a18e77cb.system.entry.js +0 -4
  1303. package/dist/ionic/p-a2e57f27.entry.js +0 -4
  1304. package/dist/ionic/p-a4ef5b36.js +0 -4
  1305. package/dist/ionic/p-a5808f22.entry.js +0 -4
  1306. package/dist/ionic/p-a7016aef.entry.js +0 -4
  1307. package/dist/ionic/p-ab692eeb.entry.js +0 -4
  1308. package/dist/ionic/p-acd4af3a.entry.js +0 -4
  1309. package/dist/ionic/p-b04873a4.system.js +0 -4
  1310. package/dist/ionic/p-b096113b.js +0 -4
  1311. package/dist/ionic/p-b159246b.entry.js +0 -4
  1312. package/dist/ionic/p-b6098fdf.entry.js +0 -4
  1313. package/dist/ionic/p-b6519389.system.entry.js +0 -4
  1314. package/dist/ionic/p-b94d3454.entry.js +0 -4
  1315. package/dist/ionic/p-c05662ba.system.entry.js +0 -4
  1316. package/dist/ionic/p-c60bc054.system.entry.js +0 -4
  1317. package/dist/ionic/p-c9b94b63.system.entry.js +0 -4
  1318. package/dist/ionic/p-cd582fdb.system.entry.js +0 -4
  1319. package/dist/ionic/p-cd83e6cc.system.entry.js +0 -4
  1320. package/dist/ionic/p-d0dedc45.entry.js +0 -4
  1321. package/dist/ionic/p-d267077c.system.entry.js +0 -4
  1322. package/dist/ionic/p-d34c3e77.js +0 -4
  1323. package/dist/ionic/p-d7e0a42b.system.js +0 -4
  1324. package/dist/ionic/p-d834e36b.entry.js +0 -4
  1325. package/dist/ionic/p-d9bc4210.js +0 -5
  1326. package/dist/ionic/p-e171bd9c.system.js +0 -4
  1327. package/dist/ionic/p-e4146230.system.entry.js +0 -4
  1328. package/dist/ionic/p-e614b5ba.system.entry.js +0 -4
  1329. package/dist/ionic/p-ec8a20f7.system.entry.js +0 -4
  1330. package/dist/ionic/p-ee9863ad.js +0 -4
  1331. package/dist/ionic/p-f16ea33b.entry.js +0 -4
  1332. package/dist/ionic/p-f321535c.js +0 -4
  1333. package/dist/ionic/p-f3c381f2.entry.js +0 -4
  1334. package/dist/ionic/p-f484f0e1.system.entry.js +0 -4
  1335. package/dist/ionic/p-f67dfe83.system.entry.js +0 -4
  1336. package/dist/ionic/p-f810e0d3.js +0 -4
  1337. package/dist/ionic/p-fc431180.entry.js +0 -4
  1338. package/dist/ionic/p-ffe2c670.js +0 -4
  1339. package/dist/types/utils/test/playwright/page/utils/get-snapshot-settings.d.ts +0 -8
  1340. /package/dist/cjs/{config-172736e4.js → config-d5882735.js} +0 -0
  1341. /package/dist/cjs/{cubic-bezier-0e51923d.js → cubic-bezier-6b9222ad.js} +0 -0
  1342. /package/dist/cjs/{dir-186d3a4d.js → dir-f1e0ca26.js} +0 -0
  1343. /package/dist/cjs/{focus-visible-6163be3a.js → focus-visible-a7545600.js} +0 -0
  1344. /package/dist/cjs/{gesture-controller-e2865472.js → gesture-controller-b46721be.js} +0 -0
  1345. /package/dist/cjs/{hardware-back-button-bae6e13a.js → hardware-back-button-b67c8e75.js} +0 -0
  1346. /package/dist/cjs/{helpers-77560954.js → helpers-ea4ccbcb.js} +0 -0
  1347. /package/dist/cjs/{index-f0d7c9cc.js → index-306a7476.js} +0 -0
  1348. /package/dist/cjs/{index-79605113.js → index-cc7dfb7c.js} +0 -0
  1349. /package/dist/cjs/{spinner-configs-7d30ff6f.js → spinner-configs-f7b5105b.js} +0 -0
  1350. /package/dist/cjs/{theme-e6fec71e.js → theme-fbc56b3b.js} +0 -0
  1351. /package/dist/cjs/{watch-options-4d182698.js → watch-options-f3f77e54.js} +0 -0
  1352. /package/dist/esm/{config-80c044f2.js → config-96c9ace3.js} +0 -0
  1353. /package/dist/esm/{cubic-bezier-e78d1307.js → cubic-bezier-66542bc5.js} +0 -0
  1354. /package/dist/esm/{dir-e8b767a8.js → dir-912e3e13.js} +0 -0
  1355. /package/dist/esm/{focus-visible-10ad4867.js → focus-visible-85493433.js} +0 -0
  1356. /package/dist/esm/{gesture-controller-17060b7c.js → gesture-controller-0fa396c4.js} +0 -0
  1357. /package/dist/esm/{hardware-back-button-490df115.js → hardware-back-button-39299f84.js} +0 -0
  1358. /package/dist/esm/{helpers-f586db1c.js → helpers-3379ba19.js} +0 -0
  1359. /package/dist/esm/{index-e86f0117.js → index-595d62c9.js} +0 -0
  1360. /package/dist/esm/{index-b32cad98.js → index-7a14ecec.js} +0 -0
  1361. /package/dist/esm/{spinner-configs-40ada8cd.js → spinner-configs-d09fbbbb.js} +0 -0
  1362. /package/dist/esm/{theme-7670341c.js → theme-17531cdf.js} +0 -0
  1363. /package/dist/esm/{watch-options-4d421847.js → watch-options-355a920a.js} +0 -0
  1364. /package/dist/esm-es5/{config-80c044f2.js → config-96c9ace3.js} +0 -0
  1365. /package/dist/esm-es5/{cubic-bezier-e78d1307.js → cubic-bezier-66542bc5.js} +0 -0
  1366. /package/dist/esm-es5/{dir-e8b767a8.js → dir-912e3e13.js} +0 -0
  1367. /package/dist/esm-es5/{focus-visible-10ad4867.js → focus-visible-85493433.js} +0 -0
  1368. /package/dist/esm-es5/{gesture-controller-17060b7c.js → gesture-controller-0fa396c4.js} +0 -0
  1369. /package/dist/esm-es5/{hardware-back-button-490df115.js → hardware-back-button-39299f84.js} +0 -0
  1370. /package/dist/esm-es5/{helpers-f586db1c.js → helpers-3379ba19.js} +0 -0
  1371. /package/dist/esm-es5/{index-e86f0117.js → index-595d62c9.js} +0 -0
  1372. /package/dist/esm-es5/{index-b32cad98.js → index-7a14ecec.js} +0 -0
  1373. /package/dist/esm-es5/{index-393bc14a.js → index-c132c5f1.js} +0 -0
  1374. /package/dist/esm-es5/{spinner-configs-40ada8cd.js → spinner-configs-d09fbbbb.js} +0 -0
  1375. /package/dist/esm-es5/{theme-7670341c.js → theme-17531cdf.js} +0 -0
  1376. /package/dist/esm-es5/{watch-options-4d421847.js → watch-options-355a920a.js} +0 -0
  1377. /package/dist/ionic/{p-3b753651.system.js → p-0e94957a.system.js} +0 -0
  1378. /package/dist/ionic/{p-6561b0e5.js → p-185e427e.js} +0 -0
  1379. /package/dist/ionic/{p-e1bc9a81.js → p-1b8e1d03.js} +0 -0
  1380. /package/dist/ionic/{p-fe01417c.js → p-1d072d3d.js} +0 -0
  1381. /package/dist/ionic/{p-5503807a.system.js → p-2b89ea1b.system.js} +0 -0
  1382. /package/dist/ionic/{p-1ef14636.system.js → p-44bc8b45.system.js} +0 -0
  1383. /package/dist/ionic/{p-97891b6b.system.js → p-479cdbf8.system.js} +0 -0
  1384. /package/dist/ionic/{p-09292468.system.js → p-56dc022e.system.js} +0 -0
  1385. /package/dist/ionic/{p-c099b4c9.js → p-5bf16a18.js} +0 -0
  1386. /package/dist/ionic/{p-38bc7b29.js → p-63eb0acd.js} +0 -0
  1387. /package/dist/ionic/{p-bb5b0f18.js → p-6dbfe5d4.js} +0 -0
  1388. /package/dist/ionic/{p-d2405689.js → p-76fce40e.js} +0 -0
  1389. /package/dist/ionic/{p-7ec7dc35.js → p-7b021525.js} +0 -0
  1390. /package/dist/ionic/{p-bb38e011.js → p-7c2bac85.js} +0 -0
  1391. /package/dist/ionic/{p-dc3c3a0a.system.js → p-8050b9b9.system.js} +0 -0
  1392. /package/dist/ionic/{p-86d4b2bf.system.js → p-815c2fba.system.js} +0 -0
  1393. /package/dist/ionic/{p-c2257c28.system.js → p-819ff3b9.system.js} +0 -0
  1394. /package/dist/ionic/{p-56929710.system.js → p-87411e39.system.js} +0 -0
  1395. /package/dist/ionic/{p-04f1268e.system.js → p-8c15eda7.system.js} +0 -0
  1396. /package/dist/ionic/{p-72dbfdd4.system.js → p-9e852ff1.system.js} +0 -0
  1397. /package/dist/ionic/{p-3c349187.js → p-b347cfd1.js} +0 -0
  1398. /package/dist/ionic/{p-896b72c9.js → p-c18d6eac.js} +0 -0
  1399. /package/dist/ionic/{p-eb54056c.system.js → p-c4f2dce7.system.js} +0 -0
  1400. /package/dist/ionic/{p-4a212c9c.system.js → p-c87827ca.system.js} +0 -0
  1401. /package/dist/ionic/{p-e1c318e0.js → p-e0b06b65.js} +0 -0
  1402. /package/dist/ionic/{p-35d01c78.js → p-ea96fa73.js} +0 -0
@@ -1,21 +1,21 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { Host, h, writeTask } from '@stencil/core';
4
+ import { Host, h, writeTask } from "@stencil/core";
5
5
  import { startFocusVisible } from "../../utils/focus-visible";
6
6
  import { getElementRoot, raf, renderHiddenInput } from "../../utils/helpers";
7
7
  import { printIonError, printIonWarning } from "../../utils/logging/index";
8
8
  import { isRTL } from "../../utils/rtl/index";
9
9
  import { createColorClasses } from "../../utils/theme";
10
- import { caretDownSharp, caretUpSharp, chevronBack, chevronDown, chevronForward } from 'ionicons/icons';
11
- import { getIonMode } from '../../global/ionic-global';
12
- import { isSameDay, warnIfValueOutOfBounds, isBefore, isAfter } from './utils/comparison';
13
- import { generateMonths, getDaysOfMonth, getDaysOfWeek, getToday, getMonthColumnData, getDayColumnData, getYearColumnData, getTimeColumnsData, getCombinedDateColumnData, } from './utils/data';
14
- import { formatValue, getLocalizedTime, getMonthAndDay, getMonthAndYear } from './utils/format';
15
- import { is24Hour, isLocaleDayPeriodRTL, isMonthFirstLocale, getNumDaysInMonth } from './utils/helpers';
16
- import { calculateHourFromAMPM, convertDataToISO, getClosestValidDate, getEndOfWeek, getNextDay, getNextMonth, getNextWeek, getNextYear, getPreviousDay, getPreviousMonth, getPreviousWeek, getPreviousYear, getStartOfWeek, validateParts, } from './utils/manipulation';
17
- import { clampDate, convertToArrayOfNumbers, getPartsFromCalendarDay, parseAmPm, parseDate, parseMaxParts, parseMinParts, } from './utils/parse';
18
- import { getCalendarDayState, getHighlightStyles, isDayDisabled, isMonthDisabled, isNextMonthDisabled, isPrevMonthDisabled, } from './utils/state';
10
+ import { caretDownSharp, caretUpSharp, chevronBack, chevronDown, chevronForward } from "ionicons/icons";
11
+ import { getIonMode } from "../../global/ionic-global";
12
+ import { isSameDay, warnIfValueOutOfBounds, isBefore, isAfter } from "./utils/comparison";
13
+ import { generateMonths, getDaysOfMonth, getDaysOfWeek, getToday, getMonthColumnData, getDayColumnData, getYearColumnData, getTimeColumnsData, getCombinedDateColumnData, } from "./utils/data";
14
+ import { formatValue, getLocalizedTime, getMonthAndDay, getMonthAndYear } from "./utils/format";
15
+ import { isLocaleDayPeriodRTL, isMonthFirstLocale, getNumDaysInMonth, getHourCycle } from "./utils/helpers";
16
+ import { calculateHourFromAMPM, convertDataToISO, getClosestValidDate, getEndOfWeek, getNextDay, getNextMonth, getNextWeek, getNextYear, getPreviousDay, getPreviousMonth, getPreviousWeek, getPreviousYear, getStartOfWeek, validateParts, } from "./utils/manipulation";
17
+ import { clampDate, convertToArrayOfNumbers, getPartsFromCalendarDay, parseAmPm, parseDate, parseMaxParts, parseMinParts, } from "./utils/parse";
18
+ import { getCalendarDayState, getHighlightStyles, isDayDisabled, isMonthDisabled, isNextMonthDisabled, isPrevMonthDisabled, } from "./utils/state";
19
19
  /**
20
20
  * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
21
21
  *
@@ -33,16 +33,17 @@ import { getCalendarDayState, getHighlightStyles, isDayDisabled, isMonthDisabled
33
33
  *
34
34
  * @part month-year-button - The button that opens the month/year picker when
35
35
  * using a grid style layout.
36
+ *
37
+ * @part calendar-day - The individual buttons that display a day inside of the datetime
38
+ * calendar.
39
+ * @part calendar-day active - The currently selected calendar day.
40
+ * @part calendar-day today - The calendar day that contains the current day.
41
+ * @part calendar-day disabled - The calendar day that is disabled.
36
42
  */
37
43
  export class Datetime {
38
44
  constructor() {
39
45
  this.inputId = `ion-dt-${datetimeIds++}`;
40
46
  this.prevPresentation = null;
41
- /**
42
- * Duplicate reference to `activeParts` that does not trigger a re-render of the component.
43
- * Allows caching an instance of the `activeParts` in between render cycles.
44
- */
45
- this.activePartsClone = [];
46
47
  this.warnIfIncorrectValueUsage = () => {
47
48
  const { multiple, value } = this;
48
49
  if (!multiple && Array.isArray(value)) {
@@ -70,9 +71,9 @@ export class Datetime {
70
71
  * data. This should be used when rendering an
71
72
  * interface in an environment where the `value`
72
73
  * may not be set. This function works
73
- * by returning the first selected date in
74
- * "activePartsClone" and then falling back to
75
- * defaultParts if no active date is selected.
74
+ * by returning the first selected date and then
75
+ * falling back to defaultParts if no active date
76
+ * is selected.
76
77
  */
77
78
  this.getActivePartsWithFallback = () => {
78
79
  var _a;
@@ -80,8 +81,8 @@ export class Datetime {
80
81
  return (_a = this.getActivePart()) !== null && _a !== void 0 ? _a : defaultParts;
81
82
  };
82
83
  this.getActivePart = () => {
83
- const { activePartsClone } = this;
84
- return Array.isArray(activePartsClone) ? activePartsClone[0] : activePartsClone;
84
+ const { activeParts } = this;
85
+ return Array.isArray(activeParts) ? activeParts[0] : activeParts;
85
86
  };
86
87
  this.closeParentOverlay = () => {
87
88
  const popoverOrModal = this.el.closest('ion-modal, ion-popover');
@@ -93,7 +94,7 @@ export class Datetime {
93
94
  this.workingParts = Object.assign({}, parts);
94
95
  };
95
96
  this.setActiveParts = (parts, removeDate = false) => {
96
- const { multiple, minParts, maxParts, activePartsClone } = this;
97
+ const { multiple, minParts, maxParts, activeParts } = this;
97
98
  /**
98
99
  * When setting the active parts, it is possible
99
100
  * to set invalid data. For example,
@@ -107,16 +108,7 @@ export class Datetime {
107
108
  const validatedParts = validateParts(parts, minParts, maxParts);
108
109
  this.setWorkingParts(validatedParts);
109
110
  if (multiple) {
110
- /**
111
- * We read from activePartsClone here because valueChanged() only updates that,
112
- * so it's the more reliable source of truth. If we read from activeParts, then
113
- * if you click July 1, manually set the value to July 2, and then click July 3,
114
- * the new value would be [July 1, July 3], ignoring the value set.
115
- *
116
- * We can then pass the new value to activeParts (rather than activePartsClone)
117
- * since the clone will be updated automatically by activePartsChanged().
118
- */
119
- const activePartsArray = Array.isArray(activePartsClone) ? activePartsClone : [activePartsClone];
111
+ const activePartsArray = Array.isArray(activeParts) ? activeParts : [activeParts];
120
112
  if (removeDate) {
121
113
  this.activeParts = activePartsArray.filter((p) => !isSameDay(p, validatedParts));
122
114
  }
@@ -241,7 +233,7 @@ export class Datetime {
241
233
  /**
242
234
  * Get the number of padding days so
243
235
  * we know how much to offset our next selector by
244
- * to grab the correct calenday-day element.
236
+ * to grab the correct calendar-day element.
245
237
  */
246
238
  const padding = currentMonth.querySelectorAll('.calendar-day-padding');
247
239
  const { day } = this.workingParts;
@@ -252,7 +244,7 @@ export class Datetime {
252
244
  * Get the calendar day element
253
245
  * and focus it.
254
246
  */
255
- const dayEl = currentMonth.querySelector(`.calendar-day:nth-of-type(${padding.length + day})`);
247
+ const dayEl = currentMonth.querySelector(`.calendar-day-wrapper:nth-of-type(${padding.length + day}) .calendar-day`);
256
248
  if (dayEl) {
257
249
  dayEl.focus();
258
250
  }
@@ -333,6 +325,19 @@ export class Datetime {
333
325
  const monthBox = month.getBoundingClientRect();
334
326
  if (Math.abs(monthBox.x - box.x) > 2)
335
327
  return;
328
+ /**
329
+ * If we're force-rendering a month, assume we've
330
+ * scrolled to that and return it.
331
+ *
332
+ * If forceRenderDate is ever used in a context where the
333
+ * forced month is not immediately auto-scrolled to, this
334
+ * should be updated to also check whether `month` has the
335
+ * same month and year as the forced date.
336
+ */
337
+ const { forceRenderDate } = this;
338
+ if (forceRenderDate !== undefined) {
339
+ return { month: forceRenderDate.month, year: forceRenderDate.year, day: forceRenderDate.day };
340
+ }
336
341
  /**
337
342
  * From here, we can determine if the start
338
343
  * month or the end month was scrolled into view.
@@ -387,6 +392,9 @@ export class Datetime {
387
392
  this.setWorkingParts(Object.assign(Object.assign({}, this.workingParts), { month, day: day, year }));
388
393
  calendarBodyRef.scrollLeft = workingMonth.clientWidth * (isRTL(this.el) ? -1 : 1);
389
394
  calendarBodyRef.style.removeProperty('overflow');
395
+ if (this.resolveForceDateScrolling) {
396
+ this.resolveForceDateScrolling();
397
+ }
390
398
  });
391
399
  };
392
400
  /**
@@ -441,10 +449,17 @@ export class Datetime {
441
449
  }
442
450
  };
443
451
  this.processValue = (value) => {
444
- const hasValue = value !== null && value !== undefined;
452
+ const hasValue = value !== null && value !== undefined && (!Array.isArray(value) || value.length > 0);
445
453
  const valueToProcess = hasValue ? parseDate(value) : this.defaultParts;
446
- const { minParts, maxParts } = this;
454
+ const { minParts, maxParts, workingParts, el } = this;
447
455
  this.warnIfIncorrectValueUsage();
456
+ /**
457
+ * Return early if the value wasn't parsed correctly, such as
458
+ * if an improperly formatted date string was provided.
459
+ */
460
+ if (!valueToProcess) {
461
+ return;
462
+ }
448
463
  /**
449
464
  * Datetime should only warn of out of bounds values
450
465
  * if set by the user. If the `value` is undefined,
@@ -462,16 +477,9 @@ export class Datetime {
462
477
  * that the values don't necessarily have to be in order.
463
478
  */
464
479
  const singleValue = Array.isArray(valueToProcess) ? valueToProcess[0] : valueToProcess;
465
- const { month, day, year, hour, minute } = clampDate(singleValue, minParts, maxParts);
480
+ const targetValue = clampDate(singleValue, minParts, maxParts);
481
+ const { month, day, year, hour, minute } = targetValue;
466
482
  const ampm = parseAmPm(hour);
467
- this.setWorkingParts({
468
- month,
469
- day,
470
- year,
471
- hour,
472
- minute,
473
- ampm,
474
- });
475
483
  /**
476
484
  * Since `activeParts` indicates a value that
477
485
  * been explicitly selected either by the
@@ -501,6 +509,62 @@ export class Datetime {
501
509
  */
502
510
  this.activeParts = [];
503
511
  }
512
+ /**
513
+ * Only animate if:
514
+ * 1. We're using grid style (wheel style pickers should just jump to new value)
515
+ * 2. The month and/or year actually changed, and both are defined (otherwise there's nothing to animate to)
516
+ * 3. The calendar body is visible (prevents animation when in collapsed datetime-button, for example)
517
+ * 4. The month/year picker is not open (since you wouldn't see the animation anyway)
518
+ */
519
+ const didChangeMonth = (month !== undefined && month !== workingParts.month) || (year !== undefined && year !== workingParts.year);
520
+ const bodyIsVisible = el.classList.contains('datetime-ready');
521
+ const { isGridStyle, showMonthAndYear } = this;
522
+ if (isGridStyle && didChangeMonth && bodyIsVisible && !showMonthAndYear) {
523
+ this.animateToDate(targetValue);
524
+ }
525
+ else {
526
+ /**
527
+ * We only need to do this if we didn't just animate to a new month,
528
+ * since that calls prevMonth/nextMonth which calls setWorkingParts for us.
529
+ */
530
+ this.setWorkingParts({
531
+ month,
532
+ day,
533
+ year,
534
+ hour,
535
+ minute,
536
+ ampm,
537
+ });
538
+ }
539
+ };
540
+ this.animateToDate = async (targetValue) => {
541
+ const { workingParts } = this;
542
+ /**
543
+ * Tell other render functions that we need to force the
544
+ * target month to appear in place of the actual next/prev month.
545
+ * Because this is a State variable, a rerender will be triggered
546
+ * automatically, updating the rendered months.
547
+ */
548
+ this.forceRenderDate = targetValue;
549
+ /**
550
+ * Flag that we've started scrolling to the forced date.
551
+ * The resolve function will be called by the datetime's
552
+ * scroll listener when it's done updating everything.
553
+ * This is a replacement for making prev/nextMonth async,
554
+ * since the logic we're waiting on is in a listener.
555
+ */
556
+ const forceDateScrollingPromise = new Promise((resolve) => {
557
+ this.resolveForceDateScrolling = resolve;
558
+ });
559
+ /**
560
+ * Animate smoothly to the forced month. This will also update
561
+ * workingParts and correct the surrounding months for us.
562
+ */
563
+ const targetMonthIsBefore = isBefore(targetValue, workingParts);
564
+ targetMonthIsBefore ? this.prevMonth() : this.nextMonth();
565
+ await forceDateScrollingPromise;
566
+ this.resolveForceDateScrolling = undefined;
567
+ this.forceRenderDate = undefined;
504
568
  };
505
569
  this.onFocus = () => {
506
570
  this.ionFocus.emit();
@@ -556,6 +620,7 @@ export class Datetime {
556
620
  ampm: 'pm',
557
621
  };
558
622
  this.isTimePopoverOpen = false;
623
+ this.forceRenderDate = undefined;
559
624
  this.color = 'primary';
560
625
  this.name = this.inputId;
561
626
  this.disabled = false;
@@ -595,6 +660,11 @@ export class Datetime {
595
660
  maxChanged() {
596
661
  this.processMaxParts();
597
662
  }
663
+ get isGridStyle() {
664
+ const { presentation, preferWheel } = this;
665
+ const hasDatePresentation = presentation === 'date' || presentation === 'date-time' || presentation === 'time-date';
666
+ return hasDatePresentation && !preferWheel;
667
+ }
598
668
  yearValuesChanged() {
599
669
  this.parsedYearValues = convertToArrayOfNumbers(this.yearValues);
600
670
  }
@@ -610,51 +680,13 @@ export class Datetime {
610
680
  minuteValuesChanged() {
611
681
  this.parsedMinuteValues = convertToArrayOfNumbers(this.minuteValues);
612
682
  }
613
- activePartsChanged() {
614
- this.activePartsClone = this.activeParts;
615
- }
616
683
  /**
617
684
  * Update the datetime value when the value changes
618
685
  */
619
- valueChanged() {
620
- const { value, minParts, maxParts, workingParts } = this;
686
+ async valueChanged() {
687
+ const { value } = this;
621
688
  if (this.hasValue()) {
622
- this.warnIfIncorrectValueUsage();
623
- /**
624
- * Clones the value of the `activeParts` to the private clone, to update
625
- * the date display on the current render cycle without causing another render.
626
- *
627
- * This allows us to update the current value's date/time display without
628
- * refocusing or shifting the user's display (leaves the user in place).
629
- */
630
- const valueDateParts = parseDate(value);
631
- if (valueDateParts) {
632
- warnIfValueOutOfBounds(valueDateParts, minParts, maxParts);
633
- if (Array.isArray(valueDateParts)) {
634
- this.activePartsClone = [...valueDateParts];
635
- }
636
- else {
637
- const { month, day, year, hour, minute } = valueDateParts;
638
- const ampm = hour != null ? (hour >= 12 ? 'pm' : 'am') : undefined;
639
- this.activePartsClone = Object.assign(Object.assign({}, this.activeParts), { month,
640
- day,
641
- year,
642
- hour,
643
- minute,
644
- ampm });
645
- /**
646
- * The working parts am/pm value must be updated when the value changes, to
647
- * ensure the time picker hour column values are generated correctly.
648
- *
649
- * Note that we don't need to do this if valueDateParts is an array, since
650
- * multiple="true" does not apply to time pickers.
651
- */
652
- this.setWorkingParts(Object.assign(Object.assign({}, workingParts), { ampm }));
653
- }
654
- }
655
- else {
656
- printIonWarning(`Unable to parse date string: ${value}. Please provide a valid ISO 8601 datetime string.`);
657
- }
689
+ this.processValue(value);
658
690
  }
659
691
  this.emitStyle();
660
692
  this.ionValueChange.emit({ value });
@@ -857,8 +889,6 @@ export class Datetime {
857
889
  printIonWarning('The highlightedDates property is not supported with preferWheel="true".', el);
858
890
  }
859
891
  }
860
- this.processMinParts();
861
- this.processMaxParts();
862
892
  const hourValues = (this.parsedHourValues = convertToArrayOfNumbers(this.hourValues));
863
893
  const minuteValues = (this.parsedMinuteValues = convertToArrayOfNumbers(this.minuteValues));
864
894
  const monthValues = (this.parsedMonthValues = convertToArrayOfNumbers(this.monthValues));
@@ -866,6 +896,8 @@ export class Datetime {
866
896
  const dayValues = (this.parsedDayValues = convertToArrayOfNumbers(this.dayValues));
867
897
  const todayParts = (this.todayParts = parseDate(getToday()));
868
898
  this.defaultParts = getClosestValidDate(todayParts, monthValues, dayValues, yearValues, hourValues, minuteValues);
899
+ this.processMinParts();
900
+ this.processMaxParts();
869
901
  this.processValue(this.value);
870
902
  this.emitStyle();
871
903
  }
@@ -901,7 +933,7 @@ export class Datetime {
901
933
  return (h("div", { class: "datetime-footer" }, h("div", { class: "datetime-buttons" }, h("div", { class: {
902
934
  ['datetime-action-buttons']: true,
903
935
  ['has-clear-button']: this.showClearButton,
904
- } }, h("slot", { name: "buttons" }, h("ion-buttons", null, showDefaultButtons && (h("ion-button", { id: "cancel-button", color: this.color, onClick: () => this.cancel(true) }, this.cancelText)), h("div", null, showClearButton && (h("ion-button", { id: "clear-button", color: this.color, onClick: () => clearButtonClick() }, this.clearText)), showDefaultButtons && (h("ion-button", { id: "confirm-button", color: this.color, onClick: () => this.confirm(true) }, this.doneText)))))))));
936
+ } }, h("slot", { name: "buttons" }, h("ion-buttons", null, showDefaultButtons && (h("ion-button", { id: "cancel-button", color: this.color, onClick: () => this.cancel(true) }, this.cancelText)), h("div", { class: "datetime-action-buttons-container" }, showClearButton && (h("ion-button", { id: "clear-button", color: this.color, onClick: () => clearButtonClick() }, this.clearText)), showDefaultButtons && (h("ion-button", { id: "confirm-button", color: this.color, onClick: () => this.confirm(true) }, this.doneText)))))))));
905
937
  }
906
938
  /**
907
939
  * Wheel picker render methods
@@ -1250,7 +1282,7 @@ export class Datetime {
1250
1282
  const { el, highlightedDates, isDateEnabled, multiple } = this;
1251
1283
  const referenceParts = { month, day, year };
1252
1284
  const isCalendarPadding = day === null;
1253
- const { isActive, isToday, ariaLabel, ariaSelected, disabled, text } = getCalendarDayState(this.locale, referenceParts, this.activePartsClone, this.todayParts, this.minParts, this.maxParts, this.parsedDayValues);
1285
+ const { isActive, isToday, ariaLabel, ariaSelected, disabled, text } = getCalendarDayState(this.locale, referenceParts, this.activeParts, this.todayParts, this.minParts, this.maxParts, this.parsedDayValues);
1254
1286
  const dateIsoString = convertDataToISO(referenceParts);
1255
1287
  let isCalDayDisabled = isCalMonthDisabled || disabled;
1256
1288
  if (!isCalDayDisabled && isDateEnabled !== undefined) {
@@ -1274,14 +1306,30 @@ export class Datetime {
1274
1306
  if (highlightedDates !== undefined && !isActive && day !== null) {
1275
1307
  dateStyle = getHighlightStyles(highlightedDates, dateIsoString, el);
1276
1308
  }
1277
- return (h("button", { tabindex: "-1", "data-day": day, "data-month": month, "data-year": year, "data-index": index, "data-day-of-week": dayOfWeek, disabled: isCalDayDisabled, class: {
1309
+ let dateParts = undefined;
1310
+ // "Filler days" at the beginning of the grid should not get the calendar day
1311
+ // CSS parts added to them
1312
+ if (!isCalendarPadding) {
1313
+ dateParts = `calendar-day${isActive ? ' active' : ''}${isToday ? ' today' : ''}${isCalDayDisabled ? ' disabled' : ''}`;
1314
+ }
1315
+ return (h("div", { class: "calendar-day-wrapper" }, h("button", {
1316
+ // We need to use !important for the inline styles here because
1317
+ // otherwise the CSS shadow parts will override these styles.
1318
+ // See https://github.com/WICG/webcomponents/issues/847
1319
+ // Both the CSS shadow parts and highlightedDates styles are
1320
+ // provided by the developer, but highlightedDates styles should
1321
+ // always take priority.
1322
+ ref: (el) => {
1323
+ if (el) {
1324
+ el.style.setProperty('color', `${dateStyle ? dateStyle.textColor : ''}`, 'important');
1325
+ el.style.setProperty('background-color', `${dateStyle ? dateStyle.backgroundColor : ''}`, 'important');
1326
+ }
1327
+ }, tabindex: "-1", "data-day": day, "data-month": month, "data-year": year, "data-index": index, "data-day-of-week": dayOfWeek, disabled: isCalDayDisabled, class: {
1278
1328
  'calendar-day-padding': isCalendarPadding,
1279
1329
  'calendar-day': true,
1280
1330
  'calendar-day-active': isActive,
1281
1331
  'calendar-day-today': isToday,
1282
- }, style: dateStyle && {
1283
- color: dateStyle.textColor,
1284
- }, "aria-hidden": isCalendarPadding ? 'true' : null, "aria-selected": ariaSelected, "aria-label": ariaLabel, onClick: () => {
1332
+ }, part: dateParts, "aria-hidden": isCalendarPadding ? 'true' : null, "aria-selected": ariaSelected, "aria-label": ariaLabel, onClick: () => {
1285
1333
  if (isCalendarPadding) {
1286
1334
  return;
1287
1335
  }
@@ -1301,13 +1349,12 @@ export class Datetime {
1301
1349
  day,
1302
1350
  year }));
1303
1351
  }
1304
- } }, h("div", { class: "calendar-day-highlight", style: {
1305
- backgroundColor: dateStyle === null || dateStyle === void 0 ? void 0 : dateStyle.backgroundColor,
1306
- } }), text));
1352
+ }
1353
+ }, text)));
1307
1354
  }))));
1308
1355
  }
1309
1356
  renderCalendarBody() {
1310
- return (h("div", { class: "calendar-body ion-focusable", ref: (el) => (this.calendarBodyRef = el), tabindex: "0" }, generateMonths(this.workingParts).map(({ month, year }) => {
1357
+ return (h("div", { class: "calendar-body ion-focusable", ref: (el) => (this.calendarBodyRef = el), tabindex: "0" }, generateMonths(this.workingParts, this.forceRenderDate).map(({ month, year }) => {
1311
1358
  return this.renderMonth(month, year);
1312
1359
  })));
1313
1360
  }
@@ -1323,7 +1370,7 @@ export class Datetime {
1323
1370
  }
1324
1371
  renderTimeOverlay() {
1325
1372
  const { hourCycle, isTimePopoverOpen, locale } = this;
1326
- const use24Hour = is24Hour(locale, hourCycle);
1373
+ const computedHourCycle = getHourCycle(locale, hourCycle);
1327
1374
  const activePart = this.getActivePartsWithFallback();
1328
1375
  return [
1329
1376
  h("div", { class: "time-header" }, this.renderTimeLabel()),
@@ -1342,7 +1389,7 @@ export class Datetime {
1342
1389
  await popoverRef.onWillDismiss();
1343
1390
  this.isTimePopoverOpen = false;
1344
1391
  }
1345
- } }, getLocalizedTime(locale, activePart, use24Hour)),
1392
+ } }, getLocalizedTime(locale, activePart, computedHourCycle)),
1346
1393
  h("ion-popover", { alignment: "center", translucent: true, overlayIndex: 1, arrow: false, onWillPresent: (ev) => {
1347
1394
  /**
1348
1395
  * Intersection Observers do not consistently fire between Blink and Webkit
@@ -1462,14 +1509,13 @@ export class Datetime {
1462
1509
  }
1463
1510
  }
1464
1511
  render() {
1465
- const { name, value, disabled, el, color, readonly, showMonthAndYear, preferWheel, presentation, size } = this;
1512
+ const { name, value, disabled, el, color, readonly, showMonthAndYear, preferWheel, presentation, size, isGridStyle, } = this;
1466
1513
  const mode = getIonMode(this);
1467
1514
  const isMonthAndYearPresentation = presentation === 'year' || presentation === 'month' || presentation === 'month-year';
1468
1515
  const shouldShowMonthAndYear = showMonthAndYear || isMonthAndYearPresentation;
1469
1516
  const monthYearPickerOpen = showMonthAndYear && !isMonthAndYearPresentation;
1470
1517
  const hasDatePresentation = presentation === 'date' || presentation === 'date-time' || presentation === 'time-date';
1471
1518
  const hasWheelVariant = hasDatePresentation && preferWheel;
1472
- const hasGrid = hasDatePresentation && !preferWheel;
1473
1519
  renderHiddenInput(true, el, name, formatValue(value), disabled);
1474
1520
  return (h(Host, { "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, createColorClasses(color, {
1475
1521
  [mode]: true,
@@ -1480,7 +1526,7 @@ export class Datetime {
1480
1526
  [`datetime-presentation-${presentation}`]: true,
1481
1527
  [`datetime-size-${size}`]: true,
1482
1528
  [`datetime-prefer-wheel`]: hasWheelVariant,
1483
- [`datetime-grid`]: hasGrid,
1529
+ [`datetime-grid`]: isGridStyle,
1484
1530
  })) }, this.renderDatetime(mode)));
1485
1531
  }
1486
1532
  static get is() { return "ion-datetime"; }
@@ -1508,7 +1554,8 @@ export class Datetime {
1508
1554
  "references": {
1509
1555
  "Color": {
1510
1556
  "location": "import",
1511
- "path": "../../interface"
1557
+ "path": "../../interface",
1558
+ "id": "src/interface.d.ts::Color"
1512
1559
  }
1513
1560
  }
1514
1561
  },
@@ -1634,7 +1681,8 @@ export class Datetime {
1634
1681
  "references": {
1635
1682
  "DatetimePresentation": {
1636
1683
  "location": "import",
1637
- "path": "./datetime-interface"
1684
+ "path": "./datetime-interface",
1685
+ "id": "src/components/datetime/datetime-interface.ts::DatetimePresentation"
1638
1686
  }
1639
1687
  }
1640
1688
  },
@@ -1832,7 +1880,8 @@ export class Datetime {
1832
1880
  "references": {
1833
1881
  "TitleSelectedDatesFormatter": {
1834
1882
  "location": "import",
1835
- "path": "./datetime-interface"
1883
+ "path": "./datetime-interface",
1884
+ "id": "src/components/datetime/datetime-interface.ts::TitleSelectedDatesFormatter"
1836
1885
  }
1837
1886
  }
1838
1887
  },
@@ -1870,11 +1919,13 @@ export class Datetime {
1870
1919
  "references": {
1871
1920
  "DatetimeHighlight": {
1872
1921
  "location": "import",
1873
- "path": "./datetime-interface"
1922
+ "path": "./datetime-interface",
1923
+ "id": "src/components/datetime/datetime-interface.ts::DatetimeHighlight"
1874
1924
  },
1875
1925
  "DatetimeHighlightCallback": {
1876
1926
  "location": "import",
1877
- "path": "./datetime-interface"
1927
+ "path": "./datetime-interface",
1928
+ "id": "src/components/datetime/datetime-interface.ts::DatetimeHighlightCallback"
1878
1929
  }
1879
1930
  }
1880
1931
  },
@@ -1978,9 +2029,15 @@ export class Datetime {
1978
2029
  "type": "string",
1979
2030
  "mutable": false,
1980
2031
  "complexType": {
1981
- "original": "'h23' | 'h12'",
1982
- "resolved": "\"h12\" | \"h23\" | undefined",
1983
- "references": {}
2032
+ "original": "DatetimeHourCycle",
2033
+ "resolved": "\"h11\" | \"h12\" | \"h23\" | \"h24\" | undefined",
2034
+ "references": {
2035
+ "DatetimeHourCycle": {
2036
+ "location": "import",
2037
+ "path": "./datetime-interface",
2038
+ "id": "src/components/datetime/datetime-interface.ts::DatetimeHourCycle"
2039
+ }
2040
+ }
1984
2041
  },
1985
2042
  "required": false,
1986
2043
  "optional": true,
@@ -2034,7 +2091,8 @@ export class Datetime {
2034
2091
  "showMonthAndYear": {},
2035
2092
  "activeParts": {},
2036
2093
  "workingParts": {},
2037
- "isTimePopoverOpen": {}
2094
+ "isTimePopoverOpen": {},
2095
+ "forceRenderDate": {}
2038
2096
  };
2039
2097
  }
2040
2098
  static get events() {
@@ -2069,7 +2127,8 @@ export class Datetime {
2069
2127
  "references": {
2070
2128
  "DatetimeChangeEventDetail": {
2071
2129
  "location": "import",
2072
- "path": "./datetime-interface"
2130
+ "path": "./datetime-interface",
2131
+ "id": "src/components/datetime/datetime-interface.ts::DatetimeChangeEventDetail"
2073
2132
  }
2074
2133
  }
2075
2134
  }
@@ -2092,7 +2151,8 @@ export class Datetime {
2092
2151
  "references": {
2093
2152
  "DatetimeChangeEventDetail": {
2094
2153
  "location": "import",
2095
- "path": "./datetime-interface"
2154
+ "path": "./datetime-interface",
2155
+ "id": "src/components/datetime/datetime-interface.ts::DatetimeChangeEventDetail"
2096
2156
  }
2097
2157
  }
2098
2158
  }
@@ -2145,7 +2205,8 @@ export class Datetime {
2145
2205
  "references": {
2146
2206
  "StyleEventDetail": {
2147
2207
  "location": "import",
2148
- "path": "../../interface"
2208
+ "path": "../../interface",
2209
+ "id": "src/interface.d.ts::StyleEventDetail"
2149
2210
  }
2150
2211
  }
2151
2212
  }
@@ -2180,7 +2241,8 @@ export class Datetime {
2180
2241
  }],
2181
2242
  "references": {
2182
2243
  "Promise": {
2183
- "location": "global"
2244
+ "location": "global",
2245
+ "id": "global::Promise"
2184
2246
  }
2185
2247
  },
2186
2248
  "return": "Promise<void>"
@@ -2199,7 +2261,8 @@ export class Datetime {
2199
2261
  }],
2200
2262
  "references": {
2201
2263
  "Promise": {
2202
- "location": "global"
2264
+ "location": "global",
2265
+ "id": "global::Promise"
2203
2266
  }
2204
2267
  },
2205
2268
  "return": "Promise<void>"
@@ -2218,7 +2281,8 @@ export class Datetime {
2218
2281
  }],
2219
2282
  "references": {
2220
2283
  "Promise": {
2221
- "location": "global"
2284
+ "location": "global",
2285
+ "id": "global::Promise"
2222
2286
  }
2223
2287
  },
2224
2288
  "return": "Promise<void>"
@@ -2256,9 +2320,6 @@ export class Datetime {
2256
2320
  }, {
2257
2321
  "propName": "minuteValues",
2258
2322
  "methodName": "minuteValuesChanged"
2259
- }, {
2260
- "propName": "activeParts",
2261
- "methodName": "activePartsChanged"
2262
2323
  }, {
2263
2324
  "propName": "value",
2264
2325
  "methodName": "valueChanged"