@ionic/core 7.3.4-dev.11694608913.1bc64f72 → 7.3.4-dev.11694698515.1504c90b

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 (411) hide show
  1. package/components/button-active.js +1 -1
  2. package/components/checkbox.js +3 -6
  3. package/components/data.js +7 -31
  4. package/components/index.js +2 -2
  5. package/components/index2.js +429 -203
  6. package/components/index3.js +203 -429
  7. package/components/input-shims.js +88 -7
  8. package/components/ion-datetime-button.js +0 -3
  9. package/components/ion-datetime.js +92 -132
  10. package/components/ion-item-sliding.js +1 -1
  11. package/components/ion-menu.js +1 -1
  12. package/components/ion-modal.js +2 -2
  13. package/components/ion-nav.js +1 -1
  14. package/components/ion-range.js +3 -3
  15. package/components/ion-refresher.js +3 -3
  16. package/components/ion-reorder-group.js +1 -1
  17. package/components/ion-router-outlet.js +1 -1
  18. package/components/ion-segment.js +1 -1
  19. package/components/ion-toggle.js +4 -7
  20. package/components/ios.transition.js +1 -1
  21. package/components/md.transition.js +1 -1
  22. package/components/picker-column.js +1 -1
  23. package/components/popover.js +1 -1
  24. package/components/radio.js +3 -6
  25. package/components/swipe-back.js +1 -1
  26. package/dist/cjs/{app-globals-a579aafd.js → app-globals-a63c2a19.js} +1 -1
  27. package/dist/cjs/{button-active-dfd2756e.js → button-active-0ff8e82c.js} +1 -1
  28. package/dist/cjs/{data-db832785.js → data-967b9c15.js} +7 -31
  29. package/dist/cjs/{index-484b1104.js → index-184fdd62.js} +6 -6
  30. package/dist/cjs/{index-8568bedb.js → index-be8a2ab9.js} +3 -3
  31. package/dist/cjs/{index-653be4df.js → index-e6416850.js} +1 -1
  32. package/dist/cjs/index.cjs.js +14 -15
  33. package/dist/cjs/{input-shims-f8569707.js → input-shims-5d7b09e8.js} +92 -12
  34. package/dist/cjs/ion-accordion_2.cjs.entry.js +2 -2
  35. package/dist/cjs/ion-action-sheet.cjs.entry.js +4 -4
  36. package/dist/cjs/ion-alert.cjs.entry.js +4 -4
  37. package/dist/cjs/ion-app_8.cjs.entry.js +5 -5
  38. package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -2
  39. package/dist/cjs/ion-back-button.cjs.entry.js +2 -2
  40. package/dist/cjs/ion-backdrop.cjs.entry.js +2 -2
  41. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +2 -2
  42. package/dist/cjs/ion-button_2.cjs.entry.js +2 -2
  43. package/dist/cjs/ion-card_5.cjs.entry.js +2 -2
  44. package/dist/cjs/ion-checkbox.cjs.entry.js +5 -7
  45. package/dist/cjs/ion-chip.cjs.entry.js +2 -2
  46. package/dist/cjs/ion-col_3.cjs.entry.js +2 -2
  47. package/dist/cjs/ion-datetime-button.cjs.entry.js +3 -6
  48. package/dist/cjs/ion-datetime_3.cjs.entry.js +96 -135
  49. package/dist/cjs/ion-fab_3.cjs.entry.js +2 -2
  50. package/dist/cjs/ion-img.cjs.entry.js +2 -2
  51. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +2 -2
  52. package/dist/cjs/ion-input.cjs.entry.js +2 -2
  53. package/dist/cjs/ion-item-option_3.cjs.entry.js +2 -2
  54. package/dist/cjs/ion-item_8.cjs.entry.js +2 -2
  55. package/dist/cjs/ion-loading.cjs.entry.js +3 -3
  56. package/dist/cjs/ion-menu_3.cjs.entry.js +4 -4
  57. package/dist/cjs/ion-modal.cjs.entry.js +4 -4
  58. package/dist/cjs/ion-nav_2.cjs.entry.js +3 -3
  59. package/dist/cjs/ion-picker-column-internal.cjs.entry.js +2 -2
  60. package/dist/cjs/ion-picker-internal.cjs.entry.js +1 -1
  61. package/dist/cjs/ion-popover.cjs.entry.js +4 -4
  62. package/dist/cjs/ion-progress-bar.cjs.entry.js +2 -2
  63. package/dist/cjs/ion-radio_2.cjs.entry.js +5 -7
  64. package/dist/cjs/ion-range.cjs.entry.js +4 -4
  65. package/dist/cjs/ion-refresher_2.cjs.entry.js +2 -2
  66. package/dist/cjs/ion-reorder_2.cjs.entry.js +2 -2
  67. package/dist/cjs/ion-ripple-effect.cjs.entry.js +2 -2
  68. package/dist/cjs/ion-route_4.cjs.entry.js +2 -2
  69. package/dist/cjs/ion-searchbar.cjs.entry.js +2 -2
  70. package/dist/cjs/ion-segment_2.cjs.entry.js +2 -2
  71. package/dist/cjs/ion-select_3.cjs.entry.js +3 -3
  72. package/dist/cjs/ion-spinner.cjs.entry.js +2 -2
  73. package/dist/cjs/ion-split-pane.cjs.entry.js +2 -2
  74. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +2 -2
  75. package/dist/cjs/ion-tab_2.cjs.entry.js +1 -1
  76. package/dist/cjs/ion-text.cjs.entry.js +2 -2
  77. package/dist/cjs/ion-textarea.cjs.entry.js +2 -2
  78. package/dist/cjs/ion-toast.cjs.entry.js +3 -3
  79. package/dist/cjs/ion-toggle.cjs.entry.js +5 -7
  80. package/dist/cjs/{ionic-global-f81d8b73.js → ionic-global-6d5d27b5.js} +1 -1
  81. package/dist/cjs/ionic.cjs.js +5 -5
  82. package/dist/cjs/{ios.transition-f7c78d7c.js → ios.transition-80582b44.js} +2 -2
  83. package/dist/cjs/loader.cjs.js +4 -4
  84. package/dist/cjs/{md.transition-65dc7dce.js → md.transition-eeca9fb5.js} +2 -2
  85. package/dist/cjs/{overlays-5c1706ed.js → overlays-c78a0148.js} +1 -1
  86. package/dist/cjs/{status-tap-4564b66c.js → status-tap-cc4c6539.js} +1 -1
  87. package/dist/collection/collection-manifest.json +1 -1
  88. package/dist/collection/components/checkbox/checkbox.ios.css +0 -35
  89. package/dist/collection/components/checkbox/checkbox.js +4 -24
  90. package/dist/collection/components/checkbox/checkbox.md.css +0 -35
  91. package/dist/collection/components/checkbox/test/item/checkbox.e2e.js +0 -13
  92. package/dist/collection/components/checkbox/test/label/checkbox.e2e.js +0 -16
  93. package/dist/collection/components/datetime/datetime.ios.css +29 -32
  94. package/dist/collection/components/datetime/datetime.js +93 -137
  95. package/dist/collection/components/datetime/datetime.md.css +28 -20
  96. package/dist/collection/components/datetime/test/basic/datetime.e2e.js +0 -25
  97. package/dist/collection/components/datetime/test/color/datetime.e2e.js +1 -1
  98. package/dist/collection/components/datetime/test/custom/datetime.e2e.js +1 -27
  99. package/dist/collection/components/datetime/test/prefer-wheel/datetime.e2e.js +0 -15
  100. package/dist/collection/components/datetime/test/set-value/datetime.e2e.js +12 -9
  101. package/dist/collection/components/datetime/utils/data.js +6 -14
  102. package/dist/collection/components/datetime/utils/parse.js +1 -18
  103. package/dist/collection/components/datetime-button/datetime-button.js +0 -3
  104. package/dist/collection/components/radio/radio.ios.css +0 -35
  105. package/dist/collection/components/radio/radio.js +4 -24
  106. package/dist/collection/components/radio/radio.md.css +0 -35
  107. package/dist/collection/components/radio/test/item/radio.e2e.js +0 -15
  108. package/dist/collection/components/radio/test/label-placement/radio.e2e.js +0 -20
  109. package/dist/collection/components/range/range.ios.css +1 -41
  110. package/dist/collection/components/range/range.js +3 -3
  111. package/dist/collection/components/range/range.md.css +1 -41
  112. package/dist/collection/components/range/test/label/range.e2e.js +0 -48
  113. package/dist/collection/components/toggle/test/item/toggle.e2e.js +0 -15
  114. package/dist/collection/components/toggle/test/label/toggle.e2e.js +0 -16
  115. package/dist/collection/components/toggle/toggle.ios.css +1 -35
  116. package/dist/collection/components/toggle/toggle.js +4 -24
  117. package/dist/collection/components/toggle/toggle.md.css +1 -35
  118. package/dist/collection/index.js +0 -1
  119. package/dist/collection/utils/input-shims/hacks/scroll-assist.js +86 -4
  120. package/dist/collection/utils/input-shims/hacks/scroll-data.js +2 -3
  121. package/dist/docs.json +19 -148
  122. package/dist/esm/{app-globals-e8ddf830.js → app-globals-c7886b40.js} +1 -1
  123. package/dist/esm/{button-active-2da0f611.js → button-active-b76ae4ec.js} +1 -1
  124. package/dist/esm/{data-009dbf15.js → data-4b448e3a.js} +7 -31
  125. package/dist/esm/{index-6391de89.js → index-01839411.js} +3 -3
  126. package/dist/esm/{index-b3e05099.js → index-48f5e259.js} +1 -1
  127. package/dist/esm/{index-847f2fde.js → index-adfb2000.js} +6 -6
  128. package/dist/esm/index.js +7 -7
  129. package/dist/esm/{input-shims-af993f05.js → input-shims-451757bd.js} +88 -8
  130. package/dist/esm/ion-accordion_2.entry.js +2 -2
  131. package/dist/esm/ion-action-sheet.entry.js +4 -4
  132. package/dist/esm/ion-alert.entry.js +4 -4
  133. package/dist/esm/ion-app_8.entry.js +5 -5
  134. package/dist/esm/ion-avatar_3.entry.js +2 -2
  135. package/dist/esm/ion-back-button.entry.js +2 -2
  136. package/dist/esm/ion-backdrop.entry.js +2 -2
  137. package/dist/esm/ion-breadcrumb_2.entry.js +2 -2
  138. package/dist/esm/ion-button_2.entry.js +2 -2
  139. package/dist/esm/ion-card_5.entry.js +2 -2
  140. package/dist/esm/ion-checkbox.entry.js +5 -7
  141. package/dist/esm/ion-chip.entry.js +2 -2
  142. package/dist/esm/ion-col_3.entry.js +2 -2
  143. package/dist/esm/ion-datetime-button.entry.js +3 -6
  144. package/dist/esm/ion-datetime_3.entry.js +96 -135
  145. package/dist/esm/ion-fab_3.entry.js +2 -2
  146. package/dist/esm/ion-img.entry.js +2 -2
  147. package/dist/esm/ion-infinite-scroll_2.entry.js +2 -2
  148. package/dist/esm/ion-input.entry.js +2 -2
  149. package/dist/esm/ion-item-option_3.entry.js +2 -2
  150. package/dist/esm/ion-item_8.entry.js +2 -2
  151. package/dist/esm/ion-loading.entry.js +3 -3
  152. package/dist/esm/ion-menu_3.entry.js +4 -4
  153. package/dist/esm/ion-modal.entry.js +4 -4
  154. package/dist/esm/ion-nav_2.entry.js +3 -3
  155. package/dist/esm/ion-picker-column-internal.entry.js +2 -2
  156. package/dist/esm/ion-picker-internal.entry.js +1 -1
  157. package/dist/esm/ion-popover.entry.js +4 -4
  158. package/dist/esm/ion-progress-bar.entry.js +2 -2
  159. package/dist/esm/ion-radio_2.entry.js +5 -7
  160. package/dist/esm/ion-range.entry.js +4 -4
  161. package/dist/esm/ion-refresher_2.entry.js +2 -2
  162. package/dist/esm/ion-reorder_2.entry.js +2 -2
  163. package/dist/esm/ion-ripple-effect.entry.js +2 -2
  164. package/dist/esm/ion-route_4.entry.js +2 -2
  165. package/dist/esm/ion-searchbar.entry.js +2 -2
  166. package/dist/esm/ion-segment_2.entry.js +2 -2
  167. package/dist/esm/ion-select_3.entry.js +3 -3
  168. package/dist/esm/ion-spinner.entry.js +2 -2
  169. package/dist/esm/ion-split-pane.entry.js +2 -2
  170. package/dist/esm/ion-tab-bar_2.entry.js +2 -2
  171. package/dist/esm/ion-tab_2.entry.js +1 -1
  172. package/dist/esm/ion-text.entry.js +2 -2
  173. package/dist/esm/ion-textarea.entry.js +2 -2
  174. package/dist/esm/ion-toast.entry.js +3 -3
  175. package/dist/esm/ion-toggle.entry.js +5 -7
  176. package/dist/esm/{ionic-global-1ef19007.js → ionic-global-9080266a.js} +1 -1
  177. package/dist/esm/ionic.js +6 -6
  178. package/dist/esm/{ios.transition-3137d23e.js → ios.transition-f43871cd.js} +2 -2
  179. package/dist/esm/loader.js +5 -5
  180. package/dist/esm/{md.transition-48b3b77c.js → md.transition-12d21ad0.js} +2 -2
  181. package/dist/esm/{overlays-e1dadfe6.js → overlays-4565894b.js} +1 -1
  182. package/dist/esm/{status-tap-823a0df3.js → status-tap-121c711d.js} +1 -1
  183. package/dist/esm-es5/app-globals-c7886b40.js +4 -0
  184. package/dist/esm-es5/{button-active-2da0f611.js → button-active-b76ae4ec.js} +1 -1
  185. package/dist/esm-es5/data-4b448e3a.js +4 -0
  186. package/dist/esm-es5/{index-6391de89.js → index-01839411.js} +1 -1
  187. package/dist/esm-es5/{index-b3e05099.js → index-48f5e259.js} +1 -1
  188. package/dist/esm-es5/index.js +1 -1
  189. package/dist/esm-es5/input-shims-451757bd.js +4 -0
  190. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  191. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  192. package/dist/esm-es5/ion-alert.entry.js +1 -1
  193. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  194. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  195. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  196. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  197. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  198. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  199. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  200. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  201. package/dist/esm-es5/ion-chip.entry.js +1 -1
  202. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  203. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  204. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  205. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  206. package/dist/esm-es5/ion-img.entry.js +1 -1
  207. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  208. package/dist/esm-es5/ion-input.entry.js +1 -1
  209. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  210. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  211. package/dist/esm-es5/ion-loading.entry.js +1 -1
  212. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  213. package/dist/esm-es5/ion-modal.entry.js +1 -1
  214. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  215. package/dist/esm-es5/ion-picker-column-internal.entry.js +1 -1
  216. package/dist/esm-es5/ion-picker-internal.entry.js +1 -1
  217. package/dist/esm-es5/ion-popover.entry.js +1 -1
  218. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  219. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  220. package/dist/esm-es5/ion-range.entry.js +1 -1
  221. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  222. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  223. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  224. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  225. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  226. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  227. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  228. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  229. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  230. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  231. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  232. package/dist/esm-es5/ion-text.entry.js +1 -1
  233. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  234. package/dist/esm-es5/ion-toast.entry.js +1 -1
  235. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  236. package/dist/esm-es5/{ionic-global-1ef19007.js → ionic-global-9080266a.js} +1 -1
  237. package/dist/esm-es5/ionic.js +1 -1
  238. package/dist/esm-es5/{ios.transition-3137d23e.js → ios.transition-f43871cd.js} +1 -1
  239. package/dist/esm-es5/loader.js +1 -1
  240. package/dist/esm-es5/md.transition-12d21ad0.js +4 -0
  241. package/dist/esm-es5/{overlays-e1dadfe6.js → overlays-4565894b.js} +1 -1
  242. package/dist/esm-es5/{status-tap-823a0df3.js → status-tap-121c711d.js} +1 -1
  243. package/dist/html.html-data.json +4 -52
  244. package/dist/ionic/index.esm.js +1 -1
  245. package/dist/ionic/ionic.esm.js +1 -1
  246. package/dist/ionic/ionic.js +1 -1
  247. package/dist/ionic/{p-fac1660b.entry.js → p-041ac2c3.entry.js} +1 -1
  248. package/dist/ionic/{p-fabb7294.entry.js → p-072f99fd.entry.js} +1 -1
  249. package/dist/ionic/{p-99028088.entry.js → p-07656a8a.entry.js} +1 -1
  250. package/dist/ionic/{p-e9c112ba.entry.js → p-07f5e286.entry.js} +1 -1
  251. package/dist/ionic/{p-4a153fbc.system.entry.js → p-0ce43a8f.system.entry.js} +1 -1
  252. package/dist/ionic/{p-98ebc376.entry.js → p-0dbfa45f.entry.js} +1 -1
  253. package/dist/ionic/{p-38dd9aec.entry.js → p-11d0977d.entry.js} +1 -1
  254. package/dist/ionic/p-17e961cf.entry.js +4 -0
  255. package/dist/ionic/{p-fe83e3e2.entry.js → p-1916030e.entry.js} +1 -1
  256. package/dist/ionic/p-1b533a76.system.entry.js +4 -0
  257. package/dist/ionic/{p-bbae0ac3.system.entry.js → p-1c236453.system.entry.js} +1 -1
  258. package/dist/ionic/{p-b2514862.system.entry.js → p-204fb8f0.system.entry.js} +1 -1
  259. package/dist/ionic/{p-82f5c07e.system.entry.js → p-23ddd787.system.entry.js} +1 -1
  260. package/dist/ionic/{p-f5b7b710.system.entry.js → p-26276eb7.system.entry.js} +1 -1
  261. package/dist/ionic/{p-208f640c.entry.js → p-28d8b87b.entry.js} +1 -1
  262. package/dist/ionic/{p-e805ff9f.system.entry.js → p-2ac2278e.system.entry.js} +1 -1
  263. package/dist/ionic/p-2b0ecc04.entry.js +4 -0
  264. package/dist/ionic/{p-69303bb5.system.js → p-2e5930dd.system.js} +1 -1
  265. package/dist/ionic/{p-bf4b8d8a.system.entry.js → p-32983529.system.entry.js} +1 -1
  266. package/dist/ionic/{p-b9654781.system.entry.js → p-3bf120f8.system.entry.js} +1 -1
  267. package/dist/ionic/{p-e3cba96d.js → p-3c325277.js} +1 -1
  268. package/dist/ionic/{p-82632e15.system.js → p-3d5a6d14.system.js} +1 -1
  269. package/dist/ionic/{p-77f91ca9.entry.js → p-3f15f60b.entry.js} +1 -1
  270. package/dist/ionic/{p-6b3afb0f.entry.js → p-42e0558f.entry.js} +1 -1
  271. package/dist/ionic/{p-06d6e9c0.system.entry.js → p-4446e19f.system.entry.js} +1 -1
  272. package/dist/ionic/p-44a6f15d.system.entry.js +4 -0
  273. package/dist/ionic/{p-9c32000a.entry.js → p-47a11fc4.entry.js} +1 -1
  274. package/dist/ionic/{p-1ec4dc01.entry.js → p-48d378cf.entry.js} +1 -1
  275. package/dist/ionic/{p-93e47822.entry.js → p-49f2eaa6.entry.js} +1 -1
  276. package/dist/ionic/{p-1fb9aab8.entry.js → p-4d2807fa.entry.js} +1 -1
  277. package/dist/ionic/{p-32d11ce2.system.entry.js → p-4e1a58c6.system.entry.js} +1 -1
  278. package/dist/ionic/p-4f7109fa.entry.js +4 -0
  279. package/dist/ionic/{p-11a42c03.system.entry.js → p-5080e623.system.entry.js} +1 -1
  280. package/dist/ionic/{p-c4afbed8.system.entry.js → p-5163baf4.system.entry.js} +1 -1
  281. package/dist/ionic/{p-0219ac12.system.entry.js → p-516421e2.system.entry.js} +1 -1
  282. package/dist/ionic/{p-d1d3b740.system.entry.js → p-5260588f.system.entry.js} +1 -1
  283. package/dist/ionic/{p-b22ee0dc.js → p-563068af.js} +1 -1
  284. package/dist/ionic/p-56495958.js +4 -0
  285. package/dist/ionic/{p-dc49c681.system.entry.js → p-574411f2.system.entry.js} +1 -1
  286. package/dist/ionic/{p-8a676776.entry.js → p-57847936.entry.js} +1 -1
  287. package/dist/ionic/{p-d3378c35.entry.js → p-59b40b60.entry.js} +1 -1
  288. package/dist/ionic/{p-af0bc751.system.entry.js → p-5a9dc764.system.entry.js} +1 -1
  289. package/dist/ionic/{p-0ff17c93.entry.js → p-5df94bf8.entry.js} +1 -1
  290. package/dist/ionic/{p-81597423.system.js → p-5e549223.system.js} +1 -1
  291. package/dist/ionic/p-5e5c1e58.js +4 -0
  292. package/dist/ionic/{p-8ba724fa.system.js → p-5fc777e6.system.js} +1 -1
  293. package/dist/ionic/p-601fd53c.js +4 -0
  294. package/dist/ionic/{p-e112994b.system.entry.js → p-6276ba2f.system.entry.js} +1 -1
  295. package/dist/ionic/{p-7c938ad6.js → p-629b0629.js} +1 -1
  296. package/dist/ionic/{p-5c17f888.entry.js → p-68deb933.entry.js} +1 -1
  297. package/dist/ionic/{p-b0e9e0b8.system.entry.js → p-6ccffb74.system.entry.js} +1 -1
  298. package/dist/ionic/{p-98a189f3.entry.js → p-6dff4431.entry.js} +1 -1
  299. package/dist/ionic/{p-fa3327e8.system.entry.js → p-6eb7b33c.system.entry.js} +1 -1
  300. package/dist/ionic/p-7106c152.system.js +4 -0
  301. package/dist/ionic/{p-839bd69f.system.entry.js → p-7474a472.system.entry.js} +1 -1
  302. package/dist/ionic/{p-0b68c41d.system.entry.js → p-74834696.system.entry.js} +1 -1
  303. package/dist/ionic/p-75d4ceab.js +4 -0
  304. package/dist/ionic/{p-430e902d.entry.js → p-765e6339.entry.js} +1 -1
  305. package/dist/ionic/{p-f95f798a.system.entry.js → p-810f1bc9.system.entry.js} +1 -1
  306. package/dist/ionic/{p-57f0efcc.entry.js → p-83459b99.entry.js} +1 -1
  307. package/dist/ionic/{p-99140340.entry.js → p-84084b75.entry.js} +1 -1
  308. package/dist/ionic/{p-68e0ea3c.entry.js → p-8bcd482b.entry.js} +1 -1
  309. package/dist/ionic/{p-48144921.entry.js → p-8db97b90.entry.js} +1 -1
  310. package/dist/ionic/p-8f7edf3e.js +4 -0
  311. package/dist/ionic/{p-87383d00.system.entry.js → p-95188051.system.entry.js} +1 -1
  312. package/dist/ionic/{p-57dc87eb.system.entry.js → p-98bfaff3.system.entry.js} +1 -1
  313. package/dist/ionic/p-99a3df5c.entry.js +4 -0
  314. package/dist/ionic/{p-0142ba6d.entry.js → p-9b53c813.entry.js} +1 -1
  315. package/dist/ionic/{p-83bcaec9.system.entry.js → p-9be96bf3.system.entry.js} +1 -1
  316. package/dist/ionic/p-9dc4d33e.system.js +4 -0
  317. package/dist/ionic/{p-f7faa32d.entry.js → p-9e8727d6.entry.js} +1 -1
  318. package/dist/ionic/p-9eaaa910.entry.js +4 -0
  319. package/dist/ionic/{p-653f2fc6.entry.js → p-9eced28c.entry.js} +1 -1
  320. package/dist/ionic/{p-2061c86f.system.entry.js → p-9f3ad626.system.entry.js} +1 -1
  321. package/dist/ionic/{p-d1bab5e7.system.entry.js → p-a033a91d.system.entry.js} +1 -1
  322. package/dist/ionic/{p-62324608.system.entry.js → p-a037b6d5.system.entry.js} +1 -1
  323. package/dist/ionic/{p-df6743df.system.js → p-a122ecd0.system.js} +1 -1
  324. package/dist/ionic/{p-83008f7c.system.js → p-a314559e.system.js} +2 -2
  325. package/dist/ionic/p-a533868d.system.js +4 -0
  326. package/dist/ionic/{p-1d82df31.system.entry.js → p-a8270ae8.system.entry.js} +1 -1
  327. package/dist/ionic/p-af6125d1.system.entry.js +4 -0
  328. package/dist/ionic/{p-785b0913.entry.js → p-b052b578.entry.js} +1 -1
  329. package/dist/ionic/{p-91459620.js → p-b3f6f321.js} +1 -1
  330. package/dist/ionic/{p-82f8ee51.entry.js → p-b453b38d.entry.js} +1 -1
  331. package/dist/ionic/{p-fea46870.system.entry.js → p-b703ebeb.system.entry.js} +1 -1
  332. package/dist/ionic/p-b8d7f0eb.system.entry.js +4 -0
  333. package/dist/ionic/{p-67b891af.entry.js → p-b9179eab.entry.js} +1 -1
  334. package/dist/ionic/{p-a3f9d271.entry.js → p-bacf09d3.entry.js} +1 -1
  335. package/dist/ionic/{p-f9567c67.entry.js → p-bcabbf15.entry.js} +1 -1
  336. package/dist/ionic/{p-341d5877.entry.js → p-be187db3.entry.js} +1 -1
  337. package/dist/ionic/{p-b32742f3.system.js → p-bfee11b2.system.js} +1 -1
  338. package/dist/ionic/{p-0660215f.entry.js → p-c2d6088f.entry.js} +1 -1
  339. package/dist/ionic/p-c68a8814.system.js +4 -0
  340. package/dist/ionic/p-c7ce7e18.entry.js +4 -0
  341. package/dist/ionic/{p-336420f9.system.entry.js → p-c8c0d58a.system.entry.js} +1 -1
  342. package/dist/ionic/p-cc8910e7.system.js +4 -0
  343. package/dist/ionic/{p-a34669bf.system.entry.js → p-ccc90dcb.system.entry.js} +1 -1
  344. package/dist/ionic/{p-728ac2b3.entry.js → p-cd002251.entry.js} +1 -1
  345. package/dist/ionic/{p-11248f01.js → p-d57e8b06.js} +1 -1
  346. package/dist/ionic/{p-2539e967.system.entry.js → p-d8d30fd1.system.entry.js} +1 -1
  347. package/dist/ionic/p-dacb0258.js +4 -0
  348. package/dist/ionic/{p-d693e765.system.entry.js → p-dc4c9086.system.entry.js} +1 -1
  349. package/dist/ionic/p-dc7d392d.entry.js +4 -0
  350. package/dist/ionic/{p-0cc2bf5a.system.entry.js → p-e239ab05.system.entry.js} +1 -1
  351. package/dist/ionic/p-e65aed58.system.entry.js +4 -0
  352. package/dist/ionic/{p-d5e3bff3.entry.js → p-eb91aee6.entry.js} +1 -1
  353. package/dist/ionic/{p-6bf632d0.system.entry.js → p-ec344ed1.system.entry.js} +1 -1
  354. package/dist/ionic/{p-ed7b205b.entry.js → p-ec7ff98b.entry.js} +1 -1
  355. package/dist/ionic/{p-5ba27716.system.entry.js → p-ee55302a.system.entry.js} +1 -1
  356. package/dist/ionic/{p-dbb48066.system.entry.js → p-ef8a8827.system.entry.js} +1 -1
  357. package/dist/ionic/p-f3ec1f2b.entry.js +4 -0
  358. package/dist/ionic/{p-639d7b25.entry.js → p-f62bed60.entry.js} +1 -1
  359. package/dist/ionic/{p-96c2a273.system.entry.js → p-fa8fc77b.system.entry.js} +1 -1
  360. package/dist/ionic/p-fb26fa56.system.entry.js +4 -0
  361. package/dist/ionic/{p-3ef88fc2.system.entry.js → p-fde174d6.system.entry.js} +1 -1
  362. package/dist/ionic/{p-7b16490a.system.js → p-ff3d728d.system.js} +1 -1
  363. package/dist/types/components/checkbox/checkbox.d.ts +1 -8
  364. package/dist/types/components/datetime/datetime.d.ts +10 -23
  365. package/dist/types/components/datetime/utils/data.d.ts +1 -1
  366. package/dist/types/components/datetime/utils/parse.d.ts +3 -3
  367. package/dist/types/components/radio/radio.d.ts +1 -8
  368. package/dist/types/components/range/range.d.ts +1 -2
  369. package/dist/types/components/toast/toast-interface.d.ts +0 -3
  370. package/dist/types/components/toggle/toggle.d.ts +1 -8
  371. package/dist/types/components.d.ts +16 -40
  372. package/dist/types/index.d.ts +0 -1
  373. package/dist/types/interface.d.ts +0 -1
  374. package/dist/types/stencil-public-runtime.d.ts +3 -3
  375. package/dist/types/utils/browser/index.d.ts +16 -1
  376. package/dist/types/utils/input-shims/hacks/scroll-data.d.ts +1 -1
  377. package/hydrate/index.d.ts +5 -5
  378. package/hydrate/index.js +150 -234
  379. package/package.json +3 -3
  380. package/dist/esm-es5/app-globals-e8ddf830.js +0 -4
  381. package/dist/esm-es5/data-009dbf15.js +0 -4
  382. package/dist/esm-es5/input-shims-af993f05.js +0 -4
  383. package/dist/esm-es5/md.transition-48b3b77c.js +0 -4
  384. package/dist/ionic/p-06902103.system.js +0 -4
  385. package/dist/ionic/p-1f4adf06.system.entry.js +0 -4
  386. package/dist/ionic/p-218b6f33.entry.js +0 -4
  387. package/dist/ionic/p-273e78ae.entry.js +0 -4
  388. package/dist/ionic/p-2da6ba37.system.entry.js +0 -4
  389. package/dist/ionic/p-40138199.entry.js +0 -4
  390. package/dist/ionic/p-44ef7224.system.js +0 -4
  391. package/dist/ionic/p-4531b920.system.js +0 -4
  392. package/dist/ionic/p-4ca1ce6b.system.entry.js +0 -4
  393. package/dist/ionic/p-51b165af.system.js +0 -4
  394. package/dist/ionic/p-582dc7c1.js +0 -4
  395. package/dist/ionic/p-64ad5765.entry.js +0 -4
  396. package/dist/ionic/p-778460f7.js +0 -4
  397. package/dist/ionic/p-7cfd253c.js +0 -4
  398. package/dist/ionic/p-86c5c320.entry.js +0 -4
  399. package/dist/ionic/p-90ec5785.system.entry.js +0 -4
  400. package/dist/ionic/p-a2b25750.js +0 -4
  401. package/dist/ionic/p-a62c0ff4.js +0 -4
  402. package/dist/ionic/p-af986299.system.entry.js +0 -4
  403. package/dist/ionic/p-b321c999.entry.js +0 -4
  404. package/dist/ionic/p-c53dd7a2.entry.js +0 -4
  405. package/dist/ionic/p-d898dd46.js +0 -4
  406. package/dist/ionic/p-d8a0267b.system.entry.js +0 -4
  407. package/dist/ionic/p-e3d5608d.system.js +0 -4
  408. package/dist/ionic/p-f5c19164.entry.js +0 -4
  409. /package/dist/esm-es5/{index-847f2fde.js → index-adfb2000.js} +0 -0
  410. /package/dist/ionic/{p-5b553dc0.system.js → p-2441ba84.system.js} +0 -0
  411. /package/dist/ionic/{p-156967ec.js → p-a18eb556.js} +0 -0
