@ionic/core 8.5.4 → 8.5.5-dev.11744313694.13eeaf58

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 (569) hide show
  1. package/components/alert.js +5 -4
  2. package/components/animation.js +3 -2
  3. package/components/button.js +1 -1
  4. package/components/capacitor.js +1 -1
  5. package/components/config.js +3 -1
  6. package/components/data.js +1 -1
  7. package/components/hardware-back-button.js +3 -3
  8. package/components/helpers.js +3 -1
  9. package/components/index.js +2 -1
  10. package/components/index2.js +1 -2
  11. package/components/index4.js +104 -289
  12. package/components/index5.js +302 -3
  13. package/components/index6.js +3 -38
  14. package/components/index8.js +1 -1
  15. package/components/index9.js +1 -1
  16. package/components/input-shims.js +1 -1
  17. package/components/input.utils.js +2 -2
  18. package/components/ion-accordion-group.js +1 -1
  19. package/components/ion-accordion.js +2 -1
  20. package/components/ion-app.js +2 -2
  21. package/components/ion-back-button.js +2 -1
  22. package/components/ion-datetime-button.js +1 -1
  23. package/components/ion-datetime.js +1 -1
  24. package/components/ion-infinite-scroll-content.js +2 -1
  25. package/components/ion-input-password-toggle.js +1 -1
  26. package/components/ion-item-sliding.js +3 -2
  27. package/components/ion-loading.js +2 -1
  28. package/components/ion-menu-button.js +3 -2
  29. package/components/ion-menu-toggle.js +1 -1
  30. package/components/ion-menu.js +7 -6
  31. package/components/ion-nav.js +4 -4
  32. package/components/ion-picker-legacy.js +1 -1
  33. package/components/ion-progress-bar.js +2 -1
  34. package/components/ion-range.js +1 -1
  35. package/components/ion-refresher-content.js +2 -1
  36. package/components/ion-refresher.js +3 -2
  37. package/components/ion-router-outlet.js +4 -3
  38. package/components/ion-router.js +9 -8
  39. package/components/ion-searchbar.js +2 -1
  40. package/components/ion-segment-button.js +6 -5
  41. package/components/ion-select.js +5 -4
  42. package/components/ion-skeleton-text.js +2 -1
  43. package/components/ion-split-pane.js +5 -4
  44. package/components/ion-tab-button.js +2 -1
  45. package/components/ion-tab.js +5 -4
  46. package/components/ion-tabs.js +3 -2
  47. package/components/ion-toast.js +6 -6
  48. package/components/ion-toggle.js +2 -1
  49. package/components/ionic-global.js +3 -77
  50. package/components/keyboard-controller.js +1 -1
  51. package/components/menu-toggle-util.js +1 -1
  52. package/components/modal.js +3 -3
  53. package/components/notch-controller.js +1 -1
  54. package/components/overlays.js +5 -5
  55. package/components/picker-column.js +1 -1
  56. package/components/popover.js +1 -1
  57. package/components/spinner.js +2 -1
  58. package/dist/cjs/{animation-b4fdf128.js → animation-f1673ab4.js} +4 -3
  59. package/dist/cjs/{app-globals-dd592863.js → app-globals-ddceb1f4.js} +1 -1
  60. package/dist/cjs/{config-4f60b98a.js → config-f6225ae7.js} +3 -1
  61. package/dist/cjs/{data-27cc2c9c.js → data-746161fc.js} +1 -1
  62. package/dist/cjs/{framework-delegate-50a86d56.js → framework-delegate-862d9d00.js} +1 -1
  63. package/dist/cjs/{hardware-back-button-5a99001f.js → hardware-back-button-745e51d2.js} +7 -8
  64. package/dist/cjs/{helpers-3a248559.js → helpers-8a48fdea.js} +3 -1
  65. package/dist/cjs/{index-509ca0d3.js → index-31b07b9c.js} +2 -2
  66. package/dist/cjs/{index-4b70187a.js → index-7b20dc28.js} +5 -5
  67. package/dist/cjs/{index-e630fd95.js → index-9d49c5c1.js} +7 -8
  68. package/dist/cjs/index-cc858e97.js +129 -0
  69. package/dist/cjs/{index-e36bd277.js → index-dbe01e08.js} +2 -1
  70. package/dist/cjs/index.cjs.js +19 -13
  71. package/dist/cjs/{input-shims-22a9973f.js → input-shims-415be7ee.js} +3 -5
  72. package/dist/cjs/{input.utils-e82b8ed0.js → input.utils-dc6855fe.js} +2 -2
  73. package/dist/cjs/ion-accordion_2.cjs.entry.js +7 -7
  74. package/dist/cjs/ion-action-sheet.cjs.entry.js +7 -7
  75. package/dist/cjs/ion-alert.cjs.entry.js +12 -12
  76. package/dist/cjs/ion-app_8.cjs.entry.js +21 -21
  77. package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -1
  78. package/dist/cjs/ion-back-button.cjs.entry.js +8 -7
  79. package/dist/cjs/ion-backdrop.cjs.entry.js +2 -1
  80. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +3 -2
  81. package/dist/cjs/ion-button_2.cjs.entry.js +3 -3
  82. package/dist/cjs/ion-card_5.cjs.entry.js +3 -2
  83. package/dist/cjs/ion-checkbox.cjs.entry.js +3 -2
  84. package/dist/cjs/ion-chip.cjs.entry.js +2 -1
  85. package/dist/cjs/ion-col_3.cjs.entry.js +2 -1
  86. package/dist/cjs/ion-datetime-button.cjs.entry.js +4 -4
  87. package/dist/cjs/ion-datetime_3.cjs.entry.js +8 -8
  88. package/dist/cjs/ion-fab_3.cjs.entry.js +3 -2
  89. package/dist/cjs/ion-img.cjs.entry.js +3 -2
  90. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +7 -7
  91. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +2 -2
  92. package/dist/cjs/ion-input.cjs.entry.js +5 -5
  93. package/dist/cjs/ion-item-option_3.cjs.entry.js +6 -6
  94. package/dist/cjs/ion-item_8.cjs.entry.js +4 -3
  95. package/dist/cjs/ion-loading.cjs.entry.js +10 -10
  96. package/dist/cjs/ion-menu_3.cjs.entry.js +24 -24
  97. package/dist/cjs/ion-modal.cjs.entry.js +11 -11
  98. package/dist/cjs/ion-nav_2.cjs.entry.js +18 -18
  99. package/dist/cjs/ion-picker-column-option.cjs.entry.js +3 -2
  100. package/dist/cjs/ion-picker-column.cjs.entry.js +3 -2
  101. package/dist/cjs/ion-picker.cjs.entry.js +2 -1
  102. package/dist/cjs/ion-popover.cjs.entry.js +8 -8
  103. package/dist/cjs/ion-progress-bar.cjs.entry.js +4 -3
  104. package/dist/cjs/ion-radio_2.cjs.entry.js +3 -2
  105. package/dist/cjs/ion-range.cjs.entry.js +4 -4
  106. package/dist/cjs/ion-refresher_2.cjs.entry.js +14 -14
  107. package/dist/cjs/ion-reorder_2.cjs.entry.js +4 -4
  108. package/dist/cjs/ion-ripple-effect.cjs.entry.js +2 -1
  109. package/dist/cjs/ion-route_4.cjs.entry.js +11 -10
  110. package/dist/cjs/ion-searchbar.cjs.entry.js +8 -7
  111. package/dist/cjs/ion-segment_2.cjs.entry.js +8 -7
  112. package/dist/cjs/ion-select-modal.cjs.entry.js +6 -6
  113. package/dist/cjs/ion-select_3.cjs.entry.js +13 -13
  114. package/dist/cjs/ion-spinner.cjs.entry.js +4 -3
  115. package/dist/cjs/ion-split-pane.cjs.entry.js +6 -5
  116. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +4 -3
  117. package/dist/cjs/ion-tab_2.cjs.entry.js +8 -7
  118. package/dist/cjs/ion-text.cjs.entry.js +2 -1
  119. package/dist/cjs/ion-textarea.cjs.entry.js +5 -5
  120. package/dist/cjs/ion-toast.cjs.entry.js +13 -13
  121. package/dist/cjs/ion-toggle.cjs.entry.js +4 -3
  122. package/dist/cjs/{ionic-global-acb665ad.js → ionic-global-6dea5a96.js} +15 -90
  123. package/dist/cjs/ionic.cjs.js +3 -2
  124. package/dist/cjs/{ios.transition-ae7afca9.js → ios.transition-358682fc.js} +4 -5
  125. package/dist/cjs/loader.cjs.js +3 -2
  126. package/dist/cjs/{md.transition-26003e25.js → md.transition-42f70245.js} +4 -5
  127. package/dist/cjs/{notch-controller-ae03a497.js → notch-controller-09b7f358.js} +1 -1
  128. package/dist/cjs/{overlays-32e1b66b.js → overlays-c673e6d1.js} +19 -19
  129. package/dist/cjs/{status-tap-03023755.js → status-tap-f1acefac.js} +3 -4
  130. package/dist/cjs/{swipe-back-cd0d9f77.js → swipe-back-4918e56b.js} +2 -1
  131. package/dist/collection/components/alert/alert.js +4 -3
  132. package/dist/collection/components/item-sliding/item-sliding.js +3 -2
  133. package/dist/collection/components/menu/menu.js +5 -4
  134. package/dist/collection/components/nav/nav.js +2 -2
  135. package/dist/collection/components/refresher/refresher.js +3 -2
  136. package/dist/collection/components/router/router.js +8 -7
  137. package/dist/collection/components/router/utils/dom.js +2 -1
  138. package/dist/collection/components/router-outlet/router-outlet.js +3 -2
  139. package/dist/collection/components/segment-button/segment-button.js +6 -5
  140. package/dist/collection/components/select/select.js +5 -4
  141. package/dist/collection/components/split-pane/split-pane.js +5 -4
  142. package/dist/collection/components/tab/tab.js +5 -4
  143. package/dist/collection/components/tabs/tabs.js +3 -2
  144. package/dist/collection/components/toast/toast.js +4 -4
  145. package/dist/collection/global/ionic-global.js +2 -1
  146. package/dist/collection/index.js +1 -0
  147. package/dist/collection/utils/animation/animation.js +2 -1
  148. package/dist/collection/utils/hardware-back-button.js +2 -1
  149. package/dist/collection/utils/helpers.js +2 -1
  150. package/dist/collection/utils/logging/index.js +10 -4
  151. package/dist/collection/utils/overlays.js +3 -3
  152. package/dist/collection/utils/sanitization/index.js +2 -1
  153. package/dist/docs.json +1 -1
  154. package/dist/esm/{animation-eab5a4ca.js → animation-b3d4d369.js} +2 -1
  155. package/dist/esm/{app-globals-7b6cbf1a.js → app-globals-dbdbb3df.js} +1 -1
  156. package/dist/esm/{config-49c88215.js → config-9898ed97.js} +3 -1
  157. package/dist/esm/{data-174ad5e0.js → data-3793f3bc.js} +1 -1
  158. package/dist/esm/{framework-delegate-2eea1763.js → framework-delegate-56b467ad.js} +1 -1
  159. package/dist/esm/{hardware-back-button-864101a3.js → hardware-back-button-e1e79b83.js} +2 -3
  160. package/dist/esm/{helpers-78efeec3.js → helpers-d94bc8ad.js} +3 -1
  161. package/dist/esm/{index-f9f5d018.js → index-033a7968.js} +5 -5
  162. package/dist/esm/{index-e919e353.js → index-9a17db3d.js} +2 -2
  163. package/dist/esm/{index-40894f4b.js → index-be190feb.js} +2 -1
  164. package/dist/esm/index-cfd9c1f2.js +121 -0
  165. package/dist/esm/{index-ecb55b8d.js → index-da77f504.js} +4 -5
  166. package/dist/esm/index.js +12 -12
  167. package/dist/esm/{input-shims-7dc1f6dc.js → input-shims-279903e2.js} +3 -5
  168. package/dist/esm/{input.utils-28bf4ef0.js → input.utils-b280913a.js} +2 -2
  169. package/dist/esm/ion-accordion_2.entry.js +3 -3
  170. package/dist/esm/ion-action-sheet.entry.js +7 -7
  171. package/dist/esm/ion-alert.entry.js +11 -11
  172. package/dist/esm/ion-app_8.entry.js +14 -14
  173. package/dist/esm/ion-avatar_3.entry.js +2 -1
  174. package/dist/esm/ion-back-button.entry.js +3 -2
  175. package/dist/esm/ion-backdrop.entry.js +2 -1
  176. package/dist/esm/ion-breadcrumb_2.entry.js +3 -2
  177. package/dist/esm/ion-button_2.entry.js +3 -3
  178. package/dist/esm/ion-card_5.entry.js +3 -2
  179. package/dist/esm/ion-checkbox.entry.js +3 -2
  180. package/dist/esm/ion-chip.entry.js +2 -1
  181. package/dist/esm/ion-col_3.entry.js +2 -1
  182. package/dist/esm/ion-datetime-button.entry.js +4 -4
  183. package/dist/esm/ion-datetime_3.entry.js +8 -8
  184. package/dist/esm/ion-fab_3.entry.js +3 -2
  185. package/dist/esm/ion-img.entry.js +3 -2
  186. package/dist/esm/ion-infinite-scroll_2.entry.js +5 -5
  187. package/dist/esm/ion-input-password-toggle.entry.js +2 -2
  188. package/dist/esm/ion-input.entry.js +5 -5
  189. package/dist/esm/ion-item-option_3.entry.js +6 -6
  190. package/dist/esm/ion-item_8.entry.js +3 -2
  191. package/dist/esm/ion-loading.entry.js +8 -8
  192. package/dist/esm/ion-menu_3.entry.js +12 -12
  193. package/dist/esm/ion-modal.entry.js +9 -9
  194. package/dist/esm/ion-nav_2.entry.js +8 -8
  195. package/dist/esm/ion-picker-column-option.entry.js +3 -2
  196. package/dist/esm/ion-picker-column.entry.js +3 -2
  197. package/dist/esm/ion-picker.entry.js +2 -1
  198. package/dist/esm/ion-popover.entry.js +8 -8
  199. package/dist/esm/ion-progress-bar.entry.js +3 -2
  200. package/dist/esm/ion-radio_2.entry.js +3 -2
  201. package/dist/esm/ion-range.entry.js +4 -4
  202. package/dist/esm/ion-refresher_2.entry.js +8 -8
  203. package/dist/esm/ion-reorder_2.entry.js +4 -4
  204. package/dist/esm/ion-ripple-effect.entry.js +2 -1
  205. package/dist/esm/ion-route_4.entry.js +11 -10
  206. package/dist/esm/ion-searchbar.entry.js +3 -2
  207. package/dist/esm/ion-segment_2.entry.js +8 -7
  208. package/dist/esm/ion-select-modal.entry.js +6 -6
  209. package/dist/esm/ion-select_3.entry.js +11 -11
  210. package/dist/esm/ion-spinner.entry.js +2 -1
  211. package/dist/esm/ion-split-pane.entry.js +6 -5
  212. package/dist/esm/ion-tab-bar_2.entry.js +3 -2
  213. package/dist/esm/ion-tab_2.entry.js +8 -7
  214. package/dist/esm/ion-text.entry.js +2 -1
  215. package/dist/esm/ion-textarea.entry.js +5 -5
  216. package/dist/esm/ion-toast.entry.js +11 -11
  217. package/dist/esm/ion-toggle.entry.js +3 -2
  218. package/dist/esm/{ionic-global-ca86cf32.js → ionic-global-b26f573e.js} +3 -77
  219. package/dist/esm/ionic.js +3 -2
  220. package/dist/esm/{ios.transition-7fe5dbea.js → ios.transition-be08b244.js} +4 -5
  221. package/dist/esm/loader.js +3 -2
  222. package/dist/esm/{md.transition-8dc58b46.js → md.transition-91257d15.js} +4 -5
  223. package/dist/esm/{notch-controller-00d92e89.js → notch-controller-1a1f7183.js} +1 -1
  224. package/dist/esm/{overlays-41a5d51b.js → overlays-70ea3dcf.js} +7 -7
  225. package/dist/esm/{status-tap-f6d08e9e.js → status-tap-42a8af65.js} +3 -4
  226. package/dist/esm/{swipe-back-07df2095.js → swipe-back-0184f6b3.js} +2 -1
  227. package/dist/esm-es5/animation-b3d4d369.js +4 -0
  228. package/dist/esm-es5/app-globals-dbdbb3df.js +4 -0
  229. package/dist/esm-es5/config-9898ed97.js +4 -0
  230. package/dist/esm-es5/{data-174ad5e0.js → data-3793f3bc.js} +1 -1
  231. package/dist/esm-es5/{framework-delegate-2eea1763.js → framework-delegate-56b467ad.js} +1 -1
  232. package/dist/esm-es5/hardware-back-button-e1e79b83.js +4 -0
  233. package/dist/esm-es5/helpers-d94bc8ad.js +4 -0
  234. package/dist/esm-es5/{index-f9f5d018.js → index-033a7968.js} +1 -1
  235. package/dist/esm-es5/{index-e919e353.js → index-9a17db3d.js} +1 -1
  236. package/dist/esm-es5/index-be190feb.js +4 -0
  237. package/dist/esm-es5/index-cfd9c1f2.js +5 -0
  238. package/dist/esm-es5/index-da77f504.js +4 -0
  239. package/dist/esm-es5/index.js +1 -1
  240. package/dist/esm-es5/input-shims-279903e2.js +4 -0
  241. package/dist/esm-es5/{input.utils-28bf4ef0.js → input.utils-b280913a.js} +1 -1
  242. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  243. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  244. package/dist/esm-es5/ion-alert.entry.js +1 -1
  245. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  246. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  247. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  248. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  249. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  250. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  251. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  252. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  253. package/dist/esm-es5/ion-chip.entry.js +1 -1
  254. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  255. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  256. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  257. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  258. package/dist/esm-es5/ion-img.entry.js +1 -1
  259. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  260. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  261. package/dist/esm-es5/ion-input.entry.js +1 -1
  262. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  263. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  264. package/dist/esm-es5/ion-loading.entry.js +1 -1
  265. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  266. package/dist/esm-es5/ion-modal.entry.js +1 -1
  267. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  268. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  269. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  270. package/dist/esm-es5/ion-picker.entry.js +1 -1
  271. package/dist/esm-es5/ion-popover.entry.js +1 -1
  272. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  273. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  274. package/dist/esm-es5/ion-range.entry.js +1 -1
  275. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  276. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  277. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  278. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  279. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  280. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  281. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  282. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  283. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  284. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  285. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  286. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  287. package/dist/esm-es5/ion-text.entry.js +1 -1
  288. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  289. package/dist/esm-es5/ion-toast.entry.js +1 -1
  290. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  291. package/dist/esm-es5/ionic-global-b26f573e.js +4 -0
  292. package/dist/esm-es5/ionic.js +1 -1
  293. package/dist/esm-es5/ios.transition-be08b244.js +4 -0
  294. package/dist/esm-es5/loader.js +1 -1
  295. package/dist/esm-es5/md.transition-91257d15.js +4 -0
  296. package/dist/esm-es5/{notch-controller-00d92e89.js → notch-controller-1a1f7183.js} +1 -1
  297. package/dist/esm-es5/overlays-70ea3dcf.js +4 -0
  298. package/dist/esm-es5/status-tap-42a8af65.js +4 -0
  299. package/dist/esm-es5/swipe-back-0184f6b3.js +4 -0
  300. package/dist/ionic/index.esm.js +1 -1
  301. package/dist/ionic/ionic.esm.js +1 -1
  302. package/dist/ionic/ionic.js +1 -1
  303. package/dist/ionic/p-00023f5a.system.js +4 -0
  304. package/dist/ionic/p-03480b95.system.entry.js +4 -0
  305. package/dist/ionic/p-07ff88d4.system.entry.js +4 -0
  306. package/dist/ionic/p-0e48845d.entry.js +4 -0
  307. package/dist/ionic/{p-48ded460.entry.js → p-0ef6e220.entry.js} +1 -1
  308. package/dist/ionic/p-105b2e8b.entry.js +4 -0
  309. package/dist/ionic/p-10a1bddc.js +4 -0
  310. package/dist/ionic/p-12830298.system.entry.js +4 -0
  311. package/dist/ionic/p-13807b79.js +4 -0
  312. package/dist/ionic/p-171ca87d.system.js +4 -0
  313. package/dist/ionic/p-17e21141.js +4 -0
  314. package/dist/ionic/p-19494658.system.entry.js +4 -0
  315. package/dist/ionic/{p-9e45532a.system.js → p-1966a13c.system.js} +1 -1
  316. package/dist/ionic/p-1974d5b2.system.js +4 -0
  317. package/dist/ionic/p-1b9c59ab.js +4 -0
  318. package/dist/ionic/p-1cb02e44.entry.js +4 -0
  319. package/dist/ionic/p-1d307396.system.js +4 -0
  320. package/dist/ionic/p-228e2522.entry.js +4 -0
  321. package/dist/ionic/p-2412c270.entry.js +4 -0
  322. package/dist/ionic/p-2469240b.entry.js +4 -0
  323. package/dist/ionic/p-2572e79d.system.entry.js +4 -0
  324. package/dist/ionic/{p-c3f9d9fe.js → p-25b10f81.js} +1 -1
  325. package/dist/ionic/{p-f387b3c6.system.entry.js → p-274d963a.system.entry.js} +1 -1
  326. package/dist/ionic/p-2bb55ebc.js +4 -0
  327. package/dist/ionic/p-31a09e05.system.entry.js +4 -0
  328. package/dist/ionic/p-31dc303d.entry.js +4 -0
  329. package/dist/ionic/p-33503ae0.system.entry.js +4 -0
  330. package/dist/ionic/{p-5578033e.system.entry.js → p-35cdfd77.system.entry.js} +1 -1
  331. package/dist/ionic/p-382181c5.system.js +4 -0
  332. package/dist/ionic/{p-756e4559.js → p-39287a10.js} +1 -1
  333. package/dist/ionic/p-393ffcc2.entry.js +4 -0
  334. package/dist/ionic/p-39fa7dd1.system.entry.js +4 -0
  335. package/dist/ionic/p-3a30f31b.system.entry.js +4 -0
  336. package/dist/ionic/p-3bdd0f86.entry.js +4 -0
  337. package/dist/ionic/{p-99803283.entry.js → p-4056de12.entry.js} +1 -1
  338. package/dist/ionic/p-42501323.js +4 -0
  339. package/dist/ionic/p-42f08b26.system.entry.js +4 -0
  340. package/dist/ionic/p-463c09f2.system.js +4 -0
  341. package/dist/ionic/p-49c3e2df.js +4 -0
  342. package/dist/ionic/p-4a5be299.system.entry.js +4 -0
  343. package/dist/ionic/p-4cf4172e.entry.js +4 -0
  344. package/dist/ionic/p-4ec0e961.system.entry.js +4 -0
  345. package/dist/ionic/p-50cb2e8b.system.entry.js +4 -0
  346. package/dist/ionic/{p-f7ce606e.js → p-5362b151.js} +1 -1
  347. package/dist/ionic/p-57da3f41.entry.js +4 -0
  348. package/dist/ionic/{p-7c9daa6f.entry.js → p-58743cdd.entry.js} +1 -1
  349. package/dist/ionic/p-58c3391f.entry.js +4 -0
  350. package/dist/ionic/p-5c9feddc.system.entry.js +4 -0
  351. package/dist/ionic/p-5ea4e77f.system.entry.js +4 -0
  352. package/dist/ionic/p-5edf78c5.system.entry.js +4 -0
  353. package/dist/ionic/{p-49d53551.system.entry.js → p-61050e98.system.entry.js} +1 -1
  354. package/dist/ionic/p-612096e6.system.entry.js +4 -0
  355. package/dist/ionic/p-6201c4ba.entry.js +4 -0
  356. package/dist/ionic/p-625248d0.system.js +4 -0
  357. package/dist/ionic/p-663413be.system.js +4 -0
  358. package/dist/ionic/p-6636a436.js +4 -0
  359. package/dist/ionic/{p-ac09b6e9.system.entry.js → p-687f7a63.system.entry.js} +1 -1
  360. package/dist/ionic/{p-d70a9e6d.system.js → p-68ab4267.system.js} +1 -1
  361. package/dist/ionic/{p-14114a59.system.entry.js → p-6c5be476.system.entry.js} +1 -1
  362. package/dist/ionic/p-6ec0c94a.entry.js +4 -0
  363. package/dist/ionic/{p-4662a25c.system.entry.js → p-6f16e938.system.entry.js} +1 -1
  364. package/dist/ionic/p-712c0131.entry.js +4 -0
  365. package/dist/ionic/{p-05b65d7a.entry.js → p-727055d1.entry.js} +1 -1
  366. package/dist/ionic/p-7445a2e5.system.js +4 -0
  367. package/dist/ionic/p-79605486.js +4 -0
  368. package/dist/ionic/p-7ad8df86.system.entry.js +4 -0
  369. package/dist/ionic/p-7c5c7ae1.system.entry.js +4 -0
  370. package/dist/ionic/{p-1bf5ec17.system.js → p-7cdc46f1.system.js} +1 -1
  371. package/dist/ionic/p-7e3e6ed2.entry.js +4 -0
  372. package/dist/ionic/p-7e89e22b.system.entry.js +4 -0
  373. package/dist/ionic/p-7f374363.system.entry.js +4 -0
  374. package/dist/ionic/p-80b225e9.system.entry.js +4 -0
  375. package/dist/ionic/{p-65e732b9.entry.js → p-81904a80.entry.js} +1 -1
  376. package/dist/ionic/p-8298710a.system.entry.js +4 -0
  377. package/dist/ionic/p-82abb074.entry.js +4 -0
  378. package/dist/ionic/{p-a6625de8.system.js → p-84096b45.system.js} +1 -1
  379. package/dist/ionic/p-8460d95a.entry.js +4 -0
  380. package/dist/ionic/p-84978faa.js +4 -0
  381. package/dist/ionic/p-8c11fbf3.entry.js +4 -0
  382. package/dist/ionic/{p-22bc235f.js → p-8d2d39d0.js} +1 -1
  383. package/dist/ionic/p-8dacf4e2.entry.js +4 -0
  384. package/dist/ionic/{p-f5a04e5e.system.entry.js → p-8f8d95ac.system.entry.js} +1 -1
  385. package/dist/ionic/p-9090cf74.entry.js +4 -0
  386. package/dist/ionic/{p-29da3dcd.entry.js → p-909b0020.entry.js} +1 -1
  387. package/dist/ionic/p-94551927.js +4 -0
  388. package/dist/ionic/p-98fd942b.system.entry.js +4 -0
  389. package/dist/ionic/p-993d0dc9.entry.js +4 -0
  390. package/dist/ionic/p-9a3bf28b.system.js +4 -0
  391. package/dist/ionic/{p-b87a9f1d.entry.js → p-9c526045.entry.js} +1 -1
  392. package/dist/ionic/p-9d3eb9ed.system.js +4 -0
  393. package/dist/ionic/p-a0fd2fe5.system.entry.js +4 -0
  394. package/dist/ionic/{p-624ecf03.js → p-a220cbf6.js} +1 -1
  395. package/dist/ionic/{p-4c7e6fec.system.entry.js → p-a40e0ef5.system.entry.js} +1 -1
  396. package/dist/ionic/p-a835aca8.entry.js +4 -0
  397. package/dist/ionic/p-a8ab9b64.system.entry.js +4 -0
  398. package/dist/ionic/p-ae039072.entry.js +4 -0
  399. package/dist/ionic/p-aea88b7d.system.entry.js +4 -0
  400. package/dist/ionic/p-aebfab05.system.entry.js +4 -0
  401. package/dist/ionic/p-b22ab9f4.js +4 -0
  402. package/dist/ionic/p-b2e7eda0.system.entry.js +4 -0
  403. package/dist/ionic/p-b445ff65.entry.js +4 -0
  404. package/dist/ionic/{p-d882f1e2.system.entry.js → p-b4d17da0.system.entry.js} +2 -2
  405. package/dist/ionic/{p-db3b409e.system.entry.js → p-b56970a7.system.entry.js} +1 -1
  406. package/dist/ionic/p-b6d324f0.js +4 -0
  407. package/dist/ionic/p-b70738de.entry.js +4 -0
  408. package/dist/ionic/p-b908b093.system.js +4 -0
  409. package/dist/ionic/p-b9437a9a.entry.js +4 -0
  410. package/dist/ionic/p-b9c793d4.entry.js +4 -0
  411. package/dist/ionic/p-bc022ab0.system.js +4 -0
  412. package/dist/ionic/p-bf184319.system.entry.js +4 -0
  413. package/dist/ionic/{p-a26d7667.system.entry.js → p-bf6af2f2.system.entry.js} +1 -1
  414. package/dist/ionic/{p-8b1c1fd7.entry.js → p-c2f8201e.entry.js} +1 -1
  415. package/dist/ionic/{p-7058a5e4.system.entry.js → p-c3bdf3c5.system.entry.js} +1 -1
  416. package/dist/ionic/{p-f70fc14a.entry.js → p-c423a98c.entry.js} +1 -1
  417. package/dist/ionic/p-c5bfa3e9.entry.js +4 -0
  418. package/dist/ionic/p-cad82569.entry.js +4 -0
  419. package/dist/ionic/p-cdc58bd5.system.js +4 -0
  420. package/dist/ionic/p-d16fab3f.entry.js +4 -0
  421. package/dist/ionic/p-d3481aa8.js +4 -0
  422. package/dist/ionic/p-d382f09c.system.js +4 -0
  423. package/dist/ionic/p-d55ed528.system.js +4 -0
  424. package/dist/ionic/p-d6147d70.entry.js +4 -0
  425. package/dist/ionic/p-d984c1ab.system.entry.js +4 -0
  426. package/dist/ionic/p-da6247e5.entry.js +4 -0
  427. package/dist/ionic/p-dabe3bd4.js +4 -0
  428. package/dist/ionic/p-df069a0d.entry.js +4 -0
  429. package/dist/ionic/p-e6ca42be.entry.js +4 -0
  430. package/dist/ionic/p-e727e32d.system.entry.js +4 -0
  431. package/dist/ionic/{p-e11ff516.entry.js → p-e744d14a.entry.js} +1 -1
  432. package/dist/ionic/{p-7b886108.system.entry.js → p-ea001c9a.system.entry.js} +1 -1
  433. package/dist/ionic/p-eaf1a6ed.entry.js +4 -0
  434. package/dist/ionic/p-ee215dd0.system.entry.js +4 -0
  435. package/dist/ionic/{p-b9fa7882.js → p-f08a92cc.js} +1 -1
  436. package/dist/ionic/p-f0ef39ab.entry.js +4 -0
  437. package/dist/ionic/p-f6e7d104.system.js +4 -0
  438. package/dist/ionic/p-f725bf9e.system.js +4 -0
  439. package/dist/ionic/{p-69a96be9.system.entry.js → p-f7fdde12.system.entry.js} +1 -1
  440. package/dist/ionic/p-f9a87db2.system.entry.js +4 -0
  441. package/dist/ionic/{p-3855fef7.system.js → p-fa3f4b96.system.js} +2 -2
  442. package/dist/ionic/{p-4630688e.system.entry.js → p-fa7ccb3f.system.entry.js} +1 -1
  443. package/dist/ionic/{p-a7830ff8.entry.js → p-fb79a418.entry.js} +1 -1
  444. package/dist/ionic/{p-f834322a.entry.js → p-fcc6319e.entry.js} +1 -1
  445. package/dist/types/utils/logging/index.d.ts +1 -1
  446. package/hydrate/index.js +119 -113
  447. package/hydrate/index.mjs +119 -113
  448. package/package.json +1 -1
  449. package/dist/cjs/index-48b2a28e.js +0 -46
  450. package/dist/esm/index-738d7504.js +0 -42
  451. package/dist/esm-es5/animation-eab5a4ca.js +0 -4
  452. package/dist/esm-es5/app-globals-7b6cbf1a.js +0 -4
  453. package/dist/esm-es5/config-49c88215.js +0 -4
  454. package/dist/esm-es5/hardware-back-button-864101a3.js +0 -4
  455. package/dist/esm-es5/helpers-78efeec3.js +0 -4
  456. package/dist/esm-es5/index-40894f4b.js +0 -4
  457. package/dist/esm-es5/index-738d7504.js +0 -4
  458. package/dist/esm-es5/index-ecb55b8d.js +0 -4
  459. package/dist/esm-es5/input-shims-7dc1f6dc.js +0 -4
  460. package/dist/esm-es5/ionic-global-ca86cf32.js +0 -4
  461. package/dist/esm-es5/ios.transition-7fe5dbea.js +0 -4
  462. package/dist/esm-es5/md.transition-8dc58b46.js +0 -4
  463. package/dist/esm-es5/overlays-41a5d51b.js +0 -4
  464. package/dist/esm-es5/status-tap-f6d08e9e.js +0 -4
  465. package/dist/esm-es5/swipe-back-07df2095.js +0 -4
  466. package/dist/ionic/p-027a48f1.entry.js +0 -4
  467. package/dist/ionic/p-058b7f35.js +0 -4
  468. package/dist/ionic/p-09d185ff.system.js +0 -4
  469. package/dist/ionic/p-0a456b7f.entry.js +0 -4
  470. package/dist/ionic/p-0adb6909.system.entry.js +0 -4
  471. package/dist/ionic/p-0bedc891.system.entry.js +0 -4
  472. package/dist/ionic/p-0d1be7c9.system.entry.js +0 -4
  473. package/dist/ionic/p-0ec5b7cf.system.js +0 -4
  474. package/dist/ionic/p-15bb1dde.system.js +0 -4
  475. package/dist/ionic/p-180b4f9a.entry.js +0 -4
  476. package/dist/ionic/p-19c32a76.entry.js +0 -4
  477. package/dist/ionic/p-1b0b2210.entry.js +0 -4
  478. package/dist/ionic/p-1c1d781d.system.entry.js +0 -4
  479. package/dist/ionic/p-1c8b3ac9.entry.js +0 -4
  480. package/dist/ionic/p-1de5dfcd.system.entry.js +0 -4
  481. package/dist/ionic/p-2567237c.entry.js +0 -4
  482. package/dist/ionic/p-28c81576.entry.js +0 -4
  483. package/dist/ionic/p-29a5b4e4.entry.js +0 -4
  484. package/dist/ionic/p-2a2c6bf4.system.entry.js +0 -4
  485. package/dist/ionic/p-3281aab3.entry.js +0 -4
  486. package/dist/ionic/p-33518a04.entry.js +0 -4
  487. package/dist/ionic/p-35f14792.entry.js +0 -4
  488. package/dist/ionic/p-383a6058.entry.js +0 -4
  489. package/dist/ionic/p-38eaf9cf.system.entry.js +0 -4
  490. package/dist/ionic/p-3ba2a2cd.system.js +0 -4
  491. package/dist/ionic/p-3f4327f7.js +0 -4
  492. package/dist/ionic/p-41d5544e.js +0 -4
  493. package/dist/ionic/p-41e70fa2.entry.js +0 -4
  494. package/dist/ionic/p-44fde7d5.system.entry.js +0 -4
  495. package/dist/ionic/p-44ff75ea.js +0 -4
  496. package/dist/ionic/p-455cd7cc.system.js +0 -4
  497. package/dist/ionic/p-4b07c60a.system.js +0 -4
  498. package/dist/ionic/p-4ea4c73a.system.entry.js +0 -4
  499. package/dist/ionic/p-4eeca839.system.entry.js +0 -4
  500. package/dist/ionic/p-50e0ce13.entry.js +0 -4
  501. package/dist/ionic/p-51479be0.system.entry.js +0 -4
  502. package/dist/ionic/p-597ff9af.js +0 -4
  503. package/dist/ionic/p-5fb1321f.entry.js +0 -4
  504. package/dist/ionic/p-607aa181.entry.js +0 -4
  505. package/dist/ionic/p-61373098.js +0 -4
  506. package/dist/ionic/p-6155027f.system.entry.js +0 -4
  507. package/dist/ionic/p-61e794fb.entry.js +0 -4
  508. package/dist/ionic/p-64d8ac48.js +0 -4
  509. package/dist/ionic/p-657ada6a.entry.js +0 -4
  510. package/dist/ionic/p-65943bec.system.entry.js +0 -4
  511. package/dist/ionic/p-6c044a1d.system.js +0 -4
  512. package/dist/ionic/p-705fda69.system.js +0 -4
  513. package/dist/ionic/p-70abb1f2.system.entry.js +0 -4
  514. package/dist/ionic/p-747f9517.entry.js +0 -4
  515. package/dist/ionic/p-772d1657.system.js +0 -4
  516. package/dist/ionic/p-77aa5fef.system.entry.js +0 -4
  517. package/dist/ionic/p-7cc33a9a.system.js +0 -4
  518. package/dist/ionic/p-7e3b5638.system.entry.js +0 -4
  519. package/dist/ionic/p-7f49a9c4.entry.js +0 -4
  520. package/dist/ionic/p-843ac05d.system.entry.js +0 -4
  521. package/dist/ionic/p-87b0d2c9.entry.js +0 -4
  522. package/dist/ionic/p-8b22be32.system.entry.js +0 -4
  523. package/dist/ionic/p-8cf6f383.system.entry.js +0 -4
  524. package/dist/ionic/p-8d98e2bb.entry.js +0 -4
  525. package/dist/ionic/p-9146695e.system.js +0 -4
  526. package/dist/ionic/p-959cf042.system.entry.js +0 -4
  527. package/dist/ionic/p-96eec056.entry.js +0 -4
  528. package/dist/ionic/p-978bdf4c.system.js +0 -4
  529. package/dist/ionic/p-9870728f.js +0 -4
  530. package/dist/ionic/p-9af7f110.js +0 -4
  531. package/dist/ionic/p-9b069739.entry.js +0 -4
  532. package/dist/ionic/p-a3c931ad.system.js +0 -4
  533. package/dist/ionic/p-a520973b.entry.js +0 -4
  534. package/dist/ionic/p-a75a9e5a.system.entry.js +0 -4
  535. package/dist/ionic/p-a768ae50.entry.js +0 -4
  536. package/dist/ionic/p-a9198501.system.entry.js +0 -4
  537. package/dist/ionic/p-ac58d726.system.entry.js +0 -4
  538. package/dist/ionic/p-b1673667.entry.js +0 -4
  539. package/dist/ionic/p-b1f9fbe8.system.entry.js +0 -4
  540. package/dist/ionic/p-b2ee0628.system.entry.js +0 -4
  541. package/dist/ionic/p-b8a461f5.system.entry.js +0 -4
  542. package/dist/ionic/p-bf64af90.system.js +0 -4
  543. package/dist/ionic/p-c005cc37.entry.js +0 -4
  544. package/dist/ionic/p-c27c57ea.system.entry.js +0 -4
  545. package/dist/ionic/p-c53c414d.system.entry.js +0 -4
  546. package/dist/ionic/p-c63d8dc1.js +0 -4
  547. package/dist/ionic/p-c7e16491.js +0 -4
  548. package/dist/ionic/p-ccb740ea.entry.js +0 -4
  549. package/dist/ionic/p-cec54707.system.entry.js +0 -4
  550. package/dist/ionic/p-cfc08422.entry.js +0 -4
  551. package/dist/ionic/p-cff4f96c.entry.js +0 -4
  552. package/dist/ionic/p-d40f2b7a.js +0 -4
  553. package/dist/ionic/p-e29c5aab.system.entry.js +0 -4
  554. package/dist/ionic/p-e2ce5f8b.entry.js +0 -4
  555. package/dist/ionic/p-e3284879.system.entry.js +0 -4
  556. package/dist/ionic/p-e3e4eed7.entry.js +0 -4
  557. package/dist/ionic/p-e4683bfd.system.entry.js +0 -4
  558. package/dist/ionic/p-e4d2c281.entry.js +0 -4
  559. package/dist/ionic/p-e65b8460.entry.js +0 -4
  560. package/dist/ionic/p-e6cdfa96.system.entry.js +0 -4
  561. package/dist/ionic/p-ece78e7b.js +0 -4
  562. package/dist/ionic/p-ee86cfff.system.js +0 -4
  563. package/dist/ionic/p-f201b53a.system.js +0 -4
  564. package/dist/ionic/p-f23124c4.system.js +0 -4
  565. package/dist/ionic/p-f233f1e0.system.js +0 -4
  566. package/dist/ionic/p-f53ee2e7.js +0 -4
  567. package/dist/ionic/p-f896194a.system.entry.js +0 -4
  568. package/dist/ionic/p-fa70eaab.entry.js +0 -4
  569. package/dist/ionic/p-ffa3ba3c.js +0 -4
