voyager-ionic-core 8.5.3 → 8.5.5

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 (615) hide show
  1. package/components/alert.js +5 -4
  2. package/components/animation.js +3 -2
  3. package/components/button.js +6 -6
  4. package/components/capacitor.js +1 -1
  5. package/components/config.js +3 -1
  6. package/components/data.js +3 -3
  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 +3 -3
  18. package/components/ion-accordion-group.js +4 -4
  19. package/components/ion-accordion.js +2 -1
  20. package/components/ion-app.js +4 -4
  21. package/components/ion-back-button.js +2 -1
  22. package/components/ion-datetime-button.js +7 -7
  23. package/components/ion-datetime.js +17 -17
  24. package/components/ion-infinite-scroll-content.js +2 -1
  25. package/components/ion-input-password-toggle.js +6 -6
  26. package/components/ion-input.js +3 -3
  27. package/components/ion-item-sliding.js +3 -2
  28. package/components/ion-loading.js +2 -1
  29. package/components/ion-menu-button.js +3 -2
  30. package/components/ion-menu-toggle.js +1 -1
  31. package/components/ion-menu.js +7 -6
  32. package/components/ion-nav.js +5 -5
  33. package/components/ion-picker-legacy.js +4 -4
  34. package/components/ion-progress-bar.js +2 -1
  35. package/components/ion-range.js +6 -6
  36. package/components/ion-refresher-content.js +2 -1
  37. package/components/ion-refresher.js +3 -2
  38. package/components/ion-router-outlet.js +4 -3
  39. package/components/ion-router.js +9 -8
  40. package/components/ion-searchbar.js +2 -1
  41. package/components/ion-segment-button.js +6 -5
  42. package/components/ion-select.js +14 -7
  43. package/components/ion-skeleton-text.js +2 -1
  44. package/components/ion-split-pane.js +5 -4
  45. package/components/ion-tab-button.js +2 -1
  46. package/components/ion-tab.js +5 -4
  47. package/components/ion-tabs.js +3 -2
  48. package/components/ion-textarea.js +2 -2
  49. package/components/ion-toast.js +11 -11
  50. package/components/ion-toggle.js +18 -8
  51. package/components/ionic-global.js +3 -77
  52. package/components/keyboard-controller.js +1 -1
  53. package/components/menu-toggle-util.js +1 -1
  54. package/components/modal.js +10 -10
  55. package/components/notch-controller.js +1 -1
  56. package/components/overlays.js +6 -6
  57. package/components/picker-column.js +1 -1
  58. package/components/popover.js +4 -4
  59. package/components/spinner.js +2 -1
  60. package/dist/cjs/{animation-b4fdf128.js → animation-ab2d3449.js} +4 -3
  61. package/dist/cjs/{app-globals-dd592863.js → app-globals-ddceb1f4.js} +1 -1
  62. package/dist/cjs/{config-4f60b98a.js → config-f6225ae7.js} +3 -1
  63. package/dist/cjs/{data-27cc2c9c.js → data-94e8d392.js} +3 -3
  64. package/dist/cjs/{framework-delegate-50a86d56.js → framework-delegate-862d9d00.js} +1 -1
  65. package/dist/cjs/{hardware-back-button-5a99001f.js → hardware-back-button-3d2b1004.js} +7 -8
  66. package/dist/cjs/{helpers-3a248559.js → helpers-8a48fdea.js} +3 -1
  67. package/dist/cjs/{index-e630fd95.js → index-1eff7149.js} +7 -8
  68. package/dist/cjs/{index-509ca0d3.js → index-31b07b9c.js} +2 -2
  69. package/dist/cjs/{index-4b70187a.js → index-a96d31ae.js} +5 -5
  70. package/dist/cjs/index-cc858e97.js +129 -0
  71. package/dist/cjs/{index-e36bd277.js → index-dbe01e08.js} +2 -1
  72. package/dist/cjs/index.cjs.js +19 -13
  73. package/dist/cjs/{input-shims-22a9973f.js → input-shims-415be7ee.js} +3 -5
  74. package/dist/cjs/{input.utils-e82b8ed0.js → input.utils-a7957fd6.js} +3 -3
  75. package/dist/cjs/ion-accordion_2.cjs.entry.js +9 -9
  76. package/dist/cjs/ion-action-sheet.cjs.entry.js +7 -7
  77. package/dist/cjs/ion-alert.cjs.entry.js +12 -12
  78. package/dist/cjs/ion-app_8.cjs.entry.js +23 -23
  79. package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -1
  80. package/dist/cjs/ion-back-button.cjs.entry.js +8 -7
  81. package/dist/cjs/ion-backdrop.cjs.entry.js +2 -1
  82. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +3 -2
  83. package/dist/cjs/ion-button_2.cjs.entry.js +8 -8
  84. package/dist/cjs/ion-card_5.cjs.entry.js +3 -2
  85. package/dist/cjs/ion-checkbox.cjs.entry.js +3 -2
  86. package/dist/cjs/ion-chip.cjs.entry.js +2 -1
  87. package/dist/cjs/ion-col_3.cjs.entry.js +2 -1
  88. package/dist/cjs/ion-datetime-button.cjs.entry.js +10 -10
  89. package/dist/cjs/ion-datetime_3.cjs.entry.js +27 -27
  90. package/dist/cjs/ion-fab_3.cjs.entry.js +3 -2
  91. package/dist/cjs/ion-img.cjs.entry.js +3 -2
  92. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +7 -7
  93. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +7 -7
  94. package/dist/cjs/ion-input.cjs.entry.js +8 -8
  95. package/dist/cjs/ion-item-option_3.cjs.entry.js +6 -6
  96. package/dist/cjs/ion-item_8.cjs.entry.js +4 -3
  97. package/dist/cjs/ion-loading.cjs.entry.js +10 -10
  98. package/dist/cjs/ion-menu_3.cjs.entry.js +24 -24
  99. package/dist/cjs/ion-modal.cjs.entry.js +18 -18
  100. package/dist/cjs/ion-nav_2.cjs.entry.js +18 -18
  101. package/dist/cjs/ion-picker-column-option.cjs.entry.js +3 -2
  102. package/dist/cjs/ion-picker-column.cjs.entry.js +3 -2
  103. package/dist/cjs/ion-picker.cjs.entry.js +2 -1
  104. package/dist/cjs/ion-popover.cjs.entry.js +11 -11
  105. package/dist/cjs/ion-progress-bar.cjs.entry.js +4 -3
  106. package/dist/cjs/ion-radio_2.cjs.entry.js +3 -2
  107. package/dist/cjs/ion-range.cjs.entry.js +9 -9
  108. package/dist/cjs/ion-refresher_2.cjs.entry.js +14 -14
  109. package/dist/cjs/ion-reorder_2.cjs.entry.js +4 -4
  110. package/dist/cjs/ion-ripple-effect.cjs.entry.js +2 -1
  111. package/dist/cjs/ion-route_4.cjs.entry.js +11 -10
  112. package/dist/cjs/ion-searchbar.cjs.entry.js +8 -7
  113. package/dist/cjs/ion-segment_2.cjs.entry.js +8 -7
  114. package/dist/cjs/ion-select-modal.cjs.entry.js +6 -6
  115. package/dist/cjs/ion-select_3.cjs.entry.js +21 -16
  116. package/dist/cjs/ion-spinner.cjs.entry.js +4 -3
  117. package/dist/cjs/ion-split-pane.cjs.entry.js +6 -5
  118. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +4 -3
  119. package/dist/cjs/ion-tab_2.cjs.entry.js +8 -7
  120. package/dist/cjs/ion-text.cjs.entry.js +2 -1
  121. package/dist/cjs/ion-textarea.cjs.entry.js +7 -7
  122. package/dist/cjs/ion-toast.cjs.entry.js +18 -18
  123. package/dist/cjs/ion-toggle.cjs.entry.js +20 -10
  124. package/dist/cjs/{ionic-global-acb665ad.js → ionic-global-6dea5a96.js} +15 -90
  125. package/dist/cjs/ionic.cjs.js +4 -3
  126. package/dist/cjs/{ios.transition-ae7afca9.js → ios.transition-a131cd4d.js} +4 -5
  127. package/dist/cjs/loader.cjs.js +4 -3
  128. package/dist/cjs/{md.transition-26003e25.js → md.transition-e018ebe5.js} +4 -5
  129. package/dist/cjs/{notch-controller-ae03a497.js → notch-controller-09b7f358.js} +1 -1
  130. package/dist/cjs/{overlays-32e1b66b.js → overlays-4c291a05.js} +19 -19
  131. package/dist/cjs/{status-tap-03023755.js → status-tap-f1acefac.js} +3 -4
  132. package/dist/cjs/{swipe-back-652bdd0b.js → swipe-back-442ca3d7.js} +2 -1
  133. package/dist/collection/components/accordion-group/accordion-group.js +3 -3
  134. package/dist/collection/components/alert/alert.js +4 -3
  135. package/dist/collection/components/app/app.js +2 -2
  136. package/dist/collection/components/button/button.js +5 -5
  137. package/dist/collection/components/datetime/datetime.js +11 -11
  138. package/dist/collection/components/datetime/utils/comparison.js +1 -1
  139. package/dist/collection/components/datetime/utils/parse.js +1 -1
  140. package/dist/collection/components/datetime/utils/state.js +1 -1
  141. package/dist/collection/components/datetime/utils/validate.js +4 -4
  142. package/dist/collection/components/datetime-button/datetime-button.js +6 -6
  143. package/dist/collection/components/input/input.js +3 -3
  144. package/dist/collection/components/input/input.utils.js +1 -1
  145. package/dist/collection/components/input-password-toggle/input-password-toggle.js +5 -5
  146. package/dist/collection/components/item-sliding/item-sliding.js +3 -2
  147. package/dist/collection/components/menu/menu.js +5 -4
  148. package/dist/collection/components/modal/modal.js +7 -7
  149. package/dist/collection/components/nav/nav.js +3 -3
  150. package/dist/collection/components/picker-legacy/picker.js +3 -3
  151. package/dist/collection/components/popover/popover.js +3 -3
  152. package/dist/collection/components/range/range.js +5 -5
  153. package/dist/collection/components/refresher/refresher.js +3 -2
  154. package/dist/collection/components/router/router.js +8 -7
  155. package/dist/collection/components/router/utils/dom.js +2 -1
  156. package/dist/collection/components/router-outlet/router-outlet.js +3 -2
  157. package/dist/collection/components/segment-button/segment-button.js +6 -5
  158. package/dist/collection/components/select/select.ios.css +5 -3
  159. package/dist/collection/components/select/select.js +13 -6
  160. package/dist/collection/components/select/select.md.css +55 -16
  161. package/dist/collection/components/split-pane/split-pane.js +5 -4
  162. package/dist/collection/components/tab/tab.js +5 -4
  163. package/dist/collection/components/tabs/tabs.js +3 -2
  164. package/dist/collection/components/textarea/textarea.js +2 -2
  165. package/dist/collection/components/toast/animations/utils.js +1 -1
  166. package/dist/collection/components/toast/toast.js +8 -8
  167. package/dist/collection/components/toggle/toggle.ios.css +5 -17
  168. package/dist/collection/components/toggle/toggle.js +14 -5
  169. package/dist/collection/components/toggle/toggle.md.css +5 -17
  170. package/dist/collection/global/ionic-global.js +2 -1
  171. package/dist/collection/index.js +1 -0
  172. package/dist/collection/utils/animation/animation.js +2 -1
  173. package/dist/collection/utils/hardware-back-button.js +2 -1
  174. package/dist/collection/utils/helpers.js +2 -1
  175. package/dist/collection/utils/logging/index.js +10 -4
  176. package/dist/collection/utils/overlays.js +4 -4
  177. package/dist/collection/utils/sanitization/index.js +2 -1
  178. package/dist/docs.json +1 -1
  179. package/dist/esm/{animation-eab5a4ca.js → animation-8b25e105.js} +2 -1
  180. package/dist/esm/{app-globals-7b6cbf1a.js → app-globals-dbdbb3df.js} +1 -1
  181. package/dist/esm/{config-49c88215.js → config-9898ed97.js} +3 -1
  182. package/dist/esm/{data-174ad5e0.js → data-0d7ea6eb.js} +3 -3
  183. package/dist/esm/{framework-delegate-2eea1763.js → framework-delegate-56b467ad.js} +1 -1
  184. package/dist/esm/{hardware-back-button-864101a3.js → hardware-back-button-a7eb8233.js} +2 -3
  185. package/dist/esm/{helpers-78efeec3.js → helpers-d94bc8ad.js} +3 -1
  186. package/dist/esm/{index-f9f5d018.js → index-18f31305.js} +5 -5
  187. package/dist/esm/{index-ecb55b8d.js → index-68c0d151.js} +4 -5
  188. package/dist/esm/{index-e919e353.js → index-9a17db3d.js} +2 -2
  189. package/dist/esm/{index-40894f4b.js → index-be190feb.js} +2 -1
  190. package/dist/esm/index-cfd9c1f2.js +121 -0
  191. package/dist/esm/index.js +12 -12
  192. package/dist/esm/{input-shims-7dc1f6dc.js → input-shims-279903e2.js} +3 -5
  193. package/dist/esm/{input.utils-28bf4ef0.js → input.utils-40504d6d.js} +3 -3
  194. package/dist/esm/ion-accordion_2.entry.js +6 -6
  195. package/dist/esm/ion-action-sheet.entry.js +7 -7
  196. package/dist/esm/ion-alert.entry.js +11 -11
  197. package/dist/esm/ion-app_8.entry.js +16 -16
  198. package/dist/esm/ion-avatar_3.entry.js +2 -1
  199. package/dist/esm/ion-back-button.entry.js +3 -2
  200. package/dist/esm/ion-backdrop.entry.js +2 -1
  201. package/dist/esm/ion-breadcrumb_2.entry.js +3 -2
  202. package/dist/esm/ion-button_2.entry.js +8 -8
  203. package/dist/esm/ion-card_5.entry.js +3 -2
  204. package/dist/esm/ion-checkbox.entry.js +3 -2
  205. package/dist/esm/ion-chip.entry.js +2 -1
  206. package/dist/esm/ion-col_3.entry.js +2 -1
  207. package/dist/esm/ion-datetime-button.entry.js +10 -10
  208. package/dist/esm/ion-datetime_3.entry.js +27 -27
  209. package/dist/esm/ion-fab_3.entry.js +3 -2
  210. package/dist/esm/ion-img.entry.js +3 -2
  211. package/dist/esm/ion-infinite-scroll_2.entry.js +5 -5
  212. package/dist/esm/ion-input-password-toggle.entry.js +7 -7
  213. package/dist/esm/ion-input.entry.js +8 -8
  214. package/dist/esm/ion-item-option_3.entry.js +6 -6
  215. package/dist/esm/ion-item_8.entry.js +3 -2
  216. package/dist/esm/ion-loading.entry.js +8 -8
  217. package/dist/esm/ion-menu_3.entry.js +12 -12
  218. package/dist/esm/ion-modal.entry.js +16 -16
  219. package/dist/esm/ion-nav_2.entry.js +8 -8
  220. package/dist/esm/ion-picker-column-option.entry.js +3 -2
  221. package/dist/esm/ion-picker-column.entry.js +3 -2
  222. package/dist/esm/ion-picker.entry.js +2 -1
  223. package/dist/esm/ion-popover.entry.js +11 -11
  224. package/dist/esm/ion-progress-bar.entry.js +3 -2
  225. package/dist/esm/ion-radio_2.entry.js +3 -2
  226. package/dist/esm/ion-range.entry.js +9 -9
  227. package/dist/esm/ion-refresher_2.entry.js +8 -8
  228. package/dist/esm/ion-reorder_2.entry.js +4 -4
  229. package/dist/esm/ion-ripple-effect.entry.js +2 -1
  230. package/dist/esm/ion-route_4.entry.js +11 -10
  231. package/dist/esm/ion-searchbar.entry.js +3 -2
  232. package/dist/esm/ion-segment_2.entry.js +8 -7
  233. package/dist/esm/ion-select-modal.entry.js +6 -6
  234. package/dist/esm/ion-select_3.entry.js +19 -14
  235. package/dist/esm/ion-spinner.entry.js +2 -1
  236. package/dist/esm/ion-split-pane.entry.js +6 -5
  237. package/dist/esm/ion-tab-bar_2.entry.js +3 -2
  238. package/dist/esm/ion-tab_2.entry.js +8 -7
  239. package/dist/esm/ion-text.entry.js +2 -1
  240. package/dist/esm/ion-textarea.entry.js +7 -7
  241. package/dist/esm/ion-toast.entry.js +16 -16
  242. package/dist/esm/ion-toggle.entry.js +19 -9
  243. package/dist/esm/{ionic-global-ca86cf32.js → ionic-global-b26f573e.js} +3 -77
  244. package/dist/esm/ionic.js +4 -3
  245. package/dist/esm/{ios.transition-7fe5dbea.js → ios.transition-4047cb68.js} +4 -5
  246. package/dist/esm/loader.js +4 -3
  247. package/dist/esm/{md.transition-8dc58b46.js → md.transition-30ce8d1b.js} +4 -5
  248. package/dist/esm/{notch-controller-00d92e89.js → notch-controller-1a1f7183.js} +1 -1
  249. package/dist/esm/{overlays-41a5d51b.js → overlays-d99dcb0a.js} +8 -8
  250. package/dist/esm/{status-tap-f6d08e9e.js → status-tap-42a8af65.js} +3 -4
  251. package/dist/esm/{swipe-back-5c7708b8.js → swipe-back-04123e7c.js} +2 -1
  252. package/dist/esm-es5/animation-8b25e105.js +4 -0
  253. package/dist/esm-es5/app-globals-dbdbb3df.js +4 -0
  254. package/dist/esm-es5/config-9898ed97.js +4 -0
  255. package/dist/esm-es5/data-0d7ea6eb.js +4 -0
  256. package/dist/esm-es5/{framework-delegate-2eea1763.js → framework-delegate-56b467ad.js} +1 -1
  257. package/dist/esm-es5/hardware-back-button-a7eb8233.js +4 -0
  258. package/dist/esm-es5/helpers-d94bc8ad.js +4 -0
  259. package/dist/esm-es5/{index-f9f5d018.js → index-18f31305.js} +1 -1
  260. package/dist/esm-es5/index-68c0d151.js +4 -0
  261. package/dist/esm-es5/{index-e919e353.js → index-9a17db3d.js} +1 -1
  262. package/dist/esm-es5/index-be190feb.js +4 -0
  263. package/dist/esm-es5/index-cfd9c1f2.js +5 -0
  264. package/dist/esm-es5/index.js +1 -1
  265. package/dist/esm-es5/input-shims-279903e2.js +4 -0
  266. package/dist/esm-es5/input.utils-40504d6d.js +4 -0
  267. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  268. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  269. package/dist/esm-es5/ion-alert.entry.js +1 -1
  270. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  271. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  272. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  273. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  274. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  275. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  276. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  277. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  278. package/dist/esm-es5/ion-chip.entry.js +1 -1
  279. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  280. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  281. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  282. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  283. package/dist/esm-es5/ion-img.entry.js +1 -1
  284. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  285. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  286. package/dist/esm-es5/ion-input.entry.js +1 -1
  287. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  288. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  289. package/dist/esm-es5/ion-loading.entry.js +1 -1
  290. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  291. package/dist/esm-es5/ion-modal.entry.js +1 -1
  292. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  293. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  294. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  295. package/dist/esm-es5/ion-picker.entry.js +1 -1
  296. package/dist/esm-es5/ion-popover.entry.js +1 -1
  297. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  298. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  299. package/dist/esm-es5/ion-range.entry.js +1 -1
  300. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  301. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  302. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  303. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  304. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  305. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  306. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  307. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  308. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  309. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  310. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  311. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  312. package/dist/esm-es5/ion-text.entry.js +1 -1
  313. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  314. package/dist/esm-es5/ion-toast.entry.js +1 -1
  315. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  316. package/dist/esm-es5/ionic-global-b26f573e.js +4 -0
  317. package/dist/esm-es5/ionic.js +1 -1
  318. package/dist/esm-es5/ios.transition-4047cb68.js +4 -0
  319. package/dist/esm-es5/loader.js +1 -1
  320. package/dist/esm-es5/md.transition-30ce8d1b.js +4 -0
  321. package/dist/esm-es5/{notch-controller-00d92e89.js → notch-controller-1a1f7183.js} +1 -1
  322. package/dist/esm-es5/overlays-d99dcb0a.js +4 -0
  323. package/dist/esm-es5/status-tap-42a8af65.js +4 -0
  324. package/dist/esm-es5/swipe-back-04123e7c.js +4 -0
  325. package/dist/ionic/index.esm.js +1 -1
  326. package/dist/ionic/ionic.esm.js +1 -1
  327. package/dist/ionic/ionic.js +1 -1
  328. package/dist/ionic/p-00023f5a.system.js +4 -0
  329. package/dist/ionic/p-03480b95.system.entry.js +4 -0
  330. package/dist/ionic/p-08cef0b1.entry.js +4 -0
  331. package/dist/ionic/p-0af640d6.entry.js +4 -0
  332. package/dist/ionic/{p-756e4559.js → p-0f5e6225.js} +1 -1
  333. package/dist/ionic/p-105b2e8b.entry.js +4 -0
  334. package/dist/ionic/p-10a1bddc.js +4 -0
  335. package/dist/ionic/p-117d0013.system.entry.js +4 -0
  336. package/dist/ionic/p-12193821.system.js +4 -0
  337. package/dist/ionic/p-12830298.system.entry.js +4 -0
  338. package/dist/ionic/p-14154301.system.entry.js +4 -0
  339. package/dist/ionic/{p-14114a59.system.entry.js → p-1706b406.system.entry.js} +1 -1
  340. package/dist/ionic/p-17e21141.js +4 -0
  341. package/dist/ionic/p-19494658.system.entry.js +4 -0
  342. package/dist/ionic/{p-9e45532a.system.js → p-1966a13c.system.js} +1 -1
  343. package/dist/ionic/p-1974d5b2.system.js +4 -0
  344. package/dist/ionic/p-1a7df1c3.system.js +4 -0
  345. package/dist/ionic/p-1a81ac09.system.js +4 -0
  346. package/dist/ionic/p-1b9c59ab.js +4 -0
  347. package/dist/ionic/p-1cb02e44.entry.js +4 -0
  348. package/dist/ionic/p-1d307396.system.js +4 -0
  349. package/dist/ionic/p-1f871cf8.entry.js +4 -0
  350. package/dist/ionic/p-200fc491.js +4 -0
  351. package/dist/ionic/p-2233344a.system.js +4 -0
  352. package/dist/ionic/p-2469240b.entry.js +4 -0
  353. package/dist/ionic/{p-7058a5e4.system.entry.js → p-24a6c8a3.system.entry.js} +1 -1
  354. package/dist/ionic/p-257fb777.entry.js +4 -0
  355. package/dist/ionic/{p-c3f9d9fe.js → p-25b10f81.js} +1 -1
  356. package/dist/ionic/p-2bb55ebc.js +4 -0
  357. package/dist/ionic/p-2bff0e69.system.entry.js +4 -0
  358. package/dist/ionic/{p-7b886108.system.entry.js → p-2fa37fdc.system.entry.js} +1 -1
  359. package/dist/ionic/p-31dc303d.entry.js +4 -0
  360. package/dist/ionic/p-3535d6b5.entry.js +4 -0
  361. package/dist/ionic/{p-5578033e.system.entry.js → p-35cdfd77.system.entry.js} +1 -1
  362. package/dist/ionic/p-393ffcc2.entry.js +4 -0
  363. package/dist/ionic/p-39fa7dd1.system.entry.js +4 -0
  364. package/dist/ionic/p-3a30f31b.system.entry.js +4 -0
  365. package/dist/ionic/p-42f08b26.system.entry.js +4 -0
  366. package/dist/ionic/p-481e0885.entry.js +4 -0
  367. package/dist/ionic/p-4a5be299.system.entry.js +4 -0
  368. package/dist/ionic/p-4c667fce.js +4 -0
  369. package/dist/ionic/p-4cf4172e.entry.js +4 -0
  370. package/dist/ionic/p-4da92dac.entry.js +4 -0
  371. package/dist/ionic/p-4ec0e961.system.entry.js +4 -0
  372. package/dist/ionic/{p-d70a9e6d.system.js → p-4ed5db19.system.js} +1 -1
  373. package/dist/ionic/p-50cb2e8b.system.entry.js +4 -0
  374. package/dist/ionic/p-57957c0f.entry.js +4 -0
  375. package/dist/ionic/p-57e55ecb.system.js +4 -0
  376. package/dist/ionic/p-5b67b447.js +4 -0
  377. package/dist/ionic/p-5c9feddc.system.entry.js +4 -0
  378. package/dist/ionic/p-5edf78c5.system.entry.js +4 -0
  379. package/dist/ionic/p-612096e6.system.entry.js +4 -0
  380. package/dist/ionic/p-6201c4ba.entry.js +4 -0
  381. package/dist/ionic/p-625248d0.system.js +4 -0
  382. package/dist/ionic/p-663413be.system.js +4 -0
  383. package/dist/ionic/p-6636a436.js +4 -0
  384. package/dist/ionic/p-66df5468.system.entry.js +4 -0
  385. package/dist/ionic/p-67077d48.entry.js +4 -0
  386. package/dist/ionic/p-67cacd6d.entry.js +4 -0
  387. package/dist/ionic/p-6835ebdd.system.entry.js +4 -0
  388. package/dist/ionic/p-6b8530f5.system.entry.js +4 -0
  389. package/dist/ionic/{p-a7830ff8.entry.js → p-6c474e87.entry.js} +1 -1
  390. package/dist/ionic/p-6dd86ff5.system.entry.js +4 -0
  391. package/dist/ionic/p-6ec0c94a.entry.js +4 -0
  392. package/dist/ionic/p-6f832afe.system.entry.js +4 -0
  393. package/dist/ionic/p-712c0131.entry.js +4 -0
  394. package/dist/ionic/{p-e11ff516.entry.js → p-721f43f9.entry.js} +1 -1
  395. package/dist/ionic/p-7445a2e5.system.js +4 -0
  396. package/dist/ionic/p-7611ede3.system.entry.js +4 -0
  397. package/dist/ionic/p-781e2dbb.system.js +4 -0
  398. package/dist/ionic/p-7b8c12c3.entry.js +4 -0
  399. package/dist/ionic/p-7c5c7ae1.system.entry.js +4 -0
  400. package/dist/ionic/p-7e3e6ed2.entry.js +4 -0
  401. package/dist/ionic/{p-4c7e6fec.system.entry.js → p-7ffedf77.system.entry.js} +1 -1
  402. package/dist/ionic/p-809483ac.js +4 -0
  403. package/dist/ionic/{p-65e732b9.entry.js → p-81904a80.entry.js} +1 -1
  404. package/dist/ionic/{p-a6625de8.system.js → p-84096b45.system.js} +1 -1
  405. package/dist/ionic/p-8450f761.entry.js +4 -0
  406. package/dist/ionic/p-8460d95a.entry.js +4 -0
  407. package/dist/ionic/p-85b01465.js +4 -0
  408. package/dist/ionic/p-865fe95c.entry.js +4 -0
  409. package/dist/ionic/p-8674af94.entry.js +4 -0
  410. package/dist/ionic/p-890a4ee2.entry.js +4 -0
  411. package/dist/ionic/p-891553d8.entry.js +4 -0
  412. package/dist/ionic/p-8b050e84.system.js +4 -0
  413. package/dist/ionic/{p-22bc235f.js → p-8d2d39d0.js} +1 -1
  414. package/dist/ionic/p-8dacf4e2.entry.js +4 -0
  415. package/dist/ionic/p-94551927.js +4 -0
  416. package/dist/ionic/p-95001a19.js +4 -0
  417. package/dist/ionic/p-98fd942b.system.entry.js +4 -0
  418. package/dist/ionic/p-9e753482.system.entry.js +4 -0
  419. package/dist/ionic/p-a0fd2fe5.system.entry.js +4 -0
  420. package/dist/ionic/p-a2c6a9c8.entry.js +4 -0
  421. package/dist/ionic/p-a2dd5b69.system.entry.js +4 -0
  422. package/dist/ionic/p-a5dbe0ff.system.entry.js +4 -0
  423. package/dist/ionic/p-a78fa846.entry.js +4 -0
  424. package/dist/ionic/p-a835aca8.entry.js +4 -0
  425. package/dist/ionic/p-a83e3290.system.js +4 -0
  426. package/dist/ionic/{p-624ecf03.js → p-aded71ec.js} +1 -1
  427. package/dist/ionic/p-ae039072.entry.js +4 -0
  428. package/dist/ionic/p-aebfab05.system.entry.js +4 -0
  429. package/dist/ionic/{p-29da3dcd.entry.js → p-b22a021d.entry.js} +1 -1
  430. package/dist/ionic/p-b2e7eda0.system.entry.js +4 -0
  431. package/dist/ionic/p-b445ff65.entry.js +4 -0
  432. package/dist/ionic/{p-d882f1e2.system.entry.js → p-b4d17da0.system.entry.js} +2 -2
  433. package/dist/ionic/p-b5432d15.entry.js +4 -0
  434. package/dist/ionic/p-b6d324f0.js +4 -0
  435. package/dist/ionic/p-b7b1d91a.js +4 -0
  436. package/dist/ionic/{p-f387b3c6.system.entry.js → p-b8050298.system.entry.js} +1 -1
  437. package/dist/ionic/p-b9c793d4.entry.js +4 -0
  438. package/dist/ionic/p-bf184319.system.entry.js +4 -0
  439. package/dist/ionic/{p-8048804d.system.entry.js → p-bfb763d0.system.entry.js} +1 -1
  440. package/dist/ionic/p-c16443a8.system.js +4 -0
  441. package/dist/ionic/{p-49d53551.system.entry.js → p-c1b7d311.system.entry.js} +1 -1
  442. package/dist/ionic/p-c2160d8c.entry.js +4 -0
  443. package/dist/ionic/{p-db3b409e.system.entry.js → p-c26c5c20.system.entry.js} +1 -1
  444. package/dist/ionic/p-c5b77054.entry.js +4 -0
  445. package/dist/ionic/p-c5bfa3e9.entry.js +4 -0
  446. package/dist/ionic/p-c6879aa4.system.entry.js +4 -0
  447. package/dist/ionic/p-cad82569.entry.js +4 -0
  448. package/dist/ionic/p-d16fab3f.entry.js +4 -0
  449. package/dist/ionic/p-d2c3524b.system.entry.js +4 -0
  450. package/dist/ionic/p-d382f09c.system.js +4 -0
  451. package/dist/ionic/p-d984c1ab.system.entry.js +4 -0
  452. package/dist/ionic/p-da6247e5.entry.js +4 -0
  453. package/dist/ionic/p-dabe3bd4.js +4 -0
  454. package/dist/ionic/p-df069a0d.entry.js +4 -0
  455. package/dist/ionic/p-e6068998.system.entry.js +4 -0
  456. package/dist/ionic/p-e727e32d.system.entry.js +4 -0
  457. package/dist/ionic/p-e887b6a9.system.js +4 -0
  458. package/dist/ionic/p-ed005d9c.js +4 -0
  459. package/dist/ionic/{p-b9fa7882.js → p-f08a92cc.js} +1 -1
  460. package/dist/ionic/p-f08dfb19.entry.js +4 -0
  461. package/dist/ionic/p-f0c9f8e3.system.entry.js +4 -0
  462. package/dist/ionic/p-f0ef39ab.entry.js +4 -0
  463. package/dist/ionic/{p-4662a25c.system.entry.js → p-f22490a7.system.entry.js} +1 -1
  464. package/dist/ionic/p-f6e7d104.system.js +4 -0
  465. package/dist/ionic/p-f725bf9e.system.js +4 -0
  466. package/dist/ionic/{p-48ded460.entry.js → p-f8c0c707.entry.js} +1 -1
  467. package/dist/ionic/p-f9a87db2.system.entry.js +4 -0
  468. package/dist/ionic/{p-3855fef7.system.js → p-fa3f4b96.system.js} +2 -2
  469. package/dist/ionic/p-fe063952.system.entry.js +4 -0
  470. package/dist/types/components/input/input.d.ts +8 -0
  471. package/dist/types/components/modal/modal-interface.d.ts +1 -0
  472. package/dist/types/components/select/select.d.ts +9 -0
  473. package/dist/types/components/textarea/textarea.d.ts +8 -0
  474. package/dist/types/components/toggle/toggle.d.ts +2 -0
  475. package/dist/types/index.d.ts +1 -0
  476. package/dist/types/utils/logging/index.d.ts +1 -1
  477. package/hydrate/index.js +212 -191
  478. package/hydrate/index.mjs +212 -191
  479. package/package.json +1 -1
  480. package/dist/cjs/index-48b2a28e.js +0 -46
  481. package/dist/esm/index-738d7504.js +0 -42
  482. package/dist/esm-es5/animation-eab5a4ca.js +0 -4
  483. package/dist/esm-es5/app-globals-7b6cbf1a.js +0 -4
  484. package/dist/esm-es5/config-49c88215.js +0 -4
  485. package/dist/esm-es5/data-174ad5e0.js +0 -4
  486. package/dist/esm-es5/hardware-back-button-864101a3.js +0 -4
  487. package/dist/esm-es5/helpers-78efeec3.js +0 -4
  488. package/dist/esm-es5/index-40894f4b.js +0 -4
  489. package/dist/esm-es5/index-738d7504.js +0 -4
  490. package/dist/esm-es5/index-ecb55b8d.js +0 -4
  491. package/dist/esm-es5/input-shims-7dc1f6dc.js +0 -4
  492. package/dist/esm-es5/input.utils-28bf4ef0.js +0 -4
  493. package/dist/esm-es5/ionic-global-ca86cf32.js +0 -4
  494. package/dist/esm-es5/ios.transition-7fe5dbea.js +0 -4
  495. package/dist/esm-es5/md.transition-8dc58b46.js +0 -4
  496. package/dist/esm-es5/overlays-41a5d51b.js +0 -4
  497. package/dist/esm-es5/status-tap-f6d08e9e.js +0 -4
  498. package/dist/esm-es5/swipe-back-5c7708b8.js +0 -4
  499. package/dist/ionic/p-0186a592.entry.js +0 -4
  500. package/dist/ionic/p-027a48f1.entry.js +0 -4
  501. package/dist/ionic/p-058b7f35.js +0 -4
  502. package/dist/ionic/p-05b65d7a.entry.js +0 -4
  503. package/dist/ionic/p-09d185ff.system.js +0 -4
  504. package/dist/ionic/p-0a456b7f.entry.js +0 -4
  505. package/dist/ionic/p-0adb6909.system.entry.js +0 -4
  506. package/dist/ionic/p-0bedc891.system.entry.js +0 -4
  507. package/dist/ionic/p-0d1be7c9.system.entry.js +0 -4
  508. package/dist/ionic/p-0ec5b7cf.system.js +0 -4
  509. package/dist/ionic/p-15bb1dde.system.js +0 -4
  510. package/dist/ionic/p-180b4f9a.entry.js +0 -4
  511. package/dist/ionic/p-19c32a76.entry.js +0 -4
  512. package/dist/ionic/p-1b0b2210.entry.js +0 -4
  513. package/dist/ionic/p-1bf5ec17.system.js +0 -4
  514. package/dist/ionic/p-1c1d781d.system.entry.js +0 -4
  515. package/dist/ionic/p-1c8b3ac9.entry.js +0 -4
  516. package/dist/ionic/p-1de5dfcd.system.entry.js +0 -4
  517. package/dist/ionic/p-2567237c.entry.js +0 -4
  518. package/dist/ionic/p-29a5b4e4.entry.js +0 -4
  519. package/dist/ionic/p-2a2c6bf4.system.entry.js +0 -4
  520. package/dist/ionic/p-3281aab3.entry.js +0 -4
  521. package/dist/ionic/p-33518a04.entry.js +0 -4
  522. package/dist/ionic/p-33cf8185.system.js +0 -4
  523. package/dist/ionic/p-35f14792.entry.js +0 -4
  524. package/dist/ionic/p-383a6058.entry.js +0 -4
  525. package/dist/ionic/p-38eaf9cf.system.entry.js +0 -4
  526. package/dist/ionic/p-3ba2a2cd.system.js +0 -4
  527. package/dist/ionic/p-3f4327f7.js +0 -4
  528. package/dist/ionic/p-41d5544e.js +0 -4
  529. package/dist/ionic/p-41e70fa2.entry.js +0 -4
  530. package/dist/ionic/p-44fde7d5.system.entry.js +0 -4
  531. package/dist/ionic/p-44ff75ea.js +0 -4
  532. package/dist/ionic/p-455cd7cc.system.js +0 -4
  533. package/dist/ionic/p-4630688e.system.entry.js +0 -4
  534. package/dist/ionic/p-4b07c60a.system.js +0 -4
  535. package/dist/ionic/p-4ea4c73a.system.entry.js +0 -4
  536. package/dist/ionic/p-4eeca839.system.entry.js +0 -4
  537. package/dist/ionic/p-50e0ce13.entry.js +0 -4
  538. package/dist/ionic/p-51479be0.system.entry.js +0 -4
  539. package/dist/ionic/p-552d9d62.entry.js +0 -4
  540. package/dist/ionic/p-597ff9af.js +0 -4
  541. package/dist/ionic/p-5fb1321f.entry.js +0 -4
  542. package/dist/ionic/p-61373098.js +0 -4
  543. package/dist/ionic/p-6155027f.system.entry.js +0 -4
  544. package/dist/ionic/p-61e794fb.entry.js +0 -4
  545. package/dist/ionic/p-64d8ac48.js +0 -4
  546. package/dist/ionic/p-657ada6a.entry.js +0 -4
  547. package/dist/ionic/p-65943bec.system.entry.js +0 -4
  548. package/dist/ionic/p-6c044a1d.system.js +0 -4
  549. package/dist/ionic/p-70abb1f2.system.entry.js +0 -4
  550. package/dist/ionic/p-747f9517.entry.js +0 -4
  551. package/dist/ionic/p-772d1657.system.js +0 -4
  552. package/dist/ionic/p-7c9daa6f.entry.js +0 -4
  553. package/dist/ionic/p-7cc33a9a.system.js +0 -4
  554. package/dist/ionic/p-7e3b5638.system.entry.js +0 -4
  555. package/dist/ionic/p-7f49a9c4.entry.js +0 -4
  556. package/dist/ionic/p-843ac05d.system.entry.js +0 -4
  557. package/dist/ionic/p-87b0d2c9.entry.js +0 -4
  558. package/dist/ionic/p-8b1c1fd7.entry.js +0 -4
  559. package/dist/ionic/p-8b22be32.system.entry.js +0 -4
  560. package/dist/ionic/p-8cf6f383.system.entry.js +0 -4
  561. package/dist/ionic/p-8d98e2bb.entry.js +0 -4
  562. package/dist/ionic/p-9146695e.system.js +0 -4
  563. package/dist/ionic/p-9263275e.system.entry.js +0 -4
  564. package/dist/ionic/p-959cf042.system.entry.js +0 -4
  565. package/dist/ionic/p-96eec056.entry.js +0 -4
  566. package/dist/ionic/p-978bdf4c.system.js +0 -4
  567. package/dist/ionic/p-9870728f.js +0 -4
  568. package/dist/ionic/p-99803283.entry.js +0 -4
  569. package/dist/ionic/p-9af7f110.js +0 -4
  570. package/dist/ionic/p-9b069739.entry.js +0 -4
  571. package/dist/ionic/p-a26d7667.system.entry.js +0 -4
  572. package/dist/ionic/p-a3c931ad.system.js +0 -4
  573. package/dist/ionic/p-a520973b.entry.js +0 -4
  574. package/dist/ionic/p-a75a9e5a.system.entry.js +0 -4
  575. package/dist/ionic/p-a9198501.system.entry.js +0 -4
  576. package/dist/ionic/p-ac09b6e9.system.entry.js +0 -4
  577. package/dist/ionic/p-ac58d726.system.entry.js +0 -4
  578. package/dist/ionic/p-b1673667.entry.js +0 -4
  579. package/dist/ionic/p-b1f9fbe8.system.entry.js +0 -4
  580. package/dist/ionic/p-b2ee0628.system.entry.js +0 -4
  581. package/dist/ionic/p-b87a9f1d.entry.js +0 -4
  582. package/dist/ionic/p-b8a461f5.system.entry.js +0 -4
  583. package/dist/ionic/p-bf64af90.system.js +0 -4
  584. package/dist/ionic/p-c005cc37.entry.js +0 -4
  585. package/dist/ionic/p-c27c57ea.system.entry.js +0 -4
  586. package/dist/ionic/p-c53c414d.system.entry.js +0 -4
  587. package/dist/ionic/p-c7e16491.js +0 -4
  588. package/dist/ionic/p-ccb740ea.entry.js +0 -4
  589. package/dist/ionic/p-cec54707.system.entry.js +0 -4
  590. package/dist/ionic/p-cf14f70d.entry.js +0 -4
  591. package/dist/ionic/p-cfc08422.entry.js +0 -4
  592. package/dist/ionic/p-cff4f96c.entry.js +0 -4
  593. package/dist/ionic/p-d046659b.system.entry.js +0 -4
  594. package/dist/ionic/p-d40f2b7a.js +0 -4
  595. package/dist/ionic/p-d455de62.entry.js +0 -4
  596. package/dist/ionic/p-e29c5aab.system.entry.js +0 -4
  597. package/dist/ionic/p-e2ce5f8b.entry.js +0 -4
  598. package/dist/ionic/p-e3012c2d.js +0 -4
  599. package/dist/ionic/p-e3284879.system.entry.js +0 -4
  600. package/dist/ionic/p-e3e4eed7.entry.js +0 -4
  601. package/dist/ionic/p-e4683bfd.system.entry.js +0 -4
  602. package/dist/ionic/p-e4d2c281.entry.js +0 -4
  603. package/dist/ionic/p-ece78e7b.js +0 -4
  604. package/dist/ionic/p-ee86cfff.system.js +0 -4
  605. package/dist/ionic/p-f201b53a.system.js +0 -4
  606. package/dist/ionic/p-f23124c4.system.js +0 -4
  607. package/dist/ionic/p-f233f1e0.system.js +0 -4
  608. package/dist/ionic/p-f53ee2e7.js +0 -4
  609. package/dist/ionic/p-f5a04e5e.system.entry.js +0 -4
  610. package/dist/ionic/p-f70fc14a.entry.js +0 -4
  611. package/dist/ionic/p-f7ce606e.js +0 -4
  612. package/dist/ionic/p-f834322a.entry.js +0 -4
  613. package/dist/ionic/p-f84f4d8e.system.entry.js +0 -4
  614. package/dist/ionic/p-fa70eaab.entry.js +0 -4
  615. 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
 
