@ionic/core 8.4.4-dev.11741050043.10a3c31a → 8.4.4-dev.11741101920.155e1c29

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 (756) hide show
  1. package/components/checkbox.js +6 -4
  2. package/components/helpers.js +29 -11
  3. package/components/index6.js +11 -3
  4. package/components/index7.js +2 -2
  5. package/components/index9.js +1 -1
  6. package/components/ion-item-divider.js +2 -2
  7. package/components/ion-item-group.js +1 -1
  8. package/components/ion-item-option.js +2 -2
  9. package/components/ion-item-options.js +1 -1
  10. package/components/ion-item-sliding.js +1 -1
  11. package/components/ion-loading.js +2 -2
  12. package/components/ion-menu-button.js +2 -2
  13. package/components/ion-menu-toggle.js +2 -2
  14. package/components/ion-menu.js +2 -2
  15. package/components/ion-nav-link.js +1 -1
  16. package/components/ion-nav.js +1 -1
  17. package/components/ion-note.js +2 -2
  18. package/components/ion-picker-legacy.js +2 -2
  19. package/components/ion-progress-bar.js +1 -1
  20. package/components/ion-range.js +3 -3
  21. package/components/ion-refresher-content.js +1 -1
  22. package/components/ion-refresher.js +1 -1
  23. package/components/ion-reorder-group.js +1 -1
  24. package/components/ion-reorder.js +1 -1
  25. package/components/ion-router-link.js +2 -2
  26. package/components/ion-router-outlet.js +1 -1
  27. package/components/ion-row.js +1 -1
  28. package/components/ion-searchbar.js +4 -4
  29. package/components/ion-segment-button.js +9 -40
  30. package/components/ion-segment-content.js +1 -1
  31. package/components/ion-segment-view.js +2 -2
  32. package/components/ion-segment.js +2 -2
  33. package/components/ion-select-option.js +1 -1
  34. package/components/ion-select.js +16 -41
  35. package/components/ion-skeleton-text.js +2 -2
  36. package/components/ion-split-pane.js +2 -2
  37. package/components/ion-tab-bar.js +2 -2
  38. package/components/ion-tab-button.js +2 -2
  39. package/components/ion-tab.js +2 -2
  40. package/components/ion-tabs.js +1 -1
  41. package/components/ion-text.js +2 -2
  42. package/components/ion-textarea.js +2 -2
  43. package/components/ion-thumbnail.js +1 -1
  44. package/components/ion-toast.js +2 -2
  45. package/components/ion-toggle.js +6 -4
  46. package/components/ionic-global.js +12 -1
  47. package/components/label.js +2 -2
  48. package/components/list-header.js +2 -2
  49. package/components/modal.js +259 -35
  50. package/components/picker-column-option.js +2 -2
  51. package/components/picker-column2.js +2 -2
  52. package/components/popover.js +2 -2
  53. package/components/radio-group.js +39 -2
  54. package/components/radio.js +3 -3
  55. package/components/ripple-effect.js +1 -1
  56. package/components/select-modal.js +1 -1
  57. package/components/select-popover.js +1 -1
  58. package/components/spinner.js +1 -1
  59. package/components/title.js +2 -2
  60. package/components/toolbar.js +2 -2
  61. package/css/core.css +1 -1
  62. package/css/core.css.map +1 -1
  63. package/css/global.bundle.css +1 -1
  64. package/css/global.bundle.css.map +1 -1
  65. package/css/ionic.bundle.css +1 -1
  66. package/css/ionic.bundle.css.map +1 -1
  67. package/css/palettes/dark.always.css +1 -1
  68. package/css/palettes/dark.always.css.map +1 -1
  69. package/css/palettes/dark.class.css +1 -1
  70. package/css/palettes/dark.class.css.map +1 -1
  71. package/css/palettes/dark.system.css +1 -1
  72. package/css/palettes/dark.system.css.map +1 -1
  73. package/css/palettes/high-contrast-dark.always.css +1 -1
  74. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  75. package/css/palettes/high-contrast-dark.class.css +1 -1
  76. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  77. package/css/palettes/high-contrast-dark.system.css +1 -1
  78. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  79. package/css/palettes/high-contrast.always.css +1 -1
  80. package/css/palettes/high-contrast.always.css.map +1 -1
  81. package/css/palettes/high-contrast.class.css +1 -1
  82. package/css/palettes/high-contrast.class.css.map +1 -1
  83. package/css/palettes/high-contrast.system.css +1 -1
  84. package/css/palettes/high-contrast.system.css.map +1 -1
  85. package/css/structure.css +1 -1
  86. package/css/structure.css.map +1 -1
  87. package/css/typography.css +1 -1
  88. package/css/typography.css.map +1 -1
  89. package/dist/cjs/{app-globals-247c7281.js → app-globals-21afee77.js} +1 -1
  90. package/dist/cjs/{button-active-43e2b419.js → button-active-3f2f60b4.js} +1 -1
  91. package/dist/cjs/{data-21dc0f81.js → data-108e531d.js} +1 -1
  92. package/dist/cjs/{framework-delegate-2a11ff27.js → framework-delegate-55f5683a.js} +1 -1
  93. package/dist/cjs/{hardware-back-button-25324112.js → hardware-back-button-9e8a2c4f.js} +2 -2
  94. package/dist/cjs/{helpers-06f744d7.js → helpers-afaa9001.js} +28 -11
  95. package/dist/cjs/{index-0e360e93.js → index-073c7cdc.js} +2 -2
  96. package/dist/cjs/{index-5235cd7a.js → index-0d762bba.js} +2 -2
  97. package/dist/cjs/{index-5915f9b3.js → index-2a46a047.js} +11 -3
  98. package/dist/cjs/{index-17772b90.js → index-3652c918.js} +4 -4
  99. package/dist/cjs/{index-2e236a04.js → index-73f75efb.js} +4 -0
  100. package/dist/cjs/{index-d36529a6.js → index-9509ecad.js} +1 -1
  101. package/dist/cjs/{index-a9253094.js → index-e975c92b.js} +6 -6
  102. package/dist/cjs/index.cjs.js +11 -11
  103. package/dist/cjs/{input-shims-a1181384.js → input-shims-cd05268a.js} +5 -3
  104. package/dist/cjs/{input.utils-693b953e.js → input.utils-ffb2f81b.js} +2 -2
  105. package/dist/cjs/ion-accordion_2.cjs.entry.js +5 -5
  106. package/dist/cjs/ion-action-sheet.cjs.entry.js +8 -8
  107. package/dist/cjs/ion-alert.cjs.entry.js +8 -8
  108. package/dist/cjs/ion-app_8.cjs.entry.js +18 -18
  109. package/dist/cjs/ion-avatar_3.cjs.entry.js +3 -3
  110. package/dist/cjs/ion-back-button.cjs.entry.js +4 -4
  111. package/dist/cjs/ion-backdrop.cjs.entry.js +2 -2
  112. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +4 -4
  113. package/dist/cjs/ion-button_2.cjs.entry.js +4 -4
  114. package/dist/cjs/ion-card_5.cjs.entry.js +3 -3
  115. package/dist/cjs/ion-checkbox.cjs.entry.js +8 -7
  116. package/dist/cjs/ion-chip.cjs.entry.js +2 -2
  117. package/dist/cjs/ion-col_3.cjs.entry.js +3 -3
  118. package/dist/cjs/ion-datetime-button.cjs.entry.js +5 -5
  119. package/dist/cjs/ion-datetime_3.cjs.entry.js +13 -13
  120. package/dist/cjs/ion-fab_3.cjs.entry.js +4 -4
  121. package/dist/cjs/ion-img.cjs.entry.js +3 -3
  122. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +5 -5
  123. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +4 -4
  124. package/dist/cjs/ion-input.cjs.entry.js +7 -7
  125. package/dist/cjs/ion-item-option_3.cjs.entry.js +9 -9
  126. package/dist/cjs/ion-item_8.cjs.entry.js +15 -15
  127. package/dist/cjs/ion-loading.cjs.entry.js +9 -9
  128. package/dist/cjs/ion-menu_3.cjs.entry.js +15 -15
  129. package/dist/cjs/ion-modal.cjs.entry.js +267 -44
  130. package/dist/cjs/ion-nav_2.cjs.entry.js +9 -9
  131. package/dist/cjs/ion-picker-column-option.cjs.entry.js +5 -5
  132. package/dist/cjs/ion-picker-column.cjs.entry.js +3 -3
  133. package/dist/cjs/ion-picker.cjs.entry.js +2 -2
  134. package/dist/cjs/ion-popover.cjs.entry.js +10 -10
  135. package/dist/cjs/ion-progress-bar.cjs.entry.js +4 -4
  136. package/dist/cjs/ion-radio_2.cjs.entry.js +42 -7
  137. package/dist/cjs/ion-range.cjs.entry.js +8 -8
  138. package/dist/cjs/ion-refresher_2.cjs.entry.js +8 -8
  139. package/dist/cjs/ion-reorder_2.cjs.entry.js +8 -8
  140. package/dist/cjs/ion-ripple-effect.cjs.entry.js +3 -3
  141. package/dist/cjs/ion-route_4.cjs.entry.js +5 -5
  142. package/dist/cjs/ion-searchbar.cjs.entry.js +8 -8
  143. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  144. package/dist/cjs/ion-segment-view.cjs.entry.js +3 -3
  145. package/dist/cjs/ion-segment_2.cjs.entry.js +13 -44
  146. package/dist/cjs/ion-select-modal.cjs.entry.js +8 -8
  147. package/dist/cjs/ion-select_3.cjs.entry.js +25 -51
  148. package/dist/cjs/ion-spinner.cjs.entry.js +3 -3
  149. package/dist/cjs/ion-split-pane.cjs.entry.js +4 -4
  150. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +7 -7
  151. package/dist/cjs/ion-tab_2.cjs.entry.js +6 -6
  152. package/dist/cjs/ion-text.cjs.entry.js +4 -4
  153. package/dist/cjs/ion-textarea.cjs.entry.js +8 -8
  154. package/dist/cjs/ion-toast.cjs.entry.js +9 -9
  155. package/dist/cjs/ion-toggle.cjs.entry.js +9 -8
  156. package/dist/cjs/{ionic-global-20cee824.js → ionic-global-d9a8bb5b.js} +12 -1
  157. package/dist/cjs/ionic.cjs.js +4 -4
  158. package/dist/cjs/{ios.transition-c3e3b768.js → ios.transition-0e664e88.js} +5 -5
  159. package/dist/cjs/loader.cjs.js +4 -4
  160. package/dist/cjs/{md.transition-91d9b2db.js → md.transition-2e8aef2c.js} +5 -5
  161. package/dist/cjs/{notch-controller-57bae241.js → notch-controller-d69150f5.js} +1 -1
  162. package/dist/cjs/{overlays-93c1a579.js → overlays-65fdaff6.js} +5 -5
  163. package/dist/cjs/{status-tap-ede4c3df.js → status-tap-d74f1429.js} +5 -4
  164. package/dist/cjs/{swipe-back-2aee5ac9.js → swipe-back-0303a5e4.js} +1 -1
  165. package/dist/collection/components/checkbox/checkbox.js +23 -4
  166. package/dist/collection/components/item-divider/item-divider.js +2 -2
  167. package/dist/collection/components/item-group/item-group.js +1 -1
  168. package/dist/collection/components/item-option/item-option.js +2 -2
  169. package/dist/collection/components/item-options/item-options.js +1 -1
  170. package/dist/collection/components/item-sliding/item-sliding.js +1 -1
  171. package/dist/collection/components/label/label.js +2 -2
  172. package/dist/collection/components/list-header/list-header.js +2 -2
  173. package/dist/collection/components/loading/loading.js +2 -2
  174. package/dist/collection/components/menu/menu.js +2 -2
  175. package/dist/collection/components/menu-button/menu-button.js +2 -2
  176. package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
  177. package/dist/collection/components/modal/animations/ios.enter.js +50 -4
  178. package/dist/collection/components/modal/animations/ios.leave.js +24 -2
  179. package/dist/collection/components/modal/animations/md.enter.js +52 -5
  180. package/dist/collection/components/modal/animations/md.leave.js +26 -3
  181. package/dist/collection/components/modal/animations/sheet.js +11 -2
  182. package/dist/collection/components/modal/gestures/sheet.js +79 -10
  183. package/dist/collection/components/modal/modal.ios.css +16 -0
  184. package/dist/collection/components/modal/modal.js +32 -7
  185. package/dist/collection/components/modal/modal.md.css +6 -0
  186. package/dist/collection/components/nav/nav.js +1 -1
  187. package/dist/collection/components/nav-link/nav-link.js +1 -1
  188. package/dist/collection/components/note/note.js +2 -2
  189. package/dist/collection/components/picker-column-option/picker-column-option.js +2 -2
  190. package/dist/collection/components/picker-legacy/picker.js +2 -2
  191. package/dist/collection/components/picker-legacy-column/picker-column.js +2 -2
  192. package/dist/collection/components/popover/popover.js +2 -2
  193. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  194. package/dist/collection/components/radio/radio.js +3 -3
  195. package/dist/collection/components/radio-group/radio-group.ios.css +206 -0
  196. package/dist/collection/components/radio-group/radio-group.js +72 -1
  197. package/dist/collection/components/radio-group/radio-group.md.css +206 -0
  198. package/dist/collection/components/range/range.js +3 -3
  199. package/dist/collection/components/refresher/refresher.js +1 -1
  200. package/dist/collection/components/refresher-content/refresher-content.js +1 -1
  201. package/dist/collection/components/reorder/reorder.js +1 -1
  202. package/dist/collection/components/reorder-group/reorder-group.js +1 -1
  203. package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
  204. package/dist/collection/components/router-link/router-link.js +2 -2
  205. package/dist/collection/components/router-outlet/router-outlet.js +1 -1
  206. package/dist/collection/components/row/row.js +1 -1
  207. package/dist/collection/components/searchbar/searchbar.js +4 -4
  208. package/dist/collection/components/segment/segment.js +2 -2
  209. package/dist/collection/components/segment-button/segment-button.js +9 -40
  210. package/dist/collection/components/segment-content/segment-content.js +1 -1
  211. package/dist/collection/components/segment-view/segment-view.js +2 -2
  212. package/dist/collection/components/select/select.js +32 -40
  213. package/dist/collection/components/select-modal/select-modal.js +1 -1
  214. package/dist/collection/components/select-option/select-option.js +1 -1
  215. package/dist/collection/components/select-popover/select-popover.js +1 -1
  216. package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
  217. package/dist/collection/components/spinner/spinner.js +1 -1
  218. package/dist/collection/components/split-pane/split-pane.js +2 -2
  219. package/dist/collection/components/tab/tab.js +2 -2
  220. package/dist/collection/components/tab-bar/tab-bar.js +2 -2
  221. package/dist/collection/components/tab-button/tab-button.js +2 -2
  222. package/dist/collection/components/tabs/tabs.js +1 -1
  223. package/dist/collection/components/text/text.js +2 -2
  224. package/dist/collection/components/textarea/textarea.js +2 -2
  225. package/dist/collection/components/thumbnail/thumbnail.js +1 -1
  226. package/dist/collection/components/title/title.js +2 -2
  227. package/dist/collection/components/toast/toast.js +2 -2
  228. package/dist/collection/components/toggle/toggle.js +23 -4
  229. package/dist/collection/components/toolbar/toolbar.js +6 -2
  230. package/dist/collection/global/ionic-global.js +12 -1
  231. package/dist/collection/utils/helpers.js +28 -10
  232. package/dist/collection/utils/logging/index.js +10 -3
  233. package/dist/docs.json +163 -2
  234. package/dist/esm/{app-globals-0aadb3a9.js → app-globals-5dbb61a5.js} +1 -1
  235. package/dist/esm/{button-active-90f1dbc4.js → button-active-f6503382.js} +1 -1
  236. package/dist/esm/{data-ae11fd43.js → data-b3284b5e.js} +1 -1
  237. package/dist/esm/{framework-delegate-3e745cc0.js → framework-delegate-63d1a679.js} +1 -1
  238. package/dist/esm/{hardware-back-button-d58e8ab6.js → hardware-back-button-06ef3c3e.js} +2 -2
  239. package/dist/esm/{helpers-16b36a2b.js → helpers-da915de8.js} +29 -11
  240. package/dist/esm/{index-527b9e34.js → index-28849c61.js} +4 -1
  241. package/dist/esm/{index-ae5421cc.js → index-2f7fde3d.js} +6 -6
  242. package/dist/esm/{index-9b0d46f4.js → index-6ad967f3.js} +11 -3
  243. package/dist/esm/{index-299c3a24.js → index-79b30591.js} +1 -1
  244. package/dist/esm/{index-a94537d9.js → index-cb21eccb.js} +4 -4
  245. package/dist/esm/{index-10f4ed65.js → index-e2cf2ceb.js} +2 -2
  246. package/dist/esm/{index-d312d755.js → index-efb8ecdf.js} +2 -2
  247. package/dist/esm/index.js +11 -11
  248. package/dist/esm/{input-shims-7761bb89.js → input-shims-2fd7c6ef.js} +5 -3
  249. package/dist/esm/{input.utils-005c974b.js → input.utils-961c9f17.js} +2 -2
  250. package/dist/esm/ion-accordion_2.entry.js +5 -5
  251. package/dist/esm/ion-action-sheet.entry.js +8 -8
  252. package/dist/esm/ion-alert.entry.js +8 -8
  253. package/dist/esm/ion-app_8.entry.js +18 -18
  254. package/dist/esm/ion-avatar_3.entry.js +3 -3
  255. package/dist/esm/ion-back-button.entry.js +4 -4
  256. package/dist/esm/ion-backdrop.entry.js +2 -2
  257. package/dist/esm/ion-breadcrumb_2.entry.js +4 -4
  258. package/dist/esm/ion-button_2.entry.js +4 -4
  259. package/dist/esm/ion-card_5.entry.js +3 -3
  260. package/dist/esm/ion-checkbox.entry.js +8 -7
  261. package/dist/esm/ion-chip.entry.js +2 -2
  262. package/dist/esm/ion-col_3.entry.js +3 -3
  263. package/dist/esm/ion-datetime-button.entry.js +5 -5
  264. package/dist/esm/ion-datetime_3.entry.js +13 -13
  265. package/dist/esm/ion-fab_3.entry.js +4 -4
  266. package/dist/esm/ion-img.entry.js +3 -3
  267. package/dist/esm/ion-infinite-scroll_2.entry.js +5 -5
  268. package/dist/esm/ion-input-password-toggle.entry.js +4 -4
  269. package/dist/esm/ion-input.entry.js +7 -7
  270. package/dist/esm/ion-item-option_3.entry.js +9 -9
  271. package/dist/esm/ion-item_8.entry.js +15 -15
  272. package/dist/esm/ion-loading.entry.js +9 -9
  273. package/dist/esm/ion-menu_3.entry.js +15 -15
  274. package/dist/esm/ion-modal.entry.js +267 -44
  275. package/dist/esm/ion-nav_2.entry.js +9 -9
  276. package/dist/esm/ion-picker-column-option.entry.js +5 -5
  277. package/dist/esm/ion-picker-column.entry.js +3 -3
  278. package/dist/esm/ion-picker.entry.js +2 -2
  279. package/dist/esm/ion-popover.entry.js +10 -10
  280. package/dist/esm/ion-progress-bar.entry.js +4 -4
  281. package/dist/esm/ion-radio_2.entry.js +42 -7
  282. package/dist/esm/ion-range.entry.js +8 -8
  283. package/dist/esm/ion-refresher_2.entry.js +8 -8
  284. package/dist/esm/ion-reorder_2.entry.js +8 -8
  285. package/dist/esm/ion-ripple-effect.entry.js +3 -3
  286. package/dist/esm/ion-route_4.entry.js +5 -5
  287. package/dist/esm/ion-searchbar.entry.js +8 -8
  288. package/dist/esm/ion-segment-content.entry.js +2 -2
  289. package/dist/esm/ion-segment-view.entry.js +3 -3
  290. package/dist/esm/ion-segment_2.entry.js +13 -44
  291. package/dist/esm/ion-select-modal.entry.js +8 -8
  292. package/dist/esm/ion-select_3.entry.js +25 -51
  293. package/dist/esm/ion-spinner.entry.js +3 -3
  294. package/dist/esm/ion-split-pane.entry.js +4 -4
  295. package/dist/esm/ion-tab-bar_2.entry.js +7 -7
  296. package/dist/esm/ion-tab_2.entry.js +6 -6
  297. package/dist/esm/ion-text.entry.js +4 -4
  298. package/dist/esm/ion-textarea.entry.js +8 -8
  299. package/dist/esm/ion-toast.entry.js +9 -9
  300. package/dist/esm/ion-toggle.entry.js +9 -8
  301. package/dist/esm/{ionic-global-33560a0a.js → ionic-global-c81d82ab.js} +12 -1
  302. package/dist/esm/ionic.js +5 -5
  303. package/dist/esm/{ios.transition-ee25fba4.js → ios.transition-b1da3753.js} +5 -5
  304. package/dist/esm/loader.js +5 -5
  305. package/dist/esm/{md.transition-76353fd3.js → md.transition-571b3859.js} +5 -5
  306. package/dist/esm/{notch-controller-b94a6b7b.js → notch-controller-55b09e11.js} +1 -1
  307. package/dist/esm/{overlays-87b6aa7c.js → overlays-5deab4de.js} +5 -5
  308. package/dist/esm/{status-tap-c5dd83b2.js → status-tap-79eac0ac.js} +5 -4
  309. package/dist/esm/{swipe-back-6e381b00.js → swipe-back-e5394307.js} +1 -1
  310. package/dist/esm-es5/app-globals-5dbb61a5.js +4 -0
  311. package/dist/esm-es5/{button-active-90f1dbc4.js → button-active-f6503382.js} +1 -1
  312. package/dist/esm-es5/{data-ae11fd43.js → data-b3284b5e.js} +1 -1
  313. package/dist/esm-es5/{framework-delegate-3e745cc0.js → framework-delegate-63d1a679.js} +1 -1
  314. package/dist/esm-es5/{hardware-back-button-d58e8ab6.js → hardware-back-button-06ef3c3e.js} +1 -1
  315. package/dist/esm-es5/helpers-da915de8.js +4 -0
  316. package/dist/esm-es5/index-28849c61.js +5 -0
  317. package/dist/esm-es5/{index-ae5421cc.js → index-2f7fde3d.js} +1 -1
  318. package/dist/esm-es5/index-6ad967f3.js +4 -0
  319. package/dist/esm-es5/{index-299c3a24.js → index-79b30591.js} +1 -1
  320. package/dist/esm-es5/{index-a94537d9.js → index-cb21eccb.js} +1 -1
  321. package/dist/esm-es5/{index-10f4ed65.js → index-e2cf2ceb.js} +1 -1
  322. package/dist/esm-es5/{index-d312d755.js → index-efb8ecdf.js} +1 -1
  323. package/dist/esm-es5/index.js +1 -1
  324. package/dist/esm-es5/input-shims-2fd7c6ef.js +4 -0
  325. package/dist/esm-es5/{input.utils-005c974b.js → input.utils-961c9f17.js} +1 -1
  326. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  327. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  328. package/dist/esm-es5/ion-alert.entry.js +1 -1
  329. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  330. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  331. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  332. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  333. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  334. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  335. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  336. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  337. package/dist/esm-es5/ion-chip.entry.js +1 -1
  338. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  339. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  340. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  341. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  342. package/dist/esm-es5/ion-img.entry.js +1 -1
  343. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  344. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  345. package/dist/esm-es5/ion-input.entry.js +1 -1
  346. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  347. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  348. package/dist/esm-es5/ion-loading.entry.js +1 -1
  349. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  350. package/dist/esm-es5/ion-modal.entry.js +1 -1
  351. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  352. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  353. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  354. package/dist/esm-es5/ion-picker.entry.js +1 -1
  355. package/dist/esm-es5/ion-popover.entry.js +1 -1
  356. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  357. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  358. package/dist/esm-es5/ion-range.entry.js +1 -1
  359. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  360. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  361. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  362. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  363. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  364. package/dist/esm-es5/ion-segment-content.entry.js +1 -1
  365. package/dist/esm-es5/ion-segment-view.entry.js +1 -1
  366. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  367. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  368. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  369. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  370. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  371. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  372. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  373. package/dist/esm-es5/ion-text.entry.js +1 -1
  374. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  375. package/dist/esm-es5/ion-toast.entry.js +1 -1
  376. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  377. package/dist/esm-es5/ionic-global-c81d82ab.js +4 -0
  378. package/dist/esm-es5/ionic.js +1 -1
  379. package/dist/esm-es5/{ios.transition-ee25fba4.js → ios.transition-b1da3753.js} +1 -1
  380. package/dist/esm-es5/loader.js +1 -1
  381. package/dist/esm-es5/md.transition-571b3859.js +4 -0
  382. package/dist/esm-es5/{notch-controller-b94a6b7b.js → notch-controller-55b09e11.js} +1 -1
  383. package/dist/esm-es5/{overlays-87b6aa7c.js → overlays-5deab4de.js} +1 -1
  384. package/dist/esm-es5/status-tap-79eac0ac.js +4 -0
  385. package/dist/esm-es5/{swipe-back-6e381b00.js → swipe-back-e5394307.js} +1 -1
  386. package/dist/html.html-data.json +24 -0
  387. package/dist/ionic/index.esm.js +1 -1
  388. package/dist/ionic/ionic.esm.js +1 -1
  389. package/dist/ionic/ionic.js +1 -1
  390. package/dist/ionic/{p-50eb95ba.system.entry.js → p-01186920.system.entry.js} +1 -1
  391. package/dist/ionic/{p-734de30f.system.entry.js → p-01af2109.system.entry.js} +1 -1
  392. package/dist/ionic/p-0574e87e.js +4 -0
  393. package/dist/ionic/{p-4bcc2581.system.entry.js → p-05b74e45.system.entry.js} +1 -1
  394. package/dist/ionic/p-081a4ce4.entry.js +4 -0
  395. package/dist/ionic/p-0af823e1.js +4 -0
  396. package/dist/ionic/p-0b7112fc.entry.js +4 -0
  397. package/dist/ionic/{p-07cf4028.system.js → p-0eb35a7f.system.js} +1 -1
  398. package/dist/ionic/{p-a9de8117.system.entry.js → p-0ef6abb0.system.entry.js} +1 -1
  399. package/dist/ionic/p-109cae7d.entry.js +4 -0
  400. package/dist/ionic/p-120fb79a.entry.js +4 -0
  401. package/dist/ionic/{p-037621ad.entry.js → p-15d18206.entry.js} +1 -1
  402. package/dist/ionic/{p-3711b93e.entry.js → p-15e76dd1.entry.js} +1 -1
  403. package/dist/ionic/{p-56358500.system.js → p-19ea7bff.system.js} +1 -1
  404. package/dist/ionic/{p-d60342e3.js → p-1a5bc5f7.js} +1 -1
  405. package/dist/ionic/{p-1828fde5.js → p-1ab13b2b.js} +1 -1
  406. package/dist/ionic/{p-fa8b0bbd.entry.js → p-1c934892.entry.js} +1 -1
  407. package/dist/ionic/{p-67f4233a.system.entry.js → p-1e67b266.system.entry.js} +1 -1
  408. package/dist/ionic/{p-6724b6ce.entry.js → p-1e6d7da3.entry.js} +1 -1
  409. package/dist/ionic/{p-32be7b07.system.js → p-1e955a45.system.js} +1 -1
  410. package/dist/ionic/{p-1fa70a4d.system.entry.js → p-1fbc571c.system.entry.js} +1 -1
  411. package/dist/ionic/{p-37344c74.system.entry.js → p-2346ab53.system.entry.js} +2 -2
  412. package/dist/ionic/{p-82028789.system.entry.js → p-248318e0.system.entry.js} +1 -1
  413. package/dist/ionic/p-25180df3.system.js +5 -0
  414. package/dist/ionic/{p-c9f32d38.entry.js → p-27d29df8.entry.js} +1 -1
  415. package/dist/ionic/{p-e9336870.js → p-28706c6f.js} +1 -1
  416. package/dist/ionic/p-2b048a95.system.entry.js +4 -0
  417. package/dist/ionic/{p-2fa83e88.entry.js → p-2d1d8a25.entry.js} +1 -1
  418. package/dist/ionic/{p-ced5d9b6.system.entry.js → p-31c37f38.system.entry.js} +1 -1
  419. package/dist/ionic/p-322c5fb4.system.js +4 -0
  420. package/dist/ionic/{p-7341f38d.entry.js → p-33a8a71b.entry.js} +1 -1
  421. package/dist/ionic/{p-71235698.system.entry.js → p-33c9f005.system.entry.js} +2 -2
  422. package/dist/ionic/{p-f687573e.system.js → p-343b6b1d.system.js} +1 -1
  423. package/dist/ionic/{p-fb4ae485.js → p-34b11c24.js} +1 -1
  424. package/dist/ionic/{p-a4866e3e.system.js → p-372ae7f4.system.js} +1 -1
  425. package/dist/ionic/{p-741f94fe.system.entry.js → p-37495da1.system.entry.js} +1 -1
  426. package/dist/ionic/{p-ca27d793.system.entry.js → p-39164acf.system.entry.js} +1 -1
  427. package/dist/ionic/p-3ad285e3.system.js +4 -0
  428. package/dist/ionic/{p-c23b3d05.entry.js → p-3b33b7d3.entry.js} +1 -1
  429. package/dist/ionic/{p-f99425b1.system.js → p-3c8e5c23.system.js} +1 -1
  430. package/dist/ionic/{p-9f85d4b1.js → p-3cc276f4.js} +1 -1
  431. package/dist/ionic/p-3e6be709.entry.js +4 -0
  432. package/dist/ionic/{p-a9740e59.entry.js → p-40b5455f.entry.js} +1 -1
  433. package/dist/ionic/{p-9e5d5e43.entry.js → p-4b4f4a4c.entry.js} +1 -1
  434. package/dist/ionic/p-4c2d5b80.system.js +4 -0
  435. package/dist/ionic/p-4c98e2cf.system.js +4 -0
  436. package/dist/ionic/p-4e6a6eca.entry.js +4 -0
  437. package/dist/ionic/{p-5f8c7f64.entry.js → p-51030d96.entry.js} +1 -1
  438. package/dist/ionic/{p-93ee5b02.entry.js → p-52d7a191.entry.js} +1 -1
  439. package/dist/ionic/{p-86189afd.system.entry.js → p-542a569d.system.entry.js} +1 -1
  440. package/dist/ionic/{p-2be04f09.system.entry.js → p-55d16109.system.entry.js} +1 -1
  441. package/dist/ionic/{p-685e9613.system.entry.js → p-58d5df0c.system.entry.js} +1 -1
  442. package/dist/ionic/{p-09aa088e.system.js → p-5c08627a.system.js} +1 -1
  443. package/dist/ionic/{p-c8c27ae7.system.entry.js → p-5cc9314d.system.entry.js} +1 -1
  444. package/dist/ionic/{p-ed1a1717.system.entry.js → p-5d0c6c4d.system.entry.js} +1 -1
  445. package/dist/ionic/{p-17088ca0.entry.js → p-5d93d251.entry.js} +1 -1
  446. package/dist/ionic/{p-db8a02a0.system.entry.js → p-5e0df4c8.system.entry.js} +1 -1
  447. package/dist/ionic/{p-67d24f70.system.entry.js → p-5fce0c0b.system.entry.js} +1 -1
  448. package/dist/ionic/{p-6b0c686e.system.entry.js → p-62f648c8.system.entry.js} +1 -1
  449. package/dist/ionic/{p-64c76f26.system.entry.js → p-63b0abde.system.entry.js} +1 -1
  450. package/dist/ionic/p-67222c16.system.js +4 -0
  451. package/dist/ionic/{p-21891ead.js → p-69066a53.js} +1 -1
  452. package/dist/ionic/p-6c95736e.entry.js +4 -0
  453. package/dist/ionic/p-71c9d1fe.entry.js +4 -0
  454. package/dist/ionic/{p-9dfcac21.js → p-72812e99.js} +1 -1
  455. package/dist/ionic/{p-5faf0879.js → p-72bc8a1c.js} +1 -1
  456. package/dist/ionic/{p-81a4c94d.system.entry.js → p-744b2484.system.entry.js} +1 -1
  457. package/dist/ionic/p-7513b0c4.js +4 -0
  458. package/dist/ionic/{p-4ea83104.entry.js → p-7895d719.entry.js} +1 -1
  459. package/dist/ionic/{p-22336c85.entry.js → p-7a6eaf9e.entry.js} +1 -1
  460. package/dist/ionic/p-7af3d1e8.system.entry.js +4 -0
  461. package/dist/ionic/p-7b9a2b23.entry.js +4 -0
  462. package/dist/ionic/{p-57de65cb.system.js → p-7de1e42c.system.js} +1 -1
  463. package/dist/ionic/{p-5216f047.system.entry.js → p-7ed1657c.system.entry.js} +1 -1
  464. package/dist/ionic/{p-caafaec4.system.js → p-8635f5e6.system.js} +1 -1
  465. package/dist/ionic/p-870ae33b.system.entry.js +4 -0
  466. package/dist/ionic/p-87479c71.entry.js +4 -0
  467. package/dist/ionic/{p-b42d475d.entry.js → p-89bf08c7.entry.js} +1 -1
  468. package/dist/ionic/{p-2bc0c8cf.entry.js → p-89cc9270.entry.js} +1 -1
  469. package/dist/ionic/{p-e5a3b38b.system.entry.js → p-8ac07653.system.entry.js} +2 -2
  470. package/dist/ionic/{p-43fe4853.system.entry.js → p-8cfba7e9.system.entry.js} +1 -1
  471. package/dist/ionic/p-8e35b472.entry.js +4 -0
  472. package/dist/ionic/p-8e5dbf2b.entry.js +4 -0
  473. package/dist/ionic/p-8f4361a8.system.entry.js +4 -0
  474. package/dist/ionic/p-9135153b.entry.js +4 -0
  475. package/dist/ionic/p-922daa9f.entry.js +4 -0
  476. package/dist/ionic/{p-f4af839e.system.entry.js → p-933727f9.system.entry.js} +1 -1
  477. package/dist/ionic/p-9343a445.js +4 -0
  478. package/dist/ionic/{p-f0e14400.entry.js → p-948e6c6a.entry.js} +1 -1
  479. package/dist/ionic/{p-a0a5c0db.system.entry.js → p-985a7e17.system.entry.js} +1 -1
  480. package/dist/ionic/p-9f3008d4.system.js +4 -0
  481. package/dist/ionic/{p-68327266.system.entry.js → p-a090bce8.system.entry.js} +1 -1
  482. package/dist/ionic/{p-1fed4470.system.js → p-a15ddedb.system.js} +1 -1
  483. package/dist/ionic/{p-87570c71.system.entry.js → p-a3a1d721.system.entry.js} +1 -1
  484. package/dist/ionic/p-a3db8ee3.js +4 -0
  485. package/dist/ionic/{p-e4cc4565.system.entry.js → p-a4a2420e.system.entry.js} +1 -1
  486. package/dist/ionic/p-a69b9fc5.system.js +4 -0
  487. package/dist/ionic/{p-d1410529.system.js → p-a88dec0d.system.js} +2 -2
  488. package/dist/ionic/p-a8f2c254.entry.js +4 -0
  489. package/dist/ionic/{p-9bcc9444.entry.js → p-abf549eb.entry.js} +1 -1
  490. package/dist/ionic/{p-89d3401f.system.js → p-ada36597.system.js} +1 -1
  491. package/dist/ionic/{p-ad4cca47.system.entry.js → p-b0c7b12b.system.entry.js} +1 -1
  492. package/dist/ionic/{p-fae7cdef.entry.js → p-b1eb86fd.entry.js} +1 -1
  493. package/dist/ionic/{p-ecc26ede.entry.js → p-b1f885df.entry.js} +1 -1
  494. package/dist/ionic/{p-3a993e5c.system.js → p-b3c60433.system.js} +1 -1
  495. package/dist/ionic/p-b51e4004.js +4 -0
  496. package/dist/ionic/{p-37c85d40.js → p-b6efeab8.js} +1 -1
  497. package/dist/ionic/{p-e9cd554c.system.entry.js → p-b7329612.system.entry.js} +1 -1
  498. package/dist/ionic/p-b9d7015f.entry.js +4 -0
  499. package/dist/ionic/p-ba3f918e.entry.js +4 -0
  500. package/dist/ionic/{p-82acef74.system.entry.js → p-bc68c7cf.system.entry.js} +1 -1
  501. package/dist/ionic/{p-e80fc48f.entry.js → p-bd5f29ea.entry.js} +1 -1
  502. package/dist/ionic/{p-841c4879.entry.js → p-bdad26e3.entry.js} +1 -1
  503. package/dist/ionic/{p-6752a057.entry.js → p-bf63d4b2.entry.js} +1 -1
  504. package/dist/ionic/{p-48e13c51.entry.js → p-c41ac815.entry.js} +1 -1
  505. package/dist/ionic/{p-7d2357da.system.js → p-c4238c12.system.js} +1 -1
  506. package/dist/ionic/{p-235edda0.entry.js → p-c4d86289.entry.js} +1 -1
  507. package/dist/ionic/{p-b480d2b1.entry.js → p-c51dc7fe.entry.js} +1 -1
  508. package/dist/ionic/{p-b22a0644.system.entry.js → p-c7ab2908.system.entry.js} +1 -1
  509. package/dist/ionic/{p-135d546a.system.entry.js → p-cac0e0b3.system.entry.js} +1 -1
  510. package/dist/ionic/p-cb13696c.js +4 -0
  511. package/dist/ionic/{p-0892f0a1.system.entry.js → p-cb6954d4.system.entry.js} +1 -1
  512. package/dist/ionic/{p-bdcfdf25.system.entry.js → p-cd7ffa67.system.entry.js} +1 -1
  513. package/dist/ionic/p-d1c5b60e.system.js +4 -0
  514. package/dist/ionic/{p-e4c8444f.system.entry.js → p-d2203d60.system.entry.js} +1 -1
  515. package/dist/ionic/{p-4ba8de87.system.js → p-d22e2a38.system.js} +1 -1
  516. package/dist/ionic/{p-06260d68.system.entry.js → p-d341d412.system.entry.js} +1 -1
  517. package/dist/ionic/{p-ff861eb0.js → p-d743e981.js} +1 -1
  518. package/dist/ionic/{p-d7e6cd7e.entry.js → p-d7aa6b00.entry.js} +1 -1
  519. package/dist/ionic/p-d836d43e.js +5 -0
  520. package/dist/ionic/{p-84746494.system.entry.js → p-d8d15f9b.system.entry.js} +2 -2
  521. package/dist/ionic/{p-e6200d13.js → p-da2b833b.js} +1 -1
  522. package/dist/ionic/p-da7e1bc4.entry.js +4 -0
  523. package/dist/ionic/{p-80a4f5a4.system.entry.js → p-e09d6392.system.entry.js} +1 -1
  524. package/dist/ionic/{p-e78844bd.system.entry.js → p-e0a6dc45.system.entry.js} +1 -1
  525. package/dist/ionic/{p-695c3921.entry.js → p-e75295c8.entry.js} +1 -1
  526. package/dist/ionic/p-e76dae93.entry.js +4 -0
  527. package/dist/ionic/p-e8d56122.js +4 -0
  528. package/dist/ionic/{p-d7811e30.system.entry.js → p-e9ddf8fe.system.entry.js} +1 -1
  529. package/dist/ionic/{p-8f6d68b7.js → p-ecceeb90.js} +1 -1
  530. package/dist/ionic/p-f1c4dcd4.js +4 -0
  531. package/dist/ionic/{p-4cfb0dc8.entry.js → p-f2a72b24.entry.js} +1 -1
  532. package/dist/ionic/{p-f93eb347.system.entry.js → p-f3102647.system.entry.js} +1 -1
  533. package/dist/ionic/{p-e31c0092.system.entry.js → p-f658c74e.system.entry.js} +1 -1
  534. package/dist/ionic/{p-2664778b.system.entry.js → p-f8e37d24.system.entry.js} +1 -1
  535. package/dist/ionic/{p-7b091122.entry.js → p-f907406b.entry.js} +1 -1
  536. package/dist/ionic/{p-fd01cb8a.system.entry.js → p-fd4e25b5.system.entry.js} +1 -1
  537. package/dist/ionic/{p-644cfb0d.entry.js → p-fd6cff12.entry.js} +1 -1
  538. package/dist/ionic/svg/accessibility-outline.svg +1 -1
  539. package/dist/ionic/svg/accessibility-sharp.svg +1 -1
  540. package/dist/ionic/svg/accessibility.svg +1 -1
  541. package/dist/ionic/svg/bag-add-outline.svg +1 -1
  542. package/dist/ionic/svg/bag-add-sharp.svg +1 -1
  543. package/dist/ionic/svg/bag-add.svg +1 -1
  544. package/dist/ionic/svg/bag-check-outline.svg +1 -1
  545. package/dist/ionic/svg/bag-check-sharp.svg +1 -1
  546. package/dist/ionic/svg/bag-check.svg +1 -1
  547. package/dist/ionic/svg/bag-handle-outline.svg +1 -1
  548. package/dist/ionic/svg/bag-handle-sharp.svg +1 -1
  549. package/dist/ionic/svg/bag-handle.svg +1 -1
  550. package/dist/ionic/svg/bag-outline.svg +1 -1
  551. package/dist/ionic/svg/bag-remove-outline.svg +1 -1
  552. package/dist/ionic/svg/bag-remove-sharp.svg +1 -1
  553. package/dist/ionic/svg/bag-remove.svg +1 -1
  554. package/dist/ionic/svg/bag-sharp.svg +1 -1
  555. package/dist/ionic/svg/bag.svg +1 -1
  556. package/dist/ionic/svg/balloon-outline.svg +1 -1
  557. package/dist/ionic/svg/balloon-sharp.svg +1 -1
  558. package/dist/ionic/svg/balloon.svg +1 -1
  559. package/dist/ionic/svg/ban-outline.svg +1 -1
  560. package/dist/ionic/svg/ban-sharp.svg +1 -1
  561. package/dist/ionic/svg/ban.svg +1 -1
  562. package/dist/ionic/svg/body-outline.svg +1 -1
  563. package/dist/ionic/svg/bowling-ball-outline.svg +1 -1
  564. package/dist/ionic/svg/bowling-ball-sharp.svg +1 -1
  565. package/dist/ionic/svg/bowling-ball.svg +1 -1
  566. package/dist/ionic/svg/calendar-clear-outline.svg +1 -1
  567. package/dist/ionic/svg/calendar-clear-sharp.svg +1 -1
  568. package/dist/ionic/svg/calendar-clear.svg +1 -1
  569. package/dist/ionic/svg/calendar-number-outline.svg +1 -1
  570. package/dist/ionic/svg/calendar-number-sharp.svg +1 -1
  571. package/dist/ionic/svg/calendar-number.svg +1 -1
  572. package/dist/ionic/svg/calendar-outline.svg +1 -1
  573. package/dist/ionic/svg/calendar-sharp.svg +1 -1
  574. package/dist/ionic/svg/calendar.svg +1 -1
  575. package/dist/ionic/svg/chevron-collapse-outline.svg +1 -1
  576. package/dist/ionic/svg/chevron-collapse-sharp.svg +1 -1
  577. package/dist/ionic/svg/chevron-collapse.svg +1 -1
  578. package/dist/ionic/svg/chevron-expand-outline.svg +1 -1
  579. package/dist/ionic/svg/chevron-expand-sharp.svg +1 -1
  580. package/dist/ionic/svg/chevron-expand.svg +1 -1
  581. package/dist/ionic/svg/color-wand-outline.svg +1 -1
  582. package/dist/ionic/svg/color-wand.svg +1 -1
  583. package/dist/ionic/svg/diamond-outline.svg +1 -1
  584. package/dist/ionic/svg/diamond-sharp.svg +1 -1
  585. package/dist/ionic/svg/diamond.svg +1 -1
  586. package/dist/ionic/svg/dice-outline.svg +1 -1
  587. package/dist/ionic/svg/dice-sharp.svg +1 -1
  588. package/dist/ionic/svg/dice.svg +1 -1
  589. package/dist/ionic/svg/document-lock-outline.svg +1 -1
  590. package/dist/ionic/svg/document-lock-sharp.svg +1 -1
  591. package/dist/ionic/svg/document-lock.svg +1 -1
  592. package/dist/ionic/svg/extension-puzzle-outline.svg +1 -1
  593. package/dist/ionic/svg/extension-puzzle-sharp.svg +1 -1
  594. package/dist/ionic/svg/extension-puzzle.svg +1 -1
  595. package/dist/ionic/svg/filter-circle-outline.svg +1 -1
  596. package/dist/ionic/svg/filter-circle-sharp.svg +1 -1
  597. package/dist/ionic/svg/filter-circle.svg +1 -1
  598. package/dist/ionic/svg/fish-outline.svg +1 -1
  599. package/dist/ionic/svg/fish-sharp.svg +1 -1
  600. package/dist/ionic/svg/fish.svg +1 -1
  601. package/dist/ionic/svg/footsteps-outline.svg +1 -1
  602. package/dist/ionic/svg/footsteps-sharp.svg +1 -1
  603. package/dist/ionic/svg/footsteps.svg +1 -1
  604. package/dist/ionic/svg/id-card-outline.svg +1 -1
  605. package/dist/ionic/svg/id-card-sharp.svg +1 -1
  606. package/dist/ionic/svg/id-card.svg +1 -1
  607. package/dist/ionic/svg/invert-mode-outline.svg +1 -1
  608. package/dist/ionic/svg/invert-mode-sharp.svg +1 -1
  609. package/dist/ionic/svg/invert-mode.svg +1 -1
  610. package/dist/ionic/svg/logo-alipay.svg +1 -1
  611. package/dist/ionic/svg/logo-android.svg +1 -1
  612. package/dist/ionic/svg/logo-apple-ar.svg +1 -1
  613. package/dist/ionic/svg/logo-behance.svg +1 -1
  614. package/dist/ionic/svg/logo-bitbucket.svg +1 -1
  615. package/dist/ionic/svg/logo-deviantart.svg +1 -1
  616. package/dist/ionic/svg/logo-discord.svg +1 -1
  617. package/dist/ionic/svg/logo-docker.svg +1 -1
  618. package/dist/ionic/svg/logo-edge.svg +1 -1
  619. package/dist/ionic/svg/logo-facebook.svg +1 -1
  620. package/dist/ionic/svg/logo-figma.svg +1 -1
  621. package/dist/ionic/svg/logo-firebase.svg +1 -1
  622. package/dist/ionic/svg/logo-gitlab.svg +1 -1
  623. package/dist/ionic/svg/logo-ionic.svg +1 -1
  624. package/dist/ionic/svg/logo-mastodon.svg +1 -1
  625. package/dist/ionic/svg/logo-medium.svg +1 -1
  626. package/dist/ionic/svg/logo-microsoft.svg +1 -1
  627. package/dist/ionic/svg/logo-npm.svg +1 -1
  628. package/dist/ionic/svg/logo-paypal.svg +1 -1
  629. package/dist/ionic/svg/logo-soundcloud.svg +1 -1
  630. package/dist/ionic/svg/logo-tableau.svg +1 -1
  631. package/dist/ionic/svg/logo-tiktok.svg +1 -1
  632. package/dist/ionic/svg/logo-venmo.svg +1 -1
  633. package/dist/ionic/svg/logo-vercel.svg +1 -1
  634. package/dist/ionic/svg/logo-wechat.svg +1 -1
  635. package/dist/ionic/svg/logo-yahoo.svg +1 -1
  636. package/dist/ionic/svg/prism-outline.svg +1 -1
  637. package/dist/ionic/svg/prism-sharp.svg +1 -1
  638. package/dist/ionic/svg/prism.svg +1 -1
  639. package/dist/ionic/svg/scale-outline.svg +1 -1
  640. package/dist/ionic/svg/scale-sharp.svg +1 -1
  641. package/dist/ionic/svg/scale.svg +1 -1
  642. package/dist/ionic/svg/server-outline.svg +1 -1
  643. package/dist/ionic/svg/server-sharp.svg +1 -1
  644. package/dist/ionic/svg/server.svg +1 -1
  645. package/dist/ionic/svg/shield-half-outline.svg +1 -1
  646. package/dist/ionic/svg/shield-half-sharp.svg +1 -1
  647. package/dist/ionic/svg/shield-half.svg +1 -1
  648. package/dist/ionic/svg/sparkles-outline.svg +1 -1
  649. package/dist/ionic/svg/sparkles-sharp.svg +1 -1
  650. package/dist/ionic/svg/sparkles.svg +1 -1
  651. package/dist/ionic/svg/storefront-outline.svg +1 -1
  652. package/dist/ionic/svg/storefront-sharp.svg +1 -1
  653. package/dist/ionic/svg/storefront.svg +1 -1
  654. package/dist/ionic/svg/telescope-outline.svg +1 -1
  655. package/dist/ionic/svg/telescope-sharp.svg +1 -1
  656. package/dist/ionic/svg/telescope.svg +1 -1
  657. package/dist/ionic/svg/ticket-outline.svg +1 -1
  658. package/dist/ionic/svg/ticket-sharp.svg +1 -1
  659. package/dist/ionic/svg/ticket.svg +1 -1
  660. package/dist/ionic/svg/today-outline.svg +1 -1
  661. package/dist/ionic/svg/today-sharp.svg +1 -1
  662. package/dist/ionic/svg/today.svg +1 -1
  663. package/dist/ionic/svg/unlink-outline.svg +1 -1
  664. package/dist/ionic/svg/unlink-sharp.svg +1 -1
  665. package/dist/ionic/svg/unlink.svg +1 -1
  666. package/dist/ionic/svg/videocam-off-outline.svg +1 -1
  667. package/dist/ionic/svg/videocam-off-sharp.svg +1 -1
  668. package/dist/ionic/svg/videocam-off.svg +1 -1
  669. package/dist/ionic/svg/wifi-outline.svg +1 -1
  670. package/dist/ionic/svg/wifi-sharp.svg +1 -1
  671. package/dist/ionic/svg/wifi.svg +1 -1
  672. package/dist/types/components/checkbox/checkbox.d.ts +6 -0
  673. package/dist/types/components/modal/animations/sheet.d.ts +1 -0
  674. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  675. package/dist/types/components/modal/modal-interface.d.ts +1 -0
  676. package/dist/types/components/modal/modal.d.ts +11 -0
  677. package/dist/types/components/radio-group/radio-group.d.ts +15 -0
  678. package/dist/types/components/segment-button/segment-button.d.ts +1 -2
  679. package/dist/types/components/select/select.d.ts +6 -0
  680. package/dist/types/components/toggle/toggle.d.ts +6 -0
  681. package/dist/types/components/toolbar/toolbar.d.ts +4 -0
  682. package/dist/types/components.d.ts +48 -0
  683. package/dist/types/utils/config.d.ts +12 -0
  684. package/dist/types/utils/helpers.d.ts +0 -1
  685. package/dist/types/utils/logging/index.d.ts +13 -1
  686. package/hydrate/index.js +458 -221
  687. package/hydrate/index.mjs +458 -221
  688. package/package.json +5 -5
  689. package/dist/esm-es5/app-globals-0aadb3a9.js +0 -4
  690. package/dist/esm-es5/helpers-16b36a2b.js +0 -4
  691. package/dist/esm-es5/index-527b9e34.js +0 -5
  692. package/dist/esm-es5/index-9b0d46f4.js +0 -4
  693. package/dist/esm-es5/input-shims-7761bb89.js +0 -4
  694. package/dist/esm-es5/ionic-global-33560a0a.js +0 -4
  695. package/dist/esm-es5/md.transition-76353fd3.js +0 -4
  696. package/dist/esm-es5/status-tap-c5dd83b2.js +0 -4
  697. package/dist/ionic/p-0612c7c3.entry.js +0 -4
  698. package/dist/ionic/p-06fee233.js +0 -4
  699. package/dist/ionic/p-0a47a1fb.entry.js +0 -4
  700. package/dist/ionic/p-0caec68d.entry.js +0 -4
  701. package/dist/ionic/p-14e6a33e.entry.js +0 -4
  702. package/dist/ionic/p-1fadb8b9.js +0 -4
  703. package/dist/ionic/p-248ff024.system.js +0 -4
  704. package/dist/ionic/p-32ab7c59.entry.js +0 -4
  705. package/dist/ionic/p-39f6077e.js +0 -4
  706. package/dist/ionic/p-41dc2b36.system.js +0 -4
  707. package/dist/ionic/p-5406a48a.system.entry.js +0 -4
  708. package/dist/ionic/p-5430a6da.entry.js +0 -4
  709. package/dist/ionic/p-5b73e74c.js +0 -4
  710. package/dist/ionic/p-60666514.entry.js +0 -4
  711. package/dist/ionic/p-61153ec9.entry.js +0 -4
  712. package/dist/ionic/p-637c868c.entry.js +0 -4
  713. package/dist/ionic/p-66a5d6a8.js +0 -5
  714. package/dist/ionic/p-6d969696.system.js +0 -4
  715. package/dist/ionic/p-71062ade.system.js +0 -4
  716. package/dist/ionic/p-73d6a80d.entry.js +0 -4
  717. package/dist/ionic/p-75098ab5.system.js +0 -4
  718. package/dist/ionic/p-8fdfd686.system.entry.js +0 -4
  719. package/dist/ionic/p-93ce49e8.entry.js +0 -4
  720. package/dist/ionic/p-a25c4e5d.js +0 -4
  721. package/dist/ionic/p-a8a9c283.system.js +0 -4
  722. package/dist/ionic/p-b28ea018.entry.js +0 -4
  723. package/dist/ionic/p-bd92a627.system.js +0 -4
  724. package/dist/ionic/p-be685cdb.entry.js +0 -4
  725. package/dist/ionic/p-bfe78c18.entry.js +0 -4
  726. package/dist/ionic/p-c566c4ac.js +0 -4
  727. package/dist/ionic/p-c98f1186.entry.js +0 -4
  728. package/dist/ionic/p-d6251c7e.system.entry.js +0 -4
  729. package/dist/ionic/p-dbac4f3e.system.entry.js +0 -4
  730. package/dist/ionic/p-e13a0a45.entry.js +0 -4
  731. package/dist/ionic/p-e530e6e3.entry.js +0 -4
  732. package/dist/ionic/p-e6e2ff13.entry.js +0 -4
  733. package/dist/ionic/p-ece761b3.js +0 -4
  734. package/dist/ionic/p-f11a9436.system.js +0 -5
  735. package/dist/ionic/p-f70935ed.js +0 -4
  736. package/dist/ionic/p-fd579866.js +0 -4
  737. package/dist/ionic/p-ff4b7e40.system.js +0 -4
  738. package/dist/ionic/p-ff57f33a.entry.js +0 -4
  739. package/dist/ionic/svg/arrow-down-left-box-outline.svg +0 -1
  740. package/dist/ionic/svg/arrow-down-left-box-sharp.svg +0 -1
  741. package/dist/ionic/svg/arrow-down-left-box.svg +0 -1
  742. package/dist/ionic/svg/arrow-down-right-box-outline.svg +0 -1
  743. package/dist/ionic/svg/arrow-down-right-box-sharp.svg +0 -1
  744. package/dist/ionic/svg/arrow-down-right-box.svg +0 -1
  745. package/dist/ionic/svg/arrow-up-left-box-outline.svg +0 -1
  746. package/dist/ionic/svg/arrow-up-left-box-sharp.svg +0 -1
  747. package/dist/ionic/svg/arrow-up-left-box.svg +0 -1
  748. package/dist/ionic/svg/arrow-up-right-box-outline.svg +0 -1
  749. package/dist/ionic/svg/arrow-up-right-box-sharp.svg +0 -1
  750. package/dist/ionic/svg/arrow-up-right-box.svg +0 -1
  751. package/dist/ionic/svg/binoculars-outline.svg +0 -1
  752. package/dist/ionic/svg/binoculars-sharp.svg +0 -1
  753. package/dist/ionic/svg/binoculars.svg +0 -1
  754. package/dist/ionic/svg/logo-appflow.svg +0 -1
  755. package/dist/ionic/svg/logo-trapeze.svg +0 -1
  756. package/dist/ionic/svg/logo-x.svg +0 -1
