igniteui-webcomponents 6.4.0-alpha.4 → 6.5.0

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 (431) hide show
  1. package/CHANGELOG.md +141 -2
  2. package/README.md +65 -56
  3. package/components/button/themes/button/dark/button.indigo.css.js +1 -1
  4. package/components/button/themes/button/dark/button.indigo.css.js.map +1 -1
  5. package/components/button/themes/button/dark/button.material.css.js +1 -1
  6. package/components/button/themes/button/dark/button.material.css.js.map +1 -1
  7. package/components/button/themes/button/light/button.indigo.css.js +1 -1
  8. package/components/button/themes/button/light/button.indigo.css.js.map +1 -1
  9. package/components/button/themes/button/light/button.material.css.js +1 -1
  10. package/components/button/themes/button/light/button.material.css.js.map +1 -1
  11. package/components/button/themes/button/shared/button.bootstrap.css.js +1 -1
  12. package/components/button/themes/button/shared/button.bootstrap.css.js.map +1 -1
  13. package/components/button/themes/button/shared/button.common.css.js +1 -1
  14. package/components/button/themes/button/shared/button.common.css.js.map +1 -1
  15. package/components/button/themes/button/shared/button.fluent.css.js +1 -1
  16. package/components/button/themes/button/shared/button.fluent.css.js.map +1 -1
  17. package/components/button/themes/button/shared/button.indigo.css.js +1 -1
  18. package/components/button/themes/button/shared/button.indigo.css.js.map +1 -1
  19. package/components/button/themes/button/shared/button.material.css.js +1 -1
  20. package/components/button/themes/button/shared/button.material.css.js.map +1 -1
  21. package/components/button-group/themes/dark/button-group.material.css.js +1 -1
  22. package/components/button-group/themes/dark/button-group.material.css.js.map +1 -1
  23. package/components/button-group/themes/light/button-group.material.css.js +1 -1
  24. package/components/button-group/themes/light/button-group.material.css.js.map +1 -1
  25. package/components/button-group/themes/shared/button/button.bootstrap.css.js +1 -1
  26. package/components/button-group/themes/shared/button/button.bootstrap.css.js.map +1 -1
  27. package/components/button-group/themes/shared/button/button.material.css.js +1 -1
  28. package/components/button-group/themes/shared/button/button.material.css.js.map +1 -1
  29. package/components/calendar/base.d.ts +7 -3
  30. package/components/calendar/base.js +10 -14
  31. package/components/calendar/base.js.map +1 -1
  32. package/components/calendar/calendar.d.ts +48 -44
  33. package/components/calendar/calendar.js +263 -259
  34. package/components/calendar/calendar.js.map +1 -1
  35. package/components/calendar/days-view/days-view.d.ts +49 -27
  36. package/components/calendar/days-view/days-view.js +170 -168
  37. package/components/calendar/days-view/days-view.js.map +1 -1
  38. package/components/calendar/helpers.js +40 -28
  39. package/components/calendar/helpers.js.map +1 -1
  40. package/components/calendar/model.d.ts +9 -3
  41. package/components/calendar/model.js +29 -19
  42. package/components/calendar/model.js.map +1 -1
  43. package/components/calendar/months-view/months-view.d.ts +6 -8
  44. package/components/calendar/months-view/months-view.js +25 -38
  45. package/components/calendar/months-view/months-view.js.map +1 -1
  46. package/components/calendar/themes/dark/calendar.bootstrap.css.js +1 -1
  47. package/components/calendar/themes/dark/calendar.bootstrap.css.js.map +1 -1
  48. package/components/calendar/themes/dark/calendar.fluent.css.js +1 -1
  49. package/components/calendar/themes/dark/calendar.fluent.css.js.map +1 -1
  50. package/components/calendar/themes/dark/calendar.indigo.css.js +1 -1
  51. package/components/calendar/themes/dark/calendar.indigo.css.js.map +1 -1
  52. package/components/calendar/themes/dark/calendar.material.css.js +1 -1
  53. package/components/calendar/themes/dark/calendar.material.css.js.map +1 -1
  54. package/components/calendar/themes/days.js +8 -23
  55. package/components/calendar/themes/days.js.map +1 -1
  56. package/components/calendar/themes/light/calendar.bootstrap.css.js +1 -1
  57. package/components/calendar/themes/light/calendar.bootstrap.css.js.map +1 -1
  58. package/components/calendar/themes/light/calendar.fluent.css.js +1 -1
  59. package/components/calendar/themes/light/calendar.fluent.css.js.map +1 -1
  60. package/components/calendar/themes/light/calendar.indigo.css.js +1 -1
  61. package/components/calendar/themes/light/calendar.indigo.css.js.map +1 -1
  62. package/components/calendar/themes/light/calendar.material.css.js +1 -1
  63. package/components/calendar/themes/light/calendar.material.css.js.map +1 -1
  64. package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js +1 -1
  65. package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js.map +1 -1
  66. package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js +1 -1
  67. package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js.map +1 -1
  68. package/components/calendar/themes/shared/fluent/days-view.fluent.css.js +1 -1
  69. package/components/calendar/themes/shared/fluent/days-view.fluent.css.js.map +1 -1
  70. package/components/calendar/themes/shared/indigo/days-view.indigo.css.js +1 -1
  71. package/components/calendar/themes/shared/indigo/days-view.indigo.css.js.map +1 -1
  72. package/components/calendar/themes/shared/material/days-view.material.css.js +1 -1
  73. package/components/calendar/themes/shared/material/days-view.material.css.js.map +1 -1
  74. package/components/calendar/themes/year-month.js +8 -23
  75. package/components/calendar/themes/year-month.js.map +1 -1
  76. package/components/calendar/years-view/years-view.d.ts +6 -5
  77. package/components/calendar/years-view/years-view.js +11 -14
  78. package/components/calendar/years-view/years-view.js.map +1 -1
  79. package/components/carousel/carousel.d.ts +2 -1
  80. package/components/carousel/carousel.js.map +1 -1
  81. package/components/checkbox/checkbox-base.d.ts +1 -1
  82. package/components/checkbox/themes/light/checkbox/checkbox.material.css.js +1 -1
  83. package/components/checkbox/themes/light/checkbox/checkbox.material.css.js.map +1 -1
  84. package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js +1 -1
  85. package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js.map +1 -1
  86. package/components/checkbox/themes/shared/switch/switch.common.css.js +1 -1
  87. package/components/checkbox/themes/shared/switch/switch.common.css.js.map +1 -1
  88. package/components/checkbox/themes/shared/switch/switch.fluent.css.js +1 -1
  89. package/components/checkbox/themes/shared/switch/switch.fluent.css.js.map +1 -1
  90. package/components/checkbox/themes/shared/switch/switch.indigo.css.js +1 -1
  91. package/components/checkbox/themes/shared/switch/switch.indigo.css.js.map +1 -1
  92. package/components/checkbox/themes/shared/switch/switch.material.css.js +1 -1
  93. package/components/checkbox/themes/shared/switch/switch.material.css.js.map +1 -1
  94. package/components/chip/chip.d.ts +2 -1
  95. package/components/chip/chip.js.map +1 -1
  96. package/components/chip/themes/dark/chip.fluent.css.js +1 -1
  97. package/components/chip/themes/dark/chip.fluent.css.js.map +1 -1
  98. package/components/chip/themes/dark/chip.indigo.css.js +1 -1
  99. package/components/chip/themes/dark/chip.indigo.css.js.map +1 -1
  100. package/components/chip/themes/light/chip.fluent.css.js +1 -1
  101. package/components/chip/themes/light/chip.fluent.css.js.map +1 -1
  102. package/components/chip/themes/light/chip.indigo.css.js +1 -1
  103. package/components/chip/themes/light/chip.indigo.css.js.map +1 -1
  104. package/components/chip/themes/light/chip.shared.css.js +1 -1
  105. package/components/chip/themes/light/chip.shared.css.js.map +1 -1
  106. package/components/chip/themes/shared/chip.indigo.css.js +1 -1
  107. package/components/chip/themes/shared/chip.indigo.css.js.map +1 -1
  108. package/components/combo/combo.d.ts +3 -2
  109. package/components/combo/combo.js +7 -0
  110. package/components/combo/combo.js.map +1 -1
  111. package/components/combo/controllers/selection.js.map +1 -1
  112. package/components/combo/validators.js +2 -2
  113. package/components/combo/validators.js.map +1 -1
  114. package/components/common/controllers/async-consumer.js.map +1 -1
  115. package/components/common/controllers/focus-ring.js +1 -5
  116. package/components/common/controllers/focus-ring.js.map +1 -1
  117. package/components/common/controllers/root-click.js +46 -21
  118. package/components/common/controllers/root-click.js.map +1 -1
  119. package/components/common/definitions/defineAllComponents.js +2 -0
  120. package/components/common/definitions/defineAllComponents.js.map +1 -1
  121. package/components/common/i18n/EN/calendar.resources.js +4 -1
  122. package/components/common/i18n/EN/calendar.resources.js.map +1 -1
  123. package/components/common/i18n/EN/date-range-picker.resources.js.map +1 -1
  124. package/components/common/i18n/i18n-controller.js +6 -9
  125. package/components/common/i18n/i18n-controller.js.map +1 -1
  126. package/components/common/i18n/utils.d.ts +0 -12
  127. package/components/common/i18n/utils.js +0 -12
  128. package/components/common/i18n/utils.js.map +1 -1
  129. package/components/common/mixins/forms/associated.js +3 -23
  130. package/components/common/mixins/forms/associated.js.map +1 -1
  131. package/components/common/util.d.ts +5 -0
  132. package/components/common/util.js +5 -0
  133. package/components/common/util.js.map +1 -1
  134. package/components/common/validators.d.ts +2 -4
  135. package/components/common/validators.js +13 -19
  136. package/components/common/validators.js.map +1 -1
  137. package/components/date-picker/date-picker.d.ts +7 -3
  138. package/components/date-picker/date-picker.js +2 -2
  139. package/components/date-picker/date-picker.js.map +1 -1
  140. package/components/date-picker/themes/dark/date-picker.bootstrap.css.js +1 -1
  141. package/components/date-picker/themes/dark/date-picker.bootstrap.css.js.map +1 -1
  142. package/components/date-picker/themes/dark/date-picker.fluent.css.js +1 -1
  143. package/components/date-picker/themes/dark/date-picker.fluent.css.js.map +1 -1
  144. package/components/date-picker/themes/dark/date-picker.indigo.css.js +1 -1
  145. package/components/date-picker/themes/dark/date-picker.indigo.css.js.map +1 -1
  146. package/components/date-picker/themes/dark/date-picker.material.css.js +1 -1
  147. package/components/date-picker/themes/dark/date-picker.material.css.js.map +1 -1
  148. package/components/date-picker/themes/light/date-picker.bootstrap.css.js +1 -1
  149. package/components/date-picker/themes/light/date-picker.bootstrap.css.js.map +1 -1
  150. package/components/date-picker/themes/light/date-picker.fluent.css.js +1 -1
  151. package/components/date-picker/themes/light/date-picker.fluent.css.js.map +1 -1
  152. package/components/date-picker/themes/light/date-picker.indigo.css.js +1 -1
  153. package/components/date-picker/themes/light/date-picker.indigo.css.js.map +1 -1
  154. package/components/date-picker/themes/light/date-picker.material.css.js +1 -1
  155. package/components/date-picker/themes/light/date-picker.material.css.js.map +1 -1
  156. package/components/date-picker/validators.js +2 -3
  157. package/components/date-picker/validators.js.map +1 -1
  158. package/components/date-range-picker/date-range-picker.d.ts +7 -2
  159. package/components/date-range-picker/date-range-picker.js +13 -10
  160. package/components/date-range-picker/date-range-picker.js.map +1 -1
  161. package/components/date-range-picker/themes/dark/date-range-picker.bootstrap.css.js +1 -1
  162. package/components/date-range-picker/themes/dark/date-range-picker.bootstrap.css.js.map +1 -1
  163. package/components/date-range-picker/themes/dark/date-range-picker.fluent.css.js +1 -1
  164. package/components/date-range-picker/themes/dark/date-range-picker.fluent.css.js.map +1 -1
  165. package/components/date-range-picker/themes/dark/date-range-picker.indigo.css.js +1 -1
  166. package/components/date-range-picker/themes/dark/date-range-picker.indigo.css.js.map +1 -1
  167. package/components/date-range-picker/themes/dark/date-range-picker.material.css.js +1 -1
  168. package/components/date-range-picker/themes/dark/date-range-picker.material.css.js.map +1 -1
  169. package/components/date-range-picker/themes/light/date-range-picker.bootstrap.css.js +1 -1
  170. package/components/date-range-picker/themes/light/date-range-picker.bootstrap.css.js.map +1 -1
  171. package/components/date-range-picker/themes/light/date-range-picker.fluent.css.js +1 -1
  172. package/components/date-range-picker/themes/light/date-range-picker.fluent.css.js.map +1 -1
  173. package/components/date-range-picker/themes/light/date-range-picker.indigo.css.js +1 -1
  174. package/components/date-range-picker/themes/light/date-range-picker.indigo.css.js.map +1 -1
  175. package/components/date-range-picker/themes/light/date-range-picker.material.css.js +1 -1
  176. package/components/date-range-picker/themes/light/date-range-picker.material.css.js.map +1 -1
  177. package/components/date-range-picker/validators.js +5 -8
  178. package/components/date-range-picker/validators.js.map +1 -1
  179. package/components/date-time-input/date-time-input.d.ts +10 -3
  180. package/components/date-time-input/date-time-input.js +39 -21
  181. package/components/date-time-input/date-time-input.js.map +1 -1
  182. package/components/date-time-input/date-util.d.ts +11 -9
  183. package/components/date-time-input/date-util.js +23 -219
  184. package/components/date-time-input/date-util.js.map +1 -1
  185. package/components/dialog/dialog.d.ts +2 -0
  186. package/components/dialog/dialog.js +18 -9
  187. package/components/dialog/dialog.js.map +1 -1
  188. package/components/dialog/themes/dark/dialog.fluent.css.js +1 -1
  189. package/components/dialog/themes/dark/dialog.fluent.css.js.map +1 -1
  190. package/components/dialog/themes/light/dialog.fluent.css.js +1 -1
  191. package/components/dialog/themes/light/dialog.fluent.css.js.map +1 -1
  192. package/components/dialog/themes/shared/dialog.bootstrap.css.js +1 -1
  193. package/components/dialog/themes/shared/dialog.bootstrap.css.js.map +1 -1
  194. package/components/dialog/themes/shared/dialog.indigo.css.js +1 -1
  195. package/components/dialog/themes/shared/dialog.indigo.css.js.map +1 -1
  196. package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js +1 -1
  197. package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js.map +1 -1
  198. package/components/file-input/file-input.d.ts +28 -13
  199. package/components/file-input/file-input.js +73 -46
  200. package/components/file-input/file-input.js.map +1 -1
  201. package/components/input/input-base.d.ts +31 -34
  202. package/components/input/input-base.js +58 -83
  203. package/components/input/input-base.js.map +1 -1
  204. package/components/input/input.d.ts +18 -7
  205. package/components/input/input.js +34 -19
  206. package/components/input/input.js.map +1 -1
  207. package/components/input/themes/dark/input.indigo.css.js +1 -1
  208. package/components/input/themes/dark/input.indigo.css.js.map +1 -1
  209. package/components/input/themes/light/input.indigo.css.js +1 -1
  210. package/components/input/themes/light/input.indigo.css.js.map +1 -1
  211. package/components/input/themes/light/input.shared.css.js +1 -1
  212. package/components/input/themes/light/input.shared.css.js.map +1 -1
  213. package/components/input/themes/shared/input.bootstrap.css.js +1 -1
  214. package/components/input/themes/shared/input.bootstrap.css.js.map +1 -1
  215. package/components/input/themes/shared/input.common.css.js +1 -1
  216. package/components/input/themes/shared/input.common.css.js.map +1 -1
  217. package/components/input/themes/shared/input.fluent.css.js +1 -1
  218. package/components/input/themes/shared/input.fluent.css.js.map +1 -1
  219. package/components/input/themes/shared/input.indigo.css.js +1 -1
  220. package/components/input/themes/shared/input.indigo.css.js.map +1 -1
  221. package/components/input/themes/shared/input.material.css.js +1 -1
  222. package/components/input/themes/shared/input.material.css.js.map +1 -1
  223. package/components/input/validators.js +3 -3
  224. package/components/input/validators.js.map +1 -1
  225. package/components/list/themes/dark/container/list.bootstrap.css.js +1 -1
  226. package/components/list/themes/dark/container/list.bootstrap.css.js.map +1 -1
  227. package/components/list/themes/light/container/list.fluent.css.js +1 -1
  228. package/components/list/themes/light/container/list.fluent.css.js.map +1 -1
  229. package/components/list/themes/shared/item/list-item.common.css.js +1 -1
  230. package/components/list/themes/shared/item/list-item.common.css.js.map +1 -1
  231. package/components/list/themes/shared/item/list-item.indigo.css.js +1 -1
  232. package/components/list/themes/shared/item/list-item.indigo.css.js.map +1 -1
  233. package/components/mask-input/mask-input-base.d.ts +10 -4
  234. package/components/mask-input/mask-input-base.js +21 -16
  235. package/components/mask-input/mask-input-base.js.map +1 -1
  236. package/components/mask-input/mask-input.d.ts +9 -3
  237. package/components/mask-input/mask-input.js +26 -6
  238. package/components/mask-input/mask-input.js.map +1 -1
  239. package/components/mask-input/mask-parser.d.ts +30 -7
  240. package/components/mask-input/mask-parser.js +70 -42
  241. package/components/mask-input/mask-parser.js.map +1 -1
  242. package/components/mask-input/validators.js +3 -3
  243. package/components/mask-input/validators.js.map +1 -1
  244. package/components/nav-drawer/themes/dark/container/nav-drawer.fluent.css.js +1 -1
  245. package/components/nav-drawer/themes/dark/container/nav-drawer.fluent.css.js.map +1 -1
  246. package/components/nav-drawer/themes/light/container/nav-drawer.fluent.css.js +1 -1
  247. package/components/nav-drawer/themes/light/container/nav-drawer.fluent.css.js.map +1 -1
  248. package/components/nav-drawer/themes/light/container/nav-drawer.material.css.js +1 -1
  249. package/components/nav-drawer/themes/light/container/nav-drawer.material.css.js.map +1 -1
  250. package/components/navbar/themes/shared/navbar.common.css.js +1 -1
  251. package/components/navbar/themes/shared/navbar.common.css.js.map +1 -1
  252. package/components/radio/themes/light/radio.material.css.js +1 -1
  253. package/components/radio/themes/light/radio.material.css.js.map +1 -1
  254. package/components/radio/themes/shared/radio.bootstrap.css.js +1 -1
  255. package/components/radio/themes/shared/radio.bootstrap.css.js.map +1 -1
  256. package/components/radio/themes/shared/radio.common.css.js +1 -1
  257. package/components/radio/themes/shared/radio.common.css.js.map +1 -1
  258. package/components/radio/themes/shared/radio.fluent.css.js +1 -1
  259. package/components/radio/themes/shared/radio.fluent.css.js.map +1 -1
  260. package/components/radio/themes/shared/radio.indigo.css.js +1 -1
  261. package/components/radio/themes/shared/radio.indigo.css.js.map +1 -1
  262. package/components/radio/themes/shared/radio.material.css.js +1 -1
  263. package/components/radio/themes/shared/radio.material.css.js.map +1 -1
  264. package/components/radio/validators.js +2 -2
  265. package/components/radio/validators.js.map +1 -1
  266. package/components/rating/themes/dark/rating.indigo.css.js +1 -1
  267. package/components/rating/themes/dark/rating.indigo.css.js.map +1 -1
  268. package/components/rating/themes/light/rating.indigo.css.js +1 -1
  269. package/components/rating/themes/light/rating.indigo.css.js.map +1 -1
  270. package/components/ripple/ripple.d.ts +3 -3
  271. package/components/ripple/ripple.js +34 -31
  272. package/components/ripple/ripple.js.map +1 -1
  273. package/components/stepper/step.js +2 -2
  274. package/components/stepper/step.js.map +1 -1
  275. package/components/stepper/themes/step/dark/step.bootstrap.css.js +1 -1
  276. package/components/stepper/themes/step/dark/step.bootstrap.css.js.map +1 -1
  277. package/components/stepper/themes/step/dark/step.fluent.css.js +1 -1
  278. package/components/stepper/themes/step/dark/step.fluent.css.js.map +1 -1
  279. package/components/stepper/themes/step/dark/step.indigo.css.js +1 -1
  280. package/components/stepper/themes/step/dark/step.indigo.css.js.map +1 -1
  281. package/components/stepper/themes/step/dark/step.material.css.js +1 -1
  282. package/components/stepper/themes/step/dark/step.material.css.js.map +1 -1
  283. package/components/stepper/themes/step/light/step.bootstrap.css.js +1 -1
  284. package/components/stepper/themes/step/light/step.bootstrap.css.js.map +1 -1
  285. package/components/stepper/themes/step/light/step.fluent.css.js +1 -1
  286. package/components/stepper/themes/step/light/step.fluent.css.js.map +1 -1
  287. package/components/stepper/themes/step/light/step.indigo.css.js +1 -1
  288. package/components/stepper/themes/step/light/step.indigo.css.js.map +1 -1
  289. package/components/stepper/themes/step/light/step.material.css.js +1 -1
  290. package/components/stepper/themes/step/light/step.material.css.js.map +1 -1
  291. package/components/stepper/themes/step/light/step.shared.css.js +1 -1
  292. package/components/stepper/themes/step/light/step.shared.css.js.map +1 -1
  293. package/components/stepper/themes/step/shared/step.common.css.js +1 -1
  294. package/components/stepper/themes/step/shared/step.common.css.js.map +1 -1
  295. package/components/stepper/themes/step/shared/step.indigo.css.js +1 -1
  296. package/components/stepper/themes/step/shared/step.indigo.css.js.map +1 -1
  297. package/components/tabs/tab-dom.js +8 -9
  298. package/components/tabs/tab-dom.js.map +1 -1
  299. package/components/tabs/themes/dark/tab.bootstrap.css.js +1 -1
  300. package/components/tabs/themes/dark/tab.bootstrap.css.js.map +1 -1
  301. package/components/tabs/themes/dark/tab.fluent.css.js +1 -1
  302. package/components/tabs/themes/dark/tab.fluent.css.js.map +1 -1
  303. package/components/tabs/themes/dark/tab.indigo.css.js +1 -1
  304. package/components/tabs/themes/dark/tab.indigo.css.js.map +1 -1
  305. package/components/tabs/themes/dark/tab.material.css.js +1 -1
  306. package/components/tabs/themes/dark/tab.material.css.js.map +1 -1
  307. package/components/tabs/themes/dark/tab.shared.css.js +1 -1
  308. package/components/tabs/themes/dark/tab.shared.css.js.map +1 -1
  309. package/components/tabs/themes/light/tab.bootstrap.css.js +1 -1
  310. package/components/tabs/themes/light/tab.bootstrap.css.js.map +1 -1
  311. package/components/tabs/themes/light/tab.fluent.css.js +1 -1
  312. package/components/tabs/themes/light/tab.fluent.css.js.map +1 -1
  313. package/components/tabs/themes/light/tab.indigo.css.js +1 -1
  314. package/components/tabs/themes/light/tab.indigo.css.js.map +1 -1
  315. package/components/tabs/themes/light/tab.material.css.js +1 -1
  316. package/components/tabs/themes/light/tab.material.css.js.map +1 -1
  317. package/components/tabs/themes/light/tab.shared.css.js +1 -1
  318. package/components/tabs/themes/light/tab.shared.css.js.map +1 -1
  319. package/components/tabs/themes/shared/tab/tab.bootstrap.css.js +1 -1
  320. package/components/tabs/themes/shared/tab/tab.bootstrap.css.js.map +1 -1
  321. package/components/tabs/themes/shared/tab/tab.common.css.js +1 -1
  322. package/components/tabs/themes/shared/tab/tab.common.css.js.map +1 -1
  323. package/components/tabs/themes/shared/tab/tab.fluent.css.js +1 -1
  324. package/components/tabs/themes/shared/tab/tab.fluent.css.js.map +1 -1
  325. package/components/tabs/themes/shared/tab/tab.indigo.css.js +1 -1
  326. package/components/tabs/themes/shared/tab/tab.indigo.css.js.map +1 -1
  327. package/components/tabs/themes/shared/tab/tab.material.css.js +1 -1
  328. package/components/tabs/themes/shared/tab/tab.material.css.js.map +1 -1
  329. package/components/tabs/themes/shared/tabs/tabs.bootstrap.css.js +1 -1
  330. package/components/tabs/themes/shared/tabs/tabs.bootstrap.css.js.map +1 -1
  331. package/components/tabs/themes/shared/tabs/tabs.common.css.js +1 -1
  332. package/components/tabs/themes/shared/tabs/tabs.common.css.js.map +1 -1
  333. package/components/tabs/themes/shared/tabs/tabs.indigo.css.js +1 -1
  334. package/components/tabs/themes/shared/tabs/tabs.indigo.css.js.map +1 -1
  335. package/components/tabs/themes/shared/tabs/tabs.material.css.js +1 -1
  336. package/components/tabs/themes/shared/tabs/tabs.material.css.js.map +1 -1
  337. package/components/tabs/themes/tabs.base.css.js +1 -1
  338. package/components/tabs/themes/tabs.base.css.js.map +1 -1
  339. package/components/textarea/themes/dark/textarea.indigo.css.js +1 -1
  340. package/components/textarea/themes/dark/textarea.indigo.css.js.map +1 -1
  341. package/components/textarea/themes/light/textarea.indigo.css.js +1 -1
  342. package/components/textarea/themes/light/textarea.indigo.css.js.map +1 -1
  343. package/components/textarea/themes/light/textarea.shared.css.js +1 -1
  344. package/components/textarea/themes/light/textarea.shared.css.js.map +1 -1
  345. package/components/textarea/themes/shared/textarea.bootstrap.css.js +1 -1
  346. package/components/textarea/themes/shared/textarea.bootstrap.css.js.map +1 -1
  347. package/components/textarea/themes/shared/textarea.common.css.js +1 -1
  348. package/components/textarea/themes/shared/textarea.common.css.js.map +1 -1
  349. package/components/textarea/themes/shared/textarea.fluent.css.js +1 -1
  350. package/components/textarea/themes/shared/textarea.fluent.css.js.map +1 -1
  351. package/components/textarea/themes/shared/textarea.indigo.css.js +1 -1
  352. package/components/textarea/themes/shared/textarea.indigo.css.js.map +1 -1
  353. package/components/textarea/themes/shared/textarea.material.css.js +1 -1
  354. package/components/textarea/themes/shared/textarea.material.css.js.map +1 -1
  355. package/components/theme-provider/theme-provider.d.ts +65 -0
  356. package/components/theme-provider/theme-provider.js +58 -0
  357. package/components/theme-provider/theme-provider.js.map +1 -0
  358. package/components/tile-manager/tile.js +6 -3
  359. package/components/tile-manager/tile.js.map +1 -1
  360. package/components/tree/themes/dark/container.bootstrap.css.js +1 -1
  361. package/components/tree/themes/dark/container.bootstrap.css.js.map +1 -1
  362. package/components/tree/themes/light/container.bootstrap.css.js +1 -1
  363. package/components/tree/themes/light/container.bootstrap.css.js.map +1 -1
  364. package/components/tree/tree-item.js +4 -0
  365. package/components/tree/tree-item.js.map +1 -1
  366. package/components/tree/tree.d.ts +14 -0
  367. package/components/tree/tree.js +23 -0
  368. package/components/tree/tree.js.map +1 -1
  369. package/components/validation-container/validation-container.d.ts +0 -1
  370. package/components/validation-container/validation-container.js +6 -9
  371. package/components/validation-container/validation-container.js.map +1 -1
  372. package/custom-elements.json +3176 -2986
  373. package/extras/chat-markdown-renderer.d.ts +72 -4
  374. package/extras/chat-markdown-renderer.js +19 -7
  375. package/extras/chat-markdown-renderer.js.map +1 -1
  376. package/igniteui-webcomponents.html-data.json +1 -1
  377. package/index.d.ts +5 -1
  378. package/index.js +4 -1
  379. package/index.js.map +1 -1
  380. package/package.json +9 -4
  381. package/themes/dark/bootstrap.css +1 -1
  382. package/themes/dark/fluent.css +1 -1
  383. package/themes/dark/indigo.css +1 -1
  384. package/themes/dark/material.css +1 -1
  385. package/themes/light/bootstrap.css +1 -1
  386. package/themes/light/fluent.css +1 -1
  387. package/themes/light/indigo.css +1 -1
  388. package/themes/light/material.css +1 -1
  389. package/theming/context.d.ts +36 -0
  390. package/theming/context.js +3 -0
  391. package/theming/context.js.map +1 -0
  392. package/theming/theming-controller.d.ts +7 -1
  393. package/theming/theming-controller.js +48 -12
  394. package/theming/theming-controller.js.map +1 -1
  395. package/theming/utils.d.ts +10 -0
  396. package/theming/utils.js +8 -42
  397. package/theming/utils.js.map +1 -1
  398. package/web-types.json +1 -1
  399. package/components/common/localization/intl-formatters.d.ts +0 -17
  400. package/components/common/localization/intl-formatters.js +0 -46
  401. package/components/common/localization/intl-formatters.js.map +0 -1
  402. package/components/validation-container/themes/dark/validator.bootstrap.css.d.ts +0 -1
  403. package/components/validation-container/themes/dark/validator.bootstrap.css.js +0 -3
  404. package/components/validation-container/themes/dark/validator.bootstrap.css.js.map +0 -1
  405. package/components/validation-container/themes/dark/validator.fluent.css.d.ts +0 -1
  406. package/components/validation-container/themes/dark/validator.fluent.css.js +0 -3
  407. package/components/validation-container/themes/dark/validator.fluent.css.js.map +0 -1
  408. package/components/validation-container/themes/dark/validator.indigo.css.d.ts +0 -1
  409. package/components/validation-container/themes/dark/validator.indigo.css.js +0 -3
  410. package/components/validation-container/themes/dark/validator.indigo.css.js.map +0 -1
  411. package/components/validation-container/themes/dark/validator.material.css.d.ts +0 -1
  412. package/components/validation-container/themes/dark/validator.material.css.js +0 -3
  413. package/components/validation-container/themes/dark/validator.material.css.js.map +0 -1
  414. package/components/validation-container/themes/light/validator.bootstrap.css.d.ts +0 -1
  415. package/components/validation-container/themes/light/validator.bootstrap.css.js +0 -3
  416. package/components/validation-container/themes/light/validator.bootstrap.css.js.map +0 -1
  417. package/components/validation-container/themes/light/validator.fluent.css.d.ts +0 -1
  418. package/components/validation-container/themes/light/validator.fluent.css.js +0 -3
  419. package/components/validation-container/themes/light/validator.fluent.css.js.map +0 -1
  420. package/components/validation-container/themes/light/validator.indigo.css.d.ts +0 -1
  421. package/components/validation-container/themes/light/validator.indigo.css.js +0 -3
  422. package/components/validation-container/themes/light/validator.indigo.css.js.map +0 -1
  423. package/components/validation-container/themes/light/validator.material.css.d.ts +0 -1
  424. package/components/validation-container/themes/light/validator.material.css.js +0 -3
  425. package/components/validation-container/themes/light/validator.material.css.js.map +0 -1
  426. package/components/validation-container/themes/light/validator.shared.css.d.ts +0 -1
  427. package/components/validation-container/themes/light/validator.shared.css.js +0 -3
  428. package/components/validation-container/themes/light/validator.shared.css.js.map +0 -1
  429. package/components/validation-container/themes/themes.d.ts +0 -2
  430. package/components/validation-container/themes/themes.js +0 -46
  431. package/components/validation-container/themes/themes.js.map +0 -1