@@ -71,7 +71,6 @@ export class Toggle {
71
71
  this.labelPlacement = 'start';
72
72
  this.legacy = undefined;
73
73
  this.justify = 'space-between';
74
- this.alignment = 'center';
75
74
  }
76
75
  disabledChanged() {
77
76
  this.emitStyle();
@@ -169,7 +168,7 @@ export class Toggle {
169
168
  return legacyFormController.hasLegacyControl() ? this.renderLegacyToggle() : this.renderToggle();
170
169
  }
171
170
  renderToggle() {
172
- const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment } = this;
171
+ const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name } = this;
173
172
  const mode = getIonMode(this);
174
173
  const value = this.getValue();
175
174
  const rtl = isRTL(el) ? 'rtl' : 'ltr';
@@ -181,7 +180,6 @@ export class Toggle {
181
180
  'toggle-checked': checked,
182
181
  'toggle-disabled': disabled,
183
182
  [`toggle-justify-${justify}`]: true,
184
- [`toggle-alignment-${alignment}`]: true,
185
183
  [`toggle-label-placement-${labelPlacement}`]: true,
186
184
  [`toggle-${rtl}`]: true,
187
185
  }) }, h("label", { class: "toggle-wrapper" }, h("input", Object.assign({ type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl) }, this.inheritedAttributes)), h("div", { class: {
@@ -354,15 +352,15 @@ Developers can dismiss this warning by removing their usage of the "legacy" prop
354
352
  "type": "string",
355
353
  "mutable": false,
356
354
  "complexType": {
357
- "original": "'start' | 'end' | 'fixed' | 'stacked'",
358
- "resolved": "\"end\" | \"fixed\" | \"stacked\" | \"start\"",
355
+ "original": "'start' | 'end' | 'fixed'",
356
+ "resolved": "\"end\" | \"fixed\" | \"start\"",
359
357
  "references": {}
360
358
  },
361
359
  "required": false,
362
360
  "optional": false,
363
361
  "docs": {
364
362
  "tags": [],
365
- "text": "Where to place the label relative to the input.\n`\"start\"`: The label will appear to the left of the toggle in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the toggle in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").\n`\"stacked\"`: The label will appear above the toggle regardless of the direction. The alignment of the label can be controlled with the `alignment` property."
363
+ "text": "Where to place the label relative to the input.\n`\"start\"`: The label will appear to the left of the toggle in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the toggle in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\")."
366
364
  },
367
365
  "attribute": "label-placement",
368
366
  "reflect": false,
@@ -402,24 +400,6 @@ Developers can dismiss this warning by removing their usage of the "legacy" prop
402
400
  "attribute": "justify",
403
401
  "reflect": false,
404
402
  "defaultValue": "'space-between'"
405
- },
406
- "alignment": {
407
- "type": "string",
408
- "mutable": false,
409
- "complexType": {
410
- "original": "'start' | 'center'",
411
- "resolved": "\"center\" | \"start\"",
412
- "references": {}
413
- },
414
- "required": false,
415
- "optional": false,
416
- "docs": {
417
- "tags": [],
418
- "text": "How to control the alignment of the toggle and label on the cross axis.\n``\"start\"`: The label and control will appear on the left of the cross axis in LTR, and on the right side in RTL.\n`\"center\"`: The label and control will appear at the center of the cross axis in both LTR and RTL."
419
- },
420
- "attribute": "alignment",
421
- "reflect": false,
422
- "defaultValue": "'center'"
423
403
  }
424
404
  };
