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.mjs CHANGED
@@ -2364,6 +2364,80 @@ var Build = {
2364
2364
  var styles = /* @__PURE__ */ new Map();
2365
2365
  var modeResolutionChain = [];
2366
2366
 
2367
+ // TODO(FW-2832): types
2368
+ class Config {
2369
+ constructor() {
2370
+ this.m = new Map();
2371
+ }
2372
+ reset(configObj) {
2373
+ this.m = new Map(Object.entries(configObj));
2374
+ }
2375
+ get(key, fallback) {
2376
+ const value = this.m.get(key);
2377
+ return value !== undefined ? value : fallback;
2378
+ }
2379
+ getBoolean(key, fallback = false) {
2380
+ const val = this.m.get(key);
2381
+ if (val === undefined) {
2382
+ return fallback;
2383
+ }
2384
+ if (typeof val === 'string') {
2385
+ return val === 'true';
2386
+ }
2387
+ return !!val;
2388
+ }
2389
+ getNumber(key, fallback) {
2390
+ const val = parseFloat(this.m.get(key));
2391
+ return isNaN(val) ? (fallback !== undefined ? fallback : NaN) : val;
2392
+ }
2393
+ set(key, value) {
2394
+ this.m.set(key, value);
2395
+ }
2396
+ }
2397
+ const config = /*@__PURE__*/ new Config();
2398
+
2399
+ var LogLevel;
2400
+ (function (LogLevel) {
2401
+ LogLevel["OFF"] = "OFF";
2402
+ LogLevel["ERROR"] = "ERROR";
2403
+ LogLevel["WARN"] = "WARN";
2404
+ })(LogLevel || (LogLevel = {}));
2405
+ /**
2406
+ * Logs a warning to the console with an Ionic prefix
2407
+ * to indicate the library that is warning the developer.
2408
+ *
2409
+ * @param message - The string message to be logged to the console.
2410
+ */
2411
+ const printIonWarning = (message, ...params) => {
2412
+ const logLevel = config.get('logLevel', LogLevel.WARN);
2413
+ if ([LogLevel.WARN].includes(logLevel)) {
2414
+ return console.warn(`[Ionic Warning]: ${message}`, ...params);
2415
+ }
2416
+ };
2417
+ /**
2418
+ * Logs an error to the console with an Ionic prefix
2419
+ * to indicate the library that is warning the developer.
2420
+ *
2421
+ * @param message - The string message to be logged to the console.
2422
+ * @param params - Additional arguments to supply to the console.error.
2423
+ */
2424
+ const printIonError = (message, ...params) => {
2425
+ const logLevel = config.get('logLevel', LogLevel.ERROR);
2426
+ if ([LogLevel.ERROR, LogLevel.WARN].includes(logLevel)) {
2427
+ return console.error(`[Ionic Error]: ${message}`, ...params);
2428
+ }
2429
+ };
2430
+ /**
2431
+ * Prints an error informing developers that an implementation requires an element to be used
2432
+ * within a specific selector.
2433
+ *
2434
+ * @param el The web component element this is requiring the element.
2435
+ * @param targetSelectors The selector or selectors that were not found.
2436
+ */
2437
+ const printRequiredElementError = (el, ...targetSelectors) => {
2438
+ return console.error(`<${el.tagName.toLowerCase()}> must be used inside ${targetSelectors.join(' or ')}.`);
2439
+ };
2440
+
2367
2441
  const transitionEndAsync = (el, expectedDuration = 0) => {
2368
2442
  return new Promise((resolve) => {
2369
2443
  transitionEnd(el, expectedDuration, resolve);
@@ -2614,7 +2688,7 @@ const clamp = (min, n, max) => {
2614
2688
  const assert = (actual, reason) => {
2615
2689
  if (!actual) {
2616
2690
  const message = 'ASSERT: ' + reason;
2617
- console.error(message);
2691
+ printIonError(message);
2618
2692
  debugger; // eslint-disable-line
2619
2693
  throw new Error(message);
2620
2694
  }
@@ -2712,38 +2786,6 @@ const reorderTwoSharp = "data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2
2712
2786
  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>";
2713
2787
  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>";
2714
2788
 
2715
- // TODO(FW-2832): types
2716
- class Config {
2717
- constructor() {
2718
- this.m = new Map();
2719
- }
2720
- reset(configObj) {
2721
- this.m = new Map(Object.entries(configObj));
2722
- }
2723
- get(key, fallback) {
2724
- const value = this.m.get(key);
2725
- return value !== undefined ? value : fallback;
2726
- }
2727
- getBoolean(key, fallback = false) {
2728
- const val = this.m.get(key);
2729
- if (val === undefined) {
2730
- return fallback;
2731
- }
2732
- if (typeof val === 'string') {
2733
- return val === 'true';
2734
- }
2735
- return !!val;
2736
- }
2737
- getNumber(key, fallback) {
2738
- const val = parseFloat(this.m.get(key));
2739
- return isNaN(val) ? (fallback !== undefined ? fallback : NaN) : val;
2740
- }
2741
- set(key, value) {
2742
- this.m.set(key, value);
2743
- }
2744
- }
2745
- const config = /*@__PURE__*/ new Config();
2746
-
2747
2789
  const getPlatforms = (win) => setupPlatforms(win);
2748
2790
  const isPlatform = (winOrPlatform, platform) => {
2749
2791
  if (typeof winOrPlatform === 'string') {
@@ -3185,42 +3227,6 @@ class Accordion {
3185
3227
  }
3186
3228
  let accordionIds = 0;
3187
3229
 
3188
- /**
3189
- * Logs a warning to the console with an Ionic prefix
3190
- * to indicate the library that is warning the developer.
3191
- *
3192
- * @param message - The string message to be logged to the console.
3193
- */
3194
- const printIonWarning = (message, ...params) => {
3195
- const logLevel = config.get('logLevel', "WARN" /* LogLevel.WARN */);
3196
- if (["WARN" /* LogLevel.WARN */].includes(logLevel)) {
3197
- return console.warn(`[Ionic Warning]: ${message}`, ...params);
3198
- }
3199
- };
3200
- /**
3201
- * Logs an error to the console with an Ionic prefix
3202
- * to indicate the library that is warning the developer.
3203
- *
3204
- * @param message - The string message to be logged to the console.
3205
- * @param params - Additional arguments to supply to the console.error.
3206
- */
3207
- const printIonError = (message, ...params) => {
3208
- const logLevel = config.get('logLevel', "ERROR" /* LogLevel.ERROR */);
3209
- if (["ERROR" /* LogLevel.ERROR */, "WARN" /* LogLevel.WARN */].includes(logLevel)) {
3210
- return console.error(`[Ionic Error]: ${message}`, ...params);
3211
- }
3212
- };
3213
- /**
3214
- * Prints an error informing developers that an implementation requires an element to be used
3215
- * within a specific selector.
3216
- *
3217
- * @param el The web component element this is requiring the element.
3218
- * @param targetSelectors The selector or selectors that were not found.
3219
- */
3220
- const printRequiredElementError = (el, ...targetSelectors) => {
3221
- return console.error(`<${el.tagName.toLowerCase()}> must be used inside ${targetSelectors.join(' or ')}.`);
3222
- };
3223
-
3224
3230
  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}";
3225
3231
  var IonAccordionGroupIosStyle0 = accordionGroupIosCss;
3226
3232
 
@@ -3253,7 +3259,7 @@ class AccordionGroup {
3253
3259
  * Default toString() behavior: a,b
3254
3260
  * Custom behavior: ['a', 'b']
3255
3261
  */
3256
- 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".
3262
+ 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".
3257
3263
 
3258
3264
  Value Passed: [${value.map((v) => `'${v}'`).join(', ')}]
3259
3265
  `, this.el);
@@ -3423,12 +3429,12 @@ class AccordionGroup {
3423
3429
  render() {
3424
3430
  const { disabled, readonly, expand } = this;
3425
3431
  const mode = getIonMode$1(this);
3426
- return (hAsync(Host, { key: '82f3e77066fabb4736638ee4c487ad56efd39c63', class: {
3432
+ return (hAsync(Host, { key: 'd1a79a93179474fbba66fcf11a92f4871dacc975', class: {
3427
3433
  [mode]: true,
3428
3434
  'accordion-group-disabled': disabled,
3429
3435
  'accordion-group-readonly': readonly,
3430
3436
  [`accordion-group-expand-${expand}`]: true,
3431
- }, role: "presentation" }, hAsync("slot", { key: 'a3c791ea887fc640b512f81d429be465ae902b3d' })));
3437
+ }, role: "presentation" }, hAsync("slot", { key: 'e6b8954b686d1fbb4fc92adb07fddc97a24b0a31' })));
3432
3438
  }
3433
3439
  get el() { return getElement(this); }
3434
3440
  static get watchers() { return {
@@ -5118,7 +5124,7 @@ const dismiss = async (overlay, data, role, name, iosLeaveAnimation, mdLeaveAnim
5118
5124
  }
5119
5125
  const presentedOverlays = doc !== undefined ? getPresentedOverlays(doc) : [];
5120
5126
  /**
5121
- * For accessibility, toasts lack focus traps and dont receive
5127
+ * For accessibility, toasts lack focus traps and don't receive
5122
5128
  * `aria-hidden` on the root element when presented.
5123
5129
  *
5124
5130
  * All other overlays use focus traps to keep keyboard focus
@@ -5181,7 +5187,7 @@ const dismiss = async (overlay, data, role, name, iosLeaveAnimation, mdLeaveAnim
5181
5187
  }
5182
5188
  }
5183
5189
  catch (err) {
5184
- console.error(err);
5190
+ printIonError(`[${overlay.el.tagName.toLowerCase()}] - `, err);
5185
5191
  }
5186
5192
  overlay.el.remove();
5187
5193
  revealOverlaysToScreenReaders();
@@ -5361,7 +5367,7 @@ const createTriggerController = () => {
5361
5367
  removeClickListener();
5362
5368
  const triggerEl = trigger !== undefined ? document.getElementById(trigger) : null;
5363
5369
  if (!triggerEl) {
5364
- 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);
5370
+ 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);
5365
5371
  return;
5366
5372
  }
5367
5373
  const configureTriggerInteraction = (targetEl, overlayEl) => {
@@ -5870,7 +5876,7 @@ const createAnimation = (animationId) => {
5870
5876
  }
5871
5877
  }
5872
5878
  else {
5873
- console.error('Invalid addElement value');
5879
+ printIonError('createAnimation - Invalid addElement value.');
5874
5880
  }
5875
5881
  }
5876
5882
  return ani;
@@ -6728,7 +6734,7 @@ const sanitizeDOMString = (untrustedString) => {
6728
6734
  return getInnerDiv !== null ? getInnerDiv.innerHTML : fragmentDiv.innerHTML;
6729
6735
  }
6730
6736
  catch (err) {
6731
- console.error(err);
6737
+ printIonError('sanitizeDOMString', err);
6732
6738
  return '';
6733
6739
  }
6734
6740
  };
@@ -7048,7 +7054,7 @@ class Alert {
7048
7054
  // checkboxes and inputs are all accepted, but they cannot be mixed.
7049
7055
  const inputTypes = new Set(inputs.map((i) => i.type));
7050
7056
  if (inputTypes.has('checkbox') && inputTypes.has('radio')) {
7051
- console.warn(`Alert cannot mix input types: ${Array.from(inputTypes.values()).join('/')}. Please see alert docs for more info.`);
7057
+ printIonWarning(`[ion-alert] - Alert cannot mix input types: ${Array.from(inputTypes.values()).join('/')}. Please see alert docs for more info.`);
7052
7058
  }
7053
7059
  this.inputType = inputTypes.values().next().value;
7054
7060
  this.processedInputs = inputs.map((i, index) => {
@@ -7321,9 +7327,9 @@ class Alert {
7321
7327
  * If neither are defined, do not set aria-labelledby.
7322
7328
  */
7323
7329
  const ariaLabelledBy = header && subHeader ? `${hdrId} ${subHdrId}` : header ? hdrId : subHeader ? subHdrId : null;
7324
- return (hAsync(Host, { key: '755f2398806084f16ee24d9fefce9ebc0b8f30f2', tabindex: "-1", style: {
7330
+ return (hAsync(Host, { key: 'f8ee04fe6a97a2585b302c8e1a9eea3b122e3479', tabindex: "-1", style: {
7325
7331
  zIndex: `${20000 + overlayIndex}`,
7326
- }, 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" })));
7332
+ }, 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" })));
7327
7333
  }
7328
7334
  get el() { return getElement(this); }
7329
7335
  static get watchers() { return {
@@ -7401,7 +7407,7 @@ class App {
7401
7407
  }
7402
7408
  render() {
7403
7409
  const mode = getIonMode$1(this);
7404
- return (hAsync(Host, { key: '96715520fd05d6f0e6fa26a8ba78792cfccd4c0a', class: {
7410
+ return (hAsync(Host, { key: '03aa892f986330078d112b1e8b010df98fa7e39e', class: {
7405
7411
  [mode]: true,
7406
7412
  'ion-page': true,
7407
7413
  'force-statusbar-padding': config.getBoolean('_forceStatusbarPadding'),
@@ -8048,7 +8054,7 @@ class Button {
8048
8054
  * The developer specified a string for the form attribute, but the
8049
8055
  * element with that id is not a form element.
8050
8056
  */
8051
- printIonWarning(`Form with selector: "#${form}" could not be found. Verify that the id is attached to a <form> element.`, this.el);
8057
+ printIonWarning(`[ion-button] - Form with selector: "#${form}" could not be found. Verify that the id is attached to a <form> element.`, this.el);
8052
8058
  return null;
8053
8059
  }
8054
8060
  }
@@ -8057,7 +8063,7 @@ class Button {
8057
8063
  * The developer specified a string for the form attribute, but the
8058
8064
  * element with that id could not be found in the DOM.
8059
8065
  */
8060
- 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);
8066
+ 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);
8061
8067
  return null;
8062
8068
  }
8063
8069
  }
@@ -8068,7 +8074,7 @@ class Button {
8068
8074
  * This will also catch if the developer tries to pass in null
8069
8075
  * as the form attribute.
8070
8076
  */
8071
- printIonWarning(`The provided "form" element is invalid. Verify that the form is a HTMLFormElement and rendered in the DOM.`, this.el);
8077
+ printIonWarning(`[ion-button] - The provided "form" element is invalid. Verify that the form is a HTMLFormElement and rendered in the DOM.`, this.el);
8072
8078
  return null;
8073
8079
  }
8074
8080
  /**
@@ -8117,7 +8123,7 @@ class Button {
8117
8123
  {
8118
8124
  type !== 'button' && this.renderHiddenButton();
8119
8125
  }
8120
- return (hAsync(Host, { key: '340a809d85698741bb36e796355cae89a970655f', onClick: this.handleClick, "aria-disabled": disabled ? 'true' : null, class: createColorClasses$1(color, {
8126
+ return (hAsync(Host, { key: 'e213b0bb76b3f90f883b1a0ea463bb86c2df69c3', onClick: this.handleClick, "aria-disabled": disabled ? 'true' : null, class: createColorClasses$1(color, {
8121
8127
  [mode]: true,
8122
8128
  [buttonType]: true,
8123
8129
  [`${buttonType}-${expand}`]: expand !== undefined,
@@ -8132,7 +8138,7 @@ class Button {
8132
8138
  'button-disabled': disabled,
8133
8139
  'ion-activatable': true,
8134
8140
  'ion-focusable': true,
8135
- }) }, 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 }))));
8141
+ }) }, 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 }))));
8136
8142
  }
8137
8143
  get el() { return getElement(this); }
8138
8144
  static get watchers() { return {
@@ -9361,7 +9367,7 @@ const warnIfValueOutOfBounds = (value, min, max) => {
9361
9367
  const valueArray = Array.isArray(value) ? value : [value];
9362
9368
  for (const val of valueArray) {
9363
9369
  if ((min !== undefined && isBefore(val, min)) || (max !== undefined && isAfter(val, max))) {
9364
- printIonWarning('The value provided to ion-datetime is out of bounds.\n\n' +
9370
+ printIonWarning('[ion-datetime] - The value provided to ion-datetime is out of bounds.\n\n' +
9365
9371
  `Min: ${JSON.stringify(min)}\n` +
9366
9372
  `Max: ${JSON.stringify(max)}\n` +
9367
9373
  `Value: ${JSON.stringify(value)}`);
@@ -9578,7 +9584,7 @@ function parseDate(val) {
9578
9584
  }
9579
9585
  if (parse === null) {
9580
9586
  // wasn't able to parse the ISO datetime
9581
- printIonWarning(`Unable to parse date string: ${val}. Please provide a valid ISO 8601 datetime string.`);
9587
+ printIonWarning(`[ion-datetime] - Unable to parse date string: ${val}. Please provide a valid ISO 8601 datetime string.`);
9582
9588
  return undefined;
9583
9589
  }
9584
9590
  // ensure all the parse values exist with at least 0
@@ -11094,7 +11100,7 @@ const getHighlightStyles = (highlightedDates, dateIsoString, el) => {
11094
11100
  return highlightedDates(dateIsoString);
11095
11101
  }
11096
11102
  catch (e) {
11097
- printIonError('Exception thrown from provided `highlightedDates` callback. Please check your function and try again.', el, e);
11103
+ printIonError('[ion-datetime] - Exception thrown from provided `highlightedDates` callback. Please check your function and try again.', el, e);
11098
11104
  }
11099
11105
  }
11100
11106
  return undefined;
@@ -11111,7 +11117,7 @@ const warnIfTimeZoneProvided = (el, formatOptions) => {
11111
11117
  ((_b = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.date) === null || _b === void 0 ? void 0 : _b.timeZoneName) ||
11112
11118
  ((_c = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.time) === null || _c === void 0 ? void 0 : _c.timeZone) ||
11113
11119
  ((_d = formatOptions === null || formatOptions === void 0 ? void 0 : formatOptions.time) === null || _d === void 0 ? void 0 : _d.timeZoneName)) {
11114
- printIonWarning('Datetime: "timeZone" and "timeZoneName" are not supported in "formatOptions".', el);
11120
+ printIonWarning('[ion-datetime] - "timeZone" and "timeZoneName" are not supported in "formatOptions".', el);
11115
11121
  }
11116
11122
  };
11117
11123
  const checkForPresentationFormatMismatch = (el, presentation, formatOptions) => {
@@ -11125,18 +11131,18 @@ const checkForPresentationFormatMismatch = (el, presentation, formatOptions) =>
11125
11131
  case 'month':
11126
11132
  case 'year':
11127
11133
  if (formatOptions.date === undefined) {
11128
- printIonWarning(`Datetime: The '${presentation}' presentation requires a date object in formatOptions.`, el);
11134
+ printIonWarning(`[ion-datetime] - The '${presentation}' presentation requires a date object in formatOptions.`, el);
11129
11135
  }
11130
11136
  break;
11131
11137
  case 'time':
11132
11138
  if (formatOptions.time === undefined) {
11133
- printIonWarning(`Datetime: The 'time' presentation requires a time object in formatOptions.`, el);
11139
+ printIonWarning(`[ion-datetime] - The 'time' presentation requires a time object in formatOptions.`, el);
11134
11140
  }
11135
11141
  break;
11136
11142
  case 'date-time':
11137
11143
  case 'time-date':
11138
11144
  if (formatOptions.date === undefined && formatOptions.time === undefined) {
11139
- printIonWarning(`Datetime: The '${presentation}' presentation requires either a date or time object (or both) in formatOptions.`, el);
11145
+ printIonWarning(`[ion-datetime] - The '${presentation}' presentation requires either a date or time object (or both) in formatOptions.`, el);
11140
11146
  }
11141
11147
  break;
11142
11148
  }
@@ -11195,7 +11201,7 @@ class Datetime {
11195
11201
  * Default toString() behavior: a,b
11196
11202
  * Custom behavior: ['a', 'b']
11197
11203
  */
11198
- 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".
11204
+ 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".
11199
11205
 
11200
11206
  Value Passed: [${value.map((v) => `'${v}'`).join(', ')}]
11201
11207
  `, this.el);
@@ -12076,18 +12082,18 @@ class Datetime {
12076
12082
  const { el, formatOptions, highlightedDates, multiple, presentation, preferWheel } = this;
12077
12083
  if (multiple) {
12078
12084
  if (presentation !== 'date') {
12079
- printIonWarning('Multiple date selection is only supported for presentation="date".', el);
12085
+ printIonWarning('[ion-datetime] - Multiple date selection is only supported for presentation="date".', el);
12080
12086
  }
12081
12087
  if (preferWheel) {
12082
- printIonWarning('Multiple date selection is not supported with preferWheel="true".', el);
12088
+ printIonWarning('[ion-datetime] - Multiple date selection is not supported with preferWheel="true".', el);
12083
12089
  }
12084
12090
  }
12085
12091
  if (highlightedDates !== undefined) {
12086
12092
  if (presentation !== 'date' && presentation !== 'date-time' && presentation !== 'time-date') {
12087
- printIonWarning('The highlightedDates property is only supported with the date, date-time, and time-date presentations.', el);
12093
+ printIonWarning('[ion-datetime] - The highlightedDates property is only supported with the date, date-time, and time-date presentations.', el);
12088
12094
  }
12089
12095
  if (preferWheel) {
12090
- printIonWarning('The highlightedDates property is not supported with preferWheel="true".', el);
12096
+ printIonWarning('[ion-datetime] - The highlightedDates property is not supported with preferWheel="true".', el);
12091
12097
  }
12092
12098
  }
12093
12099
  if (formatOptions) {
@@ -12218,7 +12224,7 @@ class Datetime {
12218
12224
  disabled = !isDateEnabled(convertDataToISO(referenceParts));
12219
12225
  }
12220
12226
  catch (e) {
12221
- printIonError('Exception thrown from provided `isDateEnabled` function. Please check your function and try again.', e);
12227
+ printIonError('[ion-datetime] - Exception thrown from provided `isDateEnabled` function. Please check your function and try again.', e);
12222
12228
  }
12223
12229
  return Object.assign(Object.assign({}, itemObject), { disabled });
12224
12230
  });
@@ -12267,7 +12273,7 @@ class Datetime {
12267
12273
  disabled = !isDateEnabled(convertDataToISO(referenceParts));
12268
12274
  }
12269
12275
  catch (e) {
12270
- printIonError('Exception thrown from provided `isDateEnabled` function. Please check your function and try again.', e);
12276
+ printIonError('[ion-datetime] - Exception thrown from provided `isDateEnabled` function. Please check your function and try again.', e);
12271
12277
  }
12272
12278
  return Object.assign(Object.assign({}, dayObject), { disabled });
12273
12279
  });
@@ -12465,7 +12471,7 @@ class Datetime {
12465
12471
  isCalDayDisabled = !isDateEnabled(dateIsoString);
12466
12472
  }
12467
12473
  catch (e) {
12468
- printIonError('Exception thrown from provided `isDateEnabled` function. Please check your function and try again.', el, e);
12474
+ printIonError('[ion-datetime] - Exception thrown from provided `isDateEnabled` function. Please check your function and try again.', el, e);
12469
12475
  }
12470
12476
  }
12471
12477
  /**
@@ -12601,7 +12607,7 @@ class Datetime {
12601
12607
  headerText = titleSelectedDatesFormatter(convertDataToISO(activeParts));
12602
12608
  }
12603
12609
  catch (e) {
12604
- printIonError('Exception in provided `titleSelectedDatesFormatter`: ', e);
12610
+ printIonError('[ion-datetime] - Exception in provided `titleSelectedDatesFormatter`:', e);
12605
12611
  }
12606
12612
  }
12607
12613
  }
@@ -12696,7 +12702,7 @@ class Datetime {
12696
12702
  const hasDatePresentation = presentation === 'date' || presentation === 'date-time' || presentation === 'time-date';
12697
12703
  const hasWheelVariant = hasDatePresentation && preferWheel;
12698
12704
  renderHiddenInput(true, el, name, formatValue(value), disabled);
12699
- return (hAsync(Host, { key: '08d429533a09c600b936ad1e022658051c765595', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, createColorClasses$1(color, {
12705
+ return (hAsync(Host, { key: 'c3dfea8f46fcbcef38eb9e8a69b1b46a4e4b82fd', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, createColorClasses$1(color, {
12700
12706
  [mode]: true,
12701
12707
  ['datetime-readonly']: readonly,
12702
12708
  ['datetime-disabled']: disabled,
@@ -12706,7 +12712,7 @@ class Datetime {
12706
12712
  [`datetime-size-${size}`]: true,
12707
12713
  [`datetime-prefer-wheel`]: hasWheelVariant,
12708
12714
  [`datetime-grid`]: isGridStyle,
12709
- })) }, hAsync("div", { key: 'f4ff0fcd1e059767a7ef14fcc76ebfd55d23a97b', class: "intersection-tracker", ref: (el) => (this.intersectionTrackerRef = el) }), this.renderDatetime(mode)));
12715
+ })) }, hAsync("div", { key: '75c91243cf6a51f44b83d7cf7d8c0c96bfd3c83f', class: "intersection-tracker", ref: (el) => (this.intersectionTrackerRef = el) }), this.renderDatetime(mode)));
12710
12716
  }
12711
12717
  get el() { return getElement(this); }
12712
12718
  static get watchers() { return {
@@ -12866,7 +12872,7 @@ class DatetimeButton {
12866
12872
  headerText = titleSelectedDatesFormatter(parsedValues);
12867
12873
  }
12868
12874
  catch (e) {
12869
- printIonError('Exception in provided `titleSelectedDatesFormatter`: ', e);
12875
+ printIonError('[ion-datetime-button] - Exception in provided `titleSelectedDatesFormatter`:', e);
12870
12876
  }
12871
12877
  }
12872
12878
  this.dateText = headerText;
@@ -13026,12 +13032,12 @@ class DatetimeButton {
13026
13032
  async componentWillLoad() {
13027
13033
  const { datetime } = this;
13028
13034
  if (!datetime) {
13029
- printIonError('An ID associated with an ion-datetime instance is required for ion-datetime-button to function properly.', this.el);
13035
+ printIonError('[ion-datetime-button] - An ID associated with an ion-datetime instance is required to function properly.', this.el);
13030
13036
  return;
13031
13037
  }
13032
13038
  const datetimeEl = (this.datetimeEl = document.getElementById(datetime));
13033
13039
  if (!datetimeEl) {
13034
- printIonError(`No ion-datetime instance found for ID '${datetime}'.`, this.el);
13040
+ printIonError(`[ion-datetime-button] - No ion-datetime instance found for ID '${datetime}'.`, this.el);
13035
13041
  return;
13036
13042
  }
13037
13043
  /**
@@ -13039,7 +13045,7 @@ class DatetimeButton {
13039
13045
  * if a non-datetime element was provided.
13040
13046
  */
13041
13047
  if (datetimeEl.tagName !== 'ION-DATETIME') {
13042
- printIonError(`Expected an ion-datetime instance for ID '${datetime}' but received '${datetimeEl.tagName.toLowerCase()}' instead.`, datetimeEl);
13048
+ printIonError(`[ion-datetime-button] - Expected an ion-datetime instance for ID '${datetime}' but received '${datetimeEl.tagName.toLowerCase()}' instead.`, datetimeEl);
13043
13049
  return;
13044
13050
  }
13045
13051
  /**
@@ -13114,11 +13120,11 @@ class DatetimeButton {
13114
13120
  render() {
13115
13121
  const { color, dateText, timeText, selectedButton, datetimeActive, disabled } = this;
13116
13122
  const mode = getIonMode$1(this);
13117
- return (hAsync(Host, { key: '26e606af6f067a5774db37ed41387ffebb941777', class: createColorClasses$1(color, {
13123
+ return (hAsync(Host, { key: '11d037e6ab061e5116842970760b04850b42f2c7', class: createColorClasses$1(color, {
13118
13124
  [mode]: true,
13119
13125
  [`${selectedButton}-active`]: datetimeActive,
13120
13126
  ['datetime-button-disabled']: disabled,
13121
- }) }, 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' })))));
13127
+ }) }, 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' })))));
13122
13128
  }
13123
13129
  get el() { return getElement(this); }
13124
13130
  static get style() { return {
@@ -15083,7 +15089,7 @@ const getCounterText = (value, maxLength, counterFormatter) => {
15083
15089
  return counterFormatter(valueLength, maxLength);
15084
15090
  }
15085
15091
  catch (e) {
15086
- printIonError('Exception in provided `counterFormatter`.', e);
15092
+ printIonError('[ion-input] - Exception in provided `counterFormatter`:', e);
15087
15093
  return defaultCounterText;
15088
15094
  }
15089
15095
  };
@@ -15507,7 +15513,7 @@ class Input {
15507
15513
  * TODO(FW-5592): Remove hasStartEndSlots condition
15508
15514
  */
15509
15515
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
15510
- return (hAsync(Host, { key: '166f7dea59931b8276bebef4d7a1fcd5ace90bad', class: createColorClasses$1(this.color, {
15516
+ return (hAsync(Host, { key: '01f49d79dd068256eb6bf24a01e8622ea6d67506', class: createColorClasses$1(this.color, {
15511
15517
  [mode]: true,
15512
15518
  'has-value': hasValue,
15513
15519
  'has-focus': hasFocus,
@@ -15518,7 +15524,7 @@ class Input {
15518
15524
  'in-item': inItem,
15519
15525
  'in-item-color': hostContext('ion-item.ion-color', this.el),
15520
15526
  'input-disabled': disabled,
15521
- }) }, 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) => {
15527
+ }) }, 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) => {
15522
15528
  /**
15523
15529
  * This prevents mobile browsers from
15524
15530
  * blurring the input when the clear
@@ -15533,7 +15539,7 @@ class Input {
15533
15539
  * for screen readers as it means users would be unable to swipe past the clear button.
15534
15540
  */
15535
15541
  ev.stopPropagation();
15536
- }, 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()));
15542
+ }, 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()));
15537
15543
  }
15538
15544
  get el() { return getElement(this); }
15539
15545
  static get watchers() { return {
@@ -15626,7 +15632,7 @@ class InputPasswordToggle {
15626
15632
  */
15627
15633
  onTypeChange(newValue) {
15628
15634
  if (newValue !== 'text' && newValue !== 'password') {
15629
- printIonWarning(`ion-input-password-toggle only supports inputs of type "text" or "password". Input of type "${newValue}" is not compatible.`, this.el);
15635
+ printIonWarning(`[ion-input-password-toggle] - Only inputs of type "text" or "password" are supported. Input of type "${newValue}" is not compatible.`, this.el);
15630
15636
  return;
15631
15637
  }
15632
15638
  }
@@ -15634,7 +15640,7 @@ class InputPasswordToggle {
15634
15640
  const { el } = this;
15635
15641
  const inputElRef = (this.inputElRef = el.closest('ion-input'));
15636
15642
  if (!inputElRef) {
15637
- printIonWarning('No ancestor ion-input found for ion-input-password-toggle. This component must be slotted inside of an ion-input.', el);
15643
+ printIonWarning('[ion-input-password-toggle] - No ancestor ion-input found. This component must be slotted inside of an ion-input.', el);
15638
15644
  return;
15639
15645
  }
15640
15646
  /**
@@ -15656,16 +15662,16 @@ class InputPasswordToggle {
15656
15662
  const showPasswordIcon = (_a = this.showIcon) !== null && _a !== void 0 ? _a : eye;
15657
15663
  const hidePasswordIcon = (_b = this.hideIcon) !== null && _b !== void 0 ? _b : eyeOff;
15658
15664
  const isPasswordVisible = type === 'text';
15659
- return (hAsync(Host, { key: 'd9811e25bfeb2aa197352bb9be852e9e420739d5', class: createColorClasses$1(color, {
15665
+ return (hAsync(Host, { key: '1a28e078c83e74c72d8bb8189ece93ec2e3fa3d0', class: createColorClasses$1(color, {
15660
15666
  [mode]: true,
15661
- }) }, 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) => {
15667
+ }) }, 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) => {
15662
15668
  /**
15663
15669
  * This prevents mobile browsers from
15664
15670
  * blurring the input when the password toggle
15665
15671
  * button is activated.
15666
15672
  */
15667
15673
  ev.preventDefault();
15668
- }, onClick: this.togglePasswordVisibility }, hAsync("ion-icon", { key: '9c88de8f4631d9bde222ce2edf6950d639e04773', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? hidePasswordIcon : showPasswordIcon }))));
15674
+ }, onClick: this.togglePasswordVisibility }, hAsync("ion-icon", { key: '26477ee97b808c3d79944bf5e33d4e05f1ae0b3f', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? hidePasswordIcon : showPasswordIcon }))));
15669
15675
  }
