igniteui-webcomponents 3.0.0 → 3.3.0-beta.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 (433) hide show
  1. package/CHANGELOG.md +58 -6
  2. package/README.md +56 -1
  3. package/components/avatar/avatar.js +2 -2
  4. package/components/avatar/avatar.js.map +1 -1
  5. package/components/badge/badge.js +3 -3
  6. package/components/badge/badge.js.map +1 -1
  7. package/components/badge/themes/light/badge.bootstrap.css.js +1 -1
  8. package/components/badge/themes/light/badge.bootstrap.css.js.map +1 -1
  9. package/components/button/button-base.d.ts +6 -1
  10. package/components/button/button-base.js +5 -1
  11. package/components/button/button-base.js.map +1 -1
  12. package/components/button/button.js +6 -6
  13. package/components/button/button.js.map +1 -1
  14. package/components/button/icon-button.d.ts +1 -1
  15. package/components/button/icon-button.js +19 -16
  16. package/components/button/icon-button.js.map +1 -1
  17. package/components/button/themes/button/light/button.base.css.js +1 -1
  18. package/components/button/themes/button/light/button.base.css.js.map +1 -1
  19. package/components/button/themes/button/light/button.material.css.js +1 -1
  20. package/components/button/themes/button/light/button.material.css.js.map +1 -1
  21. package/components/button/themes/icon-button/light/icon-button.base.css.js +1 -1
  22. package/components/button/themes/icon-button/light/icon-button.base.css.js.map +1 -1
  23. package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js +1 -1
  24. package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js.map +1 -1
  25. package/components/button/themes/icon-button/light/icon-button.fluent.css.js +1 -1
  26. package/components/button/themes/icon-button/light/icon-button.fluent.css.js.map +1 -1
  27. package/components/button/themes/icon-button/light/icon-button.indigo.css.js +1 -1
  28. package/components/button/themes/icon-button/light/icon-button.indigo.css.js.map +1 -1
  29. package/components/button/themes/icon-button/light/icon-button.material.css.js +1 -1
  30. package/components/button/themes/icon-button/light/icon-button.material.css.js.map +1 -1
  31. package/components/calendar/calendar.d.ts +8 -8
  32. package/components/calendar/calendar.js +16 -16
  33. package/components/calendar/calendar.js.map +1 -1
  34. package/components/calendar/common/calendar-base.d.ts +1 -1
  35. package/components/calendar/common/calendar-base.js +21 -15
  36. package/components/calendar/common/calendar-base.js.map +1 -1
  37. package/components/calendar/common/utils.d.ts +1 -1
  38. package/components/calendar/common/utils.js.map +1 -1
  39. package/components/calendar/days-view/days-view.d.ts +5 -5
  40. package/components/calendar/days-view/days-view.js +13 -11
  41. package/components/calendar/days-view/days-view.js.map +1 -1
  42. package/components/calendar/months-view/months-view.d.ts +3 -3
  43. package/components/calendar/months-view/months-view.js +12 -10
  44. package/components/calendar/months-view/months-view.js.map +1 -1
  45. package/components/calendar/themes/bootstrap/calendar.bootstrap.css.js +1 -1
  46. package/components/calendar/themes/bootstrap/calendar.bootstrap.css.js.map +1 -1
  47. package/components/calendar/years-view/years-view.d.ts +3 -3
  48. package/components/calendar/years-view/years-view.js +11 -9
  49. package/components/calendar/years-view/years-view.js.map +1 -1
  50. package/components/card/card.actions.js +3 -3
  51. package/components/card/card.actions.js.map +1 -1
  52. package/components/card/card.content.js +3 -3
  53. package/components/card/card.content.js.map +1 -1
  54. package/components/card/card.header.js +6 -4
  55. package/components/card/card.header.js.map +1 -1
  56. package/components/card/card.js +4 -4
  57. package/components/card/card.js.map +1 -1
  58. package/components/card/card.media.js +1 -1
  59. package/components/card/card.media.js.map +1 -1
  60. package/components/card/themes/light/card.header.bootstrap.css.js +1 -1
  61. package/components/card/themes/light/card.header.bootstrap.css.js.map +1 -1
  62. package/components/{nav-drawer/styles/indigo/nav-drawer-header-item.indigo.css.d.ts → card/themes/light/card.header.fluent.css.d.ts} +0 -0
  63. package/components/card/themes/light/card.header.fluent.css.js +3 -0
  64. package/components/card/themes/light/card.header.fluent.css.js.map +1 -0
  65. package/components/checkbox/checkbox-base.d.ts +1 -1
  66. package/components/checkbox/checkbox-base.js +2 -1
  67. package/components/checkbox/checkbox-base.js.map +1 -1
  68. package/components/checkbox/checkbox.js +6 -7
  69. package/components/checkbox/checkbox.js.map +1 -1
  70. package/components/checkbox/switch.js +6 -7
  71. package/components/checkbox/switch.js.map +1 -1
  72. package/components/checkbox/themes/light/checkbox.base.css.js +1 -1
  73. package/components/checkbox/themes/light/checkbox.base.css.js.map +1 -1
  74. package/components/checkbox/themes/light/checkbox.bootstrap.css.js +1 -1
  75. package/components/checkbox/themes/light/checkbox.bootstrap.css.js.map +1 -1
  76. package/components/checkbox/themes/light/checkbox.fluent.css.js +1 -1
  77. package/components/checkbox/themes/light/checkbox.fluent.css.js.map +1 -1
  78. package/components/checkbox/themes/light/checkbox.indigo.css.js +1 -1
  79. package/components/checkbox/themes/light/checkbox.indigo.css.js.map +1 -1
  80. package/components/checkbox/themes/light/checkbox.material.css.js +1 -1
  81. package/components/checkbox/themes/light/checkbox.material.css.js.map +1 -1
  82. package/components/checkbox/themes/light/switch.base.css.js +1 -1
  83. package/components/checkbox/themes/light/switch.base.css.js.map +1 -1
  84. package/components/checkbox/themes/light/switch.fluent.css.js +1 -1
  85. package/components/checkbox/themes/light/switch.fluent.css.js.map +1 -1
  86. package/components/chip/chip.d.ts +2 -1
  87. package/components/chip/chip.js +20 -9
  88. package/components/chip/chip.js.map +1 -1
  89. package/components/chip/themes/chip.base.css.js +1 -1
  90. package/components/chip/themes/chip.base.css.js.map +1 -1
  91. package/components/chip/themes/chip.bootstrap.css.js +1 -1
  92. package/components/chip/themes/chip.bootstrap.css.js.map +1 -1
  93. package/components/chip/themes/chip.fluent.css.js +1 -1
  94. package/components/chip/themes/chip.fluent.css.js.map +1 -1
  95. package/components/chip/themes/chip.indigo.css.js +1 -1
  96. package/components/chip/themes/chip.indigo.css.js.map +1 -1
  97. package/components/chip/themes/chip.material.css.js +1 -1
  98. package/components/chip/themes/chip.material.css.js.map +1 -1
  99. package/components/common/definitions/defineAllComponents.js +57 -41
  100. package/components/common/definitions/defineAllComponents.js.map +1 -1
  101. package/components/common/mixins/constructor.d.ts +1 -0
  102. package/components/common/mixins/constructor.js.map +1 -1
  103. package/components/common/mixins/event-emitter.d.ts +2 -2
  104. package/components/common/mixins/event-emitter.js +2 -2
  105. package/components/common/mixins/event-emitter.js.map +1 -1
  106. package/components/common/util.d.ts +18 -0
  107. package/components/common/util.js +17 -0
  108. package/components/common/util.js.map +1 -1
  109. package/components/date-time-input/date-time-input.d.ts +108 -0
  110. package/components/date-time-input/date-time-input.js +495 -0
  111. package/components/date-time-input/date-time-input.js.map +1 -0
  112. package/components/date-time-input/date-util.d.ts +89 -0
  113. package/components/date-time-input/date-util.js +597 -0
  114. package/components/date-time-input/date-util.js.map +1 -0
  115. package/components/dropdown/dropdown-group.d.ts +1 -1
  116. package/components/dropdown/dropdown-group.js +5 -3
  117. package/components/dropdown/dropdown-group.js.map +1 -1
  118. package/components/dropdown/dropdown-header.d.ts +1 -1
  119. package/components/dropdown/dropdown-header.js +3 -3
  120. package/components/dropdown/dropdown-header.js.map +1 -1
  121. package/components/dropdown/dropdown-item.js +6 -6
  122. package/components/dropdown/dropdown-item.js.map +1 -1
  123. package/components/dropdown/dropdown.d.ts +5 -5
  124. package/components/dropdown/dropdown.js +11 -10
  125. package/components/dropdown/dropdown.js.map +1 -1
  126. package/components/expansion-panel/expansion-panel.d.ts +73 -0
  127. package/components/expansion-panel/expansion-panel.js +168 -0
  128. package/components/expansion-panel/expansion-panel.js.map +1 -0
  129. package/components/{nav-drawer/styles/indigo/nav-drawer-item.indigo.css.d.ts → expansion-panel/themes/light/expansion-panel.base.css.d.ts} +0 -0
  130. package/components/expansion-panel/themes/light/expansion-panel.base.css.js +3 -0
  131. package/components/expansion-panel/themes/light/expansion-panel.base.css.js.map +1 -0
  132. package/components/{nav-drawer/styles/indigo/nav-drawer.indigo.css.d.ts → expansion-panel/themes/light/expansion-panel.bootstrap.css.d.ts} +0 -0
  133. package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js +3 -0
  134. package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js.map +1 -0
  135. package/components/{nav-drawer/styles/nav-drawer-header-item.base.css.d.ts → expansion-panel/themes/light/expansion-panel.fluent.css.d.ts} +0 -0
  136. package/components/expansion-panel/themes/light/expansion-panel.fluent.css.js +3 -0
  137. package/components/expansion-panel/themes/light/expansion-panel.fluent.css.js.map +1 -0
  138. package/components/{nav-drawer/styles/nav-drawer-item.base.css.d.ts → expansion-panel/themes/light/expansion-panel.indigo.css.d.ts} +0 -0
  139. package/components/expansion-panel/themes/light/expansion-panel.indigo.css.js +3 -0
  140. package/components/expansion-panel/themes/light/expansion-panel.indigo.css.js.map +1 -0
  141. package/components/form/form.d.ts +2 -2
  142. package/components/form/form.js +15 -4
  143. package/components/form/form.js.map +1 -1
  144. package/components/icon/icon.d.ts +1 -1
  145. package/components/icon/icon.js +3 -2
  146. package/components/icon/icon.js.map +1 -1
  147. package/components/icon/icon.material.css.js +1 -1
  148. package/components/icon/icon.material.css.js.map +1 -1
  149. package/components/icon/icon.registry.js +5 -0
  150. package/components/icon/icon.registry.js.map +1 -1
  151. package/components/input/input-base.d.ts +7 -4
  152. package/components/input/input-base.js +20 -12
  153. package/components/input/input-base.js.map +1 -1
  154. package/components/input/input.d.ts +2 -5
  155. package/components/input/input.js +13 -7
  156. package/components/input/input.js.map +1 -1
  157. package/components/input/themes/light/input.base.css.js +1 -1
  158. package/components/input/themes/light/input.base.css.js.map +1 -1
  159. package/components/input/themes/light/input.bootstrap.css.js +1 -1
  160. package/components/input/themes/light/input.bootstrap.css.js.map +1 -1
  161. package/components/list/list-header.js +3 -3
  162. package/components/list/list-header.js.map +1 -1
  163. package/components/list/list-item.js +5 -5
  164. package/components/list/list-item.js.map +1 -1
  165. package/components/list/list.d.ts +1 -1
  166. package/components/list/list.js +4 -4
  167. package/components/list/list.js.map +1 -1
  168. package/components/list/themes/light/list-item.bootstrap.css.js +1 -1
  169. package/components/list/themes/light/list-item.bootstrap.css.js.map +1 -1
  170. package/components/list/themes/light/list-item.fluent.css.js +1 -1
  171. package/components/list/themes/light/list-item.fluent.css.js.map +1 -1
  172. package/components/list/themes/light/list-item.indigo.css.js +1 -1
  173. package/components/list/themes/light/list-item.indigo.css.js.map +1 -1
  174. package/components/list/themes/light/list.base.css.js +1 -1
  175. package/components/list/themes/light/list.base.css.js.map +1 -1
  176. package/components/mask-input/mask-input-base.d.ts +38 -0
  177. package/components/mask-input/mask-input-base.js +110 -0
  178. package/components/mask-input/mask-input-base.js.map +1 -0
  179. package/components/mask-input/mask-input.d.ts +71 -0
  180. package/components/mask-input/mask-input.js +182 -0
  181. package/components/mask-input/mask-input.js.map +1 -0
  182. package/components/mask-input/mask-parser.d.ts +30 -0
  183. package/components/mask-input/mask-parser.js +167 -0
  184. package/components/mask-input/mask-parser.js.map +1 -0
  185. package/components/nav-drawer/nav-drawer-header-item.js +5 -4
  186. package/components/nav-drawer/nav-drawer-header-item.js.map +1 -1
  187. package/components/nav-drawer/nav-drawer-item.d.ts +1 -0
  188. package/components/nav-drawer/nav-drawer-item.js +11 -7
  189. package/components/nav-drawer/nav-drawer-item.js.map +1 -1
  190. package/components/nav-drawer/nav-drawer.js +4 -4
  191. package/components/nav-drawer/nav-drawer.js.map +1 -1
  192. package/components/nav-drawer/{styles/nav-drawer.base.css.d.ts → themes/dark/nav-drawer-item.base.css.d.ts} +0 -0
  193. package/components/nav-drawer/themes/dark/nav-drawer-item.base.css.js +3 -0
  194. package/components/nav-drawer/themes/dark/nav-drawer-item.base.css.js.map +1 -0
  195. package/components/{snackbar/themes/snackbar.base.css.d.ts → nav-drawer/themes/dark/nav-drawer-item.bootstrap.css.d.ts} +0 -0
  196. package/components/nav-drawer/themes/dark/nav-drawer-item.bootstrap.css.js +3 -0
  197. package/components/nav-drawer/themes/dark/nav-drawer-item.bootstrap.css.js.map +1 -0
  198. package/components/{snackbar/themes/snackbar.bootstrap.css.d.ts → nav-drawer/themes/dark/nav-drawer-item.fluent.css.d.ts} +0 -0
  199. package/components/nav-drawer/themes/dark/nav-drawer-item.fluent.css.js +3 -0
  200. package/components/nav-drawer/themes/dark/nav-drawer-item.fluent.css.js.map +1 -0
  201. package/components/{snackbar/themes/snackbar.fluent.css.d.ts → nav-drawer/themes/dark/nav-drawer-item.indigo.css.d.ts} +0 -0
  202. package/components/nav-drawer/themes/dark/nav-drawer-item.indigo.css.js +3 -0
  203. package/components/nav-drawer/themes/dark/nav-drawer-item.indigo.css.js.map +1 -0
  204. package/components/{snackbar/themes/snackbar.indigo.css.d.ts → nav-drawer/themes/dark/nav-drawer.indigo.css.d.ts} +0 -0
  205. package/components/nav-drawer/themes/dark/nav-drawer.indigo.css.js +3 -0
  206. package/components/nav-drawer/themes/dark/nav-drawer.indigo.css.js.map +1 -0
  207. package/components/nav-drawer/themes/light/fluent/nav-drawer-header-item.fluent.css.d.ts +1 -0
  208. package/components/nav-drawer/themes/light/fluent/nav-drawer-header-item.fluent.css.js +3 -0
  209. package/components/nav-drawer/themes/light/fluent/nav-drawer-header-item.fluent.css.js.map +1 -0
  210. package/components/nav-drawer/themes/light/fluent/nav-drawer-item.fluent.css.d.ts +1 -0
  211. package/components/nav-drawer/themes/light/fluent/nav-drawer-item.fluent.css.js +3 -0
  212. package/components/nav-drawer/themes/light/fluent/nav-drawer-item.fluent.css.js.map +1 -0
  213. package/components/nav-drawer/themes/light/indigo/nav-drawer-header-item.indigo.css.d.ts +1 -0
  214. package/components/nav-drawer/{styles → themes/light}/indigo/nav-drawer-header-item.indigo.css.js +0 -0
  215. package/components/nav-drawer/themes/light/indigo/nav-drawer-header-item.indigo.css.js.map +1 -0
  216. package/components/nav-drawer/themes/light/indigo/nav-drawer-item.indigo.css.d.ts +1 -0
  217. package/components/nav-drawer/themes/light/indigo/nav-drawer-item.indigo.css.js +3 -0
  218. package/components/nav-drawer/themes/light/indigo/nav-drawer-item.indigo.css.js.map +1 -0
  219. package/components/nav-drawer/themes/light/indigo/nav-drawer.indigo.css.d.ts +1 -0
  220. package/components/nav-drawer/themes/light/indigo/nav-drawer.indigo.css.js +3 -0
  221. package/components/nav-drawer/themes/light/indigo/nav-drawer.indigo.css.js.map +1 -0
  222. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.d.ts +1 -0
  223. package/components/nav-drawer/{styles → themes/light}/nav-drawer-header-item.base.css.js +1 -1
  224. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.js.map +1 -0
  225. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.d.ts +1 -0
  226. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js +3 -0
  227. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js.map +1 -0
  228. package/components/nav-drawer/themes/light/nav-drawer.base.css.d.ts +1 -0
  229. package/components/nav-drawer/{styles → themes/light}/nav-drawer.base.css.js +1 -1
  230. package/components/nav-drawer/themes/light/nav-drawer.base.css.js.map +1 -0
  231. package/components/navbar/navbar.js +6 -5
  232. package/components/navbar/navbar.js.map +1 -1
  233. package/components/navbar/themes/light/navbar.base.css.js +1 -1
  234. package/components/navbar/themes/light/navbar.base.css.js.map +1 -1
  235. package/components/navbar/themes/light/navbar.bootstrap.css.js +1 -1
  236. package/components/navbar/themes/light/navbar.bootstrap.css.js.map +1 -1
  237. package/components/navbar/themes/light/navbar.fluent.css.d.ts +1 -0
  238. package/components/navbar/themes/light/navbar.fluent.css.js +3 -0
  239. package/components/navbar/themes/light/navbar.fluent.css.js.map +1 -0
  240. package/components/progress/base.js +2 -2
  241. package/components/progress/base.js.map +1 -1
  242. package/components/progress/circular-progress.d.ts +2 -2
  243. package/components/progress/circular-progress.js +6 -6
  244. package/components/progress/circular-progress.js.map +1 -1
  245. package/components/progress/linear-progress.d.ts +1 -1
  246. package/components/progress/linear-progress.js +7 -7
  247. package/components/progress/linear-progress.js.map +1 -1
  248. package/components/radio/radio.d.ts +1 -1
  249. package/components/radio/radio.js +9 -9
  250. package/components/radio/radio.js.map +1 -1
  251. package/components/radio/themes/light/radio.base.css.js +1 -1
  252. package/components/radio/themes/light/radio.base.css.js.map +1 -1
  253. package/components/radio/themes/light/radio.fluent.css.js +1 -1
  254. package/components/radio/themes/light/radio.fluent.css.js.map +1 -1
  255. package/components/radio-group/radio-group.js +1 -1
  256. package/components/radio-group/radio-group.js.map +1 -1
  257. package/components/rating/rating.base.css.js +1 -1
  258. package/components/rating/rating.base.css.js.map +1 -1
  259. package/components/rating/rating.d.ts +2 -2
  260. package/components/rating/rating.fluent.css.js +1 -1
  261. package/components/rating/rating.fluent.css.js.map +1 -1
  262. package/components/rating/rating.js +10 -10
  263. package/components/rating/rating.js.map +1 -1
  264. package/components/ripple/ripple.js +1 -1
  265. package/components/ripple/ripple.js.map +1 -1
  266. package/components/slider/range-slider.d.ts +3 -3
  267. package/components/slider/range-slider.js +2 -2
  268. package/components/slider/range-slider.js.map +1 -1
  269. package/components/slider/slider-base.js +8 -7
  270. package/components/slider/slider-base.js.map +1 -1
  271. package/components/slider/slider.d.ts +3 -3
  272. package/components/slider/slider.js +2 -2
  273. package/components/slider/slider.js.map +1 -1
  274. package/components/snackbar/snackbar.d.ts +3 -1
  275. package/components/snackbar/snackbar.js +9 -5
  276. package/components/snackbar/snackbar.js.map +1 -1
  277. package/components/snackbar/themes/dark/snackbar.indigo.css.d.ts +1 -0
  278. package/components/snackbar/themes/dark/snackbar.indigo.css.js +3 -0
  279. package/components/snackbar/themes/dark/snackbar.indigo.css.js.map +1 -0
  280. package/components/snackbar/themes/light/snackbar.base.css.d.ts +1 -0
  281. package/components/snackbar/themes/light/snackbar.base.css.js +3 -0
  282. package/components/snackbar/themes/light/snackbar.base.css.js.map +1 -0
  283. package/components/snackbar/themes/light/snackbar.bootstrap.css.d.ts +1 -0
  284. package/components/snackbar/themes/light/snackbar.bootstrap.css.js +3 -0
  285. package/components/snackbar/themes/light/snackbar.bootstrap.css.js.map +1 -0
  286. package/components/snackbar/themes/light/snackbar.fluent.css.d.ts +1 -0
  287. package/components/snackbar/themes/light/snackbar.fluent.css.js +3 -0
  288. package/components/snackbar/themes/light/snackbar.fluent.css.js.map +1 -0
  289. package/components/snackbar/themes/light/snackbar.indigo.css.d.ts +1 -0
  290. package/components/snackbar/themes/light/snackbar.indigo.css.js +3 -0
  291. package/components/snackbar/themes/light/snackbar.indigo.css.js.map +1 -0
  292. package/components/tabs/tab-panel.d.ts +20 -0
  293. package/components/tabs/tab-panel.js +21 -0
  294. package/components/tabs/tab-panel.js.map +1 -0
  295. package/components/tabs/tab.d.ts +37 -0
  296. package/components/tabs/tab.js +71 -0
  297. package/components/tabs/tab.js.map +1 -0
  298. package/components/tabs/tabs.d.ts +80 -0
  299. package/components/tabs/tabs.js +308 -0
  300. package/components/tabs/tabs.js.map +1 -0
  301. package/components/tabs/themes/dark/tab.dark.base.css.d.ts +1 -0
  302. package/components/tabs/themes/dark/tab.dark.base.css.js +3 -0
  303. package/components/tabs/themes/dark/tab.dark.base.css.js.map +1 -0
  304. package/components/tabs/themes/dark/tab.dark.bootstrap.css.d.ts +1 -0
  305. package/components/tabs/themes/dark/tab.dark.bootstrap.css.js +3 -0
  306. package/components/tabs/themes/dark/tab.dark.bootstrap.css.js.map +1 -0
  307. package/components/tabs/themes/light/tab-panel.base.css.d.ts +1 -0
  308. package/components/tabs/themes/light/tab-panel.base.css.js +3 -0
  309. package/components/tabs/themes/light/tab-panel.base.css.js.map +1 -0
  310. package/components/tabs/themes/light/tab.base.css.d.ts +1 -0
  311. package/components/tabs/themes/light/tab.base.css.js +3 -0
  312. package/components/tabs/themes/light/tab.base.css.js.map +1 -0
  313. package/components/tabs/themes/light/tab.bootstrap.css.d.ts +1 -0
  314. package/components/tabs/themes/light/tab.bootstrap.css.js +3 -0
  315. package/components/tabs/themes/light/tab.bootstrap.css.js.map +1 -0
  316. package/components/tabs/themes/light/tab.fluent.css.d.ts +1 -0
  317. package/components/tabs/themes/light/tab.fluent.css.js +3 -0
  318. package/components/tabs/themes/light/tab.fluent.css.js.map +1 -0
  319. package/components/tabs/themes/light/tab.indigo.css.d.ts +1 -0
  320. package/components/tabs/themes/light/tab.indigo.css.js +3 -0
  321. package/components/tabs/themes/light/tab.indigo.css.js.map +1 -0
  322. package/components/tabs/themes/light/tabs.base.css.d.ts +1 -0
  323. package/components/tabs/themes/light/tabs.base.css.js +3 -0
  324. package/components/tabs/themes/light/tabs.base.css.js.map +1 -0
  325. package/components/tabs/themes/light/tabs.bootstrap.css.d.ts +1 -0
  326. package/components/tabs/themes/light/tabs.bootstrap.css.js +3 -0
  327. package/components/tabs/themes/light/tabs.bootstrap.css.js.map +1 -0
  328. package/components/tabs/themes/light/tabs.fluent.css.d.ts +1 -0
  329. package/components/tabs/themes/light/tabs.fluent.css.js +3 -0
  330. package/components/tabs/themes/light/tabs.fluent.css.js.map +1 -0
  331. package/components/tabs/themes/light/tabs.indigo.css.d.ts +1 -0
  332. package/components/tabs/themes/light/tabs.indigo.css.js +3 -0
  333. package/components/tabs/themes/light/tabs.indigo.css.js.map +1 -0
  334. package/components/tabs/utils.d.ts +14 -0
  335. package/components/tabs/utils.js +32 -0
  336. package/components/tabs/utils.js.map +1 -0
  337. package/components/toast/themes/toast.base.css.js +1 -1
  338. package/components/toast/themes/toast.base.css.js.map +1 -1
  339. package/components/toast/toast.js +5 -5
  340. package/components/toast/toast.js.map +1 -1
  341. package/components/toggle/toggle.controller.d.ts +3 -3
  342. package/components/toggle/toggle.controller.js +1 -1
  343. package/components/toggle/toggle.controller.js.map +1 -1
  344. package/components/toggle/toggle.directive.d.ts +1 -1
  345. package/components/toggle/toggle.directive.js +5 -4
  346. package/components/toggle/toggle.directive.js.map +1 -1
  347. package/components/toggle/{utilities.d.ts → types.d.ts} +0 -0
  348. package/components/toggle/types.js +2 -0
  349. package/components/toggle/types.js.map +1 -0
  350. package/components/tree/themes/dark/tree-item.bootstrap.css.d.ts +1 -0
  351. package/components/tree/themes/dark/tree-item.bootstrap.css.js +3 -0
  352. package/components/tree/themes/dark/tree-item.bootstrap.css.js.map +1 -0
  353. package/components/tree/themes/dark/tree-item.fluent.css.d.ts +1 -0
  354. package/components/tree/themes/dark/tree-item.fluent.css.js +3 -0
  355. package/components/tree/themes/dark/tree-item.fluent.css.js.map +1 -0
  356. package/components/tree/themes/dark/tree-item.indigo.css.d.ts +1 -0
  357. package/components/tree/themes/dark/tree-item.indigo.css.js +3 -0
  358. package/components/tree/themes/dark/tree-item.indigo.css.js.map +1 -0
  359. package/components/tree/themes/light/tree-item.base.css.d.ts +1 -0
  360. package/components/tree/themes/light/tree-item.base.css.js +3 -0
  361. package/components/tree/themes/light/tree-item.base.css.js.map +1 -0
  362. package/components/tree/themes/light/tree-item.bootstrap.css.d.ts +1 -0
  363. package/components/tree/themes/light/tree-item.bootstrap.css.js +3 -0
  364. package/components/tree/themes/light/tree-item.bootstrap.css.js.map +1 -0
  365. package/components/tree/themes/light/tree-item.fluent.css.d.ts +1 -0
  366. package/components/tree/themes/light/tree-item.fluent.css.js +3 -0
  367. package/components/tree/themes/light/tree-item.fluent.css.js.map +1 -0
  368. package/components/tree/themes/light/tree-item.indigo.css.d.ts +1 -0
  369. package/components/tree/themes/light/tree-item.indigo.css.js +3 -0
  370. package/components/tree/themes/light/tree-item.indigo.css.js.map +1 -0
  371. package/components/tree/themes/light/tree.base.css.d.ts +1 -0
  372. package/components/tree/themes/light/tree.base.css.js +3 -0
  373. package/components/tree/themes/light/tree.base.css.js.map +1 -0
  374. package/components/tree/tree-item.d.ts +117 -0
  375. package/components/tree/tree-item.js +458 -0
  376. package/components/tree/tree-item.js.map +1 -0
  377. package/components/tree/tree.common.d.ts +17 -0
  378. package/components/tree/tree.common.js +2 -0
  379. package/components/tree/tree.common.js.map +1 -0
  380. package/components/tree/tree.d.ts +71 -0
  381. package/components/tree/tree.js +149 -0
  382. package/components/tree/tree.js.map +1 -0
  383. package/components/tree/tree.navigation.d.ts +41 -0
  384. package/components/tree/tree.navigation.js +260 -0
  385. package/components/tree/tree.navigation.js.map +1 -0
  386. package/components/tree/tree.selection.d.ts +55 -0
  387. package/components/tree/tree.selection.js +265 -0
  388. package/components/tree/tree.selection.js.map +1 -0
  389. package/custom-elements.json +1260 -125
  390. package/index.d.ts +62 -52
  391. package/index.js +60 -51
  392. package/index.js.map +1 -1
  393. package/package.json +3 -3
  394. package/themes/dark/bootstrap.css +1 -1
  395. package/themes/dark/fluent.css +1 -1
  396. package/themes/dark/indigo.css +1 -1
  397. package/themes/dark/material.css +1 -1
  398. package/themes/light/bootstrap.css +1 -1
  399. package/themes/light/fluent.css +1 -1
  400. package/theming/config.d.ts +1 -1
  401. package/theming/config.js +2 -2
  402. package/theming/config.js.map +1 -1
  403. package/theming/index.d.ts +3 -3
  404. package/theming/index.js +3 -3
  405. package/theming/index.js.map +1 -1
  406. package/theming/{theming-controlller.d.ts → theming-controller.d.ts} +1 -1
  407. package/theming/{theming-controlller.js → theming-controller.js} +3 -3
  408. package/theming/theming-controller.js.map +1 -0
  409. package/theming/theming-decorator.js +1 -1
  410. package/theming/theming-decorator.js.map +1 -1
  411. package/theming/theming-event.d.ts +1 -1
  412. package/theming/theming-event.js.map +1 -1
  413. package/vscode-html-custom-data.json +507 -60
  414. package/components/nav-drawer/styles/indigo/nav-drawer-header-item.indigo.css.js.map +0 -1
  415. package/components/nav-drawer/styles/indigo/nav-drawer-item.indigo.css.js +0 -3
  416. package/components/nav-drawer/styles/indigo/nav-drawer-item.indigo.css.js.map +0 -1
  417. package/components/nav-drawer/styles/indigo/nav-drawer.indigo.css.js +0 -3
  418. package/components/nav-drawer/styles/indigo/nav-drawer.indigo.css.js.map +0 -1
  419. package/components/nav-drawer/styles/nav-drawer-header-item.base.css.js.map +0 -1
  420. package/components/nav-drawer/styles/nav-drawer-item.base.css.js +0 -3
  421. package/components/nav-drawer/styles/nav-drawer-item.base.css.js.map +0 -1
  422. package/components/nav-drawer/styles/nav-drawer.base.css.js.map +0 -1
  423. package/components/snackbar/themes/snackbar.base.css.js +0 -3
  424. package/components/snackbar/themes/snackbar.base.css.js.map +0 -1
  425. package/components/snackbar/themes/snackbar.bootstrap.css.js +0 -3
  426. package/components/snackbar/themes/snackbar.bootstrap.css.js.map +0 -1
  427. package/components/snackbar/themes/snackbar.fluent.css.js +0 -3
  428. package/components/snackbar/themes/snackbar.fluent.css.js.map +0 -1
  429. package/components/snackbar/themes/snackbar.indigo.css.js +0 -3
  430. package/components/snackbar/themes/snackbar.indigo.css.js.map +0 -1
  431. package/components/toggle/utilities.js +0 -2
  432. package/components/toggle/utilities.js.map +0 -1
  433. package/theming/theming-controlller.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { IgcProgressBaseComponent } from './base';