@@ -1,49 +1,34 @@
1
1
  import { css } from 'lit';
2
- import { styles as bootstrapDark } from './dark/calendar.bootstrap.css.js';
3
- import { styles as fluentDark } from './dark/calendar.fluent.css.js';
4
- import { styles as indigoDark } from './dark/calendar.indigo.css.js';
5
- import { styles as materialDark } from './dark/calendar.material.css.js';
6
- import { styles as bootstrapLight } from './light/calendar.bootstrap.css.js';
7
- import { styles as fluentLight } from './light/calendar.fluent.css.js';
8
- import { styles as indigoLight } from './light/calendar.indigo.css.js';
9
- import { styles as materialLight } from './light/calendar.material.css.js';
10
- import { styles as shared } from './light/calendar.shared.css.js';
11
2
  import { styles as bootstrap } from './shared/bootstrap/year-month-view.bootstrap.css.js';
12
3
  import { styles as fluent } from './shared/fluent/year-month-view.fluent.css.js';
13
4
  import { styles as indigo } from './shared/indigo/year-month-view.indigo.css.js';
14
5
  import { styles as material } from './shared/material/year-month-view.material.css.js';
15
6
  const light = {
16
- shared: css `
17
- ${shared}
18
- `,
19
7
  bootstrap: css `
20
- ${bootstrap} ${bootstrapLight}
8
+ ${bootstrap}
21
9
  `,
22
10
  material: css `
23
- ${material} ${materialLight}
11
+ ${material}
24
12
  `,
25
13
  fluent: css `
26
- ${fluent} ${fluentLight}
14
+ ${fluent}
27
15
  `,
28
16
  indigo: css `
29
- ${indigo} ${indigoLight}
17
+ ${indigo}
30
18
  `,
31
19
  };
32
20
  const dark = {
33
- shared: css `
34
- ${shared}
35
- `,
36
21
  bootstrap: css `
37
- ${bootstrap} ${bootstrapDark}
22
+ ${bootstrap}
38
23
  `,
39
24
  material: css `
40
- ${material} ${materialDark}
25
+ ${material}
41
26
  `,
42
27
  fluent: css `
43
- ${fluent} ${fluentDark}
28
+ ${fluent}
44
29
  `,
45
30
  indigo: css `
46
- ${indigo} ${indigoDark}
31
+ ${indigo}
47
32
  `,
48
33
  };
49
34
  export const all = { light, dark };
