igniteui-webcomponents 4.0.0 → 4.1.0-alpha.1

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 (636) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/components/accordion/accordion.d.ts +4 -0
  3. package/components/accordion/accordion.js +3 -3
  4. package/components/accordion/accordion.js.map +1 -1
  5. package/components/accordion/themes/accordion.base.css.js +1 -1
  6. package/components/accordion/themes/accordion.base.css.js.map +1 -1
  7. package/components/avatar/avatar.d.ts +16 -4
  8. package/components/avatar/avatar.js +6 -6
  9. package/components/avatar/avatar.js.map +1 -1
  10. package/components/avatar/themes/avatar.base.css.js +1 -1
  11. package/components/avatar/themes/avatar.base.css.js.map +1 -1
  12. package/components/avatar/themes/avatar.bootstrap.css.js +1 -1
  13. package/components/avatar/themes/avatar.bootstrap.css.js.map +1 -1
  14. package/components/badge/badge.d.ts +12 -3
  15. package/components/badge/badge.js.map +1 -1
  16. package/components/badge/themes/light/badge.base.css.js +1 -1
  17. package/components/badge/themes/light/badge.base.css.js.map +1 -1
  18. package/components/badge/themes/light/badge.bootstrap.css.js +1 -1
  19. package/components/badge/themes/light/badge.bootstrap.css.js.map +1 -1
  20. package/components/button/button-base.d.ts +15 -3
  21. package/components/button/button-base.js.map +1 -1
  22. package/components/button/button.d.ts +4 -1
  23. package/components/button/button.js.map +1 -1
  24. package/components/button/icon-button.d.ts +16 -4
  25. package/components/button/icon-button.js.map +1 -1
  26. package/components/button/themes/button/dark/button.fluent.css.js +1 -1
  27. package/components/button/themes/button/dark/button.fluent.css.js.map +1 -1
  28. package/components/button/themes/button/light/button.base.css.js +1 -1
  29. package/components/button/themes/button/light/button.base.css.js.map +1 -1
  30. package/components/button/themes/button/light/button.bootstrap.css.js +1 -1
  31. package/components/button/themes/button/light/button.bootstrap.css.js.map +1 -1
  32. package/components/button/themes/button/light/button.fluent.css.js +1 -1
  33. package/components/button/themes/button/light/button.fluent.css.js.map +1 -1
  34. package/components/button/themes/button/light/button.indigo.css.js +1 -1
  35. package/components/button/themes/button/light/button.indigo.css.js.map +1 -1
  36. package/components/button/themes/button/light/button.material.css.js +1 -1
  37. package/components/button/themes/button/light/button.material.css.js.map +1 -1
  38. package/components/button/themes/icon-button/dark/icon-button.fluent.css.js +1 -1
  39. package/components/button/themes/icon-button/dark/icon-button.fluent.css.js.map +1 -1
  40. package/components/button/themes/icon-button/light/icon-button.base.css.js +1 -1
  41. package/components/button/themes/icon-button/light/icon-button.base.css.js.map +1 -1
  42. package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js +1 -1
  43. package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js.map +1 -1
  44. package/components/button/themes/icon-button/light/icon-button.fluent.css.js +1 -1
  45. package/components/button/themes/icon-button/light/icon-button.fluent.css.js.map +1 -1
  46. package/components/button/themes/icon-button/light/icon-button.indigo.css.js +1 -1
  47. package/components/button/themes/icon-button/light/icon-button.indigo.css.js.map +1 -1
  48. package/components/button/themes/icon-button/light/icon-button.material.css.js +1 -1
  49. package/components/button/themes/icon-button/light/icon-button.material.css.js.map +1 -1
  50. package/components/calendar/calendar.js +3 -3
  51. package/components/calendar/calendar.js.map +1 -1
  52. package/components/calendar/common/calendar-base.js.map +1 -1
  53. package/components/calendar/common/calendar.model.d.ts +1 -1
  54. package/components/calendar/days-view/days-view.js +6 -6
  55. package/components/calendar/days-view/days-view.js.map +1 -1
  56. package/components/calendar/months-view/months-view.js +3 -3
  57. package/components/calendar/months-view/months-view.js.map +1 -1
  58. package/components/calendar/themes/bootstrap/calendar.bootstrap.css.js +1 -1
  59. package/components/calendar/themes/bootstrap/calendar.bootstrap.css.js.map +1 -1
  60. package/components/calendar/themes/bootstrap/days-view.bootstrap.css.js +1 -1
  61. package/components/calendar/themes/bootstrap/days-view.bootstrap.css.js.map +1 -1
  62. package/components/calendar/themes/bootstrap/year-month-view.bootstrap.css.js +1 -1
  63. package/components/calendar/themes/bootstrap/year-month-view.bootstrap.css.js.map +1 -1
  64. package/components/calendar/themes/calendar.base.css.js +1 -1
  65. package/components/calendar/themes/calendar.base.css.js.map +1 -1
  66. package/components/calendar/themes/days-view.base.css.js +1 -1
  67. package/components/calendar/themes/days-view.base.css.js.map +1 -1
  68. package/components/calendar/themes/fluent/calendar.fluent.css.js +1 -1
  69. package/components/calendar/themes/fluent/calendar.fluent.css.js.map +1 -1
  70. package/components/calendar/themes/fluent/days-view.fluent.css.js +1 -1
  71. package/components/calendar/themes/fluent/days-view.fluent.css.js.map +1 -1
  72. package/components/calendar/themes/fluent/year-month-view.fluent.css.js +1 -1
  73. package/components/calendar/themes/fluent/year-month-view.fluent.css.js.map +1 -1
  74. package/components/calendar/themes/year-month-view.base.css.js +1 -1
  75. package/components/calendar/themes/year-month-view.base.css.js.map +1 -1
  76. package/components/calendar/years-view/years-view.js +3 -3
  77. package/components/calendar/years-view/years-view.js.map +1 -1
  78. package/components/card/card.actions.d.ts +4 -1
  79. package/components/card/card.actions.js.map +1 -1
  80. package/components/card/card.content.js.map +1 -1
  81. package/components/card/card.d.ts +4 -1
  82. package/components/card/card.header.js.map +1 -1
  83. package/components/card/card.js.map +1 -1
  84. package/components/card/themes/light/card.actions.bootstrap.css.js +1 -1
  85. package/components/card/themes/light/card.actions.bootstrap.css.js.map +1 -1
  86. package/components/card/themes/light/card.actions.material.css.js +1 -1
  87. package/components/card/themes/light/card.actions.material.css.js.map +1 -1
  88. package/components/card/themes/light/card.bootstrap.css.js +1 -1
  89. package/components/card/themes/light/card.bootstrap.css.js.map +1 -1
  90. package/components/card/themes/light/card.content.bootstrap.css.js +1 -1
  91. package/components/card/themes/light/card.content.bootstrap.css.js.map +1 -1
  92. package/components/card/themes/light/card.content.indigo.css.js +1 -1
  93. package/components/card/themes/light/card.content.indigo.css.js.map +1 -1
  94. package/components/card/themes/light/card.content.material.css.js +1 -1
  95. package/components/card/themes/light/card.content.material.css.js.map +1 -1
  96. package/components/card/themes/light/card.fluent.css.js +1 -1
  97. package/components/card/themes/light/card.fluent.css.js.map +1 -1
  98. package/components/card/themes/light/card.header.bootstrap.css.js +1 -1
  99. package/components/card/themes/light/card.header.bootstrap.css.js.map +1 -1
  100. package/components/card/themes/light/card.header.fluent.css.js +1 -1
  101. package/components/card/themes/light/card.header.fluent.css.js.map +1 -1
  102. package/components/card/themes/light/card.header.indigo.css.js +1 -1
  103. package/components/card/themes/light/card.header.indigo.css.js.map +1 -1
  104. package/components/card/themes/light/card.header.material.css.js +1 -1
  105. package/components/card/themes/light/card.header.material.css.js.map +1 -1
  106. package/components/card/themes/light/card.material.css.js +1 -1
  107. package/components/card/themes/light/card.material.css.js.map +1 -1
  108. package/components/card/themes/light/card.media.material.css.js +1 -1
  109. package/components/card/themes/light/card.media.material.css.js.map +1 -1
  110. package/components/checkbox/checkbox-base.d.ts +31 -7
  111. package/components/checkbox/checkbox-base.js +14 -1
  112. package/components/checkbox/checkbox-base.js.map +1 -1
  113. package/components/checkbox/checkbox.d.ts +4 -1
  114. package/components/checkbox/checkbox.js +1 -0
  115. package/components/checkbox/checkbox.js.map +1 -1
  116. package/components/checkbox/switch.js +1 -0
  117. package/components/checkbox/switch.js.map +1 -1
  118. package/components/checkbox/themes/dark/checkbox.fluent.css.js +1 -1
  119. package/components/checkbox/themes/dark/checkbox.fluent.css.js.map +1 -1
  120. package/components/checkbox/themes/dark/checkbox.indigo.css.js +1 -1
  121. package/components/checkbox/themes/dark/checkbox.indigo.css.js.map +1 -1
  122. package/components/checkbox/themes/dark/switch.fluent.css.js +1 -1
  123. package/components/checkbox/themes/dark/switch.fluent.css.js.map +1 -1
  124. package/components/checkbox/themes/dark/switch.indigo.css.js +1 -1
  125. package/components/checkbox/themes/dark/switch.indigo.css.js.map +1 -1
  126. package/components/checkbox/themes/light/checkbox.base.css.js +2 -8
  127. package/components/checkbox/themes/light/checkbox.base.css.js.map +1 -1
  128. package/components/checkbox/themes/light/checkbox.bootstrap.css.js +1 -1
  129. package/components/checkbox/themes/light/checkbox.bootstrap.css.js.map +1 -1
  130. package/components/checkbox/themes/light/checkbox.fluent.css.js +1 -1
  131. package/components/checkbox/themes/light/checkbox.fluent.css.js.map +1 -1
  132. package/components/checkbox/themes/light/checkbox.indigo.css.js +1 -1
  133. package/components/checkbox/themes/light/checkbox.indigo.css.js.map +1 -1
  134. package/components/checkbox/themes/light/checkbox.material.css.js +1 -1
  135. package/components/checkbox/themes/light/checkbox.material.css.js.map +1 -1
  136. package/components/checkbox/themes/light/switch.base.css.js +2 -8
  137. package/components/checkbox/themes/light/switch.base.css.js.map +1 -1
  138. package/components/checkbox/themes/light/switch.bootstrap.css.js +1 -1
  139. package/components/checkbox/themes/light/switch.bootstrap.css.js.map +1 -1
  140. package/components/checkbox/themes/light/switch.fluent.css.js +1 -1
  141. package/components/checkbox/themes/light/switch.fluent.css.js.map +1 -1
  142. package/components/checkbox/themes/light/switch.indigo.css.js +1 -1
  143. package/components/checkbox/themes/light/switch.indigo.css.js.map +1 -1
  144. package/components/checkbox/themes/light/switch.material.css.js +1 -1
  145. package/components/checkbox/themes/light/switch.material.css.js.map +1 -1
  146. package/components/chip/chip.d.ts +20 -5
  147. package/components/chip/chip.js.map +1 -1
  148. package/components/chip/themes/chip.base.css.js +1 -1
  149. package/components/chip/themes/chip.base.css.js.map +1 -1
  150. package/components/chip/themes/chip.bootstrap.css.js +1 -1
  151. package/components/chip/themes/chip.bootstrap.css.js.map +1 -1
  152. package/components/chip/themes/chip.fluent.css.js +1 -1
  153. package/components/chip/themes/chip.fluent.css.js.map +1 -1
  154. package/components/chip/themes/chip.indigo.css.js +1 -1
  155. package/components/chip/themes/chip.indigo.css.js.map +1 -1
  156. package/components/chip/themes/chip.material.css.js +1 -1
  157. package/components/chip/themes/chip.material.css.js.map +1 -1
  158. package/components/combo/combo-header.d.ts +11 -0
  159. package/components/combo/combo-header.js +23 -0
  160. package/components/combo/combo-header.js.map +1 -0
  161. package/components/combo/combo-item.d.ts +22 -0
  162. package/components/combo/combo-item.js +67 -0
  163. package/components/combo/combo-item.js.map +1 -0
  164. package/components/combo/combo-list.d.ts +11 -0
  165. package/components/combo/combo-list.js +14 -0
  166. package/components/combo/combo-list.js.map +1 -0
  167. package/components/combo/combo.d.ts +254 -0
  168. package/components/combo/combo.js +518 -0
  169. package/components/combo/combo.js.map +1 -0
  170. package/components/combo/controllers/data.d.ts +17 -0
  171. package/components/combo/controllers/data.js +36 -0
  172. package/components/combo/controllers/data.js.map +1 -0
  173. package/components/combo/controllers/navigation.d.ts +43 -0
  174. package/components/combo/controllers/navigation.js +155 -0
  175. package/components/combo/controllers/navigation.js.map +1 -0
  176. package/components/combo/controllers/selection.d.ts +23 -0
  177. package/components/combo/controllers/selection.js +157 -0
  178. package/components/combo/controllers/selection.js.map +1 -0
  179. package/components/combo/operations/filter.d.ts +4 -0
  180. package/components/combo/operations/filter.js +15 -0
  181. package/components/combo/operations/filter.js.map +1 -0
  182. package/components/combo/operations/group.d.ts +9 -0
  183. package/components/combo/operations/group.js +56 -0
  184. package/components/combo/operations/group.js.map +1 -0
  185. package/components/combo/themes/dark/combo.bootstrap.css.d.ts +1 -0
  186. package/components/combo/themes/dark/combo.bootstrap.css.js +3 -0
  187. package/components/combo/themes/dark/combo.bootstrap.css.js.map +1 -0
  188. package/components/combo/themes/dark/combo.fluent.css.d.ts +1 -0
  189. package/components/combo/themes/dark/combo.fluent.css.js +3 -0
  190. package/components/combo/themes/dark/combo.fluent.css.js.map +1 -0
  191. package/components/combo/themes/dark/combo.indigo.css.d.ts +1 -0
  192. package/components/combo/themes/dark/combo.indigo.css.js +3 -0
  193. package/components/combo/themes/dark/combo.indigo.css.js.map +1 -0
  194. package/components/combo/themes/dark/combo.material.css.d.ts +1 -0
  195. package/components/combo/themes/dark/combo.material.css.js +3 -0
  196. package/components/combo/themes/dark/combo.material.css.js.map +1 -0
  197. package/components/combo/themes/light/combo.base.css.d.ts +1 -0
  198. package/components/combo/themes/light/combo.base.css.js +170 -0
  199. package/components/combo/themes/light/combo.base.css.js.map +1 -0
  200. package/components/combo/themes/light/combo.bootstrap.css.d.ts +1 -0
  201. package/components/combo/themes/light/combo.bootstrap.css.js +94 -0
  202. package/components/combo/themes/light/combo.bootstrap.css.js.map +1 -0
  203. package/components/combo/themes/light/combo.fluent.css.d.ts +1 -0
  204. package/components/combo/themes/light/combo.fluent.css.js +70 -0
  205. package/components/combo/themes/light/combo.fluent.css.js.map +1 -0
  206. package/components/combo/themes/light/combo.indigo.css.d.ts +1 -0
  207. package/components/combo/themes/light/combo.indigo.css.js +41 -0
  208. package/components/combo/themes/light/combo.indigo.css.js.map +1 -0
  209. package/components/combo/themes/light/combo.material.css.d.ts +1 -0
  210. package/components/combo/themes/light/combo.material.css.js +84 -0
  211. package/components/combo/themes/light/combo.material.css.js.map +1 -0
  212. package/components/combo/themes/light/header/combo-header.base.css.d.ts +1 -0
  213. package/components/combo/themes/light/header/combo-header.base.css.js +66 -0
  214. package/components/combo/themes/light/header/combo-header.base.css.js.map +1 -0
  215. package/components/combo/themes/light/item/combo-item.base.css.d.ts +1 -0
  216. package/components/combo/themes/light/item/combo-item.base.css.js +135 -0
  217. package/components/combo/themes/light/item/combo-item.base.css.js.map +1 -0
  218. package/components/combo/types.d.ts +39 -0
  219. package/components/combo/types.js +2 -0
  220. package/components/combo/types.js.map +1 -0
  221. package/components/combo/utils/converters.d.ts +3 -0
  222. package/components/combo/utils/converters.js +9 -0
  223. package/components/combo/utils/converters.js.map +1 -0
  224. package/components/common/decorators/index.d.ts +9 -9
  225. package/components/common/decorators/index.js +9 -9
  226. package/components/common/decorators/index.js.map +1 -1
  227. package/components/common/definitions/defineAllComponents.js +6 -0
  228. package/components/common/definitions/defineAllComponents.js.map +1 -1
  229. package/components/common/mixins/constructor.d.ts +2 -2
  230. package/components/common/mixins/event-emitter.d.ts +2 -2
  231. package/components/common/mixins/event-emitter.js.map +1 -1
  232. package/components/common/mixins/sizable.d.ts +1 -1
  233. package/components/common/mixins/sizable.js.map +1 -1
  234. package/components/common/types.d.ts +1 -1
  235. package/components/date-time-input/date-time-input.d.ts +25 -6
  236. package/components/date-time-input/date-time-input.js +17 -17
  237. package/components/date-time-input/date-time-input.js.map +1 -1
  238. package/components/dialog/dialog.d.ts +17 -4
  239. package/components/dialog/dialog.js.map +1 -1
  240. package/components/dialog/themes/light/dialog.base.css.js +1 -2
  241. package/components/dialog/themes/light/dialog.base.css.js.map +1 -1
  242. package/components/dialog/themes/light/dialog.bootstrap.css.js +1 -1
  243. package/components/dialog/themes/light/dialog.bootstrap.css.js.map +1 -1
  244. package/components/dialog/themes/light/dialog.fluent.css.js +1 -1
  245. package/components/dialog/themes/light/dialog.fluent.css.js.map +1 -1
  246. package/components/dialog/themes/light/dialog.indigo.css.js +1 -1
  247. package/components/dialog/themes/light/dialog.indigo.css.js.map +1 -1
  248. package/components/dialog/themes/light/dialog.material.css.js +1 -1
  249. package/components/dialog/themes/light/dialog.material.css.js.map +1 -1
  250. package/components/dropdown/dropdown-group.js.map +1 -1
  251. package/components/dropdown/dropdown-header.js.map +1 -1
  252. package/components/dropdown/dropdown-item.d.ts +4 -0
  253. package/components/dropdown/dropdown-item.js +1 -1
  254. package/components/dropdown/dropdown-item.js.map +1 -1
  255. package/components/dropdown/dropdown.d.ts +30 -7
  256. package/components/dropdown/dropdown.js +27 -27
  257. package/components/dropdown/dropdown.js.map +1 -1
  258. package/components/dropdown/themes/dark/dropdown.bootstrap.css.js +1 -1
  259. package/components/dropdown/themes/dark/dropdown.bootstrap.css.js.map +1 -1
  260. package/components/dropdown/themes/dark/dropdown.fluent.css.js +1 -1
  261. package/components/dropdown/themes/dark/dropdown.fluent.css.js.map +1 -1
  262. package/components/dropdown/themes/dark/dropdown.indigo.css.js +1 -1
  263. package/components/dropdown/themes/dark/dropdown.indigo.css.js.map +1 -1
  264. package/components/dropdown/themes/light/dropdown-group.base.css.js +1 -1
  265. package/components/dropdown/themes/light/dropdown-group.base.css.js.map +1 -1
  266. package/components/dropdown/themes/light/dropdown-group.fluent.css.js +1 -1
  267. package/components/dropdown/themes/light/dropdown-group.fluent.css.js.map +1 -1
  268. package/components/dropdown/themes/light/dropdown-header.base.css.js +1 -1
  269. package/components/dropdown/themes/light/dropdown-header.base.css.js.map +1 -1
  270. package/components/dropdown/themes/light/dropdown-header.bootstrap.css.js +1 -1
  271. package/components/dropdown/themes/light/dropdown-header.bootstrap.css.js.map +1 -1
  272. package/components/dropdown/themes/light/dropdown-header.fluent.css.js +1 -1
  273. package/components/dropdown/themes/light/dropdown-header.fluent.css.js.map +1 -1
  274. package/components/dropdown/themes/light/dropdown-item.base.css.js +1 -1
  275. package/components/dropdown/themes/light/dropdown-item.base.css.js.map +1 -1
  276. package/components/dropdown/themes/light/dropdown-item.bootstrap.css.js +1 -1
  277. package/components/dropdown/themes/light/dropdown-item.bootstrap.css.js.map +1 -1
  278. package/components/dropdown/themes/light/dropdown-item.fluent.css.js +1 -1
  279. package/components/dropdown/themes/light/dropdown-item.fluent.css.js.map +1 -1
  280. package/components/dropdown/themes/light/dropdown-item.indigo.css.js +1 -1
  281. package/components/dropdown/themes/light/dropdown-item.indigo.css.js.map +1 -1
  282. package/components/dropdown/themes/light/dropdown.base.css.js +1 -1
  283. package/components/dropdown/themes/light/dropdown.base.css.js.map +1 -1
  284. package/components/dropdown/themes/light/dropdown.bootstrap.css.js +1 -1
  285. package/components/dropdown/themes/light/dropdown.bootstrap.css.js.map +1 -1
  286. package/components/dropdown/themes/light/dropdown.fluent.css.js +1 -1
  287. package/components/dropdown/themes/light/dropdown.fluent.css.js.map +1 -1
  288. package/components/dropdown/themes/light/dropdown.indigo.css.js +1 -1
  289. package/components/dropdown/themes/light/dropdown.indigo.css.js.map +1 -1
  290. package/components/expansion-panel/expansion-panel.d.ts +12 -3
  291. package/components/expansion-panel/expansion-panel.js.map +1 -1
  292. package/components/expansion-panel/themes/light/expansion-panel.base.css.js +1 -1
  293. package/components/expansion-panel/themes/light/expansion-panel.base.css.js.map +1 -1
  294. package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js +1 -1
  295. package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js.map +1 -1
  296. package/components/expansion-panel/themes/light/expansion-panel.fluent.css.js +1 -1
  297. package/components/expansion-panel/themes/light/expansion-panel.fluent.css.js.map +1 -1
  298. package/components/expansion-panel/themes/light/expansion-panel.indigo.css.js +1 -1
  299. package/components/expansion-panel/themes/light/expansion-panel.indigo.css.js.map +1 -1
  300. package/components/form/form.js +1 -0
  301. package/components/form/form.js.map +1 -1
  302. package/components/icon/icon.d.ts +6 -10
  303. package/components/icon/icon.js +17 -25
  304. package/components/icon/icon.js.map +1 -1
  305. package/components/icon/icon.material.css.js +3 -3
  306. package/components/icon/icon.material.css.js.map +1 -1
  307. package/components/icon/icon.registry.js +9 -5
  308. package/components/icon/icon.registry.js.map +1 -1
  309. package/components/input/input-base.d.ts +32 -7
  310. package/components/input/input-base.js.map +1 -1
  311. package/components/input/input.d.ts +48 -11
  312. package/components/input/input.js.map +1 -1
  313. package/components/input/themes/dark/input.dark.indigo.css.js +1 -1
  314. package/components/input/themes/dark/input.dark.indigo.css.js.map +1 -1
  315. package/components/input/themes/dark/input.dark.material.css.js +1 -1
  316. package/components/input/themes/dark/input.dark.material.css.js.map +1 -1
  317. package/components/input/themes/light/input.base.css.js +1 -2
  318. package/components/input/themes/light/input.base.css.js.map +1 -1
  319. package/components/input/themes/light/input.bootstrap.css.js +30 -4
  320. package/components/input/themes/light/input.bootstrap.css.js.map +1 -1
  321. package/components/input/themes/light/input.fluent.css.js +24 -2
  322. package/components/input/themes/light/input.fluent.css.js.map +1 -1
  323. package/components/input/themes/light/input.indigo.css.js +15 -7
  324. package/components/input/themes/light/input.indigo.css.js.map +1 -1
  325. package/components/input/themes/light/input.material.css.js +54 -34
  326. package/components/input/themes/light/input.material.css.js.map +1 -1
  327. package/components/list/list-header.js.map +1 -1
  328. package/components/list/list-item.js.map +1 -1
  329. package/components/list/list.js.map +1 -1
  330. package/components/list/themes/dark/list.bootstrap.css.js +1 -1
  331. package/components/list/themes/dark/list.bootstrap.css.js.map +1 -1
  332. package/components/list/themes/dark/list.fluent.css.js +1 -1
  333. package/components/list/themes/dark/list.fluent.css.js.map +1 -1
  334. package/components/list/themes/dark/list.indigo.css.js +1 -1
  335. package/components/list/themes/dark/list.indigo.css.js.map +1 -1
  336. package/components/list/themes/light/list-header.base.css.js +1 -1
  337. package/components/list/themes/light/list-header.base.css.js.map +1 -1
  338. package/components/list/themes/light/list-header.indigo.css.js +1 -1
  339. package/components/list/themes/light/list-header.indigo.css.js.map +1 -1
  340. package/components/list/themes/light/list-item.base.css.js +1 -1
  341. package/components/list/themes/light/list-item.base.css.js.map +1 -1
  342. package/components/list/themes/light/list-item.bootstrap.css.js +1 -1
  343. package/components/list/themes/light/list-item.bootstrap.css.js.map +1 -1
  344. package/components/list/themes/light/list-item.fluent.css.js +1 -1
  345. package/components/list/themes/light/list-item.fluent.css.js.map +1 -1
  346. package/components/list/themes/light/list-item.indigo.css.js +1 -1
  347. package/components/list/themes/light/list-item.indigo.css.js.map +1 -1
  348. package/components/list/themes/light/list.base.css.js +1 -1
  349. package/components/list/themes/light/list.base.css.js.map +1 -1
  350. package/components/list/themes/light/list.bootstrap.css.js +1 -1
  351. package/components/list/themes/light/list.bootstrap.css.js.map +1 -1
  352. package/components/mask-input/mask-input-base.js.map +1 -1
  353. package/components/mask-input/mask-input.d.ts +6 -3
  354. package/components/mask-input/mask-input.js.map +1 -1
  355. package/components/nav-drawer/nav-drawer-header-item.js.map +1 -1
  356. package/components/nav-drawer/nav-drawer-item.d.ts +8 -2
  357. package/components/nav-drawer/nav-drawer-item.js.map +1 -1
  358. package/components/nav-drawer/nav-drawer.d.ts +8 -2
  359. package/components/nav-drawer/nav-drawer.js.map +1 -1
  360. package/components/nav-drawer/themes/dark/nav-drawer-item.base.css.js +1 -1
  361. package/components/nav-drawer/themes/dark/nav-drawer-item.base.css.js.map +1 -1
  362. package/components/nav-drawer/themes/dark/nav-drawer-item.bootstrap.css.js +1 -1
  363. package/components/nav-drawer/themes/dark/nav-drawer-item.bootstrap.css.js.map +1 -1
  364. package/components/nav-drawer/themes/dark/nav-drawer-item.fluent.css.js +1 -1
  365. package/components/nav-drawer/themes/dark/nav-drawer-item.fluent.css.js.map +1 -1
  366. package/components/nav-drawer/themes/dark/nav-drawer-item.indigo.css.js +1 -1
  367. package/components/nav-drawer/themes/dark/nav-drawer-item.indigo.css.js.map +1 -1
  368. package/components/nav-drawer/themes/dark/nav-drawer.indigo.css.js +1 -1
  369. package/components/nav-drawer/themes/dark/nav-drawer.indigo.css.js.map +1 -1
  370. package/components/nav-drawer/themes/light/fluent/nav-drawer-header-item.fluent.css.js +1 -1
  371. package/components/nav-drawer/themes/light/fluent/nav-drawer-header-item.fluent.css.js.map +1 -1
  372. package/components/nav-drawer/themes/light/fluent/nav-drawer-item.fluent.css.js +1 -1
  373. package/components/nav-drawer/themes/light/fluent/nav-drawer-item.fluent.css.js.map +1 -1
  374. package/components/nav-drawer/themes/light/indigo/nav-drawer-header-item.indigo.css.js +1 -1
  375. package/components/nav-drawer/themes/light/indigo/nav-drawer-header-item.indigo.css.js.map +1 -1
  376. package/components/nav-drawer/themes/light/indigo/nav-drawer-item.indigo.css.js +1 -1
  377. package/components/nav-drawer/themes/light/indigo/nav-drawer-item.indigo.css.js.map +1 -1
  378. package/components/nav-drawer/themes/light/indigo/nav-drawer.indigo.css.js +1 -1
  379. package/components/nav-drawer/themes/light/indigo/nav-drawer.indigo.css.js.map +1 -1
  380. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.js +1 -1
  381. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.js.map +1 -1
  382. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js +1 -1
  383. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js.map +1 -1
  384. package/components/nav-drawer/themes/light/nav-drawer.base.css.js +1 -1
  385. package/components/nav-drawer/themes/light/nav-drawer.base.css.js.map +1 -1
  386. package/components/navbar/navbar.js.map +1 -1
  387. package/components/navbar/themes/light/navbar.base.css.js +1 -1
  388. package/components/navbar/themes/light/navbar.base.css.js.map +1 -1
  389. package/components/navbar/themes/light/navbar.bootstrap.css.js +1 -1
  390. package/components/navbar/themes/light/navbar.bootstrap.css.js.map +1 -1
  391. package/components/navbar/themes/light/navbar.fluent.css.js +1 -1
  392. package/components/navbar/themes/light/navbar.fluent.css.js.map +1 -1
  393. package/components/navbar/themes/light/navbar.indigo.css.js +1 -1
  394. package/components/navbar/themes/light/navbar.indigo.css.js.map +1 -1
  395. package/components/progress/base.d.ts +25 -6
  396. package/components/progress/base.js.map +1 -1
  397. package/components/progress/circular-gradient.d.ts +12 -3
  398. package/components/progress/circular-gradient.js.map +1 -1
  399. package/components/progress/circular-progress.js.map +1 -1
  400. package/components/progress/linear-progress.d.ts +8 -2
  401. package/components/progress/linear-progress.js.map +1 -1
  402. package/components/progress/themes/circular/circular.progress.base.css.js +1 -1
  403. package/components/progress/themes/circular/circular.progress.base.css.js.map +1 -1
  404. package/components/progress/themes/circular/circular.progress.bootstrap.css.js +1 -1
  405. package/components/progress/themes/circular/circular.progress.bootstrap.css.js.map +1 -1
  406. package/components/progress/themes/circular/circular.progress.fluent.css.js +1 -1
  407. package/components/progress/themes/circular/circular.progress.fluent.css.js.map +1 -1
  408. package/components/progress/themes/linear/linear.progress.base.css.js +1 -1
  409. package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
  410. package/components/progress/themes/linear/linear.progress.bootstrap.css.js +1 -1
  411. package/components/progress/themes/linear/linear.progress.bootstrap.css.js.map +1 -1
  412. package/components/progress/themes/linear/linear.progress.fluent.css.js +1 -1
  413. package/components/progress/themes/linear/linear.progress.fluent.css.js.map +1 -1
  414. package/components/progress/themes/linear/linear.progress.indigo.css.js +1 -1
  415. package/components/progress/themes/linear/linear.progress.indigo.css.js.map +1 -1
  416. package/components/radio/radio.d.ts +35 -8
  417. package/components/radio/radio.js +15 -1
  418. package/components/radio/radio.js.map +1 -1
  419. package/components/radio/themes/dark/radio.fluent.css.js +1 -1
  420. package/components/radio/themes/dark/radio.fluent.css.js.map +1 -1
  421. package/components/radio/themes/dark/radio.indigo.css.js +1 -1
  422. package/components/radio/themes/dark/radio.indigo.css.js.map +1 -1
  423. package/components/radio/themes/light/radio.base.css.js +2 -8
  424. package/components/radio/themes/light/radio.base.css.js.map +1 -1
  425. package/components/radio/themes/light/radio.bootstrap.css.js +1 -1
  426. package/components/radio/themes/light/radio.bootstrap.css.js.map +1 -1
  427. package/components/radio/themes/light/radio.fluent.css.js +2 -1
  428. package/components/radio/themes/light/radio.fluent.css.js.map +1 -1
  429. package/components/radio/themes/light/radio.indigo.css.js +1 -1
  430. package/components/radio/themes/light/radio.indigo.css.js.map +1 -1
  431. package/components/radio/themes/light/radio.material.css.js +1 -1
  432. package/components/radio/themes/light/radio.material.css.js.map +1 -1
  433. package/components/radio-group/radio-group.base.css.js +1 -1
  434. package/components/radio-group/radio-group.base.css.js.map +1 -1
  435. package/components/radio-group/radio-group.d.ts +4 -0
  436. package/components/radio-group/radio-group.js.map +1 -1
  437. package/components/rating/rating-symbol.base.css.js +1 -1
  438. package/components/rating/rating-symbol.base.css.js.map +1 -1
  439. package/components/rating/rating-symbol.d.ts +1 -0
  440. package/components/rating/rating-symbol.js +4 -0
  441. package/components/rating/rating-symbol.js.map +1 -1
  442. package/components/rating/rating.base.css.js +1 -1
  443. package/components/rating/rating.base.css.js.map +1 -1
  444. package/components/rating/rating.bootstrap.css.js +1 -1
  445. package/components/rating/rating.bootstrap.css.js.map +1 -1
  446. package/components/rating/rating.d.ts +31 -7
  447. package/components/rating/rating.fluent.css.js +1 -1
  448. package/components/rating/rating.fluent.css.js.map +1 -1
  449. package/components/rating/rating.indigo.css.js +1 -1
  450. package/components/rating/rating.indigo.css.js.map +1 -1
  451. package/components/rating/rating.js +15 -15
  452. package/components/rating/rating.js.map +1 -1
  453. package/components/select/select-group.d.ts +4 -0
  454. package/components/select/select-group.js.map +1 -1
  455. package/components/select/select.d.ts +50 -11
  456. package/components/select/select.js +12 -3
  457. package/components/select/select.js.map +1 -1
  458. package/components/select/themes/dark/select.fluent.css.js +1 -1
  459. package/components/select/themes/dark/select.fluent.css.js.map +1 -1
  460. package/components/select/themes/dark/select.indigo.css.js +1 -1
  461. package/components/select/themes/dark/select.indigo.css.js.map +1 -1
  462. package/components/select/themes/dark/select.material.css.js +1 -1
  463. package/components/select/themes/dark/select.material.css.js.map +1 -1
  464. package/components/select/themes/light/select.base.css.js +1 -1
  465. package/components/select/themes/light/select.base.css.js.map +1 -1
  466. package/components/select/themes/light/select.bootstrap.css.js +3 -5
  467. package/components/select/themes/light/select.bootstrap.css.js.map +1 -1
  468. package/components/select/themes/light/select.fluent.css.js +1 -1
  469. package/components/select/themes/light/select.fluent.css.js.map +1 -1
  470. package/components/select/themes/light/select.indigo.css.js +5 -1
  471. package/components/select/themes/light/select.indigo.css.js.map +1 -1
  472. package/components/select/themes/light/select.material.css.js +7 -10
  473. package/components/select/themes/light/select.material.css.js.map +1 -1
  474. package/components/slider/range-slider.d.ts +4 -0
  475. package/components/slider/range-slider.js.map +1 -1
  476. package/components/slider/slider-base.d.ts +16 -0
  477. package/components/slider/slider-base.js +70 -70
  478. package/components/slider/slider-base.js.map +1 -1
  479. package/components/slider/slider.d.ts +2 -0
  480. package/components/slider/slider.js.map +1 -1
  481. package/components/slider/themes/dark/slider.bootstrap.css.js +1 -1
  482. package/components/slider/themes/dark/slider.bootstrap.css.js.map +1 -1
  483. package/components/slider/themes/dark/slider.fluent.css.js +1 -1
  484. package/components/slider/themes/dark/slider.fluent.css.js.map +1 -1
  485. package/components/slider/themes/dark/slider.indigo.css.js +1 -1
  486. package/components/slider/themes/dark/slider.indigo.css.js.map +1 -1
  487. package/components/slider/themes/light/slider.base.css.js +1 -1
  488. package/components/slider/themes/light/slider.base.css.js.map +1 -1
  489. package/components/slider/themes/light/slider.bootstrap.css.js +1 -1
  490. package/components/slider/themes/light/slider.bootstrap.css.js.map +1 -1
  491. package/components/slider/themes/light/slider.fluent.css.js +1 -1
  492. package/components/slider/themes/light/slider.fluent.css.js.map +1 -1
  493. package/components/slider/themes/light/slider.indigo.css.js +1 -1
  494. package/components/slider/themes/light/slider.indigo.css.js.map +1 -1
  495. package/components/slider/themes/light/slider.material.css.js +1 -1
  496. package/components/slider/themes/light/slider.material.css.js.map +1 -1
  497. package/components/snackbar/snackbar.d.ts +16 -4
  498. package/components/snackbar/snackbar.js.map +1 -1
  499. package/components/snackbar/themes/dark/snackbar.indigo.css.js +1 -1
  500. package/components/snackbar/themes/dark/snackbar.indigo.css.js.map +1 -1
  501. package/components/snackbar/themes/light/snackbar.base.css.js +1 -1
  502. package/components/snackbar/themes/light/snackbar.base.css.js.map +1 -1
  503. package/components/snackbar/themes/light/snackbar.bootstrap.css.js +1 -1
  504. package/components/snackbar/themes/light/snackbar.bootstrap.css.js.map +1 -1
  505. package/components/snackbar/themes/light/snackbar.fluent.css.js +1 -1
  506. package/components/snackbar/themes/light/snackbar.fluent.css.js.map +1 -1
  507. package/components/snackbar/themes/light/snackbar.indigo.css.js +1 -1
  508. package/components/snackbar/themes/light/snackbar.indigo.css.js.map +1 -1
  509. package/components/stepper/step.d.ts +94 -0
  510. package/components/stepper/step.js +211 -0
  511. package/components/stepper/step.js.map +1 -0
  512. package/components/stepper/stepper.common.d.ts +11 -0
  513. package/components/stepper/stepper.common.js +2 -0
  514. package/components/stepper/stepper.common.js.map +1 -0
  515. package/components/stepper/stepper.d.ts +110 -0
  516. package/components/stepper/stepper.js +345 -0
  517. package/components/stepper/stepper.js.map +1 -0
  518. package/components/stepper/themes/step/dark/step.bootstrap.css.d.ts +1 -0
  519. package/components/stepper/themes/step/dark/step.bootstrap.css.js +3 -0
  520. package/components/stepper/themes/step/dark/step.bootstrap.css.js.map +1 -0
  521. package/components/stepper/themes/step/dark/step.fluent.css.d.ts +1 -0
  522. package/components/stepper/themes/step/dark/step.fluent.css.js +3 -0
  523. package/components/stepper/themes/step/dark/step.fluent.css.js.map +1 -0
  524. package/components/stepper/themes/step/dark/step.indigo.css.d.ts +1 -0
  525. package/components/stepper/themes/step/dark/step.indigo.css.js +3 -0
  526. package/components/stepper/themes/step/dark/step.indigo.css.js.map +1 -0
  527. package/components/stepper/themes/step/dark/step.material.css.d.ts +1 -0
  528. package/components/stepper/themes/step/dark/step.material.css.js +3 -0
  529. package/components/stepper/themes/step/dark/step.material.css.js.map +1 -0
  530. package/components/stepper/themes/step/light/step.base.css.d.ts +1 -0
  531. package/components/stepper/themes/step/light/step.base.css.js +456 -0
  532. package/components/stepper/themes/step/light/step.base.css.js.map +1 -0
  533. package/components/stepper/themes/step/light/step.bootstrap.css.d.ts +1 -0
  534. package/components/stepper/themes/step/light/step.bootstrap.css.js +23 -0
  535. package/components/stepper/themes/step/light/step.bootstrap.css.js.map +1 -0
  536. package/components/stepper/themes/step/light/step.fluent.css.d.ts +1 -0
  537. package/components/stepper/themes/step/light/step.fluent.css.js +16 -0
  538. package/components/stepper/themes/step/light/step.fluent.css.js.map +1 -0
  539. package/components/stepper/themes/step/light/step.indigo.css.d.ts +1 -0
  540. package/components/stepper/themes/step/light/step.indigo.css.js +29 -0
  541. package/components/stepper/themes/step/light/step.indigo.css.js.map +1 -0
  542. package/components/stepper/themes/step/light/step.material.css.d.ts +1 -0
  543. package/components/stepper/themes/step/light/step.material.css.js +8 -0
  544. package/components/stepper/themes/step/light/step.material.css.js.map +1 -0
  545. package/components/stepper/themes/stepper/stepper.base.css.d.ts +1 -0
  546. package/components/stepper/themes/stepper/stepper.base.css.js +142 -0
  547. package/components/stepper/themes/stepper/stepper.base.css.js.map +1 -0
  548. package/components/stepper/themes/stepper/stepper.bootstrap.css.d.ts +1 -0
  549. package/components/stepper/themes/stepper/stepper.bootstrap.css.js +46 -0
  550. package/components/stepper/themes/stepper/stepper.bootstrap.css.js.map +1 -0
  551. package/components/stepper/themes/stepper/stepper.fluent.css.d.ts +1 -0
  552. package/components/stepper/themes/stepper/stepper.fluent.css.js +40 -0
  553. package/components/stepper/themes/stepper/stepper.fluent.css.js.map +1 -0
  554. package/components/stepper/themes/stepper/stepper.indigo.css.d.ts +1 -0
  555. package/components/stepper/themes/stepper/stepper.indigo.css.js +40 -0
  556. package/components/stepper/themes/stepper/stepper.indigo.css.js.map +1 -0
  557. package/components/tabs/tab.d.ts +12 -3
  558. package/components/tabs/tab.js +1 -1
  559. package/components/tabs/tab.js.map +1 -1
  560. package/components/tabs/tabs.d.ts +5 -1
  561. package/components/tabs/tabs.js.map +1 -1
  562. package/components/tabs/themes/dark/tab.dark.base.css.js +1 -1
  563. package/components/tabs/themes/dark/tab.dark.base.css.js.map +1 -1
  564. package/components/tabs/themes/dark/tab.dark.bootstrap.css.js +1 -1
  565. package/components/tabs/themes/dark/tab.dark.bootstrap.css.js.map +1 -1
  566. package/components/tabs/themes/light/tab-panel.base.css.js +1 -1
  567. package/components/tabs/themes/light/tab-panel.base.css.js.map +1 -1
  568. package/components/tabs/themes/light/tab.base.css.js +1 -1
  569. package/components/tabs/themes/light/tab.base.css.js.map +1 -1
  570. package/components/tabs/themes/light/tab.bootstrap.css.js +1 -1
  571. package/components/tabs/themes/light/tab.bootstrap.css.js.map +1 -1
  572. package/components/tabs/themes/light/tab.fluent.css.js +1 -1
  573. package/components/tabs/themes/light/tab.fluent.css.js.map +1 -1
  574. package/components/tabs/themes/light/tab.indigo.css.js +1 -1
  575. package/components/tabs/themes/light/tab.indigo.css.js.map +1 -1
  576. package/components/tabs/themes/light/tabs.base.css.js +1 -1
  577. package/components/tabs/themes/light/tabs.base.css.js.map +1 -1
  578. package/components/tabs/themes/light/tabs.bootstrap.css.js +1 -1
  579. package/components/tabs/themes/light/tabs.bootstrap.css.js.map +1 -1
  580. package/components/tabs/themes/light/tabs.fluent.css.js +1 -1
  581. package/components/tabs/themes/light/tabs.fluent.css.js.map +1 -1
  582. package/components/tabs/themes/light/tabs.indigo.css.js +1 -1
  583. package/components/tabs/themes/light/tabs.indigo.css.js.map +1 -1
  584. package/components/toast/themes/toast.base.css.js +1 -1
  585. package/components/toast/themes/toast.base.css.js.map +1 -1
  586. package/components/toast/themes/toast.bootstrap.css.js +1 -1
  587. package/components/toast/themes/toast.bootstrap.css.js.map +1 -1
  588. package/components/toast/themes/toast.fluent.css.js +1 -1
  589. package/components/toast/themes/toast.fluent.css.js.map +1 -1
  590. package/components/toast/themes/toast.indigo.css.js +1 -1
  591. package/components/toast/themes/toast.indigo.css.js.map +1 -1
  592. package/components/toast/toast.d.ts +13 -6
  593. package/components/toast/toast.js.map +1 -1
  594. package/components/toggle/toggle.controller.d.ts +1 -1
  595. package/components/toggle/toggle.controller.js +13 -13
  596. package/components/toggle/toggle.controller.js.map +1 -1
  597. package/components/toggle/toggle.directive.js +10 -10
  598. package/components/toggle/toggle.directive.js.map +1 -1
  599. package/components/toggle/types.d.ts +1 -1
  600. package/components/tree/themes/dark/tree-item.bootstrap.css.js +1 -1
  601. package/components/tree/themes/dark/tree-item.bootstrap.css.js.map +1 -1
  602. package/components/tree/themes/dark/tree-item.fluent.css.js +1 -1
  603. package/components/tree/themes/dark/tree-item.fluent.css.js.map +1 -1
  604. package/components/tree/themes/dark/tree-item.indigo.css.js +1 -1
  605. package/components/tree/themes/dark/tree-item.indigo.css.js.map +1 -1
  606. package/components/tree/themes/light/tree-item.base.css.js +1 -1
  607. package/components/tree/themes/light/tree-item.base.css.js.map +1 -1
  608. package/components/tree/themes/light/tree-item.bootstrap.css.js +1 -1
  609. package/components/tree/themes/light/tree-item.bootstrap.css.js.map +1 -1
  610. package/components/tree/themes/light/tree-item.fluent.css.js +1 -1
  611. package/components/tree/themes/light/tree-item.fluent.css.js.map +1 -1
  612. package/components/tree/themes/light/tree-item.indigo.css.js +1 -1
  613. package/components/tree/themes/light/tree-item.indigo.css.js.map +1 -1
  614. package/components/tree/themes/light/tree.base.css.js +1 -1
  615. package/components/tree/themes/light/tree.base.css.js.map +1 -1
  616. package/components/tree/tree-item.d.ts +25 -6
  617. package/components/tree/tree-item.js.map +1 -1
  618. package/components/tree/tree.d.ts +12 -3
  619. package/components/tree/tree.js +8 -8
  620. package/components/tree/tree.js.map +1 -1
  621. package/custom-elements.json +870 -2
  622. package/index.d.ts +5 -0
  623. package/index.js +3 -0
  624. package/index.js.map +1 -1
  625. package/package.json +5 -3
  626. package/themes/dark/bootstrap.css +6 -2
  627. package/themes/dark/fluent.css +11 -7
  628. package/themes/dark/indigo.css +6 -2
  629. package/themes/dark/material.css +6 -2
  630. package/themes/light/bootstrap.css +1 -1
  631. package/themes/light/fluent.css +6 -6
  632. package/themes/light/indigo.css +1 -1
  633. package/themes/light/material.css +1 -1
  634. package/theming/theming-event.d.ts +1 -1
  635. package/theming/types.d.ts +2 -2
  636. package/vscode-html-custom-data.json +337 -19