1
+ import { IgcProgressBaseComponent } from './base.js';
2
2
  /**
3
3
  * A linear progress indicator used to express unspecified wait time or display
4
4
  * the length of a process.
@@ -6,14 +6,14 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { html, nothing } from 'lit';
8
8
  import { property } from 'lit/decorators.js';
9
- import { asPercent, partNameMap } from '../common/util';
10
- import { IgcProgressBaseComponent } from './base';
11
- import { styles } from './themes/linear/linear.progress.base.css';
12
- import { styles as bootstrap } from './themes/linear/linear.progress.bootstrap.css';
13
- import { styles as fluent } from './themes/linear/linear.progress.fluent.css';
14
- import { styles as indigo } from './themes/linear/linear.progress.indigo.css';
15
- import { themes } from '../../theming';
9
+ import { asPercent, partNameMap } from '../common/util.js';
10
+ import { IgcProgressBaseComponent } from './base.js';
11
+ import { styles } from './themes/linear/linear.progress.base.css.js';
12
+ import { styles as bootstrap } from './themes/linear/linear.progress.bootstrap.css.js';
13
+ import { styles as fluent } from './themes/linear/linear.progress.fluent.css.js';
14
+ import { styles as indigo } from './themes/linear/linear.progress.indigo.css.js';
16
15
  import { styleMap } from 'lit/directives/style-map.js';
16
+ import { themes } from '../../theming/theming-decorator.js';
17
17
  let IgcLinearProgressComponent = class IgcLinearProgressComponent extends IgcProgressBaseComponent {
18
18
  constructor() {
19
19
  super(...arguments);
@@ -1 +1 @@
1
- {"version":3,"file":"linear-progress.js","sourceRoot":"","sources":["../../../src/components/progress/linear-progress.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,QAAQ,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;AAClE,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAuBvD,IAAqB,0BAA0B,GAA/C,MAAqB,0BAA2B,SAAQ,wBAAwB;IAAhF;;QAMS,YAAO,GAAG,KAAK,CAAC;QAIhB,eAAU,GAME,WAAW,CAAC;IAuCjC,CAAC;IArCC,IAAc,YAAY;QACxB,OAAO;YACL,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,SAAS;YACnC,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,SAAS;YACnC,MAAM,EAAE,IAAI,CAAC,OAAO,KAAK,QAAQ;YACjC,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,SAAS;YACnC,IAAI,EAAE,IAAI,CAAC,OAAO,KAAK,MAAM;SAC9B,CAAC;IACJ,CAAC;IAED,IAAc,QAAQ;QACpB,OAAO;YACL,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG;YAC5C,YAAY,EAAE,IAAI,CAAC,iBAAiB,GAAG,IAAI;SAC5C,CAAC;IACJ,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA;;;;;wBAKS,IAAI,CAAC,GAAG;wBACR,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK;;;kBAG/C,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC;mBAC7B,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;;;QAGlC,IAAI,CAAC,iBAAiB,EAAE;KAC3B,CAAC;IACJ,CAAC;CACF,CAAA;AAtDwB,kCAAO,GAAG,qBAAsB,CAAA;AAChC,iCAAM,GAAG,MAAO,CAAA;AAIvC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;2DACpB;AAIvB;IADC,QAAQ,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;8DAOvB;AAhBZ,0BAA0B;IAD9C,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;GACjB,0BAA0B,CAuD9C;eAvDoB,0BAA0B","sourcesContent":["import { html, nothing } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { asPercent, partNameMap } from '../common/util';\nimport { IgcProgressBaseComponent } from './base';\nimport { styles } from './themes/linear/linear.progress.base.css';\nimport { styles as bootstrap } from './themes/linear/linear.progress.bootstrap.css';\nimport { styles as fluent } from './themes/linear/linear.progress.fluent.css';\nimport { styles as indigo } from './themes/linear/linear.progress.indigo.css';\nimport { themes } from '../../theming';\nimport { styleMap } from 'lit/directives/style-map.js';\n\n/**\n * A linear progress indicator used to express unspecified wait time or display\n * the length of a process.\n *\n * @element igc-linear-progress\n *\n * @slot - The text area container.\n *\n * @csspart track\n * @csspart fill\n * @csspart striped\n * @csspart label\n * @csspart value\n * @csspart indeterminate\n * @csspart primary\n * @csspart danger\n * @csspart warning\n * @csspart info\n * @csspart success\n */\n@themes({ bootstrap, indigo, fluent })\nexport default class IgcLinearProgressComponent extends IgcProgressBaseComponent {\n public static readonly tagName = 'igc-linear-progress';\n public static override styles = styles;\n\n /** Sets the striped look of the control. */\n @property({ type: Boolean, reflect: true })\n public striped = false;\n\n /** The position for the default label of the control. */\n @property({ attribute: 'label-align', reflect: true })\n public labelAlign:\n | 'top-start'\n | 'top'\n | 'top-end'\n | 'bottom-start'\n | 'bottom'\n | 'bottom-end' = 'top-start';\n\n protected get wrapperParts() {\n return {\n fill: true,\n striped: this.striped,\n indeterminate: this.indeterminate,\n primary: this.variant === 'primary',\n success: this.variant === 'success',\n danger: this.variant === 'danger',\n warning: this.variant === 'warning',\n info: this.variant === 'info',\n };\n }\n\n protected get animInfo() {\n return {\n width: asPercent(this.value, this.max) + '%',\n '--duration': this.animationDuration + 'ms',\n };\n }\n\n protected override render() {\n return html`\n <div\n part=\"track\"\n role=\"progressbar\"\n aria-valuemin=\"0\"\n aria-valuemax=${this.max}\n aria-valuenow=${this.indeterminate ? nothing : this.value}\n >\n <div\n part=\"${partNameMap(this.wrapperParts)}\"\n style=\"${styleMap(this.animInfo)}\"\n ></div>\n </div>\n ${this.renderDefaultSlot()}\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-linear-progress': IgcLinearProgressComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"linear-progress.js","sourceRoot":"","sources":["../../../src/components/progress/linear-progress.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,6CAA6C,CAAC;AACrE,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,kDAAkD,CAAC;AACvF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,+CAA+C,CAAC;AACjF,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,+CAA+C,CAAC;AACjF,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAuB5D,IAAqB,0BAA0B,GAA/C,MAAqB,0BAA2B,SAAQ,wBAAwB;IAAhF;;QAMS,YAAO,GAAG,KAAK,CAAC;QAIhB,eAAU,GAME,WAAW,CAAC;IAuCjC,CAAC;IArCC,IAAc,YAAY;QACxB,OAAO;YACL,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,SAAS;YACnC,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,SAAS;YACnC,MAAM,EAAE,IAAI,CAAC,OAAO,KAAK,QAAQ;YACjC,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,SAAS;YACnC,IAAI,EAAE,IAAI,CAAC,OAAO,KAAK,MAAM;SAC9B,CAAC;IACJ,CAAC;IAED,IAAc,QAAQ;QACpB,OAAO;YACL,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG;YAC5C,YAAY,EAAE,IAAI,CAAC,iBAAiB,GAAG,IAAI;SAC5C,CAAC;IACJ,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA;;;;;wBAKS,IAAI,CAAC,GAAG;wBACR,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK;;;kBAG/C,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC;mBAC7B,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;;;QAGlC,IAAI,CAAC,iBAAiB,EAAE;KAC3B,CAAC;IACJ,CAAC;CACF,CAAA;AAtDwB,kCAAO,GAAG,qBAAsB,CAAA;AAChC,iCAAM,GAAG,MAAO,CAAA;AAIvC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;2DACpB;AAIvB;IADC,QAAQ,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;8DAOvB;AAhBZ,0BAA0B;IAD9C,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;GACjB,0BAA0B,CAuD9C;eAvDoB,0BAA0B","sourcesContent":["import { html, nothing } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { asPercent, partNameMap } from '../common/util.js';\nimport { IgcProgressBaseComponent } from './base.js';\nimport { styles } from './themes/linear/linear.progress.base.css.js';\nimport { styles as bootstrap } from './themes/linear/linear.progress.bootstrap.css.js';\nimport { styles as fluent } from './themes/linear/linear.progress.fluent.css.js';\nimport { styles as indigo } from './themes/linear/linear.progress.indigo.css.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport { themes } from '../../theming/theming-decorator.js';\n\n/**\n * A linear progress indicator used to express unspecified wait time or display\n * the length of a process.\n *\n * @element igc-linear-progress\n *\n * @slot - The text area container.\n *\n * @csspart track\n * @csspart fill\n * @csspart striped\n * @csspart label\n * @csspart value\n * @csspart indeterminate\n * @csspart primary\n * @csspart danger\n * @csspart warning\n * @csspart info\n * @csspart success\n */\n@themes({ bootstrap, indigo, fluent })\nexport default class IgcLinearProgressComponent extends IgcProgressBaseComponent {\n public static readonly tagName = 'igc-linear-progress';\n public static override styles = styles;\n\n /** Sets the striped look of the control. */\n @property({ type: Boolean, reflect: true })\n public striped = false;\n\n /** The position for the default label of the control. */\n @property({ attribute: 'label-align', reflect: true })\n public labelAlign:\n | 'top-start'\n | 'top'\n | 'top-end'\n | 'bottom-start'\n | 'bottom'\n | 'bottom-end' = 'top-start';\n\n protected get wrapperParts() {\n return {\n fill: true,\n striped: this.striped,\n indeterminate: this.indeterminate,\n primary: this.variant === 'primary',\n success: this.variant === 'success',\n danger: this.variant === 'danger',\n warning: this.variant === 'warning',\n info: this.variant === 'info',\n };\n }\n\n protected get animInfo() {\n return {\n width: asPercent(this.value, this.max) + '%',\n '--duration': this.animationDuration + 'ms',\n };\n }\n\n protected override render() {\n return html`\n <div\n part=\"track\"\n role=\"progressbar\"\n aria-valuemin=\"0\"\n aria-valuemax=${this.max}\n aria-valuenow=${this.indeterminate ? nothing : this.value}\n >\n <div\n part=\"${partNameMap(this.wrapperParts)}\"\n style=\"${styleMap(this.animInfo)}\"\n ></div>\n </div>\n ${this.renderDefaultSlot()}\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-linear-progress': IgcLinearProgressComponent;\n }\n}\n"]}
@@ -5,7 +5,7 @@ export interface IgcRadioEventMap {
5
5
  igcFocus: CustomEvent<void>;
6
6
  igcBlur: CustomEvent<void>;
7
7
  }