@@ -3257,7 +3263,7 @@ class AccordionGroup {
3257
3263
  * Default toString() behavior: a,b
3258
3264
  * Custom behavior: ['a', 'b']
3259
3265
  */
3260
- printIonWarning(`ion-accordion-group was passed an array of values, but multiple="false". This is incorrect usage and may result in unexpected behaviors. To dismiss this warning, pass a string to the "value" property when multiple="false".
3266
+ printIonWarning(`[ion-accordion-group] - An array of values was passed, but multiple is "false". This is incorrect usage and may result in unexpected behaviors. To dismiss this warning, pass a string to the "value" property when multiple="false".
3261
3267
 
3262
3268
  Value Passed: [${value.map((v) => `'${v}'`).join(', ')}]
3263
3269
  `, this.el);
@@ -3427,12 +3433,12 @@ class AccordionGroup {
3427
3433
  render() {
3428
3434
  const { disabled, readonly, expand } = this;
3429
3435
  const mode = getIonMode$1(this);
3430
- return (hAsync(Host, { key: '82f3e77066fabb4736638ee4c487ad56efd39c63', class: {
3436
+ return (hAsync(Host, { key: 'd1a79a93179474fbba66fcf11a92f4871dacc975', class: {
3431
3437
  [mode]: true,
3432
3438
  'accordion-group-disabled': disabled,
3433
3439
  'accordion-group-readonly': readonly,
3434
3440
  [`accordion-group-expand-${expand}`]: true,
3435
- }, role: "presentation" }, hAsync("slot", { key: 'a3c791ea887fc640b512f81d429be465ae902b3d' })));
3441
+ }, role: "presentation" }, hAsync("slot", { key: 'e6b8954b686d1fbb4fc92adb07fddc97a24b0a31' })));
3436
3442
  }
3437
3443
  get el() { return getElement(this); }
3438
3444
  static get watchers() { return {
@@ -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();
@@ -5365,7 +5371,7 @@ const createTriggerController = () => {
5365
5371
  removeClickListener();
5366
5372
  const triggerEl = trigger !== undefined ? document.getElementById(trigger) : null;
5367
5373
  if (!triggerEl) {
5368
- printIonWarning(`A trigger element with the ID "${trigger}" was not found in the DOM. The trigger element must be in the DOM when the "trigger" property is set on an overlay component.`, el);
5374
+ printIonWarning(`[${el.tagName.toLowerCase()}] - A trigger element with the ID "${trigger}" was not found in the DOM. The trigger element must be in the DOM when the "trigger" property is set on an overlay component.`, el);
5369
5375
  return;
5370
5376
  }
5371
5377
  const configureTriggerInteraction = (targetEl, overlayEl) => {
@@ -5874,7 +5880,7 @@ const createAnimation = (animationId) => {
5874
5880
  }
5875
5881
  }
5876
5882
  else {
5877
- console.error('Invalid addElement value');
5883
+ printIonError('createAnimation - 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(`[ion-alert] - 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: 'f8ee04fe6a97a2585b302c8e1a9eea3b122e3479', 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: 'e9592e879f51c27ef20016beec12c986be632cf3', tappable: this.backdropDismiss }), hAsync("div", { key: '5e9425c3c8acdea6f8006389689c73220e2ce423', tabindex: "0", "aria-hidden": "true" }), hAsync("div", Object.assign({ key: '615465703e357619681fc36ed7276591a6fe3787', 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: '934eba3759456cd4660e10f274edc7859f908461', class: "alert-head" }, header && (hAsync("h2", { key: '7d5d98d71f81f59a2cba227121b6fa01e6cc53b6', id: hdrId, class: "alert-title" }, header)), subHeader && !header && (hAsync("h2", { key: 'e5f5d35748c58a98ee933eb15cb1dcaf8113e9a7', id: subHdrId, class: "alert-sub-title" }, subHeader)), subHeader && header && (hAsync("h3", { key: 'a5cb89ca02bfa9c4828e694cb0835493a9088b05', id: subHdrId, class: "alert-sub-title" }, subHeader))), this.renderAlertMessage(msgId), this.renderAlertInputs(), this.renderAlertButtons()), hAsync("div", { key: 'cacffc31c911882df73e6845d15c8bb2d4acab56', tabindex: "0", "aria-hidden": "true" })));
7331
7337
  }