15670
15676
  get el() { return getElement(this); }
15671
15677
  static get watchers() { return {
@@ -16453,7 +16459,7 @@ class ItemSliding {
16453
16459
  case 0 /* ItemSide.None */:
16454
16460
  return;
16455
16461
  default:
16456
- console.warn('invalid ItemSideFlags value', this.sides);
16462
+ printIonWarning('[ion-item-sliding] - invalid ItemSideFlags value', this.sides);
16457
16463
  break;
16458
16464
  }
16459
16465
  let optsWidth;
@@ -16581,7 +16587,7 @@ class ItemSliding {
16581
16587
  }
16582
16588
  render() {
16583
16589
  const mode = getIonMode$1(this);
16584
- return (hAsync(Host, { key: 'd7697278008dd6531c0e4f9c235b955a337e3140', class: {
16590
+ return (hAsync(Host, { key: '245523e940e08c75c6d5fdd1cdd370b5f5a23a0d', class: {
16585
16591
  [mode]: true,
16586
16592
  'item-sliding-active-slide': this.state !== 2 /* SlidingState.Disabled */,
16587
16593
  'item-sliding-active-options-end': (this.state & 8 /* SlidingState.End */) !== 0,
@@ -18080,14 +18086,14 @@ class Menu {
18080
18086
  * the ionBackButton listener in the menu controller
18081
18087
  * will handle closing the menu when Escape is pressed.
18082
18088
  */
18083
- return (hAsync(Host, { key: '342db8551d26604128b29b21d2d8c37593972ed9', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
18089
+ return (hAsync(Host, { key: '0a2ba4ff5600b80b54d1b5b45124779c6aa0d2f2', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
18084
18090
  [mode]: true,
18085
18091
  [`menu-type-${type}`]: true,
18086
18092
  'menu-enabled': !disabled,
18087
18093
  [`menu-side-${side}`]: true,
18088
18094
  'menu-pane-visible': isPaneVisible,
18089
18095
  'split-pane-side': hostContext('ion-split-pane', el),
18090
- } }, 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" })));
18096
+ } }, 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" })));
18091
18097
  }
18092
18098
  get el() { return getElement(this); }
18093
18099
  static get watchers() { return {
@@ -20105,7 +20111,7 @@ class Modal {
20105
20111
  this.currentBreakpoint = this.initialBreakpoint;
20106
20112
  }
20107
20113
  if (breakpoints !== undefined && initialBreakpoint !== undefined && !breakpoints.includes(initialBreakpoint)) {
20108
- printIonWarning('Your breakpoints array must include the initialBreakpoint value.');
20114
+ printIonWarning('[ion-modal] - Your breakpoints array must include the initialBreakpoint value.');
20109
20115
  }
20110
20116
  if (!((_a = this.htmlAttributes) === null || _a === void 0 ? void 0 : _a.id)) {
20111
20117
  setOverlayId(this.el);
@@ -20450,11 +20456,11 @@ class Modal {
20450
20456
  */
20451
20457
  async setCurrentBreakpoint(breakpoint) {
20452
20458
  if (!this.isSheetModal) {
20453
- printIonWarning('setCurrentBreakpoint is only supported on sheet modals.');
20459
+ printIonWarning('[ion-modal] - setCurrentBreakpoint is only supported on sheet modals.');
20454
20460
  return;
20455
20461
  }
20456
20462
  if (!this.breakpoints.includes(breakpoint)) {
20457
- printIonWarning(`Attempted to set invalid breakpoint value ${breakpoint}. Please double check that the breakpoint value is part of your defined breakpoints.`);
20463
+ printIonWarning(`[ion-modal] - Attempted to set invalid breakpoint value ${breakpoint}. Please double check that the breakpoint value is part of your defined breakpoints.`);
20458
20464
  return;
20459
20465
  }
20460
20466
  const { currentBreakpoint, moveSheetToBreakpoint, canDismiss, breakpoints, animated } = this;
@@ -20505,18 +20511,18 @@ class Modal {
20505
20511
  const mode = getIonMode$1(this);
20506
20512
  const isCardModal = presentingElement !== undefined && mode === 'ios';
20507
20513
  const isHandleCycle = handleBehavior === 'cycle';
20508
- return (hAsync(Host, Object.assign({ key: 'e661562f9e4126136cee337e4ab8ca69ac80faae', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
20514
+ return (hAsync(Host, Object.assign({ key: '0991b2e4e32da511e59fb1463b47e4ac1b86d1ca', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
20509
20515
  zIndex: `${20000 + this.overlayIndex}`,
20510
- }, 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',
20516
+ }, 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',
20511
20517
  /*
20512
20518
  role and aria-modal must be used on the
20513
20519
  same element. They must also be set inside the
20514
20520
  shadow DOM otherwise ion-button will not be highlighted
20515
20521
  when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
20516
20522
  */
20517
- 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",
20523
+ 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",
20518
20524
  // Prevents the handle from receiving keyboard focus when it does not cycle
20519
- 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' }))));
20525
+ 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' }))));
20520
20526
  }
20521
20527
  get el() { return getElement(this); }
20522
20528
  static get watchers() { return {
@@ -21244,7 +21250,7 @@ class Nav {
21244
21250
  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);
21245
21251
  assert(finalNumViews >= 0, 'final balance can not be negative');
21246
21252
  if (finalNumViews === 0) {
21247
- console.warn(`You can't remove all the pages in the navigation stack. nav.pop() is probably called too many times.`, this, this.el);
21253
+ 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);
21248
21254
  throw new Error('navigation stack needs at least one root page');
21249
21255
  }
21250
21256
  // At this point the transition can not be rejected, any throw should be an error
@@ -21466,7 +21472,7 @@ class Nav {
21466
21472
  }
21467
21473
  }
21468
21474
  render() {
21469
- return hAsync("slot", { key: '71e9b5d07fc90ca5534197a63a003a4154aabd59' });
21475
+ return hAsync("slot", { key: '188d0abd6c047d235380f07aac81223b757010e8' });
21470
21476
  }
21471
21477
  get el() { return getElement(this); }
21472
21478
  static get watchers() { return {
@@ -22207,7 +22213,7 @@ class Picker {
22207
22213
  }
22208
22214
  }
22209
22215
  componentDidLoad() {
22210
- 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);
22216
+ 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);
22211
22217
  /**
22212
22218
  * If picker was rendered with isOpen="true"
22213
22219
  * then we should open picker immediately.
@@ -22317,11 +22323,11 @@ class Picker {
22317
22323
  render() {
22318
22324
  const { htmlAttributes } = this;
22319
22325
  const mode = getIonMode$1(this);
22320
- return (hAsync(Host, Object.assign({ key: 'dc03f252e3b59a94bc7132c953d2d3b36b62237e', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
22326
+ return (hAsync(Host, Object.assign({ key: 'b6b6ca6f9aa74681e6d67f64b366f5965fec2a6d', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
22321
22327
  zIndex: `${20000 + this.overlayIndex}`,
22322
22328
  }, class: Object.assign({ [mode]: true,
22323
22329
  // Used internally for styling
22324
- [`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" })));
22330
+ [`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" })));
22325
22331
  }
22326
22332
  get el() { return getElement(this); }
22327
22333
  static get watchers() { return {
@@ -24440,7 +24446,7 @@ class Popover {
24440
24446
  }
24441
24447
  const triggerEl = (this.triggerEl = trigger !== undefined ? document.getElementById(trigger) : null);
24442
24448
  if (!triggerEl) {
24443
- 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);
24449
+ 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);
24444
24450
  return;
24445
24451
  }
24446
24452
  this.destroyTriggerInteraction = configureTriggerInteraction(triggerEl, triggerAction, el);
@@ -24719,9 +24725,9 @@ class Popover {
24719
24725
  const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
24720
24726
  const desktop = isPlatform('desktop');
24721
24727
  const enableArrow = arrow && !parentPopover;
24722
- return (hAsync(Host, Object.assign({ key: '48f108a9b74f121559626889dd5a1fcccf38fc3d', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
24728
+ return (hAsync(Host, Object.assign({ key: 'ff24e8d9677711248a36994cce568e74ba151499', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
24723
24729
  zIndex: `${20000 + this.overlayIndex}`,
24724
- }, 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' })))));
24730
+ }, 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' })))));
24725
24731
  }
24726
24732
  get el() { return getElement(this); }
24727
24733
  static get watchers() { return {
@@ -25465,11 +25471,11 @@ class Range {
25465
25471
  const { activeBarStart } = this;
25466
25472
  if (activeBarStart !== undefined) {
25467
25473
  if (activeBarStart > this.max) {
25468
- 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);
25474
+ 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);
25469
25475
  this.activeBarStart = this.max;
25470
25476
  }
25471
25477
  else if (activeBarStart < this.min) {
25472
- 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);
25478
+ 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);
25473
25479
  this.activeBarStart = this.min;
25474
25480
  }
25475
25481
  }
@@ -25895,7 +25901,7 @@ class Range {
25895
25901
  const needsEndAdjustment = inItem && !hasEndContent;
25896
25902
  const mode = getIonMode$1(this);
25897
25903
  renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
25898
- return (hAsync(Host, { key: 'e97cb7eab877eb1624429b4a79107130c6809cf5', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
25904
+ return (hAsync(Host, { key: '3e065039ee048f1f70d97dba5dae98fa1315d867', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
25899
25905
  [mode]: true,
25900
25906
  'in-item': inItem,
25901
25907
  'range-disabled': disabled,
@@ -25904,10 +25910,10 @@ class Range {
25904
25910
  [`range-label-placement-${labelPlacement}`]: true,
25905
25911
  'range-item-start-adjustment': needsStartAdjustment,
25906
25912
  'range-item-end-adjustment': needsEndAdjustment,
25907
- }) }, hAsync("label", { key: 'a43e9859f74f83460439efefccb5fbb9f387c9ee', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: '75352a30f30dbd0228c6138eb4324a5c021dbb48', class: {
25913
+ }) }, hAsync("label", { key: '27ff22842c9ea79a1b9495302b926f70c9080a95', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: 'da1f9784be02dfe87d2fef34931d8b7f2148189e', class: {
25908
25914
  'label-text-wrapper': true,
25909
25915
  'label-text-wrapper-hidden': !hasLabel,
25910
- }, 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" })))));
25916
+ }, 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" })))));
25911
25917
  }
25912
25918
  get el() { return getElement(this); }
25913
25919
  static get watchers() { return {
@@ -26477,7 +26483,7 @@ class Refresher {
26477
26483
  }
26478
26484
  async connectedCallback() {
26479
26485
  if (this.el.getAttribute('slot') !== 'fixed') {
26480
- console.error('Make sure you use: <ion-refresher slot="fixed">');
26486
+ printIonError('[ion-refresher] - Make sure you use: <ion-refresher slot="fixed">');
26481
26487
  return;
26482
26488
  }
26483
26489
  const contentEl = this.el.closest(ION_CONTENT_ELEMENT_SELECTOR);
@@ -26809,7 +26815,7 @@ class Refresher {
26809
26815
  }
26810
26816
  render() {
26811
26817
  const mode = getIonMode$1(this);
26812
- return (hAsync(Host, { key: '4c36bffbfa32ef1bd28a60f4455c125842880659', slot: "fixed", class: {
26818
+ return (hAsync(Host, { key: 'c717c16f2ca3e42351848cc8ad37918dec28961d', slot: "fixed", class: {
26813
26819
  [mode]: true,
26814
26820
  // Used internally for styling
26815
26821
  [`refresher-${mode}`]: true,
@@ -27719,7 +27725,7 @@ const writeNavState = async (root, chain, direction, index, changed = false, ani
27719
27725
  return changed;
27720
27726
  }
27721
27727
  catch (e) {
27722
- console.error(e);
27728
+ printIonError('[ion-router] - Exception in writeNavState:', e);
27723
27729
  return false;
27724
27730
  }
27725
27731
  };
@@ -28182,19 +28188,19 @@ class Router {
28182
28188
  /** @internal */
28183
28189
  async navChanged(direction) {
28184
28190
  if (this.busy) {
28185
- console.warn('[ion-router] router is busy, navChanged was cancelled');
28191
+ printIonWarning('[ion-router] - Router is busy, navChanged was cancelled.');
28186
28192
  return false;
28187
28193
  }
28188
28194
  const { ids, outlet } = await readNavState(window.document.body);
28189
28195
  const routes = readRoutes(this.el);
28190
28196
  const chain = findChainForIDs(ids, routes);
28191
28197
  if (!chain) {
28192
- console.warn('[ion-router] no matching URL for ', ids.map((i) => i.id));
28198
+ printIonWarning('[ion-router] - No matching URL for', ids.map((i) => i.id));
28193
28199
  return false;
28194
28200
  }
28195
28201
  const segments = chainToSegments(chain);
28196
28202
  if (!segments) {
28197
- console.warn('[ion-router] router could not match path because some required param is missing');
28203
+ printIonWarning('[ion-router] - Router could not match path because some required param is missing.');
28198
28204
  return false;
28199
28205
  }
28200
28206
  this.setSegments(segments, direction);
@@ -28232,7 +28238,7 @@ class Router {
28232
28238
  }
28233
28239
  async writeNavStateRoot(segments, direction, animation) {
28234
28240
  if (!segments) {
28235
- console.error('[ion-router] URL is not part of the routing set');
28241
+ printIonError('[ion-router] - URL is not part of the routing set.');
28236
28242
  return false;
28237
28243
  }
28238
28244
  // lookup redirect rule
@@ -28249,7 +28255,7 @@ class Router {
28249
28255
  const routes = readRoutes(this.el);
28250
28256
  const chain = findChainForSegments(segments, routes);
28251
28257
  if (!chain) {
28252
- console.error('[ion-router] the path does not match any route');
28258
+ printIonError('[ion-router] - The path does not match any route.');
28253
28259
  return false;
28254
28260
  }
28255
28261
  // write DOM give
@@ -28262,7 +28268,7 @@ class Router {
28262
28268
  changed = await this.writeNavState(node, chain, direction, segments, redirectFrom, index, animation);
28263
28269
  }
28264
28270
  catch (e) {
28265
- console.error(e);
28271
+ printIonError('[ion-router] - Exception in safeWriteNavState:', e);
28266
28272
  }
28267
28273
  unlock();
28268
28274
  return changed;
@@ -28304,7 +28310,7 @@ class Router {
28304
28310
  }
28305
28311
  async writeNavState(node, chain, direction, segments, redirectFrom, index = 0, animation) {
28306
28312
  if (this.busy) {
28307
- console.warn('[ion-router] router is busy, transition was cancelled');
28313
+ printIonWarning('[ion-router] - Router is busy, transition was cancelled.');
28308
28314
  return false;
28309
28315
  }
28310
28316
  this.busy = true;
@@ -28487,7 +28493,7 @@ class RouterOutlet {
28487
28493
  changed = await this.transition(enteringEl, leavingEl, opts);
28488
28494
  }
28489
28495
  catch (e) {
28490
- console.error(e);
28496
+ printIonError('[ion-router-outlet] - Exception in commit:', e);
28491
28497
  }
28492
28498
  unlock();
28493
28499
  return changed;
@@ -28583,7 +28589,7 @@ class RouterOutlet {
28583
28589
  return true;
28584
28590
  }
28585
28591
  render() {
28586
- return hAsync("slot", { key: '7e0a94834af9cb73ee47759fa5b2588dab3d1345' });
28592
+ return hAsync("slot", { key: 'df4fa3e07f10157d53129661d48282e8feec13a1' });
28587
28593
  }
28588
28594
  get el() { return getElement(this); }
28589
28595
  static get watchers() { return {
@@ -29700,7 +29706,7 @@ class SegmentButton {
29700
29706
  }
29701
29707
  // Prevent buttons from being disabled when associated with segment content
29702
29708
  if (this.contentId && this.disabled) {
29703
- console.warn(`Segment Button: Segment buttons cannot be disabled when associated with an <ion-segment-content>.`);
29709
+ printIonWarning(`[ion-segment-button] - Segment buttons cannot be disabled when associated with an <ion-segment-content>.`);
29704
29710
  this.disabled = false;
29705
29711
  }
29706
29712
  }
@@ -29721,12 +29727,12 @@ class SegmentButton {
29721
29727
  const segmentContent = document.getElementById(this.contentId);
29722
29728
  // If no associated Segment Content exists, log an error and return
29723
29729
  if (!segmentContent) {
29724
- console.error(`Segment Button: Unable to find Segment Content with id="${this.contentId}".`);
29730
+ printIonError(`[ion-segment-button] - Unable to find Segment Content with id="${this.contentId}".`);
29725
29731
  return;
29726
29732
  }
29727
29733
  // Ensure the found element is a valid ION-SEGMENT-CONTENT
29728
29734
  if (segmentContent.tagName !== 'ION-SEGMENT-CONTENT') {
29729
- console.error(`Segment Button: Element with id="${this.contentId}" is not an <ion-segment-content> element.`);
29735
+ printIonError(`[ion-segment-button] - Element with id="${this.contentId}" is not an <ion-segment-content> element.`);
29730
29736
  return;
29731
29737
  }
29732
29738
  }
@@ -29751,7 +29757,7 @@ class SegmentButton {
29751
29757
  const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
29752
29758
  const mode = getIonMode$1(this);
29753
29759
  const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
29754
- return (hAsync(Host, { key: 'f2f679a08b131cd35d63f649b9d1f1907df30a89', class: {
29760
+ return (hAsync(Host, { key: 'd79dad80db69123510c6d52bbf4424558600c14a', class: {
29755
29761
  [mode]: true,
29756
29762
  'in-toolbar': hostContext('ion-toolbar', this.el),
29757
29763
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
@@ -29767,7 +29773,7 @@ class SegmentButton {
29767
29773
  'ion-activatable': true,
29768
29774
  'ion-activatable-instant': true,
29769
29775
  'ion-focusable': true,
29770
- } }, 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" }))));
29776
+ } }, 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" }))));
29771
29777
  }
29772
29778
  get el() { return getElement(this); }
29773
29779
  static get watchers() { return {
@@ -29940,10 +29946,10 @@ class SegmentView {
29940
29946
  }; }
29941
29947
  }
29942
29948
 
29943
- 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}";
29949
+ 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}";
29944
29950
  var IonSelectIosStyle0 = selectIosCss;
29945
29951
 
29946
- 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}";
29952
+ 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}";
29947
29953
  var IonSelectMdStyle0 = selectMdCss;
29948
29954
 
29949
29955
  // TODO(FW-2832): types
@@ -30014,12 +30020,15 @@ class Select {
30014
30020
  }
30015
30021
  };
30016
30022
  this.onFocus = () => {
30023
+ this.hasFocus = true;
30017
30024
  this.ionFocus.emit();
30018
30025
  };
30019
30026
  this.onBlur = () => {
30027
+ this.hasFocus = false;
30020
30028
  this.ionBlur.emit();
30021
30029
  };
30022
30030
  this.isExpanded = false;
30031
+ this.hasFocus = false;
30023
30032
  this.cancelText = 'Cancel';
30024
30033
  this.color = undefined;
30025
30034
  this.compareWith = undefined;
@@ -30179,11 +30188,11 @@ class Select {
30179
30188
  createOverlay(ev) {
30180
30189
  let selectInterface = this.interface;
30181
30190
  if (selectInterface === 'action-sheet' && this.multiple) {
30182
- console.warn(`Select interface cannot be "${selectInterface}" with a multi-value select. Using the "alert" interface instead.`);
30191
+ printIonWarning(`[ion-select] - Interface cannot be "${selectInterface}" with a multi-value select. Using the "alert" interface instead.`);
30183
30192
  selectInterface = 'alert';
30184
30193
  }
30185
30194
  if (selectInterface === 'popover' && !ev) {
30186
- console.warn(`Select interface cannot be a "${selectInterface}" without passing an event. Using the "alert" interface instead.`);
30195
+ printIonWarning(`[ion-select] - Interface cannot be a "${selectInterface}" without passing an event. Using the "alert" interface instead.`);
30187
30196
  selectInterface = 'alert';
30188
30197
  }
30189
30198
  if (selectInterface === 'action-sheet') {
@@ -30593,7 +30602,7 @@ class Select {
30593
30602
  return hAsync("div", { class: "select-bottom" }, this.renderHintText());
30594
30603
  }
30595
30604
  render() {
30596
- const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
30605
+ const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value, hasFocus, } = this;
30597
30606
  const mode = getIonMode$1(this);
30598
30607
  const hasFloatingOrStackedLabel = labelPlacement === 'floating' || labelPlacement === 'stacked';
30599
30608
  const justifyEnabled = !hasFloatingOrStackedLabel && justify !== undefined;
@@ -30621,7 +30630,7 @@ class Select {
30621
30630
  * TODO(FW-5592): Remove hasStartEndSlots condition
30622
30631
  */
30623
30632
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
30624
- return (hAsync(Host, { key: 'aa7bd7fbb6479c7805486990650a406e5470fd13', onClick: this.onClick, class: createColorClasses$1(this.color, {
30633
+ return (hAsync(Host, { key: 'e6c0498d6c275f89344f4b5146752a047058ad88', onClick: this.onClick, class: createColorClasses$1(this.color, {
30625
30634
  [mode]: true,
30626
30635
  'in-item': inItem,
30627
30636
  'in-item-color': hostContext('ion-item.ion-color', el),
@@ -30631,13 +30640,15 @@ class Select {
30631
30640
  'has-value': hasValue,
30632
30641
  'label-floating': labelShouldFloat,
30633
30642
  'has-placeholder': placeholder !== undefined,
30643
+ 'has-focus': hasFocus,
30644
+ // TODO(FW-6451): Remove `ion-focusable` class in favor of `has-focus`.
30634
30645
  'ion-focusable': true,
30635
30646
  [`select-${rtl}`]: true,
30636
30647
  [`select-fill-${fill}`]: fill !== undefined,
30637
30648
  [`select-justify-${justify}`]: justifyEnabled,
30638
30649
  [`select-shape-${shape}`]: shape !== undefined,
30639
30650
  [`select-label-placement-${labelPlacement}`]: true,
30640
- }) }, 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()));
30651
+ }) }, 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()));
30641
30652
  }
30642
30653
  get el() { return getElement(this); }
30643
30654
  static get watchers() { return {
@@ -30677,6 +30688,7 @@ class Select {
30677
30688
  "value": [1032],
30678
30689
  "required": [4],
30679
30690
  "isExpanded": [32],
30691
+ "hasFocus": [32],
30680
30692
  "open": [64]
30681
30693
  },
30682
30694
  "$listeners$": undefined,
@@ -31158,12 +31170,12 @@ class SplitPane {
31158
31170
  }
31159
31171
  render() {
31160
31172
  const mode = getIonMode$1(this);
31161
- return (hAsync(Host, { key: '76be70d7fbebc52646a5851f47accc1006615b85', class: {
31173
+ return (hAsync(Host, { key: '098801b5a318e2fc6913fb0d9079b1552927b99b', class: {
31162
31174
  [mode]: true,
31163
31175
  // Used internally for styling
31164
31176
  [`split-pane-${mode}`]: true,
31165
31177
  'split-pane-visible': this.visible,
31166
- } }, hAsync("slot", { key: '9a859530f4fb18aff43255bc3940feb9aca625d7' })));
31178
+ } }, hAsync("slot", { key: '8cbc6a942ecba54fc3c62027d46917db067b65c8' })));
31167
31179
  }
31168
31180
  get el() { return getElement(this); }
31169
31181
  static get watchers() { return {
@@ -31225,17 +31237,17 @@ class Tab {
31225
31237
  return attachComponent(this.delegate, this.el, this.component, ['ion-page']);
31226
31238
  }
31227
31239
  catch (e) {
31228
- console.error(e);
31240
+ printIonError('[ion-tab] - Exception in prepareLazyLoaded:', e);
31229
31241
  }
31230
31242
  }
31231
31243
  return Promise.resolve(undefined);
31232
31244
  }
31233
31245
  render() {
31234
31246
  const { tab, active, component } = this;
31235
- return (hAsync(Host, { key: '2107ece2f1ebdf748bac8adb78a9ad67e7fc9057', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
31247
+ return (hAsync(Host, { key: 'c36c113e74e12b58459df9e3b546ad4856187e90', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
31236
31248
  'ion-page': component === undefined,
31237
31249
  'tab-hidden': !active,
31238
- } }, hAsync("slot", { key: 'b4a1bc1aa79f6b82b8f77b544bcb74e65229b541' })));
31250
+ } }, hAsync("slot", { key: '0d7821dac70ba7a12edfb3331988f3df1566cc1a' })));
31239
31251
  }
31240
31252
  get el() { return getElement(this); }
31241
31253
  static get watchers() { return {
@@ -31603,7 +31615,7 @@ class Tabs {
31603
31615
  return Array.from(this.el.querySelectorAll('ion-tab'));
31604
31616
  }
31605
31617
  render() {
31606
- 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" })));
31618
+ 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" })));
31607
31619
  }
31608
31620
  get el() { return getElement(this); }
31609
31621
  static get style() { return IonTabsStyle0; }
@@ -31627,7 +31639,7 @@ class Tabs {
31627
31639
  const getTab = (tabs, tab) => {
31628
31640
  const tabEl = typeof tab === 'string' ? tabs.find((t) => t.tab === tab) : tab;
31629
31641
  if (!tabEl) {
31630
- console.error(`tab with id: "${tabEl}" does not exist`);
31642
+ printIonError(`[ion-tabs] - Tab with id: "${tabEl}" does not exist`);
31631
31643
  }
31632
31644
  return tabEl;
31633
31645
  };
@@ -32039,7 +32051,7 @@ class Textarea {
32039
32051
  * TODO(FW-5592): Remove hasStartEndSlots condition
32040
32052
  */
32041
32053
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
32042
- return (hAsync(Host, { key: '3bf42ea1fa739f334427c70f91a89b8b0e0f21ec', class: createColorClasses$1(this.color, {
32054
+ return (hAsync(Host, { key: '016dd354c8a4cd62646d4a85dbcfa2eacb870d69', class: createColorClasses$1(this.color, {
32043
32055
  [mode]: true,
32044
32056
  'has-value': hasValue,
32045
32057
  'has-focus': hasFocus,
@@ -32048,7 +32060,7 @@ class Textarea {
32048
32060
  [`textarea-shape-${shape}`]: shape !== undefined,
32049
32061
  [`textarea-label-placement-${labelPlacement}`]: true,
32050
32062
  'textarea-disabled': disabled,
32051
- }) }, 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()));
32063
+ }) }, 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()));
32052
32064
  }
32053
32065
  get el() { return getElement(this); }
32054
32066
  static get watchers() { return {
@@ -32196,7 +32208,7 @@ function getAnimationPosition(position, positionAnchor, mode, toast) {
32196
32208
  */
32197
32209
  function warnIfAnchorIsHidden(positionAnchor, toast) {
32198
32210
  if (positionAnchor.offsetParent === null) {
32199
- 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);
32211
+ 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);
32200
32212
  }
32201
32213
  }
32202
32214
  /**
@@ -32847,7 +32859,7 @@ class Toast {
32847
32859
  return;
32848
32860
  }
32849
32861
  if (position === 'middle' && positionAnchor !== undefined) {
32850
- printIonWarning('The positionAnchor property is ignored when using position="middle".', this.el);
32862
+ printIonWarning('[ion-toast] - The positionAnchor property is ignored when using position="middle".', this.el);
32851
32863
  return undefined;
32852
32864
  }
32853
32865
  if (typeof positionAnchor === 'string') {
@@ -32859,7 +32871,7 @@ class Toast {
32859
32871
  */
32860
32872
  const foundEl = document.getElementById(positionAnchor);
32861
32873
  if (foundEl === null) {
32862
- printIonWarning(`An anchor element with an ID of "${positionAnchor}" was not found in the DOM.`, el);
32874
+ printIonWarning(`[ion-toast] - An anchor element with an ID of "${positionAnchor}" was not found in the DOM.`, el);
32863
32875
  return undefined;
32864
32876
  }
32865
32877
  return foundEl;
@@ -32867,7 +32879,7 @@ class Toast {
32867
32879
  if (positionAnchor instanceof HTMLElement) {
32868
32880
  return positionAnchor;
32869
32881
  }
32870
- printIonWarning('Invalid positionAnchor value:', positionAnchor, el);
32882
+ printIonWarning('[ion-toast] - Invalid positionAnchor value:', positionAnchor, el);
32871
32883
  return undefined;
32872
32884
  }
32873
32885
  async buttonClick(button) {
@@ -32893,7 +32905,7 @@ class Toast {
32893
32905
  }
32894
32906
  }
32895
32907
  catch (e) {
32896
- console.error(e);
32908
+ printIonError('[ion-toast] - Exception in callButtonHandler:', e);
32897
32909
  }
32898
32910
  }
32899
32911
  return true;
@@ -32945,11 +32957,11 @@ class Toast {
32945
32957
  * used with one type of button.
32946
32958
  */
32947
32959
  if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
32948
- 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);
32960
+ 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);
32949
32961
  }
32950
- return (hAsync(Host, Object.assign({ key: '34036afc0701173d51c9c11ea4a2e1d65685ba41', tabindex: "-1" }, this.htmlAttributes, { style: {
32962
+ return (hAsync(Host, Object.assign({ key: 'a2216d860255c99337464370dcb12f6125871a50', tabindex: "-1" }, this.htmlAttributes, { style: {
32951
32963
  zIndex: `${60000 + this.overlayIndex}`,
32952
- }, 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')))));
32964
+ }, 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')))));
32953
32965
  }
32954
32966
  get el() { return getElement(this); }
32955
32967
  static get watchers() { return {
@@ -33011,10 +33023,10 @@ const buttonPart = (button) => {
33011
33023
  return isCancel(button.role) ? 'button cancel' : 'button';
33012
33024
  };
33013
33025
 
33014
- 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}";
33026
+ 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}";
33015
33027
  var IonToggleIosStyle0 = toggleIosCss;
33016
33028
 
33017
- 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}";
33029
+ 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}";
33018
33030
  var IonToggleMdStyle0 = toggleMdCss;
33019
33031
 
33020
33032
  /**
@@ -33036,6 +33048,7 @@ class Toggle {
33036
33048
  this.ionFocus = createEvent(this, "ionFocus", 7);
33037
33049
  this.ionBlur = createEvent(this, "ionBlur", 7);
33038
33050
  this.inputId = `ion-tg-${toggleIds++}`;
33051
+ this.inputLabelId = `${this.inputId}-lbl`;
33039
33052
  this.helperTextId = `${this.inputId}-helper-text`;
33040
33053
  this.errorTextId = `${this.inputId}-error-text`;
33041
33054
  this.lastDrag = 0;
@@ -33057,6 +33070,14 @@ class Toggle {
33057
33070
  this.disabledChanged();
33058
33071
  }
33059
33072
  };
33073
+ this.onKeyDown = (ev) => {
33074
+ if (ev.key === ' ') {
33075
+ ev.preventDefault();
33076
+ if (!this.disabled) {
33077
+ this.toggleChecked();
33078
+ }
33079
+ }
33080
+ };
33060
33081
  this.onClick = (ev) => {
33061
33082
  if (this.disabled) {
33062
33083
  return;
@@ -33199,12 +33220,12 @@ class Toggle {
33199
33220
  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)));
33200
33221
  }
33201
33222
  render() {
33202
- const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment, required } = this;
33223
+ const { activated, alignment, checked, color, disabled, el, errorTextId, hasLabel, inheritedAttributes, inputId, inputLabelId, justify, labelPlacement, name, required, } = this;
33203
33224
  const mode = getIonMode$1(this);
33204
33225
  const value = this.getValue();
33205
33226
  const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
33206
33227
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
33207
- return (hAsync(Host, { key: 'c6db7f5bc0b358944c0d79e24aeb4d319793422f', "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId, onClick: this.onClick, class: createColorClasses$1(color, {
33228
+ 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, {
33208
33229
  [mode]: true,
33209
33230
  'in-item': hostContext('ion-item', el),
33210
33231
  'toggle-activated': activated,
@@ -33214,10 +33235,10 @@ class Toggle {
33214
33235
  [`toggle-alignment-${alignment}`]: alignment !== undefined,
33215
33236
  [`toggle-label-placement-${labelPlacement}`]: true,
33216
33237
  [`toggle-${rtl}`]: true,
33217
- }) }, 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: {
33238
+ }) }, 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: {
33218
33239
  'label-text-wrapper': true,
33219
- 'label-text-wrapper-hidden': !this.hasLabel,
33220
- }, part: "label" }, hAsync("slot", { key: '9bdf7e85c95dc7373f18894ebfe6ad022f098107' }), this.renderHintText()), hAsync("div", { key: '33883642b38421a82001e37db3dd5e5c643785b0', class: "native-wrapper" }, this.renderToggleControl()))));
33240
+ 'label-text-wrapper-hidden': !hasLabel,
33241
+ }, part: "label", id: inputLabelId }, hAsync("slot", { key: '7ce338bd5116337c9ea90805fdee7285ef7c5811' }), this.renderHintText()), hAsync("div", { key: 'ecb5dfd2c7b534e357cba272dd4f189728555b3a', class: "native-wrapper" }, this.renderToggleControl()))));
33221
33242
  }
33222
33243
  get el() { return getElement(this); }
33223
33244
  static get watchers() { return {