@@ -1 +1 @@
1
- {"version":3,"file":"year-month.js","sourceRoot":"","sources":["../../../../src/components/calendar/themes/year-month.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAI1B,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAEzE,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAElE,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,qDAAqD,CAAC;AAC1F,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,+CAA+C,CAAC;AACjF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,+CAA+C,CAAC;AACjF,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAEvF,MAAM,KAAK,GAAG;IACZ,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;IACD,SAAS,EAAE,GAAG,CAAA;MACV,SAAS,IAAI,cAAc;GAC9B;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,QAAQ,IAAI,aAAa;GAC5B;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,WAAW;GACxB;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,WAAW;GACxB;CACF,CAAC;AAEF,MAAM,IAAI,GAAG;IACX,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;IACD,SAAS,EAAE,GAAG,CAAA;MACV,SAAS,IAAI,aAAa;GAC7B;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,QAAQ,IAAI,YAAY;GAC3B;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,UAAU;GACvB;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM,IAAI,UAAU;GACvB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,GAAG,GAAW,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\nimport type { Themes } from '../../../theming/types.js';\n// Dark Overrides\nimport { styles as bootstrapDark } from './dark/calendar.bootstrap.css.js';\nimport { styles as fluentDark } from './dark/calendar.fluent.css.js';\nimport { styles as indigoDark } from './dark/calendar.indigo.css.js';\nimport { styles as materialDark } from './dark/calendar.material.css.js';\n// Light Overrides\nimport { styles as bootstrapLight } from './light/calendar.bootstrap.css.js';\nimport { styles as fluentLight } from './light/calendar.fluent.css.js';\nimport { styles as indigoLight } from './light/calendar.indigo.css.js';\nimport { styles as materialLight } from './light/calendar.material.css.js';\nimport { styles as shared } from './light/calendar.shared.css.js';\n// Shared Styles\nimport { styles as bootstrap } from './shared/bootstrap/year-month-view.bootstrap.css.js';\nimport { styles as fluent } from './shared/fluent/year-month-view.fluent.css.js';\nimport { styles as indigo } from './shared/indigo/year-month-view.indigo.css.js';\nimport { styles as material } from './shared/material/year-month-view.material.css.js';\n\nconst light = {\n shared: css`\n ${shared}\n `,\n bootstrap: css`\n ${bootstrap} ${bootstrapLight}\n `,\n material: css`\n ${material} ${materialLight}\n `,\n fluent: css`\n ${fluent} ${fluentLight}\n `,\n indigo: css`\n ${indigo} ${indigoLight}\n `,\n};\n\nconst dark = {\n shared: css`\n ${shared}\n `,\n bootstrap: css`\n ${bootstrap} ${bootstrapDark}\n `,\n material: css`\n ${material} ${materialDark}\n `,\n fluent: css`\n ${fluent} ${fluentDark}\n `,\n indigo: css`\n ${indigo} ${indigoDark}\n `,\n};\n\nexport const all: Themes = { light, dark };\n"]}
1
+ {"version":3,"file":"year-month.js","sourceRoot":"","sources":["../../../../src/components/calendar/themes/year-month.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAG1B,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,qDAAqD,CAAC;AAC1F,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,+CAA+C,CAAC;AACjF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,+CAA+C,CAAC;AACjF,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAEvF,MAAM,KAAK,GAAG;IACZ,SAAS,EAAE,GAAG,CAAA;MACV,SAAS;GACZ;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,QAAQ;GACX;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;CACF,CAAC;AAEF,MAAM,IAAI,GAAG;IACX,SAAS,EAAE,GAAG,CAAA;MACV,SAAS;GACZ;IACD,QAAQ,EAAE,GAAG,CAAA;MACT,QAAQ;GACX;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;IACD,MAAM,EAAE,GAAG,CAAA;MACP,MAAM;GACT;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,GAAG,GAAW,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\nimport type { Themes } from '../../../theming/types.js';\nimport { styles as bootstrap } from './shared/bootstrap/year-month-view.bootstrap.css.js';\nimport { styles as fluent } from './shared/fluent/year-month-view.fluent.css.js';\nimport { styles as indigo } from './shared/indigo/year-month-view.indigo.css.js';\nimport { styles as material } from './shared/material/year-month-view.material.css.js';\n\nconst light = {\n bootstrap: css`\n ${bootstrap}\n `,\n material: css`\n ${material}\n `,\n fluent: css`\n ${fluent}\n `,\n indigo: css`\n ${indigo}\n `,\n};\n\nconst dark = {\n bootstrap: css`\n ${bootstrap}\n `,\n material: css`\n ${material}\n `,\n fluent: css`\n ${fluent}\n `,\n indigo: css`\n ${indigo}\n `,\n};\n\nexport const all: Themes = { light, dark };\n"]}
@@ -1,4 +1,4 @@
1
- import { LitElement } from 'lit';
1
+ import { LitElement, type TemplateResult } from 'lit';
2
2
  import type { Constructor } from '../../common/mixins/constructor.js';
3
3
  import { CalendarDay } from '../model.js';
4
4
  import type { IgcCalendarComponentEventMap } from '../types.js';