7332
7338
  get el() { return getElement(this); }
7333
7339
  static get watchers() { return {
@@ -7405,7 +7411,7 @@ class App {
7405
7411
  }
7406
7412
  render() {
7407
7413
  const mode = getIonMode$1(this);
7408
- return (hAsync(Host, { key: '96715520fd05d6f0e6fa26a8ba78792cfccd4c0a', class: {
7414
+ return (hAsync(Host, { key: '03aa892f986330078d112b1e8b010df98fa7e39e', class: {
7409
7415
  [mode]: true,
7410
7416
  'ion-page': true,
7411
7417
  'force-statusbar-padding': config.getBoolean('_forceStatusbarPadding'),
@@ -8052,7 +8058,7 @@ class Button {
8052
8058
  * The developer specified a string for the form attribute, but the
8053
8059
  * element with that id is not a form element.
8054
8060
  */
8055
- printIonWarning(`Form with selector: "#${form}" could not be found. Verify that the id is attached to a <form> element.`, this.el);
8061
+ printIonWarning(`[ion-button] - Form with selector: "#${form}" could not be found. Verify that the id is attached to a <form> element.`, this.el);
8056
8062
  return null;
8057
8063
  }
8058
8064
  }
@@ -8061,7 +8067,7 @@ class Button {
8061
8067
  * The developer specified a string for the form attribute, but the
8062
8068
  * element with that id could not be found in the DOM.
8063
8069
  */
8064
- printIonWarning(`Form with selector: "#${form}" could not be found. Verify that the id is correct and the form is rendered in the DOM.`, this.el);
8070
+ printIonWarning(`[ion-button] - Form with selector: "#${form}" could not be found. Verify that the id is correct and the form is rendered in the DOM.`, this.el);
8065
8071
  return null;
8066
8072
  }
8067
8073
  }
@@ -8072,7 +8078,7 @@ class Button {
8072
8078
  * This will also catch if the developer tries to pass in null
8073
8079
  * as the form attribute.
8074
8080
  */
8075
- printIonWarning(`The provided "form" element is invalid. Verify that the form is a HTMLFormElement and rendered in the DOM.`, this.el);
8081
+ printIonWarning(`[ion-button] - The provided "form" element is invalid. Verify that the form is a HTMLFormElement and rendered in the DOM.`, this.el);
8076
8082
  return null;
8077
8083
  }
8078
8084
  /**
@@ -8121,7 +8127,7 @@ class Button {
8121
8127
  {
8122
8128
  type !== 'button' && this.renderHiddenButton();
8123
8129
  }
8124
- return (hAsync(Host, { key: '340a809d85698741bb36e796355cae89a970655f', onClick: this.handleClick, "aria-disabled": disabled ? 'true' : null, class: createColorClasses$1(color, {
8130
+ return (hAsync(Host, { key: 'e213b0bb76b3f90f883b1a0ea463bb86c2df69c3', onClick: this.handleClick, "aria-disabled": disabled ? 'true' : null, class: createColorClasses$1(color, {
8125
8131
  [mode]: true,
8126
8132
  [buttonType]: true,
8127
8133
  [`${buttonType}-${expand}`]: expand !== undefined,
@@ -8136,7 +8142,7 @@ class Button {
8136
8142
  'button-disabled': disabled,
8137
8143
  'ion-activatable': true,
8138
8144
  'ion-focusable': true,
8139
- }) }, hAsync(TagType, Object.assign({ key: '03ae1b94a0d606aa65aa6f82c2fc76abcf3f1300' }, attrs, { class: "button-native", part: "native", disabled: disabled, onFocus: this.onFocus, onBlur: this.onBlur }, inheritedAttributes), hAsync("span", { key: '90bf53d4ffcab88ee596ece7113d5b6409e61143', class: "button-inner" }, hAsync("slot", { key: 'a7876695f0d8702e8bcb471ae4c0984f27d77458', name: "icon-only", onSlotchange: this.slotChanged }), hAsync("slot", { key: '2c8551586f8726884d7797a6d3fee2d4b3aab35f', name: "start" }), hAsync("slot", { key: '9ab07accdb22b08d0a463a7c821c9793507d1f7d' }), hAsync("slot", { key: '8984afe177e6ba021435875a3798e2a64f3bdf2c', name: "end" })), mode === 'md' && hAsync("ion-ripple-effect", { key: '3e9f01e7a1198b6b7109502293a971da7072a4f3', type: this.rippleType }))));
8145
+ }) }, hAsync(TagType, Object.assign({ key: 'b7c2a46fb994024841219316f4089335fa463d84' }, attrs, { class: "button-native", part: "native", disabled: disabled, onFocus: this.onFocus, onBlur: this.onBlur }, inheritedAttributes), hAsync("span", { key: '3e07a5c9f86836f9fbaefc6c617bdde6eb6f70cd', class: "button-inner" }, hAsync("slot", { key: '41c08ae09aed16faaa57707d229ff75d97f0731c', name: "icon-only", onSlotchange: this.slotChanged }), hAsync("slot", { key: 'ab8b749e4572884cc04970a7594466b4a24c886e', name: "start" }), hAsync("slot", { key: '397f7ff48ea45e82029414be95d29ae86e12c3a9' }), hAsync("slot", { key: '9a5627713002e8be3738d392b616f6e951b70e12', name: "end" })), mode === 'md' && hAsync("ion-ripple-effect", { key: '105566543ceda102474edab7ca8a44c7e71af589', type: this.rippleType }))));
8140
8146
  }
8141
8147
  get el() { return getElement(this); }
8142
8148
  static get watchers() { return {
@@ -9365,7 +9371,7 @@ const warnIfValueOutOfBounds = (value, min, max) => {
9365
9371
  const valueArray = Array.isArray(value) ? value : [value];
9366
9372
  for (const val of valueArray) {
9367
9373
  if ((min !== undefined && isBefore(val, min)) || (max !== undefined && isAfter(val, max))) {
9368
- printIonWarning('The value provided to ion-datetime is out of bounds.\n\n' +
9374
+ printIonWarning('[ion-datetime] - The value provided to ion-datetime is out of bounds.\n\n' +
9369
9375
  `Min: ${JSON.stringify(min)}\n` +
9370
9376
  `Max: ${JSON.stringify(max)}\n` +
9371
9377
  `Value: ${JSON.stringify(value)}`);
@@ -9582,7 +9588,7 @@ function parseDate(val) {
9582
9588
  }
9583
9589
  if (parse === null) {
9584
9590
  // wasn't able to parse the ISO datetime
9585
- printIonWarning(`Unable to parse date string: ${val}. Please provide a valid ISO 8601 datetime string.`);
9591
+ printIonWarning(`[ion-datetime] - Unable to parse date string: ${val}. Please provide a valid ISO 8601 datetime string.`);
9586
9592
  return undefined;
9587
9593
  }
9588
9594
  // ensure all the parse values exist with at least 0
@@ -11098,7 +11104,7 @@ const getHighlightStyles = (highlightedDates, dateIsoString, el) => {
11098
11104
  return highlightedDates(dateIsoString);
11099
11105
  }
11100
11106
  catch (e) {
11101
- printIonError('Exception thrown from provided `highlightedDates` callback. Please check your function and try again.', el, e);
11107
+ printIonError('[ion-datetime] - Exception thrown from provided `highlightedDates` callback. Please check your function and try again.', el, e);
11102
11108
  }
11103
11109
  }
11104
11110
  return undefined;
@@ -11115,7 +11121,7 @@ const warnIfTimeZoneProvided = (el, formatOptions) => {
11115
11121
  ((_b = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.date) === null || _b === void 0 ? void 0 : _b.timeZoneName) ||
11116
11122
  ((_c = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.time) === null || _c === void 0 ? void 0 : _c.timeZone) ||
11117
11123
  ((_d = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.time) === null || _d === void 0 ? void 0 : _d.timeZoneName)) {
11118
- printIonWarning('Datetime: "timeZone" and "timeZoneName" are not supported in "formatOptions".', el);
11124
+ printIonWarning('[ion-datetime] - "timeZone" and "timeZoneName" are not supported in "formatOptions".', el);
11119
11125
  }
11120
11126
  };
11121
11127
  const checkForPresentationFormatMismatch = (el, presentation, formatOptions) => {
@@ -11129,18 +11135,18 @@ const checkForPresentationFormatMismatch = (el, presentation, formatOptions) =>
11129
11135
  case 'month':
11130
11136
  case 'year':
11131
11137
  if (formatOptions.date === undefined) {
11132
- printIonWarning(`Datetime: The '${presentation}' presentation requires a date object in formatOptions.`, el);
11138
+ printIonWarning(`[ion-datetime] - The '${presentation}' presentation requires a date object in formatOptions.`, el);
11133
11139
  }
11134
11140
  break;
11135
11141
  case 'time':
11136
11142
  if (formatOptions.time === undefined) {
11137
- printIonWarning(`Datetime: The 'time' presentation requires a time object in formatOptions.`, el);
11143
+ printIonWarning(`[ion-datetime] - The 'time' presentation requires a time object in formatOptions.`, el);
11138
11144
  }
11139
11145
  break;
11140
11146
  case 'date-time':
11141
11147
  case 'time-date':
11142
11148
  if (formatOptions.date === undefined && formatOptions.time === undefined) {
11143
- printIonWarning(`Datetime: The '${presentation}' presentation requires either a date or time object (or both) in formatOptions.`, el);
11149
+ printIonWarning(`[ion-datetime] - The '${presentation}' presentation requires either a date or time object (or both) in formatOptions.`, el);
11144
11150
  }
11145
11151
  break;
11146
11152
  }
@@ -11199,7 +11205,7 @@ class Datetime {
11199
11205
  * Default toString() behavior: a,b
11200
11206
  * Custom behavior: ['a', 'b']
11201
11207
  */
11202
- printIonWarning(`ion-datetime was passed an array of values, but multiple="false". This is incorrect usage and may result in unexpected behaviors. To dismiss this warning, pass a string to the "value" property when multiple="false".
11208
+ printIonWarning(`[ion-datetime] - An array of values was passed, but multiple is "false". This is incorrect usage and may result in unexpected behaviors. To dismiss this warning, pass a string to the "value" property when multiple="false".
11203
11209
 
11204
11210
  Value Passed: [${value.map((v) => `'${v}'`).join(', ')}]
11205
11211
  `, this.el);
@@ -12080,18 +12086,18 @@ class Datetime {
12080
12086
  const { el, formatOptions, highlightedDates, multiple, presentation, preferWheel } = this;
12081
12087
  if (multiple) {
12082
12088
  if (presentation !== 'date') {
12083
- printIonWarning('Multiple date selection is only supported for presentation="date".', el);
12089
+ printIonWarning('[ion-datetime] - Multiple date selection is only supported for presentation="date".', el);
12084
12090
  }
12085
12091
  if (preferWheel) {
12086
- printIonWarning('Multiple date selection is not supported with preferWheel="true".', el);
12092
+ printIonWarning('[ion-datetime] - Multiple date selection is not supported with preferWheel="true".', el);
12087
12093
  }
12088
12094
  }
12089
12095
  if (highlightedDates !== undefined) {
12090
12096
  if (presentation !== 'date' && presentation !== 'date-time' && presentation !== 'time-date') {
12091
- printIonWarning('The highlightedDates property is only supported with the date, date-time, and time-date presentations.', el);
12097
+ printIonWarning('[ion-datetime] - The highlightedDates property is only supported with the date, date-time, and time-date presentations.', el);
12092
12098
  }
12093
12099
  if (preferWheel) {
12094
- printIonWarning('The highlightedDates property is not supported with preferWheel="true".', el);
12100
+ printIonWarning('[ion-datetime] - The highlightedDates property is not supported with preferWheel="true".', el);
12095
12101
  }
12096
12102
  }
12097
12103
  if (formatOptions) {
@@ -12222,7 +12228,7 @@ class Datetime {
12222
12228
  disabled = !isDateEnabled(convertDataToISO(referenceParts));
12223
12229
  }
12224
12230
  catch (e) {
12225
- printIonError('Exception thrown from provided `isDateEnabled` function. Please check your function and try again.', e);
12231
+ printIonError('[ion-datetime] - Exception thrown from provided `isDateEnabled` function. Please check your function and try again.', e);
12226
12232
  }
12227
12233
  return Object.assign(Object.assign({}, itemObject), { disabled });
12228
12234
  });
@@ -12271,7 +12277,7 @@ class Datetime {
12271
12277
  disabled = !isDateEnabled(convertDataToISO(referenceParts));
12272
12278
  }
12273
12279
  catch (e) {
12274
- printIonError('Exception thrown from provided `isDateEnabled` function. Please check your function and try again.', e);
12280
+ printIonError('[ion-datetime] - Exception thrown from provided `isDateEnabled` function. Please check your function and try again.', e);
12275
12281
  }
12276
12282
  return Object.assign(Object.assign({}, dayObject), { disabled });
12277
12283
  });
@@ -12469,7 +12475,7 @@ class Datetime {
12469
12475
  isCalDayDisabled = !isDateEnabled(dateIsoString);
12470
12476
  }
12471
12477
  catch (e) {
12472
- printIonError('Exception thrown from provided `isDateEnabled` function. Please check your function and try again.', el, e);
12478
+ printIonError('[ion-datetime] - Exception thrown from provided `isDateEnabled` function. Please check your function and try again.', el, e);
12473
12479
  }
12474
12480
  }
12475
12481
  /**
@@ -12605,7 +12611,7 @@ class Datetime {
12605
12611
  headerText = titleSelectedDatesFormatter(convertDataToISO(activeParts));
12606
12612
  }
12607
12613
  catch (e) {
12608
- printIonError('Exception in provided `titleSelectedDatesFormatter`: ', e);
12614
+ printIonError('[ion-datetime] - Exception in provided `titleSelectedDatesFormatter`:', e);
12609
12615
  }
12610
12616
  }
12611
12617
  }
@@ -12700,7 +12706,7 @@ class Datetime {
12700
12706
  const hasDatePresentation = presentation === 'date' || presentation === 'date-time' || presentation === 'time-date';
12701
12707
  const hasWheelVariant = hasDatePresentation && preferWheel;
12702
12708
  renderHiddenInput(true, el, name, formatValue(value), disabled);
12703
- return (hAsync(Host, { key: '08d429533a09c600b936ad1e022658051c765595', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, createColorClasses$1(color, {
12709
+ return (hAsync(Host, { key: 'c3dfea8f46fcbcef38eb9e8a69b1b46a4e4b82fd', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, createColorClasses$1(color, {
12704
12710
  [mode]: true,
12705
12711
  ['datetime-readonly']: readonly,
12706
12712
  ['datetime-disabled']: disabled,
@@ -12710,7 +12716,7 @@ class Datetime {
12710
12716
  [`datetime-size-${size}`]: true,
12711
12717
  [`datetime-prefer-wheel`]: hasWheelVariant,
12712
12718
  [`datetime-grid`]: isGridStyle,
12713
- })) }, hAsync("div", { key: 'f4ff0fcd1e059767a7ef14fcc76ebfd55d23a97b', class: "intersection-tracker", ref: (el) => (this.intersectionTrackerRef = el) }), this.renderDatetime(mode)));
12719
+ })) }, hAsync("div", { key: '75c91243cf6a51f44b83d7cf7d8c0c96bfd3c83f', class: "intersection-tracker", ref: (el) => (this.intersectionTrackerRef = el) }), this.renderDatetime(mode)));
12714
12720
  }
12715
12721
  get el() { return getElement(this); }
12716
12722
  static get watchers() { return {
@@ -12870,7 +12876,7 @@ class DatetimeButton {
12870
12876
  headerText = titleSelectedDatesFormatter(parsedValues);
12871
12877
  }
12872
12878
  catch (e) {
12873
- printIonError('Exception in provided `titleSelectedDatesFormatter`: ', e);
12879
+ printIonError('[ion-datetime-button] - Exception in provided `titleSelectedDatesFormatter`:', e);
12874
12880
  }
12875
12881
  }
12876
12882
  this.dateText = headerText;
@@ -13030,12 +13036,12 @@ class DatetimeButton {
13030
13036
  async componentWillLoad() {
13031
13037
  const { datetime } = this;
13032
13038
  if (!datetime) {
13033
- printIonError('An ID associated with an ion-datetime instance is required for ion-datetime-button to function properly.', this.el);
13039
+ printIonError('[ion-datetime-button] - An ID associated with an ion-datetime instance is required to function properly.', this.el);
13034
13040
  return;
13035
13041
  }
13036
13042
  const datetimeEl = (this.datetimeEl = document.getElementById(datetime));
13037
13043
  if (!datetimeEl) {
13038
- printIonError(`No ion-datetime instance found for ID '${datetime}'.`, this.el);
13044
+ printIonError(`[ion-datetime-button] - No ion-datetime instance found for ID '${datetime}'.`, this.el);
13039
13045
  return;
13040
13046
  }
13041
13047
  /**
@@ -13043,7 +13049,7 @@ class DatetimeButton {
13043
13049
  * if a non-datetime element was provided.
13044
13050
  */
13045
13051
  if (datetimeEl.tagName !== 'ION-DATETIME') {
13046
- printIonError(`Expected an ion-datetime instance for ID '${datetime}' but received '${datetimeEl.tagName.toLowerCase()}' instead.`, datetimeEl);
13052
+ printIonError(`[ion-datetime-button] - Expected an ion-datetime instance for ID '${datetime}' but received '${datetimeEl.tagName.toLowerCase()}' instead.`, datetimeEl);
13047
13053
  return;
13048
13054
  }
13049
13055
  /**
@@ -13118,11 +13124,11 @@ class DatetimeButton {
13118
13124
  render() {
13119
13125
  const { color, dateText, timeText, selectedButton, datetimeActive, disabled } = this;
13120
13126
  const mode = getIonMode$1(this);
13121
- return (hAsync(Host, { key: '26e606af6f067a5774db37ed41387ffebb941777', class: createColorClasses$1(color, {
13127
+ return (hAsync(Host, { key: '11d037e6ab061e5116842970760b04850b42f2c7', class: createColorClasses$1(color, {
13122
13128
  [mode]: true,
13123
13129
  [`${selectedButton}-active`]: datetimeActive,
13124
13130
  ['datetime-button-disabled']: disabled,
13125
- }) }, dateText && (hAsync("button", { key: '6b7aa66a15b4a6d89d411e40586de28a2ac9f343', class: "ion-activatable", id: "date-button", "aria-expanded": datetimeActive ? 'true' : 'false', onClick: this.handleDateClick, disabled: disabled, part: "native", ref: (el) => (this.dateTargetEl = el) }, hAsync("slot", { key: 'd42f34fd167be34386319e7ea788c2ab03c90b87', name: "date-target" }, dateText), mode === 'md' && hAsync("ion-ripple-effect", { key: '47dd34f3c2799064cac7a5fe25440ecc043950f0' }))), timeText && (hAsync("button", { key: 'd77424a20fae320654774c7bfc8a8e2369d3afe3', class: "ion-activatable", id: "time-button", "aria-expanded": datetimeActive ? 'true' : 'false', onClick: this.handleTimeClick, disabled: disabled, part: "native", ref: (el) => (this.timeTargetEl = el) }, hAsync("slot", { key: 'ac088a78141bb53f2efd48dd7745f8954c92378b', name: "time-target" }, timeText), mode === 'md' && hAsync("ion-ripple-effect", { key: 'b3a58ddfd28b9396e2518ffd62a045ec13d8b9d0' })))));
13131
+ }) }, dateText && (hAsync("button", { key: '08ecb62da0fcbf7466a1f2403276712a3ff17fbc', class: "ion-activatable", id: "date-button", "aria-expanded": datetimeActive ? 'true' : 'false', onClick: this.handleDateClick, disabled: disabled, part: "native", ref: (el) => (this.dateTargetEl = el) }, hAsync("slot", { key: '1c04853d4d23c0f1a594602bde44511c98355644', name: "date-target" }, dateText), mode === 'md' && hAsync("ion-ripple-effect", { key: '5fc566cd4bc885bcf983ce99e3dc65d7f485bf9b' }))), timeText && (hAsync("button", { key: 'c9c5c34ac338badf8659da22bea5829d62c51169', class: "ion-activatable", id: "time-button", "aria-expanded": datetimeActive ? 'true' : 'false', onClick: this.handleTimeClick, disabled: disabled, part: "native", ref: (el) => (this.timeTargetEl = el) }, hAsync("slot", { key: '147a9d2069dbf737f6fc64787823d6d5af5aa653', name: "time-target" }, timeText), mode === 'md' && hAsync("ion-ripple-effect", { key: '70a5e25b75ed90ac6bba003468435f67aa9d8f0a' })))));
13126
13132
  }
13127
13133
  get el() { return getElement(this); }
13128
13134
  static get style() { return {
@@ -15087,7 +15093,7 @@ const getCounterText = (value, maxLength, counterFormatter) => {
15087
15093
  return counterFormatter(valueLength, maxLength);
15088
15094
  }
15089
15095
  catch (e) {
15090
- printIonError('Exception in provided `counterFormatter`.', e);
15096
+ printIonError('[ion-input] - Exception in provided `counterFormatter`:', e);
15091
15097
  return defaultCounterText;
15092
15098
  }
15093
15099
  };
@@ -15511,7 +15517,7 @@ class Input {
15511
15517
  * TODO(FW-5592): Remove hasStartEndSlots condition
15512
15518
  */
15513
15519
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
15514
- return (hAsync(Host, { key: '166f7dea59931b8276bebef4d7a1fcd5ace90bad', class: createColorClasses$1(this.color, {
15520
+ return (hAsync(Host, { key: '01f49d79dd068256eb6bf24a01e8622ea6d67506', class: createColorClasses$1(this.color, {
15515
15521
  [mode]: true,
15516
15522
  'has-value': hasValue,
15517
15523
  'has-focus': hasFocus,
@@ -15522,7 +15528,7 @@ class Input {
15522
15528
  'in-item': inItem,
15523
15529
  'in-item-color': hostContext('ion-item.ion-color', this.el),
15524
15530
  'input-disabled': disabled,
15525
- }) }, hAsync("label", { key: 'c6da0b068f8abc0fb8ffaee1a71685b03ec837ec', class: "input-wrapper", htmlFor: inputId }, this.renderLabelContainer(), hAsync("div", { key: 'cd25ec6d885bdbfdb2def51f1ad1756cc4f3e9e0', class: "native-wrapper" }, hAsync("slot", { key: '2582b54d551c93a89d4a663a8a61b6de5fae85cc', name: "start" }), hAsync("input", Object.assign({ key: '2b496016ba7a0c51ccd5509183e531f802701455', class: "native-input", ref: (input) => (this.nativeInput = input), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: this.placeholder || '', readOnly: readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, type: this.type, value: value, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeydown, onCompositionstart: this.onCompositionStart, onCompositionend: this.onCompositionEnd, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId }, this.inheritedAttributes)), this.clearInput && !readonly && !disabled && (hAsync("button", { key: '2db9987180cd4030ad63de197af838e152b47998', "aria-label": "reset", type: "button", class: "input-clear-icon", onPointerDown: (ev) => {
15531
+ }) }, hAsync("label", { key: '1cc45ad82b1b27108978aadb992b7aee60649be0', class: "input-wrapper", htmlFor: inputId }, this.renderLabelContainer(), hAsync("div", { key: '5f067a2595367840c853a4ca7d7ead77edf99849', class: "native-wrapper" }, hAsync("slot", { key: '6680b1345b673f5c2bf0d575de89df199b873ae5', name: "start" }), hAsync("input", Object.assign({ key: 'd508c472607d904ebcf9fa97ea26f92e50d34f0e', class: "native-input", ref: (input) => (this.nativeInput = input), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: this.placeholder || '', readOnly: readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, type: this.type, value: value, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeydown, onCompositionstart: this.onCompositionStart, onCompositionend: this.onCompositionEnd, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId }, this.inheritedAttributes)), this.clearInput && !readonly && !disabled && (hAsync("button", { key: '3f17a4630fa897608289e6cf51c2bf4f763f1652', "aria-label": "reset", type: "button", class: "input-clear-icon", onPointerDown: (ev) => {
15526
15532
  /**
15527
15533
  * This prevents mobile browsers from
15528
15534
  * blurring the input when the clear
@@ -15537,7 +15543,7 @@ class Input {
15537
15543
  * for screen readers as it means users would be unable to swipe past the clear button.
15538
15544
  */
15539
15545
  ev.stopPropagation();
15540
- }, onClick: this.clearTextInput }, hAsync("ion-icon", { key: 'ea5e1a5f61046434bf502db692a05dece19aecd9', "aria-hidden": "true", icon: clearIconData }))), hAsync("slot", { key: 'db1e7452cfc25accdb518ff0cc59ae3e2e47b049', name: "end" })), shouldRenderHighlight && hAsync("div", { key: '0daeaaa5238e0c60ccfd251dedc6a381eba2fcc8', class: "input-highlight" })), this.renderBottomContent()));
15546
+ }, onClick: this.clearTextInput }, hAsync("ion-icon", { key: '09d1004cf2ca31d936e5399c35b3ad6302008394', "aria-hidden": "true", icon: clearIconData }))), hAsync("slot", { key: 'b7877386aebff51c36295046967ff4b82ef6a905', name: "end" })), shouldRenderHighlight && hAsync("div", { key: 'a0544f1d9af50c140cae1154d391b00d1d77e108', class: "input-highlight" })), this.renderBottomContent()));
15541
15547
  }
15542
15548
  get el() { return getElement(this); }
15543
15549
  static get watchers() { return {
@@ -15630,7 +15636,7 @@ class InputPasswordToggle {
15630
15636
  */
15631
15637
  onTypeChange(newValue) {
15632
15638
  if (newValue !== 'text' && newValue !== 'password') {
15633
- printIonWarning(`ion-input-password-toggle only supports inputs of type "text" or "password". Input of type "${newValue}" is not compatible.`, this.el);
15639
+ printIonWarning(`[ion-input-password-toggle] - Only inputs of type "text" or "password" are supported. Input of type "${newValue}" is not compatible.`, this.el);
15634
15640
  return;
15635
15641
  }
15636
15642
  }
@@ -15638,7 +15644,7 @@ class InputPasswordToggle {
15638
15644
  const { el } = this;
15639
15645
  const inputElRef = (this.inputElRef = el.closest('ion-input'));
15640
15646
  if (!inputElRef) {
15641
- printIonWarning('No ancestor ion-input found for ion-input-password-toggle. This component must be slotted inside of an ion-input.', el);
15647
+ printIonWarning('[ion-input-password-toggle] - No ancestor ion-input found. This component must be slotted inside of an ion-input.', el);
15642
15648
  return;
15643
15649
  }
15644
15650
  /**
@@ -15660,16 +15666,16 @@ class InputPasswordToggle {
15660
15666
  const showPasswordIcon = (_a = this.showIcon) !== null && _a !== void 0 ? _a : eye;
15661
15667
  const hidePasswordIcon = (_b = this.hideIcon) !== null && _b !== void 0 ? _b : eyeOff;
15662
15668
  const isPasswordVisible = type === 'text';
15663
- return (hAsync(Host, { key: 'd9811e25bfeb2aa197352bb9be852e9e420739d5', class: createColorClasses$1(color, {
15669
+ return (hAsync(Host, { key: '1a28e078c83e74c72d8bb8189ece93ec2e3fa3d0', class: createColorClasses$1(color, {
15664
15670
  [mode]: true,
15665
- }) }, hAsync("ion-button", { key: '1eaea1442b248fb2b8d61538b27274e647a07804', mode: mode, color: color, fill: "clear", shape: "round", "aria-checked": isPasswordVisible ? 'true' : 'false', "aria-label": "show password", role: "switch", type: "button", onPointerDown: (ev) => {
15671
+ }) }, hAsync("ion-button", { key: '039d1bab764093bb6fe4a34299b0872abda087fd', mode: mode, color: color, fill: "clear", shape: "round", "aria-checked": isPasswordVisible ? 'true' : 'false', "aria-label": "show password", role: "switch", type: "button", onPointerDown: (ev) => {
15666
15672
  /**
15667
15673
  * This prevents mobile browsers from
15668
15674
  * blurring the input when the password toggle
15669
15675
  * button is activated.
15670
15676
  */
15671
15677
  ev.preventDefault();
15672
- }, onClick: this.togglePasswordVisibility }, hAsync("ion-icon", { key: '9c88de8f4631d9bde222ce2edf6950d639e04773', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? hidePasswordIcon : showPasswordIcon }))));
15678
+ }, onClick: this.togglePasswordVisibility }, hAsync("ion-icon", { key: '26477ee97b808c3d79944bf5e33d4e05f1ae0b3f', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? hidePasswordIcon : showPasswordIcon }))));
15673
15679
  }
15674
15680
  get el() { return getElement(this); }
15675
15681
  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('[ion-item-sliding] - invalid ItemSideFlags value', this.sides);
16461
16467
  break;
16462
16468
  }
16463
16469
  let optsWidth;
@@ -16585,7 +16591,7 @@ class ItemSliding {
16585
16591
  }
16586
16592
  render() {
16587
16593
  const mode = getIonMode$1(this);
16588
- return (hAsync(Host, { key: 'd7697278008dd6531c0e4f9c235b955a337e3140', class: {
16594
+ return (hAsync(Host, { key: '245523e940e08c75c6d5fdd1cdd370b5f5a23a0d', class: {
16589
16595
  [mode]: true,
16590
16596
  'item-sliding-active-slide': this.state !== 2 /* SlidingState.Disabled */,
16591
16597
  'item-sliding-active-options-end': (this.state & 8 /* SlidingState.End */) !== 0,
@@ -18084,14 +18090,14 @@ class Menu {
18084
18090
  * the ionBackButton listener in the menu controller
18085
18091
  * will handle closing the menu when Escape is pressed.
18086
18092
  */
18087
- return (hAsync(Host, { key: '342db8551d26604128b29b21d2d8c37593972ed9', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
18093
+ return (hAsync(Host, { key: '0a2ba4ff5600b80b54d1b5b45124779c6aa0d2f2', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
18088
18094
  [mode]: true,
18089
18095
  [`menu-type-${type}`]: true,
18090
18096
  'menu-enabled': !disabled,
18091
18097
  [`menu-side-${side}`]: true,
18092
18098
  'menu-pane-visible': isPaneVisible,
18093
18099
  'split-pane-side': hostContext('ion-split-pane', el),
18094
- } }, 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" })));
18100
+ } }, hAsync("div", { key: '40a222bcde4b959abc9939c44e89ea0cf8967aba', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, hAsync("slot", { key: '6a7ec5583294bb314990ff4ce6f25045652c07cb' })), hAsync("ion-backdrop", { key: '95f1e87237f3cc24845d91b744f935bad6bb460d', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
18095
18101
  }
18096
18102
  get el() { return getElement(this); }
18097
18103
  static get watchers() { return {
@@ -20109,7 +20115,7 @@ class Modal {
20109
20115
  this.currentBreakpoint = this.initialBreakpoint;
20110
20116
  }
20111
20117
  if (breakpoints !== undefined && initialBreakpoint !== undefined && !breakpoints.includes(initialBreakpoint)) {
20112
- printIonWarning('Your breakpoints array must include the initialBreakpoint value.');
20118
+ printIonWarning('[ion-modal] - Your breakpoints array must include the initialBreakpoint value.');
20113
20119
  }
20114
20120
  if (!((_a = this.htmlAttributes) === null || _a === void 0 ? void 0 : _a.id)) {
20115
20121
  setOverlayId(this.el);
@@ -20454,11 +20460,11 @@ class Modal {
20454
20460
  */
20455
20461
  async setCurrentBreakpoint(breakpoint) {
20456
20462
  if (!this.isSheetModal) {
20457
- printIonWarning('setCurrentBreakpoint is only supported on sheet modals.');
20463
+ printIonWarning('[ion-modal] - setCurrentBreakpoint is only supported on sheet modals.');
20458
20464
  return;
20459
20465
  }
20460
20466
  if (!this.breakpoints.includes(breakpoint)) {
20461
- printIonWarning(`Attempted to set invalid breakpoint value ${breakpoint}. Please double check that the breakpoint value is part of your defined breakpoints.`);
20467
+ printIonWarning(`[ion-modal] - Attempted to set invalid breakpoint value ${breakpoint}. Please double check that the breakpoint value is part of your defined breakpoints.`);
20462
20468
  return;
20463
20469
  }
20464
20470
  const { currentBreakpoint, moveSheetToBreakpoint, canDismiss, breakpoints, animated } = this;
@@ -20509,18 +20515,18 @@ class Modal {
20509
20515
  const mode = getIonMode$1(this);
20510
20516
  const isCardModal = presentingElement !== undefined && mode === 'ios';
20511
20517
  const isHandleCycle = handleBehavior === 'cycle';
20512
- return (hAsync(Host, Object.assign({ key: 'e661562f9e4126136cee337e4ab8ca69ac80faae', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
20518
+ return (hAsync(Host, Object.assign({ key: '0991b2e4e32da511e59fb1463b47e4ac1b86d1ca', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
20513
20519
  zIndex: `${20000 + this.overlayIndex}`,
20514
- }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), hAsync("ion-backdrop", { key: '9221692e0e111f99e80239ca44faaaed9b288425', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && hAsync("div", { key: '20def7088d31e5eb13c3f2404c514cd8b74cd966', class: "modal-shadow" }), hAsync("div", Object.assign({ key: 'b11229330571d4ff7b9136dfdddcd7d759ada876',
20520
+ }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), hAsync("ion-backdrop", { key: 'ca9453ffe1021fb252ad9460676cfabb5633f00f', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && hAsync("div", { key: '9f8da446a7b0f3b26aec856e13f6d6d131a7e37b', class: "modal-shadow" }), hAsync("div", Object.assign({ key: '9d08bf600571849c97b58f66df40b496a358d1e1',
20515
20521
  /*
20516
20522
  role and aria-modal must be used on the
20517
20523
  same element. They must also be set inside the
20518
20524
  shadow DOM otherwise ion-button will not be highlighted
20519
20525
  when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
20520
20526
  */
20521
- role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: '95b2a62477dfbc063a91910f0d37357388cfd914', class: "modal-handle",
20527
+ role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: 'f8bf0d1126e5376519101225d9965727121ee042', class: "modal-handle",
20522
20528
  // Prevents the handle from receiving keyboard focus when it does not cycle
20523
- tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), hAsync("slot", { key: 'fba17dfdbdffbfd8992f473f633d172c5124dc19' }))));
20529
+ tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), hAsync("slot", { key: '6d52849df98f2c6c8fbc03996a931ea6a39a512b' }))));
20524
20530
  }
20525
20531
  get el() { return getElement(this); }
20526
20532
  static get watchers() { return {
@@ -21248,7 +21254,7 @@ class Nav {
21248
21254
  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);
21249
21255
  assert(finalNumViews >= 0, 'final balance can not be negative');
21250
21256
  if (finalNumViews === 0) {
21251
- console.warn(`You can't remove all the pages in the navigation stack. nav.pop() is probably called too many times.`, this, this.el);
21257
+ printIonWarning(`[ion-nav] - You can't remove all the pages in the navigation stack. nav.pop() is probably called too many times.`, this, this.el);
21252
21258
  throw new Error('navigation stack needs at least one root page');
21253
21259
  }
21254
21260
  // At this point the transition can not be rejected, any throw should be an error
@@ -21470,7 +21476,7 @@ class Nav {
21470
21476
  }
21471
21477
  }
21472
21478
  render() {
21473
- return hAsync("slot", { key: '71e9b5d07fc90ca5534197a63a003a4154aabd59' });
21479
+ return hAsync("slot", { key: '188d0abd6c047d235380f07aac81223b757010e8' });
21474
21480
  }
21475
21481
  get el() { return getElement(this); }
21476
21482
  static get watchers() { return {
@@ -22211,7 +22217,7 @@ class Picker {
22211
22217
  }
22212
22218
  }
22213
22219
  componentDidLoad() {
22214
- printIonWarning('ion-picker-legacy and ion-picker-legacy-column have been deprecated in favor of new versions of the ion-picker and ion-picker-column components. These new components display inline with your page content allowing for more presentation flexibility than before.', this.el);
22220
+ printIonWarning('[ion-picker-legacy] - ion-picker-legacy and ion-picker-legacy-column have been deprecated in favor of new versions of the ion-picker and ion-picker-column components. These new components display inline with your page content allowing for more presentation flexibility than before.', this.el);
22215
22221
  /**
22216
22222
  * If picker was rendered with isOpen="true"
22217
22223
  * then we should open picker immediately.
@@ -22321,11 +22327,11 @@ class Picker {
22321
22327
  render() {
22322
22328
  const { htmlAttributes } = this;
22323
22329
  const mode = getIonMode$1(this);
22324
- return (hAsync(Host, Object.assign({ key: 'dc03f252e3b59a94bc7132c953d2d3b36b62237e', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
22330
+ return (hAsync(Host, Object.assign({ key: 'b6b6ca6f9aa74681e6d67f64b366f5965fec2a6d', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
22325
22331
  zIndex: `${20000 + this.overlayIndex}`,
22326
22332
  }, class: Object.assign({ [mode]: true,
22327
22333
  // Used internally for styling
22328
- [`picker-${mode}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), hAsync("ion-backdrop", { key: 'bdabe9c82c41f96da5dafb1a0aa0854fa7e7ec93', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: '1380e0c8989153b425674753764f12f253f4a738', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: 'edec769bbc0993d003852d0bf1123e6e2332ebbe', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, hAsync("div", { key: 'b82c67ff47aa9412a6ff8f3b2e6230b855e92c51', class: "picker-toolbar" }, this.buttons.map((b) => (hAsync("div", { class: buttonWrapperClass(b) }, hAsync("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass$1(b) }, b.text))))), hAsync("div", { key: '76485b643387f36b6b3d5f85e4d072fa18e68552', class: "picker-columns" }, hAsync("div", { key: '99268217263feb5285db1b1acd48fd0e4d5f0e7b', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => hAsync("ion-picker-legacy-column", { col: c })), hAsync("div", { key: '2dd7e488bc4e9695094f0758567e626e0bb5979d', class: "picker-below-highlight" }))), hAsync("div", { key: '8b2f3ae798a4ddcdd4e2716ebba1de797e446ac4', tabindex: "0", "aria-hidden": "true" })));
22334
+ [`picker-${mode}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), hAsync("ion-backdrop", { key: '20202ca1d7b6cd5f517a802879b39efb79033cb1', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: '72fe76a1e1748593cdf38deab5100087bfa75983', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: '921954cfc716f3774aab66677563754ff479a44a', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, hAsync("div", { key: '224413950bfcf2a948e58c2554c2a37a4e6d0319', class: "picker-toolbar" }, this.buttons.map((b) => (hAsync("div", { class: buttonWrapperClass(b) }, hAsync("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass$1(b) }, b.text))))), hAsync("div", { key: '7e688c2d0705940ec8a9ace493b679e6a9b68860', class: "picker-columns" }, hAsync("div", { key: '0ec2db79a9ca9e2a0b324b6c4b90176a0eb33df3', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => hAsync("ion-picker-legacy-column", { col: c })), hAsync("div", { key: 'b8344f4f342fddc3f773435515567ef8f3accbb0', class: "picker-below-highlight" }))), hAsync("div", { key: '374c7a6b31b0a00ab3913faeea0ec3d6c02274b9', tabindex: "0", "aria-hidden": "true" })));
22329
22335
  }
22330
22336
  get el() { return getElement(this); }
22331
22337
  static get watchers() { return {
@@ -24444,7 +24450,7 @@ class Popover {
24444
24450
  }
24445
24451
  const triggerEl = (this.triggerEl = trigger !== undefined ? document.getElementById(trigger) : null);
24446
24452
  if (!triggerEl) {
24447
- printIonWarning(`A trigger element with the ID "${trigger}" was not found in the DOM. The trigger element must be in the DOM when the "trigger" property is set on ion-popover.`, this.el);
24453
+ printIonWarning(`[ion-popover] - A trigger element with the ID "${trigger}" was not found in the DOM. The trigger element must be in the DOM when the "trigger" property is set on ion-popover.`, this.el);
24448
24454
  return;
24449
24455
  }
24450
24456
  this.destroyTriggerInteraction = configureTriggerInteraction(triggerEl, triggerAction, el);
@@ -24723,9 +24729,9 @@ class Popover {
24723
24729
  const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
24724
24730
  const desktop = isPlatform('desktop');
24725
24731
  const enableArrow = arrow && !parentPopover;
24726
- return (hAsync(Host, Object.assign({ key: '48f108a9b74f121559626889dd5a1fcccf38fc3d', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
24732
+ return (hAsync(Host, Object.assign({ key: 'ff24e8d9677711248a36994cce568e74ba151499', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
24727
24733
  zIndex: `${20000 + this.overlayIndex}`,
24728
- }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && hAsync("ion-backdrop", { key: '580c14ab48472534f59eedc5ba7fa486df25ed4e', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), hAsync("div", { key: '9bcf47893e8d3053e2baa40511785d84feb4038c', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && hAsync("div", { key: '4d47f2bdc01a546a88190c07f8f4700f21de6715', class: "popover-arrow", part: "arrow" }), hAsync("div", { key: '70018c088654c1996e305b7b6b114419e97824ef', class: "popover-content", part: "content" }, hAsync("slot", { key: '3de8e1959b8facba2fbe694947704832200d8276' })))));
24734
+ }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && hAsync("ion-backdrop", { key: 'aca68b4002a08b0e563a976a867141162c20f8b4', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), hAsync("div", { key: '62d21d1eab5c6d675d49932559ffb161747e5fec', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && hAsync("div", { key: '1b46cc77d5302637fc979353483bb5fd780fd1d3', class: "popover-arrow", part: "arrow" }), hAsync("div", { key: 'a5657bff26e46d1959b71eb0992e7dc8fcae86f1', class: "popover-content", part: "content" }, hAsync("slot", { key: 'e1a98007226a46b51109e7004c4d338ca1bc0f9e' })))));
24729
24735
  }
24730
24736
  get el() { return getElement(this); }
24731
24737
  static get watchers() { return {
@@ -25469,11 +25475,11 @@ class Range {
25469
25475
  const { activeBarStart } = this;
25470
25476
  if (activeBarStart !== undefined) {
25471
25477
  if (activeBarStart > this.max) {
25472
- printIonWarning(`Range: The value of activeBarStart (${activeBarStart}) is greater than the max (${this.max}). Valid values are greater than or equal to the min value and less than or equal to the max value.`, this.el);
25478
+ printIonWarning(`[ion-range] - The value of activeBarStart (${activeBarStart}) is greater than the max (${this.max}). Valid values are greater than or equal to the min value and less than or equal to the max value.`, this.el);
25473
25479
  this.activeBarStart = this.max;
25474
25480
  }
25475
25481
  else if (activeBarStart < this.min) {
25476
- printIonWarning(`Range: The value of activeBarStart (${activeBarStart}) is less than the min (${this.min}). Valid values are greater than or equal to the min value and less than or equal to the max value.`, this.el);
25482
+ printIonWarning(`[ion-range] - The value of activeBarStart (${activeBarStart}) is less than the min (${this.min}). Valid values are greater than or equal to the min value and less than or equal to the max value.`, this.el);
25477
25483
  this.activeBarStart = this.min;
25478
25484
  }
25479
25485
  }
@@ -25899,7 +25905,7 @@ class Range {
25899
25905
  const needsEndAdjustment = inItem && !hasEndContent;
25900
25906
  const mode = getIonMode$1(this);
25901
25907
  renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
25902
- return (hAsync(Host, { key: 'e97cb7eab877eb1624429b4a79107130c6809cf5', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
25908
+ return (hAsync(Host, { key: '3e065039ee048f1f70d97dba5dae98fa1315d867', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
25903
25909
  [mode]: true,
25904
25910
  'in-item': inItem,
25905
25911
  'range-disabled': disabled,
@@ -25908,10 +25914,10 @@ class Range {
25908
25914
  [`range-label-placement-${labelPlacement}`]: true,
25909
25915
  'range-item-start-adjustment': needsStartAdjustment,
25910
25916
  'range-item-end-adjustment': needsEndAdjustment,
25911
- }) }, hAsync("label", { key: 'a43e9859f74f83460439efefccb5fbb9f387c9ee', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: '75352a30f30dbd0228c6138eb4324a5c021dbb48', class: {
25917
+ }) }, hAsync("label", { key: '27ff22842c9ea79a1b9495302b926f70c9080a95', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: 'da1f9784be02dfe87d2fef34931d8b7f2148189e', class: {
25912
25918
  'label-text-wrapper': true,
25913
25919
  'label-text-wrapper-hidden': !hasLabel,
25914
- }, part: "label" }, label !== undefined ? hAsync("div", { class: "label-text" }, label) : hAsync("slot", { name: "label" })), hAsync("div", { key: '6a3e147c3e5d938bb2b50522a290f6fdfcf40f05', class: "native-wrapper" }, hAsync("slot", { key: '6627236eac9f711fa9c27879a017dd994e65811e', name: "start" }), this.renderRangeSlider(), hAsync("slot", { key: '6af3bbadacd036bc7cd30732227f76d7c64117fb', name: "end" })))));
25920
+ }, part: "label" }, label !== undefined ? hAsync("div", { class: "label-text" }, label) : hAsync("slot", { name: "label" })), hAsync("div", { key: '4389bf30b08214f5b5917fc30976b38f7bcdd29b', class: "native-wrapper" }, hAsync("slot", { key: 'ad1b2745f8b061ee189617bb5c567e4f1d02250c', name: "start" }), this.renderRangeSlider(), hAsync("slot", { key: 'c6dec9e843e232af2a5f16a0f8ee56439c545d7a', name: "end" })))));
25915
25921
  }
25916
25922
  get el() { return getElement(this); }
25917
25923
  static get watchers() { return {
@@ -26481,7 +26487,7 @@ class Refresher {
26481
26487
  }
26482
26488
  async connectedCallback() {
26483
26489
  if (this.el.getAttribute('slot') !== 'fixed') {
26484
- console.error('Make sure you use: <ion-refresher slot="fixed">');
26490
+ printIonError('[ion-refresher] - Make sure you use: <ion-refresher slot="fixed">');
26485
26491
  return;
26486
26492
  }
26487
26493
  const contentEl = this.el.closest(ION_CONTENT_ELEMENT_SELECTOR);
@@ -26813,7 +26819,7 @@ class Refresher {
26813
26819
  }
26814
26820
  render() {
26815
26821
  const mode = getIonMode$1(this);
26816
- return (hAsync(Host, { key: '4c36bffbfa32ef1bd28a60f4455c125842880659', slot: "fixed", class: {
26822
+ return (hAsync(Host, { key: 'c717c16f2ca3e42351848cc8ad37918dec28961d', slot: "fixed", class: {
26817
26823
  [mode]: true,
26818
26824
  // Used internally for styling
26819
26825
  [`refresher-${mode}`]: true,
@@ -27723,7 +27729,7 @@ const writeNavState = async (root, chain, direction, index, changed = false, ani
27723
27729
  return changed;
27724
27730
  }
27725
27731
  catch (e) {
27726
- console.error(e);
27732
+ printIonError('[ion-router] - Exception in writeNavState:', e);
27727
27733
  return false;
27728
27734
  }
27729
27735
  };
@@ -28186,19 +28192,19 @@ class Router {
28186
28192
  /** @internal */
28187
28193
  async navChanged(direction) {
28188
28194
  if (this.busy) {
28189
- console.warn('[ion-router] router is busy, navChanged was cancelled');
28195
+ printIonWarning('[ion-router] - Router is busy, navChanged was cancelled.');
28190
28196
  return false;
28191
28197
  }
28192
28198
  const { ids, outlet } = await readNavState(window.document.body);
28193
28199
  const routes = readRoutes(this.el);
28194
28200
  const chain = findChainForIDs(ids, routes);
28195
28201
  if (!chain) {
28196
- console.warn('[ion-router] no matching URL for ', ids.map((i) => i.id));
28202
+ printIonWarning('[ion-router] - No matching URL for', ids.map((i) => i.id));
28197
28203
  return false;
28198
28204
  }
28199
28205
  const segments = chainToSegments(chain);
28200
28206
  if (!segments) {
28201
- console.warn('[ion-router] router could not match path because some required param is missing');
28207
+ printIonWarning('[ion-router] - Router could not match path because some required param is missing.');
28202
28208
  return false;
28203
28209
  }
28204
28210
  this.setSegments(segments, direction);
@@ -28236,7 +28242,7 @@ class Router {
28236
28242
  }
28237
28243
  async writeNavStateRoot(segments, direction, animation) {
28238
28244
  if (!segments) {
28239
- console.error('[ion-router] URL is not part of the routing set');
28245
+ printIonError('[ion-router] - URL is not part of the routing set.');
28240
28246
  return false;
28241
28247
  }
28242
28248
  // lookup redirect rule
@@ -28253,7 +28259,7 @@ class Router {
28253
28259
  const routes = readRoutes(this.el);
28254
28260
  const chain = findChainForSegments(segments, routes);
28255
28261
  if (!chain) {
28256
- console.error('[ion-router] the path does not match any route');
28262
+ printIonError('[ion-router] - The path does not match any route.');
28257
28263
  return false;
28258
28264
  }
28259
28265
  // write DOM give
@@ -28266,7 +28272,7 @@ class Router {
28266
28272
  changed = await this.writeNavState(node, chain, direction, segments, redirectFrom, index, animation);
28267
28273
  }
28268
28274
  catch (e) {
28269
- console.error(e);
28275
+ printIonError('[ion-router] - Exception in safeWriteNavState:', e);
28270
28276
  }
28271
28277
  unlock();
28272
28278
  return changed;
@@ -28308,7 +28314,7 @@ class Router {
28308
28314
  }
28309
28315
  async writeNavState(node, chain, direction, segments, redirectFrom, index = 0, animation) {
28310
28316
  if (this.busy) {
28311
- console.warn('[ion-router] router is busy, transition was cancelled');
28317
+ printIonWarning('[ion-router] - Router is busy, transition was cancelled.');
28312
28318
  return false;
28313
28319
  }
28314
28320
  this.busy = true;
@@ -28491,7 +28497,7 @@ class RouterOutlet {
28491
28497
  changed = await this.transition(enteringEl, leavingEl, opts);
28492
28498
  }
28493
28499
  catch (e) {
28494
- console.error(e);
28500
+ printIonError('[ion-router-outlet] - Exception in commit:', e);
28495
28501
  }
28496
28502
  unlock();
28497
28503
  return changed;
@@ -28587,7 +28593,7 @@ class RouterOutlet {
28587
28593
  return true;
28588
28594
  }
28589
28595
  render() {
28590
- return hAsync("slot", { key: '7e0a94834af9cb73ee47759fa5b2588dab3d1345' });
28596
+ return hAsync("slot", { key: 'df4fa3e07f10157d53129661d48282e8feec13a1' });
28591
28597
  }
28592
28598
  get el() { return getElement(this); }
28593
28599
  static get watchers() { return {
@@ -29704,7 +29710,7 @@ class SegmentButton {
29704
29710
  }
29705
29711
  // Prevent buttons from being disabled when associated with segment content
29706
29712
  if (this.contentId && this.disabled) {
29707
- console.warn(`Segment Button: Segment buttons cannot be disabled when associated with an <ion-segment-content>.`);
29713
+ printIonWarning(`[ion-segment-button] - Segment buttons cannot be disabled when associated with an <ion-segment-content>.`);
29708
29714
  this.disabled = false;
29709
29715
  }
29710
29716
  }
@@ -29725,12 +29731,12 @@ class SegmentButton {
29725
29731
  const segmentContent = document.getElementById(this.contentId);
29726
29732
  // If no associated Segment Content exists, log an error and return
29727
29733
  if (!segmentContent) {
29728
- console.error(`Segment Button: Unable to find Segment Content with id="${this.contentId}".`);
29734
+ printIonError(`[ion-segment-button] - Unable to find Segment Content with id="${this.contentId}".`);
29729
29735
  return;
29730
29736
  }
29731
29737
  // Ensure the found element is a valid ION-SEGMENT-CONTENT
29732
29738
  if (segmentContent.tagName !== 'ION-SEGMENT-CONTENT') {
29733
- console.error(`Segment Button: Element with id="${this.contentId}" is not an <ion-segment-content> element.`);
29739
+ printIonError(`[ion-segment-button] - Element with id="${this.contentId}" is not an <ion-segment-content> element.`);
29734
29740
  return;
29735
29741
  }
29736
29742
  }
@@ -29755,7 +29761,7 @@ class SegmentButton {
29755
29761
  const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
29756
29762
  const mode = getIonMode$1(this);
29757
29763
  const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
29758
- return (hAsync(Host, { key: 'f2f679a08b131cd35d63f649b9d1f1907df30a89', class: {
29764
+ return (hAsync(Host, { key: 'd79dad80db69123510c6d52bbf4424558600c14a', class: {
29759
29765
  [mode]: true,
29760
29766
  'in-toolbar': hostContext('ion-toolbar', this.el),
29761
29767
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
@@ -29771,7 +29777,7 @@ class SegmentButton {
29771
29777
  'ion-activatable': true,
29772
29778
  'ion-activatable-instant': true,
29773
29779
  'ion-focusable': true,
29774
- } }, 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" }))));
29780
+ } }, hAsync("button", Object.assign({ key: '781fd7fef443a2fbd404b8a399d1203794759a69', "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: '64df08f60ea17481183f8ad284884b9979eaeb24', class: "button-inner" }, hAsync("slot", { key: '2b7ef328023ab5ccc0adc6f865e5e7121467eeb8' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '1fd5e6179227925a03b6c3b5258bbf4ea99bfef1' })), hAsync("div", { key: 'dbcedad6988b0eadeebe02bdafdedb8eb37af19c', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, hAsync("div", { key: 'f4f1789f66bdfa2de5445bc0d292116a93bad7cc', part: "indicator-background", class: "segment-button-indicator-background" }))));
29775
29781
  }
29776
29782
  get el() { return getElement(this); }
29777
29783
  static get watchers() { return {
@@ -29944,10 +29950,10 @@ class SegmentView {
29944
29950
  }; }
29945
29951
  }
29946
29952
 
29947
- const selectIosCss = ":host{--padding-top:0px;--padding-end:0px;--padding-bottom:0px;--padding-start:0px;--placeholder-color:currentColor;--placeholder-opacity:var(--ion-placeholder-opacity, 0.6);--background:transparent;--border-style:solid;--highlight-color-focused:var(--ion-color-primary, #0054e9);--highlight-color-valid:var(--ion-color-success, #2dd55b);--highlight-color-invalid:var(--ion-color-danger, #c5000f);--highlight-color:var(--highlight-color-focused);display:block;position:relative;width:100%;min-height:44px;font-family:var(--ion-font-family, inherit);white-space:nowrap;cursor:pointer;z-index:2}:host(.select-label-placement-floating),:host(.select-label-placement-stacked){min-height:56px}:host(.ion-color){--highlight-color-focused:var(--ion-color-base)}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0}:host(.select-disabled){pointer-events:none}:host(.ion-focused) button{border:2px solid #5e9ed6}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}.select-placeholder{color:var(--placeholder-color);opacity:var(--placeholder-opacity)}button{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.select-icon{-webkit-margin-start:4px;margin-inline-start:4px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0;position:relative;-ms-flex-negative:0;flex-shrink:0}:host(.in-item-color) .select-icon{color:inherit}:host(.select-label-placement-stacked) .select-icon,:host(.select-label-placement-floating) .select-icon{position:absolute;height:100%}:host(.select-ltr.select-label-placement-stacked) .select-icon,:host(.select-ltr.select-label-placement-floating) .select-icon{right:var(--padding-end, 0)}:host(.select-rtl.select-label-placement-stacked) .select-icon,:host(.select-rtl.select-label-placement-floating) .select-icon{left:var(--padding-start, 0)}.select-text{-ms-flex:1;flex:1;min-width:16px;font-size:inherit;text-overflow:ellipsis;white-space:inherit;overflow:hidden}.select-wrapper{-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);border-radius:var(--border-radius);display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;min-height:inherit;-webkit-transition:background-color 15ms linear;transition:background-color 15ms linear;background:var(--background);line-height:normal;cursor:inherit;-webkit-box-sizing:border-box;box-sizing:border-box}.select-wrapper .select-placeholder{-webkit-transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1)}.select-wrapper-inner{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;overflow:hidden}:host(.select-label-placement-stacked) .select-wrapper-inner,:host(.select-label-placement-floating) .select-wrapper-inner{-ms-flex-positive:1;flex-grow:1}:host(.ion-touched.ion-invalid){--highlight-color:var(--highlight-color-invalid)}:host(.ion-valid){--highlight-color:var(--highlight-color-valid)}.select-bottom{-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:5px;padding-bottom:0;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;border-top:var(--border-width) var(--border-style) var(--border-color);font-size:0.75rem;white-space:normal}:host(.has-focus.ion-valid),:host(.ion-touched.ion-invalid){--border-color:var(--highlight-color)}.select-bottom .error-text{display:none;color:var(--highlight-color-invalid)}.select-bottom .helper-text{display:block;color:var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d))}:host(.ion-touched.ion-invalid) .select-bottom .error-text{display:block}:host(.ion-touched.ion-invalid) .select-bottom .helper-text{display:none}.label-text-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;max-width:200px;-webkit-transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);pointer-events:none}.label-text,::slotted([slot=label]){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.label-text-wrapper-hidden,.select-outline-notch-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-webkit-transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);overflow:hidden}:host(.select-justify-space-between) .select-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.select-justify-start) .select-wrapper{-ms-flex-pack:start;justify-content:start}:host(.select-justify-end) .select-wrapper{-ms-flex-pack:end;justify-content:end}:host(.select-label-placement-start) .select-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.select-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.select-label-placement-end) .select-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.select-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0}:host(.select-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.select-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.select-label-placement-stacked) .select-wrapper,:host(.select-label-placement-floating) .select-wrapper{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:start}:host(.select-label-placement-stacked) .label-text-wrapper,:host(.select-label-placement-floating) .label-text-wrapper{max-width:100%}:host(.select-ltr.select-label-placement-stacked) .label-text-wrapper,:host(.select-ltr.select-label-placement-floating) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host(.select-rtl.select-label-placement-stacked) .label-text-wrapper,:host(.select-rtl.select-label-placement-floating) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}:host(.select-label-placement-stacked) .native-wrapper,:host(.select-label-placement-floating) .native-wrapper{margin-left:0;margin-right:0;margin-top:1px;margin-bottom:0;-ms-flex-positive:1;flex-grow:1;width:100%}:host(.select-label-placement-floating) .label-text-wrapper{-webkit-transform:translateY(100%) scale(1);transform:translateY(100%) scale(1)}:host(.select-label-placement-floating:not(.label-floating)) .native-wrapper .select-placeholder{opacity:0}:host(.select-expanded.select-label-placement-floating) .native-wrapper .select-placeholder,:host(.ion-focused.select-label-placement-floating) .native-wrapper .select-placeholder,:host(.has-value.select-label-placement-floating) .native-wrapper .select-placeholder{opacity:1}:host(.label-floating) .label-text-wrapper{-webkit-transform:translateY(50%) scale(0.75);transform:translateY(50%) scale(0.75);max-width:calc(100% / 0.75)}::slotted([slot=start]),::slotted([slot=end]){-ms-flex-negative:0;flex-shrink:0}::slotted([slot=start]:last-of-type){-webkit-margin-end:16px;margin-inline-end:16px;-webkit-margin-start:0;margin-inline-start:0}::slotted([slot=end]:first-of-type){-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host{--border-width:0.55px;--border-color:var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-250, var(--ion-background-color-step-250, #c8c7cc))));--highlight-height:0px}.select-icon{width:1.125rem;height:1.125rem;color:var(--ion-color-step-650, var(--ion-text-color-step-350, #595959))}:host(.select-label-placement-stacked) .select-wrapper-inner,:host(.select-label-placement-floating) .select-wrapper-inner{width:calc(100% - 1.125rem - 4px)}:host(.select-disabled){opacity:0.3}::slotted(ion-button[slot=start].button-has-icon-only),::slotted(ion-button[slot=end].button-has-icon-only){--border-radius:50%;--padding-start:0;--padding-end:0;--padding-top:0;--padding-bottom:0;aspect-ratio:1}";
29953
+ const selectIosCss = ":host{--padding-top:0px;--padding-end:0px;--padding-bottom:0px;--padding-start:0px;--placeholder-color:currentColor;--placeholder-opacity:var(--ion-placeholder-opacity, 0.6);--background:transparent;--border-style:solid;--highlight-color-focused:var(--ion-color-primary, #0054e9);--highlight-color-valid:var(--ion-color-success, #2dd55b);--highlight-color-invalid:var(--ion-color-danger, #c5000f);--highlight-color:var(--highlight-color-focused);display:block;position:relative;width:100%;min-height:44px;font-family:var(--ion-font-family, inherit);white-space:nowrap;cursor:pointer;z-index:2}:host(.select-label-placement-floating),:host(.select-label-placement-stacked){min-height:56px}:host(.ion-color){--highlight-color-focused:var(--ion-color-base)}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0}:host(.select-disabled){pointer-events:none}:host(.has-focus) button{border:2px solid #5e9ed6}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}.select-placeholder{color:var(--placeholder-color);opacity:var(--placeholder-opacity)}button{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.select-icon{-webkit-margin-start:4px;margin-inline-start:4px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0;position:relative;-ms-flex-negative:0;flex-shrink:0}:host(.in-item-color) .select-icon{color:inherit}:host(.select-label-placement-stacked) .select-icon,:host(.select-label-placement-floating) .select-icon{position:absolute;height:100%}:host(.select-ltr.select-label-placement-stacked) .select-icon,:host(.select-ltr.select-label-placement-floating) .select-icon{right:var(--padding-end, 0)}:host(.select-rtl.select-label-placement-stacked) .select-icon,:host(.select-rtl.select-label-placement-floating) .select-icon{left:var(--padding-start, 0)}.select-text{-ms-flex:1;flex:1;min-width:16px;font-size:inherit;text-overflow:ellipsis;white-space:inherit;overflow:hidden}.select-wrapper{-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);border-radius:var(--border-radius);display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;min-height:inherit;-webkit-transition:background-color 15ms linear;transition:background-color 15ms linear;background:var(--background);line-height:normal;cursor:inherit;-webkit-box-sizing:border-box;box-sizing:border-box}.select-wrapper .select-placeholder{-webkit-transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1)}.select-wrapper-inner{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;overflow:hidden}:host(.select-label-placement-stacked) .select-wrapper-inner,:host(.select-label-placement-floating) .select-wrapper-inner{-ms-flex-positive:1;flex-grow:1}:host(.ion-touched.ion-invalid){--highlight-color:var(--highlight-color-invalid)}:host(.ion-valid){--highlight-color:var(--highlight-color-valid)}.select-bottom{-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:5px;padding-bottom:0;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;border-top:var(--border-width) var(--border-style) var(--border-color);font-size:0.75rem;white-space:normal}:host(.has-focus.ion-valid),:host(.select-expanded.ion-valid),:host(.ion-touched.ion-invalid),:host(.select-expanded.ion-touched.ion-invalid){--border-color:var(--highlight-color)}.select-bottom .error-text{display:none;color:var(--highlight-color-invalid)}.select-bottom .helper-text{display:block;color:var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d))}:host(.ion-touched.ion-invalid) .select-bottom .error-text{display:block}:host(.ion-touched.ion-invalid) .select-bottom .helper-text{display:none}.label-text-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;max-width:200px;-webkit-transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);pointer-events:none}.label-text,::slotted([slot=label]){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.label-text-wrapper-hidden,.select-outline-notch-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-webkit-transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);overflow:hidden}:host(.select-justify-space-between) .select-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.select-justify-start) .select-wrapper{-ms-flex-pack:start;justify-content:start}:host(.select-justify-end) .select-wrapper{-ms-flex-pack:end;justify-content:end}:host(.select-label-placement-start) .select-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.select-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.select-label-placement-end) .select-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.select-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0}:host(.select-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.select-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.select-label-placement-stacked) .select-wrapper,:host(.select-label-placement-floating) .select-wrapper{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:start}:host(.select-label-placement-stacked) .label-text-wrapper,:host(.select-label-placement-floating) .label-text-wrapper{max-width:100%}:host(.select-ltr.select-label-placement-stacked) .label-text-wrapper,:host(.select-ltr.select-label-placement-floating) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host(.select-rtl.select-label-placement-stacked) .label-text-wrapper,:host(.select-rtl.select-label-placement-floating) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}:host(.select-label-placement-stacked) .native-wrapper,:host(.select-label-placement-floating) .native-wrapper{margin-left:0;margin-right:0;margin-top:1px;margin-bottom:0;-ms-flex-positive:1;flex-grow:1;width:100%}:host(.select-label-placement-floating) .label-text-wrapper{-webkit-transform:translateY(100%) scale(1);transform:translateY(100%) scale(1)}:host(.select-label-placement-floating:not(.label-floating)) .native-wrapper .select-placeholder{opacity:0}:host(.select-expanded.select-label-placement-floating) .native-wrapper .select-placeholder,:host(.has-focus.select-label-placement-floating) .native-wrapper .select-placeholder,:host(.has-value.select-label-placement-floating) .native-wrapper .select-placeholder{opacity:1}:host(.label-floating) .label-text-wrapper{-webkit-transform:translateY(50%) scale(0.75);transform:translateY(50%) scale(0.75);max-width:calc(100% / 0.75)}::slotted([slot=start]),::slotted([slot=end]){-ms-flex-negative:0;flex-shrink:0}::slotted([slot=start]:last-of-type){-webkit-margin-end:16px;margin-inline-end:16px;-webkit-margin-start:0;margin-inline-start:0}::slotted([slot=end]:first-of-type){-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host{--border-width:0.55px;--border-color:var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-250, var(--ion-background-color-step-250, #c8c7cc))));--highlight-height:0px}.select-icon{width:1.125rem;height:1.125rem;color:var(--ion-color-step-650, var(--ion-text-color-step-350, #595959))}:host(.select-label-placement-stacked) .select-wrapper-inner,:host(.select-label-placement-floating) .select-wrapper-inner{width:calc(100% - 1.125rem - 4px)}:host(.select-disabled){opacity:0.3}::slotted(ion-button[slot=start].button-has-icon-only),::slotted(ion-button[slot=end].button-has-icon-only){--border-radius:50%;--padding-start:0;--padding-end:0;--padding-top:0;--padding-bottom:0;aspect-ratio:1}";
29948
29954
  var IonSelectIosStyle0 = selectIosCss;
29949
29955
 
29950
- const selectMdCss = ":host{--padding-top:0px;--padding-end:0px;--padding-bottom:0px;--padding-start:0px;--placeholder-color:currentColor;--placeholder-opacity:var(--ion-placeholder-opacity, 0.6);--background:transparent;--border-style:solid;--highlight-color-focused:var(--ion-color-primary, #0054e9);--highlight-color-valid:var(--ion-color-success, #2dd55b);--highlight-color-invalid:var(--ion-color-danger, #c5000f);--highlight-color:var(--highlight-color-focused);display:block;position:relative;width:100%;min-height:44px;font-family:var(--ion-font-family, inherit);white-space:nowrap;cursor:pointer;z-index:2}:host(.select-label-placement-floating),:host(.select-label-placement-stacked){min-height:56px}:host(.ion-color){--highlight-color-focused:var(--ion-color-base)}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0}:host(.select-disabled){pointer-events:none}:host(.ion-focused) button{border:2px solid #5e9ed6}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}.select-placeholder{color:var(--placeholder-color);opacity:var(--placeholder-opacity)}button{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.select-icon{-webkit-margin-start:4px;margin-inline-start:4px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0;position:relative;-ms-flex-negative:0;flex-shrink:0}:host(.in-item-color) .select-icon{color:inherit}:host(.select-label-placement-stacked) .select-icon,:host(.select-label-placement-floating) .select-icon{position:absolute;height:100%}:host(.select-ltr.select-label-placement-stacked) .select-icon,:host(.select-ltr.select-label-placement-floating) .select-icon{right:var(--padding-end, 0)}:host(.select-rtl.select-label-placement-stacked) .select-icon,:host(.select-rtl.select-label-placement-floating) .select-icon{left:var(--padding-start, 0)}.select-text{-ms-flex:1;flex:1;min-width:16px;font-size:inherit;text-overflow:ellipsis;white-space:inherit;overflow:hidden}.select-wrapper{-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);border-radius:var(--border-radius);display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;min-height:inherit;-webkit-transition:background-color 15ms linear;transition:background-color 15ms linear;background:var(--background);line-height:normal;cursor:inherit;-webkit-box-sizing:border-box;box-sizing:border-box}.select-wrapper .select-placeholder{-webkit-transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1)}.select-wrapper-inner{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;overflow:hidden}:host(.select-label-placement-stacked) .select-wrapper-inner,:host(.select-label-placement-floating) .select-wrapper-inner{-ms-flex-positive:1;flex-grow:1}:host(.ion-touched.ion-invalid){--highlight-color:var(--highlight-color-invalid)}:host(.ion-valid){--highlight-color:var(--highlight-color-valid)}.select-bottom{-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:5px;padding-bottom:0;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;border-top:var(--border-width) var(--border-style) var(--border-color);font-size:0.75rem;white-space:normal}:host(.has-focus.ion-valid),:host(.ion-touched.ion-invalid){--border-color:var(--highlight-color)}.select-bottom .error-text{display:none;color:var(--highlight-color-invalid)}.select-bottom .helper-text{display:block;color:var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d))}:host(.ion-touched.ion-invalid) .select-bottom .error-text{display:block}:host(.ion-touched.ion-invalid) .select-bottom .helper-text{display:none}.label-text-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;max-width:200px;-webkit-transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);pointer-events:none}.label-text,::slotted([slot=label]){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.label-text-wrapper-hidden,.select-outline-notch-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-webkit-transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);overflow:hidden}:host(.select-justify-space-between) .select-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.select-justify-start) .select-wrapper{-ms-flex-pack:start;justify-content:start}:host(.select-justify-end) .select-wrapper{-ms-flex-pack:end;justify-content:end}:host(.select-label-placement-start) .select-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.select-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.select-label-placement-end) .select-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.select-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0}:host(.select-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.select-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.select-label-placement-stacked) .select-wrapper,:host(.select-label-placement-floating) .select-wrapper{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:start}:host(.select-label-placement-stacked) .label-text-wrapper,:host(.select-label-placement-floating) .label-text-wrapper{max-width:100%}:host(.select-ltr.select-label-placement-stacked) .label-text-wrapper,:host(.select-ltr.select-label-placement-floating) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host(.select-rtl.select-label-placement-stacked) .label-text-wrapper,:host(.select-rtl.select-label-placement-floating) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}:host(.select-label-placement-stacked) .native-wrapper,:host(.select-label-placement-floating) .native-wrapper{margin-left:0;margin-right:0;margin-top:1px;margin-bottom:0;-ms-flex-positive:1;flex-grow:1;width:100%}:host(.select-label-placement-floating) .label-text-wrapper{-webkit-transform:translateY(100%) scale(1);transform:translateY(100%) scale(1)}:host(.select-label-placement-floating:not(.label-floating)) .native-wrapper .select-placeholder{opacity:0}:host(.select-expanded.select-label-placement-floating) .native-wrapper .select-placeholder,:host(.ion-focused.select-label-placement-floating) .native-wrapper .select-placeholder,:host(.has-value.select-label-placement-floating) .native-wrapper .select-placeholder{opacity:1}:host(.label-floating) .label-text-wrapper{-webkit-transform:translateY(50%) scale(0.75);transform:translateY(50%) scale(0.75);max-width:calc(100% / 0.75)}::slotted([slot=start]),::slotted([slot=end]){-ms-flex-negative:0;flex-shrink:0}::slotted([slot=start]:last-of-type){-webkit-margin-end:16px;margin-inline-end:16px;-webkit-margin-start:0;margin-inline-start:0}::slotted([slot=end]:first-of-type){-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.select-fill-solid){--background:var(--ion-color-step-50, var(--ion-background-color-step-50, #f2f2f2));--border-color:var(--ion-color-step-500, var(--ion-background-color-step-500, gray));--border-radius:4px;--padding-start:16px;--padding-end:16px;min-height:56px}:host(.select-fill-solid) .select-wrapper{border-bottom:var(--border-width) var(--border-style) var(--border-color)}:host(.has-focus.select-fill-solid.ion-valid),:host(.select-fill-solid.ion-touched.ion-invalid){--border-color:var(--highlight-color)}:host(.select-fill-solid) .select-bottom{border-top:none}@media (any-hover: hover){:host(.select-fill-solid:hover){--background:var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6));--border-color:var(--ion-color-step-750, var(--ion-background-color-step-750, #404040))}}:host(.select-fill-solid.select-expanded),:host(.select-fill-solid.ion-focused){--background:var(--ion-color-step-150, var(--ion-background-color-step-150, #d9d9d9));--border-color:var(--ion-color-step-750, var(--ion-background-color-step-750, #404040))}:host(.select-fill-solid) .select-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0px;border-end-start-radius:0px}:host(.label-floating.select-fill-solid) .label-text-wrapper{max-width:calc(100% / 0.75)}:host(.select-fill-outline){--border-color:var(--ion-color-step-300, var(--ion-background-color-step-300, #b3b3b3));--border-radius:4px;--padding-start:16px;--padding-end:16px;min-height:56px}:host(.select-fill-outline.select-shape-round){--border-radius:28px;--padding-start:32px;--padding-end:32px}:host(.has-focus.select-fill-outline.ion-valid),:host(.select-fill-outline.ion-touched.ion-invalid){--border-color:var(--highlight-color)}@media (any-hover: hover){:host(.select-fill-outline:hover){--border-color:var(--ion-color-step-750, var(--ion-background-color-step-750, #404040))}}:host(.select-fill-outline.select-expanded),:host(.select-fill-outline.ion-focused){--border-width:var(--highlight-height);--border-color:var(--highlight-color)}:host(.select-fill-outline) .select-bottom{border-top:none}:host(.select-fill-outline) .select-wrapper{border-bottom:none}:host(.select-ltr.select-fill-outline.select-label-placement-stacked) .label-text-wrapper,:host(.select-ltr.select-fill-outline.select-label-placement-floating) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host(.select-rtl.select-fill-outline.select-label-placement-stacked) .label-text-wrapper,:host(.select-rtl.select-fill-outline.select-label-placement-floating) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}:host(.select-fill-outline.select-label-placement-stacked) .label-text-wrapper,:host(.select-fill-outline.select-label-placement-floating) .label-text-wrapper{position:absolute;max-width:calc(100% - var(--padding-start) - var(--padding-end))}:host(.select-fill-outline) .label-text-wrapper{position:relative;z-index:1}:host(.label-floating.select-fill-outline) .label-text-wrapper{-webkit-transform:translateY(-32%) scale(0.75);transform:translateY(-32%) scale(0.75);margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;max-width:calc((100% - var(--padding-start) - var(--padding-end) - 8px) / 0.75)}:host(.select-fill-outline.select-label-placement-stacked) select,:host(.select-fill-outline.select-label-placement-floating) select{margin-left:0;margin-right:0;margin-top:6px;margin-bottom:6px}:host(.select-fill-outline) .select-outline-container{left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;width:100%;height:100%}:host(.select-fill-outline) .select-outline-start,:host(.select-fill-outline) .select-outline-end{pointer-events:none}:host(.select-fill-outline) .select-outline-start,:host(.select-fill-outline) .select-outline-notch,:host(.select-fill-outline) .select-outline-end{border-top:var(--border-width) var(--border-style) var(--border-color);border-bottom:var(--border-width) var(--border-style) var(--border-color);-webkit-box-sizing:border-box;box-sizing:border-box}:host(.select-fill-outline) .select-outline-notch{max-width:calc(100% - var(--padding-start) - var(--padding-end))}:host(.select-fill-outline) .notch-spacer{-webkit-padding-end:8px;padding-inline-end:8px;font-size:calc(1em * 0.75);opacity:0;pointer-events:none}:host(.select-fill-outline) .select-outline-start{-webkit-border-start:var(--border-width) var(--border-style) var(--border-color);border-inline-start:var(--border-width) var(--border-style) var(--border-color)}:host(.select-fill-outline) .select-outline-start{border-start-start-radius:var(--border-radius);border-start-end-radius:0px;border-end-end-radius:0px;border-end-start-radius:var(--border-radius)}:host(.select-fill-outline) .select-outline-start{width:calc(var(--padding-start) - 4px)}:host(.select-fill-outline) .select-outline-end{-webkit-border-end:var(--border-width) var(--border-style) var(--border-color);border-inline-end:var(--border-width) var(--border-style) var(--border-color)}:host(.select-fill-outline) .select-outline-end{border-start-start-radius:0px;border-start-end-radius:var(--border-radius);border-end-end-radius:var(--border-radius);border-end-start-radius:0px}:host(.select-fill-outline) .select-outline-end{-ms-flex-positive:1;flex-grow:1}:host(.label-floating.select-fill-outline) .select-outline-notch{border-top:none}:host{--border-width:1px;--border-color:var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-150, var(--ion-background-color-step-150, rgba(0, 0, 0, 0.13)))));--highlight-height:2px}.select-icon{width:0.8125rem;-webkit-transition:-webkit-transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);transition:-webkit-transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);transition:transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);transition:transform 0.15s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);color:var(--ion-color-step-500, var(--ion-text-color-step-500, gray))}:host(.select-label-placement-floating.select-expanded) .label-text-wrapper,:host(.select-label-placement-floating.ion-focused) .label-text-wrapper,:host(.select-label-placement-stacked.select-expanded) .label-text-wrapper,:host(.select-label-placement-stacked.ion-focused) .label-text-wrapper{color:var(--highlight-color)}:host(.has-focus.select-label-placement-floating.ion-valid) .label-text-wrapper,:host(.select-label-placement-floating.ion-touched.ion-invalid) .label-text-wrapper,:host(.has-focus.select-label-placement-stacked.ion-valid) .label-text-wrapper,:host(.select-label-placement-stacked.ion-touched.ion-invalid) .label-text-wrapper{color:var(--highlight-color)}.select-highlight{bottom:-1px;position:absolute;width:100%;height:var(--highlight-height);-webkit-transform:scale(0);transform:scale(0);-webkit-transition:-webkit-transform 200ms;transition:-webkit-transform 200ms;transition:transform 200ms;transition:transform 200ms, -webkit-transform 200ms;background:var(--highlight-color)}.select-highlight{inset-inline-start:0}:host(.select-expanded) .select-highlight,:host(.ion-focused) .select-highlight{-webkit-transform:scale(1);transform:scale(1)}:host(.in-item) .select-highlight{bottom:0}:host(.in-item) .select-highlight{inset-inline-start:0}:host(.select-expanded:not(.has-expanded-icon)) .select-icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host(.select-expanded) .select-wrapper .select-icon,:host(.has-focus.ion-valid) .select-wrapper .select-icon,:host(.ion-touched.ion-invalid) .select-wrapper .select-icon,:host(.ion-focused) .select-wrapper .select-icon{color:var(--highlight-color)}:host(.select-shape-round){--border-radius:16px}:host(.select-label-placement-stacked) .select-wrapper-inner,:host(.select-label-placement-floating) .select-wrapper-inner{width:calc(100% - 0.8125rem - 4px)}:host(.select-disabled){opacity:0.38}::slotted(ion-button[slot=start].button-has-icon-only),::slotted(ion-button[slot=end].button-has-icon-only){--border-radius:50%;--padding-start:8px;--padding-end:8px;--padding-top:8px;--padding-bottom:8px;aspect-ratio:1;min-height:40px}";
29956
+ const selectMdCss = ":host{--padding-top:0px;--padding-end:0px;--padding-bottom:0px;--padding-start:0px;--placeholder-color:currentColor;--placeholder-opacity:var(--ion-placeholder-opacity, 0.6);--background:transparent;--border-style:solid;--highlight-color-focused:var(--ion-color-primary, #0054e9);--highlight-color-valid:var(--ion-color-success, #2dd55b);--highlight-color-invalid:var(--ion-color-danger, #c5000f);--highlight-color:var(--highlight-color-focused);display:block;position:relative;width:100%;min-height:44px;font-family:var(--ion-font-family, inherit);white-space:nowrap;cursor:pointer;z-index:2}:host(.select-label-placement-floating),:host(.select-label-placement-stacked){min-height:56px}:host(.ion-color){--highlight-color-focused:var(--ion-color-base)}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0}:host(.select-disabled){pointer-events:none}:host(.has-focus) button{border:2px solid #5e9ed6}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}.select-placeholder{color:var(--placeholder-color);opacity:var(--placeholder-opacity)}button{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.select-icon{-webkit-margin-start:4px;margin-inline-start:4px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0;position:relative;-ms-flex-negative:0;flex-shrink:0}:host(.in-item-color) .select-icon{color:inherit}:host(.select-label-placement-stacked) .select-icon,:host(.select-label-placement-floating) .select-icon{position:absolute;height:100%}:host(.select-ltr.select-label-placement-stacked) .select-icon,:host(.select-ltr.select-label-placement-floating) .select-icon{right:var(--padding-end, 0)}:host(.select-rtl.select-label-placement-stacked) .select-icon,:host(.select-rtl.select-label-placement-floating) .select-icon{left:var(--padding-start, 0)}.select-text{-ms-flex:1;flex:1;min-width:16px;font-size:inherit;text-overflow:ellipsis;white-space:inherit;overflow:hidden}.select-wrapper{-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);border-radius:var(--border-radius);display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;min-height:inherit;-webkit-transition:background-color 15ms linear;transition:background-color 15ms linear;background:var(--background);line-height:normal;cursor:inherit;-webkit-box-sizing:border-box;box-sizing:border-box}.select-wrapper .select-placeholder{-webkit-transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1)}.select-wrapper-inner{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;overflow:hidden}:host(.select-label-placement-stacked) .select-wrapper-inner,:host(.select-label-placement-floating) .select-wrapper-inner{-ms-flex-positive:1;flex-grow:1}:host(.ion-touched.ion-invalid){--highlight-color:var(--highlight-color-invalid)}:host(.ion-valid){--highlight-color:var(--highlight-color-valid)}.select-bottom{-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:5px;padding-bottom:0;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;border-top:var(--border-width) var(--border-style) var(--border-color);font-size:0.75rem;white-space:normal}:host(.has-focus.ion-valid),:host(.select-expanded.ion-valid),:host(.ion-touched.ion-invalid),:host(.select-expanded.ion-touched.ion-invalid){--border-color:var(--highlight-color)}.select-bottom .error-text{display:none;color:var(--highlight-color-invalid)}.select-bottom .helper-text{display:block;color:var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d))}:host(.ion-touched.ion-invalid) .select-bottom .error-text{display:block}:host(.ion-touched.ion-invalid) .select-bottom .helper-text{display:none}.label-text-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;max-width:200px;-webkit-transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);pointer-events:none}.label-text,::slotted([slot=label]){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.label-text-wrapper-hidden,.select-outline-notch-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-webkit-transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);overflow:hidden}:host(.select-justify-space-between) .select-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.select-justify-start) .select-wrapper{-ms-flex-pack:start;justify-content:start}:host(.select-justify-end) .select-wrapper{-ms-flex-pack:end;justify-content:end}:host(.select-label-placement-start) .select-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.select-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.select-label-placement-end) .select-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.select-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0}:host(.select-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.select-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.select-label-placement-stacked) .select-wrapper,:host(.select-label-placement-floating) .select-wrapper{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:start}:host(.select-label-placement-stacked) .label-text-wrapper,:host(.select-label-placement-floating) .label-text-wrapper{max-width:100%}:host(.select-ltr.select-label-placement-stacked) .label-text-wrapper,:host(.select-ltr.select-label-placement-floating) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host(.select-rtl.select-label-placement-stacked) .label-text-wrapper,:host(.select-rtl.select-label-placement-floating) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}:host(.select-label-placement-stacked) .native-wrapper,:host(.select-label-placement-floating) .native-wrapper{margin-left:0;margin-right:0;margin-top:1px;margin-bottom:0;-ms-flex-positive:1;flex-grow:1;width:100%}:host(.select-label-placement-floating) .label-text-wrapper{-webkit-transform:translateY(100%) scale(1);transform:translateY(100%) scale(1)}:host(.select-label-placement-floating:not(.label-floating)) .native-wrapper .select-placeholder{opacity:0}:host(.select-expanded.select-label-placement-floating) .native-wrapper .select-placeholder,:host(.has-focus.select-label-placement-floating) .native-wrapper .select-placeholder,:host(.has-value.select-label-placement-floating) .native-wrapper .select-placeholder{opacity:1}:host(.label-floating) .label-text-wrapper{-webkit-transform:translateY(50%) scale(0.75);transform:translateY(50%) scale(0.75);max-width:calc(100% / 0.75)}::slotted([slot=start]),::slotted([slot=end]){-ms-flex-negative:0;flex-shrink:0}::slotted([slot=start]:last-of-type){-webkit-margin-end:16px;margin-inline-end:16px;-webkit-margin-start:0;margin-inline-start:0}::slotted([slot=end]:first-of-type){-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.select-fill-solid){--background:var(--ion-color-step-50, var(--ion-background-color-step-50, #f2f2f2));--border-color:var(--ion-color-step-500, var(--ion-background-color-step-500, gray));--border-radius:4px;--padding-start:16px;--padding-end:16px;min-height:56px}:host(.select-fill-solid) .select-wrapper{border-bottom:var(--border-width) var(--border-style) var(--border-color)}:host(.select-expanded.select-fill-solid.ion-valid),:host(.has-focus.select-fill-solid.ion-valid),:host(.select-fill-solid.ion-touched.ion-invalid){--border-color:var(--highlight-color)}:host(.select-fill-solid) .select-bottom{border-top:none}@media (any-hover: hover){:host(.select-fill-solid:hover){--background:var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6));--border-color:var(--ion-color-step-750, var(--ion-background-color-step-750, #404040))}}:host(.select-fill-solid.select-expanded),:host(.select-fill-solid.has-focus){--background:var(--ion-color-step-150, var(--ion-background-color-step-150, #d9d9d9));--border-color:var(--highlight-color)}:host(.select-fill-solid) .select-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0px;border-end-start-radius:0px}:host(.label-floating.select-fill-solid) .label-text-wrapper{max-width:calc(100% / 0.75)}:host(.in-item.select-expanded.select-fill-solid) .select-wrapper .select-icon,:host(.in-item.has-focus.select-fill-solid) .select-wrapper .select-icon,:host(.in-item.has-focus.ion-valid.select-fill-solid) .select-wrapper .select-icon,:host(.in-item.ion-touched.ion-invalid.select-fill-solid) .select-wrapper .select-icon{color:var(--highlight-color)}:host(.select-fill-outline){--border-color:var(--ion-color-step-300, var(--ion-background-color-step-300, #b3b3b3));--border-radius:4px;--padding-start:16px;--padding-end:16px;min-height:56px}:host(.select-fill-outline.select-shape-round){--border-radius:28px;--padding-start:32px;--padding-end:32px}:host(.has-focus.select-fill-outline.ion-valid),:host(.select-fill-outline.ion-touched.ion-invalid){--border-color:var(--highlight-color)}@media (any-hover: hover){:host(.select-fill-outline:hover){--border-color:var(--ion-color-step-750, var(--ion-background-color-step-750, #404040))}}:host(.select-fill-outline.select-expanded),:host(.select-fill-outline.has-focus){--border-width:var(--highlight-height);--border-color:var(--highlight-color)}:host(.select-fill-outline) .select-bottom{border-top:none}:host(.select-fill-outline) .select-wrapper{border-bottom:none}:host(.select-ltr.select-fill-outline.select-label-placement-stacked) .label-text-wrapper,:host(.select-ltr.select-fill-outline.select-label-placement-floating) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host(.select-rtl.select-fill-outline.select-label-placement-stacked) .label-text-wrapper,:host(.select-rtl.select-fill-outline.select-label-placement-floating) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}:host(.select-fill-outline.select-label-placement-stacked) .label-text-wrapper,:host(.select-fill-outline.select-label-placement-floating) .label-text-wrapper{position:absolute;max-width:calc(100% - var(--padding-start) - var(--padding-end))}:host(.select-fill-outline) .label-text-wrapper{position:relative;z-index:1}:host(.label-floating.select-fill-outline) .label-text-wrapper{-webkit-transform:translateY(-32%) scale(0.75);transform:translateY(-32%) scale(0.75);margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;max-width:calc((100% - var(--padding-start) - var(--padding-end) - 8px) / 0.75)}:host(.select-fill-outline.select-label-placement-stacked) select,:host(.select-fill-outline.select-label-placement-floating) select{margin-left:0;margin-right:0;margin-top:6px;margin-bottom:6px}:host(.select-fill-outline) .select-outline-container{left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;width:100%;height:100%}:host(.select-fill-outline) .select-outline-start,:host(.select-fill-outline) .select-outline-end{pointer-events:none}:host(.select-fill-outline) .select-outline-start,:host(.select-fill-outline) .select-outline-notch,:host(.select-fill-outline) .select-outline-end{border-top:var(--border-width) var(--border-style) var(--border-color);border-bottom:var(--border-width) var(--border-style) var(--border-color);-webkit-box-sizing:border-box;box-sizing:border-box}:host(.select-fill-outline) .select-outline-notch{max-width:calc(100% - var(--padding-start) - var(--padding-end))}:host(.select-fill-outline) .notch-spacer{-webkit-padding-end:8px;padding-inline-end:8px;font-size:calc(1em * 0.75);opacity:0;pointer-events:none}:host(.select-fill-outline) .select-outline-start{-webkit-border-start:var(--border-width) var(--border-style) var(--border-color);border-inline-start:var(--border-width) var(--border-style) var(--border-color)}:host(.select-fill-outline) .select-outline-start{border-start-start-radius:var(--border-radius);border-start-end-radius:0px;border-end-end-radius:0px;border-end-start-radius:var(--border-radius)}:host(.select-fill-outline) .select-outline-start{width:calc(var(--padding-start) - 4px)}:host(.select-fill-outline) .select-outline-end{-webkit-border-end:var(--border-width) var(--border-style) var(--border-color);border-inline-end:var(--border-width) var(--border-style) var(--border-color)}:host(.select-fill-outline) .select-outline-end{border-start-start-radius:0px;border-start-end-radius:var(--border-radius);border-end-end-radius:var(--border-radius);border-end-start-radius:0px}:host(.select-fill-outline) .select-outline-end{-ms-flex-positive:1;flex-grow:1}:host(.label-floating.select-fill-outline) .select-outline-notch{border-top:none}:host(.in-item.select-expanded.select-fill-outline) .select-wrapper .select-icon,:host(.in-item.has-focus.select-fill-outline) .select-wrapper .select-icon,:host(.in-item.has-focus.ion-valid.select-fill-outline) .select-wrapper .select-icon,:host(.in-item.ion-touched.ion-invalid.select-fill-outline) .select-wrapper .select-icon{color:var(--highlight-color)}:host{--border-width:1px;--border-color:var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-150, var(--ion-background-color-step-150, rgba(0, 0, 0, 0.13)))));--highlight-height:2px}:host(.select-label-placement-floating.select-expanded) .label-text-wrapper,:host(.select-label-placement-floating.has-focus) .label-text-wrapper,:host(.select-label-placement-stacked.select-expanded) .label-text-wrapper,:host(.select-label-placement-stacked.has-focus) .label-text-wrapper{color:var(--highlight-color)}:host(.has-focus.select-label-placement-floating.ion-valid) .label-text-wrapper,:host(.select-label-placement-floating.ion-touched.ion-invalid) .label-text-wrapper,:host(.has-focus.select-label-placement-stacked.ion-valid) .label-text-wrapper,:host(.select-label-placement-stacked.ion-touched.ion-invalid) .label-text-wrapper{color:var(--highlight-color)}.select-highlight{bottom:-1px;position:absolute;width:100%;height:var(--highlight-height);-webkit-transform:scale(0);transform:scale(0);-webkit-transition:-webkit-transform 200ms;transition:-webkit-transform 200ms;transition:transform 200ms;transition:transform 200ms, -webkit-transform 200ms;background:var(--highlight-color)}.select-highlight{inset-inline-start:0}:host(.select-expanded) .select-highlight,:host(.has-focus) .select-highlight{-webkit-transform:scale(1);transform:scale(1)}:host(.in-item) .select-highlight{bottom:0}:host(.in-item) .select-highlight{inset-inline-start:0}.select-icon{width:0.8125rem;-webkit-transition:-webkit-transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);transition:-webkit-transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);transition:transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);transition:transform 0.15s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);color:var(--ion-color-step-500, var(--ion-text-color-step-500, gray))}:host(.select-expanded:not(.has-expanded-icon)) .select-icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host(.in-item.select-expanded) .select-wrapper .select-icon,:host(.in-item.has-focus) .select-wrapper .select-icon,:host(.in-item.has-focus.ion-valid) .select-wrapper .select-icon,:host(.in-item.ion-touched.ion-invalid) .select-wrapper .select-icon{color:var(--ion-color-step-500, var(--ion-text-color-step-500, gray))}:host(.select-expanded) .select-wrapper .select-icon,:host(.has-focus.ion-valid) .select-wrapper .select-icon,:host(.ion-touched.ion-invalid) .select-wrapper .select-icon,:host(.has-focus) .select-wrapper .select-icon{color:var(--highlight-color)}:host(.select-shape-round){--border-radius:16px}:host(.select-label-placement-stacked) .select-wrapper-inner,:host(.select-label-placement-floating) .select-wrapper-inner{width:calc(100% - 0.8125rem - 4px)}:host(.select-disabled){opacity:0.38}::slotted(ion-button[slot=start].button-has-icon-only),::slotted(ion-button[slot=end].button-has-icon-only){--border-radius:50%;--padding-start:8px;--padding-end:8px;--padding-top:8px;--padding-bottom:8px;aspect-ratio:1;min-height:40px}";
29951
29957
  var IonSelectMdStyle0 = selectMdCss;
29952
29958
 
29953
29959
  // TODO(FW-2832): types
@@ -30018,12 +30024,15 @@ class Select {
30018
30024
  }
30019
30025
  };
30020
30026
  this.onFocus = () => {
30027
+ this.hasFocus = true;
30021
30028
  this.ionFocus.emit();
30022
30029
  };
30023
30030
  this.onBlur = () => {
30031
+ this.hasFocus = false;
30024
30032
  this.ionBlur.emit();
30025
30033
  };
30026
30034
  this.isExpanded = false;
30035
+ this.hasFocus = false;
30027
30036
  this.cancelText = 'Cancel';
30028
30037
  this.color = undefined;
30029
30038
  this.compareWith = undefined;
@@ -30183,11 +30192,11 @@ class Select {
30183
30192
  createOverlay(ev) {
30184
30193
  let selectInterface = this.interface;
30185
30194
  if (selectInterface === 'action-sheet' && this.multiple) {
30186
- console.warn(`Select interface cannot be "${selectInterface}" with a multi-value select. Using the "alert" interface instead.`);
30195
+ printIonWarning(`[ion-select] - Interface cannot be "${selectInterface}" with a multi-value select. Using the "alert" interface instead.`);
30187
30196
  selectInterface = 'alert';
30188
30197
  }
30189
30198
  if (selectInterface === 'popover' && !ev) {
30190
- console.warn(`Select interface cannot be a "${selectInterface}" without passing an event. Using the "alert" interface instead.`);
30199
+ printIonWarning(`[ion-select] - Interface cannot be a "${selectInterface}" without passing an event. Using the "alert" interface instead.`);
30191
30200
  selectInterface = 'alert';
30192
30201
  }
30193
30202
  if (selectInterface === 'action-sheet') {
@@ -30597,7 +30606,7 @@ class Select {
30597
30606
  return hAsync("div", { class: "select-bottom" }, this.renderHintText());
30598
30607
  }
30599
30608
  render() {
30600
- const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
30609
+ const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value, hasFocus, } = this;
30601
30610
  const mode = getIonMode$1(this);
30602
30611
  const hasFloatingOrStackedLabel = labelPlacement === 'floating' || labelPlacement === 'stacked';
30603
30612
  const justifyEnabled = !hasFloatingOrStackedLabel && justify !== undefined;
@@ -30625,7 +30634,7 @@ class Select {
30625
30634
  * TODO(FW-5592): Remove hasStartEndSlots condition
30626
30635
  */
30627
30636
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
30628
- return (hAsync(Host, { key: 'aa7bd7fbb6479c7805486990650a406e5470fd13', onClick: this.onClick, class: createColorClasses$1(this.color, {
30637
+ return (hAsync(Host, { key: 'e6c0498d6c275f89344f4b5146752a047058ad88', onClick: this.onClick, class: createColorClasses$1(this.color, {
30629
30638
  [mode]: true,
30630
30639
  'in-item': inItem,
30631
30640
  'in-item-color': hostContext('ion-item.ion-color', el),
@@ -30635,13 +30644,15 @@ class Select {
30635
30644
  'has-value': hasValue,
30636
30645
  'label-floating': labelShouldFloat,
30637
30646
  'has-placeholder': placeholder !== undefined,
30647
+ 'has-focus': hasFocus,
30648
+ // TODO(FW-6451): Remove `ion-focusable` class in favor of `has-focus`.
30638
30649
  'ion-focusable': true,
30639
30650
  [`select-${rtl}`]: true,
30640
30651
  [`select-fill-${fill}`]: fill !== undefined,
30641
30652
  [`select-justify-${justify}`]: justifyEnabled,
30642
30653
  [`select-shape-${shape}`]: shape !== undefined,
30643
30654
  [`select-label-placement-${labelPlacement}`]: true,
30644
- }) }, 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()));
30655
+ }) }, hAsync("label", { key: 'f030b6bd329f8014c7227f5e5f1aeb7efa0e641a', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), hAsync("div", { key: '7480e1b40d09e53a2942295d6c9dae474c9de810', class: "select-wrapper-inner" }, hAsync("slot", { key: '250fd2ff08b3e6ed04c7062455a044863481fe1c', name: "start" }), hAsync("div", { key: '11b73ad5b7decfe2d307f9d54293c21c0df3ddb8', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), hAsync("slot", { key: 'ddedafc89061372567bd46354ef972f08c60e19d', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && hAsync("div", { key: '792ce27aea18a0020c17dceb0f0e293171ded3a3', class: "select-highlight" })), this.renderBottomContent()));
30645
30656
  }
30646
30657
  get el() { return getElement(this); }
30647
30658
  static get watchers() { return {
@@ -30681,6 +30692,7 @@ class Select {
30681
30692
  "value": [1032],
30682
30693
  "required": [4],
30683
30694
  "isExpanded": [32],
30695
+ "hasFocus": [32],
30684
30696
  "open": [64]
30685
30697
  },
30686
30698
  "$listeners$": undefined,
@@ -31162,12 +31174,12 @@ class SplitPane {
31162
31174
  }
31163
31175
  render() {
31164
31176
  const mode = getIonMode$1(this);
31165
- return (hAsync(Host, { key: '76be70d7fbebc52646a5851f47accc1006615b85', class: {
31177
+ return (hAsync(Host, { key: '098801b5a318e2fc6913fb0d9079b1552927b99b', class: {
31166
31178
  [mode]: true,
31167
31179
  // Used internally for styling
31168
31180
  [`split-pane-${mode}`]: true,
31169
31181
  'split-pane-visible': this.visible,
31170
- } }, hAsync("slot", { key: '9a859530f4fb18aff43255bc3940feb9aca625d7' })));
31182
+ } }, hAsync("slot", { key: '8cbc6a942ecba54fc3c62027d46917db067b65c8' })));
31171
31183
  }
31172
31184
  get el() { return getElement(this); }
31173
31185
  static get watchers() { return {
@@ -31229,17 +31241,17 @@ class Tab {
31229
31241
  return attachComponent(this.delegate, this.el, this.component, ['ion-page']);
31230
31242
  }
31231
31243
  catch (e) {
31232
- console.error(e);
31244
+ printIonError('[ion-tab] - Exception in prepareLazyLoaded:', e);
31233
31245
  }
31234
31246
  }
31235
31247
  return Promise.resolve(undefined);
31236
31248
  }
31237
31249
  render() {
31238
31250
  const { tab, active, component } = this;
31239
- return (hAsync(Host, { key: '2107ece2f1ebdf748bac8adb78a9ad67e7fc9057', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
31251
+ return (hAsync(Host, { key: 'c36c113e74e12b58459df9e3b546ad4856187e90', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
31240
31252
  'ion-page': component === undefined,
31241
31253
  'tab-hidden': !active,
31242
- } }, hAsync("slot", { key: 'b4a1bc1aa79f6b82b8f77b544bcb74e65229b541' })));
31254
+ } }, hAsync("slot", { key: '0d7821dac70ba7a12edfb3331988f3df1566cc1a' })));
31243
31255
  }
31244
31256
  get el() { return getElement(this); }
31245
31257
  static get watchers() { return {
@@ -31607,7 +31619,7 @@ class Tabs {
31607
31619
  return Array.from(this.el.querySelectorAll('ion-tab'));
31608
31620
  }
31609
31621
  render() {
31610
- 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" })));
31622
+ 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" })));
31611
31623
  }
31612
31624
  get el() { return getElement(this); }
31613
31625
  static get style() { return IonTabsStyle0; }
@@ -31631,7 +31643,7 @@ class Tabs {
31631
31643
  const getTab = (tabs, tab) => {
31632
31644
  const tabEl = typeof tab === 'string' ? tabs.find((t) => t.tab === tab) : tab;
31633
31645
  if (!tabEl) {
31634
- console.error(`tab with id: "${tabEl}" does not exist`);
31646
+ printIonError(`[ion-tabs] - Tab with id: "${tabEl}" does not exist`);
31635
31647
  }
31636
31648
  return tabEl;
31637
31649
  };
@@ -32043,7 +32055,7 @@ class Textarea {
32043
32055
  * TODO(FW-5592): Remove hasStartEndSlots condition
32044
32056
  */
32045
32057
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
32046
- return (hAsync(Host, { key: '3bf42ea1fa739f334427c70f91a89b8b0e0f21ec', class: createColorClasses$1(this.color, {
32058
+ return (hAsync(Host, { key: '016dd354c8a4cd62646d4a85dbcfa2eacb870d69', class: createColorClasses$1(this.color, {
32047
32059
  [mode]: true,
32048
32060
  'has-value': hasValue,
32049
32061
  'has-focus': hasFocus,
@@ -32052,7 +32064,7 @@ class Textarea {
32052
32064
  [`textarea-shape-${shape}`]: shape !== undefined,
32053
32065
  [`textarea-label-placement-${labelPlacement}`]: true,
32054
32066
  'textarea-disabled': disabled,
32055
- }) }, hAsync("label", { key: 'f7acceeb74849d13a6af8d39b66ea2701384c955', class: "textarea-wrapper", htmlFor: inputId }, this.renderLabelContainer(), hAsync("div", { key: '05e9f2ebad1742a9e66d243d18c22ddd4c83ee04', class: "textarea-wrapper-inner" }, hAsync("div", { key: '70a9935351c38413ced05f5e4dc0055b9b001ee9', class: "start-slot-wrapper" }, hAsync("slot", { key: '11206eaa31d112c01f2218bf2ff46375ad819d1f', name: "start" })), hAsync("div", { key: 'bfd215dbb5f4d60f5fb62d37226fdc6ce61ec107', class: "native-wrapper", ref: (el) => (this.textareaWrapper = el) }, hAsync("textarea", Object.assign({ key: '2fa5cdf4c6614dd8cd4b7d2a19811a79c96ac50d', class: "native-textarea", ref: (el) => (this.nativeInput = el), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, minLength: this.minlength, maxLength: this.maxlength, name: this.name, placeholder: this.placeholder || '', readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, cols: this.cols, rows: this.rows, wrap: this.wrap, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeyDown, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId }, this.inheritedAttributes), value)), hAsync("div", { key: '8a67ad8e3b5650680f770cefc562d190f6760718', class: "end-slot-wrapper" }, hAsync("slot", { key: '03bb6bc5f2808c1f474a6c3168169d17f7569fda', name: "end" }))), shouldRenderHighlight && hAsync("div", { key: 'cd564bd01a1ca3f914218e34a78d296ad0838e4a', class: "textarea-highlight" })), this.renderBottomContent()));
32067
+ }) }, hAsync("label", { key: '7e98f3fc05f678e8567d9977aa7e622ddb90d394', class: "textarea-wrapper", htmlFor: inputId }, this.renderLabelContainer(), hAsync("div", { key: '7af77dad961ca9f80bbc6be8cd834989542ae27d', class: "textarea-wrapper-inner" }, hAsync("div", { key: 'e311cda4bb52e93ce7775f40b62a0a62a847794b', class: "start-slot-wrapper" }, hAsync("slot", { key: '81248b4cedce3876c1da9da03d36e3bee8442738', name: "start" })), hAsync("div", { key: 'f68ba6e2bb3df4971ecbebbcb316f31ee10f9e75', class: "native-wrapper", ref: (el) => (this.textareaWrapper = el) }, hAsync("textarea", Object.assign({ key: '2e896ef782d08b56454a1656301b8ce54564c8b3', class: "native-textarea", ref: (el) => (this.nativeInput = el), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, minLength: this.minlength, maxLength: this.maxlength, name: this.name, placeholder: this.placeholder || '', readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, cols: this.cols, rows: this.rows, wrap: this.wrap, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeyDown, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId }, this.inheritedAttributes), value)), hAsync("div", { key: '7eff97dabd340641a666a388fc590caa88128046', class: "end-slot-wrapper" }, hAsync("slot", { key: 'e8f7e6bd5a33afae6add6d920954cca7a3c0612b', name: "end" }))), shouldRenderHighlight && hAsync("div", { key: '4c825874e6ed910e3aa36b16fa1d2927b7f006b1', class: "textarea-highlight" })), this.renderBottomContent()));
32056
32068
  }
32057
32069
  get el() { return getElement(this); }
32058
32070
  static get watchers() { return {
@@ -32200,7 +32212,7 @@ function getAnimationPosition(position, positionAnchor, mode, toast) {
32200
32212
  */
32201
32213
  function warnIfAnchorIsHidden(positionAnchor, toast) {
32202
32214
  if (positionAnchor.offsetParent === null) {
32203
- printIonWarning('The positionAnchor element for ion-toast was found in the DOM, but appears to be hidden. This may lead to unexpected positioning of the toast.', toast);
32215
+ printIonWarning('[ion-toast] - The positionAnchor element for ion-toast was found in the DOM, but appears to be hidden. This may lead to unexpected positioning of the toast.', toast);
32204
32216
  }
32205
32217
  }
32206
32218
  /**
@@ -32851,7 +32863,7 @@ class Toast {
32851
32863
  return;
32852
32864
  }
32853
32865
  if (position === 'middle' && positionAnchor !== undefined) {
32854
- printIonWarning('The positionAnchor property is ignored when using position="middle".', this.el);
32866
+ printIonWarning('[ion-toast] - The positionAnchor property is ignored when using position="middle".', this.el);
32855
32867
  return undefined;
32856
32868
  }
32857
32869
  if (typeof positionAnchor === 'string') {
@@ -32863,7 +32875,7 @@ class Toast {
32863
32875
  */
32864
32876
  const foundEl = document.getElementById(positionAnchor);
32865
32877
  if (foundEl === null) {
32866
- printIonWarning(`An anchor element with an ID of "${positionAnchor}" was not found in the DOM.`, el);
32878
+ printIonWarning(`[ion-toast] - An anchor element with an ID of "${positionAnchor}" was not found in the DOM.`, el);
32867
32879
  return undefined;
32868
32880
  }
32869
32881
  return foundEl;
@@ -32871,7 +32883,7 @@ class Toast {
32871
32883
  if (positionAnchor instanceof HTMLElement) {
32872
32884
  return positionAnchor;
32873
32885
  }
32874
- printIonWarning('Invalid positionAnchor value:', positionAnchor, el);
32886
+ printIonWarning('[ion-toast] - Invalid positionAnchor value:', positionAnchor, el);
32875
32887
  return undefined;
32876
32888
  }
32877
32889
  async buttonClick(button) {
@@ -32897,7 +32909,7 @@ class Toast {
32897
32909
  }
32898
32910
  }
32899
32911
  catch (e) {
32900
- console.error(e);
32912
+ printIonError('[ion-toast] - Exception in callButtonHandler:', e);
32901
32913
  }
32902
32914
  }
32903
32915
  return true;
@@ -32949,11 +32961,11 @@ class Toast {
32949
32961
  * used with one type of button.
32950
32962
  */
32951
32963
  if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
32952
- 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);
32964
+ printIonWarning('[ion-toast] - 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);
32953
32965
  }
32954
- return (hAsync(Host, Object.assign({ key: '34036afc0701173d51c9c11ea4a2e1d65685ba41', tabindex: "-1" }, this.htmlAttributes, { style: {
32966
+ return (hAsync(Host, Object.assign({ key: 'a2216d860255c99337464370dcb12f6125871a50', tabindex: "-1" }, this.htmlAttributes, { style: {
32955
32967
  zIndex: `${60000 + this.overlayIndex}`,
32956
- }, 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')))));
32968
+ }, 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: 'd5adf8bc4c6c52431600033a76c4795689f9b412', class: wrapperClass }, hAsync("div", { key: 'ab694497ae37ceba123217eb48800129b9bebb84', class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (hAsync("ion-icon", { key: '224854fa3989ce0eb69416cb5b0cc55fc9f131ea', class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), hAsync("div", { key: 'c8e11fb5bdac202987f5c8613a0ebbd42bda946e', 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')))));
32957
32969
  }
32958
32970
  get el() { return getElement(this); }
32959
32971
  static get watchers() { return {
@@ -33015,10 +33027,10 @@ const buttonPart = (button) => {
33015
33027
  return isCancel(button.role) ? 'button cancel' : 'button';
33016
33028
  };
33017
33029
 
33018
- const toggleIosCss = ":host{-webkit-box-sizing:content-box !important;box-sizing:content-box !important;display:inline-block;position:relative;max-width:100%;outline:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-focused) input{border:2px solid #5e9ed6}:host(.toggle-disabled){pointer-events:none}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.toggle-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;-webkit-transition:background-color 15ms linear;transition:background-color 15ms linear;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.toggle-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.toggle-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.toggle-bottom{padding-top:4px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;font-size:0.75rem;white-space:normal}:host(.toggle-label-placement-stacked) .toggle-bottom{font-size:1rem}.toggle-bottom .error-text{display:none;color:var(--ion-color-danger, #c5000f)}.toggle-bottom .helper-text{display:block;color:var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d))}:host(.ion-touched.ion-invalid) .toggle-bottom .error-text{display:block}:host(.ion-touched.ion-invalid) .toggle-bottom .helper-text{display:none}:host(.toggle-label-placement-start) .toggle-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.toggle-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.toggle-label-placement-end) .toggle-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse;-ms-flex-pack:start;justify-content:start}:host(.toggle-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.toggle-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.toggle-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.toggle-label-placement-stacked) .toggle-wrapper{-ms-flex-direction:column;flex-direction:column;text-align:center}:host(.toggle-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.toggle-label-placement-stacked.toggle-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.toggle-label-placement-stacked.toggle-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host(.toggle-justify-space-between) .toggle-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.toggle-justify-start) .toggle-wrapper{-ms-flex-pack:start;justify-content:start}:host(.toggle-justify-end) .toggle-wrapper{-ms-flex-pack:end;justify-content:end}:host(.toggle-alignment-start) .toggle-wrapper{-ms-flex-align:start;align-items:start}:host(.toggle-alignment-center) .toggle-wrapper{-ms-flex-align:center;align-items:center}:host(.toggle-justify-space-between),:host(.toggle-justify-start),:host(.toggle-justify-end),:host(.toggle-alignment-start),:host(.toggle-alignment-center){display:block}.toggle-icon-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;width:100%;height:100%;-webkit-transition:var(--handle-transition);transition:var(--handle-transition);will-change:transform}.toggle-icon{border-radius:var(--border-radius);display:block;position:relative;width:100%;height:100%;background:var(--track-background);overflow:inherit}:host(.toggle-checked) .toggle-icon{background:var(--track-background-checked)}.toggle-inner{border-radius:var(--handle-border-radius);position:absolute;left:var(--handle-spacing);width:var(--handle-width);height:var(--handle-height);max-height:var(--handle-max-height);-webkit-transition:var(--handle-transition);transition:var(--handle-transition);background:var(--handle-background);-webkit-box-shadow:var(--handle-box-shadow);box-shadow:var(--handle-box-shadow);contain:strict}:host(.toggle-ltr) .toggle-inner{left:var(--handle-spacing)}:host(.toggle-rtl) .toggle-inner{right:var(--handle-spacing)}:host(.toggle-ltr.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(100% - var(--handle-width)), 0, 0);transform:translate3d(calc(100% - var(--handle-width)), 0, 0)}:host(.toggle-rtl.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(-100% + var(--handle-width)), 0, 0);transform:translate3d(calc(-100% + var(--handle-width)), 0, 0)}:host(.toggle-checked) .toggle-inner{background:var(--handle-background-checked)}:host(.toggle-ltr.toggle-checked) .toggle-inner{-webkit-transform:translate3d(calc(var(--handle-spacing) * -2), 0, 0);transform:translate3d(calc(var(--handle-spacing) * -2), 0, 0)}:host(.toggle-rtl.toggle-checked) .toggle-inner{-webkit-transform:translate3d(calc(var(--handle-spacing) * 2), 0, 0);transform:translate3d(calc(var(--handle-spacing) * 2), 0, 0)}:host{--track-background:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.088);--track-background-checked:var(--ion-color-primary, #0054e9);--border-radius:15.5px;--handle-background:#ffffff;--handle-background-checked:#ffffff;--handle-border-radius:25.5px;--handle-box-shadow:0 3px 4px rgba(0, 0, 0, 0.06), 0 3px 8px rgba(0, 0, 0, 0.06);--handle-height:calc(31px - (2px * 2));--handle-max-height:calc(100% - var(--handle-spacing) * 2);--handle-width:calc(31px - (2px * 2));--handle-spacing:2px;--handle-transition:transform 300ms, width 120ms ease-in-out 80ms, left 110ms ease-in-out 80ms, right 110ms ease-in-out 80ms}.native-wrapper .toggle-icon{width:51px;height:31px;overflow:hidden}:host(.ion-color.toggle-checked) .toggle-icon{background:var(--ion-color-base)}:host(.toggle-activated) .toggle-switch-icon{opacity:0}.toggle-icon{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);-webkit-transition:background-color 300ms;transition:background-color 300ms}.toggle-inner{will-change:transform}.toggle-switch-icon{position:absolute;top:50%;width:11px;height:11px;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:opacity 300ms, color 300ms;transition:opacity 300ms, color 300ms}.toggle-switch-icon{position:absolute;color:var(--ion-color-dark, #222428)}:host(.toggle-ltr) .toggle-switch-icon{right:6px}:host(.toggle-rtl) .toggle-switch-icon{right:initial;left:6px;}:host(.toggle-checked) .toggle-switch-icon.toggle-switch-icon-checked{color:var(--ion-color-contrast, #fff)}:host(.toggle-checked) .toggle-switch-icon:not(.toggle-switch-icon-checked){opacity:0}.toggle-switch-icon-checked{position:absolute;width:15px;height:15px;-webkit-transform:translateY(-50%) rotate(90deg);transform:translateY(-50%) rotate(90deg)}:host(.toggle-ltr) .toggle-switch-icon-checked{right:initial;left:4px;}:host(.toggle-rtl) .toggle-switch-icon-checked{right:4px}:host(.toggle-activated) .toggle-icon::before,:host(.toggle-checked) .toggle-icon::before{-webkit-transform:scale3d(0, 0, 0);transform:scale3d(0, 0, 0)}:host(.toggle-activated.toggle-checked) .toggle-inner::before{-webkit-transform:scale3d(0, 0, 0);transform:scale3d(0, 0, 0)}:host(.toggle-activated) .toggle-inner{width:calc(var(--handle-width) + 6px)}:host(.toggle-ltr.toggle-activated.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(100% - var(--handle-width) - 6px), 0, 0);transform:translate3d(calc(100% - var(--handle-width) - 6px), 0, 0)}:host(.toggle-rtl.toggle-activated.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(-100% + var(--handle-width) + 6px), 0, 0);transform:translate3d(calc(-100% + var(--handle-width) + 6px), 0, 0)}:host(.toggle-disabled){opacity:0.3}";
33030
+ const toggleIosCss = ":host{-webkit-box-sizing:content-box !important;box-sizing:content-box !important;display:inline-block;position:relative;max-width:100%;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-focused) input{border:2px solid #5e9ed6}:host(.toggle-disabled){pointer-events:none}input{display:none}.toggle-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;-webkit-transition:background-color 15ms linear;transition:background-color 15ms linear;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.toggle-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.toggle-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.toggle-bottom{padding-top:4px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;font-size:0.75rem;white-space:normal}:host(.toggle-label-placement-stacked) .toggle-bottom{font-size:1rem}.toggle-bottom .error-text{display:none;color:var(--ion-color-danger, #c5000f)}.toggle-bottom .helper-text{display:block;color:var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d))}:host(.ion-touched.ion-invalid) .toggle-bottom .error-text{display:block}:host(.ion-touched.ion-invalid) .toggle-bottom .helper-text{display:none}:host(.toggle-label-placement-start) .toggle-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.toggle-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.toggle-label-placement-end) .toggle-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse;-ms-flex-pack:start;justify-content:start}:host(.toggle-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.toggle-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.toggle-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.toggle-label-placement-stacked) .toggle-wrapper{-ms-flex-direction:column;flex-direction:column;text-align:center}:host(.toggle-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.toggle-label-placement-stacked.toggle-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.toggle-label-placement-stacked.toggle-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host(.toggle-justify-space-between) .toggle-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.toggle-justify-start) .toggle-wrapper{-ms-flex-pack:start;justify-content:start}:host(.toggle-justify-end) .toggle-wrapper{-ms-flex-pack:end;justify-content:end}:host(.toggle-alignment-start) .toggle-wrapper{-ms-flex-align:start;align-items:start}:host(.toggle-alignment-center) .toggle-wrapper{-ms-flex-align:center;align-items:center}:host(.toggle-justify-space-between),:host(.toggle-justify-start),:host(.toggle-justify-end),:host(.toggle-alignment-start),:host(.toggle-alignment-center){display:block}.toggle-icon-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;width:100%;height:100%;-webkit-transition:var(--handle-transition);transition:var(--handle-transition);will-change:transform}.toggle-icon{border-radius:var(--border-radius);display:block;position:relative;width:100%;height:100%;background:var(--track-background);overflow:inherit}:host(.toggle-checked) .toggle-icon{background:var(--track-background-checked)}.toggle-inner{border-radius:var(--handle-border-radius);position:absolute;left:var(--handle-spacing);width:var(--handle-width);height:var(--handle-height);max-height:var(--handle-max-height);-webkit-transition:var(--handle-transition);transition:var(--handle-transition);background:var(--handle-background);-webkit-box-shadow:var(--handle-box-shadow);box-shadow:var(--handle-box-shadow);contain:strict}:host(.toggle-ltr) .toggle-inner{left:var(--handle-spacing)}:host(.toggle-rtl) .toggle-inner{right:var(--handle-spacing)}:host(.toggle-ltr.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(100% - var(--handle-width)), 0, 0);transform:translate3d(calc(100% - var(--handle-width)), 0, 0)}:host(.toggle-rtl.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(-100% + var(--handle-width)), 0, 0);transform:translate3d(calc(-100% + var(--handle-width)), 0, 0)}:host(.toggle-checked) .toggle-inner{background:var(--handle-background-checked)}:host(.toggle-ltr.toggle-checked) .toggle-inner{-webkit-transform:translate3d(calc(var(--handle-spacing) * -2), 0, 0);transform:translate3d(calc(var(--handle-spacing) * -2), 0, 0)}:host(.toggle-rtl.toggle-checked) .toggle-inner{-webkit-transform:translate3d(calc(var(--handle-spacing) * 2), 0, 0);transform:translate3d(calc(var(--handle-spacing) * 2), 0, 0)}:host{--track-background:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.088);--track-background-checked:var(--ion-color-primary, #0054e9);--border-radius:15.5px;--handle-background:#ffffff;--handle-background-checked:#ffffff;--handle-border-radius:25.5px;--handle-box-shadow:0 3px 4px rgba(0, 0, 0, 0.06), 0 3px 8px rgba(0, 0, 0, 0.06);--handle-height:calc(31px - (2px * 2));--handle-max-height:calc(100% - var(--handle-spacing) * 2);--handle-width:calc(31px - (2px * 2));--handle-spacing:2px;--handle-transition:transform 300ms, width 120ms ease-in-out 80ms, left 110ms ease-in-out 80ms, right 110ms ease-in-out 80ms}.native-wrapper .toggle-icon{width:51px;height:31px;overflow:hidden}:host(.ion-color.toggle-checked) .toggle-icon{background:var(--ion-color-base)}:host(.toggle-activated) .toggle-switch-icon{opacity:0}.toggle-icon{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);-webkit-transition:background-color 300ms;transition:background-color 300ms}.toggle-inner{will-change:transform}.toggle-switch-icon{position:absolute;top:50%;width:11px;height:11px;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:opacity 300ms, color 300ms;transition:opacity 300ms, color 300ms}.toggle-switch-icon{position:absolute;color:var(--ion-color-dark, #222428)}:host(.toggle-ltr) .toggle-switch-icon{right:6px}:host(.toggle-rtl) .toggle-switch-icon{right:initial;left:6px;}:host(.toggle-checked) .toggle-switch-icon.toggle-switch-icon-checked{color:var(--ion-color-contrast, #fff)}:host(.toggle-checked) .toggle-switch-icon:not(.toggle-switch-icon-checked){opacity:0}.toggle-switch-icon-checked{position:absolute;width:15px;height:15px;-webkit-transform:translateY(-50%) rotate(90deg);transform:translateY(-50%) rotate(90deg)}:host(.toggle-ltr) .toggle-switch-icon-checked{right:initial;left:4px;}:host(.toggle-rtl) .toggle-switch-icon-checked{right:4px}:host(.toggle-activated) .toggle-icon::before,:host(.toggle-checked) .toggle-icon::before{-webkit-transform:scale3d(0, 0, 0);transform:scale3d(0, 0, 0)}:host(.toggle-activated.toggle-checked) .toggle-inner::before{-webkit-transform:scale3d(0, 0, 0);transform:scale3d(0, 0, 0)}:host(.toggle-activated) .toggle-inner{width:calc(var(--handle-width) + 6px)}:host(.toggle-ltr.toggle-activated.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(100% - var(--handle-width) - 6px), 0, 0);transform:translate3d(calc(100% - var(--handle-width) - 6px), 0, 0)}:host(.toggle-rtl.toggle-activated.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(-100% + var(--handle-width) + 6px), 0, 0);transform:translate3d(calc(-100% + var(--handle-width) + 6px), 0, 0)}:host(.toggle-disabled){opacity:0.3}";
33019
33031
  var IonToggleIosStyle0 = toggleIosCss;
33020
33032
 
33021
- const toggleMdCss = ":host{-webkit-box-sizing:content-box !important;box-sizing:content-box !important;display:inline-block;position:relative;max-width:100%;outline:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-focused) input{border:2px solid #5e9ed6}:host(.toggle-disabled){pointer-events:none}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.toggle-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;-webkit-transition:background-color 15ms linear;transition:background-color 15ms linear;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.toggle-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.toggle-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.toggle-bottom{padding-top:4px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;font-size:0.75rem;white-space:normal}:host(.toggle-label-placement-stacked) .toggle-bottom{font-size:1rem}.toggle-bottom .error-text{display:none;color:var(--ion-color-danger, #c5000f)}.toggle-bottom .helper-text{display:block;color:var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d))}:host(.ion-touched.ion-invalid) .toggle-bottom .error-text{display:block}:host(.ion-touched.ion-invalid) .toggle-bottom .helper-text{display:none}:host(.toggle-label-placement-start) .toggle-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.toggle-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.toggle-label-placement-end) .toggle-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse;-ms-flex-pack:start;justify-content:start}:host(.toggle-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.toggle-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.toggle-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.toggle-label-placement-stacked) .toggle-wrapper{-ms-flex-direction:column;flex-direction:column;text-align:center}:host(.toggle-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.toggle-label-placement-stacked.toggle-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.toggle-label-placement-stacked.toggle-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host(.toggle-justify-space-between) .toggle-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.toggle-justify-start) .toggle-wrapper{-ms-flex-pack:start;justify-content:start}:host(.toggle-justify-end) .toggle-wrapper{-ms-flex-pack:end;justify-content:end}:host(.toggle-alignment-start) .toggle-wrapper{-ms-flex-align:start;align-items:start}:host(.toggle-alignment-center) .toggle-wrapper{-ms-flex-align:center;align-items:center}:host(.toggle-justify-space-between),:host(.toggle-justify-start),:host(.toggle-justify-end),:host(.toggle-alignment-start),:host(.toggle-alignment-center){display:block}.toggle-icon-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;width:100%;height:100%;-webkit-transition:var(--handle-transition);transition:var(--handle-transition);will-change:transform}.toggle-icon{border-radius:var(--border-radius);display:block;position:relative;width:100%;height:100%;background:var(--track-background);overflow:inherit}:host(.toggle-checked) .toggle-icon{background:var(--track-background-checked)}.toggle-inner{border-radius:var(--handle-border-radius);position:absolute;left:var(--handle-spacing);width:var(--handle-width);height:var(--handle-height);max-height:var(--handle-max-height);-webkit-transition:var(--handle-transition);transition:var(--handle-transition);background:var(--handle-background);-webkit-box-shadow:var(--handle-box-shadow);box-shadow:var(--handle-box-shadow);contain:strict}:host(.toggle-ltr) .toggle-inner{left:var(--handle-spacing)}:host(.toggle-rtl) .toggle-inner{right:var(--handle-spacing)}:host(.toggle-ltr.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(100% - var(--handle-width)), 0, 0);transform:translate3d(calc(100% - var(--handle-width)), 0, 0)}:host(.toggle-rtl.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(-100% + var(--handle-width)), 0, 0);transform:translate3d(calc(-100% + var(--handle-width)), 0, 0)}:host(.toggle-checked) .toggle-inner{background:var(--handle-background-checked)}:host(.toggle-ltr.toggle-checked) .toggle-inner{-webkit-transform:translate3d(calc(var(--handle-spacing) * -2), 0, 0);transform:translate3d(calc(var(--handle-spacing) * -2), 0, 0)}:host(.toggle-rtl.toggle-checked) .toggle-inner{-webkit-transform:translate3d(calc(var(--handle-spacing) * 2), 0, 0);transform:translate3d(calc(var(--handle-spacing) * 2), 0, 0)}:host{--track-background:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.39);--track-background-checked:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.5);--border-radius:14px;--handle-background:#ffffff;--handle-background-checked:var(--ion-color-primary, #0054e9);--handle-border-radius:50%;--handle-box-shadow:0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);--handle-width:20px;--handle-height:20px;--handle-max-height:calc(100% + 6px);--handle-spacing:0;--handle-transition:transform 160ms cubic-bezier(0.4, 0, 0.2, 1), background-color 160ms cubic-bezier(0.4, 0, 0.2, 1)}.native-wrapper .toggle-icon{width:36px;height:14px}:host(.ion-color.toggle-checked) .toggle-icon{background:rgba(var(--ion-color-base-rgb), 0.5)}:host(.ion-color.toggle-checked) .toggle-inner{background:var(--ion-color-base)}:host(.toggle-checked) .toggle-inner{color:var(--ion-color-contrast, #fff)}.toggle-icon{-webkit-transition:background-color 160ms;transition:background-color 160ms}.toggle-inner{will-change:background-color, transform;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;color:#000}.toggle-inner .toggle-switch-icon{-webkit-padding-start:1px;padding-inline-start:1px;-webkit-padding-end:1px;padding-inline-end:1px;padding-top:1px;padding-bottom:1px;width:100%;height:100%}:host(.toggle-disabled){opacity:0.38}";
33033
+ const toggleMdCss = ":host{-webkit-box-sizing:content-box !important;box-sizing:content-box !important;display:inline-block;position:relative;max-width:100%;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-focused) input{border:2px solid #5e9ed6}:host(.toggle-disabled){pointer-events:none}input{display:none}.toggle-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;-webkit-transition:background-color 15ms linear;transition:background-color 15ms linear;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.toggle-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.toggle-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.toggle-bottom{padding-top:4px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;font-size:0.75rem;white-space:normal}:host(.toggle-label-placement-stacked) .toggle-bottom{font-size:1rem}.toggle-bottom .error-text{display:none;color:var(--ion-color-danger, #c5000f)}.toggle-bottom .helper-text{display:block;color:var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d))}:host(.ion-touched.ion-invalid) .toggle-bottom .error-text{display:block}:host(.ion-touched.ion-invalid) .toggle-bottom .helper-text{display:none}:host(.toggle-label-placement-start) .toggle-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.toggle-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.toggle-label-placement-end) .toggle-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse;-ms-flex-pack:start;justify-content:start}:host(.toggle-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.toggle-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.toggle-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.toggle-label-placement-stacked) .toggle-wrapper{-ms-flex-direction:column;flex-direction:column;text-align:center}:host(.toggle-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.toggle-label-placement-stacked.toggle-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.toggle-label-placement-stacked.toggle-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host(.toggle-justify-space-between) .toggle-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.toggle-justify-start) .toggle-wrapper{-ms-flex-pack:start;justify-content:start}:host(.toggle-justify-end) .toggle-wrapper{-ms-flex-pack:end;justify-content:end}:host(.toggle-alignment-start) .toggle-wrapper{-ms-flex-align:start;align-items:start}:host(.toggle-alignment-center) .toggle-wrapper{-ms-flex-align:center;align-items:center}:host(.toggle-justify-space-between),:host(.toggle-justify-start),:host(.toggle-justify-end),:host(.toggle-alignment-start),:host(.toggle-alignment-center){display:block}.toggle-icon-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;width:100%;height:100%;-webkit-transition:var(--handle-transition);transition:var(--handle-transition);will-change:transform}.toggle-icon{border-radius:var(--border-radius);display:block;position:relative;width:100%;height:100%;background:var(--track-background);overflow:inherit}:host(.toggle-checked) .toggle-icon{background:var(--track-background-checked)}.toggle-inner{border-radius:var(--handle-border-radius);position:absolute;left:var(--handle-spacing);width:var(--handle-width);height:var(--handle-height);max-height:var(--handle-max-height);-webkit-transition:var(--handle-transition);transition:var(--handle-transition);background:var(--handle-background);-webkit-box-shadow:var(--handle-box-shadow);box-shadow:var(--handle-box-shadow);contain:strict}:host(.toggle-ltr) .toggle-inner{left:var(--handle-spacing)}:host(.toggle-rtl) .toggle-inner{right:var(--handle-spacing)}:host(.toggle-ltr.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(100% - var(--handle-width)), 0, 0);transform:translate3d(calc(100% - var(--handle-width)), 0, 0)}:host(.toggle-rtl.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(-100% + var(--handle-width)), 0, 0);transform:translate3d(calc(-100% + var(--handle-width)), 0, 0)}:host(.toggle-checked) .toggle-inner{background:var(--handle-background-checked)}:host(.toggle-ltr.toggle-checked) .toggle-inner{-webkit-transform:translate3d(calc(var(--handle-spacing) * -2), 0, 0);transform:translate3d(calc(var(--handle-spacing) * -2), 0, 0)}:host(.toggle-rtl.toggle-checked) .toggle-inner{-webkit-transform:translate3d(calc(var(--handle-spacing) * 2), 0, 0);transform:translate3d(calc(var(--handle-spacing) * 2), 0, 0)}:host{--track-background:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.39);--track-background-checked:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.5);--border-radius:14px;--handle-background:#ffffff;--handle-background-checked:var(--ion-color-primary, #0054e9);--handle-border-radius:50%;--handle-box-shadow:0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);--handle-width:20px;--handle-height:20px;--handle-max-height:calc(100% + 6px);--handle-spacing:0;--handle-transition:transform 160ms cubic-bezier(0.4, 0, 0.2, 1), background-color 160ms cubic-bezier(0.4, 0, 0.2, 1)}.native-wrapper .toggle-icon{width:36px;height:14px}:host(.ion-color.toggle-checked) .toggle-icon{background:rgba(var(--ion-color-base-rgb), 0.5)}:host(.ion-color.toggle-checked) .toggle-inner{background:var(--ion-color-base)}:host(.toggle-checked) .toggle-inner{color:var(--ion-color-contrast, #fff)}.toggle-icon{-webkit-transition:background-color 160ms;transition:background-color 160ms}.toggle-inner{will-change:background-color, transform;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;color:#000}.toggle-inner .toggle-switch-icon{-webkit-padding-start:1px;padding-inline-start:1px;-webkit-padding-end:1px;padding-inline-end:1px;padding-top:1px;padding-bottom:1px;width:100%;height:100%}:host(.toggle-disabled){opacity:0.38}";
33022
33034
  var IonToggleMdStyle0 = toggleMdCss;
33023
33035
 
33024
33036
  /**
@@ -33040,6 +33052,7 @@ class Toggle {
33040
33052
  this.ionFocus = createEvent(this, "ionFocus", 7);
33041
33053
  this.ionBlur = createEvent(this, "ionBlur", 7);
33042
33054
  this.inputId = `ion-tg-${toggleIds++}`;
33055
+ this.inputLabelId = `${this.inputId}-lbl`;
33043
33056
  this.helperTextId = `${this.inputId}-helper-text`;
33044
33057
  this.errorTextId = `${this.inputId}-error-text`;
33045
33058
  this.lastDrag = 0;
@@ -33061,6 +33074,14 @@ class Toggle {
33061
33074
  this.disabledChanged();
33062
33075
  }
33063
33076
  };
33077
+ this.onKeyDown = (ev) => {
33078
+ if (ev.key === ' ') {
33079
+ ev.preventDefault();
33080
+ if (!this.disabled) {
33081
+ this.toggleChecked();
33082
+ }
33083
+ }
33084
+ };
33064
33085
  this.onClick = (ev) => {
33065
33086
  if (this.disabled) {
33066
33087
  return;
@@ -33203,12 +33224,12 @@ class Toggle {
33203
33224
  return (hAsync("div", { class: "toggle-bottom" }, hAsync("div", { id: helperTextId, class: "helper-text", part: "supporting-text helper-text" }, helperText), hAsync("div", { id: errorTextId, class: "error-text", part: "supporting-text error-text" }, errorText)));
33204
33225
  }
33205
33226
  render() {
33206
- const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment, required } = this;
33227
+ const { activated, alignment, checked, color, disabled, el, errorTextId, hasLabel, inheritedAttributes, inputId, inputLabelId, justify, labelPlacement, name, required, } = this;
33207
33228
  const mode = getIonMode$1(this);
33208
33229
  const value = this.getValue();
33209
33230
  const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
33210
33231
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
33211
- return (hAsync(Host, { key: 'c6db7f5bc0b358944c0d79e24aeb4d319793422f', "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId, onClick: this.onClick, class: createColorClasses$1(color, {
33232
+ return (hAsync(Host, { key: '63c67d52dc47661c5758049f6278e873ab867a22', role: "switch", "aria-checked": `${checked}`, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === errorTextId, onClick: this.onClick, "aria-labelledby": hasLabel ? inputLabelId : null, "aria-label": inheritedAttributes['aria-label'] || null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? undefined : 0, onKeyDown: this.onKeyDown, class: createColorClasses$1(color, {
33212
33233
  [mode]: true,
33213
33234
  'in-item': hostContext('ion-item', el),
33214
33235
  'toggle-activated': activated,
@@ -33218,10 +33239,10 @@ class Toggle {
33218
33239
  [`toggle-alignment-${alignment}`]: alignment !== undefined,
33219
33240
  [`toggle-label-placement-${labelPlacement}`]: true,
33220
33241
  [`toggle-${rtl}`]: true,
33221
- }) }, hAsync("label", { key: 'f49531391f4513d084061c27ebc4c4eb1dcd02ab', class: "toggle-wrapper" }, hAsync("input", Object.assign({ key: 'f4ab2dc29eae053f54613d1304f755e151037f47', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl), required: required }, this.inheritedAttributes)), hAsync("div", { key: '85674bfab5ec1e422c787d025c4f9f5b3aadd4f2', class: {
33242
+ }) }, hAsync("label", { key: '723cfac071ee5ec5c75984fc64762209452e9eea', class: "toggle-wrapper", htmlFor: inputId }, hAsync("input", Object.assign({ key: '8fa79f49348afbce5e083d454b751f7f9cc04d3f', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl), required: required }, inheritedAttributes)), hAsync("div", { key: '00a4415539ef677be9f6981afddcec61f7fe9487', class: {
33222
33243
  'label-text-wrapper': true,
33223
- 'label-text-wrapper-hidden': !this.hasLabel,
33224
- }, part: "label" }, hAsync("slot", { key: '9bdf7e85c95dc7373f18894ebfe6ad022f098107' }), this.renderHintText()), hAsync("div", { key: '33883642b38421a82001e37db3dd5e5c643785b0', class: "native-wrapper" }, this.renderToggleControl()))));
33244
+ 'label-text-wrapper-hidden': !hasLabel,
33245
+ }, part: "label", id: inputLabelId }, hAsync("slot", { key: '7ce338bd5116337c9ea90805fdee7285ef7c5811' }), this.renderHintText()), hAsync("div", { key: 'ecb5dfd2c7b534e357cba272dd4f189728555b3a', class: "native-wrapper" }, this.renderToggleControl()))));
33225
33246
  }
33226
33247
  get el() { return getElement(this); }
33227
33248
  static get watchers() { return {