@@ -58,6 +58,7 @@ export class Checkbox {
58
58
  this.labelPlacement = 'start';
59
59
  this.justify = undefined;
60
60
  this.alignment = undefined;
61
+ this.required = false;
61
62
  }
62
63
  componentWillLoad() {
63
64
  this.inheritedAttributes = Object.assign({}, inheritAriaAttributes(this.el));
@@ -69,11 +70,11 @@ export class Checkbox {
69
70
  }
70
71
  }
71
72
  render() {
72
- const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment, } = this;
73
+ const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment, required, } = this;
73
74
  const mode = getIonMode(this);
74
75
  const path = getSVGPath(mode, indeterminate);
75
76
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
76
- return (h(Host, { key: '6dc787e1100521d08c4900104e1a3e2f594e919f', "aria-checked": indeterminate ? 'mixed' : `${checked}`, class: createColorClasses(color, {
77
+ return (h(Host, { key: '07a5884062dd256b570e856270c74a5a09d2f2a5', "aria-checked": indeterminate ? 'mixed' : `${checked}`, class: createColorClasses(color, {
77
78
  [mode]: true,
78
79
  'in-item': hostContext('ion-item', el),
79
80
  'checkbox-checked': checked,
@@ -83,10 +84,10 @@ export class Checkbox {
83
84
  [`checkbox-justify-${justify}`]: justify !== undefined,
84
85
  [`checkbox-alignment-${alignment}`]: alignment !== undefined,
85
86
  [`checkbox-label-placement-${labelPlacement}`]: true,
86
- }), onClick: this.onClick }, h("label", { key: '68222fb736a5ec3f2e488649b0e2ce0417dcb224', class: "checkbox-wrapper" }, h("input", Object.assign({ key: 'f12962d7e9b19c744cfdbdeccc67ae7f5d080281', type: "checkbox", checked: checked ? true : undefined, disabled: disabled, id: inputId, onChange: this.toggleChecked, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl) }, inheritedAttributes)), h("div", { key: 'c72df2699414b1e5a41a1bc267bc634f0c93dcff', class: {
87
+ }), onClick: this.onClick }, h("label", { key: '3439d546e8b60187421db698eab63a0bdd31c973', class: "checkbox-wrapper" }, h("input", Object.assign({ key: '9f45cf7dbdedcf01ec132c11e16979adb1aa102f', type: "checkbox", checked: checked ? true : undefined, disabled: disabled, id: inputId, onChange: this.toggleChecked, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl), required: required }, inheritedAttributes)), h("div", { key: '4e882f98939cc4b7c7ab7459c751d3f4bb2023fe', class: {
87
88
  'label-text-wrapper': true,
88
89
  'label-text-wrapper-hidden': el.textContent === '',
89
- }, part: "label" }, h("slot", { key: 'a2a80285178a7e0e3b536fc9ca26b8b444aa4307' })), h("div", { key: 'c2b05e0d1fe8df5dcd72858220b5ff51ecaee4cc', class: "native-wrapper" }, h("svg", { key: 'ee24913fded72258ebd9713654a6dba92a18fcf7', class: "checkbox-icon", viewBox: "0 0 24 24", part: "container" }, path)))));
90
+ }, part: "label" }, h("slot", { key: '0abda81297a086d02c4a56af75005547971dfcfe' })), h("div", { key: '36489ea3f48a7d0ec46b77c243f9f253ef5c2b3b', class: "native-wrapper" }, h("svg", { key: '4c53b52f5e93752672a34eb6f180b75fa9af9046', class: "checkbox-icon", viewBox: "0 0 24 24", part: "container" }, path)))));
90
91
  }