@@ -17,7 +17,7 @@ export default class IgcYearsViewComponent extends IgcYearsViewComponent_base {
17
17
  static styles: import("lit").CSSResult;
18
18
  static register(): void;
19
19
  private _value;
20
- private activeYear;
20
+ private _activeYear?;
21
21
  /** Тhe current value of the calendar. */
22
22
  set value(value: Date);
23
23
  get value(): Date;
@@ -28,10 +28,11 @@ export default class IgcYearsViewComponent extends IgcYearsViewComponent_base {
28
28
  yearsPerPage: number;
29
29
  constructor();
30
30
  connectedCallback(): void;
31
+ protected _handleInteraction(event: Event): void;
32
+ /** Focuses the active year element. */
31
33
  focusActiveDate(options?: FocusOptions): void;
32
- protected handleInteraction(event: Event): void;
33
- protected renderYear(year: number, now: CalendarDay): import("lit-html").TemplateResult<1>;
34
- protected render(): Generator<import("lit-html").TemplateResult<1>, void, unknown>;
34
+ protected _renderYear(year: number, now: CalendarDay): TemplateResult;
35
+ protected render(): Generator<TemplateResult>;
35
36
  }
36
37
  declare global {
37
38
  interface HTMLElementTagNameMap {
@@ -7,7 +7,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var IgcYearsViewComponent_1;
8
8
  import { html, LitElement } from 'lit';
9
9
  import { property, query, state } from 'lit/decorators.js';
10
- import { range } from 'lit/directives/range.js';
11
10
  import { addThemingController } from '../../../theming/theming-controller.js';
12
11
  import { addKeybindings } from '../../common/controllers/key-bindings.js';
13
12
  import { blazorIndirectRender } from '../../common/decorators/blazorIndirectRender.js';
@@ -38,26 +37,24 @@ let IgcYearsViewComponent = class IgcYearsViewComponent extends EventEmitterMixi
38
37
  this._value = CalendarDay.today;
39
38
  this.yearsPerPage = 15;
40
39
  addThemingController(this, all);
41
- addKeybindings(this).setActivateHandler(this.handleInteraction);
42
- addSafeEventListener(this, 'click', this.handleInteraction);
40
+ addKeybindings(this).setActivateHandler(this._handleInteraction);
41
+ addSafeEventListener(this, 'click', this._handleInteraction);
43
42
  }
44
43
  connectedCallback() {
45
44
  super.connectedCallback();
46
45
  this.role = 'grid';
47
46
  }
48
- focusActiveDate(options) {
49
- this.activeYear.focus(options);
50
- }
51
- handleInteraction(event) {
47
+ _handleInteraction(event) {
52
48
  const value = getViewElement(event);
53
49
  if (value !== -1) {
54
- this._value = this._value.set({
55
- year: value,
56
- });
50
+ this._value = this._value.set({ year: value });
57
51
  this.emitEvent('igcChange', { detail: this.value });
58
52
  }
59
53
  }
60
- renderYear(year, now) {
54
+ focusActiveDate(options) {
55
+ this._activeYear?.focus(options);
56
+ }
57
+ _renderYear(year, now) {
61
58
  const selected = this._value.year === year;
62
59
  const current = year === now.year;
63
60
  return html `
@@ -77,11 +74,11 @@ let IgcYearsViewComponent = class IgcYearsViewComponent extends EventEmitterMixi
77
74
  *render() {
78
75
  const now = CalendarDay.today;
79
76
  const { start } = getYearRange(this._value, this.yearsPerPage);
80
- const years = Array.from(range(start, start + this.yearsPerPage));
77
+ const years = Array.from({ length: this.yearsPerPage }, (_, i) => start + i);
81
78
  for (const row of chunk(years, YEARS_PER_ROW)) {
82
79
  yield html `
83
80
  <div part="years-row" role="row">
84
- ${row.map((year) => this.renderYear(year, now))}
81
+ ${row.map((year) => this._renderYear(year, now))}
85
82
  </div>
86
83
  `;
87
84
  }
@@ -92,7 +89,7 @@ __decorate([
92
89
  ], IgcYearsViewComponent.prototype, "_value", void 0);
93
90
  __decorate([
94
91
  query('[tabindex="0"]')
95
- ], IgcYearsViewComponent.prototype, "activeYear", void 0);
92
+ ], IgcYearsViewComponent.prototype, "_activeYear", void 0);
96
93
  __decorate([
97
94
  property({ attribute: false })
98
95
  ], IgcYearsViewComponent.prototype, "value", null);
@@ -1 +1 @@
1
- {"version":3,"file":"years-view.js","sourceRoot":"","sources":["../../../../src/components/calendar/years-view/years-view.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\nimport { property, query, state } from 'lit/decorators.js';\nimport { range } from 'lit/directives/range.js';\n\nimport { addThemingController } from '../../../theming/theming-controller.js';\nimport { addKeybindings } from '../../common/controllers/key-bindings.js';\nimport { blazorIndirectRender } from '../../common/decorators/blazorIndirectRender.js';\nimport { blazorSuppressComponent } from '../../common/decorators/blazorSuppressComponent.js';\nimport { registerComponent } from '../../common/definitions/register.js';\nimport type { Constructor } from '../../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../../common/mixins/event-emitter.js';\nimport { partMap } from '../../common/part-map.js';\nimport { addSafeEventListener, chunk } from '../../common/util.js';\nimport { getViewElement, getYearRange, YEARS_PER_ROW } from '../helpers.js';\nimport { CalendarDay } from '../model.js';\nimport { all } from '../themes/year-month.js';\nimport { styles } from '../themes/year-month-view.base.css.js';\nimport type { IgcCalendarComponentEventMap } from '../types.js';\n\n/**\n * Instantiate a years view as a separate component in the calendar.\n *\n * @element igc-years-view\n *\n * @csspart years-row - The years row container.\n * @csspart year - The year container.\n * @csspart year-inner - The inner year container.\n */\n@blazorIndirectRender\n@blazorSuppressComponent\nexport default class IgcYearsViewComponent extends EventEmitterMixin<\n IgcCalendarComponentEventMap,\n Constructor<LitElement>\n>(LitElement) {\n public static readonly tagName = 'igc-years-view';\n public static styles = styles;\n\n /* blazorSuppress */\n public static register() {\n registerComponent(IgcYearsViewComponent);\n }\n\n @state()\n private _value = CalendarDay.today;\n\n @query('[tabindex=\"0\"]')\n private activeYear!: HTMLElement;\n\n /** Тhe current value of the calendar. */\n @property({ attribute: false })\n public set value(value: Date) {\n this._value = CalendarDay.from(value);\n }\n\n public get value() {\n return this._value.native;\n }\n\n /**\n * Sets how many years are displayed on a single page.\n * @attr years-per-page\n */\n @property({ type: Number, attribute: 'years-per-page' })\n public yearsPerPage = 15;\n\n constructor() {\n super();\n\n addThemingController(this, all);\n addKeybindings(this).setActivateHandler(this.handleInteraction);\n addSafeEventListener(this, 'click', this.handleInteraction);\n }\n\n public override connectedCallback() {\n super.connectedCallback();\n this.role = 'grid';\n }\n\n public focusActiveDate(options?: FocusOptions) {\n this.activeYear.focus(options);\n }\n\n protected handleInteraction(event: Event) {\n const value = getViewElement(event);\n\n if (value !== -1) {\n this._value = this._value.set({\n year: value,\n });\n this.emitEvent('igcChange', { detail: this.value });\n }\n }\n\n protected renderYear(year: number, now: CalendarDay) {\n const selected = this._value.year === year;\n const current = year === now.year;\n\n return html`\n <span part=${partMap({ year: true, selected, current })}>\n <span\n role=\"gridcell\"\n data-value=${year}\n part=${partMap({ 'year-inner': true, selected, current })}\n aria-selected=${selected}\n tabindex=${selected ? 0 : -1}\n >\n ${year}\n </span>\n </span>\n `;\n }\n\n protected override *render() {\n const now = CalendarDay.today;\n const { start } = getYearRange(this._value, this.yearsPerPage);\n const years = Array.from(range(start, start + this.yearsPerPage));\n\n for (const row of chunk(years, YEARS_PER_ROW)) {\n yield html`\n <div part=\"years-row\" role=\"row\">\n ${row.map((year) => this.renderYear(year, now))}\n </div>\n `;\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-years-view': IgcYearsViewComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"years-view.js","sourceRoot":"","sources":["../../../../src/components/calendar/years-view/years-view.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement, type TemplateResult } from 'lit';\nimport { property, query, state } from 'lit/decorators.js';\nimport { addThemingController } from '../../../theming/theming-controller.js';\nimport { addKeybindings } from '../../common/controllers/key-bindings.js';\nimport { blazorIndirectRender } from '../../common/decorators/blazorIndirectRender.js';\nimport { blazorSuppressComponent } from '../../common/decorators/blazorSuppressComponent.js';\nimport { registerComponent } from '../../common/definitions/register.js';\nimport type { Constructor } from '../../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../../common/mixins/event-emitter.js';\nimport { partMap } from '../../common/part-map.js';\nimport { addSafeEventListener, chunk } from '../../common/util.js';\nimport { getViewElement, getYearRange, YEARS_PER_ROW } from '../helpers.js';\nimport { CalendarDay } from '../model.js';\nimport { all } from '../themes/year-month.js';\nimport { styles } from '../themes/year-month-view.base.css.js';\nimport type { IgcCalendarComponentEventMap } from '../types.js';\n\n/**\n * Instantiate a years view as a separate component in the calendar.\n *\n * @element igc-years-view\n *\n * @csspart years-row - The years row container.\n * @csspart year - The year container.\n * @csspart year-inner - The inner year container.\n */\n@blazorIndirectRender\n@blazorSuppressComponent\nexport default class IgcYearsViewComponent extends EventEmitterMixin<\n IgcCalendarComponentEventMap,\n Constructor<LitElement>\n>(LitElement) {\n public static readonly tagName = 'igc-years-view';\n public static styles = styles;\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(IgcYearsViewComponent);\n }\n\n //#region Internal State\n\n @state()\n private _value = CalendarDay.today;\n\n @query('[tabindex=\"0\"]')\n private _activeYear?: HTMLElement;\n\n //#endregion\n\n //#region Public attributes and properties\n\n /** Тhe current value of the calendar. */\n @property({ attribute: false })\n public set value(value: Date) {\n this._value = CalendarDay.from(value);\n }\n\n public get value(): Date {\n return this._value.native;\n }\n\n /**\n * Sets how many years are displayed on a single page.\n * @attr years-per-page\n */\n @property({ type: Number, attribute: 'years-per-page' })\n public yearsPerPage = 15;\n\n //#endregion\n\n //#region Lifecycle\n\n constructor() {\n super();\n\n addThemingController(this, all);\n addKeybindings(this).setActivateHandler(this._handleInteraction);\n addSafeEventListener(this, 'click', this._handleInteraction);\n }\n\n public override connectedCallback(): void {\n super.connectedCallback();\n this.role = 'grid';\n }\n\n //#endregion\n\n //#region Event Handlers\n\n protected _handleInteraction(event: Event): void {\n const value = getViewElement(event);\n\n if (value !== -1) {\n this._value = this._value.set({ year: value });\n this.emitEvent('igcChange', { detail: this.value });\n }\n }\n\n //#endregion\n\n //#region Public Methods\n\n /** Focuses the active year element. */\n public focusActiveDate(options?: FocusOptions): void {\n this._activeYear?.focus(options);\n }\n\n //#endregion\n\n protected _renderYear(year: number, now: CalendarDay): TemplateResult {\n const selected = this._value.year === year;\n const current = year === now.year;\n\n return html`\n <span part=${partMap({ year: true, selected, current })}>\n <span\n role=\"gridcell\"\n data-value=${year}\n part=${partMap({ 'year-inner': true, selected, current })}\n aria-selected=${selected}\n tabindex=${selected ? 0 : -1}\n >\n ${year}\n </span>\n </span>\n `;\n }\n\n protected override *render(): Generator<TemplateResult> {\n const now = CalendarDay.today;\n const { start } = getYearRange(this._value, this.yearsPerPage);\n const years = Array.from(\n { length: this.yearsPerPage },\n (_, i) => start + i\n );\n\n for (const row of chunk(years, YEARS_PER_ROW)) {\n yield html`\n <div part=\"years-row\" role=\"row\">\n ${row.map((year) => this._renderYear(year, now))}\n </div>\n `;\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-years-view': IgcYearsViewComponent;\n }\n}\n"]}
@@ -122,13 +122,14 @@ export default class IgcCarouselComponent extends IgcCarouselComponent_base {
122
122
  */
123
123
  animationType: HorizontalTransitionAnimation;
124
124
  /**
125
- * Gets/Sets the locale used for formatting and displaying the dates in the component.
125
+ * Gets/Sets the locale used for getting language, affecting resource strings.
126
126
  * @attr locale
127
127
  */
128
128
  set locale(value: string);
129
129
  get locale(): string;
130
130
  /**
131
131
  * The resource strings for localization.
132
+ * Currently only aria-label attributes are localized for the carousel.
132
133
  */
133
134
  set resourceStrings(value: ICarouselResourceStrings);
134
135
  get resourceStrings(): ICarouselResourceStrings;
@@ -1 +1 @@
1
- {"version":3,"file":"carousel.js","sourceRoot":"","sources":["../../../src/components/carousel/carousel.ts"],"names":[],"mappings":"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","sourcesContent":["import { ContextProvider } from '@lit/context';\nimport {\n CarouselResourceStringsEN,\n type ICarouselResourceStrings,\n} from 'igniteui-i18n-core';\nimport { html, LitElement, nothing } from 'lit';\nimport { property, queryAll, state } from 'lit/decorators.js';\nimport { cache } from 'lit/directives/cache.js';\nimport { createRef, ref } from 'lit/directives/ref.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport { addThemingController } from '../../theming/theming-controller.js';\nimport IgcButtonComponent from '../button/button.js';\nimport { carouselContext } from '../common/context.js';\nimport {\n addGesturesController,\n type SwipeEvent,\n} from '../common/controllers/gestures.js';\nimport { addInternalsController } from '../common/controllers/internals.js';\nimport {\n addKeybindings,\n arrowLeft,\n arrowRight,\n endKey,\n homeKey,\n} from '../common/controllers/key-bindings.js';\nimport {\n createMutationController,\n type MutationControllerParams,\n} from '../common/controllers/mutation-observer.js';\nimport {\n addSlotController,\n type InferSlotNames,\n type SlotChangeCallbackParameters,\n setSlots,\n} from '../common/controllers/slot.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport { addI18nController } from '../common/i18n/i18n-controller.js';\nimport type { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { partMap } from '../common/part-map.js';\nimport {\n addSafeEventListener,\n asNumber,\n findElementFromEventPath,\n first,\n formatString,\n isEmpty,\n isLTR,\n last,\n wrap,\n} from '../common/util.js';\nimport IgcIconComponent from '../icon/icon.js';\nimport type {\n CarouselIndicatorsOrientation,\n HorizontalTransitionAnimation,\n} from '../types.js';\nimport IgcCarouselIndicatorComponent from './carousel-indicator.js';\nimport IgcCarouselIndicatorContainerComponent from './carousel-indicator-container.js';\nimport IgcCarouselSlideComponent from './carousel-slide.js';\nimport { styles } from './themes/carousel.base.css.js';\nimport { all } from './themes/container.js';\nimport { styles as shared } from './themes/shared/carousel.common.css.js';\n\nexport interface IgcCarouselComponentEventMap {\n igcSlideChanged: CustomEvent<number>;\n igcPlaying: CustomEvent<void>;\n igcPaused: CustomEvent<void>;\n}\n\nlet nextId = 1;\nconst Slots = setSlots('indicator', 'previous-button', 'next-button');\n\n/**\n * The `igc-carousel` presents a set of `igc-carousel-slide`s by sequentially displaying a subset of one or more slides.\n *\n * @element igc-carousel\n *\n * @slot Default slot for the carousel. Any projected `igc-carousel-slide` components should be projected here.\n * @slot previous-button - Renders content inside the previous button.\n * @slot next-button - Renders content inside the next button.\n *\n * @fires igcSlideChanged - Emitted when the current active slide is changed either by user interaction or by the interval callback.\n * @fires igcPlaying - Emitted when the carousel enters playing state by a user interaction.\n * @fires igcPaused - Emitted when the carousel enters paused state by a user interaction.\n *\n * @csspart navigation - The wrapper container of each carousel navigation button.\n * @csspart previous - The wrapper container of the carousel previous navigation button.\n * @csspart next - The wrapper container of the carousel next navigation button.\n * @csspart dot - The carousel dot indicator container.\n * @csspart active - The carousel active dot indicator container.\n * @csspart label - The label container of the carousel indicators.\n * @csspart start - The wrapping container of all carousel indicators when indicators-orientation is set to start.\n */\nexport default class IgcCarouselComponent extends EventEmitterMixin<\n IgcCarouselComponentEventMap,\n Constructor<LitElement>\n>(LitElement) {\n public static styles = [styles, shared];\n public static readonly tagName = 'igc-carousel';\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(\n IgcCarouselComponent,\n IgcCarouselIndicatorComponent,\n IgcCarouselIndicatorContainerComponent,\n IgcCarouselSlideComponent,\n IgcIconComponent,\n IgcButtonComponent\n );\n }\n\n //#region Internal state\n\n private readonly _carouselId = `igc-carousel-${nextId++}`;\n private _paused = false;\n private _lastInterval!: ReturnType<typeof setInterval> | null;\n private _hasKeyboardInteractionOnIndicators = false;\n private _hasPointerInteraction = false;\n private _hasInnerFocus = false;\n\n private _slides: IgcCarouselSlideComponent[] = [];\n private _projectedIndicators: IgcCarouselIndicatorComponent[] = [];\n\n @state()\n private _activeSlide!: IgcCarouselSlideComponent;\n\n @state()\n private _playing = false;\n\n private readonly _slots = addSlotController(this, {\n slots: Slots,\n onChange: this._handleSlotChange,\n initial: true,\n });\n\n private readonly _i18nController =\n addI18nController<ICarouselResourceStrings>(this, {\n defaultEN: CarouselResourceStringsEN,\n });\n\n private readonly _context = new ContextProvider(this, {\n context: carouselContext,\n initialValue: this,\n });\n\n @queryAll(IgcCarouselIndicatorComponent.tagName)\n private readonly _defaultIndicators!: NodeListOf<IgcCarouselIndicatorComponent>;\n\n private readonly _carouselSlidesContainerRef = createRef<HTMLDivElement>();\n private readonly _indicatorsContainerRef = createRef<HTMLDivElement>();\n private readonly _prevButtonRef = createRef<IgcButtonComponent>();\n private readonly _nextButtonRef = createRef<IgcButtonComponent>();\n\n private get _hasProjectedIndicators(): boolean {\n return !isEmpty(this._projectedIndicators);\n }\n\n private get _showIndicatorsLabel(): boolean {\n return this.total > this.maximumIndicatorsCount;\n }\n\n private get _nextIndex(): number {\n return wrap(0, this.total - 1, this.current + 1);\n }\n\n private get _previousIndex(): number {\n return wrap(0, this.total - 1, this.current - 1);\n }\n\n //#endregion\n\n //#region Public attributes and properties\n\n /**\n * Whether the carousel should skip rotating to the first slide after it reaches the last.\n * @attr disable-loop\n */\n @property({ type: Boolean, reflect: true, attribute: 'disable-loop' })\n public disableLoop = false;\n\n /**\n * Whether the carousel should ignore use interactions and not pause on them.\n * @attr disable-pause-on-interaction\n */\n @property({\n type: Boolean,\n reflect: true,\n attribute: 'disable-pause-on-interaction',\n })\n public disablePauseOnInteraction = false;\n\n /**\n * Whether the carousel should skip rendering of the default navigation buttons.\n * @attr hide-navigation\n */\n @property({ type: Boolean, reflect: true, attribute: 'hide-navigation' })\n public hideNavigation = false;\n\n /**\n * Whether the carousel should render the indicator controls (dots).\n * @attr hide-indicators\n */\n @property({ type: Boolean, reflect: true, attribute: 'hide-indicators' })\n public hideIndicators = false;\n\n /**\n * Whether the carousel has vertical alignment.\n * @attr vertical\n */\n @property({ type: Boolean, reflect: true })\n public vertical = false;\n\n /**\n * Sets the orientation of the indicator controls (dots).\n * @attr indicators-orientation\n */\n @property({ attribute: 'indicators-orientation' })\n public indicatorsOrientation: CarouselIndicatorsOrientation = 'end';\n\n /**\n * The format used to set the aria-label on the carousel indicators.\n * Instances of '{0}' will be replaced with the index of the corresponding slide.\n *\n * @attr indicators-label-format\n */\n @property({ attribute: 'indicators-label-format' })\n public set indicatorsLabelFormat(value: string) {\n this._indicatorsLabelFormat = value;\n }\n\n public get indicatorsLabelFormat() {\n return (\n this._indicatorsLabelFormat ??\n `${this.resourceStrings.carousel_slide} {0}`\n );\n }\n private _indicatorsLabelFormat: string | undefined;\n\n /**\n * The format used to set the aria-label on the carousel slides and the text displayed\n * when the number of indicators is greater than tha maximum indicator count.\n * Instances of '{0}' will be replaced with the index of the corresponding slide.\n * Instances of '{1}' will be replaced with the total amount of slides.\n *\n * @attr slides-label-format\n */\n @property({ attribute: 'slides-label-format' })\n public set slidesLabelFormat(value: string) {\n this._slidesLabelFormat = value;\n }\n\n public get slidesLabelFormat() {\n return (\n this._slidesLabelFormat ?? `{0} ${this.resourceStrings.carousel_of} {1}`\n );\n }\n\n private _slidesLabelFormat: string | undefined;\n\n /**\n * The duration in milliseconds between changing the active slide.\n * @attr interval\n */\n @property({ type: Number })\n public interval: number | undefined;\n\n /**\n * Controls the maximum indicator controls (dots) that can be shown. Default value is `10`.\n * @attr maximum-indicators-count\n */\n @property({ type: Number, attribute: 'maximum-indicators-count' })\n public maximumIndicatorsCount = 10;\n\n /**\n * The animation type.\n * @attr animation-type\n */\n @property({ attribute: 'animation-type' })\n public animationType: HorizontalTransitionAnimation = 'slide';\n\n /**\n * Gets/Sets the locale used for formatting and displaying the dates in the component.\n * @attr locale\n */\n @property()\n public set locale(value: string) {\n this._i18nController.locale = value;\n }\n\n public get locale() {\n return this._i18nController.locale;\n }\n\n /**\n * The resource strings for localization.\n */\n @property({ attribute: false })\n public set resourceStrings(value: ICarouselResourceStrings) {\n this._i18nController.resourceStrings = value;\n }\n\n public get resourceStrings(): ICarouselResourceStrings {\n return this._i18nController.resourceStrings;\n }\n\n /* blazorSuppress */\n /**\n * The slides of the carousel.\n */\n public get slides(): IgcCarouselSlideComponent[] {\n return Array.from(this._slides);\n }\n\n /**\n * The total number of slides.\n */\n public get total(): number {\n return this._slides.length;\n }\n\n /**\n * The index of the current active slide.\n */\n public get current(): number {\n return Math.max(0, this._slides.indexOf(this._activeSlide));\n }\n\n /**\n * Whether the carousel is in playing state.\n */\n public get isPlaying(): boolean {\n return this._playing;\n }\n\n /**\n * Whether the carousel in in paused state.\n */\n public get isPaused(): boolean {\n return this._paused;\n }\n\n //#endregion\n\n //#region Watchers\n\n @watch('animationType')\n @watch('slidesLabelFormat')\n @watch('indicatorsLabelFormat')\n protected _contextChanged(): void {\n this._context.setValue(this, true);\n }\n\n @watch('interval')\n protected _intervalChange(): void {\n if (!this.isPlaying) {\n this._playing = true;\n }\n\n this._restartInterval();\n }\n\n //#endregion\n\n //#region Life-cycle hooks and observer callback\n\n constructor() {\n super();\n\n addInternalsController(this, {\n initialARIA: {\n role: 'region',\n ariaRoleDescription: 'carousel',\n },\n });\n\n addThemingController(this, all);\n\n addSafeEventListener(this, 'pointerenter', this._handlePointerInteraction);\n addSafeEventListener(this, 'pointerleave', this._handlePointerInteraction);\n addSafeEventListener(this, 'focusin', this._handleFocusInteraction);\n addSafeEventListener(this, 'focusout', this._handleFocusInteraction);\n\n addGesturesController(this, {\n ref: this._carouselSlidesContainerRef,\n touchOnly: true,\n })\n .set('swipe-left', this._handleHorizontalSwipe)\n .set('swipe-right', this._handleHorizontalSwipe)\n .set('swipe-up', this._handleVerticalSwipe)\n .set('swipe-down', this._handleVerticalSwipe);\n\n addKeybindings(this, {\n ref: this._indicatorsContainerRef,\n })\n .set(arrowLeft, this._handleArrowLeft)\n .set(arrowRight, this._handleArrowRight)\n .set(homeKey, this._handleHomeKey)\n .set(endKey, this._handleEndKey);\n\n addKeybindings(this, {\n ref: this._prevButtonRef,\n }).setActivateHandler(this._handleNavigationInteractionPrevious);\n\n addKeybindings(this, {\n ref: this._nextButtonRef,\n }).setActivateHandler(this._handleNavigationInteractionNext);\n\n createMutationController(this, {\n callback: this._observerCallback,\n filter: [IgcCarouselSlideComponent.tagName],\n config: {\n attributeFilter: ['active'],\n childList: true,\n subtree: true,\n },\n });\n }\n\n protected override async firstUpdated(): Promise<void> {\n await this.updateComplete;\n\n if (!isEmpty(this._slides)) {\n this._activateSlide(\n this._slides.findLast((slide) => slide.active) ?? first(this._slides)\n );\n }\n }\n\n private _observerCallback({\n changes: { added, attributes },\n }: MutationControllerParams<IgcCarouselSlideComponent>) {\n const activeSlides = this._slides.filter((slide) => slide.active);\n\n if (activeSlides.length <= 1) {\n return;\n }\n\n const idx = this._slides.indexOf(\n added.length ? last(added).node : last(attributes).node\n );\n\n for (const [i, slide] of this._slides.entries()) {\n if (slide.active && i !== idx) {\n slide.active = false;\n }\n }\n\n this._activateSlide(this._slides[idx]);\n }\n\n //#endregion\n\n //#region Event listeners\n\n private _handleSlotChange(\n params: SlotChangeCallbackParameters<InferSlotNames<typeof Slots>>\n ): void {\n if (params.isDefault || params.isInitial) {\n this._slides = this._slots.getAssignedElements('[default]', {\n selector: IgcCarouselSlideComponent.tagName,\n });\n }\n\n if (params.slot === 'indicator') {\n this._projectedIndicators = this._slots.getAssignedElements('indicator', {\n selector: IgcCarouselIndicatorComponent.tagName,\n });\n }\n }\n\n private _handlePointerInteraction(event: PointerEvent): void {\n this._hasPointerInteraction = event.type === 'pointerenter';\n\n if (!this._hasInnerFocus) {\n this._handlePauseOnInteraction();\n }\n }\n\n private _handleFocusInteraction(event: FocusEvent): void {\n // focusin - element that lost focus\n // focusout - element that gained focus\n const node = event.relatedTarget as Node;\n\n if (this.contains(node)) {\n return;\n }\n\n this._hasInnerFocus = event.type === 'focusin';\n\n if (!this._hasPointerInteraction) {\n this._handlePauseOnInteraction();\n }\n }\n\n private async _handleIndicatorClick(event: PointerEvent): Promise<void> {\n const indicator = findElementFromEventPath<IgcCarouselIndicatorComponent>(\n IgcCarouselIndicatorComponent.tagName,\n event\n )!;\n\n const index = this._hasProjectedIndicators\n ? this._projectedIndicators.indexOf(indicator)\n : Array.from(this._defaultIndicators).indexOf(indicator);\n\n this._handleInteraction(() =>\n this.select(this._slides[index], index > this.current ? 'next' : 'prev')\n );\n }\n\n //#endregion\n\n //#region Keyboard event listeners\n\n private async _handleArrowLeft(): Promise<void> {\n this._hasKeyboardInteractionOnIndicators = true;\n this._handleInteraction(isLTR(this) ? this.prev : this.next);\n }\n\n private async _handleArrowRight(): Promise<void> {\n this._hasKeyboardInteractionOnIndicators = true;\n this._handleInteraction(isLTR(this) ? this.next : this.prev);\n }\n\n private async _handleHomeKey(): Promise<void> {\n this._hasKeyboardInteractionOnIndicators = true;\n this._handleInteraction(() =>\n this.select(isLTR(this) ? first(this._slides) : last(this._slides))\n );\n }\n\n private async _handleEndKey(): Promise<void> {\n this._hasKeyboardInteractionOnIndicators = true;\n this._handleInteraction(() =>\n this.select(isLTR(this) ? last(this._slides) : first(this._slides))\n );\n }\n\n //#endregion\n\n //#region Gestures event listeners\n\n private _handleVerticalSwipe({ data: { direction } }: SwipeEvent): void {\n if (this.vertical) {\n this._handleInteraction(direction === 'up' ? this.next : this.prev);\n }\n }\n\n private _handleHorizontalSwipe({ data: { direction } }: SwipeEvent): void {\n if (!this.vertical) {\n const callback = () => {\n if (isLTR(this)) {\n return direction === 'left' ? this.next : this.prev;\n }\n return direction === 'left' ? this.prev : this.next;\n };\n\n this._handleInteraction(callback());\n }\n }\n\n //#endregion\n\n //#region Internal API\n\n private _handleNavigationInteractionNext(): void {\n this._handleInteraction(this.next);\n }\n\n private _handleNavigationInteractionPrevious(): void {\n this._handleInteraction(this.prev);\n }\n\n private async _handleInteraction(\n callback: () => Promise<boolean>\n ): Promise<void> {\n if (this.interval) {\n this._resetInterval();\n }\n\n if (await callback.call(this)) {\n this.emitEvent('igcSlideChanged', { detail: this.current });\n }\n\n if (this.interval) {\n this._restartInterval();\n }\n }\n\n private _handlePauseOnInteraction(): void {\n if (!this.interval || this.disablePauseOnInteraction) return;\n\n if (this.isPlaying) {\n this.pause();\n this.emitEvent('igcPaused');\n } else {\n this.play();\n this.emitEvent('igcPlaying');\n }\n }\n\n private _activateSlide(slide: IgcCarouselSlideComponent): void {\n if (this._activeSlide) {\n this._activeSlide.active = false;\n }\n\n this._activeSlide = slide;\n this._activeSlide.active = true;\n\n if (this._hasKeyboardInteractionOnIndicators) {\n this._hasProjectedIndicators\n ? this._projectedIndicators[this.current].focus()\n : this._defaultIndicators[this.current].focus();\n\n this._hasKeyboardInteractionOnIndicators = false;\n }\n }\n\n private _updateProjectedIndicators(): void {\n for (const [idx, slide] of this._slides.entries()) {\n const indicator = this._projectedIndicators[idx];\n indicator.active = slide.active;\n indicator.index = idx;\n }\n\n if (this._activeSlide) {\n this.setAttribute('aria-controls', this._activeSlide.id);\n }\n }\n\n private _resetInterval(): void {\n if (this._lastInterval) {\n clearInterval(this._lastInterval);\n this._lastInterval = null;\n }\n }\n\n private _restartInterval(): void {\n this._resetInterval();\n\n if (asNumber(this.interval) > 0) {\n this._lastInterval = setInterval(() => {\n if (\n this.isPlaying &&\n this.total &&\n !(this.disableLoop && this._nextIndex === 0)\n ) {\n this.select(this.slides[this._nextIndex], 'next');\n this.emitEvent('igcSlideChanged', { detail: this.current });\n } else {\n this.pause();\n }\n }, this.interval);\n }\n }\n\n private async _animateSlides(\n nextSlide: IgcCarouselSlideComponent,\n currentSlide: IgcCarouselSlideComponent,\n dir: 'next' | 'prev'\n ): Promise<void> {\n if (dir === 'next') {\n // Animate slides in next direction\n currentSlide.previous = true;\n currentSlide.toggleAnimation('out');\n this._activateSlide(nextSlide);\n await nextSlide.toggleAnimation('in');\n currentSlide.previous = false;\n } else {\n // Animate slides in previous direction\n currentSlide.previous = true;\n currentSlide.toggleAnimation('in', 'reverse');\n this._activateSlide(nextSlide);\n await nextSlide.toggleAnimation('out', 'reverse');\n currentSlide.previous = false;\n }\n }\n\n //#endregion\n\n //#region Public API\n\n /**\n * Resumes playing of the carousel slides.\n */\n public play(): void {\n if (!this.isPlaying) {\n this._paused = false;\n this._playing = true;\n this._restartInterval();\n }\n }\n\n /**\n * Pauses the carousel rotation of slides.\n */\n public pause(): void {\n if (this.isPlaying) {\n this._playing = false;\n this._paused = true;\n this._resetInterval();\n }\n }\n\n /**\n * Switches to the next slide, runs any animations, and returns if the operation was successful.\n */\n public async next(): Promise<boolean> {\n if (this.disableLoop && this._nextIndex === 0) {\n this.pause();\n return false;\n }\n\n return await this.select(this._slides[this._nextIndex], 'next');\n }\n\n /**\n * Switches to the previous slide, runs any animations, and returns if the operation was successful.\n */\n public async prev(): Promise<boolean> {\n if (this.disableLoop && this._previousIndex === this.total - 1) {\n this.pause();\n return false;\n }\n\n return await this.select(this._slides[this._previousIndex], 'prev');\n }\n\n /* blazorSuppress */\n /**\n * Switches to the passed-in slide, runs any animations, and returns if the operation was successful.\n */\n public async select(\n slide: IgcCarouselSlideComponent,\n animationDirection?: 'next' | 'prev'\n ): Promise<boolean>;\n /**\n * Switches to slide by index, runs any animations, and returns if the operation was successful.\n */\n public async select(\n index: number,\n animationDirection?: 'next' | 'prev'\n ): Promise<boolean>;\n public async select(\n slideOrIndex: IgcCarouselSlideComponent | number,\n animationDirection?: 'next' | 'prev'\n ): Promise<boolean> {\n let index: number;\n let slide: IgcCarouselSlideComponent | undefined;\n\n if (typeof slideOrIndex === 'number') {\n index = slideOrIndex;\n slide = this._slides.at(index);\n } else {\n slide = slideOrIndex;\n index = this._slides.indexOf(slide);\n }\n\n if (index === this.current || index === -1 || !slide) {\n return false;\n }\n\n const dir = animationDirection ?? (index > this.current ? 'next' : 'prev');\n\n await this._animateSlides(slide, this._activeSlide, dir);\n return true;\n }\n\n //#endregion\n\n //#region Template renderers\n\n private _renderNavigation() {\n return html`\n <igc-button\n ${ref(this._prevButtonRef)}\n type=\"button\"\n part=\"navigation previous\"\n aria-label=${this.resourceStrings.carousel_previous_slide ??\n 'previous slide'}\n aria-controls=${this._carouselId}\n ?disabled=${this.disableLoop && this.current === 0}\n @click=${this._handleNavigationInteractionPrevious}\n >\n <slot name=\"previous-button\">\n <igc-icon\n name=\"carousel_prev\"\n collection=\"default\"\n aria-hidden=\"true\"\n ></igc-icon>\n </slot>\n </igc-button>\n\n <igc-button\n ${ref(this._nextButtonRef)}\n type=\"button\"\n part=\"navigation next\"\n aria-label=${this.resourceStrings.carousel_next_slide ?? 'next slide'}\n aria-controls=${this._carouselId}\n ?disabled=${this.disableLoop && this.current === this.total - 1}\n @click=${this._handleNavigationInteractionNext}\n >\n <slot name=\"next-button\">\n <igc-icon\n name=\"carousel_next\"\n collection=\"default\"\n aria-hidden=\"true\"\n ></igc-icon>\n </slot>\n </igc-button>\n `;\n }\n\n protected *_renderIndicators() {\n for (const [i, slide] of this._slides.entries()) {\n const forward = slide.active ? 'visible' : 'hidden';\n const backward = slide.active ? 'hidden' : 'visible';\n\n yield html`\n <igc-carousel-indicator\n exportparts=\"indicator, active, inactive\"\n .active=${slide.active}\n .index=${i}\n >\n <div\n part=\"dot\"\n style=${styleMap({ visibility: backward, zIndex: 1 })}\n ></div>\n <div\n part=\"dot active\"\n slot=\"active\"\n style=${styleMap({ visibility: forward })}\n ></div>\n </igc-carousel-indicator>\n `;\n }\n }\n\n private _renderIndicatorContainer() {\n const parts = {\n indicators: true,\n start: this.indicatorsOrientation === 'start',\n };\n\n return html`\n <igc-carousel-indicator-container>\n <div\n ${ref(this._indicatorsContainerRef)}\n role=\"tablist\"\n part=${partMap(parts)}\n >\n <slot name=\"indicator\" @click=${this._handleIndicatorClick}>\n ${cache(\n this._hasProjectedIndicators\n ? this._updateProjectedIndicators()\n : this._renderIndicators()\n )}\n </slot>\n </div>\n </igc-carousel-indicator-container>\n `;\n }\n\n private _renderLabel() {\n const parts = {\n label: true,\n indicators: true,\n start: this.indicatorsOrientation === 'start',\n };\n const value = formatString(\n this.slidesLabelFormat,\n this.current + 1,\n this.total\n );\n\n return html`\n <div part=${partMap(parts)}>\n <span>${value}</span>\n </div>\n `;\n }\n\n protected override render() {\n const hasNoIndicators = this.hideIndicators || this._showIndicatorsLabel;\n const hasLabel = !this.hideIndicators && this._showIndicatorsLabel;\n\n return html`\n <section>\n ${cache(this.hideNavigation ? nothing : this._renderNavigation())}\n ${hasNoIndicators ? nothing : this._renderIndicatorContainer()}\n ${hasLabel ? this._renderLabel() : nothing}\n <div\n ${ref(this._carouselSlidesContainerRef)}\n id=${this._carouselId}\n aria-live=${this.interval && this._playing ? 'off' : 'polite'}\n >\n <slot></slot>\n </div>\n </section>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-carousel': IgcCarouselComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"carousel.js","sourceRoot":"","sources":["../../../src/components/carousel/carousel.ts"],"names":[],"mappings":"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","sourcesContent":["import { ContextProvider } from '@lit/context';\nimport {\n CarouselResourceStringsEN,\n type ICarouselResourceStrings,\n} from 'igniteui-i18n-core';\nimport { html, LitElement, nothing } from 'lit';\nimport { property, queryAll, state } from 'lit/decorators.js';\nimport { cache } from 'lit/directives/cache.js';\nimport { createRef, ref } from 'lit/directives/ref.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport { addThemingController } from '../../theming/theming-controller.js';\nimport IgcButtonComponent from '../button/button.js';\nimport { carouselContext } from '../common/context.js';\nimport {\n addGesturesController,\n type SwipeEvent,\n} from '../common/controllers/gestures.js';\nimport { addInternalsController } from '../common/controllers/internals.js';\nimport {\n addKeybindings,\n arrowLeft,\n arrowRight,\n endKey,\n homeKey,\n} from '../common/controllers/key-bindings.js';\nimport {\n createMutationController,\n type MutationControllerParams,\n} from '../common/controllers/mutation-observer.js';\nimport {\n addSlotController,\n type InferSlotNames,\n type SlotChangeCallbackParameters,\n setSlots,\n} from '../common/controllers/slot.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport { addI18nController } from '../common/i18n/i18n-controller.js';\nimport type { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { partMap } from '../common/part-map.js';\nimport {\n addSafeEventListener,\n asNumber,\n findElementFromEventPath,\n first,\n formatString,\n isEmpty,\n isLTR,\n last,\n wrap,\n} from '../common/util.js';\nimport IgcIconComponent from '../icon/icon.js';\nimport type {\n CarouselIndicatorsOrientation,\n HorizontalTransitionAnimation,\n} from '../types.js';\nimport IgcCarouselIndicatorComponent from './carousel-indicator.js';\nimport IgcCarouselIndicatorContainerComponent from './carousel-indicator-container.js';\nimport IgcCarouselSlideComponent from './carousel-slide.js';\nimport { styles } from './themes/carousel.base.css.js';\nimport { all } from './themes/container.js';\nimport { styles as shared } from './themes/shared/carousel.common.css.js';\n\nexport interface IgcCarouselComponentEventMap {\n igcSlideChanged: CustomEvent<number>;\n igcPlaying: CustomEvent<void>;\n igcPaused: CustomEvent<void>;\n}\n\nlet nextId = 1;\nconst Slots = setSlots('indicator', 'previous-button', 'next-button');\n\n/**\n * The `igc-carousel` presents a set of `igc-carousel-slide`s by sequentially displaying a subset of one or more slides.\n *\n * @element igc-carousel\n *\n * @slot Default slot for the carousel. Any projected `igc-carousel-slide` components should be projected here.\n * @slot previous-button - Renders content inside the previous button.\n * @slot next-button - Renders content inside the next button.\n *\n * @fires igcSlideChanged - Emitted when the current active slide is changed either by user interaction or by the interval callback.\n * @fires igcPlaying - Emitted when the carousel enters playing state by a user interaction.\n * @fires igcPaused - Emitted when the carousel enters paused state by a user interaction.\n *\n * @csspart navigation - The wrapper container of each carousel navigation button.\n * @csspart previous - The wrapper container of the carousel previous navigation button.\n * @csspart next - The wrapper container of the carousel next navigation button.\n * @csspart dot - The carousel dot indicator container.\n * @csspart active - The carousel active dot indicator container.\n * @csspart label - The label container of the carousel indicators.\n * @csspart start - The wrapping container of all carousel indicators when indicators-orientation is set to start.\n */\nexport default class IgcCarouselComponent extends EventEmitterMixin<\n IgcCarouselComponentEventMap,\n Constructor<LitElement>\n>(LitElement) {\n public static styles = [styles, shared];\n public static readonly tagName = 'igc-carousel';\n\n /* blazorSuppress */\n public static register(): void {\n registerComponent(\n IgcCarouselComponent,\n IgcCarouselIndicatorComponent,\n IgcCarouselIndicatorContainerComponent,\n IgcCarouselSlideComponent,\n IgcIconComponent,\n IgcButtonComponent\n );\n }\n\n //#region Internal state\n\n private readonly _carouselId = `igc-carousel-${nextId++}`;\n private _paused = false;\n private _lastInterval!: ReturnType<typeof setInterval> | null;\n private _hasKeyboardInteractionOnIndicators = false;\n private _hasPointerInteraction = false;\n private _hasInnerFocus = false;\n\n private _slides: IgcCarouselSlideComponent[] = [];\n private _projectedIndicators: IgcCarouselIndicatorComponent[] = [];\n\n @state()\n private _activeSlide!: IgcCarouselSlideComponent;\n\n @state()\n private _playing = false;\n\n private readonly _slots = addSlotController(this, {\n slots: Slots,\n onChange: this._handleSlotChange,\n initial: true,\n });\n\n private readonly _i18nController =\n addI18nController<ICarouselResourceStrings>(this, {\n defaultEN: CarouselResourceStringsEN,\n });\n\n private readonly _context = new ContextProvider(this, {\n context: carouselContext,\n initialValue: this,\n });\n\n @queryAll(IgcCarouselIndicatorComponent.tagName)\n private readonly _defaultIndicators!: NodeListOf<IgcCarouselIndicatorComponent>;\n\n private readonly _carouselSlidesContainerRef = createRef<HTMLDivElement>();\n private readonly _indicatorsContainerRef = createRef<HTMLDivElement>();\n private readonly _prevButtonRef = createRef<IgcButtonComponent>();\n private readonly _nextButtonRef = createRef<IgcButtonComponent>();\n\n private get _hasProjectedIndicators(): boolean {\n return !isEmpty(this._projectedIndicators);\n }\n\n private get _showIndicatorsLabel(): boolean {\n return this.total > this.maximumIndicatorsCount;\n }\n\n private get _nextIndex(): number {\n return wrap(0, this.total - 1, this.current + 1);\n }\n\n private get _previousIndex(): number {\n return wrap(0, this.total - 1, this.current - 1);\n }\n\n //#endregion\n\n //#region Public attributes and properties\n\n /**\n * Whether the carousel should skip rotating to the first slide after it reaches the last.\n * @attr disable-loop\n */\n @property({ type: Boolean, reflect: true, attribute: 'disable-loop' })\n public disableLoop = false;\n\n /**\n * Whether the carousel should ignore use interactions and not pause on them.\n * @attr disable-pause-on-interaction\n */\n @property({\n type: Boolean,\n reflect: true,\n attribute: 'disable-pause-on-interaction',\n })\n public disablePauseOnInteraction = false;\n\n /**\n * Whether the carousel should skip rendering of the default navigation buttons.\n * @attr hide-navigation\n */\n @property({ type: Boolean, reflect: true, attribute: 'hide-navigation' })\n public hideNavigation = false;\n\n /**\n * Whether the carousel should render the indicator controls (dots).\n * @attr hide-indicators\n */\n @property({ type: Boolean, reflect: true, attribute: 'hide-indicators' })\n public hideIndicators = false;\n\n /**\n * Whether the carousel has vertical alignment.\n * @attr vertical\n */\n @property({ type: Boolean, reflect: true })\n public vertical = false;\n\n /**\n * Sets the orientation of the indicator controls (dots).\n * @attr indicators-orientation\n */\n @property({ attribute: 'indicators-orientation' })\n public indicatorsOrientation: CarouselIndicatorsOrientation = 'end';\n\n /**\n * The format used to set the aria-label on the carousel indicators.\n * Instances of '{0}' will be replaced with the index of the corresponding slide.\n *\n * @attr indicators-label-format\n */\n @property({ attribute: 'indicators-label-format' })\n public set indicatorsLabelFormat(value: string) {\n this._indicatorsLabelFormat = value;\n }\n\n public get indicatorsLabelFormat() {\n return (\n this._indicatorsLabelFormat ??\n `${this.resourceStrings.carousel_slide} {0}`\n );\n }\n private _indicatorsLabelFormat: string | undefined;\n\n /**\n * The format used to set the aria-label on the carousel slides and the text displayed\n * when the number of indicators is greater than tha maximum indicator count.\n * Instances of '{0}' will be replaced with the index of the corresponding slide.\n * Instances of '{1}' will be replaced with the total amount of slides.\n *\n * @attr slides-label-format\n */\n @property({ attribute: 'slides-label-format' })\n public set slidesLabelFormat(value: string) {\n this._slidesLabelFormat = value;\n }\n\n public get slidesLabelFormat() {\n return (\n this._slidesLabelFormat ?? `{0} ${this.resourceStrings.carousel_of} {1}`\n );\n }\n\n private _slidesLabelFormat: string | undefined;\n\n /**\n * The duration in milliseconds between changing the active slide.\n * @attr interval\n */\n @property({ type: Number })\n public interval: number | undefined;\n\n /**\n * Controls the maximum indicator controls (dots) that can be shown. Default value is `10`.\n * @attr maximum-indicators-count\n */\n @property({ type: Number, attribute: 'maximum-indicators-count' })\n public maximumIndicatorsCount = 10;\n\n /**\n * The animation type.\n * @attr animation-type\n */\n @property({ attribute: 'animation-type' })\n public animationType: HorizontalTransitionAnimation = 'slide';\n\n /**\n * Gets/Sets the locale used for getting language, affecting resource strings.\n * @attr locale\n */\n @property()\n public set locale(value: string) {\n this._i18nController.locale = value;\n }\n\n public get locale() {\n return this._i18nController.locale;\n }\n\n /**\n * The resource strings for localization.\n * Currently only aria-label attributes are localized for the carousel.\n */\n @property({ attribute: false })\n public set resourceStrings(value: ICarouselResourceStrings) {\n this._i18nController.resourceStrings = value;\n }\n\n public get resourceStrings(): ICarouselResourceStrings {\n return this._i18nController.resourceStrings;\n }\n\n /* blazorSuppress */\n /**\n * The slides of the carousel.\n */\n public get slides(): IgcCarouselSlideComponent[] {\n return Array.from(this._slides);\n }\n\n /**\n * The total number of slides.\n */\n public get total(): number {\n return this._slides.length;\n }\n\n /**\n * The index of the current active slide.\n */\n public get current(): number {\n return Math.max(0, this._slides.indexOf(this._activeSlide));\n }\n\n /**\n * Whether the carousel is in playing state.\n */\n public get isPlaying(): boolean {\n return this._playing;\n }\n\n /**\n * Whether the carousel in in paused state.\n */\n public get isPaused(): boolean {\n return this._paused;\n }\n\n //#endregion\n\n //#region Watchers\n\n @watch('animationType')\n @watch('slidesLabelFormat')\n @watch('indicatorsLabelFormat')\n protected _contextChanged(): void {\n this._context.setValue(this, true);\n }\n\n @watch('interval')\n protected _intervalChange(): void {\n if (!this.isPlaying) {\n this._playing = true;\n }\n\n this._restartInterval();\n }\n\n //#endregion\n\n //#region Life-cycle hooks and observer callback\n\n constructor() {\n super();\n\n addInternalsController(this, {\n initialARIA: {\n role: 'region',\n ariaRoleDescription: 'carousel',\n },\n });\n\n addThemingController(this, all);\n\n addSafeEventListener(this, 'pointerenter', this._handlePointerInteraction);\n addSafeEventListener(this, 'pointerleave', this._handlePointerInteraction);\n addSafeEventListener(this, 'focusin', this._handleFocusInteraction);\n addSafeEventListener(this, 'focusout', this._handleFocusInteraction);\n\n addGesturesController(this, {\n ref: this._carouselSlidesContainerRef,\n touchOnly: true,\n })\n .set('swipe-left', this._handleHorizontalSwipe)\n .set('swipe-right', this._handleHorizontalSwipe)\n .set('swipe-up', this._handleVerticalSwipe)\n .set('swipe-down', this._handleVerticalSwipe);\n\n addKeybindings(this, {\n ref: this._indicatorsContainerRef,\n })\n .set(arrowLeft, this._handleArrowLeft)\n .set(arrowRight, this._handleArrowRight)\n .set(homeKey, this._handleHomeKey)\n .set(endKey, this._handleEndKey);\n\n addKeybindings(this, {\n ref: this._prevButtonRef,\n }).setActivateHandler(this._handleNavigationInteractionPrevious);\n\n addKeybindings(this, {\n ref: this._nextButtonRef,\n }).setActivateHandler(this._handleNavigationInteractionNext);\n\n createMutationController(this, {\n callback: this._observerCallback,\n filter: [IgcCarouselSlideComponent.tagName],\n config: {\n attributeFilter: ['active'],\n childList: true,\n subtree: true,\n },\n });\n }\n\n protected override async firstUpdated(): Promise<void> {\n await this.updateComplete;\n\n if (!isEmpty(this._slides)) {\n this._activateSlide(\n this._slides.findLast((slide) => slide.active) ?? first(this._slides)\n );\n }\n }\n\n private _observerCallback({\n changes: { added, attributes },\n }: MutationControllerParams<IgcCarouselSlideComponent>) {\n const activeSlides = this._slides.filter((slide) => slide.active);\n\n if (activeSlides.length <= 1) {\n return;\n }\n\n const idx = this._slides.indexOf(\n added.length ? last(added).node : last(attributes).node\n );\n\n for (const [i, slide] of this._slides.entries()) {\n if (slide.active && i !== idx) {\n slide.active = false;\n }\n }\n\n this._activateSlide(this._slides[idx]);\n }\n\n //#endregion\n\n //#region Event listeners\n\n private _handleSlotChange(\n params: SlotChangeCallbackParameters<InferSlotNames<typeof Slots>>\n ): void {\n if (params.isDefault || params.isInitial) {\n this._slides = this._slots.getAssignedElements('[default]', {\n selector: IgcCarouselSlideComponent.tagName,\n });\n }\n\n if (params.slot === 'indicator') {\n this._projectedIndicators = this._slots.getAssignedElements('indicator', {\n selector: IgcCarouselIndicatorComponent.tagName,\n });\n }\n }\n\n private _handlePointerInteraction(event: PointerEvent): void {\n this._hasPointerInteraction = event.type === 'pointerenter';\n\n if (!this._hasInnerFocus) {\n this._handlePauseOnInteraction();\n }\n }\n\n private _handleFocusInteraction(event: FocusEvent): void {\n // focusin - element that lost focus\n // focusout - element that gained focus\n const node = event.relatedTarget as Node;\n\n if (this.contains(node)) {\n return;\n }\n\n this._hasInnerFocus = event.type === 'focusin';\n\n if (!this._hasPointerInteraction) {\n this._handlePauseOnInteraction();\n }\n }\n\n private async _handleIndicatorClick(event: PointerEvent): Promise<void> {\n const indicator = findElementFromEventPath<IgcCarouselIndicatorComponent>(\n IgcCarouselIndicatorComponent.tagName,\n event\n )!;\n\n const index = this._hasProjectedIndicators\n ? this._projectedIndicators.indexOf(indicator)\n : Array.from(this._defaultIndicators).indexOf(indicator);\n\n this._handleInteraction(() =>\n this.select(this._slides[index], index > this.current ? 'next' : 'prev')\n );\n }\n\n //#endregion\n\n //#region Keyboard event listeners\n\n private async _handleArrowLeft(): Promise<void> {\n this._hasKeyboardInteractionOnIndicators = true;\n this._handleInteraction(isLTR(this) ? this.prev : this.next);\n }\n\n private async _handleArrowRight(): Promise<void> {\n this._hasKeyboardInteractionOnIndicators = true;\n this._handleInteraction(isLTR(this) ? this.next : this.prev);\n }\n\n private async _handleHomeKey(): Promise<void> {\n this._hasKeyboardInteractionOnIndicators = true;\n this._handleInteraction(() =>\n this.select(isLTR(this) ? first(this._slides) : last(this._slides))\n );\n }\n\n private async _handleEndKey(): Promise<void> {\n this._hasKeyboardInteractionOnIndicators = true;\n this._handleInteraction(() =>\n this.select(isLTR(this) ? last(this._slides) : first(this._slides))\n );\n }\n\n //#endregion\n\n //#region Gestures event listeners\n\n private _handleVerticalSwipe({ data: { direction } }: SwipeEvent): void {\n if (this.vertical) {\n this._handleInteraction(direction === 'up' ? this.next : this.prev);\n }\n }\n\n private _handleHorizontalSwipe({ data: { direction } }: SwipeEvent): void {\n if (!this.vertical) {\n const callback = () => {\n if (isLTR(this)) {\n return direction === 'left' ? this.next : this.prev;\n }\n return direction === 'left' ? this.prev : this.next;\n };\n\n this._handleInteraction(callback());\n }\n }\n\n //#endregion\n\n //#region Internal API\n\n private _handleNavigationInteractionNext(): void {\n this._handleInteraction(this.next);\n }\n\n private _handleNavigationInteractionPrevious(): void {\n this._handleInteraction(this.prev);\n }\n\n private async _handleInteraction(\n callback: () => Promise<boolean>\n ): Promise<void> {\n if (this.interval) {\n this._resetInterval();\n }\n\n if (await callback.call(this)) {\n this.emitEvent('igcSlideChanged', { detail: this.current });\n }\n\n if (this.interval) {\n this._restartInterval();\n }\n }\n\n private _handlePauseOnInteraction(): void {\n if (!this.interval || this.disablePauseOnInteraction) return;\n\n if (this.isPlaying) {\n this.pause();\n this.emitEvent('igcPaused');\n } else {\n this.play();\n this.emitEvent('igcPlaying');\n }\n }\n\n private _activateSlide(slide: IgcCarouselSlideComponent): void {\n if (this._activeSlide) {\n this._activeSlide.active = false;\n }\n\n this._activeSlide = slide;\n this._activeSlide.active = true;\n\n if (this._hasKeyboardInteractionOnIndicators) {\n this._hasProjectedIndicators\n ? this._projectedIndicators[this.current].focus()\n : this._defaultIndicators[this.current].focus();\n\n this._hasKeyboardInteractionOnIndicators = false;\n }\n }\n\n private _updateProjectedIndicators(): void {\n for (const [idx, slide] of this._slides.entries()) {\n const indicator = this._projectedIndicators[idx];\n indicator.active = slide.active;\n indicator.index = idx;\n }\n\n if (this._activeSlide) {\n this.setAttribute('aria-controls', this._activeSlide.id);\n }\n }\n\n private _resetInterval(): void {\n if (this._lastInterval) {\n clearInterval(this._lastInterval);\n this._lastInterval = null;\n }\n }\n\n private _restartInterval(): void {\n this._resetInterval();\n\n if (asNumber(this.interval) > 0) {\n this._lastInterval = setInterval(() => {\n if (\n this.isPlaying &&\n this.total &&\n !(this.disableLoop && this._nextIndex === 0)\n ) {\n this.select(this.slides[this._nextIndex], 'next');\n this.emitEvent('igcSlideChanged', { detail: this.current });\n } else {\n this.pause();\n }\n }, this.interval);\n }\n }\n\n private async _animateSlides(\n nextSlide: IgcCarouselSlideComponent,\n currentSlide: IgcCarouselSlideComponent,\n dir: 'next' | 'prev'\n ): Promise<void> {\n if (dir === 'next') {\n // Animate slides in next direction\n currentSlide.previous = true;\n currentSlide.toggleAnimation('out');\n this._activateSlide(nextSlide);\n await nextSlide.toggleAnimation('in');\n currentSlide.previous = false;\n } else {\n // Animate slides in previous direction\n currentSlide.previous = true;\n currentSlide.toggleAnimation('in', 'reverse');\n this._activateSlide(nextSlide);\n await nextSlide.toggleAnimation('out', 'reverse');\n currentSlide.previous = false;\n }\n }\n\n //#endregion\n\n //#region Public API\n\n /**\n * Resumes playing of the carousel slides.\n */\n public play(): void {\n if (!this.isPlaying) {\n this._paused = false;\n this._playing = true;\n this._restartInterval();\n }\n }\n\n /**\n * Pauses the carousel rotation of slides.\n */\n public pause(): void {\n if (this.isPlaying) {\n this._playing = false;\n this._paused = true;\n this._resetInterval();\n }\n }\n\n /**\n * Switches to the next slide, runs any animations, and returns if the operation was successful.\n */\n public async next(): Promise<boolean> {\n if (this.disableLoop && this._nextIndex === 0) {\n this.pause();\n return false;\n }\n\n return await this.select(this._slides[this._nextIndex], 'next');\n }\n\n /**\n * Switches to the previous slide, runs any animations, and returns if the operation was successful.\n */\n public async prev(): Promise<boolean> {\n if (this.disableLoop && this._previousIndex === this.total - 1) {\n this.pause();\n return false;\n }\n\n return await this.select(this._slides[this._previousIndex], 'prev');\n }\n\n /* blazorSuppress */\n /**\n * Switches to the passed-in slide, runs any animations, and returns if the operation was successful.\n */\n public async select(\n slide: IgcCarouselSlideComponent,\n animationDirection?: 'next' | 'prev'\n ): Promise<boolean>;\n /**\n * Switches to slide by index, runs any animations, and returns if the operation was successful.\n */\n public async select(\n index: number,\n animationDirection?: 'next' | 'prev'\n ): Promise<boolean>;\n public async select(\n slideOrIndex: IgcCarouselSlideComponent | number,\n animationDirection?: 'next' | 'prev'\n ): Promise<boolean> {\n let index: number;\n let slide: IgcCarouselSlideComponent | undefined;\n\n if (typeof slideOrIndex === 'number') {\n index = slideOrIndex;\n slide = this._slides.at(index);\n } else {\n slide = slideOrIndex;\n index = this._slides.indexOf(slide);\n }\n\n if (index === this.current || index === -1 || !slide) {\n return false;\n }\n\n const dir = animationDirection ?? (index > this.current ? 'next' : 'prev');\n\n await this._animateSlides(slide, this._activeSlide, dir);\n return true;\n }\n\n //#endregion\n\n //#region Template renderers\n\n private _renderNavigation() {\n return html`\n <igc-button\n ${ref(this._prevButtonRef)}\n type=\"button\"\n part=\"navigation previous\"\n aria-label=${this.resourceStrings.carousel_previous_slide ??\n 'previous slide'}\n aria-controls=${this._carouselId}\n ?disabled=${this.disableLoop && this.current === 0}\n @click=${this._handleNavigationInteractionPrevious}\n >\n <slot name=\"previous-button\">\n <igc-icon\n name=\"carousel_prev\"\n collection=\"default\"\n aria-hidden=\"true\"\n ></igc-icon>\n </slot>\n </igc-button>\n\n <igc-button\n ${ref(this._nextButtonRef)}\n type=\"button\"\n part=\"navigation next\"\n aria-label=${this.resourceStrings.carousel_next_slide ?? 'next slide'}\n aria-controls=${this._carouselId}\n ?disabled=${this.disableLoop && this.current === this.total - 1}\n @click=${this._handleNavigationInteractionNext}\n >\n <slot name=\"next-button\">\n <igc-icon\n name=\"carousel_next\"\n collection=\"default\"\n aria-hidden=\"true\"\n ></igc-icon>\n </slot>\n </igc-button>\n `;\n }\n\n protected *_renderIndicators() {\n for (const [i, slide] of this._slides.entries()) {\n const forward = slide.active ? 'visible' : 'hidden';\n const backward = slide.active ? 'hidden' : 'visible';\n\n yield html`\n <igc-carousel-indicator\n exportparts=\"indicator, active, inactive\"\n .active=${slide.active}\n .index=${i}\n >\n <div\n part=\"dot\"\n style=${styleMap({ visibility: backward, zIndex: 1 })}\n ></div>\n <div\n part=\"dot active\"\n slot=\"active\"\n style=${styleMap({ visibility: forward })}\n ></div>\n </igc-carousel-indicator>\n `;\n }\n }\n\n private _renderIndicatorContainer() {\n const parts = {\n indicators: true,\n start: this.indicatorsOrientation === 'start',\n };\n\n return html`\n <igc-carousel-indicator-container>\n <div\n ${ref(this._indicatorsContainerRef)}\n role=\"tablist\"\n part=${partMap(parts)}\n >\n <slot name=\"indicator\" @click=${this._handleIndicatorClick}>\n ${cache(\n this._hasProjectedIndicators\n ? this._updateProjectedIndicators()\n : this._renderIndicators()\n )}\n </slot>\n </div>\n </igc-carousel-indicator-container>\n `;\n }\n\n private _renderLabel() {\n const parts = {\n label: true,\n indicators: true,\n start: this.indicatorsOrientation === 'start',\n };\n const value = formatString(\n this.slidesLabelFormat,\n this.current + 1,\n this.total\n );\n\n return html`\n <div part=${partMap(parts)}>\n <span>${value}</span>\n </div>\n `;\n }\n\n protected override render() {\n const hasNoIndicators = this.hideIndicators || this._showIndicatorsLabel;\n const hasLabel = !this.hideIndicators && this._showIndicatorsLabel;\n\n return html`\n <section>\n ${cache(this.hideNavigation ? nothing : this._renderNavigation())}\n ${hasNoIndicators ? nothing : this._renderIndicatorContainer()}\n ${hasLabel ? this._renderLabel() : nothing}\n <div\n ${ref(this._carouselSlidesContainerRef)}\n id=${this._carouselId}\n aria-live=${this.interval && this._playing ? 'off' : 'polite'}\n >\n <slot></slot>\n </div>\n </section>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-carousel': IgcCarouselComponent;\n }\n}\n"]}
@@ -13,7 +13,7 @@ export interface IgcCheckboxComponentEventMap {
13
13
  declare const IgcCheckboxBaseComponent_base: Constructor<import("../common/mixins/forms/types.js").FormRequiredInterface & import("../common/mixins/forms/types.js").FormAssociatedCheckboxElementInterface> & Constructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcCheckboxComponentEventMap>> & Constructor<LitElement>;
14
14
  export declare class IgcCheckboxBaseComponent extends IgcCheckboxBaseComponent_base {
15
15
  protected get __validators(): import("../common/validators.js").Validator<IgcCheckboxBaseComponent>[];
16
- protected readonly _slots: import("../common/controllers/slot.js").SlotController<"invalid" | "helper-text" | "[default]" | "value-missing" | "custom-error">;
16
+ protected readonly _slots: import("../common/controllers/slot.js").SlotController<"invalid" | "[default]" | "helper-text" | "value-missing" | "custom-error">;
17
17
  protected readonly _focusRingManager: import("../common/controllers/focus-ring.js").KeyboardFocusRingController;
18
18
  protected readonly _formValue: import("../common/mixins/forms/form-value.js").FormValue<boolean>;
19
19
  protected _value: string;
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--fill-color: var(--ig-checkbox-fill-color, var(--ig-secondary-500));--empty-color: var(--ig-checkbox-empty-color, var(--ig-gray-600));--empty-color-hover: var(--ig-checkbox-empty-color-hover, var(--ig-gray-600));--tick-color-hover: var(--ig-checkbox-tick-color-hover, var(--ig-gray-50));--fill-color-hover: var(--ig-checkbox-fill-color-hover, var(--ig-secondary-500));--focus-outline-color: var(--ig-checkbox-focus-outline-color, transparent);--focus-border-color: var(--ig-checkbox-focus-border-color, var(--ig-gray-600));--error-color-hover: var(--ig-checkbox-error-color-hover, var(--ig-error-500));--ig-theme: material}`;
2
+ export const styles = css `:host{--fill-color: var(--ig-checkbox-fill-color, var(--ig-secondary-500));--error-color: var(--ig-checkbox-error-color, var(--ig-error-800));--empty-color: var(--ig-checkbox-empty-color, var(--ig-gray-600));--empty-color-hover: var(--ig-checkbox-empty-color-hover, var(--ig-gray-600));--tick-color-hover: var(--ig-checkbox-tick-color-hover, var(--ig-gray-50));--fill-color-hover: var(--ig-checkbox-fill-color-hover, var(--ig-secondary-500));--focus-outline-color: var(--ig-checkbox-focus-outline-color, transparent);--focus-border-color: var(--ig-checkbox-focus-border-color, var(--ig-gray-600));--error-color-hover: var(--ig-checkbox-error-color-hover, var(--ig-error-800));--ig-theme: material}`;
3
3
  //# sourceMappingURL=checkbox.material.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.material.css.js","sourceRoot":"","sources":["../../../../../../src/components/checkbox/themes/light/checkbox/checkbox.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,wnBAAwnB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--fill-color: var(--ig-checkbox-fill-color, var(--ig-secondary-500));--empty-color: var(--ig-checkbox-empty-color, var(--ig-gray-600));--empty-color-hover: var(--ig-checkbox-empty-color-hover, var(--ig-gray-600));--tick-color-hover: var(--ig-checkbox-tick-color-hover, var(--ig-gray-50));--fill-color-hover: var(--ig-checkbox-fill-color-hover, var(--ig-secondary-500));--focus-outline-color: var(--ig-checkbox-focus-outline-color, transparent);--focus-border-color: var(--ig-checkbox-focus-border-color, var(--ig-gray-600));--error-color-hover: var(--ig-checkbox-error-color-hover, var(--ig-error-500));--ig-theme: material}`;\n"]}
1
+ {"version":3,"file":"checkbox.material.css.js","sourceRoot":"","sources":["../../../../../../src/components/checkbox/themes/light/checkbox/checkbox.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,2rBAA2rB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--fill-color: var(--ig-checkbox-fill-color, var(--ig-secondary-500));--error-color: var(--ig-checkbox-error-color, var(--ig-error-800));--empty-color: var(--ig-checkbox-empty-color, var(--ig-gray-600));--empty-color-hover: var(--ig-checkbox-empty-color-hover, var(--ig-gray-600));--tick-color-hover: var(--ig-checkbox-tick-color-hover, var(--ig-gray-50));--fill-color-hover: var(--ig-checkbox-fill-color-hover, var(--ig-secondary-500));--focus-outline-color: var(--ig-checkbox-focus-outline-color, transparent);--focus-border-color: var(--ig-checkbox-focus-border-color, var(--ig-gray-600));--error-color-hover: var(--ig-checkbox-error-color-hover, var(--ig-error-800));--ig-theme: material}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--size: 2rem;--thumb-size: 0.625rem;--border-size: 0.0625rem;--thumb-offset: 0.125rem;--label-gap: 0.5rem}[part~=label]{font-family:var(--ig-body-1-font-family, var(--ig-font-family));font-size:var(--ig-body-1-font-size);font-weight:var(--ig-body-1-font-weight);font-style:var(--ig-body-1-font-style);line-height:var(--ig-body-1-line-height);letter-spacing:var(--ig-body-1-letter-spacing);text-transform:var(--ig-body-1-text-transform);margin-top:var(--ig-body-1-margin-top);margin-bottom:var(--ig-body-1-margin-bottom)}[part~=focused] [part~=thumb]:not([part~=checked]){background:var(--focus-fill-color)}[part~=focused][part~=control]{box-shadow:0 0 0 .25rem var(--focus-outline-color);border-color:var(--focus-fill-color)}[part~=control]{border-radius:var(--border-radius-track);width:var(--size);height:1rem;border:var(--border-size) solid var(--border-color);background:var(--track-off-color);transition:all .2s ease-in-out}[part~=control][part~=checked]{background:var(--track-on-color);border-color:var(--border-on-color)}[part~=thumb]{border-radius:var(--border-radius-thumb);width:var(--thumb-size);height:var(--thumb-size);min-width:var(--thumb-size);margin-inline-start:var(--thumb-offset);background:var(--thumb-off-color)}[part~=thumb][part~=checked]{background:var(--thumb-on-color);margin-inline-start:calc(var(--size) - var(--thumb-size) - var(--thumb-offset) - var(--border-size)*2)}:host(:not([disabled]):hover) [part~=control],:host(:not(:disabled):hover) [part~=control]{border-color:var(--border-hover-color)}:host(:not([disabled]):hover) [part~=control][part~=checked],:host(:not(:disabled):hover) [part~=control][part~=checked]{background:var(--track-on-hover-color);border-color:var(--border-on-hover-color)}:host(:not([disabled]):hover) [part~=thumb][part~=checked],:host(:not(:disabled):hover) [part~=thumb][part~=checked]{background:var(--thumb-on-color)}:host(:not([disabled]):hover) [part~=focused]:not([part~=checked]) [part~=thumb],:host(:not(:disabled):hover) [part~=focused]:not([part~=checked]) [part~=thumb]{background:var(--focus-fill-hover-color)}:host(:not([disabled]):hover) [part~=focused]:not([part~=checked])[part~=control],:host(:not(:disabled):hover) [part~=focused]:not([part~=checked])[part~=control]{box-shadow:0 0 0 .25rem var(--focus-outline-color);border-color:var(--focus-fill-hover-color)}:host([disabled]) [part~=control][part~=checked]{border-color:var(--track-on-disabled-color)}`;
2
+ export const styles = css `:host{--size: 2rem;--thumb-size: 0.625rem;--border-size: 0.0625rem;--thumb-offset: 0.125rem;--label-gap: 0.5rem}[part~=label]{font-family:var(--ig-body-1-font-family, var(--ig-font-family));font-size:var(--ig-body-1-font-size);font-weight:var(--ig-body-1-font-weight);font-style:var(--ig-body-1-font-style);line-height:var(--ig-body-1-line-height);letter-spacing:var(--ig-body-1-letter-spacing);text-transform:var(--ig-body-1-text-transform);margin-top:var(--ig-body-1-margin-top);margin-bottom:var(--ig-body-1-margin-bottom)}[part~=focused] [part~=thumb]:not([part~=checked]){background:var(--focus-fill-color)}[part~=focused][part~=control]{box-shadow:0 0 0 .25rem var(--focus-outline-color);border-color:var(--focus-fill-color)}[part~=control]{border-radius:var(--border-radius-track);width:var(--size);height:1rem;border:var(--border-size) solid var(--border-color);background:var(--track-off-color);transition:all .2s ease-in-out}[part~=control][part~=checked]{background:var(--track-on-color);border-color:var(--border-on-color)}[part~=thumb]{border-radius:var(--border-radius-thumb);width:var(--thumb-size);height:var(--thumb-size);min-width:var(--thumb-size);margin-inline-start:var(--thumb-offset);background:var(--thumb-off-color)}[part~=thumb][part~=checked]{background:var(--thumb-on-color);margin-inline-start:calc(var(--size) - var(--thumb-size) - var(--thumb-offset) - var(--border-size)*2)}:host(:not([disabled]):hover) [part~=thumb][part~=checked],:host(:not(:disabled):hover) [part~=thumb][part~=checked]{background:var(--thumb-on-color)}:host(:not([disabled]):hover) [part~=focused]:not([part~=checked]) [part~=thumb],:host(:not(:disabled):hover) [part~=focused]:not([part~=checked]) [part~=thumb]{background:var(--focus-fill-hover-color)}:host(:not([disabled]):hover) [part~=focused]:not([part~=checked])[part~=control],:host(:not(:disabled):hover) [part~=focused]:not([part~=checked])[part~=control]{box-shadow:0 0 0 .25rem var(--focus-outline-color);border-color:var(--focus-fill-hover-color)}:host([disabled]) [part~=control][part~=checked]{border-color:var(--track-on-disabled-color)}`;
3
3
  //# sourceMappingURL=switch.bootstrap.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"switch.bootstrap.css.js","sourceRoot":"","sources":["../../../../../../src/components/checkbox/themes/shared/switch/switch.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,04EAA04E,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--size: 2rem;--thumb-size: 0.625rem;--border-size: 0.0625rem;--thumb-offset: 0.125rem;--label-gap: 0.5rem}[part~=label]{font-family:var(--ig-body-1-font-family, var(--ig-font-family));font-size:var(--ig-body-1-font-size);font-weight:var(--ig-body-1-font-weight);font-style:var(--ig-body-1-font-style);line-height:var(--ig-body-1-line-height);letter-spacing:var(--ig-body-1-letter-spacing);text-transform:var(--ig-body-1-text-transform);margin-top:var(--ig-body-1-margin-top);margin-bottom:var(--ig-body-1-margin-bottom)}[part~=focused] [part~=thumb]:not([part~=checked]){background:var(--focus-fill-color)}[part~=focused][part~=control]{box-shadow:0 0 0 .25rem var(--focus-outline-color);border-color:var(--focus-fill-color)}[part~=control]{border-radius:var(--border-radius-track);width:var(--size);height:1rem;border:var(--border-size) solid var(--border-color);background:var(--track-off-color);transition:all .2s ease-in-out}[part~=control][part~=checked]{background:var(--track-on-color);border-color:var(--border-on-color)}[part~=thumb]{border-radius:var(--border-radius-thumb);width:var(--thumb-size);height:var(--thumb-size);min-width:var(--thumb-size);margin-inline-start:var(--thumb-offset);background:var(--thumb-off-color)}[part~=thumb][part~=checked]{background:var(--thumb-on-color);margin-inline-start:calc(var(--size) - var(--thumb-size) - var(--thumb-offset) - var(--border-size)*2)}:host(:not([disabled]):hover) [part~=control],:host(:not(:disabled):hover) [part~=control]{border-color:var(--border-hover-color)}:host(:not([disabled]):hover) [part~=control][part~=checked],:host(:not(:disabled):hover) [part~=control][part~=checked]{background:var(--track-on-hover-color);border-color:var(--border-on-hover-color)}:host(:not([disabled]):hover) [part~=thumb][part~=checked],:host(:not(:disabled):hover) [part~=thumb][part~=checked]{background:var(--thumb-on-color)}:host(:not([disabled]):hover) [part~=focused]:not([part~=checked]) [part~=thumb],:host(:not(:disabled):hover) [part~=focused]:not([part~=checked]) [part~=thumb]{background:var(--focus-fill-hover-color)}:host(:not([disabled]):hover) [part~=focused]:not([part~=checked])[part~=control],:host(:not(:disabled):hover) [part~=focused]:not([part~=checked])[part~=control]{box-shadow:0 0 0 .25rem var(--focus-outline-color);border-color:var(--focus-fill-hover-color)}:host([disabled]) [part~=control][part~=checked]{border-color:var(--track-on-disabled-color)}`;\n"]}
1
+ {"version":3,"file":"switch.bootstrap.css.js","sourceRoot":"","sources":["../../../../../../src/components/checkbox/themes/shared/switch/switch.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,8jEAA8jE,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--size: 2rem;--thumb-size: 0.625rem;--border-size: 0.0625rem;--thumb-offset: 0.125rem;--label-gap: 0.5rem}[part~=label]{font-family:var(--ig-body-1-font-family, var(--ig-font-family));font-size:var(--ig-body-1-font-size);font-weight:var(--ig-body-1-font-weight);font-style:var(--ig-body-1-font-style);line-height:var(--ig-body-1-line-height);letter-spacing:var(--ig-body-1-letter-spacing);text-transform:var(--ig-body-1-text-transform);margin-top:var(--ig-body-1-margin-top);margin-bottom:var(--ig-body-1-margin-bottom)}[part~=focused] [part~=thumb]:not([part~=checked]){background:var(--focus-fill-color)}[part~=focused][part~=control]{box-shadow:0 0 0 .25rem var(--focus-outline-color);border-color:var(--focus-fill-color)}[part~=control]{border-radius:var(--border-radius-track);width:var(--size);height:1rem;border:var(--border-size) solid var(--border-color);background:var(--track-off-color);transition:all .2s ease-in-out}[part~=control][part~=checked]{background:var(--track-on-color);border-color:var(--border-on-color)}[part~=thumb]{border-radius:var(--border-radius-thumb);width:var(--thumb-size);height:var(--thumb-size);min-width:var(--thumb-size);margin-inline-start:var(--thumb-offset);background:var(--thumb-off-color)}[part~=thumb][part~=checked]{background:var(--thumb-on-color);margin-inline-start:calc(var(--size) - var(--thumb-size) - var(--thumb-offset) - var(--border-size)*2)}:host(:not([disabled]):hover) [part~=thumb][part~=checked],:host(:not(:disabled):hover) [part~=thumb][part~=checked]{background:var(--thumb-on-color)}:host(:not([disabled]):hover) [part~=focused]:not([part~=checked]) [part~=thumb],:host(:not(:disabled):hover) [part~=focused]:not([part~=checked]) [part~=thumb]{background:var(--focus-fill-hover-color)}:host(:not([disabled]):hover) [part~=focused]:not([part~=checked])[part~=control],:host(:not(:disabled):hover) [part~=focused]:not([part~=checked])[part~=control]{box-shadow:0 0 0 .25rem var(--focus-outline-color);border-color:var(--focus-fill-hover-color)}:host([disabled]) [part~=control][part~=checked]{border-color:var(--track-on-disabled-color)}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `[part~=label]{font-family:var(--ig-subtitle-1-font-family, var(--ig-font-family));font-size:var(--ig-subtitle-1-font-size);font-weight:var(--ig-subtitle-1-font-weight);font-style:var(--ig-subtitle-1-font-style);line-height:var(--ig-subtitle-1-line-height);letter-spacing:var(--ig-subtitle-1-letter-spacing);text-transform:var(--ig-subtitle-1-text-transform);margin-top:var(--ig-subtitle-1-margin-top);margin-bottom:var(--ig-subtitle-1-margin-bottom);color:var(--label-color);transition:all .2s ease-in-out}:host(:hover) [part~=label]{color:var(--label-hover-color)}:host(:hover) [part~=thumb]:not([part~=checked]){background:var(--thumb-off-hover-color)}:host([disabled]) [part~=label],:host(:disabled) [part~=label]{color:var(--label-disabled-color)}:host([disabled]) [part~=control],:host(:disabled) [part~=control]{background:var(--track-disabled-color);border-color:var(--border-disabled-color)}:host([disabled]) [part~=thumb][part~=checked],:host(:disabled) [part~=thumb][part~=checked]{background:var(--thumb-on-disabled-color)}:host([disabled]) [part~=control][part~=checked],:host(:disabled) [part~=control][part~=checked]{background:var(--track-on-disabled-color)}:host([disabled]) [part~=thumb],:host(:disabled) [part~=thumb]{background:var(--thumb-disabled-color)}`;
2
+ export const styles = css `[part~=label]{font-family:var(--ig-subtitle-1-font-family, var(--ig-font-family));font-size:var(--ig-subtitle-1-font-size);font-weight:var(--ig-subtitle-1-font-weight);font-style:var(--ig-subtitle-1-font-style);line-height:var(--ig-subtitle-1-line-height);letter-spacing:var(--ig-subtitle-1-letter-spacing);text-transform:var(--ig-subtitle-1-text-transform);margin-top:var(--ig-subtitle-1-margin-top);margin-bottom:var(--ig-subtitle-1-margin-bottom);color:var(--label-color);transition:all .2s ease-in-out}:host(:hover) [part~=label]{color:var(--label-hover-color)}:host(:hover) [part~=thumb]:not([part~=checked]){background:var(--thumb-off-hover-color)}:host(:not([disabled]):hover) [part~=control],:host(:not(:disabled):hover) [part~=control]{border-color:var(--border-hover-color)}:host(:not([disabled]):hover) [part~=control][part~=checked],:host(:not(:disabled):hover) [part~=control][part~=checked]{background:var(--track-on-hover-color);border-color:var(--border-on-hover-color)}:host([disabled]) [part~=label],:host(:disabled) [part~=label]{color:var(--label-disabled-color)}:host([disabled]) [part~=control],:host(:disabled) [part~=control]{background:var(--track-disabled-color);border-color:var(--border-disabled-color)}:host([disabled]) [part~=thumb][part~=checked],:host(:disabled) [part~=thumb][part~=checked]{background:var(--thumb-on-disabled-color)}:host([disabled]) [part~=control][part~=checked],:host(:disabled) [part~=control][part~=checked]{background:var(--track-on-disabled-color)}:host([disabled]) [part~=thumb],:host(:disabled) [part~=thumb]{background:var(--thumb-disabled-color)}`;
3
3
  //# sourceMappingURL=switch.common.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"switch.common.css.js","sourceRoot":"","sources":["../../../../../../src/components/checkbox/themes/shared/switch/switch.common.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,6vCAA6vC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=label]{font-family:var(--ig-subtitle-1-font-family, var(--ig-font-family));font-size:var(--ig-subtitle-1-font-size);font-weight:var(--ig-subtitle-1-font-weight);font-style:var(--ig-subtitle-1-font-style);line-height:var(--ig-subtitle-1-line-height);letter-spacing:var(--ig-subtitle-1-letter-spacing);text-transform:var(--ig-subtitle-1-text-transform);margin-top:var(--ig-subtitle-1-margin-top);margin-bottom:var(--ig-subtitle-1-margin-bottom);color:var(--label-color);transition:all .2s ease-in-out}:host(:hover) [part~=label]{color:var(--label-hover-color)}:host(:hover) [part~=thumb]:not([part~=checked]){background:var(--thumb-off-hover-color)}:host([disabled]) [part~=label],:host(:disabled) [part~=label]{color:var(--label-disabled-color)}:host([disabled]) [part~=control],:host(:disabled) [part~=control]{background:var(--track-disabled-color);border-color:var(--border-disabled-color)}:host([disabled]) [part~=thumb][part~=checked],:host(:disabled) [part~=thumb][part~=checked]{background:var(--thumb-on-disabled-color)}:host([disabled]) [part~=control][part~=checked],:host(:disabled) [part~=control][part~=checked]{background:var(--track-on-disabled-color)}:host([disabled]) [part~=thumb],:host(:disabled) [part~=thumb]{background:var(--thumb-disabled-color)}`;\n"]}
1
+ {"version":3,"file":"switch.common.css.js","sourceRoot":"","sources":["../../../../../../src/components/checkbox/themes/shared/switch/switch.common.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,ykDAAykD,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=label]{font-family:var(--ig-subtitle-1-font-family, var(--ig-font-family));font-size:var(--ig-subtitle-1-font-size);font-weight:var(--ig-subtitle-1-font-weight);font-style:var(--ig-subtitle-1-font-style);line-height:var(--ig-subtitle-1-line-height);letter-spacing:var(--ig-subtitle-1-letter-spacing);text-transform:var(--ig-subtitle-1-text-transform);margin-top:var(--ig-subtitle-1-margin-top);margin-bottom:var(--ig-subtitle-1-margin-bottom);color:var(--label-color);transition:all .2s ease-in-out}:host(:hover) [part~=label]{color:var(--label-hover-color)}:host(:hover) [part~=thumb]:not([part~=checked]){background:var(--thumb-off-hover-color)}:host(:not([disabled]):hover) [part~=control],:host(:not(:disabled):hover) [part~=control]{border-color:var(--border-hover-color)}:host(:not([disabled]):hover) [part~=control][part~=checked],:host(:not(:disabled):hover) [part~=control][part~=checked]{background:var(--track-on-hover-color);border-color:var(--border-on-hover-color)}:host([disabled]) [part~=label],:host(:disabled) [part~=label]{color:var(--label-disabled-color)}:host([disabled]) [part~=control],:host(:disabled) [part~=control]{background:var(--track-disabled-color);border-color:var(--border-disabled-color)}:host([disabled]) [part~=thumb][part~=checked],:host(:disabled) [part~=thumb][part~=checked]{background:var(--thumb-on-disabled-color)}:host([disabled]) [part~=control][part~=checked],:host(:disabled) [part~=control][part~=checked]{background:var(--track-on-disabled-color)}:host([disabled]) [part~=thumb],:host(:disabled) [part~=thumb]{background:var(--thumb-disabled-color)}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--size: 2.5rem;--thumb-size: 0.75rem;--border-size: 0.125rem;--thumb-offset: calc(var(--thumb-size) / 2 - 0.1875rem);--label-gap: 0.5rem}[part~=control]{border-radius:var(--border-radius-track);width:var(--size);height:1.25rem;background:var(--track-off-color);border:.0625rem solid var(--border-color)}[part~=control][part~=checked]{background:var(--track-on-color);border-color:var(--border-on-color)}[part~=thumb]{border-radius:var(--border-radius-thumb);width:var(--thumb-size);height:var(--thumb-size);min-width:var(--thumb-size);margin-inline-start:var(--thumb-offset);background:var(--thumb-off-color)}[part~=thumb][part~=checked]{margin-inline-start:calc(100% - var(--thumb-size) - var(--thumb-offset));background:var(--thumb-on-color)}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}[part~=focused]{position:relative}[part~=focused]::after{content:"";position:absolute;top:-0.1875rem;left:-0.1875rem;box-shadow:0 0 0 .0625rem var(--focus-outline-color);width:calc(100% + 0.1875rem*2);height:calc(100% + 0.1875rem*2)}:host(:not([disabled]):hover) [part~=control],:host(:not(:disabled):hover) [part~=control]{border-color:var(--border-hover-color)}:host(:not([disabled]):hover) [part~=control][part~=checked],:host(:not(:disabled):hover) [part~=control][part~=checked]{background:var(--track-on-hover-color);border-color:var(--border-on-hover-color)}:host(:not([disabled]):hover) [part~=thumb][part~=checked],:host(:not(:disabled):hover) [part~=thumb][part~=checked]{background:var(--thumb-on-color)}`;
2
+ export const styles = css `:host{--size: 2.5rem;--thumb-size: 0.75rem;--border-size: 0.125rem;--thumb-offset: calc(var(--thumb-size) / 2 - 0.1875rem);--label-gap: 0.5rem}[part~=control]{border-radius:var(--border-radius-track);width:var(--size);height:1.25rem;background:var(--track-off-color);border:.0625rem solid var(--border-color)}[part~=control][part~=checked]{background:var(--track-on-color);border-color:var(--border-on-color)}[part~=thumb]{border-radius:var(--border-radius-thumb);width:var(--thumb-size);height:var(--thumb-size);min-width:var(--thumb-size);margin-inline-start:var(--thumb-offset);background:var(--thumb-off-color)}[part~=thumb][part~=checked]{margin-inline-start:calc(100% - var(--thumb-size) - var(--thumb-offset));background:var(--thumb-on-color)}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}[part~=focused]{position:relative}[part~=focused]::after{content:"";position:absolute;top:-0.1875rem;left:-0.1875rem;box-shadow:0 0 0 .0625rem var(--focus-outline-color);width:calc(100% + 0.1875rem*2);height:calc(100% + 0.1875rem*2)}:host(:not([disabled]):hover) [part~=thumb][part~=checked],:host(:not(:disabled):hover) [part~=thumb][part~=checked]{background:var(--thumb-on-color)}:host([disabled]) [part~=control][part~=checked],:host(:disabled) [part~=control][part~=checked]{border-color:var(--track-on-disabled-color)}`;
3
3
  //# sourceMappingURL=switch.fluent.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"switch.fluent.css.js","sourceRoot":"","sources":["../../../../../../src/components/checkbox/themes/shared/switch/switch.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,y1DAAy1D,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--size: 2.5rem;--thumb-size: 0.75rem;--border-size: 0.125rem;--thumb-offset: calc(var(--thumb-size) / 2 - 0.1875rem);--label-gap: 0.5rem}[part~=control]{border-radius:var(--border-radius-track);width:var(--size);height:1.25rem;background:var(--track-off-color);border:.0625rem solid var(--border-color)}[part~=control][part~=checked]{background:var(--track-on-color);border-color:var(--border-on-color)}[part~=thumb]{border-radius:var(--border-radius-thumb);width:var(--thumb-size);height:var(--thumb-size);min-width:var(--thumb-size);margin-inline-start:var(--thumb-offset);background:var(--thumb-off-color)}[part~=thumb][part~=checked]{margin-inline-start:calc(100% - var(--thumb-size) - var(--thumb-offset));background:var(--thumb-on-color)}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}[part~=focused]{position:relative}[part~=focused]::after{content:\"\";position:absolute;top:-0.1875rem;left:-0.1875rem;box-shadow:0 0 0 .0625rem var(--focus-outline-color);width:calc(100% + 0.1875rem*2);height:calc(100% + 0.1875rem*2)}:host(:not([disabled]):hover) [part~=control],:host(:not(:disabled):hover) [part~=control]{border-color:var(--border-hover-color)}:host(:not([disabled]):hover) [part~=control][part~=checked],:host(:not(:disabled):hover) [part~=control][part~=checked]{background:var(--track-on-hover-color);border-color:var(--border-on-hover-color)}:host(:not([disabled]):hover) [part~=thumb][part~=checked],:host(:not(:disabled):hover) [part~=thumb][part~=checked]{background:var(--thumb-on-color)}`;\n"]}
1
+ {"version":3,"file":"switch.fluent.css.js","sourceRoot":"","sources":["../../../../../../src/components/checkbox/themes/shared/switch/switch.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,0pDAA0pD,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--size: 2.5rem;--thumb-size: 0.75rem;--border-size: 0.125rem;--thumb-offset: calc(var(--thumb-size) / 2 - 0.1875rem);--label-gap: 0.5rem}[part~=control]{border-radius:var(--border-radius-track);width:var(--size);height:1.25rem;background:var(--track-off-color);border:.0625rem solid var(--border-color)}[part~=control][part~=checked]{background:var(--track-on-color);border-color:var(--border-on-color)}[part~=thumb]{border-radius:var(--border-radius-thumb);width:var(--thumb-size);height:var(--thumb-size);min-width:var(--thumb-size);margin-inline-start:var(--thumb-offset);background:var(--thumb-off-color)}[part~=thumb][part~=checked]{margin-inline-start:calc(100% - var(--thumb-size) - var(--thumb-offset));background:var(--thumb-on-color)}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}[part~=focused]{position:relative}[part~=focused]::after{content:\"\";position:absolute;top:-0.1875rem;left:-0.1875rem;box-shadow:0 0 0 .0625rem var(--focus-outline-color);width:calc(100% + 0.1875rem*2);height:calc(100% + 0.1875rem*2)}:host(:not([disabled]):hover) [part~=thumb][part~=checked],:host(:not(:disabled):hover) [part~=thumb][part~=checked]{background:var(--thumb-on-color)}:host([disabled]) [part~=control][part~=checked],:host(:disabled) [part~=control][part~=checked]{border-color:var(--track-on-disabled-color)}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--size: 2rem;--thumb-size: 0.5rem;--border-size: 0.0625rem;--thumb-offset: 0.125rem;--label-gap: 0.5rem;font-weight:600}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}:host(:hover) [part~=control]{border-color:var(--border-hover-color)}:host(:hover) [part~=control][part~=checked]{background:var(--track-on-hover-color);border-color:var(--border-on-hover-color)}[part~=control][part~=focused]{box-shadow:0 0 0 .1875rem var(--focus-outline-color)}[part~=control][part~=checked][part~=focused]{box-shadow:0 0 0 .1875rem var(--focus-outline-color-focused)}[part~=control]{border-radius:var(--border-radius-track);width:var(--size);height:1rem;border:.125rem solid var(--border-color);background:var(--track-off-color)}[part~=control][part~=checked]{border-color:var(--border-on-color);background:var(--track-on-color)}[part~=thumb]{border-radius:var(--border-radius-thumb);width:var(--thumb-size);height:var(--thumb-size);min-width:var(--thumb-size);background:var(--thumb-off-color)}[part~=thumb]:not([part~=checked]){margin-inline-start:var(--thumb-offset)}[part~=thumb][part~=checked]{background:var(--thumb-on-color);margin-inline-start:calc(100% - var(--thumb-size) - var(--thumb-offset))}:host([disabled]) [part~=control][part~=checked],:host(:disabled) [part~=control][part~=checked]{border-color:rgba(0,0,0,0)}`;
2
+ export const styles = css `:host{--size: 2rem;--thumb-size: 0.5rem;--border-size: 0.0625rem;--thumb-offset: 0.125rem;--label-gap: 0.5rem;font-weight:600}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}[part~=control][part~=focused]{box-shadow:0 0 0 .1875rem var(--focus-outline-color)}[part~=control][part~=checked][part~=focused]{box-shadow:0 0 0 .1875rem var(--focus-outline-color-focused)}[part~=control]{border-radius:var(--border-radius-track);width:var(--size);height:1rem;border:.125rem solid var(--border-color);background:var(--track-off-color)}[part~=control][part~=checked]{border-color:var(--border-on-color);background:var(--track-on-color)}[part~=thumb]{border-radius:var(--border-radius-thumb);width:var(--thumb-size);height:var(--thumb-size);min-width:var(--thumb-size);background:var(--thumb-off-color)}[part~=thumb]:not([part~=checked]){margin-inline-start:var(--thumb-offset)}[part~=thumb][part~=checked]{background:var(--thumb-on-color);margin-inline-start:calc(100% - var(--thumb-size) - var(--thumb-offset))}:host([disabled]) [part~=control][part~=checked],:host(:disabled) [part~=control][part~=checked]{border-color:rgba(0,0,0,0)}`;
3
3
  //# sourceMappingURL=switch.indigo.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"switch.indigo.css.js","sourceRoot":"","sources":["../../../../../../src/components/checkbox/themes/shared/switch/switch.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,0pDAA0pD,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--size: 2rem;--thumb-size: 0.5rem;--border-size: 0.0625rem;--thumb-offset: 0.125rem;--label-gap: 0.5rem;font-weight:600}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}:host(:hover) [part~=control]{border-color:var(--border-hover-color)}:host(:hover) [part~=control][part~=checked]{background:var(--track-on-hover-color);border-color:var(--border-on-hover-color)}[part~=control][part~=focused]{box-shadow:0 0 0 .1875rem var(--focus-outline-color)}[part~=control][part~=checked][part~=focused]{box-shadow:0 0 0 .1875rem var(--focus-outline-color-focused)}[part~=control]{border-radius:var(--border-radius-track);width:var(--size);height:1rem;border:.125rem solid var(--border-color);background:var(--track-off-color)}[part~=control][part~=checked]{border-color:var(--border-on-color);background:var(--track-on-color)}[part~=thumb]{border-radius:var(--border-radius-thumb);width:var(--thumb-size);height:var(--thumb-size);min-width:var(--thumb-size);background:var(--thumb-off-color)}[part~=thumb]:not([part~=checked]){margin-inline-start:var(--thumb-offset)}[part~=thumb][part~=checked]{background:var(--thumb-on-color);margin-inline-start:calc(100% - var(--thumb-size) - var(--thumb-offset))}:host([disabled]) [part~=control][part~=checked],:host(:disabled) [part~=control][part~=checked]{border-color:rgba(0,0,0,0)}`;\n"]}
1
+ {"version":3,"file":"switch.indigo.css.js","sourceRoot":"","sources":["../../../../../../src/components/checkbox/themes/shared/switch/switch.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,u9CAAu9C,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--size: 2rem;--thumb-size: 0.5rem;--border-size: 0.0625rem;--thumb-offset: 0.125rem;--label-gap: 0.5rem;font-weight:600}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom)}[part~=control][part~=focused]{box-shadow:0 0 0 .1875rem var(--focus-outline-color)}[part~=control][part~=checked][part~=focused]{box-shadow:0 0 0 .1875rem var(--focus-outline-color-focused)}[part~=control]{border-radius:var(--border-radius-track);width:var(--size);height:1rem;border:.125rem solid var(--border-color);background:var(--track-off-color)}[part~=control][part~=checked]{border-color:var(--border-on-color);background:var(--track-on-color)}[part~=thumb]{border-radius:var(--border-radius-thumb);width:var(--thumb-size);height:var(--thumb-size);min-width:var(--thumb-size);background:var(--thumb-off-color)}[part~=thumb]:not([part~=checked]){margin-inline-start:var(--thumb-offset)}[part~=thumb][part~=checked]{background:var(--thumb-on-color);margin-inline-start:calc(100% - var(--thumb-size) - var(--thumb-offset))}:host([disabled]) [part~=control][part~=checked],:host(:disabled) [part~=control][part~=checked]{border-color:rgba(0,0,0,0)}`;\n"]}