@@ -1 +1 @@
1
- {"version":3,"file":"rating-symbol.js","sourceRoot":"","sources":["../../../src/components/rating/rating-symbol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAerD,MAAM,CAAC,OAAO,OAAO,wBAAyB,SAAQ,UAAU;IAI3C,MAAM;QACvB,OAAO,IAAI,CAAA;;;;;;;KAOV,CAAC;IACJ,CAAC;;AAZsB,gCAAO,GAAG,mBAAmB,CAAC;AAC9B,+BAAM,GAAG,CAAC,MAAM,CAAC,CAAC","sourcesContent":["import { html, LitElement } from 'lit';\nimport { styles } from './rating-symbol.base.css.js';\n\n/**\n *\n * Used when a custom icon/symbol/element needs to be passed to the igc-rating component.\n *\n * @element igc-rating-symbol\n *\n * @slot - Default slot for projected full symbols/icons.\n * @slot empty - Default slot for projected empty symbols/icons.\n *\n * @csspart symbol - The symbol wrapping container.\n * @csspart full - The full symbol wrapping container.\n * @csspart empty - The empty symbol wrapping container.\n */\nexport default class IgcRatingSymbolComponent extends LitElement {\n public static readonly tagName = 'igc-rating-symbol';\n public static override styles = [styles];\n\n protected override render() {\n return html`\n <div part=\"symbol full\">\n <slot> </slot>\n </div>\n <div part=\"symbol empty\">\n <slot name=\"empty\"></slot>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-rating-symbol': IgcRatingSymbolComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"rating-symbol.js","sourceRoot":"","sources":["../../../src/components/rating/rating-symbol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAerD,MAAM,CAAC,OAAO,OAAO,wBAAyB,SAAQ,UAAU;IAI9C,iBAAiB;QAC/B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC1D,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA;;;;;;;KAOV,CAAC;IACJ,CAAC;;AAjBsB,gCAAO,GAAG,mBAAmB,CAAC;AAC9B,+BAAM,GAAG,CAAC,MAAM,CAAC,CAAC","sourcesContent":["import { html, LitElement } from 'lit';\nimport { styles } from './rating-symbol.base.css.js';\n\n/**\n *\n * Used when a custom icon/symbol/element needs to be passed to the igc-rating component.\n *\n * @element igc-rating-symbol\n *\n * @slot - Default slot for projected full symbols/icons.\n * @slot empty - Default slot for projected empty symbols/icons.\n *\n * @csspart symbol - The symbol wrapping container.\n * @csspart full - The full symbol wrapping container.\n * @csspart empty - The empty symbol wrapping container.\n */\nexport default class IgcRatingSymbolComponent extends LitElement {\n public static readonly tagName = 'igc-rating-symbol';\n public static override styles = [styles];\n\n public override connectedCallback() {\n super.connectedCallback();\n this.slot = this.slot.length > 0 ? this.slot : 'symbol';\n }\n\n protected override render() {\n return html`\n <div part=\"symbol full\">\n <slot> </slot>\n </div>\n <div part=\"symbol empty\">\n <slot name=\"empty\"></slot>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-rating-symbol': IgcRatingSymbolComponent;\n }\n}\n"]}
@@ -32,7 +32,7 @@ export const styles = css `:host {
32
32
  display: none !important;
33
33
  }
34
34
 
35
- /* stylelint-disable max-line-length */
35
+ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */
36
36
  :host {
37
37
  --symbol-full-color: hsla(var(--ig-warn-500), var(--ig-warn-a));
38
38
  --symbol-empty-color: hsla(var(--ig-gray-600), var(--ig-gray-a));
@@ -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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiJvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);\n --is-medium:\n min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n[hidden] {\n display: none !important;\n}\n\n/* stylelint-disable max-line-length */\n:host {\n --symbol-full-color: hsla(var(--ig-warn-500), var(--ig-warn-a));\n --symbol-empty-color: hsla(var(--ig-gray-600), var(--ig-gray-a));\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n font-family: var(--ig-font-family);\n -webkit-box-align: start;\n -ms-flex-align: start;\n align-items: flex-start;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n gap: 0.25rem;\n}\n\n:host([size=large]) {\n --component-size: var(--ig-size, var(--ig-size-large));\n}\n\n:host([size=medium]) {\n --component-size: var(--ig-size, var(--ig-size-medium));\n}\n\n:host([size=small]) {\n --component-size: var(--ig-size, var(--ig-size-small));\n}\n\n[part=base] {\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n gap: 0.25rem;\n}\n\n[part~=symbols] {\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n padding: 0.125rem;\n gap: 0.125rem;\n inset-inline-start: 0;\n}\n\n[part~=value-label] {\n font-family: var(--ig-subtitle-1-font-family);\n font-size: var(--ig-subtitle-1-font-size);\n font-weight: var(--ig-subtitle-1-font-weight);\n font-style: var(--ig-subtitle-1-font-style);\n line-height: var(--ig-subtitle-1-line-height);\n letter-spacing: var(--ig-subtitle-1-letter-spacing);\n text-transform: var(--ig-subtitle-1-text-transform);\n margin-top: var(--ig-subtitle-1-margin-top);\n margin-bottom: var(--ig-subtitle-1-margin-bottom);\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}\n\n[part~=label] {\n font-family: var(--ig-caption-font-family);\n font-size: var(--ig-caption-font-size);\n font-weight: var(--ig-caption-font-weight);\n font-style: var(--ig-caption-font-style);\n line-height: var(--ig-caption-line-height);\n letter-spacing: var(--ig-caption-letter-spacing);\n text-transform: var(--ig-caption-text-transform);\n margin-top: var(--ig-caption-margin-top);\n margin-bottom: var(--ig-caption-margin-bottom);\n color: hsla(var(--ig-gray-700), var(--ig-gray-a));\n -webkit-padding-start: 0.25rem;\n padding-inline-start: 0.25rem;\n height: auto;\n width: auto;\n min-height: 0;\n min-width: 0;\n margin: 0;\n}\n\n:host(:not([disabled], [readonly])) [part~=symbols] {\n cursor: pointer;\n}\n\n:host([disabled]) {\n --symbol-full-color: hsla(var(--ig-warn-200), var(--ig-warn-a));\n --symbol-empty-color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n --symbol-full-filter: grayscale(50%);\n --symbol-empty-filter: grayscale(100%) opacity(50%);\n}\n:host([disabled]) [part~=value-label],\n:host([disabled]) [part~=label] {\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n}\n:host([disabled]) [part~=symbols] {\n cursor: initial;\n}`;\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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiJvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);\n --is-medium:\n min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n[hidden] {\n display: none !important;\n}\n\n/* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */\n:host {\n --symbol-full-color: hsla(var(--ig-warn-500), var(--ig-warn-a));\n --symbol-empty-color: hsla(var(--ig-gray-600), var(--ig-gray-a));\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n font-family: var(--ig-font-family);\n -webkit-box-align: start;\n -ms-flex-align: start;\n align-items: flex-start;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n gap: 0.25rem;\n}\n\n:host([size=large]) {\n --component-size: var(--ig-size, var(--ig-size-large));\n}\n\n:host([size=medium]) {\n --component-size: var(--ig-size, var(--ig-size-medium));\n}\n\n:host([size=small]) {\n --component-size: var(--ig-size, var(--ig-size-small));\n}\n\n[part=base] {\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n gap: 0.25rem;\n}\n\n[part~=symbols] {\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n padding: 0.125rem;\n gap: 0.125rem;\n inset-inline-start: 0;\n}\n\n[part~=value-label] {\n font-family: var(--ig-subtitle-1-font-family);\n font-size: var(--ig-subtitle-1-font-size);\n font-weight: var(--ig-subtitle-1-font-weight);\n font-style: var(--ig-subtitle-1-font-style);\n line-height: var(--ig-subtitle-1-line-height);\n letter-spacing: var(--ig-subtitle-1-letter-spacing);\n text-transform: var(--ig-subtitle-1-text-transform);\n margin-top: var(--ig-subtitle-1-margin-top);\n margin-bottom: var(--ig-subtitle-1-margin-bottom);\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}\n\n[part~=label] {\n font-family: var(--ig-caption-font-family);\n font-size: var(--ig-caption-font-size);\n font-weight: var(--ig-caption-font-weight);\n font-style: var(--ig-caption-font-style);\n line-height: var(--ig-caption-line-height);\n letter-spacing: var(--ig-caption-letter-spacing);\n text-transform: var(--ig-caption-text-transform);\n margin-top: var(--ig-caption-margin-top);\n margin-bottom: var(--ig-caption-margin-bottom);\n color: hsla(var(--ig-gray-700), var(--ig-gray-a));\n -webkit-padding-start: 0.25rem;\n padding-inline-start: 0.25rem;\n height: auto;\n width: auto;\n min-height: 0;\n min-width: 0;\n margin: 0;\n}\n\n:host(:not([disabled], [readonly])) [part~=symbols] {\n cursor: pointer;\n}\n\n:host([disabled]) {\n --symbol-full-color: hsla(var(--ig-warn-200), var(--ig-warn-a));\n --symbol-empty-color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n --symbol-full-filter: grayscale(50%);\n --symbol-empty-filter: grayscale(100%) opacity(50%);\n}\n:host([disabled]) [part~=value-label],\n:host([disabled]) [part~=label] {\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n}\n:host([disabled]) [part~=symbols] {\n cursor: initial;\n}`;\n"]}
@@ -1,5 +1,5 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `/* stylelint-disable max-line-length */
2
+ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */
3
3
  [part=base] {
4
4
  gap: 0.4375rem;
5
5
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rating.bootstrap.css.js","sourceRoot":"","sources":["../../../src/components/rating/rating.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6BvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */\n[part=base] {\n gap: 0.4375rem;\n}\n\n[part~=label] {\n font-family: var(--ig-body-1-font-family);\n font-size: var(--ig-body-1-font-size);\n font-weight: var(--ig-body-1-font-weight);\n font-style: var(--ig-body-1-font-style);\n line-height: var(--ig-body-1-line-height);\n letter-spacing: var(--ig-body-1-letter-spacing);\n text-transform: var(--ig-body-1-text-transform);\n margin-top: var(--ig-body-1-margin-top);\n margin-bottom: var(--ig-body-1-margin-bottom);\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}\n\n[part~=value-label] {\n font-family: var(--ig-body-2-font-family);\n font-size: var(--ig-body-2-font-size);\n font-weight: var(--ig-body-2-font-weight);\n font-style: var(--ig-body-2-font-style);\n line-height: var(--ig-body-2-line-height);\n letter-spacing: var(--ig-body-2-letter-spacing);\n text-transform: var(--ig-body-2-text-transform);\n margin-top: var(--ig-body-2-margin-top);\n margin-bottom: var(--ig-body-2-margin-bottom);\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}`;\n"]}
1
+ {"version":3,"file":"rating.bootstrap.css.js","sourceRoot":"","sources":["../../../src/components/rating/rating.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6BvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */\n[part=base] {\n gap: 0.4375rem;\n}\n\n[part~=label] {\n font-family: var(--ig-body-1-font-family);\n font-size: var(--ig-body-1-font-size);\n font-weight: var(--ig-body-1-font-weight);\n font-style: var(--ig-body-1-font-style);\n line-height: var(--ig-body-1-line-height);\n letter-spacing: var(--ig-body-1-letter-spacing);\n text-transform: var(--ig-body-1-text-transform);\n margin-top: var(--ig-body-1-margin-top);\n margin-bottom: var(--ig-body-1-margin-bottom);\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}\n\n[part~=value-label] {\n font-family: var(--ig-body-2-font-family);\n font-size: var(--ig-body-2-font-size);\n font-weight: var(--ig-body-2-font-weight);\n font-style: var(--ig-body-2-font-style);\n line-height: var(--ig-body-2-line-height);\n letter-spacing: var(--ig-body-2-letter-spacing);\n text-transform: var(--ig-body-2-text-transform);\n margin-top: var(--ig-body-2-margin-top);\n margin-bottom: var(--ig-body-2-margin-bottom);\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}`;\n"]}
@@ -45,34 +45,58 @@ export default class IgcRatingComponent extends IgcRatingComponent_base {
45
45
  *
46
46
  * If there are projected symbols, the maximum value will be resolved
47
47
  * based on the number of symbols.
48
+ * @attr
48
49
  */
49
50
  max: number;
50
51
  /**
51
52
  * The minimum value change allowed.
52
53
  *
53
54
  * Valid values are in the interval between 0 and 1 inclusive.
55
+ * @attr
54
56
  */
55
57
  step: number;
56
- /** The name attribute of the control */
58
+ /**
59
+ * The name attribute of the control
60
+ * @attr
61
+ */
57
62
  name: string;
58
- /** The label of the control. */
63
+ /**
64
+ * The label of the control.
65
+ * @attr
66
+ */
59
67
  label: string;
60
68
  /**
61
69
  * A format string which sets aria-valuetext. Instances of '{0}' will be replaced
62
70
  * with the current value of the control and instances of '{1}' with the maximum value for the control.
63
71
  *
64
72
  * Important for screen-readers and useful for localization.
73
+ * @attr value-format
65
74
  */
66
75
  valueFormat: string;
67
- /** The current value of the component */
76
+ /**
77
+ * The current value of the component
78
+ * @attr
79
+ */
68
80
  value: number;
69
- /** Sets the disabled state of the component */
81
+ /**
82
+ * Sets the disabled state of the component
83
+ * @attr
84
+ */
70
85
  disabled: boolean;
71
- /** Sets hover preview behavior for the component */
86
+ /**
87
+ * Sets hover preview behavior for the component
88
+ * @attr
89
+ */
72
90
  hoverPreview: boolean;
73
- /** Sets the readonly state of the component */
91
+ /**
92
+ * Sets the readonly state of the component
93
+ * @attr
94
+ */
74
95
  readonly: boolean;
75
- /** Toggles single selection visual mode. */
96
+ /**
97
+ * Toggles single selection visual mode.
98
+ * @attr
99
+ */
76
100
  single: boolean;
77
101
  protected handleMaxChange(): void;
78
102
  protected handleValueChange(): void;
@@ -1,5 +1,5 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `/* stylelint-disable max-line-length */
2
+ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */
3
3
  [part=base],
4
4
  :host {
5
5
  gap: 0.375rem;
@@ -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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyCvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */\n[part=base],\n:host {\n gap: 0.375rem;\n}\n\n[part~=label] {\n font-family: var(--ig-subtitle-2-font-family);\n font-size: var(--ig-subtitle-2-font-size);\n font-weight: var(--ig-subtitle-2-font-weight);\n font-style: var(--ig-subtitle-2-font-style);\n line-height: var(--ig-subtitle-2-line-height);\n letter-spacing: var(--ig-subtitle-2-letter-spacing);\n text-transform: var(--ig-subtitle-2-text-transform);\n margin-top: var(--ig-subtitle-2-margin-top);\n margin-bottom: var(--ig-subtitle-2-margin-bottom);\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}\n\n[part~=value-label] {\n font-family: var(--ig-body-2-font-family);\n font-size: var(--ig-body-2-font-size);\n font-weight: var(--ig-body-2-font-weight);\n font-style: var(--ig-body-2-font-style);\n line-height: var(--ig-body-2-line-height);\n letter-spacing: var(--ig-body-2-letter-spacing);\n text-transform: var(--ig-body-2-text-transform);\n margin-top: var(--ig-body-2-margin-top);\n margin-bottom: var(--ig-body-2-margin-bottom);\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}\n\n:host([disabled]) [part~=symbols-wrapper] {\n color: hsla(var(--ig-gray-200), var(--ig-gray-a));\n}\n:host([disabled]) [part~=value-label],\n:host([disabled]) [part~=label] {\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n}\n:host([disabled]) [part=\"symbols-wrapper selected\"] {\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n}`;\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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyCvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */\n[part=base],\n:host {\n gap: 0.375rem;\n}\n\n[part~=label] {\n font-family: var(--ig-subtitle-2-font-family);\n font-size: var(--ig-subtitle-2-font-size);\n font-weight: var(--ig-subtitle-2-font-weight);\n font-style: var(--ig-subtitle-2-font-style);\n line-height: var(--ig-subtitle-2-line-height);\n letter-spacing: var(--ig-subtitle-2-letter-spacing);\n text-transform: var(--ig-subtitle-2-text-transform);\n margin-top: var(--ig-subtitle-2-margin-top);\n margin-bottom: var(--ig-subtitle-2-margin-bottom);\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}\n\n[part~=value-label] {\n font-family: var(--ig-body-2-font-family);\n font-size: var(--ig-body-2-font-size);\n font-weight: var(--ig-body-2-font-weight);\n font-style: var(--ig-body-2-font-style);\n line-height: var(--ig-body-2-line-height);\n letter-spacing: var(--ig-body-2-letter-spacing);\n text-transform: var(--ig-body-2-text-transform);\n margin-top: var(--ig-body-2-margin-top);\n margin-bottom: var(--ig-body-2-margin-bottom);\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}\n\n:host([disabled]) [part~=symbols-wrapper] {\n color: hsla(var(--ig-gray-200), var(--ig-gray-a));\n}\n:host([disabled]) [part~=value-label],\n:host([disabled]) [part~=label] {\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n}\n:host([disabled]) [part=\"symbols-wrapper selected\"] {\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n}`;\n"]}
@@ -1,5 +1,5 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `/* stylelint-disable max-line-length */
2
+ export const styles = css `/* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */
3
3
  :host {
4
4
  gap: 0.3125rem;
5
5
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rating.indigo.css.js","sourceRoot":"","sources":["../../../src/components/rating/rating.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiCvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */\n:host {\n gap: 0.3125rem;\n}\n\n[part=base] {\n gap: 0.5rem;\n}\n\n[part~=label] {\n font-family: var(--ig-body-1-font-family);\n font-size: var(--ig-body-1-font-size);\n font-weight: var(--ig-body-1-font-weight);\n font-style: var(--ig-body-1-font-style);\n line-height: var(--ig-body-1-line-height);\n letter-spacing: var(--ig-body-1-letter-spacing);\n text-transform: var(--ig-body-1-text-transform);\n margin-top: var(--ig-body-1-margin-top);\n margin-bottom: var(--ig-body-1-margin-bottom);\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}\n\n[part~=value-label] {\n font-family: var(--ig-body-1-font-family);\n font-size: var(--ig-body-1-font-size);\n font-weight: var(--ig-body-1-font-weight);\n font-style: var(--ig-body-1-font-style);\n line-height: var(--ig-body-1-line-height);\n letter-spacing: var(--ig-body-1-letter-spacing);\n text-transform: var(--ig-body-1-text-transform);\n margin-top: var(--ig-body-1-margin-top);\n margin-bottom: var(--ig-body-1-margin-bottom);\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}`;\n"]}
1
+ {"version":3,"file":"rating.indigo.css.js","sourceRoot":"","sources":["../../../src/components/rating/rating.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiCvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */ /* stylelint-disable max-line-length */\n:host {\n gap: 0.3125rem;\n}\n\n[part=base] {\n gap: 0.5rem;\n}\n\n[part~=label] {\n font-family: var(--ig-body-1-font-family);\n font-size: var(--ig-body-1-font-size);\n font-weight: var(--ig-body-1-font-weight);\n font-style: var(--ig-body-1-font-style);\n line-height: var(--ig-body-1-line-height);\n letter-spacing: var(--ig-body-1-letter-spacing);\n text-transform: var(--ig-body-1-text-transform);\n margin-top: var(--ig-body-1-margin-top);\n margin-bottom: var(--ig-body-1-margin-bottom);\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}\n\n[part~=value-label] {\n font-family: var(--ig-body-1-font-family);\n font-size: var(--ig-body-1-font-size);\n font-weight: var(--ig-body-1-font-weight);\n font-style: var(--ig-body-1-font-style);\n line-height: var(--ig-body-1-line-height);\n letter-spacing: var(--ig-body-1-letter-spacing);\n text-transform: var(--ig-body-1-text-transform);\n margin-top: var(--ig-body-1-margin-top);\n margin-bottom: var(--ig-body-1-margin-bottom);\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n}`;\n"]}
@@ -23,20 +23,6 @@ import IgcRatingSymbolComponent from './rating-symbol.js';
23
23
  import IgcIconComponent from '../icon/icon.js';
24
24
  defineComponents(IgcRatingSymbolComponent, IgcIconComponent);
25
25
  let IgcRatingComponent = class IgcRatingComponent extends SizableMixin(EventEmitterMixin(LitElement)) {
26
- constructor() {
27
- super();
28
- this.ratingSymbols = [];
29
- this.hoverValue = -1;
30
- this.hoverState = false;
31
- this.max = 5;
32
- this.step = 1;
33
- this.value = 0;
34
- this.disabled = false;
35
- this.hoverPreview = false;
36
- this.readonly = false;
37
- this.single = false;
38
- this.addEventListener('keydown', this.handleKeyDown);
39
- }
40
26
  get isInteractive() {
41
27
  return !(this.readonly || this.disabled);
42
28
  }
@@ -71,6 +57,20 @@ let IgcRatingComponent = class IgcRatingComponent extends SizableMixin(EventEmit
71
57
  this.value = Math.ceil(this.value);
72
58
  }
73
59
  }
60
+ constructor() {
61
+ super();
62
+ this.ratingSymbols = [];
63
+ this.hoverValue = -1;
64
+ this.hoverState = false;
65
+ this.max = 5;
66
+ this.step = 1;
67
+ this.value = 0;
68
+ this.disabled = false;
69
+ this.hoverPreview = false;
70
+ this.readonly = false;
71
+ this.single = false;
72
+ this.addEventListener('keydown', this.handleKeyDown);
73
+ }
74
74
  handleClick({ clientX }) {
75
75
  if (!this.isInteractive) {
76
76
  return;
@@ -239,7 +239,7 @@ let IgcRatingComponent = class IgcRatingComponent extends SizableMixin(EventEmit
239
239
  @mouseleave=${this.hoverPreview ? this.handleMouseLeave : nothing}
240
240
  @mousemove=${this.hoverPreview ? this.handleMouseMove : nothing}
241
241
  >
242
- <slot @slotchange=${this.handleSlotChange}>
242
+ <slot name="symbol" @slotchange=${this.handleSlotChange}>
243
243
  ${guard(props, () => {
244
244
  this.clipProjected();
245
245
  return 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 { property, query, queryAssignedNodes, state } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport { guard } from 'lit/directives/guard.js';\nimport { themes } from '../../theming/theming-decorator.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 { clamp, isLTR } from '../common/util.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';\n\nimport { defineComponents } from '../common/definitions/defineComponents.js';\nimport IgcRatingSymbolComponent from './rating-symbol.js';\nimport IgcIconComponent from '../icon/icon.js';\n\ndefineComponents(IgcRatingSymbolComponent, IgcIconComponent);\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 value-label - The value label part.\n * @csspart symbols - A wrapper for all rating symbols.\n * @csspart symbol - The part of the encapsulated default symbol.\n * @csspart full - The part of the encapsulated full symbols.\n * @csspart empty - The part of the encapsulated empty symbols.\n *\n * @cssproperty --symbol-size - The size of the symbols.\n * @cssproperty --symbol-full-color - The color of the filled symbol.\n * @cssproperty --symbol-empty-color - The color of the empty symbol.\n * @cssproperty --symbol-full-filter - The filter(s) used for the filled symbol.\n * @cssproperty --symbol-empty-filter - The filter(s) used for the empty symbol.\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 protected ratingSymbols: Array<IgcRatingSymbolComponent> = [];\n\n @query('[part=\"symbols\"]', true)\n protected container!: HTMLElement;\n\n @queryAssignedNodes({ slot: 'value-label', flatten: true })\n protected valueLabel!: Array<Node>;\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 valueText() {\n // Skip IEEE 754 representation for screen readers\n const value = this.round(this.value);\n\n return this.valueFormat\n ? this.valueFormat\n .replace(/\\{0\\}/gm, `${value}`)\n .replace(/\\{1\\}/gm, `${this.max}`)\n : `${value} of ${this.max}`;\n }\n\n /**\n * The maximum value for the rating.\n *\n * If there are projected symbols, the maximum value will be resolved\n * based on the number of symbols.\n */\n @property({ type: Number })\n public max = 5;\n\n /**\n * The minimum value change allowed.\n *\n * Valid values are in the interval between 0 and 1 inclusive.\n */\n @property({ type: Number })\n public step = 1;\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. Instances of '{0}' will be replaced\n * with the current value of the control and instances of '{1}' with the maximum value for the control.\n *\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 /** Toggles single selection visual mode. */\n @property({ type: Boolean })\n public single = 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 = !this.single ? clamp(this.step, 0.001, 1) : 1;\n }\n\n @watch('single')\n protected handleSelectionChange() {\n if (this.single) {\n this.step = 1;\n this.value = Math.ceil(this.value);\n }\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 const ltr = isLTR(this);\n\n switch (key) {\n case 'ArrowUp':\n case 'ArrowRight':\n result += ltr ? this.step : -this.step;\n break;\n case 'ArrowDown':\n case 'ArrowLeft':\n result -= ltr ? 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(event: Event) {\n const slot = event.target as HTMLSlotElement;\n\n this.ratingSymbols = slot\n .assignedElements()\n .filter(\n (el) => el instanceof IgcRatingSymbolComponent\n ) as IgcRatingSymbolComponent[];\n\n if (this.hasProjectedSymbols) {\n this.max = this.ratingSymbols.length;\n }\n\n this.requestUpdate();\n }\n\n protected calcNewValue(x: number) {\n const { width, left, right } = this.container.getBoundingClientRect();\n const percent = isLTR(this) ? (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 protected clipSymbol(index: number, isLTR = true) {\n const value = this.hoverState ? this.hoverValue : this.value;\n const progress = index + 1 - value;\n const exclusive = progress === 0 || this.value === index + 1 ? 0 : 1;\n const selection = this.single ? exclusive : progress;\n const activate = (p: number) => clamp(p * 100, 0, 100);\n\n const forward = `inset(0 ${activate(\n isLTR ? selection : 1 - selection\n )}% 0 0)`;\n const backward = `inset(0 0 0 ${activate(\n isLTR ? 1 - selection : selection\n )}%)`;\n\n return {\n backward: isLTR ? backward : forward,\n forward: isLTR ? forward : backward,\n };\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 const ltr = isLTR(this);\n for (let i = 0; i < this.max; i++) {\n const { forward, backward } = this.clipSymbol(i, ltr);\n yield html`<igc-rating-symbol exportparts=\"symbol, full, empty\">\n <igc-icon\n collection=\"internal\"\n name=\"star\"\n style=${styleMap({ clipPath: forward })}\n ></igc-icon>\n <igc-icon\n collection=\"internal\"\n name=\"star_border\"\n style=${styleMap({ clipPath: backward })}\n slot=\"empty\"\n ></igc-icon>\n </igc-rating-symbol>`;\n }\n }\n\n protected clipProjected() {\n if (this.hasProjectedSymbols) {\n const ltr = isLTR(this);\n this.ratingSymbols.forEach((symbol: IgcRatingSymbolComponent, i) => {\n const full = symbol.shadowRoot?.querySelector(\n '[part=\"symbol full\"]'\n ) as HTMLElement;\n\n const empty = symbol.shadowRoot?.querySelector(\n '[part=\"symbol empty\"]'\n ) as HTMLElement;\n const { forward, backward } = this.clipSymbol(i, ltr);\n\n if (full) {\n full.style.clipPath = forward;\n }\n\n if (empty) {\n empty.style.clipPath = backward;\n }\n });\n }\n }\n\n protected override render() {\n const props = [\n this.value,\n this.hoverValue,\n this.max,\n this.step,\n this.single,\n this.hoverState,\n this.ratingSymbols,\n ];\n\n return html`\n <label part=\"label\" id=\"rating-label\" ?hidden=${!this.label}\n >${this.label}</label\n >\n <div\n part=\"base\"\n role=\"slider\"\n tabindex=${ifDefined(this.disabled ? undefined : 0)}\n aria-labelledby=\"rating-label\"\n aria-valuemin=\"0\"\n aria-valuenow=${this.value}\n aria-valuemax=${this.max}\n aria-valuetext=${this.valueText}\n >\n <div\n aria-hidden=\"true\"\n part=\"symbols\"\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}>\n ${guard(props, () => {\n this.clipProjected();\n return this.renderSymbols();\n })}\n </slot>\n </div>\n <label part=\"value-label\" ?hidden=${this.valueLabel.length === 0}>\n <slot name=\"value-label\"></slot>\n </label>\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 { property, query, queryAssignedNodes, state } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport { guard } from 'lit/directives/guard.js';\nimport { themes } from '../../theming/theming-decorator.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 { clamp, isLTR } from '../common/util.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';\n\nimport { defineComponents } from '../common/definitions/defineComponents.js';\nimport IgcRatingSymbolComponent from './rating-symbol.js';\nimport IgcIconComponent from '../icon/icon.js';\n\ndefineComponents(IgcRatingSymbolComponent, IgcIconComponent);\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 value-label - The value label part.\n * @csspart symbols - A wrapper for all rating symbols.\n * @csspart symbol - The part of the encapsulated default symbol.\n * @csspart full - The part of the encapsulated full symbols.\n * @csspart empty - The part of the encapsulated empty symbols.\n *\n * @cssproperty --symbol-size - The size of the symbols.\n * @cssproperty --symbol-full-color - The color of the filled symbol.\n * @cssproperty --symbol-empty-color - The color of the empty symbol.\n * @cssproperty --symbol-full-filter - The filter(s) used for the filled symbol.\n * @cssproperty --symbol-empty-filter - The filter(s) used for the empty symbol.\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 protected ratingSymbols: Array<IgcRatingSymbolComponent> = [];\n\n @query('[part=\"symbols\"]', true)\n protected container!: HTMLElement;\n\n @queryAssignedNodes({ slot: 'value-label', flatten: true })\n protected valueLabel!: Array<Node>;\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 valueText() {\n // Skip IEEE 754 representation for screen readers\n const value = this.round(this.value);\n\n return this.valueFormat\n ? this.valueFormat\n .replace(/\\{0\\}/gm, `${value}`)\n .replace(/\\{1\\}/gm, `${this.max}`)\n : `${value} of ${this.max}`;\n }\n\n /**\n * The maximum value for the rating.\n *\n * If there are projected symbols, the maximum value will be resolved\n * based on the number of symbols.\n * @attr\n */\n @property({ type: Number })\n public max = 5;\n\n /**\n * The minimum value change allowed.\n *\n * Valid values are in the interval between 0 and 1 inclusive.\n * @attr\n */\n @property({ type: Number })\n public step = 1;\n\n /**\n * The name attribute of the control\n * @attr\n */\n @property()\n public name!: string;\n\n /**\n * The label of the control.\n * @attr\n */\n @property()\n public label!: string;\n\n /**\n * A format string which sets aria-valuetext. Instances of '{0}' will be replaced\n * with the current value of the control and instances of '{1}' with the maximum value for the control.\n *\n * Important for screen-readers and useful for localization.\n * @attr value-format\n */\n @property({ attribute: 'value-format' })\n public valueFormat!: string;\n\n /**\n * The current value of the component\n * @attr\n */\n @property({ type: Number })\n public value = 0;\n\n /**\n * Sets the disabled state of the component\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public disabled = false;\n\n /**\n * Sets hover preview behavior for the component\n * @attr\n */\n @property({ type: Boolean, reflect: true, attribute: 'hover-preview' })\n public hoverPreview = false;\n\n /**\n * Sets the readonly state of the component\n * @attr\n */\n @property({ type: Boolean, reflect: true })\n public readonly = false;\n\n /**\n * Toggles single selection visual mode.\n * @attr\n */\n @property({ type: Boolean })\n public single = 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 = !this.single ? clamp(this.step, 0.001, 1) : 1;\n }\n\n @watch('single')\n protected handleSelectionChange() {\n if (this.single) {\n this.step = 1;\n this.value = Math.ceil(this.value);\n }\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 const ltr = isLTR(this);\n\n switch (key) {\n case 'ArrowUp':\n case 'ArrowRight':\n result += ltr ? this.step : -this.step;\n break;\n case 'ArrowDown':\n case 'ArrowLeft':\n result -= ltr ? 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(event: Event) {\n const slot = event.target as HTMLSlotElement;\n\n this.ratingSymbols = slot\n .assignedElements()\n .filter(\n (el) => el instanceof IgcRatingSymbolComponent\n ) as IgcRatingSymbolComponent[];\n\n if (this.hasProjectedSymbols) {\n this.max = this.ratingSymbols.length;\n }\n\n this.requestUpdate();\n }\n\n protected calcNewValue(x: number) {\n const { width, left, right } = this.container.getBoundingClientRect();\n const percent = isLTR(this) ? (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 protected clipSymbol(index: number, isLTR = true) {\n const value = this.hoverState ? this.hoverValue : this.value;\n const progress = index + 1 - value;\n const exclusive = progress === 0 || this.value === index + 1 ? 0 : 1;\n const selection = this.single ? exclusive : progress;\n const activate = (p: number) => clamp(p * 100, 0, 100);\n\n const forward = `inset(0 ${activate(\n isLTR ? selection : 1 - selection\n )}% 0 0)`;\n const backward = `inset(0 0 0 ${activate(\n isLTR ? 1 - selection : selection\n )}%)`;\n\n return {\n backward: isLTR ? backward : forward,\n forward: isLTR ? forward : backward,\n };\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 const ltr = isLTR(this);\n for (let i = 0; i < this.max; i++) {\n const { forward, backward } = this.clipSymbol(i, ltr);\n yield html`<igc-rating-symbol exportparts=\"symbol, full, empty\">\n <igc-icon\n collection=\"internal\"\n name=\"star\"\n style=${styleMap({ clipPath: forward })}\n ></igc-icon>\n <igc-icon\n collection=\"internal\"\n name=\"star_border\"\n style=${styleMap({ clipPath: backward })}\n slot=\"empty\"\n ></igc-icon>\n </igc-rating-symbol>`;\n }\n }\n\n protected clipProjected() {\n if (this.hasProjectedSymbols) {\n const ltr = isLTR(this);\n this.ratingSymbols.forEach((symbol: IgcRatingSymbolComponent, i) => {\n const full = symbol.shadowRoot?.querySelector(\n '[part=\"symbol full\"]'\n ) as HTMLElement;\n\n const empty = symbol.shadowRoot?.querySelector(\n '[part=\"symbol empty\"]'\n ) as HTMLElement;\n const { forward, backward } = this.clipSymbol(i, ltr);\n\n if (full) {\n full.style.clipPath = forward;\n }\n\n if (empty) {\n empty.style.clipPath = backward;\n }\n });\n }\n }\n\n protected override render() {\n const props = [\n this.value,\n this.hoverValue,\n this.max,\n this.step,\n this.single,\n this.hoverState,\n this.ratingSymbols,\n ];\n\n return html`\n <label part=\"label\" id=\"rating-label\" ?hidden=${!this.label}\n >${this.label}</label\n >\n <div\n part=\"base\"\n role=\"slider\"\n tabindex=${ifDefined(this.disabled ? undefined : 0)}\n aria-labelledby=\"rating-label\"\n aria-valuemin=\"0\"\n aria-valuenow=${this.value}\n aria-valuemax=${this.max}\n aria-valuetext=${this.valueText}\n >\n <div\n aria-hidden=\"true\"\n part=\"symbols\"\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 name=\"symbol\" @slotchange=${this.handleSlotChange}>\n ${guard(props, () => {\n this.clipProjected();\n return this.renderSymbols();\n })}\n </slot>\n </div>\n <label part=\"value-label\" ?hidden=${this.valueLabel.length === 0}>\n <slot name=\"value-label\"></slot>\n </label>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-rating': IgcRatingComponent;\n }\n}\n"]}
@@ -16,6 +16,10 @@ export default class IgcSelectGroupComponent extends IgcDropdownGroupComponent {
16
16
  /** All child `igc-select-item`s. */
17
17
  items: Array<IgcSelectItemComponent>;
18
18
  protected activeItems: Array<IgcSelectItemComponent>;
19
+ /**
20
+ * Whether the group item and all its children are disabled.
21
+ * @attr
22
+ */
19
23
  disabled: boolean;
20
24
  constructor();
21
25
  disconnectedCallback(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"select-group.js","sourceRoot":"","sources":["../../../src/components/select/select-group.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACtD,OAAO,yBAAyB,MAAM,+BAA+B,CAAC;AAWtE,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,yBAAyB;IAoB5E;QACE,KAAK,EAAE,CAAC;QAHH,aAAQ,GAAG,KAAK,CAAC;QAKtB,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9E,CAAC;IAEe,oBAAoB;QAClC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;IAC7B,CAAC;IAEkB,SAAS;QAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAE,CAAC;IACrC,CAAC;IAEkB,KAAK,CAAC,YAAY;QACnC,MAAM,IAAI,CAAC,cAAc,CAAC;QAC1B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAE1C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE;gBACvB,UAAU,EAAE,IAAI;gBAChB,eAAe,EAAE,CAAC,UAAU,CAAC;aAC9B,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAES,qBAAqB,CAAC,SAA2B;QACzD,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC7B,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAgC,CAAC;YAEvD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;gBAClB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC;aACzC;YAED,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;gBACnC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;aACtB;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAGS,cAAc;;QACtB,IAAI,CAAC,QAAQ;YACX,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;QAE1C,MAAA,IAAI,CAAC,eAAe,0CAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACrE,CAAC;;AApE+B,+BAAO,GAAG,kBAAkB,CAAC;AAO7D;IADC,qBAAqB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC;sDAChB;AAMtD;IAJC,qBAAqB,CAAC;QACrB,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,iCAAiC;KAC5C,CAAC;4DACoD;AAGtD;IADC,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;yDACnB;AA8CxB;IADC,KAAK,CAAC,UAAU,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC;6DAOjD","sourcesContent":["import { property, queryAssignedElements } from 'lit/decorators.js';\nimport { watch } from '../common/decorators/watch.js';\nimport IgcDropdownGroupComponent from '../dropdown/dropdown-group.js';\nimport IgcSelectItemComponent from './select-item.js';\n\n/**\n * @element igc-select-group - A container for a group of `igc-select-item` components.\n *\n * @slot label - Contains the group's label.\n * @slot - Intended to contain the items belonging to this group.\n *\n * @csspart label - The native label element.\n */\nexport default class IgcSelectGroupComponent extends IgcDropdownGroupComponent {\n /** @private */\n public static override readonly tagName = 'igc-select-group';\n\n private observer!: MutationObserver;\n private controlledItems!: Array<IgcSelectItemComponent>;\n\n /** All child `igc-select-item`s. */\n @queryAssignedElements({ flatten: true, selector: 'igc-select-item' })\n public override items!: Array<IgcSelectItemComponent>;\n\n @queryAssignedElements({\n flatten: true,\n selector: 'igc-select-item:not([disabled])',\n })\n protected activeItems!: Array<IgcSelectItemComponent>;\n\n @property({ reflect: true, type: Boolean })\n public disabled = false;\n\n constructor() {\n super();\n\n this.observer = new MutationObserver(this.updateControlledItems.bind(this));\n }\n\n public override disconnectedCallback() {\n this.observer.disconnect();\n }\n\n protected override getParent() {\n return this.closest('igc-select')!;\n }\n\n protected override async firstUpdated() {\n await this.updateComplete;\n this.controlledItems = this.activeItems;\n this.setAttribute('role', 'presentation');\n\n this.items.forEach((i) => {\n this.observer.observe(i, {\n attributes: true,\n attributeFilter: ['disabled'],\n });\n });\n\n this.updateDisabled();\n }\n\n protected updateControlledItems(mutations: MutationRecord[]) {\n mutations.forEach((mutation) => {\n const item = mutation.target as IgcSelectItemComponent;\n\n if (!this.disabled) {\n this.controlledItems = this.activeItems;\n }\n\n if (this.disabled && !item.disabled) {\n item.disabled = true;\n }\n });\n }\n\n @watch('disabled', { waitUntilFirstUpdate: true })\n protected updateDisabled() {\n this.disabled\n ? this.setAttribute('aria-disabled', 'true')\n : this.removeAttribute('aria-disabled');\n\n this.controlledItems?.forEach((i) => (i.disabled = this.disabled));\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-select-group': IgcSelectGroupComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"select-group.js","sourceRoot":"","sources":["../../../src/components/select/select-group.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACtD,OAAO,yBAAyB,MAAM,+BAA+B,CAAC;AAWtE,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,yBAAyB;IAwB5E;QACE,KAAK,EAAE,CAAC;QAHH,aAAQ,GAAG,KAAK,CAAC;QAKtB,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9E,CAAC;IAEe,oBAAoB;QAClC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;IAC7B,CAAC;IAEkB,SAAS;QAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAE,CAAC;IACrC,CAAC;IAEkB,KAAK,CAAC,YAAY;QACnC,MAAM,IAAI,CAAC,cAAc,CAAC;QAC1B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAE1C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE;gBACvB,UAAU,EAAE,IAAI;gBAChB,eAAe,EAAE,CAAC,UAAU,CAAC;aAC9B,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAES,qBAAqB,CAAC,SAA2B;QACzD,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC7B,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAgC,CAAC;YAEvD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;gBAClB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC;aACzC;YAED,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;gBACnC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;aACtB;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAGS,cAAc;;QACtB,IAAI,CAAC,QAAQ;YACX,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;QAE1C,MAAA,IAAI,CAAC,eAAe,0CAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACrE,CAAC;;AAxE+B,+BAAO,GAAG,kBAAkB,CAAC;AAO7D;IADC,qBAAqB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC;sDAChB;AAMtD;IAJC,qBAAqB,CAAC;QACrB,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,iCAAiC;KAC5C,CAAC;4DACoD;AAOtD;IADC,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;yDACnB;AA8CxB;IADC,KAAK,CAAC,UAAU,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC;6DAOjD","sourcesContent":["import { property, queryAssignedElements } from 'lit/decorators.js';\nimport { watch } from '../common/decorators/watch.js';\nimport IgcDropdownGroupComponent from '../dropdown/dropdown-group.js';\nimport IgcSelectItemComponent from './select-item.js';\n\n/**\n * @element igc-select-group - A container for a group of `igc-select-item` components.\n *\n * @slot label - Contains the group's label.\n * @slot - Intended to contain the items belonging to this group.\n *\n * @csspart label - The native label element.\n */\nexport default class IgcSelectGroupComponent extends IgcDropdownGroupComponent {\n /** @private */\n public static override readonly tagName = 'igc-select-group';\n\n private observer!: MutationObserver;\n private controlledItems!: Array<IgcSelectItemComponent>;\n\n /** All child `igc-select-item`s. */\n @queryAssignedElements({ flatten: true, selector: 'igc-select-item' })\n public override items!: Array<IgcSelectItemComponent>;\n\n @queryAssignedElements({\n flatten: true,\n selector: 'igc-select-item:not([disabled])',\n })\n protected activeItems!: Array<IgcSelectItemComponent>;\n\n /**\n * Whether the group item and all its children are disabled.\n * @attr\n */\n @property({ reflect: true, type: Boolean })\n public disabled = false;\n\n constructor() {\n super();\n\n this.observer = new MutationObserver(this.updateControlledItems.bind(this));\n }\n\n public override disconnectedCallback() {\n this.observer.disconnect();\n }\n\n protected override getParent() {\n return this.closest('igc-select')!;\n }\n\n protected override async firstUpdated() {\n await this.updateComplete;\n this.controlledItems = this.activeItems;\n this.setAttribute('role', 'presentation');\n\n this.items.forEach((i) => {\n this.observer.observe(i, {\n attributes: true,\n attributeFilter: ['disabled'],\n });\n });\n\n this.updateDisabled();\n }\n\n protected updateControlledItems(mutations: MutationRecord[]) {\n mutations.forEach((mutation) => {\n const item = mutation.target as IgcSelectItemComponent;\n\n if (!this.disabled) {\n this.controlledItems = this.activeItems;\n }\n\n if (this.disabled && !item.disabled) {\n item.disabled = true;\n }\n });\n }\n\n @watch('disabled', { waitUntilFirstUpdate: true })\n protected updateDisabled() {\n this.disabled\n ? this.setAttribute('aria-disabled', 'true')\n : this.removeAttribute('aria-disabled');\n\n this.controlledItems?.forEach((i) => (i.disabled = this.disabled));\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-select-group': IgcSelectGroupComponent;\n }\n}\n"]}
@@ -1,8 +1,10 @@
1
+ import { PropertyValueMap } from 'lit';
1
2
  import { Constructor } from '../common/mixins/constructor.js';
2
3
  import IgcDropdownComponent, { IgcDropdownEventMap } from '../dropdown/dropdown.js';
3
4
  import IgcInputComponent from '../input/input.js';
4
5
  import IgcSelectGroupComponent from './select-group.js';
5
6
  import IgcSelectItemComponent from './select-item.js';
7
+ import type { ThemeController, Theme } from '../../theming/types.js';
6
8
  export interface IgcSelectEventMap extends IgcDropdownEventMap {
7
9
  igcFocus: CustomEvent<void>;
8
10
  igcBlur: CustomEvent<void>;
@@ -41,6 +43,8 @@ export default class IgcSelectComponent extends IgcSelectComponent_base {
41
43
  static styles: import("lit").CSSResult;
42
44
  private searchTerm;
43
45
  private lastKeyTime;
46
+ protected themeController: ThemeController;
47
+ protected theme: Theme;
44
48
  private readonly targetKeyHandlers;
45
49
  protected items: Array<IgcSelectItemComponent>;
46
50
  protected groups: Array<IgcSelectGroupComponent>;
@@ -49,29 +53,64 @@ export default class IgcSelectComponent extends IgcSelectComponent_base {
49
53
  protected inputPrefix: Array<HTMLElement>;
50
54
  protected selectedItem: IgcSelectItemComponent | null;
51
55
  protected target: IgcInputComponent;
52
- /** The value attribute of the control. */
56
+ /**
57
+ * The value attribute of the control.
58
+ * @attr
59
+ */
53
60
  value?: string | undefined;
54
- /** The name attribute of the control. */
61
+ /**
62
+ * The name attribute of the control.
63
+ * @attr
64
+ */
55
65
  name: string;
56
- /** The disabled attribute of the control. */
66
+ /**
67
+ * The disabled attribute of the control.
68
+ * @attr
69
+ */
57
70
  disabled: boolean;
58
- /** The required attribute of the control. */
71
+ /**
72
+ * The required attribute of the control.
73
+ * @attr
74
+ */
59
75
  required: boolean;
60
- /** The invalid attribute of the control. */
76
+ /**
77
+ * The invalid attribute of the control.
78
+ * @attr
79
+ */
61
80
  invalid: boolean;
62
- /** The outlined attribute of the control. */
81
+ /**
82
+ * The outlined attribute of the control.
83
+ * @attr
84
+ */
63
85
  outlined: boolean;
64
- /** The autofocus attribute of the control. */
86
+ /**
87
+ * The autofocus attribute of the control.
88
+ * @attr
89
+ */
65
90
  autofocus: boolean;
66
- /** The label attribute of the control. */
91
+ /**
92
+ * The label attribute of the control.
93
+ * @attr
94
+ */
67
95
  label: string;
68
- /** The placeholder attribute of the control. */
96
+ /**
97
+ * The placeholder attribute of the control.
98
+ * @attr
99
+ */
69
100
  placeholder: string;
70
- /** Whether the dropdown's width should be the same as the target's one. */
101
+ /**
102
+ * Whether the dropdown's width should be the same as the target's one.
103
+ * @attr same-width
104
+ */
71
105
  sameWidth: boolean;
72
- /** The direction attribute of the control. */
106
+ /**
107
+ * The direction attribute of the control.
108
+ * @attr
109
+ */
73
110
  dir: 'ltr' | 'rtl' | 'auto';
74
111
  constructor();
112
+ protected themeAdopted(controller: ThemeController): void;
113
+ protected willUpdate(changes: PropertyValueMap<any>): void;
75
114
  /** Override the dropdown target focusout behavior to prevent the focus from
76
115
  * being returned to the target element when the select loses focus. */
77
116
  protected handleFocusout(): void;
@@ -54,6 +54,13 @@ let IgcSelectComponent = class IgcSelectComponent extends EventEmitterMixin(IgcD
54
54
  this.target.focus();
55
55
  });
56
56
  }
57
+ themeAdopted(controller) {
58
+ this.themeController = controller;
59
+ }
60
+ willUpdate(changes) {
61
+ super.willUpdate(changes);
62
+ this.theme = this.themeController.theme;
63
+ }
57
64
  handleFocusout() { }
58
65
  focus(options) {
59
66
  this.target.focus(options);
@@ -207,6 +214,8 @@ let IgcSelectComponent = class IgcSelectComponent extends EventEmitterMixin(IgcD
207
214
  }
208
215
  render() {
209
216
  var _a, _b;
217
+ const openIcon = this.theme === 'material' ? 'keyboard_arrow_up' : 'arrow_drop_up';
218
+ const closeIcon = this.theme === 'material' ? 'keyboard_arrow_down' : 'arrow_drop_down';
210
219
  return html `
211
220
  <div
212
221
  role="combobox"
@@ -246,7 +255,7 @@ let IgcSelectComponent = class IgcSelectComponent extends EventEmitterMixin(IgcD
246
255
  <slot name="toggle-icon">
247
256
  <igc-icon
248
257
  size=${this.size}
249
- name=${this.open ? 'keyboard_arrow_up' : 'keyboard_arrow_down'}
258
+ name=${this.open ? openIcon : closeIcon}
250
259
  collection="internal"
251
260
  aria-hidden="true"
252
261
  ></igc-icon>
@@ -321,10 +330,10 @@ __decorate([
321
330
  property({ type: Boolean })
322
331
  ], IgcSelectComponent.prototype, "autofocus", void 0);
323
332
  __decorate([
324
- property({ type: String })
333
+ property()
325
334
  ], IgcSelectComponent.prototype, "label", void 0);
326
335
  __decorate([
327
- property({ type: String })
336
+ property()
328
337
  ], IgcSelectComponent.prototype, "placeholder", void 0);
329
338
  __decorate([
330
339
  property({ type: Boolean, attribute: 'same-width' })