8
- declare const IgcRadioComponent_base: Constructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcRadioEventMap>> & Constructor<LitElement>;
8
+ declare const IgcRadioComponent_base: import("../common/mixins/constructor.js").AbstractConstructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcRadioEventMap>> & Constructor<LitElement>;
9
9
  /**
10
10
  * @element igc-radio
11
11
  *
@@ -8,15 +8,17 @@ import { html, LitElement } from 'lit';
8
8
  import { property, query, state } from 'lit/decorators.js';
9
9
  import { ifDefined } from 'lit/directives/if-defined.js';
10
10
  import { live } from 'lit/directives/live.js';
11
- import { themes } from '../../theming';
12
- import { alternateName, blazorTwoWayBind, watch } from '../common/decorators';
11
+ import { themes } from '../../theming/theming-decorator.js';
12
+ import { alternateName } from '../common/decorators/alternateName.js';
13
+ import { blazorTwoWayBind } from '../common/decorators/blazorTwoWayBind.js';
14
+ import { watch } from '../common/decorators/watch.js';
13
15
  import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
14
16
  import { partNameMap } from '../common/util.js';
15
- import { styles } from './themes/light/radio.base.css';
16
- import { styles as bootstrap } from './themes/light/radio.bootstrap.css';
17
- import { styles as fluent } from './themes/light/radio.fluent.css';
18
- import { styles as indigo } from './themes/light/radio.indigo.css';
19
- import { styles as material } from './themes/light/radio.material.css';
17
+ import { styles } from './themes/light/radio.base.css.js';
18
+ import { styles as bootstrap } from './themes/light/radio.bootstrap.css.js';
19
+ import { styles as fluent } from './themes/light/radio.fluent.css.js';
20
+ import { styles as indigo } from './themes/light/radio.indigo.css.js';
21
+ import { styles as material } from './themes/light/radio.material.css.js';
20
22
  let nextId = 0;
21
23
  let IgcRadioComponent = class IgcRadioComponent extends EventEmitterMixin(LitElement) {
22
24
  constructor() {
@@ -110,7 +112,6 @@ let IgcRadioComponent = class IgcRadioComponent extends EventEmitterMixin(LitEle
110
112
  })}"
111
113
  for="${this.inputId}"
112
114
  @pointerdown="${this.handleMouseDown}"
113
- .focused="${this.focused}"
114
115
  >
115
116
  <input
116
117
  id="${this.inputId}"
@@ -119,7 +120,6 @@ let IgcRadioComponent = class IgcRadioComponent extends EventEmitterMixin(LitEle
119
120
  value="${ifDefined(this.value)}"
120
121
  .required="${this.required}"
121
122
  .disabled="${this.disabled}"
122
- .invalid="${this.invalid}"
123
123
  .checked="${live(this.checked)}"
124
124
  tabindex=${this._tabIndex}
125
125
  aria-checked="${this.checked ? 'true' : 'false'}"
@@ -1 +1 @@
1
- {"version":3,"file":"radio.js","sourceRoot":"","sources":["../../../src/components/radio/radio.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\nimport { property, query, state } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { themes } from '../../theming';\nimport { alternateName, blazorTwoWayBind, watch } from '../common/decorators';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { partNameMap } from '../common/util.js';\nimport { styles } from './themes/light/radio.base.css';\nimport { styles as bootstrap } from './themes/light/radio.bootstrap.css';\nimport { styles as fluent } from './themes/light/radio.fluent.css';\nimport { styles as indigo } from './themes/light/radio.indigo.css';\nimport { styles as material } from './themes/light/radio.material.css';\n\nlet nextId = 0;\n\nexport interface IgcRadioEventMap {\n igcChange: CustomEvent<boolean>;\n igcFocus: CustomEvent<void>;\n igcBlur: CustomEvent<void>;\n}\n\n/**\n * @element igc-radio\n *\n * @slot - The radio label.\n *\n * @fires igcChange - Emitted when the control's checked state changes.\n * @fires igcFocus - Emitted when the control gains focus.\n * @fires igcBlur - Emitted when the control loses focus.\n *\n * @csspart base - The radio control base wrapper.\n * @csspart control - The radio control.\n * @csspart label - The radio control label.\n */\n@themes({ material, bootstrap, fluent, indigo })\nexport default class IgcRadioComponent extends EventEmitterMixin<\n IgcRadioEventMap,\n Constructor<LitElement>\n>(LitElement) {\n public static readonly tagName = 'igc-radio';\n protected static styles = styles;\n\n private inputId = `radio-${nextId++}`;\n private labelId = `radio-label-${this.inputId}`;\n\n @query('input[type=\"radio\"]', true)\n protected input!: HTMLInputElement;\n\n @state()\n private _tabIndex = 0;\n\n @state()\n private focused = false;\n\n /** The name attribute of the control. */\n @property()\n public name!: string;\n\n /** The value attribute of the control. */\n @property()\n public value!: string;\n\n /** Makes the control a required field. */\n @property({ type: Boolean, reflect: true })\n public required = false;\n\n /** The checked state of the control. */\n @property({ type: Boolean })\n @blazorTwoWayBind('igcChange', 'detail')\n public checked = false;\n\n /** Disables the radio control. */\n @property({ type: Boolean, reflect: true })\n public disabled = false;\n\n /** Controls the validity of the control. */\n @property({ type: Boolean, reflect: true })\n public invalid = false;\n\n /** The label position of the radio control. */\n @property({ reflect: true, attribute: 'label-position' })\n public labelPosition: 'before' | 'after' = 'after';\n\n /** Sets the aria-labelledby attribute for the radio control. */\n @property({ reflect: true, attribute: 'aria-labelledby' })\n public ariaLabelledby!: string;\n\n /** Simulates a click on the radio control. */\n public override click() {\n this.input.click();\n }\n\n public override connectedCallback() {\n super.connectedCallback();\n this.addEventListener('keyup', this.handleKeyUp);\n }\n\n public override disconnectedCallback() {\n this.removeEventListener('keyup', this.handleKeyUp);\n }\n\n protected handleKeyUp() {\n if (!this.focused) {\n this.focused = true;\n }\n }\n\n /** Sets focus on the radio control. */\n @alternateName('focusComponent')\n public override focus(options?: FocusOptions) {\n this.input.focus(options);\n }\n\n /** Removes focus from the radio control. */\n @alternateName('blurComponent')\n public override blur() {\n this.input.blur();\n }\n\n /** Checks for validity of the control and shows the browser message if it invalid. */\n public reportValidity() {\n this.input.reportValidity();\n }\n\n /**\n * Sets a custom validation message for the control.\n * As long as `message` is not empty, the control is considered invalid.\n */\n public setCustomValidity(message: string) {\n this.input.setCustomValidity(message);\n this.invalid = !this.input.checkValidity();\n }\n\n protected handleMouseDown(event: PointerEvent) {\n event.preventDefault();\n this.input.focus();\n this.focused = false;\n }\n\n protected handleClick() {\n this.checked = true;\n }\n\n protected handleBlur() {\n this.emitEvent('igcBlur');\n this.focused = false;\n }\n\n protected handleFocus() {\n this.emitEvent('igcFocus');\n }\n\n @watch('checked', { waitUntilFirstUpdate: true })\n protected handleChange() {\n if (this.checked) {\n this.getSiblings().forEach((radio) => {\n radio.checked = false;\n radio._tabIndex = -1;\n });\n this.input.focus();\n this._tabIndex = 0;\n this.emitEvent('igcChange', { detail: this.checked });\n } else {\n if (this.required) {\n this.required = false;\n this.getAllInGroup()[0].required = true;\n }\n }\n }\n\n protected getSiblings() {\n return this.getAllInGroup().filter(\n (radio) => radio.name === this.name && radio !== this\n );\n }\n\n protected getAllInGroup() {\n const group = this.closest('igc-radio-group');\n if (!group) return [];\n\n return Array.from<IgcRadioComponent>(group.querySelectorAll('igc-radio'));\n }\n\n protected override render() {\n return html`\n <label\n part=\"${partNameMap({\n base: true,\n checked: this.checked,\n focused: this.focused,\n })}\"\n for=\"${this.inputId}\"\n @pointerdown=\"${this.handleMouseDown}\"\n .focused=\"${this.focused}\"\n >\n <input\n id=\"${this.inputId}\"\n type=\"radio\"\n name=\"${ifDefined(this.name)}\"\n value=\"${ifDefined(this.value)}\"\n .required=\"${this.required}\"\n .disabled=\"${this.disabled}\"\n .invalid=\"${this.invalid}\"\n .checked=\"${live(this.checked)}\"\n tabindex=${this._tabIndex}\n aria-checked=\"${this.checked ? 'true' : 'false'}\"\n aria-disabled=\"${this.disabled ? 'true' : 'false'}\"\n aria-labelledby=\"${this.ariaLabelledby\n ? this.ariaLabelledby\n : this.labelId}\"\n @click=\"${this.handleClick}\"\n @blur=\"${this.handleBlur}\"\n @focus=\"${this.handleFocus}\"\n />\n <span\n part=\"${partNameMap({ control: true, checked: this.checked })}\"\n ></span>\n <span\n part=\"${partNameMap({ label: true, checked: this.checked })}\"\n id=\"${this.labelId}\"\n >\n <slot></slot>\n </span>\n </label>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-radio': IgcRadioComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"radio.js","sourceRoot":"","sources":["../../../src/components/radio/radio.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\nimport { property, query, state } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { alternateName } from '../common/decorators/alternateName.js';\nimport { blazorTwoWayBind } from '../common/decorators/blazorTwoWayBind.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { partNameMap } from '../common/util.js';\nimport { styles } from './themes/light/radio.base.css.js';\nimport { styles as bootstrap } from './themes/light/radio.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/radio.fluent.css.js';\nimport { styles as indigo } from './themes/light/radio.indigo.css.js';\nimport { styles as material } from './themes/light/radio.material.css.js';\n\nlet nextId = 0;\n\nexport interface IgcRadioEventMap {\n igcChange: CustomEvent<boolean>;\n igcFocus: CustomEvent<void>;\n igcBlur: CustomEvent<void>;\n}\n\n/**\n * @element igc-radio\n *\n * @slot - The radio label.\n *\n * @fires igcChange - Emitted when the control's checked state changes.\n * @fires igcFocus - Emitted when the control gains focus.\n * @fires igcBlur - Emitted when the control loses focus.\n *\n * @csspart base - The radio control base wrapper.\n * @csspart control - The radio control.\n * @csspart label - The radio control label.\n */\n@themes({ material, bootstrap, fluent, indigo })\nexport default class IgcRadioComponent extends EventEmitterMixin<\n IgcRadioEventMap,\n Constructor<LitElement>\n>(LitElement) {\n public static readonly tagName = 'igc-radio';\n protected static styles = styles;\n\n private inputId = `radio-${nextId++}`;\n private labelId = `radio-label-${this.inputId}`;\n\n @query('input[type=\"radio\"]', true)\n protected input!: HTMLInputElement;\n\n @state()\n private _tabIndex = 0;\n\n @state()\n private focused = false;\n\n /** The name attribute of the control. */\n @property()\n public name!: string;\n\n /** The value attribute of the control. */\n @property()\n public value!: string;\n\n /** Makes the control a required field. */\n @property({ type: Boolean, reflect: true })\n public required = false;\n\n /** The checked state of the control. */\n @property({ type: Boolean })\n @blazorTwoWayBind('igcChange', 'detail')\n public checked = false;\n\n /** Disables the radio control. */\n @property({ type: Boolean, reflect: true })\n public disabled = false;\n\n /** Controls the validity of the control. */\n @property({ type: Boolean, reflect: true })\n public invalid = false;\n\n /** The label position of the radio control. */\n @property({ reflect: true, attribute: 'label-position' })\n public labelPosition: 'before' | 'after' = 'after';\n\n /** Sets the aria-labelledby attribute for the radio control. */\n @property({ reflect: true, attribute: 'aria-labelledby' })\n public ariaLabelledby!: string;\n\n /** Simulates a click on the radio control. */\n public override click() {\n this.input.click();\n }\n\n public override connectedCallback() {\n super.connectedCallback();\n this.addEventListener('keyup', this.handleKeyUp);\n }\n\n public override disconnectedCallback() {\n this.removeEventListener('keyup', this.handleKeyUp);\n }\n\n protected handleKeyUp() {\n if (!this.focused) {\n this.focused = true;\n }\n }\n\n /** Sets focus on the radio control. */\n @alternateName('focusComponent')\n public override focus(options?: FocusOptions) {\n this.input.focus(options);\n }\n\n /** Removes focus from the radio control. */\n @alternateName('blurComponent')\n public override blur() {\n this.input.blur();\n }\n\n /** Checks for validity of the control and shows the browser message if it invalid. */\n public reportValidity() {\n this.input.reportValidity();\n }\n\n /**\n * Sets a custom validation message for the control.\n * As long as `message` is not empty, the control is considered invalid.\n */\n public setCustomValidity(message: string) {\n this.input.setCustomValidity(message);\n this.invalid = !this.input.checkValidity();\n }\n\n protected handleMouseDown(event: PointerEvent) {\n event.preventDefault();\n this.input.focus();\n this.focused = false;\n }\n\n protected handleClick() {\n this.checked = true;\n }\n\n protected handleBlur() {\n this.emitEvent('igcBlur');\n this.focused = false;\n }\n\n protected handleFocus() {\n this.emitEvent('igcFocus');\n }\n\n @watch('checked', { waitUntilFirstUpdate: true })\n protected handleChange() {\n if (this.checked) {\n this.getSiblings().forEach((radio) => {\n radio.checked = false;\n radio._tabIndex = -1;\n });\n this.input.focus();\n this._tabIndex = 0;\n this.emitEvent('igcChange', { detail: this.checked });\n } else {\n if (this.required) {\n this.required = false;\n this.getAllInGroup()[0].required = true;\n }\n }\n }\n\n protected getSiblings() {\n return this.getAllInGroup().filter(\n (radio) => radio.name === this.name && radio !== this\n );\n }\n\n protected getAllInGroup() {\n const group = this.closest('igc-radio-group');\n if (!group) return [];\n\n return Array.from<IgcRadioComponent>(group.querySelectorAll('igc-radio'));\n }\n\n protected override render() {\n return html`\n <label\n part=\"${partNameMap({\n base: true,\n checked: this.checked,\n focused: this.focused,\n })}\"\n for=\"${this.inputId}\"\n @pointerdown=\"${this.handleMouseDown}\"\n >\n <input\n id=\"${this.inputId}\"\n type=\"radio\"\n name=\"${ifDefined(this.name)}\"\n value=\"${ifDefined(this.value)}\"\n .required=\"${this.required}\"\n .disabled=\"${this.disabled}\"\n .checked=\"${live(this.checked)}\"\n tabindex=${this._tabIndex}\n aria-checked=\"${this.checked ? 'true' : 'false'}\"\n aria-disabled=\"${this.disabled ? 'true' : 'false'}\"\n aria-labelledby=\"${this.ariaLabelledby\n ? this.ariaLabelledby\n : this.labelId}\"\n @click=\"${this.handleClick}\"\n @blur=\"${this.handleBlur}\"\n @focus=\"${this.handleFocus}\"\n />\n <span\n part=\"${partNameMap({ control: true, checked: this.checked })}\"\n ></span>\n <span\n part=\"${partNameMap({ label: true, checked: this.checked })}\"\n id=\"${this.labelId}\"\n >\n <slot></slot>\n </span>\n </label>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-radio': IgcRadioComponent;\n }\n}\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;color:hsla(var(--igc-gray-900), var(--igc-gray-a));font-family:var(--igc-font-family)}input[type=radio]{position:absolute;width:1px;height:1px;margin:-1px;border:none;clip:rect(0, 0, 0, 0);outline:0;pointer-events:none;overflow:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none}[part~=base]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer;-webkit-transition:color .15s ease-in;-o-transition:color .15s ease-in;transition:color .15s ease-in}[part~=base]:focus-within [part=control]{background:hsla(var(--igc-gray-600), 0.12)}[part~=control]{border-radius:clamp(0rem,var(--igc-radius-factor)*var(--size),var(--size));--size: 1.25rem;position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;width:calc(var(--size)*2);height:calc(var(--size)*2);min-width:calc(var(--size)*2);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:background .15s ease-in;-o-transition:background .15s ease-in;transition:background .15s ease-in}[part~=control]::before,[part~=control]::after{border-radius:clamp(0rem,var(--igc-radius-factor)*var(--size)/2,var(--size)/2);position:absolute;content:"";width:var(--size);height:var(--size);left:50%;top:50%;-webkit-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%);-webkit-transition:all .15s ease-in;-o-transition:all .15s ease-in;transition:all .15s ease-in}[part~=control]::before{-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translate(-50%, -50%) scale(0.1);-ms-transform:translate(-50%, -50%) scale(0.1);transform:translate(-50%, -50%) scale(0.1);-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;z-index:1}[part~=control]::after{border:calc(var(--size)/10) solid hsla(var(--igc-gray-600), var(--igc-gray-a))}[part="control checked"]::before{border-color:hsla(var(--igc-secondary-500), var(--igc-secondary-a));background:hsla(var(--igc-secondary-500), var(--igc-secondary-a));-webkit-transform:translate(-50%, -50%) scale(0.5);-ms-transform:translate(-50%, -50%) scale(0.5);transform:translate(-50%, -50%) scale(0.5)}[part="control checked"]::after{border-color:hsla(var(--igc-secondary-500), var(--igc-secondary-a))}:host(:not([disabled])[invalid]) [part~=label]{color:hsla(var(--igc-error-500), var(--igc-error-a))}:host(:not([disabled])[invalid]) [part~=control]::after{border-color:hsla(var(--igc-error-500), var(--igc-error-a))}:host([disabled]){pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host([disabled]) [part~=label]{color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [part~=control]::after{border-color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [part="control checked"]::before{background:hsla(var(--igc-gray-400), var(--igc-gray-a));border-color:rgba(0,0,0,0)}:host([label-position=after]) [part~=label]{-webkit-margin-start:.5rem;margin-inline-start:.5rem}:host([label-position=before]) [part~=label]{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1;-webkit-margin-end:.5rem;margin-inline-end:.5rem}`;
2
+ export const styles = css `:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;color:hsla(var(--igc-gray-900), var(--igc-gray-a));font-family:var(--igc-font-family)}input[type=radio]{position:absolute;width:1px;height:1px;margin:-1px;border:none;clip:rect(0, 0, 0, 0);outline:0;pointer-events:none;overflow:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none}[part~=base]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer;-webkit-transition:color .15s ease-in;-o-transition:color .15s ease-in;transition:color .15s ease-in}[part~=base]:focus-within [part=control]{background:hsla(var(--igc-gray-600), 0.12)}[part~=label]{font-family:var(--igc-subtitle-1-font-family);font-weight:var(--igc-subtitle-1-font-weight);font-size:var(--igc-subtitle-1-font-size);font-style:var(--igc-subtitle-1-font-style);letter-spacing:var(--igc-subtitle-1-letter-spacing);text-transform:var(--igc-subtitle-1-text-transform);line-height:var(--igc-subtitle-1-line-height);margin-top:var(--igc-subtitle-1-margin-top);margin-bottom:var(--igc-subtitle-1-margin-bottom)}[part~=control]{border-radius:clamp(0rem,var(--igc-radius-factor)*var(--size),var(--size));--size: 1.25rem;position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;width:calc(var(--size)*2);height:calc(var(--size)*2);min-width:calc(var(--size)*2);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:background .15s ease-in;-o-transition:background .15s ease-in;transition:background .15s ease-in}[part~=control]::before,[part~=control]::after{border-radius:clamp(0rem,var(--igc-radius-factor)*var(--size)/2,var(--size)/2);position:absolute;content:"";width:var(--size);height:var(--size);left:50%;top:50%;-webkit-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%);-webkit-transition:all .15s ease-in;-o-transition:all .15s ease-in;transition:all .15s ease-in}[part~=control]::before{-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translate(-50%, -50%) scale(0.1);-ms-transform:translate(-50%, -50%) scale(0.1);transform:translate(-50%, -50%) scale(0.1);-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;z-index:1}[part~=control]::after{border:calc(var(--size)/10) solid hsla(var(--igc-gray-600), var(--igc-gray-a))}[part="control checked"]::before{border-color:hsla(var(--igc-secondary-500), var(--igc-secondary-a));background:hsla(var(--igc-secondary-500), var(--igc-secondary-a));-webkit-transform:translate(-50%, -50%) scale(0.5);-ms-transform:translate(-50%, -50%) scale(0.5);transform:translate(-50%, -50%) scale(0.5)}[part="control checked"]::after{border-color:hsla(var(--igc-secondary-500), var(--igc-secondary-a))}:host(:not([disabled])[invalid]) [part~=label]{color:hsla(var(--igc-error-500), var(--igc-error-a))}:host(:not([disabled])[invalid]) [part~=control]::after{border-color:hsla(var(--igc-error-500), var(--igc-error-a))}:host([disabled]){pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host([disabled]) [part~=label]{color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [part~=control]::after{border-color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [part="control checked"]::before{background:hsla(var(--igc-gray-400), var(--igc-gray-a));border-color:rgba(0,0,0,0)}:host([label-position=after]) [part~=label]{-webkit-margin-start:.5rem;margin-inline-start:.5rem}:host([label-position=before]) [part~=label]{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1;-webkit-margin-end:.5rem;margin-inline-end:.5rem}`;
3
3
  //# sourceMappingURL=radio.base.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio.base.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/light/radio.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,u+HAAu+H,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;color:hsla(var(--igc-gray-900), var(--igc-gray-a));font-family:var(--igc-font-family)}input[type=radio]{position:absolute;width:1px;height:1px;margin:-1px;border:none;clip:rect(0, 0, 0, 0);outline:0;pointer-events:none;overflow:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none}[part~=base]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer;-webkit-transition:color .15s ease-in;-o-transition:color .15s ease-in;transition:color .15s ease-in}[part~=base]:focus-within [part=control]{background:hsla(var(--igc-gray-600), 0.12)}[part~=control]{border-radius:clamp(0rem,var(--igc-radius-factor)*var(--size),var(--size));--size: 1.25rem;position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;width:calc(var(--size)*2);height:calc(var(--size)*2);min-width:calc(var(--size)*2);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:background .15s ease-in;-o-transition:background .15s ease-in;transition:background .15s ease-in}[part~=control]::before,[part~=control]::after{border-radius:clamp(0rem,var(--igc-radius-factor)*var(--size)/2,var(--size)/2);position:absolute;content:\"\";width:var(--size);height:var(--size);left:50%;top:50%;-webkit-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%);-webkit-transition:all .15s ease-in;-o-transition:all .15s ease-in;transition:all .15s ease-in}[part~=control]::before{-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translate(-50%, -50%) scale(0.1);-ms-transform:translate(-50%, -50%) scale(0.1);transform:translate(-50%, -50%) scale(0.1);-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;z-index:1}[part~=control]::after{border:calc(var(--size)/10) solid hsla(var(--igc-gray-600), var(--igc-gray-a))}[part=\"control checked\"]::before{border-color:hsla(var(--igc-secondary-500), var(--igc-secondary-a));background:hsla(var(--igc-secondary-500), var(--igc-secondary-a));-webkit-transform:translate(-50%, -50%) scale(0.5);-ms-transform:translate(-50%, -50%) scale(0.5);transform:translate(-50%, -50%) scale(0.5)}[part=\"control checked\"]::after{border-color:hsla(var(--igc-secondary-500), var(--igc-secondary-a))}:host(:not([disabled])[invalid]) [part~=label]{color:hsla(var(--igc-error-500), var(--igc-error-a))}:host(:not([disabled])[invalid]) [part~=control]::after{border-color:hsla(var(--igc-error-500), var(--igc-error-a))}:host([disabled]){pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host([disabled]) [part~=label]{color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [part~=control]::after{border-color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [part=\"control checked\"]::before{background:hsla(var(--igc-gray-400), var(--igc-gray-a));border-color:rgba(0,0,0,0)}:host([label-position=after]) [part~=label]{-webkit-margin-start:.5rem;margin-inline-start:.5rem}:host([label-position=before]) [part~=label]{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1;-webkit-margin-end:.5rem;margin-inline-end:.5rem}`;\n"]}
1
+ {"version":3,"file":"radio.base.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/light/radio.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,25IAA25I,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;color:hsla(var(--igc-gray-900), var(--igc-gray-a));font-family:var(--igc-font-family)}input[type=radio]{position:absolute;width:1px;height:1px;margin:-1px;border:none;clip:rect(0, 0, 0, 0);outline:0;pointer-events:none;overflow:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none}[part~=base]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer;-webkit-transition:color .15s ease-in;-o-transition:color .15s ease-in;transition:color .15s ease-in}[part~=base]:focus-within [part=control]{background:hsla(var(--igc-gray-600), 0.12)}[part~=label]{font-family:var(--igc-subtitle-1-font-family);font-weight:var(--igc-subtitle-1-font-weight);font-size:var(--igc-subtitle-1-font-size);font-style:var(--igc-subtitle-1-font-style);letter-spacing:var(--igc-subtitle-1-letter-spacing);text-transform:var(--igc-subtitle-1-text-transform);line-height:var(--igc-subtitle-1-line-height);margin-top:var(--igc-subtitle-1-margin-top);margin-bottom:var(--igc-subtitle-1-margin-bottom)}[part~=control]{border-radius:clamp(0rem,var(--igc-radius-factor)*var(--size),var(--size));--size: 1.25rem;position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;width:calc(var(--size)*2);height:calc(var(--size)*2);min-width:calc(var(--size)*2);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:background .15s ease-in;-o-transition:background .15s ease-in;transition:background .15s ease-in}[part~=control]::before,[part~=control]::after{border-radius:clamp(0rem,var(--igc-radius-factor)*var(--size)/2,var(--size)/2);position:absolute;content:\"\";width:var(--size);height:var(--size);left:50%;top:50%;-webkit-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%);-webkit-transition:all .15s ease-in;-o-transition:all .15s ease-in;transition:all .15s ease-in}[part~=control]::before{-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translate(-50%, -50%) scale(0.1);-ms-transform:translate(-50%, -50%) scale(0.1);transform:translate(-50%, -50%) scale(0.1);-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;z-index:1}[part~=control]::after{border:calc(var(--size)/10) solid hsla(var(--igc-gray-600), var(--igc-gray-a))}[part=\"control checked\"]::before{border-color:hsla(var(--igc-secondary-500), var(--igc-secondary-a));background:hsla(var(--igc-secondary-500), var(--igc-secondary-a));-webkit-transform:translate(-50%, -50%) scale(0.5);-ms-transform:translate(-50%, -50%) scale(0.5);transform:translate(-50%, -50%) scale(0.5)}[part=\"control checked\"]::after{border-color:hsla(var(--igc-secondary-500), var(--igc-secondary-a))}:host(:not([disabled])[invalid]) [part~=label]{color:hsla(var(--igc-error-500), var(--igc-error-a))}:host(:not([disabled])[invalid]) [part~=control]::after{border-color:hsla(var(--igc-error-500), var(--igc-error-a))}:host([disabled]){pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host([disabled]) [part~=label]{color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [part~=control]::after{border-color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [part=\"control checked\"]::before{background:hsla(var(--igc-gray-400), var(--igc-gray-a));border-color:rgba(0,0,0,0)}:host([label-position=after]) [part~=label]{-webkit-margin-start:.5rem;margin-inline-start:.5rem}:host([label-position=before]) [part~=label]{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1;-webkit-margin-end:.5rem;margin-inline-end:.5rem}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host [part=base]{-webkit-transition-duration:.1s;-o-transition-duration:.1s;transition-duration:.1s}:host [part~=control]{width:var(--size, 1.25rem);height:var(--size, 1.25rem);min-width:var(--size, 1.25rem);background:rgba(0,0,0,0);-webkit-transition:none;-o-transition:none;transition:none}:host [part~=control]::before,:host [part~=control]::after{-webkit-transition-duration:.1s;-o-transition-duration:.1s;transition-duration:.1s}:host [part~=control]::before{-webkit-transform:translate(-50%, -50%) scale(0.5);-ms-transform:translate(-50%, -50%) scale(0.5);transform:translate(-50%, -50%) scale(0.5)}:host [part~=control]::after{border:calc(var(--size, 20px)/20) solid hsla(var(--igc-gray-900), var(--igc-gray-a))}:host(:hover) [part=control]::before,:host(:focus-within) [part=control]::before{background:var(--hover-color, hsla(var(--igc-gray-700), var(--igc-gray-a)))}:host(:hover) [part="control checked"]::after,:host(:focus-within) [part="control checked"]::after{border-color:var(--checked-hover-color, hsla(var(--igc-primary-900), var(--igc-primary-a)))}:host(:hover) [part="control checked"]::before,:host(:focus-within) [part="control checked"]::before{background:var(--checked-hover-color, hsla(var(--igc-primary-900), var(--igc-primary-a)))}:host [part="control checked"]::before{background:hsla(var(--igc-primary-500), var(--igc-primary-a))}:host [part="control checked"]::after{border-color:hsla(var(--igc-primary-500), var(--igc-primary-a))}:host(:not([disabled])[invalid]) [part~=label]{color:var(--invalid-color, hsla(var(--igc-error-500), var(--igc-error-a)))}:host(:not([disabled])[invalid]) [part~=control]::before{background:var(--invalid-color, hsla(var(--igc-error-500), var(--igc-error-a)))}:host(:not([disabled])[invalid]) [part="control checked"]::after{border-color:var(--invalid-color, hsla(var(--igc-error-500), var(--igc-error-a)))}:host(:not([disabled])[invalid]:hover) [part=control]::after,:host(:not([disabled])[invalid]:focus-within) [part=control]::after{border-color:var(--invalid-hover-color, hsla(var(--igc-error-700), var(--igc-error-a)))}:host(:not([disabled])[invalid]:hover) [part="control checked"]::after,:host(:not([disabled])[invalid]:focus-within) [part="control checked"]::after{border-color:var(--invalid-hover-color, hsla(var(--igc-error-700), var(--igc-error-a)))}:host(:not([disabled])[invalid]:hover) [part="control checked"]::before,:host(:not([disabled])[invalid]:focus-within) [part="control checked"]::before{background:var(--invalid-hover-color, hsla(var(--igc-error-700), var(--igc-error-a)))}:host([disabled]) [part~=label]{color:var(--disabled-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}:host([disabled]) [part~=control]::after{border-color:var(--disabled-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}:host([disabled]) [part="control checked"]::before{background:var(--disabled-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[part~=focused]{position:relative}[part~=focused]::after{content:"";position:absolute;top:-0.125rem;left:-0.125rem;-webkit-box-shadow:0 0 0 1px hsla(var(--igc-gray-700), var(--igc-gray-a));box-shadow:0 0 0 1px hsla(var(--igc-gray-700), var(--igc-gray-a));width:calc(100% + (0.125rem * 2));height:calc(100% + (0.125rem * 2))}`;
2
+ export const styles = css `:host [part=base]{-webkit-transition-duration:.1s;-o-transition-duration:.1s;transition-duration:.1s}:host [part~=control]{width:var(--size, 1.25rem);height:var(--size, 1.25rem);min-width:var(--size, 1.25rem);background:rgba(0,0,0,0);-webkit-transition:none;-o-transition:none;transition:none}:host [part~=control]::before,:host [part~=control]::after{-webkit-transition-duration:.1s;-o-transition-duration:.1s;transition-duration:.1s}:host [part~=control]::before{-webkit-transform:translate(-50%, -50%) scale(0.5);-ms-transform:translate(-50%, -50%) scale(0.5);transform:translate(-50%, -50%) scale(0.5)}:host [part~=control]::after{border:calc(var(--size, 20px)/20) solid hsla(var(--igc-gray-900), var(--igc-gray-a))}:host [part~=label]{font-family:var(--igc-body-2-font-family);font-weight:var(--igc-body-2-font-weight);font-size:var(--igc-body-2-font-size);font-style:var(--igc-body-2-font-style);letter-spacing:var(--igc-body-2-letter-spacing);text-transform:var(--igc-body-2-text-transform);line-height:var(--igc-body-2-line-height);margin-top:var(--igc-body-2-margin-top);margin-bottom:var(--igc-body-2-margin-bottom)}:host(:hover) [part=control]::before,:host(:focus-within) [part=control]::before{background:var(--hover-color, hsla(var(--igc-gray-700), var(--igc-gray-a)))}:host(:hover) [part="control checked"]::after,:host(:focus-within) [part="control checked"]::after{border-color:var(--checked-hover-color, hsla(var(--igc-primary-900), var(--igc-primary-a)))}:host(:hover) [part="control checked"]::before,:host(:focus-within) [part="control checked"]::before{background:var(--checked-hover-color, hsla(var(--igc-primary-900), var(--igc-primary-a)))}:host [part="control checked"]::before{background:hsla(var(--igc-primary-500), var(--igc-primary-a))}:host [part="control checked"]::after{border-color:hsla(var(--igc-primary-500), var(--igc-primary-a))}:host(:not([disabled])[invalid]) [part~=label]{color:var(--invalid-color, hsla(var(--igc-error-500), var(--igc-error-a)))}:host(:not([disabled])[invalid]) [part~=control]::before{background:var(--invalid-color, hsla(var(--igc-error-500), var(--igc-error-a)))}:host(:not([disabled])[invalid]) [part="control checked"]::after{border-color:var(--invalid-color, hsla(var(--igc-error-500), var(--igc-error-a)))}:host(:not([disabled])[invalid]:hover) [part=control]::after,:host(:not([disabled])[invalid]:focus-within) [part=control]::after{border-color:var(--invalid-hover-color, hsla(var(--igc-error-700), var(--igc-error-a)))}:host(:not([disabled])[invalid]:hover) [part="control checked"]::after,:host(:not([disabled])[invalid]:focus-within) [part="control checked"]::after{border-color:var(--invalid-hover-color, hsla(var(--igc-error-700), var(--igc-error-a)))}:host(:not([disabled])[invalid]:hover) [part="control checked"]::before,:host(:not([disabled])[invalid]:focus-within) [part="control checked"]::before{background:var(--invalid-hover-color, hsla(var(--igc-error-700), var(--igc-error-a)))}:host([disabled]) [part~=label]{color:var(--disabled-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}:host([disabled]) [part~=control]::after{border-color:var(--disabled-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}:host([disabled]) [part="control checked"]::before{background:var(--disabled-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[part~=focused]{position:relative}[part~=focused]::after{content:"";position:absolute;top:-0.125rem;left:-0.125rem;-webkit-box-shadow:0 0 0 1px hsla(var(--igc-gray-700), var(--igc-gray-a));box-shadow:0 0 0 1px hsla(var(--igc-gray-700), var(--igc-gray-a));width:calc(100% + (0.125rem * 2));height:calc(100% + (0.125rem * 2))}`;
3
3
  //# sourceMappingURL=radio.fluent.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/light/radio.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,2qGAA2qG,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host [part=base]{-webkit-transition-duration:.1s;-o-transition-duration:.1s;transition-duration:.1s}:host [part~=control]{width:var(--size, 1.25rem);height:var(--size, 1.25rem);min-width:var(--size, 1.25rem);background:rgba(0,0,0,0);-webkit-transition:none;-o-transition:none;transition:none}:host [part~=control]::before,:host [part~=control]::after{-webkit-transition-duration:.1s;-o-transition-duration:.1s;transition-duration:.1s}:host [part~=control]::before{-webkit-transform:translate(-50%, -50%) scale(0.5);-ms-transform:translate(-50%, -50%) scale(0.5);transform:translate(-50%, -50%) scale(0.5)}:host [part~=control]::after{border:calc(var(--size, 20px)/20) solid hsla(var(--igc-gray-900), var(--igc-gray-a))}:host(:hover) [part=control]::before,:host(:focus-within) [part=control]::before{background:var(--hover-color, hsla(var(--igc-gray-700), var(--igc-gray-a)))}:host(:hover) [part=\"control checked\"]::after,:host(:focus-within) [part=\"control checked\"]::after{border-color:var(--checked-hover-color, hsla(var(--igc-primary-900), var(--igc-primary-a)))}:host(:hover) [part=\"control checked\"]::before,:host(:focus-within) [part=\"control checked\"]::before{background:var(--checked-hover-color, hsla(var(--igc-primary-900), var(--igc-primary-a)))}:host [part=\"control checked\"]::before{background:hsla(var(--igc-primary-500), var(--igc-primary-a))}:host [part=\"control checked\"]::after{border-color:hsla(var(--igc-primary-500), var(--igc-primary-a))}:host(:not([disabled])[invalid]) [part~=label]{color:var(--invalid-color, hsla(var(--igc-error-500), var(--igc-error-a)))}:host(:not([disabled])[invalid]) [part~=control]::before{background:var(--invalid-color, hsla(var(--igc-error-500), var(--igc-error-a)))}:host(:not([disabled])[invalid]) [part=\"control checked\"]::after{border-color:var(--invalid-color, hsla(var(--igc-error-500), var(--igc-error-a)))}:host(:not([disabled])[invalid]:hover) [part=control]::after,:host(:not([disabled])[invalid]:focus-within) [part=control]::after{border-color:var(--invalid-hover-color, hsla(var(--igc-error-700), var(--igc-error-a)))}:host(:not([disabled])[invalid]:hover) [part=\"control checked\"]::after,:host(:not([disabled])[invalid]:focus-within) [part=\"control checked\"]::after{border-color:var(--invalid-hover-color, hsla(var(--igc-error-700), var(--igc-error-a)))}:host(:not([disabled])[invalid]:hover) [part=\"control checked\"]::before,:host(:not([disabled])[invalid]:focus-within) [part=\"control checked\"]::before{background:var(--invalid-hover-color, hsla(var(--igc-error-700), var(--igc-error-a)))}:host([disabled]) [part~=label]{color:var(--disabled-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}:host([disabled]) [part~=control]::after{border-color:var(--disabled-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}:host([disabled]) [part=\"control checked\"]::before{background:var(--disabled-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[part~=focused]{position:relative}[part~=focused]::after{content:\"\";position:absolute;top:-0.125rem;left:-0.125rem;-webkit-box-shadow:0 0 0 1px hsla(var(--igc-gray-700), var(--igc-gray-a));box-shadow:0 0 0 1px hsla(var(--igc-gray-700), var(--igc-gray-a));width:calc(100% + (0.125rem * 2));height:calc(100% + (0.125rem * 2))}`;\n"]}
1
+ {"version":3,"file":"radio.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/light/radio.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,ikHAAikH,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host [part=base]{-webkit-transition-duration:.1s;-o-transition-duration:.1s;transition-duration:.1s}:host [part~=control]{width:var(--size, 1.25rem);height:var(--size, 1.25rem);min-width:var(--size, 1.25rem);background:rgba(0,0,0,0);-webkit-transition:none;-o-transition:none;transition:none}:host [part~=control]::before,:host [part~=control]::after{-webkit-transition-duration:.1s;-o-transition-duration:.1s;transition-duration:.1s}:host [part~=control]::before{-webkit-transform:translate(-50%, -50%) scale(0.5);-ms-transform:translate(-50%, -50%) scale(0.5);transform:translate(-50%, -50%) scale(0.5)}:host [part~=control]::after{border:calc(var(--size, 20px)/20) solid hsla(var(--igc-gray-900), var(--igc-gray-a))}:host [part~=label]{font-family:var(--igc-body-2-font-family);font-weight:var(--igc-body-2-font-weight);font-size:var(--igc-body-2-font-size);font-style:var(--igc-body-2-font-style);letter-spacing:var(--igc-body-2-letter-spacing);text-transform:var(--igc-body-2-text-transform);line-height:var(--igc-body-2-line-height);margin-top:var(--igc-body-2-margin-top);margin-bottom:var(--igc-body-2-margin-bottom)}:host(:hover) [part=control]::before,:host(:focus-within) [part=control]::before{background:var(--hover-color, hsla(var(--igc-gray-700), var(--igc-gray-a)))}:host(:hover) [part=\"control checked\"]::after,:host(:focus-within) [part=\"control checked\"]::after{border-color:var(--checked-hover-color, hsla(var(--igc-primary-900), var(--igc-primary-a)))}:host(:hover) [part=\"control checked\"]::before,:host(:focus-within) [part=\"control checked\"]::before{background:var(--checked-hover-color, hsla(var(--igc-primary-900), var(--igc-primary-a)))}:host [part=\"control checked\"]::before{background:hsla(var(--igc-primary-500), var(--igc-primary-a))}:host [part=\"control checked\"]::after{border-color:hsla(var(--igc-primary-500), var(--igc-primary-a))}:host(:not([disabled])[invalid]) [part~=label]{color:var(--invalid-color, hsla(var(--igc-error-500), var(--igc-error-a)))}:host(:not([disabled])[invalid]) [part~=control]::before{background:var(--invalid-color, hsla(var(--igc-error-500), var(--igc-error-a)))}:host(:not([disabled])[invalid]) [part=\"control checked\"]::after{border-color:var(--invalid-color, hsla(var(--igc-error-500), var(--igc-error-a)))}:host(:not([disabled])[invalid]:hover) [part=control]::after,:host(:not([disabled])[invalid]:focus-within) [part=control]::after{border-color:var(--invalid-hover-color, hsla(var(--igc-error-700), var(--igc-error-a)))}:host(:not([disabled])[invalid]:hover) [part=\"control checked\"]::after,:host(:not([disabled])[invalid]:focus-within) [part=\"control checked\"]::after{border-color:var(--invalid-hover-color, hsla(var(--igc-error-700), var(--igc-error-a)))}:host(:not([disabled])[invalid]:hover) [part=\"control checked\"]::before,:host(:not([disabled])[invalid]:focus-within) [part=\"control checked\"]::before{background:var(--invalid-hover-color, hsla(var(--igc-error-700), var(--igc-error-a)))}:host([disabled]) [part~=label]{color:var(--disabled-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}:host([disabled]) [part~=control]::after{border-color:var(--disabled-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}:host([disabled]) [part=\"control checked\"]::before{background:var(--disabled-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[part~=focused]{position:relative}[part~=focused]::after{content:\"\";position:absolute;top:-0.125rem;left:-0.125rem;-webkit-box-shadow:0 0 0 1px hsla(var(--igc-gray-700), var(--igc-gray-a));box-shadow:0 0 0 1px hsla(var(--igc-gray-700), var(--igc-gray-a));width:calc(100% + (0.125rem * 2));height:calc(100% + (0.125rem * 2))}`;\n"]}
@@ -6,7 +6,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { html, LitElement } from 'lit';
8
8
  import { property, queryAssignedElements } from 'lit/decorators.js';
9
- import { styles } from './radio-group.base.css';
9
+ import { styles } from './radio-group.base.css.js';
10
10
  export default class IgcRadioGroupComponent extends LitElement {
11
11
  constructor() {
12
12
  super();
@@ -1 +1 @@
1
- {"version":3,"file":"radio-group.js","sourceRoot":"","sources":["../../../src/components/radio-group/radio-group.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\nimport { property, queryAssignedElements } from 'lit/decorators.js';\nimport { default as IgcRadioComponent } from '../radio/radio';\nimport { styles } from './radio-group.base.css';\n\nexport default class IgcRadioGroupComponent extends LitElement {\n public static readonly tagName = 'igc-radio-group';\n\n public static override styles = styles;\n\n @queryAssignedElements({\n flatten: true,\n selector: 'igc-radio:not([disabled])',\n })\n private radios!: Array<IgcRadioComponent>;\n\n private get isLTR(): boolean {\n const styles = window.getComputedStyle(this);\n return styles.getPropertyValue('direction') === 'ltr';\n }\n\n constructor() {\n super();\n this.addEventListener('keydown', this.handleKeydown);\n this.addEventListener('igcChange', this.updateRequiredState);\n }\n\n @property({ reflect: true })\n public alignment: 'vertical' | 'horizontal' = 'vertical';\n\n private updateRequiredState() {\n const hasRequired = this.radios.some((r) => r.required);\n\n if (hasRequired) {\n this.radios.forEach((r) => (r.required = false));\n\n const hasChecked = this.radios.some((r) => r.checked);\n\n if (hasChecked) {\n this.radios.filter((r) => r.checked)[0].required = true;\n } else {\n this.radios[0].required = true;\n }\n }\n }\n\n private handleKeydown = (event: KeyboardEvent) => {\n const { key } = event;\n\n if (['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'].includes(key)) {\n const checked = this.radios.find((radio) => radio.checked);\n let index = this.radios.indexOf(checked!);\n\n switch (key) {\n case 'ArrowUp':\n index += -1;\n break;\n case 'ArrowLeft':\n index += this.isLTR ? -1 : 1;\n break;\n case 'ArrowRight':\n index += this.isLTR ? 1 : -1;\n break;\n default:\n index += 1;\n }\n\n if (index < 0) index = this.radios.length - 1;\n if (index > this.radios.length - 1) index = 0;\n\n this.radios.forEach((radio) => (radio.checked = false));\n this.radios[index].focus();\n this.radios[index].checked = true;\n\n event.preventDefault();\n }\n };\n\n protected override render() {\n return html`<slot @slotchange=${this.updateRequiredState}></slot>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-radio-group': IgcRadioGroupComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"radio-group.js","sourceRoot":"","sources":["../../../src/components/radio-group/radio-group.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\nimport { property, queryAssignedElements } from 'lit/decorators.js';\nimport type { default as IgcRadioComponent } from '../radio/radio';\nimport { styles } from './radio-group.base.css.js';\n\nexport default class IgcRadioGroupComponent extends LitElement {\n public static readonly tagName = 'igc-radio-group';\n\n public static override styles = styles;\n\n @queryAssignedElements({\n flatten: true,\n selector: 'igc-radio:not([disabled])',\n })\n private radios!: Array<IgcRadioComponent>;\n\n private get isLTR(): boolean {\n const styles = window.getComputedStyle(this);\n return styles.getPropertyValue('direction') === 'ltr';\n }\n\n constructor() {\n super();\n this.addEventListener('keydown', this.handleKeydown);\n this.addEventListener('igcChange', this.updateRequiredState);\n }\n\n @property({ reflect: true })\n public alignment: 'vertical' | 'horizontal' = 'vertical';\n\n private updateRequiredState() {\n const hasRequired = this.radios.some((r) => r.required);\n\n if (hasRequired) {\n this.radios.forEach((r) => (r.required = false));\n\n const hasChecked = this.radios.some((r) => r.checked);\n\n if (hasChecked) {\n this.radios.filter((r) => r.checked)[0].required = true;\n } else {\n this.radios[0].required = true;\n }\n }\n }\n\n private handleKeydown = (event: KeyboardEvent) => {\n const { key } = event;\n\n if (['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'].includes(key)) {\n const checked = this.radios.find((radio) => radio.checked);\n let index = this.radios.indexOf(checked!);\n\n switch (key) {\n case 'ArrowUp':\n index += -1;\n break;\n case 'ArrowLeft':\n index += this.isLTR ? -1 : 1;\n break;\n case 'ArrowRight':\n index += this.isLTR ? 1 : -1;\n break;\n default:\n index += 1;\n }\n\n if (index < 0) index = this.radios.length - 1;\n if (index > this.radios.length - 1) index = 0;\n\n this.radios.forEach((radio) => (radio.checked = false));\n this.radios[index].focus();\n this.radios[index].checked = true;\n\n event.preventDefault();\n }\n };\n\n protected override render() {\n return html`<slot @slotchange=${this.updateRequiredState}></slot>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-radio-group': IgcRadioGroupComponent;\n }\n}\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-family:var(--igc-font-family);-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:.25rem}[part~=fraction] [part=symbols-wrapper],[part~=fraction]{position:absolute;overflow:hidden;inset-inline-start:0;min-width:0 !important;z-index:1}slot{display:none}[part=base]{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}[part~=label]{font-family:var(--igc-caption-font-family);font-weight:var(--igc-caption-font-weight);font-size:var(--igc-caption-font-size);font-style:var(--igc-caption-font-style);letter-spacing:var(--igc-caption-letter-spacing);text-transform:var(--igc-caption-text-transform);line-height:var(--igc-caption-line-height);margin-top:var(--igc-caption-margin-top);margin-bottom:var(--igc-caption-margin-bottom);color:hsla(var(--igc-gray-700), var(--igc-gray-a));-webkit-padding-start:.125rem;padding-inline-start:.125rem}[part~=symbols-wrapper]{color:hsla(var(--igc-gray-900), var(--igc-gray-a));position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.125rem;gap:.125rem;counter-reset:symbols;inset-inline-start:0}[part~=fraction] [part=symbols-wrapper]{color:hsla(var(--igc-primary-500), var(--igc-primary-a))}[part~=fraction] [part=symbols-wrapper] [part~=symbol]{-webkit-filter:grayscale(0);filter:grayscale(0)}[part~=symbol]{color:inherit;font-size:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-filter:grayscale(100%);filter:grayscale(100%);cursor:pointer}[part~=symbol] igc-icon{color:inherit}[part~=symbol]:empty::before{content:counter(symbols);counter-increment:symbols}:host([disabled]){pointer-events:none}:host([disabled]) [part~=label]{color:hsla(var(--igc-gray-400), var(--igc-gray-a)) !important}:host([disabled]) [part~=symbols-wrapper]{color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [part~=fraction] [part=symbols-wrapper]{color:hsla(var(--igc-gray-600), var(--igc-gray-a));-webkit-filter:grayscale(50%);filter:grayscale(50%)}[part~=large]{min-width:1.5rem;min-height:1.5rem;line-height:1.5rem;width:1.5rem;height:1.5rem}[part~=large] igc-icon{width:1.5rem;height:1.5rem;font-size:1.5rem}[part~=medium]{min-width:1.25rem;min-height:1.25rem;line-height:1.25rem;width:1.25rem;height:1.25rem}[part~=medium] igc-icon{width:1.25rem;height:1.25rem;font-size:1.25rem}[part~=small]{min-width:1rem;min-height:1rem;line-height:1rem;width:1rem;height:1rem}[part~=small] igc-icon{width:1rem;height:1rem;font-size:1rem}[part="label large"],[part="label medium"],[part="label small"]{height:auto;width:auto;min-height:0;min-width:0}[part="fraction large"]{min-height:calc(1.5rem + (0.125rem * 2));height:calc(1.5rem + (0.125rem * 2))}[part="fraction medium"]{min-height:calc(1.25rem + (0.125rem * 2));height:calc(1.25rem + (0.125rem * 2))}[part="fraction small"]{min-height:calc(1rem + (0.125rem * 2));height:calc(1rem + (0.125rem * 2))}`;
2
+ export const styles = css `:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-family:var(--igc-font-family);-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:.25rem}[part="symbols-wrapper selected"],[part~=fraction]{position:absolute !important;overflow:hidden;inset-inline-start:0 !important;min-width:0 !important;z-index:1}slot{display:none}[part=base]{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}[part~=label]{font-family:var(--igc-caption-font-family);font-weight:var(--igc-caption-font-weight);font-size:var(--igc-caption-font-size);font-style:var(--igc-caption-font-style);letter-spacing:var(--igc-caption-letter-spacing);text-transform:var(--igc-caption-text-transform);line-height:var(--igc-caption-line-height);margin-top:var(--igc-caption-margin-top);margin-bottom:var(--igc-caption-margin-bottom);color:hsla(var(--igc-gray-700), var(--igc-gray-a));-webkit-padding-start:.125rem;padding-inline-start:.125rem}[part~=symbol]{color:inherit;font-size:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-filter:grayscale(100%);filter:grayscale(100%);cursor:pointer}[part~=symbol] igc-icon{color:inherit}[part~=symbol]:empty::before{content:counter(symbols);counter-increment:symbols}[part="symbol small"]{font-size:var(--symbol-size, 1.125rem)}[part="symbol medium"]{font-size:var(--symbol-size, 1.5rem)}[part="symbol large"]{font-size:var(--symbol-size, 2.25rem)}[part~=symbols-wrapper]{color:hsla(var(--igc-gray-900), var(--igc-gray-a));position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.125rem;gap:.125rem;counter-reset:symbols;inset-inline-start:0}[part="symbols-wrapper selected"]{color:hsla(var(--igc-primary-500), var(--igc-primary-a))}[part="symbols-wrapper selected"] [part~=symbol]{-webkit-filter:grayscale(0);filter:grayscale(0)}:host([disabled]){pointer-events:none}:host([disabled]) [part~=label]{color:hsla(var(--igc-gray-400), var(--igc-gray-a)) !important}:host([disabled]) [part~=symbols-wrapper]{color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [part="symbols-wrapper selected"]{color:hsla(var(--igc-gray-600), var(--igc-gray-a));-webkit-filter:grayscale(50%);filter:grayscale(50%)}[part~=large]{min-width:var(--symbol-size, 2.25rem);min-height:var(--symbol-size, 2.25rem);line-height:var(--symbol-size, 2.25rem);width:var(--symbol-size, 2.25rem);height:var(--symbol-size, 2.25rem)}[part~=large] igc-icon{width:var(--symbol-size, 2.25rem);height:var(--symbol-size, 2.25rem);font-size:var(--symbol-size, 2.25rem)}[part~=medium]{min-width:var(--symbol-size, 1.5rem);min-height:var(--symbol-size, 1.5rem);line-height:var(--symbol-size, 1.5rem);width:var(--symbol-size, 1.5rem);height:var(--symbol-size, 1.5rem)}[part~=medium] igc-icon{width:var(--symbol-size, 1.5rem);height:var(--symbol-size, 1.5rem);font-size:var(--symbol-size, 1.5rem)}[part~=small]{min-width:var(--symbol-size, 1.125rem);min-height:var(--symbol-size, 1.125rem);line-height:var(--symbol-size, 1.125rem);width:var(--symbol-size, 1.125rem);height:var(--symbol-size, 1.125rem)}[part~=small] igc-icon{width:var(--symbol-size, 1.125rem);height:var(--symbol-size, 1.125rem);font-size:var(--symbol-size, 1.125rem)}[part="label large"],[part="label medium"],[part="label small"]{height:auto;width:auto;min-height:0;min-width:0}[part="fraction large"]{min-height:calc(var(--symbol-size, 2.25rem) + (0.125rem * 2));height:calc(var(--symbol-size, 2.25rem) + (0.125rem * 2))}[part="fraction medium"]{min-height:calc(var(--symbol-size, 1.5rem) + (0.125rem * 2));height:calc(var(--symbol-size, 1.5rem) + (0.125rem * 2))}[part="fraction small"]{min-height:calc(var(--symbol-size, 1.125rem) + (0.125rem * 2));height:calc(var(--symbol-size, 1.125rem) + (0.125rem * 2))}`;
3
3
  //# sourceMappingURL=rating.base.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rating.base.css.js","sourceRoot":"","sources":["../../../src/components/rating/rating.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,8jIAA8jI,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-family:var(--igc-font-family);-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:.25rem}[part~=fraction] [part=symbols-wrapper],[part~=fraction]{position:absolute;overflow:hidden;inset-inline-start:0;min-width:0 !important;z-index:1}slot{display:none}[part=base]{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}[part~=label]{font-family:var(--igc-caption-font-family);font-weight:var(--igc-caption-font-weight);font-size:var(--igc-caption-font-size);font-style:var(--igc-caption-font-style);letter-spacing:var(--igc-caption-letter-spacing);text-transform:var(--igc-caption-text-transform);line-height:var(--igc-caption-line-height);margin-top:var(--igc-caption-margin-top);margin-bottom:var(--igc-caption-margin-bottom);color:hsla(var(--igc-gray-700), var(--igc-gray-a));-webkit-padding-start:.125rem;padding-inline-start:.125rem}[part~=symbols-wrapper]{color:hsla(var(--igc-gray-900), var(--igc-gray-a));position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.125rem;gap:.125rem;counter-reset:symbols;inset-inline-start:0}[part~=fraction] [part=symbols-wrapper]{color:hsla(var(--igc-primary-500), var(--igc-primary-a))}[part~=fraction] [part=symbols-wrapper] [part~=symbol]{-webkit-filter:grayscale(0);filter:grayscale(0)}[part~=symbol]{color:inherit;font-size:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-filter:grayscale(100%);filter:grayscale(100%);cursor:pointer}[part~=symbol] igc-icon{color:inherit}[part~=symbol]:empty::before{content:counter(symbols);counter-increment:symbols}:host([disabled]){pointer-events:none}:host([disabled]) [part~=label]{color:hsla(var(--igc-gray-400), var(--igc-gray-a)) !important}:host([disabled]) [part~=symbols-wrapper]{color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [part~=fraction] [part=symbols-wrapper]{color:hsla(var(--igc-gray-600), var(--igc-gray-a));-webkit-filter:grayscale(50%);filter:grayscale(50%)}[part~=large]{min-width:1.5rem;min-height:1.5rem;line-height:1.5rem;width:1.5rem;height:1.5rem}[part~=large] igc-icon{width:1.5rem;height:1.5rem;font-size:1.5rem}[part~=medium]{min-width:1.25rem;min-height:1.25rem;line-height:1.25rem;width:1.25rem;height:1.25rem}[part~=medium] igc-icon{width:1.25rem;height:1.25rem;font-size:1.25rem}[part~=small]{min-width:1rem;min-height:1rem;line-height:1rem;width:1rem;height:1rem}[part~=small] igc-icon{width:1rem;height:1rem;font-size:1rem}[part=\"label large\"],[part=\"label medium\"],[part=\"label small\"]{height:auto;width:auto;min-height:0;min-width:0}[part=\"fraction large\"]{min-height:calc(1.5rem + (0.125rem * 2));height:calc(1.5rem + (0.125rem * 2))}[part=\"fraction medium\"]{min-height:calc(1.25rem + (0.125rem * 2));height:calc(1.25rem + (0.125rem * 2))}[part=\"fraction small\"]{min-height:calc(1rem + (0.125rem * 2));height:calc(1rem + (0.125rem * 2))}`;\n"]}
1
+ {"version":3,"file":"rating.base.css.js","sourceRoot":"","sources":["../../../src/components/rating/rating.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,i3JAAi3J,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-family:var(--igc-font-family);-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:.25rem}[part=\"symbols-wrapper selected\"],[part~=fraction]{position:absolute !important;overflow:hidden;inset-inline-start:0 !important;min-width:0 !important;z-index:1}slot{display:none}[part=base]{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}[part~=label]{font-family:var(--igc-caption-font-family);font-weight:var(--igc-caption-font-weight);font-size:var(--igc-caption-font-size);font-style:var(--igc-caption-font-style);letter-spacing:var(--igc-caption-letter-spacing);text-transform:var(--igc-caption-text-transform);line-height:var(--igc-caption-line-height);margin-top:var(--igc-caption-margin-top);margin-bottom:var(--igc-caption-margin-bottom);color:hsla(var(--igc-gray-700), var(--igc-gray-a));-webkit-padding-start:.125rem;padding-inline-start:.125rem}[part~=symbol]{color:inherit;font-size:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-filter:grayscale(100%);filter:grayscale(100%);cursor:pointer}[part~=symbol] igc-icon{color:inherit}[part~=symbol]:empty::before{content:counter(symbols);counter-increment:symbols}[part=\"symbol small\"]{font-size:var(--symbol-size, 1.125rem)}[part=\"symbol medium\"]{font-size:var(--symbol-size, 1.5rem)}[part=\"symbol large\"]{font-size:var(--symbol-size, 2.25rem)}[part~=symbols-wrapper]{color:hsla(var(--igc-gray-900), var(--igc-gray-a));position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.125rem;gap:.125rem;counter-reset:symbols;inset-inline-start:0}[part=\"symbols-wrapper selected\"]{color:hsla(var(--igc-primary-500), var(--igc-primary-a))}[part=\"symbols-wrapper selected\"] [part~=symbol]{-webkit-filter:grayscale(0);filter:grayscale(0)}:host([disabled]){pointer-events:none}:host([disabled]) [part~=label]{color:hsla(var(--igc-gray-400), var(--igc-gray-a)) !important}:host([disabled]) [part~=symbols-wrapper]{color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [part=\"symbols-wrapper selected\"]{color:hsla(var(--igc-gray-600), var(--igc-gray-a));-webkit-filter:grayscale(50%);filter:grayscale(50%)}[part~=large]{min-width:var(--symbol-size, 2.25rem);min-height:var(--symbol-size, 2.25rem);line-height:var(--symbol-size, 2.25rem);width:var(--symbol-size, 2.25rem);height:var(--symbol-size, 2.25rem)}[part~=large] igc-icon{width:var(--symbol-size, 2.25rem);height:var(--symbol-size, 2.25rem);font-size:var(--symbol-size, 2.25rem)}[part~=medium]{min-width:var(--symbol-size, 1.5rem);min-height:var(--symbol-size, 1.5rem);line-height:var(--symbol-size, 1.5rem);width:var(--symbol-size, 1.5rem);height:var(--symbol-size, 1.5rem)}[part~=medium] igc-icon{width:var(--symbol-size, 1.5rem);height:var(--symbol-size, 1.5rem);font-size:var(--symbol-size, 1.5rem)}[part~=small]{min-width:var(--symbol-size, 1.125rem);min-height:var(--symbol-size, 1.125rem);line-height:var(--symbol-size, 1.125rem);width:var(--symbol-size, 1.125rem);height:var(--symbol-size, 1.125rem)}[part~=small] igc-icon{width:var(--symbol-size, 1.125rem);height:var(--symbol-size, 1.125rem);font-size:var(--symbol-size, 1.125rem)}[part=\"label large\"],[part=\"label medium\"],[part=\"label small\"]{height:auto;width:auto;min-height:0;min-width:0}[part=\"fraction large\"]{min-height:calc(var(--symbol-size, 2.25rem) + (0.125rem * 2));height:calc(var(--symbol-size, 2.25rem) + (0.125rem * 2))}[part=\"fraction medium\"]{min-height:calc(var(--symbol-size, 1.5rem) + (0.125rem * 2));height:calc(var(--symbol-size, 1.5rem) + (0.125rem * 2))}[part=\"fraction small\"]{min-height:calc(var(--symbol-size, 1.125rem) + (0.125rem * 2));height:calc(var(--symbol-size, 1.125rem) + (0.125rem * 2))}`;\n"]}
@@ -1,11 +1,11 @@
1
1
  import { LitElement } from 'lit';
2
- import { Constructor } from '../common/mixins/constructor';
2
+ import { Constructor } from '../common/mixins/constructor.js';
3
3
  import type IgcRatingSymbolComponent from './rating-symbol';
4
4
  export interface IgcRatingEventMap {
5
5
  igcChange: CustomEvent<number>;
6
6
  igcHover: CustomEvent<number>;
7
7
  }
8
- declare const IgcRatingComponent_base: Constructor<import("../common/mixins/sizable").SizableInterface> & Constructor<import("../common/mixins/event-emitter").EventEmitterInterface<IgcRatingEventMap>> & Constructor<LitElement>;
8
+ declare const IgcRatingComponent_base: Constructor<import("../common/mixins/sizable.js").SizableInterface> & import("../common/mixins/constructor.js").AbstractConstructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcRatingEventMap>> & Constructor<LitElement>;
9
9
  /**
10
10
  * Rating provides insight regarding others' opinions and experiences,
11
11
  * and can allow the user to submit a rating of their own
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `[part~=label]{font-family:var(--igc-subtitle-2-font-family);font-weight:var(--igc-subtitle-2-font-weight);font-size:var(--igc-subtitle-2-font-size);font-style:var(--igc-subtitle-2-font-style);letter-spacing:var(--igc-subtitle-2-letter-spacing);text-transform:var(--igc-subtitle-2-text-transform);line-height:var(--igc-subtitle-2-line-height);margin-top:var(--igc-subtitle-2-margin-top);margin-bottom:var(--igc-subtitle-2-margin-bottom);color:hsla(var(--igc-gray-900), var(--igc-gray-a));-webkit-padding-start:.375rem;padding-inline-start:.375rem}:host([disabled]) [part~=symbols-wrapper]{color:hsla(var(--igc-gray-200), var(--igc-gray-a))}:host([disabled]) [part~=label]{color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [part~=fraction] [part~=symbols-wrapper]{color:hsla(var(--igc-gray-500), var(--igc-gray-a))}`;
2
+ export const styles = css `[part~=label]{font-family:var(--igc-subtitle-2-font-family);font-weight:var(--igc-subtitle-2-font-weight);font-size:var(--igc-subtitle-2-font-size);font-style:var(--igc-subtitle-2-font-style);letter-spacing:var(--igc-subtitle-2-letter-spacing);text-transform:var(--igc-subtitle-2-text-transform);line-height:var(--igc-subtitle-2-line-height);margin-top:var(--igc-subtitle-2-margin-top);margin-bottom:var(--igc-subtitle-2-margin-bottom);color:hsla(var(--igc-gray-900), var(--igc-gray-a));-webkit-padding-start:.375rem;padding-inline-start:.375rem}:host([disabled]) [part~=symbols-wrapper]{color:hsla(var(--igc-gray-200), var(--igc-gray-a))}:host([disabled]) [part~=label]{color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [part="symbols-wrapper selected"]{color:hsla(var(--igc-gray-500), var(--igc-gray-a))}`;
3
3
  //# sourceMappingURL=rating.fluent.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rating.fluent.css.js","sourceRoot":"","sources":["../../../src/components/rating/rating.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,k0BAAk0B,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=label]{font-family:var(--igc-subtitle-2-font-family);font-weight:var(--igc-subtitle-2-font-weight);font-size:var(--igc-subtitle-2-font-size);font-style:var(--igc-subtitle-2-font-style);letter-spacing:var(--igc-subtitle-2-letter-spacing);text-transform:var(--igc-subtitle-2-text-transform);line-height:var(--igc-subtitle-2-line-height);margin-top:var(--igc-subtitle-2-margin-top);margin-bottom:var(--igc-subtitle-2-margin-bottom);color:hsla(var(--igc-gray-900), var(--igc-gray-a));-webkit-padding-start:.375rem;padding-inline-start:.375rem}:host([disabled]) [part~=symbols-wrapper]{color:hsla(var(--igc-gray-200), var(--igc-gray-a))}:host([disabled]) [part~=label]{color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [part~=fraction] [part~=symbols-wrapper]{color:hsla(var(--igc-gray-500), var(--igc-gray-a))}`;\n"]}
1
+ {"version":3,"file":"rating.fluent.css.js","sourceRoot":"","sources":["../../../src/components/rating/rating.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,2zBAA2zB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=label]{font-family:var(--igc-subtitle-2-font-family);font-weight:var(--igc-subtitle-2-font-weight);font-size:var(--igc-subtitle-2-font-size);font-style:var(--igc-subtitle-2-font-style);letter-spacing:var(--igc-subtitle-2-letter-spacing);text-transform:var(--igc-subtitle-2-text-transform);line-height:var(--igc-subtitle-2-line-height);margin-top:var(--igc-subtitle-2-margin-top);margin-bottom:var(--igc-subtitle-2-margin-bottom);color:hsla(var(--igc-gray-900), var(--igc-gray-a));-webkit-padding-start:.375rem;padding-inline-start:.375rem}:host([disabled]) [part~=symbols-wrapper]{color:hsla(var(--igc-gray-200), var(--igc-gray-a))}:host([disabled]) [part~=label]{color:hsla(var(--igc-gray-400), var(--igc-gray-a))}:host([disabled]) [part=\"symbols-wrapper selected\"]{color:hsla(var(--igc-gray-500), var(--igc-gray-a))}`;\n"]}
@@ -8,15 +8,15 @@ import { html, LitElement, nothing } from 'lit';
8
8
  import { property, query, queryAssignedElements, state, } from 'lit/decorators.js';
9
9
  import { styleMap } from 'lit/directives/style-map.js';
10
10
  import { ifDefined } from 'lit/directives/if-defined.js';
11
- import { watch } from '../common/decorators/watch';
12
- import { EventEmitterMixin } from '../common/mixins/event-emitter';
13
- import { SizableMixin } from '../common/mixins/sizable';
14
- import { styles } from './rating.base.css';
15
- import { styles as bootstrap } from './rating.bootstrap.css';
16
- import { styles as fluent } from './rating.fluent.css';
17
- import { styles as indigo } from './rating.indigo.css';
18
- import { clamp } from '../common/util';
19
- import { themes } from '../../theming';
11
+ import { watch } from '../common/decorators/watch.js';
12
+ import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
13
+ import { SizableMixin } from '../common/mixins/sizable.js';
14
+ import { styles } from './rating.base.css.js';
15
+ import { styles as bootstrap } from './rating.bootstrap.css.js';
16
+ import { styles as fluent } from './rating.fluent.css.js';
17
+ import { styles as indigo } from './rating.indigo.css.js';
18
+ import { clamp } from '../common/util.js';
19
+ import { themes } from '../../theming/theming-decorator.js';
20
20
  let IgcRatingComponent = class IgcRatingComponent extends SizableMixin(EventEmitterMixin(LitElement)) {
21
21
  constructor() {
22
22
  super();
@@ -163,7 +163,7 @@ let IgcRatingComponent = class IgcRatingComponent extends SizableMixin(EventEmit
163
163
  <slot @slotchange=${this.handleSlotChange}></slot>
164
164
 
165
165
  <div style=${styleMap(styles)} part="fraction ${this.size}">
166
- <div part="symbols-wrapper">
166
+ <div part="symbols-wrapper selected">
167
167
  ${this.hasProjectedSymbols
168
168
  ? this.renderProjected()
169
169
  : this.renderSymbols()}
@@ -1 +1 @@
1
- {"version":3,"file":"rating.js","sourceRoot":"","sources":["../../../src/components/rating/rating.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport {\n property,\n query,\n queryAssignedElements,\n state,\n} from 'lit/decorators.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { watch } from '../common/decorators/watch';\nimport { Constructor } from '../common/mixins/constructor';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter';\nimport { SizableMixin } from '../common/mixins/sizable';\nimport { styles } from './rating.base.css';\nimport { styles as bootstrap } from './rating.bootstrap.css';\nimport { styles as fluent } from './rating.fluent.css';\nimport { styles as indigo } from './rating.indigo.css';\nimport { clamp } from '../common/util';\nimport type IgcRatingSymbolComponent from './rating-symbol';\nimport { themes } from '../../theming';\n\nexport interface IgcRatingEventMap {\n igcChange: CustomEvent<number>;\n igcHover: CustomEvent<number>;\n}\n\n/**\n * Rating provides insight regarding others' opinions and experiences,\n * and can allow the user to submit a rating of their own\n *\n * @element igc-rating\n *\n * @fires igcChange - Emitted when the value of the control changes.\n * @fires igcHover - Emitted when hover is enabled and the user mouses over a symbol of the rating.\n *\n * @csspart base - The main wrapper which holds all of the rating elements.\n * @csspart label - The label part.\n * @csspart symbol - The part for a single symbol.\n * @csspart fraction -The part for the selected symbols.\n * @csspart symbols-wrapper - The wrapper that holds all symbols.\n * @csspart large - A part responsible for the symbols size.\n * @csspart medium - A part responsible for the symbols size.\n * @csspart small- A part responsible for the symbols size.\n */\n@themes({ fluent, bootstrap, indigo })\nexport default class IgcRatingComponent extends SizableMixin(\n EventEmitterMixin<IgcRatingEventMap, Constructor<LitElement>>(LitElement)\n) {\n public static readonly tagName = 'igc-rating';\n\n public static styles = [styles];\n\n @query('[part=\"base\"]', true)\n protected container!: HTMLElement;\n\n @queryAssignedElements({ selector: 'igc-rating-symbol' })\n protected ratingSymbols!: Array<IgcRatingSymbolComponent>;\n\n @state()\n protected hoverValue = -1;\n\n @state()\n protected hoverState = false;\n\n protected get isInteractive() {\n return !(this.readonly || this.disabled);\n }\n\n protected get hasProjectedSymbols() {\n return this.ratingSymbols.length > 0;\n }\n\n protected get isLTR() {\n return (\n window.getComputedStyle(this).getPropertyValue('direction') === 'ltr'\n );\n }\n\n protected get valueText() {\n return this.valueFormat\n ? this.valueFormat.replace(/\\{0\\}/gm, `${this.value}`)\n : this.value;\n }\n\n /** The maximum value for the rating */\n @property({ type: Number })\n public max = 5;\n\n /** The minimum value change allowed. */\n @property({ type: Number })\n public step = 1;\n\n /** The symbol which the rating will display. */\n @property()\n public symbol = '⭐';\n\n /** The name attribute of the control */\n @property()\n public name!: string;\n\n /** The label of the control. */\n @property()\n public label!: string;\n\n /**\n * A format string which sets aria-valuetext. All instances of '{0}' will be replaced\n * with the current value of the control.\n * Important for screen-readers and useful for localization.\n */\n @property({ attribute: 'value-format' })\n public valueFormat!: string;\n\n /** The current value of the component */\n @property({ type: Number })\n public value = 0;\n\n /** Sets the disabled state of the component */\n @property({ type: Boolean, reflect: true })\n public disabled = false;\n\n /** Sets hover preview behavior for the component */\n @property({ type: Boolean, reflect: true, attribute: 'hover-preview' })\n public hoverPreview = false;\n\n /** Sets the readonly state of the component */\n @property({ type: Boolean, reflect: true })\n public readonly = false;\n\n @watch('max')\n protected handleMaxChange() {\n this.hasProjectedSymbols\n ? (this.max = this.ratingSymbols.length)\n : (this.max = Math.max(0, this.max));\n if (this.max < this.value) {\n this.value = this.max;\n }\n }\n\n @watch('value')\n protected handleValueChange() {\n this.value = clamp(this.value, 0, this.max);\n }\n\n @watch('step')\n protected handlePrecisionChange() {\n this.step = clamp(this.step, 0.001, 1);\n }\n\n constructor() {\n super();\n this.addEventListener('keydown', this.handleKeyDown);\n }\n\n protected handleClick({ clientX }: MouseEvent) {\n if (!this.isInteractive) {\n return;\n }\n\n const value = this.calcNewValue(clientX);\n this.value === value ? (this.value = 0) : (this.value = value);\n this.emitEvent('igcChange', { detail: this.value });\n }\n\n protected handleMouseMove({ clientX }: MouseEvent) {\n if (!this.isInteractive) {\n return;\n }\n\n const value = this.calcNewValue(clientX);\n\n if (this.hoverValue !== value) {\n // Since mousemove spams a lot, only emit on a value change\n this.hoverValue = value;\n this.emitEvent('igcHover', { detail: this.hoverValue });\n }\n }\n\n protected handleMouseEnter() {\n if (this.isInteractive) {\n this.hoverState = true;\n }\n }\n\n protected handleMouseLeave() {\n if (this.isInteractive) {\n this.hoverState = false;\n }\n }\n\n protected handleKeyDown({ key }: KeyboardEvent) {\n if (!this.isInteractive) {\n return;\n }\n\n let result = this.value;\n\n switch (key) {\n case 'ArrowUp':\n case 'ArrowRight':\n result += this.isLTR ? this.step : -this.step;\n break;\n case 'ArrowDown':\n case 'ArrowLeft':\n result -= this.isLTR ? this.step : -this.step;\n break;\n case 'Home':\n result = this.step;\n break;\n case 'End':\n result = this.max;\n break;\n default:\n return;\n }\n\n // Verify new value is in bounds and emit\n this.value = clamp(result, 0, this.max);\n\n if (result === this.value) {\n this.emitEvent('igcChange', { detail: this.value });\n }\n }\n\n protected handleSlotChange() {\n if (this.hasProjectedSymbols) {\n this.max = this.ratingSymbols.length;\n }\n this.requestUpdate();\n }\n\n protected calcNewValue(x: number) {\n const { width, left, right } = this.container.getBoundingClientRect();\n const percent = this.isLTR ? (x - left) / width : (right - x) / width;\n const value = this.round(this.max * percent + this.step / 2);\n\n return clamp(value, this.step, this.max);\n }\n\n protected getPrecision(num: number) {\n const [_, decimal] = num.toString().split('.');\n return decimal ? decimal.length : 0;\n }\n\n protected round(value: number) {\n value = Math.round(value / this.step) * this.step;\n return Number(value.toFixed(this.getPrecision(this.step)));\n }\n\n /**\n * Increments the value of the control by `n` steps multiplied by the\n * step factor.\n */\n public stepUp(n = 1) {\n this.value += this.round(n * this.step);\n }\n\n /**\n * Decrements the value of the control by `n` steps multiplied by\n * the step factor.\n */\n public stepDown(n = 1) {\n this.value -= this.round(n * this.step);\n }\n\n protected *renderSymbols() {\n for (let i = 0; i < this.max; i++) {\n yield html`<span part=\"symbol ${this.size}\">${this.symbol}</span>`;\n }\n }\n\n protected renderProjected() {\n return html`${this.ratingSymbols.map((each) => {\n const clone = each.cloneNode(true) as IgcRatingSymbolComponent;\n clone.setAttribute('part', `symbol ${this.size}`);\n return clone;\n })}`;\n }\n\n protected renderFractionWrapper(styles: { width: string }) {\n return html`<div\n @click=${this.handleClick}\n @mouseenter=${this.hoverPreview ? this.handleMouseEnter : nothing}\n @mouseleave=${this.hoverPreview ? this.handleMouseLeave : nothing}\n @mousemove=${this.hoverPreview ? this.handleMouseMove : nothing}\n >\n <slot @slotchange=${this.handleSlotChange}></slot>\n\n <div style=${styleMap(styles)} part=\"fraction ${this.size}\">\n <div part=\"symbols-wrapper\">\n ${this.hasProjectedSymbols\n ? this.renderProjected()\n : this.renderSymbols()}\n </div>\n </div>\n <div part=\"symbols-wrapper\">\n ${this.hasProjectedSymbols\n ? this.renderProjected()\n : this.renderSymbols()}\n </div>\n </div>`;\n }\n\n protected override render() {\n const value = this.hoverState ? this.hoverValue : this.value;\n const styles = { width: `${Math.round((value / this.max) * 100)}%` };\n\n return html`\n <label part=\"label ${this.size}\">${this.label}</label>\n <div\n part=\"base\"\n role=\"slider\"\n tabindex=${ifDefined(this.disabled ? undefined : 0)}\n aria-label=${this.label ?? nothing}\n aria-valuemin=\"0\"\n aria-valuenow=${this.value}\n aria-valuemax=${this.max}\n aria-valuetext=${this.valueText}\n >\n ${this.renderFractionWrapper(styles)}\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-rating': IgcRatingComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"rating.js","sourceRoot":"","sources":["../../../src/components/rating/rating.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport {\n property,\n query,\n queryAssignedElements,\n state,\n} from 'lit/decorators.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { SizableMixin } from '../common/mixins/sizable.js';\nimport { styles } from './rating.base.css.js';\nimport { styles as bootstrap } from './rating.bootstrap.css.js';\nimport { styles as fluent } from './rating.fluent.css.js';\nimport { styles as indigo } from './rating.indigo.css.js';\nimport { clamp } from '../common/util.js';\nimport type IgcRatingSymbolComponent from './rating-symbol';\nimport { themes } from '../../theming/theming-decorator.js';\n\nexport interface IgcRatingEventMap {\n igcChange: CustomEvent<number>;\n igcHover: CustomEvent<number>;\n}\n\n/**\n * Rating provides insight regarding others' opinions and experiences,\n * and can allow the user to submit a rating of their own\n *\n * @element igc-rating\n *\n * @fires igcChange - Emitted when the value of the control changes.\n * @fires igcHover - Emitted when hover is enabled and the user mouses over a symbol of the rating.\n *\n * @csspart base - The main wrapper which holds all of the rating elements.\n * @csspart label - The label part.\n * @csspart symbol - The part for a single symbol.\n * @csspart fraction -The part for the selected symbols.\n * @csspart symbols-wrapper - The wrapper that holds all symbols.\n * @csspart large - A part responsible for the symbols size.\n * @csspart medium - A part responsible for the symbols size.\n * @csspart small- A part responsible for the symbols size.\n */\n@themes({ fluent, bootstrap, indigo })\nexport default class IgcRatingComponent extends SizableMixin(\n EventEmitterMixin<IgcRatingEventMap, Constructor<LitElement>>(LitElement)\n) {\n public static readonly tagName = 'igc-rating';\n\n public static styles = [styles];\n\n @query('[part=\"base\"]', true)\n protected container!: HTMLElement;\n\n @queryAssignedElements({ selector: 'igc-rating-symbol' })\n protected ratingSymbols!: Array<IgcRatingSymbolComponent>;\n\n @state()\n protected hoverValue = -1;\n\n @state()\n protected hoverState = false;\n\n protected get isInteractive() {\n return !(this.readonly || this.disabled);\n }\n\n protected get hasProjectedSymbols() {\n return this.ratingSymbols.length > 0;\n }\n\n protected get isLTR() {\n return (\n window.getComputedStyle(this).getPropertyValue('direction') === 'ltr'\n );\n }\n\n protected get valueText() {\n return this.valueFormat\n ? this.valueFormat.replace(/\\{0\\}/gm, `${this.value}`)\n : this.value;\n }\n\n /** The maximum value for the rating */\n @property({ type: Number })\n public max = 5;\n\n /** The minimum value change allowed. */\n @property({ type: Number })\n public step = 1;\n\n /** The symbol which the rating will display. */\n @property()\n public symbol = '⭐';\n\n /** The name attribute of the control */\n @property()\n public name!: string;\n\n /** The label of the control. */\n @property()\n public label!: string;\n\n /**\n * A format string which sets aria-valuetext. All instances of '{0}' will be replaced\n * with the current value of the control.\n * Important for screen-readers and useful for localization.\n */\n @property({ attribute: 'value-format' })\n public valueFormat!: string;\n\n /** The current value of the component */\n @property({ type: Number })\n public value = 0;\n\n /** Sets the disabled state of the component */\n @property({ type: Boolean, reflect: true })\n public disabled = false;\n\n /** Sets hover preview behavior for the component */\n @property({ type: Boolean, reflect: true, attribute: 'hover-preview' })\n public hoverPreview = false;\n\n /** Sets the readonly state of the component */\n @property({ type: Boolean, reflect: true })\n public readonly = false;\n\n @watch('max')\n protected handleMaxChange() {\n this.hasProjectedSymbols\n ? (this.max = this.ratingSymbols.length)\n : (this.max = Math.max(0, this.max));\n if (this.max < this.value) {\n this.value = this.max;\n }\n }\n\n @watch('value')\n protected handleValueChange() {\n this.value = clamp(this.value, 0, this.max);\n }\n\n @watch('step')\n protected handlePrecisionChange() {\n this.step = clamp(this.step, 0.001, 1);\n }\n\n constructor() {\n super();\n this.addEventListener('keydown', this.handleKeyDown);\n }\n\n protected handleClick({ clientX }: MouseEvent) {\n if (!this.isInteractive) {\n return;\n }\n\n const value = this.calcNewValue(clientX);\n this.value === value ? (this.value = 0) : (this.value = value);\n this.emitEvent('igcChange', { detail: this.value });\n }\n\n protected handleMouseMove({ clientX }: MouseEvent) {\n if (!this.isInteractive) {\n return;\n }\n\n const value = this.calcNewValue(clientX);\n\n if (this.hoverValue !== value) {\n // Since mousemove spams a lot, only emit on a value change\n this.hoverValue = value;\n this.emitEvent('igcHover', { detail: this.hoverValue });\n }\n }\n\n protected handleMouseEnter() {\n if (this.isInteractive) {\n this.hoverState = true;\n }\n }\n\n protected handleMouseLeave() {\n if (this.isInteractive) {\n this.hoverState = false;\n }\n }\n\n protected handleKeyDown({ key }: KeyboardEvent) {\n if (!this.isInteractive) {\n return;\n }\n\n let result = this.value;\n\n switch (key) {\n case 'ArrowUp':\n case 'ArrowRight':\n result += this.isLTR ? this.step : -this.step;\n break;\n case 'ArrowDown':\n case 'ArrowLeft':\n result -= this.isLTR ? this.step : -this.step;\n break;\n case 'Home':\n result = this.step;\n break;\n case 'End':\n result = this.max;\n break;\n default:\n return;\n }\n\n // Verify new value is in bounds and emit\n this.value = clamp(result, 0, this.max);\n\n if (result === this.value) {\n this.emitEvent('igcChange', { detail: this.value });\n }\n }\n\n protected handleSlotChange() {\n if (this.hasProjectedSymbols) {\n this.max = this.ratingSymbols.length;\n }\n this.requestUpdate();\n }\n\n protected calcNewValue(x: number) {\n const { width, left, right } = this.container.getBoundingClientRect();\n const percent = this.isLTR ? (x - left) / width : (right - x) / width;\n const value = this.round(this.max * percent + this.step / 2);\n\n return clamp(value, this.step, this.max);\n }\n\n protected getPrecision(num: number) {\n const [_, decimal] = num.toString().split('.');\n return decimal ? decimal.length : 0;\n }\n\n protected round(value: number) {\n value = Math.round(value / this.step) * this.step;\n return Number(value.toFixed(this.getPrecision(this.step)));\n }\n\n /**\n * Increments the value of the control by `n` steps multiplied by the\n * step factor.\n */\n public stepUp(n = 1) {\n this.value += this.round(n * this.step);\n }\n\n /**\n * Decrements the value of the control by `n` steps multiplied by\n * the step factor.\n */\n public stepDown(n = 1) {\n this.value -= this.round(n * this.step);\n }\n\n protected *renderSymbols() {\n for (let i = 0; i < this.max; i++) {\n yield html`<span part=\"symbol ${this.size}\">${this.symbol}</span>`;\n }\n }\n\n protected renderProjected() {\n return html`${this.ratingSymbols.map((each) => {\n const clone = each.cloneNode(true) as IgcRatingSymbolComponent;\n clone.setAttribute('part', `symbol ${this.size}`);\n return clone;\n })}`;\n }\n\n protected renderFractionWrapper(styles: { width: string }) {\n return html`<div\n @click=${this.handleClick}\n @mouseenter=${this.hoverPreview ? this.handleMouseEnter : nothing}\n @mouseleave=${this.hoverPreview ? this.handleMouseLeave : nothing}\n @mousemove=${this.hoverPreview ? this.handleMouseMove : nothing}\n >\n <slot @slotchange=${this.handleSlotChange}></slot>\n\n <div style=${styleMap(styles)} part=\"fraction ${this.size}\">\n <div part=\"symbols-wrapper selected\">\n ${this.hasProjectedSymbols\n ? this.renderProjected()\n : this.renderSymbols()}\n </div>\n </div>\n <div part=\"symbols-wrapper\">\n ${this.hasProjectedSymbols\n ? this.renderProjected()\n : this.renderSymbols()}\n </div>\n </div>`;\n }\n\n protected override render() {\n const value = this.hoverState ? this.hoverValue : this.value;\n const styles = { width: `${Math.round((value / this.max) * 100)}%` };\n\n return html`\n <label part=\"label ${this.size}\">${this.label}</label>\n <div\n part=\"base\"\n role=\"slider\"\n tabindex=${ifDefined(this.disabled ? undefined : 0)}\n aria-label=${this.label ?? nothing}\n aria-valuemin=\"0\"\n aria-valuenow=${this.value}\n aria-valuemax=${this.max}\n aria-valuetext=${this.valueText}\n >\n ${this.renderFractionWrapper(styles)}\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-rating': IgcRatingComponent;\n }\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import { html, LitElement } from 'lit';
2
- import { styles } from './ripple.material.css';
2
+ import { styles } from './ripple.material.css.js';
3
3
  export default class IgcRippleComponent extends LitElement {
4
4
  constructor() {
5
5
  super();
@@ -1 +1 @@
1
- {"version":3,"file":"ripple.js","sourceRoot":"","sources":["../../../src/components/ripple/ripple.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAQ/C,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,UAAU;IAKxD;QACE,KAAK,EAAE,CAAC;QAIF,YAAO,GAAG,CAAC,EAAE,OAAO,EAAE,OAAO,EAAc,EAAE,EAAE;;YACrD,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC/C,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAEnE,MAAM,MAAM,GAAiC;gBAC3C,QAAQ,EAAE,UAAU;gBACpB,OAAO,EAAE,OAAO;gBAChB,aAAa,EAAE,MAAM;gBACrB,eAAe,EAAE,QAAQ;gBACzB,SAAS,EAAE,+BAA+B;gBAC1C,UAAU,EAAE,oBAAoB;gBAChC,MAAM,EAAE,cAAc;gBACtB,MAAM,EAAE,iBAAiB;gBACzB,KAAK,EAAE,GAAG,MAAM,IAAI;gBACpB,MAAM,EAAE,GAAG,MAAM,IAAI;gBACrB,YAAY,EAAE,KAAK;gBACnB,GAAG,EAAE,GAAG,GAAG,IAAI;gBACf,IAAI,EAAE,GAAG,IAAI,IAAI;gBACjB,UAAU,EAAE,wCAAwC;aACrD,CAAC;YACF,MAAM,MAAM,GAAe;gBACzB,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE;gBACxC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE;aACtC,CAAC;YACF,MAAM,IAAI,GAA6B;gBACrC,QAAQ,EAAE,GAAG;gBACb,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,QAAQ;aACjB,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACrC,MAAA,IAAI,CAAC,UAAU,0CAAE,WAAW,CAAC,OAAO,CAAC,CAAC;YACtC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QACtE,CAAC,CAAC;QApCA,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACnD,CAAC;IAqCO,aAAa,CAAC,CAAS,EAAE,CAAS;QACxC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC;QAC9C,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IAC5C,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA,aAAa,CAAC;IAC3B,CAAC;;AAtDsB,0BAAO,GAAG,YAAY,CAAC;AAEvB,yBAAM,GAAG,MAAM,CAAC","sourcesContent":["import { html, LitElement } from 'lit';\nimport { styles } from './ripple.material.css';\n\n/**\n * A ripple can be applied to an element to represent\n * interactive surface.\n *\n * @element igc-ripple\n */\nexport default class IgcRippleComponent extends LitElement {\n public static readonly tagName = 'igc-ripple';\n\n public static override styles = styles;\n\n constructor() {\n super();\n this.addEventListener('mousedown', this.handler);\n }\n\n private handler = ({ clientX, clientY }: MouseEvent) => {\n const element = document.createElement('span');\n const { radius, top, left } = this.getDimensions(clientX, clientY);\n\n const styles: Partial<CSSStyleDeclaration> = {\n position: 'absolute',\n display: 'block',\n pointerEvents: 'none',\n transformOrigin: 'center',\n transform: `translate3d(0, 0, 0) scale(0)`,\n willChange: 'opacity, transform',\n margin: `0 !important`,\n border: 'none !important',\n width: `${radius}px`,\n height: `${radius}px`,\n borderRadius: '50%',\n top: `${top}px`,\n left: `${left}px`,\n background: 'var(--color, hsl(var(--igc-gray-800)))',\n };\n const frames: Keyframe[] = [\n { opacity: 0.5, transform: 'scale(.3)' },\n { opacity: 0, transform: 'scale(2)' },\n ];\n const opts: KeyframeAnimationOptions = {\n duration: 600, // --igc-ripple-duration,\n fill: 'forwards',\n easing: 'linear', // --igc-ripple-easing\n };\n\n Object.assign(element.style, styles);\n this.shadowRoot?.appendChild(element);\n element.animate(frames, opts).finished.then(() => element.remove());\n };\n\n private getDimensions(x: number, y: number) {\n const { width, height, left, top } = this.getBoundingClientRect();\n const radius = Math.max(width, height);\n const _left = Math.round(x - left - radius / 2);\n const _top = Math.round(y - top - radius / 2);\n return { radius, top: _top, left: _left };\n }\n\n protected override render() {\n return html`<div></div>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-ripple': IgcRippleComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"ripple.js","sourceRoot":"","sources":["../../../src/components/ripple/ripple.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAQlD,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,UAAU;IAKxD;QACE,KAAK,EAAE,CAAC;QAIF,YAAO,GAAG,CAAC,EAAE,OAAO,EAAE,OAAO,EAAc,EAAE,EAAE;;YACrD,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC/C,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAEnE,MAAM,MAAM,GAAiC;gBAC3C,QAAQ,EAAE,UAAU;gBACpB,OAAO,EAAE,OAAO;gBAChB,aAAa,EAAE,MAAM;gBACrB,eAAe,EAAE,QAAQ;gBACzB,SAAS,EAAE,+BAA+B;gBAC1C,UAAU,EAAE,oBAAoB;gBAChC,MAAM,EAAE,cAAc;gBACtB,MAAM,EAAE,iBAAiB;gBACzB,KAAK,EAAE,GAAG,MAAM,IAAI;gBACpB,MAAM,EAAE,GAAG,MAAM,IAAI;gBACrB,YAAY,EAAE,KAAK;gBACnB,GAAG,EAAE,GAAG,GAAG,IAAI;gBACf,IAAI,EAAE,GAAG,IAAI,IAAI;gBACjB,UAAU,EAAE,wCAAwC;aACrD,CAAC;YACF,MAAM,MAAM,GAAe;gBACzB,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE;gBACxC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE;aACtC,CAAC;YACF,MAAM,IAAI,GAA6B;gBACrC,QAAQ,EAAE,GAAG;gBACb,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,QAAQ;aACjB,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACrC,MAAA,IAAI,CAAC,UAAU,0CAAE,WAAW,CAAC,OAAO,CAAC,CAAC;YACtC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QACtE,CAAC,CAAC;QApCA,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACnD,CAAC;IAqCO,aAAa,CAAC,CAAS,EAAE,CAAS;QACxC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC;QAC9C,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IAC5C,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA,aAAa,CAAC;IAC3B,CAAC;;AAtDsB,0BAAO,GAAG,YAAY,CAAC;AAEvB,yBAAM,GAAG,MAAM,CAAC","sourcesContent":["import { html, LitElement } from 'lit';\nimport { styles } from './ripple.material.css.js';\n\n/**\n * A ripple can be applied to an element to represent\n * interactive surface.\n *\n * @element igc-ripple\n */\nexport default class IgcRippleComponent extends LitElement {\n public static readonly tagName = 'igc-ripple';\n\n public static override styles = styles;\n\n constructor() {\n super();\n this.addEventListener('mousedown', this.handler);\n }\n\n private handler = ({ clientX, clientY }: MouseEvent) => {\n const element = document.createElement('span');\n const { radius, top, left } = this.getDimensions(clientX, clientY);\n\n const styles: Partial<CSSStyleDeclaration> = {\n position: 'absolute',\n display: 'block',\n pointerEvents: 'none',\n transformOrigin: 'center',\n transform: `translate3d(0, 0, 0) scale(0)`,\n willChange: 'opacity, transform',\n margin: `0 !important`,\n border: 'none !important',\n width: `${radius}px`,\n height: `${radius}px`,\n borderRadius: '50%',\n top: `${top}px`,\n left: `${left}px`,\n background: 'var(--color, hsl(var(--igc-gray-800)))',\n };\n const frames: Keyframe[] = [\n { opacity: 0.5, transform: 'scale(.3)' },\n { opacity: 0, transform: 'scale(2)' },\n ];\n const opts: KeyframeAnimationOptions = {\n duration: 600, // --igc-ripple-duration,\n fill: 'forwards',\n easing: 'linear', // --igc-ripple-easing\n };\n\n Object.assign(element.style, styles);\n this.shadowRoot?.appendChild(element);\n element.animate(frames, opts).finished.then(() => element.remove());\n };\n\n private getDimensions(x: number, y: number) {\n const { width, height, left, top } = this.getBoundingClientRect();\n const radius = Math.max(width, height);\n const _left = Math.round(x - left - radius / 2);\n const _top = Math.round(y - top - radius / 2);\n return { radius, top: _top, left: _left };\n }\n\n protected override render() {\n return html`<div></div>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-ripple': IgcRippleComponent;\n }\n}\n"]}
@@ -1,5 +1,5 @@
1
- import { Constructor } from '../common/mixins/constructor';
2
- import { IgcSliderBaseComponent } from './slider-base';
1
+ import { Constructor } from '../common/mixins/constructor.js';
2
+ import { IgcSliderBaseComponent } from './slider-base.js';
3
3
  export interface IgcRangeSliderValue {
4
4
  lower: number;
5
5
  upper: number;
@@ -14,7 +14,7 @@ export interface IgcRangeSliderEventMap {
14
14
  */
15
15
  igcChange: CustomEvent<IgcRangeSliderValue>;
16
16
  }
17
- declare const IgcRangeSliderComponent_base: Constructor<import("../common/mixins/event-emitter").EventEmitterInterface<IgcRangeSliderEventMap>> & Constructor<IgcSliderBaseComponent>;
17
+ declare const IgcRangeSliderComponent_base: import("../common/mixins/constructor.js").AbstractConstructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcRangeSliderEventMap>> & Constructor<IgcSliderBaseComponent>;
18
18
  /**
19
19
  * A range slider component used to select two numeric values within a range.
20
20
  *
@@ -6,8 +6,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { html } from 'lit';
8
8
  import { property, query } from 'lit/decorators.js';
9
- import { EventEmitterMixin } from '../common/mixins/event-emitter';
10
- import { IgcSliderBaseComponent } from './slider-base';
9
+ import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
10
+ import { IgcSliderBaseComponent } from './slider-base.js';
11
11
  export default class IgcRangeSliderComponent extends EventEmitterMixin(IgcSliderBaseComponent) {
12
12
  constructor() {
13
13
  super(...arguments);