425
405
  }
@@ -123,6 +123,7 @@ input {
123
123
  display: flex;
124
124
  position: relative;
125
125
  flex-grow: 1;
126
+ align-items: center;
126
127
  height: inherit;
127
128
  transition: background-color 15ms linear;
128
129
  cursor: inherit;
@@ -145,15 +146,6 @@ input {
145
146
  margin-bottom: 10px;
146
147
  }
147
148
 
148
- :host(.in-item.toggle-label-placement-stacked) .label-text-wrapper {
149
- margin-top: 10px;
150
- margin-bottom: 16px;
151
- }
152
-
153
- :host(.in-item.toggle-label-placement-stacked) .native-wrapper {
154
- margin-bottom: 10px;
155
- }
156
-
157
149
  /**
158
150
  * If no label text is placed into the slot
159
151
  * then the element should be hidden otherwise
@@ -180,14 +172,6 @@ input {
180
172
  justify-content: end;
181
173
  }
182
174
 
183
- :host(.toggle-alignment-start) .toggle-wrapper {
184
- align-items: start;
185
- }
186
-
187
- :host(.toggle-alignment-center) .toggle-wrapper {
188
- align-items: center;
189
- }
190
-
191
175
  /**
192
176
  * Label is on the left of the input in LTR and
193
177
  * on the right in RTL.
@@ -251,24 +235,6 @@ input {
251
235
  max-width: 200px;
252
236
  }
253
237
 
254
- /**
255
- * Label is on top of the toggle.
256
- */
257
- :host(.toggle-label-placement-stacked) .toggle-wrapper {
258
- flex-direction: column;
259
- }
260
-
261
- :host(.toggle-label-placement-stacked) .label-text-wrapper {
262
- /**
263
- * The margin between the label and
264
- * the toggle should be on the bottom
265
- * when the label sits on top.
266
- */
267
- margin-left: 0;
268
- margin-right: 0;
269
- margin-bottom: 16px;
270
- }
271
-
272
238
  .toggle-icon-wrapper {
273
239
  display: flex;
274
240
  position: relative;
@@ -3,7 +3,6 @@
3
3
  */
4
4
  import "ionicons";
5
5
  export { createAnimation } from './utils/animation/animation';
6
- export { getIonPageElement } from './utils/transition';
7
6
  export { iosTransitionAnimation } from './utils/transition/ios.transition';
8
7
  export { mdTransitionAnimation } from './utils/transition/md.transition';
9
8
  export { getTimeGivenProgression } from './utils/animation/cubic-bezier';
@@ -1,6 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
+ import { win } from "../../browser/index";
4
5
  import { getScrollElement, scrollByPoint } from "../../content";
5
6
  import { raf } from "../../helpers";
6
7
  import { KeyboardResize } from "../../native/keyboard";
@@ -20,6 +21,83 @@ export const enableScrollAssist = (componentEl, inputEl, contentEl, footerEl, ke
20
21
  * Resize info is available on Capacitor 4+
21
22
  */
22
23
  const addScrollPadding = enableScrollPadding && (keyboardResize === undefined || keyboardResize.mode === KeyboardResize.None);
24
+ /**
25
+ * This tracks whether or not the keyboard has been
26
+ * presented for a single focused text field. Note
27
+ * that it does not track if the keyboard is open
28
+ * in general such as if the keyboard is open for
29
+ * a different focused text field.
30
+ */
31
+ let hasKeyboardBeenPresentedForTextField = false;
32
+ /**
33
+ * When adding scroll padding we need to know
34
+ * how much of the viewport the keyboard obscures.
35
+ * We do this by subtracting the keyboard height
36
+ * from the platform height.
37
+ *
38
+ * If we compute this value when switching between
39
+ * inputs then the webview may already be resized.
40
+ * At this point, `win.innerHeight` has already accounted
41
+ * for the keyboard meaning we would then subtract
42
+ * the keyboard height again. This will result in the input
43
+ * being scrolled more than it needs to.
44
+ */
45
+ const platformHeight = win !== undefined ? win.innerHeight : 0;
46
+ /**
47
+ * Scroll assist is run when a text field
48
+ * is focused. However, it may need to
49
+ * re-run when the keyboard size changes
50
+ * such that the text field is now hidden
51
+ * underneath the keyboard.
52
+ * This function re-runs scroll assist
53
+ * when that happens.
54
+ *
55
+ * One limitation of this is on a web browser
56
+ * where native keyboard APIs do not have cross-browser
57
+ * support. `ionKeyboardDidShow` relies on the Visual Viewport API.
58
+ * This means that if the keyboard changes but does not change
59
+ * geometry, then scroll assist will not re-run even if
60
+ * the user has scrolled the text field under the keyboard.
61
+ * This should not be a problem when running in Cordova/Capacitor
62
+ * because `ionKeyboardDidShow` uses the native events
63
+ * which fire every time the keyboard changes.
64
+ */
65
+ const keyboardShow = (ev) => {
66
+ /**
67
+ * If the keyboard has not yet been presented
68
+ * for this text field then the text field has just
69
+ * received focus. In that case, the focusin listener
70
+ * will run scroll assist.
71
+ */
72
+ if (hasKeyboardBeenPresentedForTextField === false) {
73
+ hasKeyboardBeenPresentedForTextField = true;
74
+ return;
75
+ }
76
+ /**
77
+ * Otherwise, the keyboard has already been presented
78
+ * for the focused text field.
79
+ * This means that the keyboard likely changed
80
+ * geometry, and we need to re-run scroll assist.
81
+ * This can happen when the user rotates their device
82
+ * or when they switch keyboards.
83
+ *
84
+ * Make sure we pass in the computed keyboard height
85
+ * rather than the estimated keyboard height.
86
+ *
87
+ * Since the keyboard is already open then we do not
88
+ * need to wait for the webview to resize, so we pass
89
+ * "waitForResize: false".
90
+ */
91
+ jsSetFocus(componentEl, inputEl, contentEl, footerEl, ev.detail.keyboardHeight, addScrollPadding, disableClonedInput, platformHeight, false);
92
+ };
93
+ /**
94
+ * Reset the internal state when the text field loses focus.
95
+ */
96
+ const focusOut = () => {
97
+ hasKeyboardBeenPresentedForTextField = false;
98
+ win === null || win === void 0 ? void 0 : win.removeEventListener('ionKeyboardDidShow', keyboardShow);
99
+ componentEl.removeEventListener('focusout', focusOut, true);
100
+ };
23
101
  /**
24
102
  * When the input is about to receive
25
103
  * focus, we need to move it to prevent
@@ -36,11 +114,15 @@ export const enableScrollAssist = (componentEl, inputEl, contentEl, footerEl, ke
36
114
  inputEl.removeAttribute(SKIP_SCROLL_ASSIST);
37
115
  return;
38
116
  }
39
- jsSetFocus(componentEl, inputEl, contentEl, footerEl, keyboardHeight, addScrollPadding, disableClonedInput);
117
+ jsSetFocus(componentEl, inputEl, contentEl, footerEl, keyboardHeight, addScrollPadding, disableClonedInput, platformHeight);
118
+ win === null || win === void 0 ? void 0 : win.addEventListener('ionKeyboardDidShow', keyboardShow);
119
+ componentEl.addEventListener('focusout', focusOut, true);
40
120
  };
41
121
  componentEl.addEventListener('focusin', focusIn, true);
42
122
  return () => {
43
123
  componentEl.removeEventListener('focusin', focusIn, true);
124
+ win === null || win === void 0 ? void 0 : win.removeEventListener('ionKeyboardDidShow', keyboardShow);
125
+ componentEl.removeEventListener('focusout', focusOut, true);
44
126
  };
45
127
  };
46
128
  /**
@@ -59,11 +141,11 @@ const setManualFocus = (el) => {
59
141
  el.setAttribute(SKIP_SCROLL_ASSIST, 'true');
60
142
  el.focus();
61
143
  };
62
- const jsSetFocus = async (componentEl, inputEl, contentEl, footerEl, keyboardHeight, enableScrollPadding, disableClonedInput = false) => {
144
+ const jsSetFocus = async (componentEl, inputEl, contentEl, footerEl, keyboardHeight, enableScrollPadding, disableClonedInput = false, platformHeight = 0, waitForResize = true) => {
63
145
  if (!contentEl && !footerEl) {
64
146
  return;
65
147
  }
66
- const scrollData = getScrollData(componentEl, (contentEl || footerEl), keyboardHeight);
148
+ const scrollData = getScrollData(componentEl, (contentEl || footerEl), keyboardHeight, platformHeight);
67
149
  if (contentEl && Math.abs(scrollData.scrollAmount) < 4) {
68
150
  // the text input is in a safe position that doesn't
69
151
  // require it to be scrolled into view, just set focus now
@@ -150,7 +232,7 @@ const jsSetFocus = async (componentEl, inputEl, contentEl, footerEl, keyboardHei
150
232
  * bandwidth to become available.
151
233
  */
152
234
  const totalScrollAmount = scrollEl.scrollHeight - scrollEl.clientHeight;
153
- if (scrollData.scrollAmount > totalScrollAmount - scrollEl.scrollTop) {
235
+ if (waitForResize && scrollData.scrollAmount > totalScrollAmount - scrollEl.scrollTop) {
154
236
  /**
155
237
  * On iOS devices, the system will show a "Passwords" bar above the keyboard
156
238
  * after the initial keyboard is shown. This prevents the webview from resizing
@@ -3,11 +3,10 @@
3
3
  */
4
4
  import { SCROLL_AMOUNT_PADDING } from "./common";
5
5
  const SCROLL_ASSIST_SPEED = 0.3;
6
- export const getScrollData = (componentEl, contentEl, keyboardHeight) => {
6
+ export const getScrollData = (componentEl, contentEl, keyboardHeight, platformHeight) => {
7
7
  var _a;
8
8
  const itemEl = (_a = componentEl.closest('ion-item,[ion-item]')) !== null && _a !== void 0 ? _a : componentEl;
9
- return calcScrollData(itemEl.getBoundingClientRect(), contentEl.getBoundingClientRect(), keyboardHeight, componentEl.ownerDocument.defaultView.innerHeight // TODO(FW-2832): type
10
- );
9
+ return calcScrollData(itemEl.getBoundingClientRect(), contentEl.getBoundingClientRect(), keyboardHeight, platformHeight);
11
10
  };
12
11
  const calcScrollData = (inputRect, contentRect, keyboardHeight, platformHeight) => {
13
12
  // compute input's Y values relative to the body
package/dist/docs.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
- "timestamp": "2023-09-13T12:44:09",
2
+ "timestamp": "2023-09-14T13:37:31",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
- "version": "4.2.0",
5
+ "version": "4.2.1",
6
6
  "typescriptVersion": "5.1.6"
7
7
  },
8
8
  "components": [
@@ -4959,33 +4959,6 @@
4959
4959
  ],
4960
4960
  "usage": {},
4961
4961
  "props": [
4962
- {
4963
- "name": "alignment",
4964
- "type": "\"center\" | \"start\"",
4965
- "complexType": {
4966
- "original": "'start' | 'center'",
4967
- "resolved": "\"center\" | \"start\"",
4968
- "references": {}
4969
- },
4970
- "mutable": false,
4971
- "attr": "alignment",
4972
- "reflectToAttr": false,
4973
- "docs": "How to control the alignment of the checkbox and label on the cross axis.\n`\"start\"`: The label and control will appear on the left of the cross axis in LTR, and on the right side in RTL.\n`\"center\"`: The label and control will appear at the center of the cross axis in both LTR and RTL.",
4974
- "docsTags": [],
4975
- "default": "'center'",
4976
- "values": [
4977
- {
4978
- "value": "center",
4979
- "type": "string"
4980
- },
4981
- {
4982
- "value": "start",
4983
- "type": "string"
4984
- }
4985
- ],
4986
- "optional": false,
4987
- "required": false
4988
- },
4989
4962
  {
4990
4963
  "name": "checked",
4991
4964
  "type": "boolean",
@@ -5151,16 +5124,16 @@
5151
5124
  },
5152
5125
  {
5153
5126
  "name": "labelPlacement",
5154
- "type": "\"end\" | \"fixed\" | \"stacked\" | \"start\"",
5127
+ "type": "\"end\" | \"fixed\" | \"start\"",
5155
5128
  "complexType": {
5156
- "original": "'start' | 'end' | 'fixed' | 'stacked'",
5157
- "resolved": "\"end\" | \"fixed\" | \"stacked\" | \"start\"",
5129
+ "original": "'start' | 'end' | 'fixed'",
5130
+ "resolved": "\"end\" | \"fixed\" | \"start\"",
5158
5131
  "references": {}
5159
5132
  },
5160
5133
  "mutable": false,
5161
5134
  "attr": "label-placement",
5162
5135
  "reflectToAttr": false,
5163
- "docs": "Where to place the label relative to the checkbox.\n`\"start\"`: The label will appear to the left of the checkbox in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the checkbox in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").\n`\"stacked\"`: The label will appear above the checkbox regardless of the direction. The alignment of the label can be controlled with the `alignment` property.",
5136
+ "docs": "Where to place the label relative to the checkbox.\n`\"start\"`: The label will appear to the left of the checkbox in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the checkbox in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").",
5164
5137
  "docsTags": [],
5165
5138
  "default": "'start'",
5166
5139
  "values": [
@@ -5172,10 +5145,6 @@
5172
5145
  "value": "fixed",
5173
5146
  "type": "string"
5174
5147
  },
5175
- {
5176
- "value": "stacked",
5177
- "type": "string"
5178
- },
5179
5148
  {
5180
5149
  "value": "start",
5181
5150
  "type": "string"
@@ -6839,22 +6808,6 @@
6839
6808
  {
6840
6809
  "name": "part",
6841
6810
  "text": "month-year-button - The button that opens the month/year picker when\nusing a grid style layout."
6842
- },
6843
- {
6844
- "name": "part",
6845
- "text": "calendar-day - The individual buttons that display a day inside of the datetime\ncalendar."
6846
- },
6847
- {
6848
- "name": "part",
6849
- "text": "calendar-day active - The currently selected calendar day."
6850
- },
6851
- {
6852
- "name": "part",
6853
- "text": "calendar-day today - The calendar day that contains the current day."
6854
- },
6855
- {
6856
- "name": "part",
6857
- "text": "calendar-day disabled - The calendar day that is disabled."
6858
6811
  }
6859
6812
  ],
6860
6813
  "usage": {},
@@ -7875,22 +7828,6 @@
7875
7828
  }
7876
7829
  ],
7877
7830
  "parts": [
7878
- {
7879
- "name": "calendar-day",
7880
- "docs": "The individual buttons that display a day inside of the datetime\ncalendar."
7881
- },
7882
- {
7883
- "name": "calendar-day active",
7884
- "docs": "The currently selected calendar day."
7885
- },
7886
- {
7887
- "name": "calendar-day disabled",
7888
- "docs": "The calendar day that is disabled."
7889
- },
7890
- {
7891
- "name": "calendar-day today",
7892
- "docs": "The calendar day that contains the current day."
7893
- },
7894
7831
  {
7895
7832
  "name": "month-year-button",
7896
7833
  "docs": "The button that opens the month/year picker when\nusing a grid style layout."
@@ -19317,33 +19254,6 @@
19317
19254
  ],
19318
19255
  "usage": {},
19319
19256
  "props": [
19320
- {
19321
- "name": "alignment",
19322
- "type": "\"center\" | \"start\"",
19323
- "complexType": {
19324
- "original": "'start' | 'center'",
19325
- "resolved": "\"center\" | \"start\"",
19326
- "references": {}
19327
- },
19328
- "mutable": false,
19329
- "attr": "alignment",
19330
- "reflectToAttr": false,
19331
- "docs": "How to control the alignment of the radio and label on the cross axis.\n`\"start\"`: The label and control will appear on the left of the cross axis in LTR, and on the right side in RTL.\n`\"center\"`: The label and control will appear at the center of the cross axis in both LTR and RTL.",
19332
- "docsTags": [],
19333
- "default": "'center'",
19334
- "values": [
19335
- {
19336
- "value": "center",
19337
- "type": "string"
19338
- },
19339
- {
19340
- "value": "start",
19341
- "type": "string"
19342
- }
19343
- ],
19344
- "optional": false,
19345
- "required": false
19346
- },
19347
19257
  {
19348
19258
  "name": "color",
19349
19259
  "type": "\"danger\" | \"dark\" | \"light\" | \"medium\" | \"primary\" | \"secondary\" | \"success\" | \"tertiary\" | \"warning\" | string & Record<never, never> | undefined",
@@ -19465,16 +19375,16 @@
19465
19375
  },
19466
19376
  {
19467
19377
  "name": "labelPlacement",
19468
- "type": "\"end\" | \"fixed\" | \"stacked\" | \"start\"",
19378
+ "type": "\"end\" | \"fixed\" | \"start\"",
19469
19379
  "complexType": {
19470
- "original": "'start' | 'end' | 'fixed' | 'stacked'",
19471
- "resolved": "\"end\" | \"fixed\" | \"stacked\" | \"start\"",
19380
+ "original": "'start' | 'end' | 'fixed'",
19381
+ "resolved": "\"end\" | \"fixed\" | \"start\"",
19472
19382
  "references": {}
19473
19383
  },
19474
19384
  "mutable": false,
19475
19385
  "attr": "label-placement",
19476
19386
  "reflectToAttr": false,
19477
- "docs": "Where to place the label relative to the radio.\n`\"start\"`: The label will appear to the left of the radio in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the radio in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").\n`\"stacked\"`: The label will appear above the radio regardless of the direction. The alignment of the label can be controlled with the `alignment` property.",
19387
+ "docs": "Where to place the label relative to the radio.\n`\"start\"`: The label will appear to the left of the radio in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the radio in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").",
19478
19388
  "docsTags": [],
19479
19389
  "default": "'start'",
19480
19390
  "values": [
@@ -19486,10 +19396,6 @@
19486
19396
  "value": "fixed",
19487
19397
  "type": "string"
19488
19398
  },
19489
- {
19490
- "value": "stacked",
19491
- "type": "string"
19492
- },
19493
19399
  {
19494
19400
  "value": "start",
19495
19401
  "type": "string"
@@ -20018,16 +19924,16 @@
20018
19924
  },
20019
19925
  {
20020
19926
  "name": "labelPlacement",
20021
- "type": "\"end\" | \"fixed\" | \"stacked\" | \"start\"",
19927
+ "type": "\"end\" | \"fixed\" | \"start\"",
20022
19928
  "complexType": {
20023
- "original": "'start' | 'end' | 'fixed' | 'stacked'",
20024
- "resolved": "\"end\" | \"fixed\" | \"stacked\" | \"start\"",
19929
+ "original": "'start' | 'end' | 'fixed'",
19930
+ "resolved": "\"end\" | \"fixed\" | \"start\"",
20025
19931
  "references": {}
20026
19932
  },
20027
19933
  "mutable": false,
20028
19934
  "attr": "label-placement",
20029
19935
  "reflectToAttr": false,
20030
- "docs": "Where to place the label relative to the range.\n`\"start\"`: The label will appear to the left of the range in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the range in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").\n`\"stacked\"`: The label will appear above the range regardless of the direction.",
19936
+ "docs": "Where to place the label relative to the range.\n`\"start\"`: The label will appear to the left of the range in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the range in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").",
20031
19937
  "docsTags": [],
20032
19938
  "default": "'start'",
20033
19939
  "values": [
@@ -20039,10 +19945,6 @@
20039
19945
  "value": "fixed",
20040
19946
  "type": "string"
20041
19947
  },
20042
- {
20043
- "value": "stacked",
20044
- "type": "string"
20045
- },
20046
19948
  {
20047
19949
  "value": "start",
20048
19950
  "type": "string"
@@ -28220,33 +28122,6 @@
28220
28122
  ],
28221
28123
  "usage": {},
28222
28124
  "props": [
28223
- {
28224
- "name": "alignment",
28225
- "type": "\"center\" | \"start\"",
28226
- "complexType": {
28227
- "original": "'start' | 'center'",
28228
- "resolved": "\"center\" | \"start\"",
28229
- "references": {}
28230
- },
28231
- "mutable": false,
28232
- "attr": "alignment",
28233
- "reflectToAttr": false,
28234
- "docs": "How to control the alignment of the toggle and label on the cross axis.\n``\"start\"`: The label and control will appear on the left of the cross axis in LTR, and on the right side in RTL.\n`\"center\"`: The label and control will appear at the center of the cross axis in both LTR and RTL.",
28235
- "docsTags": [],
28236
- "default": "'center'",
28237
- "values": [
28238
- {
28239
- "value": "center",
28240
- "type": "string"
28241
- },
28242
- {
28243
- "value": "start",
28244
- "type": "string"
28245
- }
28246
- ],
28247
- "optional": false,
28248
- "required": false
28249
- },
28250
28125
  {
28251
28126
  "name": "checked",
28252
28127
  "type": "boolean",
@@ -28415,16 +28290,16 @@
28415
28290
  },
28416
28291
  {
28417
28292
  "name": "labelPlacement",
28418
- "type": "\"end\" | \"fixed\" | \"stacked\" | \"start\"",
28293
+ "type": "\"end\" | \"fixed\" | \"start\"",
28419
28294
  "complexType": {
28420
- "original": "'start' | 'end' | 'fixed' | 'stacked'",
28421
- "resolved": "\"end\" | \"fixed\" | \"stacked\" | \"start\"",
28295
+ "original": "'start' | 'end' | 'fixed'",
28296
+ "resolved": "\"end\" | \"fixed\" | \"start\"",
28422
28297
  "references": {}
28423
28298
  },
28424
28299
  "mutable": false,
28425
28300
  "attr": "label-placement",
28426
28301
  "reflectToAttr": false,
28427
- "docs": "Where to place the label relative to the input.\n`\"start\"`: The label will appear to the left of the toggle in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the toggle in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").\n`\"stacked\"`: The label will appear above the toggle regardless of the direction. The alignment of the label can be controlled with the `alignment` property.",
28302
+ "docs": "Where to place the label relative to the input.\n`\"start\"`: The label will appear to the left of the toggle in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the toggle in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").",
28428
28303
  "docsTags": [],
28429
28304
  "default": "'start'",
28430
28305
  "values": [
@@ -28436,10 +28311,6 @@
28436
28311
  "value": "fixed",
28437
28312
  "type": "string"
28438
28313
  },
28439
- {
28440
- "value": "stacked",
28441
- "type": "string"
28442
- },
28443
28314
  {
28444
28315
  "value": "start",
28445
28316
  "type": "string"
@@ -29286,7 +29157,7 @@
29286
29157
  "path": "src/components/toast/toast-interface.ts"
29287
29158
  },
29288
29159
  "src/components/toast/toast-interface.ts::ToastButton": {
29289
- "declaration": "export interface ToastButton {\n text?: string;\n icon?: string;\n side?: 'start' | 'end';\n role?: 'cancel' | string;\n\n /**\n * @deprecated Use the toast button's CSS Shadow Parts instead.\n */\n cssClass?: string | string[];\n htmlAttributes?: { [key: string]: any };\n handler?: () => boolean | void | Promise<boolean | void>;\n}",
29160
+ "declaration": "export interface ToastButton {\n text?: string;\n icon?: string;\n side?: 'start' | 'end';\n role?: 'cancel' | string;\n cssClass?: string | string[];\n htmlAttributes?: { [key: string]: any };\n handler?: () => boolean | void | Promise<boolean | void>;\n}",
29290
29161
  "docstring": "",
29291
29162
  "path": "src/components/toast/toast-interface.ts"
29292
29163
  },
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { i as initialize } from './ionic-global-1ef19007.js';
4
+ import { i as initialize } from './ionic-global-9080266a.js';
5
5
 
6
6
  const globalScripts = initialize;
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { w as writeTask } from './index-847f2fde.js';
4
+ import { w as writeTask } from './index-adfb2000.js';
5
5
  import { h as hapticSelectionEnd, a as hapticSelectionStart, b as hapticSelectionChanged } from './haptic-6447af60.js';
6
6
  import { createGesture } from './index-ff313b19.js';
7
7
 
@@ -185,22 +185,7 @@ const getPartsFromCalendarDay = (el) => {
185
185
  };
186
186
  function parseDate(val) {
187
187
  if (Array.isArray(val)) {
188
- const parsedArray = [];
189
- for (const valStr of val) {
190
- const parsedVal = parseDate(valStr);
191
- /**
192
- * If any of the values weren't parsed correctly, consider
193
- * the entire batch incorrect. This simplifies the type
194
- * signatures by having "undefined" be a general error case
195
- * instead of returning (Datetime | undefined)[], which is
196
- * harder for TS to perform type narrowing on.
197
- */
198
- if (!parsedVal) {
199
- return undefined;
200
- }
201
- parsedArray.push(parsedVal);
202
- }
203
- return parsedArray;
188
+ return val.map((valStr) => parseDate(valStr));
204
189
  }
205
190
  // manually parse IS0 cuz Date.parse cannot be trusted
206
191
  // ISO 8601 format: 1994-12-15T13:47:20Z
@@ -220,7 +205,6 @@ function parseDate(val) {
220
205
  }
221
206
  if (parse === null) {
222
207
  // wasn't able to parse the ISO datetime
223
- printIonWarning(`Unable to parse date string: ${val}. Please provide a valid ISO 8601 datetime string.`);
224
208
  return undefined;
225
209
  }
226
210
  // ensure all the parse values exist with at least 0
@@ -1241,20 +1225,12 @@ const generateTime = (refParts, hourCycle = 'h12', minParts, maxParts, hourValue
1241
1225
  * Given DatetimeParts, generate the previous,
1242
1226
  * current, and and next months.
1243
1227
  */
1244
- const generateMonths = (refParts, forcedDate) => {
1245
- const current = { month: refParts.month, year: refParts.year, day: refParts.day };
1246
- /**
1247
- * If we're forcing a month to appear, and it's different from the current month,
1248
- * ensure it appears by replacing the next or previous month as appropriate.
1249
- */
1250
- if (forcedDate !== undefined && (refParts.month !== forcedDate.month || refParts.year !== forcedDate.year)) {
1251
- const forced = { month: forcedDate.month, year: forcedDate.year, day: forcedDate.day };
1252
- const forcedMonthIsBefore = isBefore(forced, current);
1253
- return forcedMonthIsBefore
1254
- ? [forced, current, getNextMonth(refParts)]
1255
- : [getPreviousMonth(refParts), current, forced];
1256
- }
1257
- return [getPreviousMonth(refParts), current, getNextMonth(refParts)];
1228
+ const generateMonths = (refParts) => {
1229
+ return [
1230
+ getPreviousMonth(refParts),
1231
+ { month: refParts.month, year: refParts.year, day: refParts.day },
1232
+ getNextMonth(refParts),
1233
+ ];
1258
1234
  };
1259
1235
  const getMonthColumnData = (locale, refParts, minParts, maxParts, monthValues, formatOptions = {
1260
1236
  month: 'long',