91
92
  getSVGPath(mode, indeterminate) {
92
93
  let path = indeterminate ? (h("path", { d: "M6 12L18 12", part: "mark" })) : (h("path", { d: "M5.9,12.5l3.8,3.8l8.8-8.8", part: "mark" }));
@@ -275,6 +276,24 @@ export class Checkbox {
275
276
  },
276
277
  "attribute": "alignment",
277
278
  "reflect": false
279
+ },
280
+ "required": {
281
+ "type": "boolean",
282
+ "mutable": false,
283
+ "complexType": {
284
+ "original": "boolean",
285
+ "resolved": "boolean",
286
+ "references": {}
287
+ },
288
+ "required": false,
289
+ "optional": false,
290
+ "docs": {
291
+ "tags": [],
292
+ "text": "If true, screen readers will announce it as a required field. This property\nworks only for accessibility purposes, it will not prevent the form from\nsubmitting if the value is invalid."
293
+ },
294
+ "attribute": "required",
295
+ "reflect": false,
296
+ "defaultValue": "false"
278
297
  }
279
298
  };
280
299
  }
@@ -18,11 +18,11 @@ export class ItemDivider {
18
18
  }
19
19
  render() {
20
20
  const mode = getIonMode(this);
21
- return (h(Host, { key: '6cff318230a9b2a9db529df154285d3dd9822efe', class: createColorClasses(this.color, {
21
+ return (h(Host, { key: '7150b1a3a881c3c312db40821acb9830c2885ccf', class: createColorClasses(this.color, {
22
22
  [mode]: true,
23
23
  'item-divider-sticky': this.sticky,
24
24
  item: true,
25
- }) }, h("slot", { key: 'eb50dfab74ab0fd13697db17ecd60e8fa0bf1750', name: "start" }), h("div", { key: '2806efd89d086f4fb844a479d9c095e1e0775713', class: "item-divider-inner" }, h("div", { key: '77b7d5fa987e5f1c26d8023cd1f974a8a263a3de', class: "item-divider-wrapper" }, h("slot", { key: 'dbafb0deb140a19a2a9748fd5b48760c39c6fd2e' })), h("slot", { key: 'ef9a848fe21e84ef21cd273b8a4d9f95f558175b', name: "end" }))));
25
+ }) }, h("slot", { key: '6e9d9615f475392a81177bc49b4b01dbdab67925', name: "start" }), h("div", { key: '12fe6b840ad1a1897cc34529e488207b2df448f7', class: "item-divider-inner" }, h("div", { key: '626776a8c9887dd2df5ecf3b7861beb742b41e03', class: "item-divider-wrapper" }, h("slot", { key: '90379dd99914e24ae45c9571c8d390f9b6622fd4' })), h("slot", { key: '105644332c08530155b9cd8e8c6fa9e332072a63', name: "end" }))));
26
26
  }