package/hydrate/index.js CHANGED
@@ -2368,6 +2368,80 @@ var Build = {
2368
2368
  var styles = /* @__PURE__ */ new Map();
2369
2369
  var modeResolutionChain = [];
2370
2370
 
2371
+ // TODO(FW-2832): types
2372
+ class Config {
2373
+ constructor() {
2374
+ this.m = new Map();
2375
+ }
2376
+ reset(configObj) {
2377
+ this.m = new Map(Object.entries(configObj));
2378
+ }
2379
+ get(key, fallback) {
2380
+ const value = this.m.get(key);
2381
+ return value !== undefined ? value : fallback;
2382
+ }
2383
+ getBoolean(key, fallback = false) {
2384
+ const val = this.m.get(key);
2385
+ if (val === undefined) {
2386
+ return fallback;
2387
+ }
2388
+ if (typeof val === 'string') {
2389
+ return val === 'true';
2390
+ }
2391
+ return !!val;
2392
+ }
2393
+ getNumber(key, fallback) {
2394
+ const val = parseFloat(this.m.get(key));
2395
+ return isNaN(val) ? (fallback !== undefined ? fallback : NaN) : val;
2396
+ }
2397
+ set(key, value) {
2398
+ this.m.set(key, value);
2399
+ }
2400
+ }
2401
+ const config = /*@__PURE__*/ new Config();
2402
+
2403
+ var LogLevel;
2404
+ (function (LogLevel) {
2405
+ LogLevel["OFF"] = "OFF";
2406
+ LogLevel["ERROR"] = "ERROR";
2407
+ LogLevel["WARN"] = "WARN";
2408
+ })(LogLevel || (LogLevel = {}));
2409
+ /**
2410
+ * Logs a warning to the console with an Ionic prefix
2411
+ * to indicate the library that is warning the developer.
2412
+ *
2413
+ * @param message - The string message to be logged to the console.
2414
+ */
2415
+ const printIonWarning = (message, ...params) => {
2416
+ const logLevel = config.get('logLevel', LogLevel.WARN);
2417
+ if ([LogLevel.WARN].includes(logLevel)) {
2418
+ return console.warn(`[Ionic Warning]: ${message}`, ...params);
2419
+ }
2420
+ };
2421
+ /**
2422
+ * Logs an error to the console with an Ionic prefix
2423
+ * to indicate the library that is warning the developer.
2424
+ *
2425
+ * @param message - The string message to be logged to the console.
2426
+ * @param params - Additional arguments to supply to the console.error.
2427
+ */
2428
+ const printIonError = (message, ...params) => {
2429
+ const logLevel = config.get('logLevel', LogLevel.ERROR);
2430
+ if ([LogLevel.ERROR, LogLevel.WARN].includes(logLevel)) {
2431
+ return console.error(`[Ionic Error]: ${message}`, ...params);
2432
+ }
2433
+ };
2434
+ /**
2435
+ * Prints an error informing developers that an implementation requires an element to be used
2436
+ * within a specific selector.
2437
+ *
2438
+ * @param el The web component element this is requiring the element.
2439
+ * @param targetSelectors The selector or selectors that were not found.
2440
+ */
2441
+ const printRequiredElementError = (el, ...targetSelectors) => {
2442
+ return console.error(`<${el.tagName.toLowerCase()}> must be used inside ${targetSelectors.join(' or ')}.`);
2443
+ };
2444
+
2371
2445
  const transitionEndAsync = (el, expectedDuration = 0) => {
2372
2446
  return new Promise((resolve) => {
2373
2447
  transitionEnd(el, expectedDuration, resolve);
@@ -2618,7 +2692,7 @@ const clamp = (min, n, max) => {
2618
2692
  const assert = (actual, reason) => {
2619
2693
  if (!actual) {
2620
2694
  const message = 'ASSERT: ' + reason;
2621
- console.error(message);
2695
+ printIonError(message);
2622
2696
  debugger; // eslint-disable-line
2623
2697
  throw new Error(message);
2624
2698
  }
@@ -2716,38 +2790,6 @@ const reorderTwoSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2
2716
2790
  const searchOutline = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path d='M221.09 64a157.09 157.09 0 10157.09 157.09A157.1 157.1 0 00221.09 64z' stroke-miterlimit='10' class='ionicon-fill-none ionicon-stroke-width'/><path stroke-linecap='round' stroke-miterlimit='10' d='M338.29 338.29L448 448' class='ionicon-fill-none ionicon-stroke-width'/></svg>";
2717
2791
  const searchSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'><path d='M464 428L339.92 303.9a160.48 160.48 0 0030.72-94.58C370.64 120.37 298.27 48 209.32 48S48 120.37 48 209.32s72.37 161.32 161.32 161.32a160.48 160.48 0 0094.58-30.72L428 464zM209.32 319.69a110.38 110.38 0 11110.37-110.37 110.5 110.5 0 01-110.37 110.37z'/></svg>";
2718
2792
 
2719
- // TODO(FW-2832): types
2720
- class Config {
2721
- constructor() {
2722
- this.m = new Map();
2723
- }
2724
- reset(configObj) {
2725
- this.m = new Map(Object.entries(configObj));
2726
- }
2727
- get(key, fallback) {
2728
- const value = this.m.get(key);
2729
- return value !== undefined ? value : fallback;
2730
- }
2731
- getBoolean(key, fallback = false) {
2732
- const val = this.m.get(key);
2733
- if (val === undefined) {
2734
- return fallback;
2735
- }
2736
- if (typeof val === 'string') {
2737
- return val === 'true';
2738
- }
2739
- return !!val;
2740
- }
2741
- getNumber(key, fallback) {
2742
- const val = parseFloat(this.m.get(key));
2743
- return isNaN(val) ? (fallback !== undefined ? fallback : NaN) : val;
2744
- }
2745
- set(key, value) {
2746
- this.m.set(key, value);
2747
- }
2748
- }
2749
- const config = /*@__PURE__*/ new Config();
2750
-
2751
2793
  const getPlatforms = (win) => setupPlatforms(win);
2752
2794
  const isPlatform = (winOrPlatform, platform) => {
2753
2795
  if (typeof winOrPlatform === 'string') {
@@ -3189,42 +3231,6 @@ class Accordion {
3189
3231
  }
3190
3232
  let accordionIds = 0;
3191
3233
 
3192
- /**
3193
- * Logs a warning to the console with an Ionic prefix
3194
- * to indicate the library that is warning the developer.
3195
- *
3196
- * @param message - The string message to be logged to the console.
3197
- */
3198
- const printIonWarning = (message, ...params) => {
3199
- const logLevel = config.get('logLevel', "WARN" /* LogLevel.WARN */);
3200
- if (["WARN" /* LogLevel.WARN */].includes(logLevel)) {
3201
- return console.warn(`[Ionic Warning]: ${message}`, ...params);
3202
- }
3203
- };
3204
- /**
3205
- * Logs an error to the console with an Ionic prefix
3206
- * to indicate the library that is warning the developer.
3207
- *
3208
- * @param message - The string message to be logged to the console.
3209
- * @param params - Additional arguments to supply to the console.error.
3210
- */
3211
- const printIonError = (message, ...params) => {
3212
- const logLevel = config.get('logLevel', "ERROR" /* LogLevel.ERROR */);
3213
- if (["ERROR" /* LogLevel.ERROR */, "WARN" /* LogLevel.WARN */].includes(logLevel)) {
3214
- return console.error(`[Ionic Error]: ${message}`, ...params);
3215
- }
3216
- };
3217
- /**
3218
- * Prints an error informing developers that an implementation requires an element to be used
3219
- * within a specific selector.
3220
- *
3221
- * @param el The web component element this is requiring the element.
3222
- * @param targetSelectors The selector or selectors that were not found.
3223
- */
3224
- const printRequiredElementError = (el, ...targetSelectors) => {
3225
- return console.error(`<${el.tagName.toLowerCase()}> must be used inside ${targetSelectors.join(' or ')}.`);
3226
- };
3227
-
3228
3234
  const accordionGroupIosCss = ":host{display:block}:host(.accordion-group-expand-inset){-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:16px;margin-bottom:16px}:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-expanding),:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-expanded){border-bottom:none}";
3229
3235
  var IonAccordionGroupIosStyle0 = accordionGroupIosCss;
3230
3236
 
@@ -5122,7 +5128,7 @@ const dismiss = async (overlay, data, role, name, iosLeaveAnimation, mdLeaveAnim
5122
5128
  }
5123
5129
  const presentedOverlays = doc !== undefined ? getPresentedOverlays(doc) : [];
5124
5130
  /**
5125
- * For accessibility, toasts lack focus traps and dont receive
5131
+ * For accessibility, toasts lack focus traps and don't receive
5126
5132
  * `aria-hidden` on the root element when presented.
5127
5133
  *
5128
5134
  * All other overlays use focus traps to keep keyboard focus
@@ -5185,7 +5191,7 @@ const dismiss = async (overlay, data, role, name, iosLeaveAnimation, mdLeaveAnim
5185
5191
  }
5186
5192
  }
5187
5193
  catch (err) {
5188
- console.error(err);
5194
+ printIonError(`[${overlay.el.tagName.toLowerCase()}]`, err);
5189
5195
  }
5190
5196
  overlay.el.remove();
5191
5197
  revealOverlaysToScreenReaders();
@@ -5874,7 +5880,7 @@ const createAnimation = (animationId) => {
5874
5880
  }
5875
5881
  }
5876
5882
  else {
5877
- console.error('Invalid addElement value');
5883
+ printIonError('Invalid addElement value');
5878
5884
  }
5879
5885
  }
5880
5886
  return ani;
@@ -6732,7 +6738,7 @@ const sanitizeDOMString = (untrustedString) => {
6732
6738
  return getInnerDiv !== null ? getInnerDiv.innerHTML : fragmentDiv.innerHTML;
6733
6739
  }
6734
6740
  catch (err) {
6735
- console.error(err);
6741
+ printIonError('sanitizeDOMString', err);
6736
6742
  return '';
6737
6743
  }
6738
6744
  };
@@ -7052,7 +7058,7 @@ class Alert {
7052
7058
  // checkboxes and inputs are all accepted, but they cannot be mixed.
7053
7059
  const inputTypes = new Set(inputs.map((i) => i.type));
7054
7060
  if (inputTypes.has('checkbox') && inputTypes.has('radio')) {
7055
- console.warn(`Alert cannot mix input types: ${Array.from(inputTypes.values()).join('/')}. Please see alert docs for more info.`);
7061
+ printIonWarning(`Alert cannot mix input types: ${Array.from(inputTypes.values()).join('/')}. Please see alert docs for more info.`);
7056
7062
  }
7057
7063
  this.inputType = inputTypes.values().next().value;
7058
7064
  this.processedInputs = inputs.map((i, index) => {
@@ -7325,9 +7331,9 @@ class Alert {
7325
7331
  * If neither are defined, do not set aria-labelledby.
7326
7332
  */
7327
7333
  const ariaLabelledBy = header && subHeader ? `${hdrId} ${subHdrId}` : header ? hdrId : subHeader ? subHdrId : null;
7328
- return (hAsync(Host, { key: '755f2398806084f16ee24d9fefce9ebc0b8f30f2', tabindex: "-1", style: {
7334
+ return (hAsync(Host, { key: '7fc42f1246e3398cd405f3c58ed19cab36e69dc1', tabindex: "-1", style: {
7329
7335
  zIndex: `${20000 + overlayIndex}`,
7330
- }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'alert-translucent': this.translucent }), onIonAlertWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }, hAsync("ion-backdrop", { key: '5965913fb076436e37f4a55cd8778cbc58449bfd', tappable: this.backdropDismiss }), hAsync("div", { key: 'cb17e07896b6ad8c9c607261fe08437b1a3b272f', tabindex: "0", "aria-hidden": "true" }), hAsync("div", Object.assign({ key: 'e1d43053dceab70b9392802767caa70fa7ed0518', class: "alert-wrapper ion-overlay-wrapper", role: role, "aria-modal": "true", "aria-labelledby": ariaLabelledBy, "aria-describedby": message !== undefined ? msgId : null, tabindex: "0", ref: (el) => (this.wrapperEl = el) }, htmlAttributes), hAsync("div", { key: 'a82e0bf863971084f3a8a34d25d6cf7aae1690a8', class: "alert-head" }, header && (hAsync("h2", { key: '36a9b4394f4b4cdcd6972ae60265ac889e2157cf', id: hdrId, class: "alert-title" }, header)), subHeader && !header && (hAsync("h2", { key: '86008c1eb484cc69f66e42c254933ce289180785', id: subHdrId, class: "alert-sub-title" }, subHeader)), subHeader && header && (hAsync("h3", { key: 'bfaacd3b119d06273683019cddef2c42245c3101', id: subHdrId, class: "alert-sub-title" }, subHeader))), this.renderAlertMessage(msgId), this.renderAlertInputs(), this.renderAlertButtons()), hAsync("div", { key: '0e7df4ab31a72953dcf171ebc87074603f848c06', tabindex: "0", "aria-hidden": "true" })));
7336
+ }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'alert-translucent': this.translucent }), onIonAlertWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }, hAsync("ion-backdrop", { key: '75b8ce97fa47f19c648b0ef502ecc22e6eaae2ef', tappable: this.backdropDismiss }), hAsync("div", { key: '0fbe144902f137df5e600ffc2878b4c1b568979d', tabindex: "0", "aria-hidden": "true" }), hAsync("div", Object.assign({ key: '03a992f8024fc33cbd3e0d4174749ea3fa81699e', class: "alert-wrapper ion-overlay-wrapper", role: role, "aria-modal": "true", "aria-labelledby": ariaLabelledBy, "aria-describedby": message !== undefined ? msgId : null, tabindex: "0", ref: (el) => (this.wrapperEl = el) }, htmlAttributes), hAsync("div", { key: '0bd161eee8ed0239ffc644e8ea0adaefba7e035c', class: "alert-head" }, header && (hAsync("h2", { key: 'e66e6a4334667026ca99dbce87baef59ce7b5c69', id: hdrId, class: "alert-title" }, header)), subHeader && !header && (hAsync("h2", { key: '82824576ab35af059305b9ec1e7f1d011b653570', id: subHdrId, class: "alert-sub-title" }, subHeader)), subHeader && header && (hAsync("h3", { key: 'b34d9764d8913c57d831bcff05e2ea285de4aa2a', id: subHdrId, class: "alert-sub-title" }, subHeader))), this.renderAlertMessage(msgId), this.renderAlertInputs(), this.renderAlertButtons()), hAsync("div", { key: '5092588a98f4ebaba4ccbc767f1d504df83f9e03', tabindex: "0", "aria-hidden": "true" })));
7331
7337
  }
7332
7338
  get el() { return getElement(this); }
7333
7339
  static get watchers() { return {
@@ -16457,7 +16463,7 @@ class ItemSliding {
16457
16463
  case 0 /* ItemSide.None */:
16458
16464
  return;
16459
16465
  default:
16460
- console.warn('invalid ItemSideFlags value', this.sides);
16466
+ printIonWarning('invalid ItemSideFlags value', this.sides);
16461
16467
  break;
16462
16468
  }
16463
16469
  let optsWidth;
@@ -16583,7 +16589,7 @@ class ItemSliding {
16583
16589
  }
16584
16590
  render() {
16585
16591
  const mode = getIonMode$1(this);
16586
- return (hAsync(Host, { key: '22f83febcbc1bc27e4ddbd7fcbe590de60a10e89', class: {
16592
+ return (hAsync(Host, { key: 'eff4001b62474a5364eff213f68f8952e194bc6c', class: {
16587
16593
  [mode]: true,
16588
16594
  'item-sliding-active-slide': this.state !== 2 /* SlidingState.Disabled */,
16589
16595
  'item-sliding-active-options-end': (this.state & 8 /* SlidingState.End */) !== 0,
@@ -18082,14 +18088,14 @@ class Menu {
18082
18088
  * the ionBackButton listener in the menu controller
18083
18089
  * will handle closing the menu when Escape is pressed.
18084
18090
  */
18085
- return (hAsync(Host, { key: '342db8551d26604128b29b21d2d8c37593972ed9', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
18091
+ return (hAsync(Host, { key: 'f4f9b8291a26330f0cdfcd8821939f032ff5f1d6', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
18086
18092
  [mode]: true,
18087
18093
  [`menu-type-${type}`]: true,
18088
18094
  'menu-enabled': !disabled,
18089
18095
  [`menu-side-${side}`]: true,
18090
18096
  'menu-pane-visible': isPaneVisible,
18091
18097
  'split-pane-side': hostContext('ion-split-pane', el),
18092
- } }, hAsync("div", { key: '3c9bec2862b7fb9d88de66b1600be01f6735e3dd', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, hAsync("slot", { key: '76283b4b2a65c78646f92c3b273eea021eda499c' })), hAsync("ion-backdrop", { key: '121c395bc4873542a1b6ae2c9e23f2e881e75d93', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
18098
+ } }, hAsync("div", { key: '8cfa5496b2b65f94b264dfbe8530ea320f97d435', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, hAsync("slot", { key: '8fd05691cb460c18aac1f7fea81bea35c2d85a53' })), hAsync("ion-backdrop", { key: '6a157383fba333deb8e98d817320d17bf2259214', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
18093
18099
  }
18094
18100
  get el() { return getElement(this); }
18095
18101
  static get watchers() { return {
@@ -21246,7 +21252,7 @@ class Nav {
21246
21252
  const finalNumViews = this.views.length + ((_b = insertViews === null || insertViews === void 0 ? void 0 : insertViews.length) !== null && _b !== void 0 ? _b : 0) - (removeCount !== null && removeCount !== void 0 ? removeCount : 0);
21247
21253
  assert(finalNumViews >= 0, 'final balance can not be negative');
21248
21254
  if (finalNumViews === 0) {
21249
- console.warn(`You can't remove all the pages in the navigation stack. nav.pop() is probably called too many times.`, this, this.el);
21255
+ printIonWarning(`You can't remove all the pages in the navigation stack. nav.pop() is probably called too many times.`, this, this.el);
21250
21256
  throw new Error('navigation stack needs at least one root page');
21251
21257
  }
21252
21258
  // At this point the transition can not be rejected, any throw should be an error
@@ -21468,7 +21474,7 @@ class Nav {
21468
21474
  }
21469
21475
  }
21470
21476
  render() {
21471
- return hAsync("slot", { key: '71e9b5d07fc90ca5534197a63a003a4154aabd59' });
21477
+ return hAsync("slot", { key: 'deb28f86691b9698ca7600559d232b1a6be23e48' });
21472
21478
  }
21473
21479
  get el() { return getElement(this); }
21474
21480
  static get watchers() { return {
@@ -26479,7 +26485,7 @@ class Refresher {
26479
26485
  }
26480
26486
  async connectedCallback() {
26481
26487
  if (this.el.getAttribute('slot') !== 'fixed') {
26482
- console.error('Make sure you use: <ion-refresher slot="fixed">');
26488
+ printIonError('Make sure you use: <ion-refresher slot="fixed">');
26483
26489
  return;
26484
26490
  }
26485
26491
  const contentEl = this.el.closest(ION_CONTENT_ELEMENT_SELECTOR);
@@ -26811,7 +26817,7 @@ class Refresher {
26811
26817
  }
26812
26818
  render() {
26813
26819
  const mode = getIonMode$1(this);
26814
- return (hAsync(Host, { key: '4c36bffbfa32ef1bd28a60f4455c125842880659', slot: "fixed", class: {
26820
+ return (hAsync(Host, { key: '9784c5b59143812612d9eca4bb13351f0faa1425', slot: "fixed", class: {
26815
26821
  [mode]: true,
26816
26822
  // Used internally for styling
26817
26823
  [`refresher-${mode}`]: true,
@@ -27721,7 +27727,7 @@ const writeNavState = async (root, chain, direction, index, changed = false, ani
27721
27727
  return changed;
27722
27728
  }
27723
27729
  catch (e) {
27724
- console.error(e);
27730
+ printIonError('[ion-router]', e);
27725
27731
  return false;
27726
27732
  }
27727
27733
  };
@@ -28184,19 +28190,19 @@ class Router {
28184
28190
  /** @internal */
28185
28191
  async navChanged(direction) {
28186
28192
  if (this.busy) {
28187
- console.warn('[ion-router] router is busy, navChanged was cancelled');
28193
+ printIonWarning('[ion-router] router is busy, navChanged was cancelled');
28188
28194
  return false;
28189
28195
  }
28190
28196
  const { ids, outlet } = await readNavState(window.document.body);
28191
28197
  const routes = readRoutes(this.el);
28192
28198
  const chain = findChainForIDs(ids, routes);
28193
28199
  if (!chain) {
28194
- console.warn('[ion-router] no matching URL for ', ids.map((i) => i.id));
28200
+ printIonWarning('[ion-router] no matching URL for ', ids.map((i) => i.id));
28195
28201
  return false;
28196
28202
  }
28197
28203
  const segments = chainToSegments(chain);
28198
28204
  if (!segments) {
28199
- console.warn('[ion-router] router could not match path because some required param is missing');
28205
+ printIonWarning('[ion-router] router could not match path because some required param is missing');
28200
28206
  return false;
28201
28207
  }
28202
28208
  this.setSegments(segments, direction);
@@ -28234,7 +28240,7 @@ class Router {
28234
28240
  }
28235
28241
  async writeNavStateRoot(segments, direction, animation) {
28236
28242
  if (!segments) {
28237
- console.error('[ion-router] URL is not part of the routing set');
28243
+ printIonError('[ion-router] URL is not part of the routing set');
28238
28244
  return false;
28239
28245
  }
28240
28246
  // lookup redirect rule
@@ -28251,7 +28257,7 @@ class Router {
28251
28257
  const routes = readRoutes(this.el);
28252
28258
  const chain = findChainForSegments(segments, routes);
28253
28259
  if (!chain) {
28254
- console.error('[ion-router] the path does not match any route');
28260
+ printIonError('[ion-router] the path does not match any route');
28255
28261
  return false;
28256
28262
  }
28257
28263
  // write DOM give
@@ -28264,7 +28270,7 @@ class Router {
28264
28270
  changed = await this.writeNavState(node, chain, direction, segments, redirectFrom, index, animation);
28265
28271
  }
28266
28272
  catch (e) {
28267
- console.error(e);
28273
+ printIonError('[ion-router]', e);
28268
28274
  }
28269
28275
  unlock();
28270
28276
  return changed;
@@ -28306,7 +28312,7 @@ class Router {
28306
28312
  }
28307
28313
  async writeNavState(node, chain, direction, segments, redirectFrom, index = 0, animation) {
28308
28314
  if (this.busy) {
28309
- console.warn('[ion-router] router is busy, transition was cancelled');
28315
+ printIonWarning('[ion-router] router is busy, transition was cancelled');
28310
28316
  return false;
28311
28317
  }
28312
28318
  this.busy = true;
@@ -28488,7 +28494,7 @@ class RouterOutlet {
28488
28494
  changed = await this.transition(enteringEl, leavingEl, opts);
28489
28495
  }
28490
28496
  catch (e) {
28491
- console.error(e);
28497
+ printIonError('[ion-router-outlet]', e);
28492
28498
  }
28493
28499
  unlock();
28494
28500
  return changed;
@@ -28584,7 +28590,7 @@ class RouterOutlet {
28584
28590
  return true;
28585
28591
  }
28586
28592
  render() {
28587
- return hAsync("slot", { key: '8d0c163c5f63158e16ef2db7cc3c756cf597461d' });
28593
+ return hAsync("slot", { key: '22294f2468afd7cd1ce32639876b3807b46d0778' });
28588
28594
  }
28589
28595
  get el() { return getElement(this); }
28590
28596
  static get watchers() { return {
@@ -29701,7 +29707,7 @@ class SegmentButton {
29701
29707
  }
29702
29708
  // Prevent buttons from being disabled when associated with segment content
29703
29709
  if (this.contentId && this.disabled) {
29704
- console.warn(`Segment Button: Segment buttons cannot be disabled when associated with an <ion-segment-content>.`);
29710
+ printIonWarning(`Segment Button: Segment buttons cannot be disabled when associated with an <ion-segment-content>.`);
29705
29711
  this.disabled = false;
29706
29712
  }
29707
29713
  }
@@ -29722,12 +29728,12 @@ class SegmentButton {
29722
29728
  const segmentContent = document.getElementById(this.contentId);
29723
29729
  // If no associated Segment Content exists, log an error and return
29724
29730
  if (!segmentContent) {
29725
- console.error(`Segment Button: Unable to find Segment Content with id="${this.contentId}".`);
29731
+ printIonError(`Segment Button: Unable to find Segment Content with id="${this.contentId}".`);
29726
29732
  return;
29727
29733
  }
29728
29734
  // Ensure the found element is a valid ION-SEGMENT-CONTENT
29729
29735
  if (segmentContent.tagName !== 'ION-SEGMENT-CONTENT') {
29730
- console.error(`Segment Button: Element with id="${this.contentId}" is not an <ion-segment-content> element.`);
29736
+ printIonError(`Segment Button: Element with id="${this.contentId}" is not an <ion-segment-content> element.`);
29731
29737
  return;
29732
29738
  }
29733
29739
  }
@@ -29752,7 +29758,7 @@ class SegmentButton {
29752
29758
  const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
29753
29759
  const mode = getIonMode$1(this);
29754
29760
  const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
29755
- return (hAsync(Host, { key: 'f2f679a08b131cd35d63f649b9d1f1907df30a89', class: {
29761
+ return (hAsync(Host, { key: '606381dc0ede1dc80b7a01a4cbb5793a4bf2d7b0', class: {
29756
29762
  [mode]: true,
29757
29763
  'in-toolbar': hostContext('ion-toolbar', this.el),
29758
29764
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
@@ -29768,7 +29774,7 @@ class SegmentButton {
29768
29774
  'ion-activatable': true,
29769
29775
  'ion-activatable-instant': true,
29770
29776
  'ion-focusable': true,
29771
- } }, hAsync("button", Object.assign({ key: '8e887b5031da705a3695c0870be08696d66188de', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), hAsync("span", { key: '73b795c39cb09438e50922abf6b3a010e31fa2b6', class: "button-inner" }, hAsync("slot", { key: '9769ddc917d7e459bd80dcd81c10c379e73d1b3e' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '8e4c06d6bae1034af8cc5db86fcca0ae72d042b1' })), hAsync("div", { key: 'ae73ee0e429e54a43269f99b6d3d7e1c6e8f60cc', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, hAsync("div", { key: 'd38eabe8161403799cfbad73dd6bf912d965442c', part: "indicator-background", class: "segment-button-indicator-background" }))));
29777
+ } }, hAsync("button", Object.assign({ key: 'dbe786d01b23e7018ad455d20ead6a14f34fc847', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), hAsync("span", { key: '39e3ef53263018ae1d478363cbc30be9c3c97b03', class: "button-inner" }, hAsync("slot", { key: 'a4b2868f29160e2237e9710a85a7499da43eef25' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '0805557748158d5ddab3022c5a959300d62adc8a' })), hAsync("div", { key: 'b64de5384de97b0db6ba4c2203bce45ed7947ec8', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, hAsync("div", { key: 'd82072cd27a8ce023a8975cabe1071d6154efcb3', part: "indicator-background", class: "segment-button-indicator-background" }))));
29772
29778
  }
29773
29779
  get el() { return getElement(this); }
29774
29780
  static get watchers() { return {
@@ -30180,11 +30186,11 @@ class Select {
30180
30186
  createOverlay(ev) {
30181
30187
  let selectInterface = this.interface;
30182
30188
  if (selectInterface === 'action-sheet' && this.multiple) {
30183
- console.warn(`Select interface cannot be "${selectInterface}" with a multi-value select. Using the "alert" interface instead.`);
30189
+ printIonWarning(`Select interface cannot be "${selectInterface}" with a multi-value select. Using the "alert" interface instead.`);
30184
30190
  selectInterface = 'alert';
30185
30191
  }
30186
30192
  if (selectInterface === 'popover' && !ev) {
30187
- console.warn(`Select interface cannot be a "${selectInterface}" without passing an event. Using the "alert" interface instead.`);
30193
+ printIonWarning(`Select interface cannot be a "${selectInterface}" without passing an event. Using the "alert" interface instead.`);
30188
30194
  selectInterface = 'alert';
30189
30195
  }
30190
30196
  if (selectInterface === 'action-sheet') {
@@ -30622,7 +30628,7 @@ class Select {
30622
30628
  * TODO(FW-5592): Remove hasStartEndSlots condition
30623
30629
  */
30624
30630
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
30625
- return (hAsync(Host, { key: 'aa7bd7fbb6479c7805486990650a406e5470fd13', onClick: this.onClick, class: createColorClasses$1(this.color, {
30631
+ return (hAsync(Host, { key: '03f157a6ba7453306e45228b41be0b6e71f699f3', onClick: this.onClick, class: createColorClasses$1(this.color, {
30626
30632
  [mode]: true,
30627
30633
  'in-item': inItem,
30628
30634
  'in-item-color': hostContext('ion-item.ion-color', el),
@@ -30638,7 +30644,7 @@ class Select {
30638
30644
  [`select-justify-${justify}`]: justifyEnabled,
30639
30645
  [`select-shape-${shape}`]: shape !== undefined,
30640
30646
  [`select-label-placement-${labelPlacement}`]: true,
30641
- }) }, hAsync("label", { key: 'fde3cdfd0ef7d1a20263e35ff4358ee7f61a789f', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), hAsync("div", { key: '6fb8deedc827b6be2f19f9e57a62efefaaba200f', class: "select-wrapper-inner" }, hAsync("slot", { key: 'a57a204ea1cbd9c4bac338f14e196e780dab0a10', name: "start" }), hAsync("div", { key: '78b83e1484a446537e038527d539d997e330cd69', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), hAsync("slot", { key: '9fc660134e5247c4e5243c7d9d71ac6cec08705d', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && hAsync("div", { key: '7f143285efa7fd7756dfdc5517ca33e84c8a027e', class: "select-highlight" })), this.renderBottomContent()));
30647
+ }) }, hAsync("label", { key: '6f171e003ab60c2ef9f36be6e0c34f1bdc883d40', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), hAsync("div", { key: 'b060e7bf4f8d516d77cdd0ca2de9cb38186759ff', class: "select-wrapper-inner" }, hAsync("slot", { key: '8e26c73e43dfa00251d211809483c8d20d676228', name: "start" }), hAsync("div", { key: 'dd1a97120815e641de19120d20afe1bc1127c17e', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), hAsync("slot", { key: '8e4999ced46bba4b3a62adeaf522f39f04c48208', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && hAsync("div", { key: '19a7468758cac09cb6c12b8af291e3a1627230ac', class: "select-highlight" })), this.renderBottomContent()));
30642
30648
  }
30643
30649
  get el() { return getElement(this); }
30644
30650
  static get watchers() { return {
@@ -31159,12 +31165,12 @@ class SplitPane {
31159
31165
  }
31160
31166
  render() {
31161
31167
  const mode = getIonMode$1(this);
31162
- return (hAsync(Host, { key: '76be70d7fbebc52646a5851f47accc1006615b85', class: {
31168
+ return (hAsync(Host, { key: '52cad6413ba48644e647b951d72b038469f7c07e', class: {
31163
31169
  [mode]: true,
31164
31170
  // Used internally for styling
31165
31171
  [`split-pane-${mode}`]: true,
31166
31172
  'split-pane-visible': this.visible,
31167
- } }, hAsync("slot", { key: '9a859530f4fb18aff43255bc3940feb9aca625d7' })));
31173
+ } }, hAsync("slot", { key: 'd019e1e92a3b6faf55a7baab1ebfbfe1563873eb' })));
31168
31174
  }
31169
31175
  get el() { return getElement(this); }
31170
31176
  static get watchers() { return {
@@ -31226,17 +31232,17 @@ class Tab {
31226
31232
  return attachComponent(this.delegate, this.el, this.component, ['ion-page']);
31227
31233
  }
31228
31234
  catch (e) {
31229
- console.error(e);
31235
+ printIonError('[ion-tab]', e);
31230
31236
  }
31231
31237
  }
31232
31238
  return Promise.resolve(undefined);
31233
31239
  }
31234
31240
  render() {
31235
31241
  const { tab, active, component } = this;
31236
- return (hAsync(Host, { key: '2107ece2f1ebdf748bac8adb78a9ad67e7fc9057', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
31242
+ return (hAsync(Host, { key: '2eb12b019e92c5ea1922c31fdd4ac16deb1079e3', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
31237
31243
  'ion-page': component === undefined,
31238
31244
  'tab-hidden': !active,
31239
- } }, hAsync("slot", { key: 'b4a1bc1aa79f6b82b8f77b544bcb74e65229b541' })));
31245
+ } }, hAsync("slot", { key: '9619fe62aac5ae64a08f29c4933fab84fe410a3a' })));
31240
31246
  }
31241
31247
  get el() { return getElement(this); }
31242
31248
  static get watchers() { return {
@@ -31604,7 +31610,7 @@ class Tabs {
31604
31610
  return Array.from(this.el.querySelectorAll('ion-tab'));
31605
31611
  }
31606
31612
  render() {
31607
- return (hAsync(Host, { key: 'd357c4607cfc89fb88404fe12ea7ef5b397fe6bf', onIonTabButtonClick: this.onTabClicked }, hAsync("slot", { key: '18661896589a4ab3c74164f448b928abec9b4db0', name: "top" }), hAsync("div", { key: '3bf30ea2540a196e868a78a861824b4b5d933afd', class: "tabs-inner" }, hAsync("slot", { key: '7cfc154d4d6c1642188ab6508a6be72c8234585e' })), hAsync("slot", { key: '8057679c959195cbdfae156b8ae0cbfd978c5037', name: "bottom" })));
31613
+ return (hAsync(Host, { key: '20b97196d78c1b3f3faf31618a8a2347e087f06b', onIonTabButtonClick: this.onTabClicked }, hAsync("slot", { key: 'b0823fbae6e47743cfd12c376b365ad7e32cec7c', name: "top" }), hAsync("div", { key: 'eaffd7e4d69ab9489a387e3bbb36e3bab72203a0', class: "tabs-inner" }, hAsync("slot", { key: '20bb66a2937e3ec473aa59c4075ce581b5411677' })), hAsync("slot", { key: '1529dd361f050f52074f51c73b3982ba827dc3a5', name: "bottom" })));
31608
31614
  }
31609
31615
  get el() { return getElement(this); }
31610
31616
  static get style() { return IonTabsStyle0; }
@@ -31628,7 +31634,7 @@ class Tabs {
31628
31634
  const getTab = (tabs, tab) => {
31629
31635
  const tabEl = typeof tab === 'string' ? tabs.find((t) => t.tab === tab) : tab;
31630
31636
  if (!tabEl) {
31631
- console.error(`tab with id: "${tabEl}" does not exist`);
31637
+ printIonError(`tab with id: "${tabEl}" does not exist`);
31632
31638
  }
31633
31639
  return tabEl;
31634
31640
  };
@@ -32894,7 +32900,7 @@ class Toast {
32894
32900
  }
32895
32901
  }
32896
32902
  catch (e) {
32897
- console.error(e);
32903
+ printIonError('Toast button handler error', e);
32898
32904
  }
32899
32905
  }
32900
32906
  return true;
@@ -32948,9 +32954,9 @@ class Toast {
32948
32954
  if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
32949
32955
  printIonWarning('This toast is using start and end buttons with the stacked toast layout. We recommend following the best practice of using either start or end buttons with the stacked toast layout.', el);
32950
32956
  }
32951
- return (hAsync(Host, Object.assign({ key: '34036afc0701173d51c9c11ea4a2e1d65685ba41', tabindex: "-1" }, this.htmlAttributes, { style: {
32957
+ return (hAsync(Host, Object.assign({ key: '3eab64b719765b2992bbe9d19769f96fcde00887', tabindex: "-1" }, this.htmlAttributes, { style: {
32952
32958
  zIndex: `${60000 + this.overlayIndex}`,
32953
- }, class: createColorClasses$1(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), hAsync("div", { key: 'd927e43957f47888ce4e64f1e99c935d55757af7', class: wrapperClass }, hAsync("div", { key: 'ca43bc42478181acdf8cdea6601a85fa95d12216', class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (hAsync("ion-icon", { key: 'fdd6fb8f6e947ed002bd2e63fdc8ec7e764f4a7d', class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), hAsync("div", { key: '37c16c81ee3e4304379dfbcabdffe73db73e4653', class: "toast-content", role: "status", "aria-atomic": "true", "aria-live": "polite" }, !revealContentToScreenReader && header !== undefined && this.renderHeader('oldHeader', 'true'), !revealContentToScreenReader && message !== undefined && this.renderToastMessage('oldMessage', 'true'), revealContentToScreenReader && header !== undefined && this.renderHeader('header'), revealContentToScreenReader && message !== undefined && this.renderToastMessage('header')), this.renderButtons(endButtons, 'end')))));
32959
+ }, class: createColorClasses$1(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), hAsync("div", { key: '603f1fa61ac0f2577086cc82dfd4683d4bc77fe3', class: wrapperClass }, hAsync("div", { key: '3b7fecbd843bd77aa4ec8d40e82827af005a9d6a', class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (hAsync("ion-icon", { key: '3abef9dfd0af960a5d6f0d17219d3f56f5e68915', class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), hAsync("div", { key: '0a7884ee2e2189e8bdd458c147e91ecd34b1c6a8', class: "toast-content", role: "status", "aria-atomic": "true", "aria-live": "polite" }, !revealContentToScreenReader && header !== undefined && this.renderHeader('oldHeader', 'true'), !revealContentToScreenReader && message !== undefined && this.renderToastMessage('oldMessage', 'true'), revealContentToScreenReader && header !== undefined && this.renderHeader('header'), revealContentToScreenReader && message !== undefined && this.renderToastMessage('header')), this.renderButtons(endButtons, 'end')))));
32954
32960
  }
32955
32961
  get el() { return getElement(this); }
32956
32962
  static get watchers() { return {