27
27
  static get is() { return "ion-item-divider"; }
28
28
  static get encapsulation() { return "shadow"; }
@@ -6,7 +6,7 @@ import { getIonMode } from "../../global/ionic-global";
6
6
  export class ItemGroup {
7
7
  render() {
8
8
  const mode = getIonMode(this);
9
- return (h(Host, { key: 'f9ffe0290d3fa546494fe55f952d8554f2a8abf8', role: "group", class: {
9
+ return (h(Host, { key: 'de2a969ed0dda880bc560a325848b28d0287fdb9', role: "group", class: {
10
10
  [mode]: true,
11
11
  // Used internally for styling
12
12
  [`item-group-${mode}`]: true,
@@ -44,12 +44,12 @@ export class ItemOption {
44
44
  href: this.href,
45
45
  target: this.target,
46
46
  };
47
- return (h(Host, { key: '89310624997821858c1abde60c0ffb142ca466e0', onClick: this.onClick, class: createColorClasses(this.color, {
47
+ return (h(Host, { key: '1b7708dd178dc2c9280652ca3da38c84ba7b767f', onClick: this.onClick, class: createColorClasses(this.color, {
48
48
  [mode]: true,
49
49
  'item-option-disabled': disabled,
50
50
  'item-option-expandable': expandable,
51
51
  'ion-activatable': true,
52
- }) }, h(TagType, Object.assign({ key: 'e4dfbb3048eed03a7f7e84c6f75545e0ca9b45fb' }, attrs, { class: "button-native", part: "native", disabled: disabled }), h("span", { key: 'dffcf437fbdc15f2e7a19e60a015e90c73c8377d', class: "button-inner" }, h("slot", { key: '48a23512e0601e062118d8b2c46c8bb96f25509f', name: "top" }), h("div", { key: '952a9a9aa3a476aa1f4408d7e208bf9e916b8c30', class: "horizontal-wrapper" }, h("slot", { key: 'f8d18a61c1ecec4a22a55443cf72bbc51383b64f', name: "start" }), h("slot", { key: '1f9f219e6f879d2e0bf6d80cf0d3f518eb14ce0e', name: "icon-only" }), h("slot", { key: 'a55adcdbe68131e5b1855c2dd45dd9454ab544fb' }), h("slot", { key: '3c4c85a4fbb7efc797d8bc5adf6d238da022ff9f', name: "end" })), h("slot", { key: '503c7e4b306745c523f57f24399ea06ba9b1e21d', name: "bottom" })), mode === 'md' && h("ion-ripple-effect", { key: 'b0e270b0c4f3ff9f9b6d74bad12a9278d7633226' }))));
52
+ }) }, h(TagType, Object.assign({ key: 'd9f899f5425ad6b97071494485aa3ca90bc89d30' }, attrs, { class: "button-native", part: "native", disabled: disabled }), h("span", { key: 'adc2cf72b4363be9b9eeb3584723e2bfc862af20', class: "button-inner" }, h("slot", { key: 'e668fe8e655a74e6a35e979e0cd488506b962dbf', name: "top" }), h("div", { key: '2ddcdb92b6b19c3cc549a7aee2400d1a6eeb51f1', class: "horizontal-wrapper" }, h("slot", { key: '441f13df18b72e5ed6bb51b157722e065b5847d2', name: "start" }), h("slot", { key: '425d815874b49e1628880160d7175ed3ca36ca39', name: "icon-only" }), h("slot", { key: '27437d3fa3365b12bc030704e18481fdfb14aebb' }), h("slot", { key: 'bd39330771c7f85c6df10f7f9050335ee7f14ff0', name: "end" })), h("slot", { key: '440cb6dc7743d50b261d4bf61d2c24e24b89e58c', name: "bottom" })), mode === 'md' && h("ion-ripple-effect", { key: '29632941464bbb34551cf64961187643f62bf755' }))));
53
53
  }
54
54
  static get is() { return "ion-item-option"; }
55
55
  static get encapsulation() { return "shadow"; }
@@ -17,7 +17,7 @@ export class ItemOptions {
17
17
  render() {
18
18
  const mode = getIonMode(this);
19
19
  const isEnd = isEndSide(this.side);
20
- return (h(Host, { key: '6d91399d2aaaa81d514d0bbc8dffe53eeec25d36', class: {
20
+ return (h(Host, { key: '7df4b71547524bf359c48e1b40ccbc44e850f632', class: {
21
21
  [mode]: true,
22
22
  // Used internally for styling
23
23
  [`item-options-${mode}`]: true,
@@ -386,7 +386,7 @@ export class ItemSliding {
386
386
  }
387
387
  render() {
388
388
  const mode = getIonMode(this);
389
- return (h(Host, { key: '47a3edd2ef2080ed9cfc2784277dea09785c7dc4', class: {
389
+ return (h(Host, { key: '22f83febcbc1bc27e4ddbd7fcbe590de60a10e89', class: {
390
390
  [mode]: true,
391
391
  'item-sliding-active-slide': this.state !== 2 /* SlidingState.Disabled */,
392
392
  'item-sliding-active-options-end': (this.state & 8 /* SlidingState.End */) !== 0,
@@ -55,13 +55,13 @@ export class Label {
55
55
  render() {
56
56
  const position = this.position;
57
57
  const mode = getIonMode(this);
58
- return (h(Host, { key: '6353a70565ef6fbbbf4042b000e536c61bcf99a9', class: createColorClasses(this.color, {
58
+ return (h(Host, { key: '4da84c95351a74b547f8224ecfa66924d21398c5', class: createColorClasses(this.color, {
59
59
  [mode]: true,
60
60
  'in-item-color': hostContext('ion-item.ion-color', this.el),
61
61
  [`label-${position}`]: position !== undefined,
62
62
  [`label-no-animate`]: this.noAnimate,
63
63
  'label-rtl': document.dir === 'rtl',
64
- }) }, h("slot", { key: '6ef9c2758c0168442aa84941af0a6cec1ef1ec21' })));
64
+ }) }, h("slot", { key: 'ea158ebb620275e5492965234d0ab925d391f919' })));
65
65
  }
66
66
  static get is() { return "ion-label"; }
67
67
  static get encapsulation() { return "scoped"; }
@@ -15,10 +15,10 @@ export class ListHeader {
15
15
  render() {
16
16
  const { lines } = this;
17
17
  const mode = getIonMode(this);
18
- return (h(Host, { key: 'fb78bd8601cbd7b90ec84a96e0c8325be1132b1e', class: createColorClasses(this.color, {
18
+ return (h(Host, { key: '95ce2135e2b1ad4d7d6020b0fb9bc6e02b3c0851', class: createColorClasses(this.color, {
19
19
  [mode]: true,
20
20
  [`list-header-lines-${lines}`]: lines !== undefined,
21
- }) }, h("div", { key: '2580ad49f3a54973e15f14d645a1e55a6fa066ac', class: "list-header-inner" }, h("slot", { key: '677b2e2ec8eeb3ae6ad329e86c76451cf3ae6c2f' }))));
21
+ }) }, h("div", { key: '3065b0a094bc31a90518898a5126a813c8a33816', class: "list-header-inner" }, h("slot", { key: 'fe15c87d7867f3e5d8185645c49c0228496697b8' }))));
22
22
  }
23
23
  static get is() { return "ion-list-header"; }
24
24
  static get encapsulation() { return "shadow"; }
@@ -161,9 +161,9 @@ export class Loading {
161
161
  * Otherwise, don't set aria-labelledby.
162
162
  */
163
163
  const ariaLabelledBy = message !== undefined ? msgId : null;
164
- return (h(Host, Object.assign({ key: 'd97f536b7f443ea19a2bbf2dcbc7f546b8e0a092', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
164
+ return (h(Host, Object.assign({ key: 'd6066c8b56b1fe4b597a243a7dab191ef0d21286', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
165
165
  zIndex: `${40000 + this.overlayIndex}`,
166
- }, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), h("ion-backdrop", { key: '6cd39bd7912fd080ab59d041644054c96d238ea9', visible: this.showBackdrop, tappable: this.backdropDismiss }), h("div", { key: 'c14ca5a9308844f11bcb010257e15208a75b39bc', tabindex: "0", "aria-hidden": "true" }), h("div", { key: '118bceefa8e1cf8b225a858f224e6d919cf03c26', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (h("div", { key: '490d6e8ae4433835fe273162d7b90deab944fb39', class: "loading-spinner" }, h("ion-spinner", { key: 'c5cf6549c43df4cb23814b3e62ec4d9e7ea2b64f', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), h("div", { key: '2b888362122d3b66b0492d53b0c21bd6a2a97501', tabindex: "0", "aria-hidden": "true" })));
166
+ }, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), h("ion-backdrop", { key: '2431eda00a2a3f510f5dfc39b7c7d47c056dfa3d', visible: this.showBackdrop, tappable: this.backdropDismiss }), h("div", { key: 'cf210aaf5e754e4eccdb49cf7ead4647b3f9b2d1', tabindex: "0", "aria-hidden": "true" }), h("div", { key: 'fa9375143d391656d70e181d25b952c77c2fc6ec', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (h("div", { key: '8e4a4ed994f7f62df86b03696ac95162df41f52d', class: "loading-spinner" }, h("ion-spinner", { key: 'e5b323c272d365853ba92bd211e390b4fd4751d2', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), h("div", { key: 'cae35ec8c34800477bff3ebcec8010e632158233', tabindex: "0", "aria-hidden": "true" })));
167
167
  }
168
168
  static get is() { return "ion-loading"; }
169
169
  static get encapsulation() { return "scoped"; }
@@ -614,14 +614,14 @@ export class Menu {
614
614
  * the ionBackButton listener in the menu controller
615
615
  * will handle closing the menu when Escape is pressed.
616
616
  */
617
- return (h(Host, { key: 'da96fdb4c5ddf60e615cc4cdda7ccdb3fd7e089b', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
617
+ return (h(Host, { key: '342db8551d26604128b29b21d2d8c37593972ed9', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
618
618
  [mode]: true,
619
619
  [`menu-type-${type}`]: true,
620
620
  'menu-enabled': !disabled,
621
621
  [`menu-side-${side}`]: true,
622
622
  'menu-pane-visible': isPaneVisible,
623
623
  'split-pane-side': hostContext('ion-split-pane', el),
624
- } }, h("div", { key: '894e680fe227534711128c7aca980964ddb5a08a', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, h("slot", { key: 'e9f5934518dc0cceaeadf1f2820614595fec6bc9' })), h("ion-backdrop", { key: '7282077817657b1bb6c155f1404c0a519fece993', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
624
+ } }, h("div", { key: '3c9bec2862b7fb9d88de66b1600be01f6735e3dd', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, h("slot", { key: '76283b4b2a65c78646f92c3b273eea021eda499c' })), h("ion-backdrop", { key: '121c395bc4873542a1b6ae2c9e23f2e881e75d93', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
625
625
  }
626
626
  static get is() { return "ion-menu"; }
627
627
  static get encapsulation() { return "shadow"; }
@@ -46,7 +46,7 @@ export class MenuButton {
46
46
  type: this.type,
47
47
  };
48
48
  const ariaLabel = inheritedAttributes['aria-label'] || 'menu';
49
- return (h(Host, { key: '7ec29715ce7926b7c2b08f3d9cac8aaa16b3dc28', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses(color, {
49
+ return (h(Host, { key: '3cde3704f28eb275f4a5ff2985bbb68c1024e79c', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses(color, {
50
50
  [mode]: true,
51
51
  button: true, // ion-buttons target .button
52
52
  'menu-button-hidden': hidden,
@@ -55,7 +55,7 @@ export class MenuButton {
55
55
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
56
56
  'ion-activatable': true,
57
57
  'ion-focusable': true,
58
- }) }, h("button", Object.assign({ key: 'd4c5929264af3ba0328118bcc27d2ab7ef5d3809' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), h("span", { key: '7bfa6e9a93105486623d044861e879ec79ff64f1', class: "button-inner" }, h("slot", { key: '071ab58e285832fc188706166f5547d45d501ac5' }, h("ion-icon", { key: '918ec5d791921de9821c347af4f65f97dd94aabf', part: "icon", icon: menuIcon, mode: mode, lazy: false, "aria-hidden": "true" }))), mode === 'md' && h("ion-ripple-effect", { key: '00ffdd53f635e706c1dbd01b8e7944498650fe81', type: "unbounded" }))));
58
+ }) }, h("button", Object.assign({ key: 'a02a3374288bd1759b6e352ada8eab0d45c6422f' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), h("span", { key: 'ba699f2277a4e7b27ce5e42faeefc53d8805bb43', class: "button-inner" }, h("slot", { key: '829fe6cbdeb173f50d1a670389d1565baa6273e4' }, h("ion-icon", { key: 'a9a9f7b8dcffc648a8429fe0adbe766869de72fd', part: "icon", icon: menuIcon, mode: mode, lazy: false, "aria-hidden": "true" }))), mode === 'md' && h("ion-ripple-effect", { key: '48deca9a771a249f2fc76eaa8b9741c8d66d8355', type: "unbounded" }))));
59
59
  }
60
60
  static get is() { return "ion-menu-button"; }
61
61
  static get encapsulation() { return "shadow"; }
@@ -26,10 +26,10 @@ export class MenuToggle {
26
26
  render() {
27
27
  const mode = getIonMode(this);
28
28
  const hidden = this.autoHide && !this.visible;
29
- return (h(Host, { key: '7c27ea5b0795676bf5cb33e1f83aa142c197f64e', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
29
+ return (h(Host, { key: '88e88fa13ac7f10ba3acfe378bd11cda0c7e2749', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
30
30
  [mode]: true,
31
31
  'menu-toggle-hidden': hidden,
32
- } }, h("slot", { key: '69f187becedc0fe34603d41d279f043cf0fdf776' })));
32
+ } }, h("slot", { key: '0a14c7b63eda64702d2fd1b4bc7db4809892842d' })));
33
33
  }
34
34
  static get is() { return "ion-menu-toggle"; }
35
35
  static get encapsulation() { return "shadow"; }
@@ -13,22 +13,68 @@ const createEnterAnimation = () => {
13
13
  })
14
14
  .afterClearStyles(['pointer-events']);
15
15
  const wrapperAnimation = createAnimation().fromTo('transform', 'translateY(100vh)', 'translateY(0vh)');
16
- return { backdropAnimation, wrapperAnimation };
16
+ return { backdropAnimation, wrapperAnimation, contentAnimation: undefined };
17
17
  };
18
18
  /**
19
19
  * iOS Modal Enter Animation for the Card presentation style
20
20
  */
21
21
  export const iosEnterAnimation = (baseEl, opts) => {
22
- const { presentingEl, currentBreakpoint } = opts;
22
+ const { presentingEl, currentBreakpoint, expandToScroll } = opts;
23
23
  const root = getElementRoot(baseEl);
24
- const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
24
+ const { wrapperAnimation, backdropAnimation, contentAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
25
25
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
26
26
  wrapperAnimation.addElement(root.querySelectorAll('.modal-wrapper, .modal-shadow')).beforeStyles({ opacity: 1 });
27
+ // The content animation is only added if scrolling is enabled for
28
+ // all the breakpoints.
29
+ !expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
27
30
  const baseAnimation = createAnimation('entering-base')
28
31
  .addElement(baseEl)
29
32
  .easing('cubic-bezier(0.32,0.72,0,1)')
30
33
  .duration(500)
31
- .addAnimation(wrapperAnimation);
34
+ .addAnimation([wrapperAnimation])
35
+ .beforeAddWrite(() => {
36
+ if (expandToScroll) {
37
+ // Scroll can only be done when the modal is fully expanded.
38
+ return;
39
+ }
40
+ /**
41
+ * There are some browsers that causes flickering when
42
+ * dragging the content when scroll is enabled at every
43
+ * breakpoint. This is due to the wrapper element being
44
+ * transformed off the screen and having a snap animation.
45
+ *
46
+ * A workaround is to clone the footer element and append
47
+ * it outside of the wrapper element. This way, the footer
48
+ * is still visible and the drag can be done without
49
+ * flickering. The original footer is hidden until the modal
50
+ * is dismissed. This maintains the animation of the footer
51
+ * when the modal is dismissed.
52
+ *
53
+ * The workaround needs to be done before the animation starts
54
+ * so there are no flickering issues.
55
+ */
56
+ const ionFooter = baseEl.querySelector('ion-footer');
57
+ /**
58
+ * This check is needed to prevent more than one footer
59
+ * from being appended to the shadow root.
60
+ * Otherwise, iOS and MD enter animations would append
61
+ * the footer twice.
62
+ */
63
+ const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
64
+ if (ionFooter && !ionFooterAlreadyAppended) {
65
+ const footerHeight = ionFooter.clientHeight;
66
+ const clonedFooter = ionFooter.cloneNode(true);
67
+ baseEl.shadowRoot.appendChild(clonedFooter);
68
+ ionFooter.style.setProperty('display', 'none');
69
+ ionFooter.setAttribute('aria-hidden', 'true');
70
+ // Padding is added to prevent some content from being hidden.
71
+ const page = baseEl.querySelector('.ion-page');
72
+ page.style.setProperty('padding-bottom', `${footerHeight}px`);
73
+ }
74
+ });
75
+ if (contentAnimation) {
76
+ baseAnimation.addAnimation(contentAnimation);
77
+ }
32
78
  if (presentingEl) {
33
79
  const isMobile = window.innerWidth < 768;
34
80
  const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
@@ -14,7 +14,7 @@ const createLeaveAnimation = () => {
14
14
  * iOS Modal Leave Animation
15
15
  */
16
16
  export const iosLeaveAnimation = (baseEl, opts, duration = 500) => {
17
- const { presentingEl, currentBreakpoint } = opts;
17
+ const { presentingEl, currentBreakpoint, expandToScroll } = opts;
18
18
  const root = getElementRoot(baseEl);
19
19
  const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation();
20
20
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
@@ -23,7 +23,29 @@ export const iosLeaveAnimation = (baseEl, opts, duration = 500) => {
23
23
  .addElement(baseEl)
24
24
  .easing('cubic-bezier(0.32,0.72,0,1)')
25
25
  .duration(duration)
26
- .addAnimation(wrapperAnimation);
26
+ .addAnimation(wrapperAnimation)
27
+ .beforeAddWrite(() => {
28
+ if (expandToScroll) {
29
+ // Scroll can only be done when the modal is fully expanded.
30
+ return;
31
+ }
32
+ /**
33
+ * If expandToScroll is disabled, we need to swap
34
+ * the visibility to the original, so the footer
35
+ * dismisses with the modal and doesn't stay
36
+ * until the modal is removed from the DOM.
37
+ */
38
+ const ionFooter = baseEl.querySelector('ion-footer');
39
+ if (ionFooter) {
40
+ const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
41
+ ionFooter.style.removeProperty('display');
42
+ ionFooter.removeAttribute('aria-hidden');
43
+ clonedFooter.style.setProperty('display', 'none');
44
+ clonedFooter.setAttribute('aria-hidden', 'true');
45
+ const page = baseEl.querySelector('.ion-page');
46
+ page.style.removeProperty('padding-bottom');
47
+ }
48
+ });
27
49
  if (presentingEl) {
28
50
  const isMobile = window.innerWidth < 768;
29
51
  const hasCardModal = presentingEl.tagName === 'ION-MODAL' && presentingEl.presentingElement !== undefined;
@@ -15,20 +15,67 @@ const createEnterAnimation = () => {
15
15
  { offset: 0, opacity: 0.01, transform: 'translateY(40px)' },
16
16
  { offset: 1, opacity: 1, transform: `translateY(0px)` },
17
17
  ]);
18
- return { backdropAnimation, wrapperAnimation };
18
+ return { backdropAnimation, wrapperAnimation, contentAnimation: undefined };
19
19
  };
20
20
  /**
21
21
  * Md Modal Enter Animation
22
22
  */
23
23
  export const mdEnterAnimation = (baseEl, opts) => {
24
- const { currentBreakpoint } = opts;
24
+ const { currentBreakpoint, expandToScroll } = opts;
25
25
  const root = getElementRoot(baseEl);
26
- const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
26
+ const { wrapperAnimation, backdropAnimation, contentAnimation } = currentBreakpoint !== undefined ? createSheetEnterAnimation(opts) : createEnterAnimation();
27
27
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
28
28
  wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
29
- return createAnimation()
29
+ // The content animation is only added if scrolling is enabled for
30
+ // all the breakpoints.
31
+ expandToScroll && (contentAnimation === null || contentAnimation === void 0 ? void 0 : contentAnimation.addElement(baseEl.querySelector('.ion-page')));
32
+ const baseAnimation = createAnimation()
30
33
  .addElement(baseEl)
31
34
  .easing('cubic-bezier(0.36,0.66,0.04,1)')
32
35
  .duration(280)
33
- .addAnimation([backdropAnimation, wrapperAnimation]);
36
+ .addAnimation([backdropAnimation, wrapperAnimation])
37
+ .beforeAddWrite(() => {
38
+ if (expandToScroll) {
39
+ // Scroll can only be done when the modal is fully expanded.
40
+ return;
41
+ }
42
+ /**
43
+ * There are some browsers that causes flickering when
44
+ * dragging the content when scroll is enabled at every
45
+ * breakpoint. This is due to the wrapper element being
46
+ * transformed off the screen and having a snap animation.
47
+ *
48
+ * A workaround is to clone the footer element and append
49
+ * it outside of the wrapper element. This way, the footer
50
+ * is still visible and the drag can be done without
51
+ * flickering. The original footer is hidden until the modal
52
+ * is dismissed. This maintains the animation of the footer
53
+ * when the modal is dismissed.
54
+ *
55
+ * The workaround needs to be done before the animation starts
56
+ * so there are no flickering issues.
57
+ */
58
+ const ionFooter = baseEl.querySelector('ion-footer');
59
+ /**
60
+ * This check is needed to prevent more than one footer
61
+ * from being appended to the shadow root.
62
+ * Otherwise, iOS and MD enter animations would append
63
+ * the footer twice.
64
+ */
65
+ const ionFooterAlreadyAppended = baseEl.shadowRoot.querySelector('ion-footer');
66
+ if (ionFooter && !ionFooterAlreadyAppended) {
67
+ const footerHeight = ionFooter.clientHeight;
68
+ const clonedFooter = ionFooter.cloneNode(true);
69
+ baseEl.shadowRoot.appendChild(clonedFooter);
70
+ ionFooter.style.setProperty('display', 'none');
71
+ ionFooter.setAttribute('aria-hidden', 'true');
72
+ // Padding is added to prevent some content from being hidden.
73
+ const page = baseEl.querySelector('.ion-page');
74
+ page.style.setProperty('padding-bottom', `${footerHeight}px`);
75
+ }
76
+ });
77
+ if (contentAnimation) {
78
+ baseAnimation.addAnimation(contentAnimation);
79
+ }
80
+ return baseAnimation;
34
81
  };
@@ -16,13 +16,36 @@ const createLeaveAnimation = () => {
16
16
  * Md Modal Leave Animation
17
17
  */
18
18
  export const mdLeaveAnimation = (baseEl, opts) => {
19
- const { currentBreakpoint } = opts;
19
+ const { currentBreakpoint, expandToScroll } = opts;
20
20
  const root = getElementRoot(baseEl);
21
21
  const { wrapperAnimation, backdropAnimation } = currentBreakpoint !== undefined ? createSheetLeaveAnimation(opts) : createLeaveAnimation();
22
22
  backdropAnimation.addElement(root.querySelector('ion-backdrop'));
23
23
  wrapperAnimation.addElement(root.querySelector('.modal-wrapper'));
24
- return createAnimation()
24
+ const baseAnimation = createAnimation()
25
25
  .easing('cubic-bezier(0.47,0,0.745,0.715)')
26
26
  .duration(200)
27
- .addAnimation([backdropAnimation, wrapperAnimation]);
27
+ .addAnimation([backdropAnimation, wrapperAnimation])
28
+ .beforeAddWrite(() => {
29
+ if (expandToScroll) {
30
+ // Scroll can only be done when the modal is fully expanded.
31
+ return;
32
+ }
33
+ /**
34
+ * If expandToScroll is disabled, we need to swap
35
+ * the visibility to the original, so the footer
36
+ * dismisses with the modal and doesn't stay
37
+ * until the modal is removed from the DOM.
38
+ */
39
+ const ionFooter = baseEl.querySelector('ion-footer');
40
+ if (ionFooter) {
41
+ const clonedFooter = baseEl.shadowRoot.querySelector('ion-footer');
42
+ ionFooter.style.removeProperty('display');
43
+ ionFooter.removeAttribute('aria-hidden');
44
+ clonedFooter.style.setProperty('display', 'none');
45
+ clonedFooter.setAttribute('aria-hidden', 'true');
46
+ const page = baseEl.querySelector('.ion-page');
47
+ page.style.removeProperty('padding-bottom');
48
+ }
49
+ });
50
+ return baseAnimation;
28
51
  };
@@ -4,7 +4,7 @@
4
4
  import { createAnimation } from "../../../utils/animation/animation";
5
5
  import { getBackdropValueForSheet } from "../utils";
6
6
  export const createSheetEnterAnimation = (opts) => {
7
- const { currentBreakpoint, backdropBreakpoint } = opts;
7
+ const { currentBreakpoint, backdropBreakpoint, expandToScroll } = opts;
8
8
  /**
9
9
  * If the backdropBreakpoint is undefined, then the backdrop
10
10
  * should always fade in. If the backdropBreakpoint came before the
@@ -24,7 +24,16 @@ export const createSheetEnterAnimation = (opts) => {
24
24
  { offset: 0, opacity: 1, transform: 'translateY(100%)' },
25
25
  { offset: 1, opacity: 1, transform: `translateY(${100 - currentBreakpoint * 100}%)` },
26
26
  ]);
27
- return { wrapperAnimation, backdropAnimation };
27
+ /**
28
+ * This allows the content to be scrollable at any breakpoint.
29
+ */
30
+ const contentAnimation = !expandToScroll
31
+ ? createAnimation('contentAnimation').keyframes([
32
+ { offset: 0, opacity: 1, maxHeight: `${(1 - currentBreakpoint) * 100}%` },
33
+ { offset: 1, opacity: 1, maxHeight: `${currentBreakpoint * 100}%` },
34
+ ])
35
+ : undefined;
36
+ return { wrapperAnimation, backdropAnimation, contentAnimation };
28
37
  };
29
38
  export const createSheetLeaveAnimation = (opts) => {
30
39
  const { currentBreakpoint, backdropBreakpoint } = opts;