igniteui-webcomponents 5.0.0 → 5.0.2

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 (486) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.md +3 -3
  3. package/components/accordion/accordion.d.ts +0 -2
  4. package/components/accordion/accordion.js +7 -14
  5. package/components/accordion/accordion.js.map +1 -1
  6. package/components/accordion/themes/accordion.base.css.js +1 -1
  7. package/components/accordion/themes/accordion.base.css.js.map +1 -1
  8. package/components/avatar/themes/avatar.base.css.js +1 -1
  9. package/components/avatar/themes/avatar.base.css.js.map +1 -1
  10. package/components/badge/themes/badge.base.css.js +1 -1
  11. package/components/badge/themes/badge.base.css.js.map +1 -1
  12. package/components/badge/themes/shared/badge.bootstrap.css.js +1 -1
  13. package/components/badge/themes/shared/badge.bootstrap.css.js.map +1 -1
  14. package/components/badge/themes/shared/badge.common.css.js +1 -1
  15. package/components/badge/themes/shared/badge.common.css.js.map +1 -1
  16. package/components/banner/themes/banner.base.css.js +1 -1
  17. package/components/banner/themes/banner.base.css.js.map +1 -1
  18. package/components/banner/themes/shared/banner.bootstrap.css.js +1 -1
  19. package/components/banner/themes/shared/banner.bootstrap.css.js.map +1 -1
  20. package/components/banner/themes/shared/banner.fluent.css.js +1 -1
  21. package/components/banner/themes/shared/banner.fluent.css.js.map +1 -1
  22. package/components/banner/themes/shared/banner.indigo.css.js +1 -1
  23. package/components/banner/themes/shared/banner.indigo.css.js.map +1 -1
  24. package/components/banner/themes/shared/banner.material.css.js +1 -1
  25. package/components/banner/themes/shared/banner.material.css.js.map +1 -1
  26. package/components/button/themes/button/button.base.css.js +1 -1
  27. package/components/button/themes/button/button.base.css.js.map +1 -1
  28. package/components/button/themes/button/shared/button.bootstrap.css.js +1 -1
  29. package/components/button/themes/button/shared/button.bootstrap.css.js.map +1 -1
  30. package/components/button/themes/button/shared/button.common.css.js +1 -1
  31. package/components/button/themes/button/shared/button.common.css.js.map +1 -1
  32. package/components/button/themes/button/shared/button.fluent.css.js +1 -1
  33. package/components/button/themes/button/shared/button.fluent.css.js.map +1 -1
  34. package/components/button/themes/button/shared/button.indigo.css.js +1 -1
  35. package/components/button/themes/button/shared/button.indigo.css.js.map +1 -1
  36. package/components/button/themes/button/shared/button.material.css.js +1 -1
  37. package/components/button/themes/button/shared/button.material.css.js.map +1 -1
  38. package/components/button/themes/icon-button/icon-button.base.css.js +1 -1
  39. package/components/button/themes/icon-button/icon-button.base.css.js.map +1 -1
  40. package/components/button/themes/icon-button/shared/icon-button.bootstrap.css.js +1 -1
  41. package/components/button/themes/icon-button/shared/icon-button.bootstrap.css.js.map +1 -1
  42. package/components/button/themes/icon-button/shared/icon-button.fluent.css.js +1 -1
  43. package/components/button/themes/icon-button/shared/icon-button.fluent.css.js.map +1 -1
  44. package/components/button/themes/icon-button/shared/icon-button.indigo.css.js +1 -1
  45. package/components/button/themes/icon-button/shared/icon-button.indigo.css.js.map +1 -1
  46. package/components/button/themes/icon-button/shared/icon-button.material.css.js +1 -1
  47. package/components/button/themes/icon-button/shared/icon-button.material.css.js.map +1 -1
  48. package/components/button-group/themes/button.base.css.js +1 -1
  49. package/components/button-group/themes/button.base.css.js.map +1 -1
  50. package/components/button-group/themes/group.base.css.js +1 -1
  51. package/components/button-group/themes/group.base.css.js.map +1 -1
  52. package/components/button-group/themes/shared/button/button.bootstrap.css.js +1 -1
  53. package/components/button-group/themes/shared/button/button.bootstrap.css.js.map +1 -1
  54. package/components/button-group/themes/shared/button/button.fluent.css.js +1 -1
  55. package/components/button-group/themes/shared/button/button.fluent.css.js.map +1 -1
  56. package/components/button-group/themes/shared/button/button.indigo.css.js +1 -1
  57. package/components/button-group/themes/shared/button/button.indigo.css.js.map +1 -1
  58. package/components/button-group/themes/shared/group/group.common.css.js +1 -1
  59. package/components/button-group/themes/shared/group/group.common.css.js.map +1 -1
  60. package/components/calendar/calendar.d.ts +3 -2
  61. package/components/calendar/calendar.js +10 -9
  62. package/components/calendar/calendar.js.map +1 -1
  63. package/components/calendar/themes/calendar.base.css.js +1 -1
  64. package/components/calendar/themes/calendar.base.css.js.map +1 -1
  65. package/components/calendar/themes/dark/calendar.bootstrap.css.js +1 -1
  66. package/components/calendar/themes/dark/calendar.bootstrap.css.js.map +1 -1
  67. package/components/calendar/themes/dark/calendar.fluent.css.js +1 -1
  68. package/components/calendar/themes/dark/calendar.fluent.css.js.map +1 -1
  69. package/components/calendar/themes/dark/calendar.indigo.css.js +1 -1
  70. package/components/calendar/themes/dark/calendar.indigo.css.js.map +1 -1
  71. package/components/calendar/themes/dark/calendar.material.css.js +1 -1
  72. package/components/calendar/themes/dark/calendar.material.css.js.map +1 -1
  73. package/components/calendar/themes/days-view.base.css.js +1 -1
  74. package/components/calendar/themes/days-view.base.css.js.map +1 -1
  75. package/components/calendar/themes/light/calendar.bootstrap.css.js +1 -1
  76. package/components/calendar/themes/light/calendar.bootstrap.css.js.map +1 -1
  77. package/components/calendar/themes/light/calendar.fluent.css.js +1 -1
  78. package/components/calendar/themes/light/calendar.fluent.css.js.map +1 -1
  79. package/components/calendar/themes/light/calendar.indigo.css.js +1 -1
  80. package/components/calendar/themes/light/calendar.indigo.css.js.map +1 -1
  81. package/components/calendar/themes/light/calendar.material.css.js +1 -1
  82. package/components/calendar/themes/light/calendar.material.css.js.map +1 -1
  83. package/components/calendar/themes/light/calendar.shared.css.js +1 -1
  84. package/components/calendar/themes/light/calendar.shared.css.js.map +1 -1
  85. package/components/calendar/themes/shared/bootstrap/calendar.bootstrap.css.js +1 -1
  86. package/components/calendar/themes/shared/bootstrap/calendar.bootstrap.css.js.map +1 -1
  87. package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js +1 -1
  88. package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js.map +1 -1
  89. package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js +1 -1
  90. package/components/calendar/themes/shared/bootstrap/year-month-view.bootstrap.css.js.map +1 -1
  91. package/components/calendar/themes/shared/fluent/calendar.fluent.css.js +1 -1
  92. package/components/calendar/themes/shared/fluent/calendar.fluent.css.js.map +1 -1
  93. package/components/calendar/themes/shared/fluent/days-view.fluent.css.js +1 -1
  94. package/components/calendar/themes/shared/fluent/days-view.fluent.css.js.map +1 -1
  95. package/components/calendar/themes/shared/fluent/year-month-view.fluent.css.js +1 -1
  96. package/components/calendar/themes/shared/fluent/year-month-view.fluent.css.js.map +1 -1
  97. package/components/calendar/themes/shared/indigo/calendar.indigo.css.js +1 -1
  98. package/components/calendar/themes/shared/indigo/calendar.indigo.css.js.map +1 -1
  99. package/components/calendar/themes/shared/indigo/days-view.indigo.css.js +1 -1
  100. package/components/calendar/themes/shared/indigo/days-view.indigo.css.js.map +1 -1
  101. package/components/calendar/themes/shared/indigo/year-month-view.indigo.css.js +1 -1
  102. package/components/calendar/themes/shared/indigo/year-month-view.indigo.css.js.map +1 -1
  103. package/components/calendar/themes/shared/material/calendar.material.css.js +1 -1
  104. package/components/calendar/themes/shared/material/calendar.material.css.js.map +1 -1
  105. package/components/calendar/themes/shared/material/days-view.material.css.js +1 -1
  106. package/components/calendar/themes/shared/material/days-view.material.css.js.map +1 -1
  107. package/components/calendar/themes/shared/material/year-month-view.material.css.js +1 -1
  108. package/components/calendar/themes/shared/material/year-month-view.material.css.js.map +1 -1
  109. package/components/calendar/themes/year-month-view.base.css.js +1 -1
  110. package/components/calendar/themes/year-month-view.base.css.js.map +1 -1
  111. package/components/card/themes/card.actions.base.css.js +1 -1
  112. package/components/card/themes/card.actions.base.css.js.map +1 -1
  113. package/components/card/themes/card.content.base.css.js +1 -1
  114. package/components/card/themes/card.content.base.css.js.map +1 -1
  115. package/components/card/themes/card.header.base.css.js +1 -1
  116. package/components/card/themes/card.header.base.css.js.map +1 -1
  117. package/components/card/themes/card.media.base.css.js +1 -1
  118. package/components/card/themes/card.media.base.css.js.map +1 -1
  119. package/components/card/themes/container.base.css.js +1 -1
  120. package/components/card/themes/container.base.css.js.map +1 -1
  121. package/components/card/themes/shared/container/card.common.css.js +1 -1
  122. package/components/card/themes/shared/container/card.common.css.js.map +1 -1
  123. package/components/card/themes/shared/container/card.fluent.css.js +1 -1
  124. package/components/card/themes/shared/container/card.fluent.css.js.map +1 -1
  125. package/components/card/themes/shared/container/card.indigo.css.js +1 -1
  126. package/components/card/themes/shared/container/card.indigo.css.js.map +1 -1
  127. package/components/card/themes/shared/header/card.header.indigo.css.js +1 -1
  128. package/components/card/themes/shared/header/card.header.indigo.css.js.map +1 -1
  129. package/components/checkbox/checkbox-base.d.ts +2 -3
  130. package/components/checkbox/checkbox-base.js +6 -10
  131. package/components/checkbox/checkbox-base.js.map +1 -1
  132. package/components/checkbox/themes/checkbox.base.css.js +1 -1
  133. package/components/checkbox/themes/checkbox.base.css.js.map +1 -1
  134. package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js +1 -1
  135. package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js.map +1 -1
  136. package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js +1 -1
  137. package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js.map +1 -1
  138. package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js +1 -1
  139. package/components/checkbox/themes/shared/checkbox/checkbox.indigo.css.js.map +1 -1
  140. package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js +1 -1
  141. package/components/checkbox/themes/shared/checkbox/checkbox.material.css.js.map +1 -1
  142. package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js +1 -1
  143. package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js.map +1 -1
  144. package/components/checkbox/themes/shared/switch/switch.common.css.js +1 -1
  145. package/components/checkbox/themes/shared/switch/switch.common.css.js.map +1 -1
  146. package/components/checkbox/themes/shared/switch/switch.fluent.css.js +1 -1
  147. package/components/checkbox/themes/shared/switch/switch.fluent.css.js.map +1 -1
  148. package/components/checkbox/themes/shared/switch/switch.indigo.css.js +1 -1
  149. package/components/checkbox/themes/shared/switch/switch.indigo.css.js.map +1 -1
  150. package/components/checkbox/themes/shared/switch/switch.material.css.js +1 -1
  151. package/components/checkbox/themes/shared/switch/switch.material.css.js.map +1 -1
  152. package/components/checkbox/themes/switch.base.css.js +1 -1
  153. package/components/checkbox/themes/switch.base.css.js.map +1 -1
  154. package/components/chip/chip.d.ts +1 -1
  155. package/components/chip/themes/chip.base.css.js +1 -1
  156. package/components/chip/themes/chip.base.css.js.map +1 -1
  157. package/components/combo/combo.d.ts +3 -4
  158. package/components/combo/combo.js +11 -23
  159. package/components/combo/combo.js.map +1 -1
  160. package/components/combo/themes/combo-header.base.css.js +1 -1
  161. package/components/combo/themes/combo-header.base.css.js.map +1 -1
  162. package/components/combo/themes/combo-item.base.css.js +1 -1
  163. package/components/combo/themes/combo-item.base.css.js.map +1 -1
  164. package/components/combo/themes/combo.base.css.js +1 -1
  165. package/components/combo/themes/combo.base.css.js.map +1 -1
  166. package/components/combo/themes/dark/combo.indigo.css.js +1 -1
  167. package/components/combo/themes/dark/combo.indigo.css.js.map +1 -1
  168. package/components/combo/themes/light/combo.indigo.css.js +1 -1
  169. package/components/combo/themes/light/combo.indigo.css.js.map +1 -1
  170. package/components/combo/themes/shared/combo.bootstrap.css.js +1 -1
  171. package/components/combo/themes/shared/combo.bootstrap.css.js.map +1 -1
  172. package/components/combo/themes/shared/combo.common.css.js +1 -1
  173. package/components/combo/themes/shared/combo.common.css.js.map +1 -1
  174. package/components/combo/themes/shared/combo.fluent.css.js +1 -1
  175. package/components/combo/themes/shared/combo.fluent.css.js.map +1 -1
  176. package/components/combo/themes/shared/combo.indigo.css.js +1 -1
  177. package/components/combo/themes/shared/combo.indigo.css.js.map +1 -1
  178. package/components/combo/themes/shared/combo.material.css.js +1 -1
  179. package/components/combo/themes/shared/combo.material.css.js.map +1 -1
  180. package/components/common/controllers/key-bindings.d.ts +3 -3
  181. package/components/common/controllers/key-bindings.js +48 -49
  182. package/components/common/controllers/key-bindings.js.map +1 -1
  183. package/components/common/mixins/combo-box.d.ts +2 -2
  184. package/components/common/mixins/forms/associated-required.d.ts +13 -0
  185. package/components/common/mixins/forms/associated-required.js +47 -0
  186. package/components/common/mixins/forms/associated-required.js.map +1 -0
  187. package/components/common/mixins/forms/associated.d.ts +11 -0
  188. package/components/common/mixins/{form-associated.js → forms/associated.js} +102 -57
  189. package/components/common/mixins/forms/associated.js.map +1 -0
  190. package/components/common/mixins/forms/types.d.ts +125 -0
  191. package/components/common/mixins/forms/types.js +2 -0
  192. package/components/common/mixins/forms/types.js.map +1 -0
  193. package/components/date-picker/date-picker.d.ts +6 -3
  194. package/components/date-picker/date-picker.js +30 -24
  195. package/components/date-picker/date-picker.js.map +1 -1
  196. package/components/date-picker/themes/dark/date-picker.bootstrap.css.js +1 -1
  197. package/components/date-picker/themes/dark/date-picker.bootstrap.css.js.map +1 -1
  198. package/components/date-picker/themes/dark/date-picker.fluent.css.js +1 -1
  199. package/components/date-picker/themes/dark/date-picker.fluent.css.js.map +1 -1
  200. package/components/date-picker/themes/dark/date-picker.indigo.css.js +1 -1
  201. package/components/date-picker/themes/dark/date-picker.indigo.css.js.map +1 -1
  202. package/components/date-picker/themes/dark/date-picker.material.css.js +1 -1
  203. package/components/date-picker/themes/dark/date-picker.material.css.js.map +1 -1
  204. package/components/date-picker/themes/date-picker.base.css.js +1 -1
  205. package/components/date-picker/themes/date-picker.base.css.js.map +1 -1
  206. package/components/date-picker/themes/light/date-picker.bootstrap.css.js +1 -1
  207. package/components/date-picker/themes/light/date-picker.bootstrap.css.js.map +1 -1
  208. package/components/date-picker/themes/light/date-picker.fluent.css.js +1 -1
  209. package/components/date-picker/themes/light/date-picker.fluent.css.js.map +1 -1
  210. package/components/date-picker/themes/light/date-picker.indigo.css.js +1 -1
  211. package/components/date-picker/themes/light/date-picker.indigo.css.js.map +1 -1
  212. package/components/date-picker/themes/light/date-picker.material.css.js +1 -1
  213. package/components/date-picker/themes/light/date-picker.material.css.js.map +1 -1
  214. package/components/date-picker/themes/light/date-picker.shared.css.js +1 -1
  215. package/components/date-picker/themes/light/date-picker.shared.css.js.map +1 -1
  216. package/components/date-picker/themes/shared/date-picker.bootstrap.css.js +1 -1
  217. package/components/date-picker/themes/shared/date-picker.bootstrap.css.js.map +1 -1
  218. package/components/date-picker/themes/shared/date-picker.common.css.js +1 -1
  219. package/components/date-picker/themes/shared/date-picker.common.css.js.map +1 -1
  220. package/components/date-picker/themes/shared/date-picker.indigo.css.js +1 -1
  221. package/components/date-picker/themes/shared/date-picker.indigo.css.js.map +1 -1
  222. package/components/date-time-input/date-time-input.js +5 -6
  223. package/components/date-time-input/date-time-input.js.map +1 -1
  224. package/components/dialog/dialog.d.ts +1 -1
  225. package/components/dialog/themes/dialog.base.css.js +1 -1
  226. package/components/dialog/themes/dialog.base.css.js.map +1 -1
  227. package/components/dialog/themes/shared/dialog.bootstrap.css.js +1 -1
  228. package/components/dialog/themes/shared/dialog.bootstrap.css.js.map +1 -1
  229. package/components/dialog/themes/shared/dialog.common.css.js +1 -1
  230. package/components/dialog/themes/shared/dialog.common.css.js.map +1 -1
  231. package/components/dialog/themes/shared/dialog.fluent.css.js +1 -1
  232. package/components/dialog/themes/shared/dialog.fluent.css.js.map +1 -1
  233. package/components/dialog/themes/shared/dialog.indigo.css.js +1 -1
  234. package/components/dialog/themes/shared/dialog.indigo.css.js.map +1 -1
  235. package/components/divider/themes/divider.base.css.js +1 -1
  236. package/components/divider/themes/divider.base.css.js.map +1 -1
  237. package/components/dropdown/themes/dropdown-group.base.css.js +1 -1
  238. package/components/dropdown/themes/dropdown-group.base.css.js.map +1 -1
  239. package/components/dropdown/themes/dropdown-header.base.css.js +1 -1
  240. package/components/dropdown/themes/dropdown-header.base.css.js.map +1 -1
  241. package/components/dropdown/themes/dropdown-item.base.css.js +1 -1
  242. package/components/dropdown/themes/dropdown-item.base.css.js.map +1 -1
  243. package/components/dropdown/themes/dropdown.base.css.js +1 -1
  244. package/components/dropdown/themes/dropdown.base.css.js.map +1 -1
  245. package/components/dropdown/themes/shared/dropdown.fluent.css.js +1 -1
  246. package/components/dropdown/themes/shared/dropdown.fluent.css.js.map +1 -1
  247. package/components/dropdown/themes/shared/dropdown.indigo.css.js +1 -1
  248. package/components/dropdown/themes/shared/dropdown.indigo.css.js.map +1 -1
  249. package/components/dropdown/themes/shared/dropdown.material.css.js +1 -1
  250. package/components/dropdown/themes/shared/dropdown.material.css.js.map +1 -1
  251. package/components/dropdown/themes/shared/header/dropdown-header.indigo.css.js +1 -1
  252. package/components/dropdown/themes/shared/header/dropdown-header.indigo.css.js.map +1 -1
  253. package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.js +1 -1
  254. package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.js.map +1 -1
  255. package/components/expansion-panel/expansion-panel.d.ts +1 -1
  256. package/components/expansion-panel/themes/expansion-panel.base.css.js +1 -1
  257. package/components/expansion-panel/themes/expansion-panel.base.css.js.map +1 -1
  258. package/components/expansion-panel/themes/shared/expansion-panel.indigo.css.js +1 -1
  259. package/components/expansion-panel/themes/shared/expansion-panel.indigo.css.js.map +1 -1
  260. package/components/icon/registry/default-map.d.ts +1 -1
  261. package/components/icon/themes/icon.base.css.js +1 -1
  262. package/components/icon/themes/icon.base.css.js.map +1 -1
  263. package/components/input/input-base.d.ts +2 -2
  264. package/components/input/input-base.js +1 -1
  265. package/components/input/input-base.js.map +1 -1
  266. package/components/input/input.d.ts +0 -2
  267. package/components/input/input.js +4 -10
  268. package/components/input/input.js.map +1 -1
  269. package/components/input/themes/input.base.css.js +1 -1
  270. package/components/input/themes/input.base.css.js.map +1 -1
  271. package/components/input/themes/shared/input.bootstrap.css.js +1 -1
  272. package/components/input/themes/shared/input.bootstrap.css.js.map +1 -1
  273. package/components/input/themes/shared/input.common.css.js +1 -1
  274. package/components/input/themes/shared/input.common.css.js.map +1 -1
  275. package/components/input/themes/shared/input.fluent.css.js +1 -1
  276. package/components/input/themes/shared/input.fluent.css.js.map +1 -1
  277. package/components/input/themes/shared/input.indigo.css.js +1 -1
  278. package/components/input/themes/shared/input.indigo.css.js.map +1 -1
  279. package/components/input/themes/shared/input.material.css.js +1 -1
  280. package/components/input/themes/shared/input.material.css.js.map +1 -1
  281. package/components/list/themes/container.base.css.js +1 -1
  282. package/components/list/themes/container.base.css.js.map +1 -1
  283. package/components/list/themes/header.base.css.js +1 -1
  284. package/components/list/themes/header.base.css.js.map +1 -1
  285. package/components/list/themes/item.base.css.js +1 -1
  286. package/components/list/themes/item.base.css.js.map +1 -1
  287. package/components/list/themes/shared/item/list-item.common.css.js +1 -1
  288. package/components/list/themes/shared/item/list-item.common.css.js.map +1 -1
  289. package/components/list/themes/shared/item/list-item.indigo.css.js +1 -1
  290. package/components/list/themes/shared/item/list-item.indigo.css.js.map +1 -1
  291. package/components/mask-input/mask-input.d.ts +1 -2
  292. package/components/mask-input/mask-input.js +5 -10
  293. package/components/mask-input/mask-input.js.map +1 -1
  294. package/components/nav-drawer/nav-drawer-item.d.ts +1 -1
  295. package/components/nav-drawer/nav-drawer.d.ts +1 -1
  296. package/components/nav-drawer/themes/container.base.css.js +1 -1
  297. package/components/nav-drawer/themes/container.base.css.js.map +1 -1
  298. package/components/nav-drawer/themes/header-item.base.css.js +1 -1
  299. package/components/nav-drawer/themes/header-item.base.css.js.map +1 -1
  300. package/components/nav-drawer/themes/item.base.css.js +1 -1
  301. package/components/nav-drawer/themes/item.base.css.js.map +1 -1
  302. package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js +1 -1
  303. package/components/nav-drawer/themes/shared/container/nav-drawer.common.css.js.map +1 -1
  304. package/components/nav-drawer/themes/shared/header-item/header-item.indigo.css.js +1 -1
  305. package/components/nav-drawer/themes/shared/header-item/header-item.indigo.css.js.map +1 -1
  306. package/components/nav-drawer/themes/shared/item/item.indigo.css.js +1 -1
  307. package/components/nav-drawer/themes/shared/item/item.indigo.css.js.map +1 -1
  308. package/components/navbar/themes/dark/navbar.bootstrap.css.js +1 -1
  309. package/components/navbar/themes/dark/navbar.bootstrap.css.js.map +1 -1
  310. package/components/navbar/themes/dark/navbar.indigo.css.js +1 -1
  311. package/components/navbar/themes/dark/navbar.indigo.css.js.map +1 -1
  312. package/components/navbar/themes/dark/navbar.material.css.js +1 -1
  313. package/components/navbar/themes/dark/navbar.material.css.js.map +1 -1
  314. package/components/navbar/themes/light/navbar.bootstrap.css.js +1 -1
  315. package/components/navbar/themes/light/navbar.bootstrap.css.js.map +1 -1
  316. package/components/navbar/themes/light/navbar.indigo.css.js +1 -1
  317. package/components/navbar/themes/light/navbar.indigo.css.js.map +1 -1
  318. package/components/navbar/themes/light/navbar.shared.css.js +1 -1
  319. package/components/navbar/themes/light/navbar.shared.css.js.map +1 -1
  320. package/components/navbar/themes/navbar.base.css.js +1 -1
  321. package/components/navbar/themes/navbar.base.css.js.map +1 -1
  322. package/components/navbar/themes/shared/navbar.bootstrap.css.js +1 -1
  323. package/components/navbar/themes/shared/navbar.bootstrap.css.js.map +1 -1
  324. package/components/navbar/themes/shared/navbar.common.css.js +1 -1
  325. package/components/navbar/themes/shared/navbar.common.css.js.map +1 -1
  326. package/components/navbar/themes/shared/navbar.indigo.css.js +1 -1
  327. package/components/navbar/themes/shared/navbar.indigo.css.js.map +1 -1
  328. package/components/popover/themes/light/popover.base.css.js +1 -1
  329. package/components/popover/themes/light/popover.base.css.js.map +1 -1
  330. package/components/progress/base.d.ts +1 -1
  331. package/components/progress/themes/circular/circular.progress.base.css.js +1 -1
  332. package/components/progress/themes/circular/circular.progress.base.css.js.map +1 -1
  333. package/components/progress/themes/circular/shared/circular.progress.bootstrap.css.js +1 -1
  334. package/components/progress/themes/circular/shared/circular.progress.bootstrap.css.js.map +1 -1
  335. package/components/progress/themes/linear/linear.progress.base.css.js +1 -1
  336. package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
  337. package/components/progress/themes/linear/shared/linear.progress.bootstrap.css.js +1 -1
  338. package/components/progress/themes/linear/shared/linear.progress.bootstrap.css.js.map +1 -1
  339. package/components/progress/themes/linear/shared/linear.progress.common.css.js +1 -1
  340. package/components/progress/themes/linear/shared/linear.progress.common.css.js.map +1 -1
  341. package/components/progress/themes/linear/shared/linear.progress.fluent.css.js +1 -1
  342. package/components/progress/themes/linear/shared/linear.progress.fluent.css.js.map +1 -1
  343. package/components/progress/themes/linear/shared/linear.progress.indigo.css.js +1 -1
  344. package/components/progress/themes/linear/shared/linear.progress.indigo.css.js.map +1 -1
  345. package/components/radio/radio.d.ts +4 -5
  346. package/components/radio/radio.js +24 -32
  347. package/components/radio/radio.js.map +1 -1
  348. package/components/radio/themes/radio.base.css.js +1 -1
  349. package/components/radio/themes/radio.base.css.js.map +1 -1
  350. package/components/radio/themes/shared/radio.bootstrap.css.js +1 -1
  351. package/components/radio/themes/shared/radio.bootstrap.css.js.map +1 -1
  352. package/components/radio/themes/shared/radio.fluent.css.js +1 -1
  353. package/components/radio/themes/shared/radio.fluent.css.js.map +1 -1
  354. package/components/radio/themes/shared/radio.indigo.css.js +1 -1
  355. package/components/radio/themes/shared/radio.indigo.css.js.map +1 -1
  356. package/components/radio/themes/shared/radio.material.css.js +1 -1
  357. package/components/radio/themes/shared/radio.material.css.js.map +1 -1
  358. package/components/radio/utils.js +1 -1
  359. package/components/radio/utils.js.map +1 -1
  360. package/components/radio-group/radio-group.base.css.js +1 -1
  361. package/components/radio-group/radio-group.base.css.js.map +1 -1
  362. package/components/radio-group/radio-group.js +1 -1
  363. package/components/radio-group/radio-group.js.map +1 -1
  364. package/components/rating/rating.d.ts +4 -3
  365. package/components/rating/rating.js +26 -25
  366. package/components/rating/rating.js.map +1 -1
  367. package/components/rating/themes/rating-symbol.base.css.js +1 -1
  368. package/components/rating/themes/rating-symbol.base.css.js.map +1 -1
  369. package/components/rating/themes/rating.base.css.js +1 -1
  370. package/components/rating/themes/rating.base.css.js.map +1 -1
  371. package/components/rating/themes/shared/rating.indigo.css.js +1 -1
  372. package/components/rating/themes/shared/rating.indigo.css.js.map +1 -1
  373. package/components/ripple/ripple.material.css.js +1 -1
  374. package/components/ripple/ripple.material.css.js.map +1 -1
  375. package/components/select/select.d.ts +2 -2
  376. package/components/select/select.js +12 -15
  377. package/components/select/select.js.map +1 -1
  378. package/components/select/themes/dark/select.bootstrap.css.js +1 -1
  379. package/components/select/themes/dark/select.bootstrap.css.js.map +1 -1
  380. package/components/select/themes/dark/select.fluent.css.js +1 -1
  381. package/components/select/themes/dark/select.fluent.css.js.map +1 -1
  382. package/components/select/themes/dark/select.indigo.css.js +1 -1
  383. package/components/select/themes/dark/select.indigo.css.js.map +1 -1
  384. package/components/select/themes/dark/select.material.css.js +1 -1
  385. package/components/select/themes/dark/select.material.css.js.map +1 -1
  386. package/components/select/themes/light/select.bootstrap.css.js +1 -1
  387. package/components/select/themes/light/select.bootstrap.css.js.map +1 -1
  388. package/components/select/themes/light/select.fluent.css.js +1 -1
  389. package/components/select/themes/light/select.fluent.css.js.map +1 -1
  390. package/components/select/themes/light/select.indigo.css.js +1 -1
  391. package/components/select/themes/light/select.indigo.css.js.map +1 -1
  392. package/components/select/themes/light/select.material.css.js +1 -1
  393. package/components/select/themes/light/select.material.css.js.map +1 -1
  394. package/components/select/themes/select.base.css.js +1 -1
  395. package/components/select/themes/select.base.css.js.map +1 -1
  396. package/components/select/themes/shared/select.bootstrap.css.js +1 -1
  397. package/components/select/themes/shared/select.bootstrap.css.js.map +1 -1
  398. package/components/select/themes/shared/select.common.css.js +1 -1
  399. package/components/select/themes/shared/select.common.css.js.map +1 -1
  400. package/components/select/themes/shared/select.fluent.css.js +1 -1
  401. package/components/select/themes/shared/select.fluent.css.js.map +1 -1
  402. package/components/select/themes/shared/select.indigo.css.js +1 -1
  403. package/components/select/themes/shared/select.indigo.css.js.map +1 -1
  404. package/components/select/themes/shared/select.material.css.js +1 -1
  405. package/components/select/themes/shared/select.material.css.js.map +1 -1
  406. package/components/slider/slider.d.ts +2 -1
  407. package/components/slider/slider.js +5 -2
  408. package/components/slider/slider.js.map +1 -1
  409. package/components/slider/themes/shared/slider.bootstrap.css.js +1 -1
  410. package/components/slider/themes/shared/slider.bootstrap.css.js.map +1 -1
  411. package/components/slider/themes/shared/slider.fluent.css.js +1 -1
  412. package/components/slider/themes/shared/slider.fluent.css.js.map +1 -1
  413. package/components/slider/themes/shared/slider.indigo.css.js +1 -1
  414. package/components/slider/themes/shared/slider.indigo.css.js.map +1 -1
  415. package/components/slider/themes/shared/slider.material.css.js +1 -1
  416. package/components/slider/themes/shared/slider.material.css.js.map +1 -1
  417. package/components/slider/themes/slider.base.css.js +1 -1
  418. package/components/slider/themes/slider.base.css.js.map +1 -1
  419. package/components/snackbar/themes/shared/snackbar.common.css.js +1 -1
  420. package/components/snackbar/themes/shared/snackbar.common.css.js.map +1 -1
  421. package/components/snackbar/themes/shared/snackbar.indigo.css.js +1 -1
  422. package/components/snackbar/themes/shared/snackbar.indigo.css.js.map +1 -1
  423. package/components/snackbar/themes/snackbar.base.css.js +1 -1
  424. package/components/snackbar/themes/snackbar.base.css.js.map +1 -1
  425. package/components/stepper/themes/step/shared/step.bootstrap.css.js +1 -1
  426. package/components/stepper/themes/step/shared/step.bootstrap.css.js.map +1 -1
  427. package/components/stepper/themes/step/shared/step.common.css.js +1 -1
  428. package/components/stepper/themes/step/shared/step.common.css.js.map +1 -1
  429. package/components/stepper/themes/step/shared/step.fluent.css.js +1 -1
  430. package/components/stepper/themes/step/shared/step.fluent.css.js.map +1 -1
  431. package/components/stepper/themes/step/shared/step.indigo.css.js +1 -1
  432. package/components/stepper/themes/step/shared/step.indigo.css.js.map +1 -1
  433. package/components/stepper/themes/step/step.base.css.js +1 -1
  434. package/components/stepper/themes/step/step.base.css.js.map +1 -1
  435. package/components/stepper/themes/stepper/stepper.base.css.js +1 -1
  436. package/components/stepper/themes/stepper/stepper.base.css.js.map +1 -1
  437. package/components/tabs/themes/shared/tab/tab.bootstrap.css.js +1 -1
  438. package/components/tabs/themes/shared/tab/tab.bootstrap.css.js.map +1 -1
  439. package/components/tabs/themes/tab-panel.base.css.js +1 -1
  440. package/components/tabs/themes/tab-panel.base.css.js.map +1 -1
  441. package/components/tabs/themes/tab.base.css.js +1 -1
  442. package/components/tabs/themes/tab.base.css.js.map +1 -1
  443. package/components/tabs/themes/tabs.base.css.js +1 -1
  444. package/components/tabs/themes/tabs.base.css.js.map +1 -1
  445. package/components/textarea/textarea.d.ts +1 -1
  446. package/components/textarea/textarea.js +4 -9
  447. package/components/textarea/textarea.js.map +1 -1
  448. package/components/textarea/themes/shared/textarea.bootstrap.css.js +1 -1
  449. package/components/textarea/themes/shared/textarea.bootstrap.css.js.map +1 -1
  450. package/components/textarea/themes/shared/textarea.common.css.js +1 -1
  451. package/components/textarea/themes/shared/textarea.common.css.js.map +1 -1
  452. package/components/textarea/themes/shared/textarea.fluent.css.js +1 -1
  453. package/components/textarea/themes/shared/textarea.fluent.css.js.map +1 -1
  454. package/components/textarea/themes/shared/textarea.indigo.css.js +1 -1
  455. package/components/textarea/themes/shared/textarea.indigo.css.js.map +1 -1
  456. package/components/textarea/themes/shared/textarea.material.css.js +1 -1
  457. package/components/textarea/themes/shared/textarea.material.css.js.map +1 -1
  458. package/components/textarea/themes/textarea.base.css.js +1 -1
  459. package/components/textarea/themes/textarea.base.css.js.map +1 -1
  460. package/components/toast/themes/shared/toast.common.css.js +1 -1
  461. package/components/toast/themes/shared/toast.common.css.js.map +1 -1
  462. package/components/toast/themes/toast.base.css.js +1 -1
  463. package/components/toast/themes/toast.base.css.js.map +1 -1
  464. package/components/tree/themes/container.base.css.js +1 -1
  465. package/components/tree/themes/container.base.css.js.map +1 -1
  466. package/components/tree/themes/item.base.css.js +1 -1
  467. package/components/tree/themes/item.base.css.js.map +1 -1
  468. package/components/tree/themes/shared/item.common.css.js +1 -1
  469. package/components/tree/themes/shared/item.common.css.js.map +1 -1
  470. package/components/tree/themes/shared/item.indigo.css.js +1 -1
  471. package/components/tree/themes/shared/item.indigo.css.js.map +1 -1
  472. package/components/tree/themes/shared/item.material.css.js +1 -1
  473. package/components/tree/themes/shared/item.material.css.js.map +1 -1
  474. package/custom-elements.json +5994 -2394
  475. package/igniteui-webcomponents.html-data.json +1 -1
  476. package/index.d.ts +2 -0
  477. package/index.js.map +1 -1
  478. package/package.json +1 -1
  479. package/themes/dark/indigo.css +1 -1
  480. package/themes/light/indigo.css +1 -1
  481. package/web-types.json +1 -1
  482. package/components/common/mixins/form-associated-required.d.ts +0 -16
  483. package/components/common/mixins/form-associated-required.js +0 -29
  484. package/components/common/mixins/form-associated-required.js.map +0 -1
  485. package/components/common/mixins/form-associated.d.ts +0 -92
  486. package/components/common/mixins/form-associated.js.map +0 -1
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `[part~=base]{gap:.5rem}[part~=base]:hover [part~=label]{color:var(--label-color-hover)}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom);color:var(--label-color)}[part~=control]{--size: 1rem;border-radius:var(--size);width:var(--size, 1.25rem);height:var(--size, 1.25rem);min-width:var(--size, 1.25rem);-webkit-transition:none;transition:none;background:none}[part~=control]::before,[part~=control]::after{border-radius:calc(var(--size)/2)}[part~=control]::after{border:.125rem solid var(--empty-color)}[part~=control]:hover::after{border:.125rem solid var(--hover-color)}[part="control checked"]::after{border-color:var(--fill-color)}[part="control checked"]::before{background:var(--fill-color);border-color:var(--fill-color)}[part="control checked"]:hover::after{border-color:var(--fill-hover-border-color)}[part="control checked"]:hover::before{background:var(--fill-color-hover);border-color:var(--fill-hover-border-color)}[part~=focused] [part=control]{-webkit-box-shadow:0 0 0 .1875rem var(--focus-outline-color);box-shadow:0 0 0 .1875rem var(--focus-outline-color)}[part~=focused] [part="control checked"]{-webkit-box-shadow:0 0 0 .1875rem var(--focus-outline-color-filled);box-shadow:0 0 0 .1875rem var(--focus-outline-color-filled)}:host(:not([disabled])[invalid]) [part~=base]:hover [part~=label],:host(:not(:disabled)[invalid]) [part~=base]:hover [part~=label]{color:var(--label-color-hover)}:host(:not([disabled])[invalid]) [part=label],:host(:not(:disabled)[invalid]) [part=label]{color:var(--label-color)}:host(:not([disabled])[invalid]) [part=control]::after,:host(:not(:disabled)[invalid]) [part=control]::after{border-color:var(--error-color)}:host(:not([disabled])[invalid]) [part=control]:hover::after,:host(:not(:disabled)[invalid]) [part=control]:hover::after{border-color:var(--error-color-hover)}:host(:not([disabled])[invalid]) [part="control checked"]::after,:host(:not(:disabled)[invalid]) [part="control checked"]::after{border-color:var(--error-color)}:host(:not([disabled])[invalid]) [part="control checked"]::before,:host(:not(:disabled)[invalid]) [part="control checked"]::before{background:var(--error-color)}:host(:not([disabled])[invalid]) [part="control checked"]:hover::after,:host(:not(:disabled)[invalid]) [part="control checked"]:hover::after{border-color:var(--error-color-hover)}:host(:not([disabled])[invalid]) [part="control checked"]:hover::before,:host(:not(:disabled)[invalid]) [part="control checked"]:hover::before{background:var(--error-color-hover)}:host(:not([disabled])[invalid]) [part~=focused] [part~=control],:host(:not([disabled])[invalid]) [part~=focused] [part="control checked"],:host(:not(:disabled)[invalid]) [part~=focused] [part~=control],:host(:not(:disabled)[invalid]) [part~=focused] [part="control checked"]{-webkit-box-shadow:0 0 0 .1875rem var(--focus-outline-color-error);box-shadow:0 0 0 .1875rem var(--focus-outline-color-error)}:host([disabled]) [part=control]::after,:host(:disabled) [part=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part="control checked"]::after,:host(:disabled) [part="control checked"]::after{border-color:var(--disabled-fill-color)}:host([disabled]) [part="control checked"]::before,:host(:disabled) [part="control checked"]::before{background:var(--disabled-fill-color)}`;
2
+ export const styles = css `[part~=base]{gap:.5rem}[part~=base]:hover [part~=label]{color:var(--label-color-hover)}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom);color:var(--label-color)}[part~=control]{--size: 1rem;border-radius:var(--size);width:var(--size, 1.25rem);height:var(--size, 1.25rem);min-width:var(--size, 1.25rem);transition:none;background:none}[part~=control]::before,[part~=control]::after{border-radius:calc(var(--size)/2)}[part~=control]::after{border:.125rem solid var(--empty-color)}[part~=control]:hover::after{border:.125rem solid var(--hover-color)}[part="control checked"]::after{border-color:var(--fill-color)}[part="control checked"]::before{background:var(--fill-color);border-color:var(--fill-color)}[part="control checked"]:hover::after{border-color:var(--fill-hover-border-color)}[part="control checked"]:hover::before{background:var(--fill-color-hover);border-color:var(--fill-hover-border-color)}[part~=focused] [part=control]{box-shadow:0 0 0 .1875rem var(--focus-outline-color)}[part~=focused] [part="control checked"]{box-shadow:0 0 0 .1875rem var(--focus-outline-color-filled)}:host(:not([disabled])[invalid]) [part~=base]:hover [part~=label],:host(:not(:disabled)[invalid]) [part~=base]:hover [part~=label]{color:var(--label-color-hover)}:host(:not([disabled])[invalid]) [part=label],:host(:not(:disabled)[invalid]) [part=label]{color:var(--label-color)}:host(:not([disabled])[invalid]) [part=control]::after,:host(:not(:disabled)[invalid]) [part=control]::after{border-color:var(--error-color)}:host(:not([disabled])[invalid]) [part=control]:hover::after,:host(:not(:disabled)[invalid]) [part=control]:hover::after{border-color:var(--error-color-hover)}:host(:not([disabled])[invalid]) [part="control checked"]::after,:host(:not(:disabled)[invalid]) [part="control checked"]::after{border-color:var(--error-color)}:host(:not([disabled])[invalid]) [part="control checked"]::before,:host(:not(:disabled)[invalid]) [part="control checked"]::before{background:var(--error-color)}:host(:not([disabled])[invalid]) [part="control checked"]:hover::after,:host(:not(:disabled)[invalid]) [part="control checked"]:hover::after{border-color:var(--error-color-hover)}:host(:not([disabled])[invalid]) [part="control checked"]:hover::before,:host(:not(:disabled)[invalid]) [part="control checked"]:hover::before{background:var(--error-color-hover)}:host(:not([disabled])[invalid]) [part~=focused] [part~=control],:host(:not([disabled])[invalid]) [part~=focused] [part="control checked"],:host(:not(:disabled)[invalid]) [part~=focused] [part~=control],:host(:not(:disabled)[invalid]) [part~=focused] [part="control checked"]{box-shadow:0 0 0 .1875rem var(--focus-outline-color-error)}:host([disabled]) [part=control]::after,:host(:disabled) [part=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part="control checked"]::after,:host(:disabled) [part="control checked"]::after{border-color:var(--disabled-fill-color)}:host([disabled]) [part="control checked"]::before,:host(:disabled) [part="control checked"]::before{background:var(--disabled-fill-color)}`;
3
3
  //# sourceMappingURL=radio.indigo.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/shared/radio.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,4kHAA4kH,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=base]{gap:.5rem}[part~=base]:hover [part~=label]{color:var(--label-color-hover)}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom);color:var(--label-color)}[part~=control]{--size: 1rem;border-radius:var(--size);width:var(--size, 1.25rem);height:var(--size, 1.25rem);min-width:var(--size, 1.25rem);-webkit-transition:none;transition:none;background:none}[part~=control]::before,[part~=control]::after{border-radius:calc(var(--size)/2)}[part~=control]::after{border:.125rem solid var(--empty-color)}[part~=control]:hover::after{border:.125rem solid var(--hover-color)}[part=\"control checked\"]::after{border-color:var(--fill-color)}[part=\"control checked\"]::before{background:var(--fill-color);border-color:var(--fill-color)}[part=\"control checked\"]:hover::after{border-color:var(--fill-hover-border-color)}[part=\"control checked\"]:hover::before{background:var(--fill-color-hover);border-color:var(--fill-hover-border-color)}[part~=focused] [part=control]{-webkit-box-shadow:0 0 0 .1875rem var(--focus-outline-color);box-shadow:0 0 0 .1875rem var(--focus-outline-color)}[part~=focused] [part=\"control checked\"]{-webkit-box-shadow:0 0 0 .1875rem var(--focus-outline-color-filled);box-shadow:0 0 0 .1875rem var(--focus-outline-color-filled)}:host(:not([disabled])[invalid]) [part~=base]:hover [part~=label],:host(:not(:disabled)[invalid]) [part~=base]:hover [part~=label]{color:var(--label-color-hover)}:host(:not([disabled])[invalid]) [part=label],:host(:not(:disabled)[invalid]) [part=label]{color:var(--label-color)}:host(:not([disabled])[invalid]) [part=control]::after,:host(:not(:disabled)[invalid]) [part=control]::after{border-color:var(--error-color)}:host(:not([disabled])[invalid]) [part=control]:hover::after,:host(:not(:disabled)[invalid]) [part=control]:hover::after{border-color:var(--error-color-hover)}:host(:not([disabled])[invalid]) [part=\"control checked\"]::after,:host(:not(:disabled)[invalid]) [part=\"control checked\"]::after{border-color:var(--error-color)}:host(:not([disabled])[invalid]) [part=\"control checked\"]::before,:host(:not(:disabled)[invalid]) [part=\"control checked\"]::before{background:var(--error-color)}:host(:not([disabled])[invalid]) [part=\"control checked\"]:hover::after,:host(:not(:disabled)[invalid]) [part=\"control checked\"]:hover::after{border-color:var(--error-color-hover)}:host(:not([disabled])[invalid]) [part=\"control checked\"]:hover::before,:host(:not(:disabled)[invalid]) [part=\"control checked\"]:hover::before{background:var(--error-color-hover)}:host(:not([disabled])[invalid]) [part~=focused] [part~=control],:host(:not([disabled])[invalid]) [part~=focused] [part=\"control checked\"],:host(:not(:disabled)[invalid]) [part~=focused] [part~=control],:host(:not(:disabled)[invalid]) [part~=focused] [part=\"control checked\"]{-webkit-box-shadow:0 0 0 .1875rem var(--focus-outline-color-error);box-shadow:0 0 0 .1875rem var(--focus-outline-color-error)}:host([disabled]) [part=control]::after,:host(:disabled) [part=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part=\"control checked\"]::after,:host(:disabled) [part=\"control checked\"]::after{border-color:var(--disabled-fill-color)}:host([disabled]) [part=\"control checked\"]::before,:host(:disabled) [part=\"control checked\"]::before{background:var(--disabled-fill-color)}`;\n"]}
1
+ {"version":3,"file":"radio.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/shared/radio.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,g3GAAg3G,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=base]{gap:.5rem}[part~=base]:hover [part~=label]{color:var(--label-color-hover)}[part~=label]{font-family:var(--ig-body-2-font-family, var(--ig-font-family));font-size:var(--ig-body-2-font-size);font-weight:var(--ig-body-2-font-weight);font-style:var(--ig-body-2-font-style);line-height:var(--ig-body-2-line-height);letter-spacing:var(--ig-body-2-letter-spacing);text-transform:var(--ig-body-2-text-transform);margin-top:var(--ig-body-2-margin-top);margin-bottom:var(--ig-body-2-margin-bottom);color:var(--label-color)}[part~=control]{--size: 1rem;border-radius:var(--size);width:var(--size, 1.25rem);height:var(--size, 1.25rem);min-width:var(--size, 1.25rem);transition:none;background:none}[part~=control]::before,[part~=control]::after{border-radius:calc(var(--size)/2)}[part~=control]::after{border:.125rem solid var(--empty-color)}[part~=control]:hover::after{border:.125rem solid var(--hover-color)}[part=\"control checked\"]::after{border-color:var(--fill-color)}[part=\"control checked\"]::before{background:var(--fill-color);border-color:var(--fill-color)}[part=\"control checked\"]:hover::after{border-color:var(--fill-hover-border-color)}[part=\"control checked\"]:hover::before{background:var(--fill-color-hover);border-color:var(--fill-hover-border-color)}[part~=focused] [part=control]{box-shadow:0 0 0 .1875rem var(--focus-outline-color)}[part~=focused] [part=\"control checked\"]{box-shadow:0 0 0 .1875rem var(--focus-outline-color-filled)}:host(:not([disabled])[invalid]) [part~=base]:hover [part~=label],:host(:not(:disabled)[invalid]) [part~=base]:hover [part~=label]{color:var(--label-color-hover)}:host(:not([disabled])[invalid]) [part=label],:host(:not(:disabled)[invalid]) [part=label]{color:var(--label-color)}:host(:not([disabled])[invalid]) [part=control]::after,:host(:not(:disabled)[invalid]) [part=control]::after{border-color:var(--error-color)}:host(:not([disabled])[invalid]) [part=control]:hover::after,:host(:not(:disabled)[invalid]) [part=control]:hover::after{border-color:var(--error-color-hover)}:host(:not([disabled])[invalid]) [part=\"control checked\"]::after,:host(:not(:disabled)[invalid]) [part=\"control checked\"]::after{border-color:var(--error-color)}:host(:not([disabled])[invalid]) [part=\"control checked\"]::before,:host(:not(:disabled)[invalid]) [part=\"control checked\"]::before{background:var(--error-color)}:host(:not([disabled])[invalid]) [part=\"control checked\"]:hover::after,:host(:not(:disabled)[invalid]) [part=\"control checked\"]:hover::after{border-color:var(--error-color-hover)}:host(:not([disabled])[invalid]) [part=\"control checked\"]:hover::before,:host(:not(:disabled)[invalid]) [part=\"control checked\"]:hover::before{background:var(--error-color-hover)}:host(:not([disabled])[invalid]) [part~=focused] [part~=control],:host(:not([disabled])[invalid]) [part~=focused] [part=\"control checked\"],:host(:not(:disabled)[invalid]) [part~=focused] [part~=control],:host(:not(:disabled)[invalid]) [part~=focused] [part=\"control checked\"]{box-shadow:0 0 0 .1875rem var(--focus-outline-color-error)}:host([disabled]) [part=control]::after,:host(:disabled) [part=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part=\"control checked\"]::after,:host(:disabled) [part=\"control checked\"]::after{border-color:var(--disabled-fill-color)}:host([disabled]) [part=\"control checked\"]::before,:host(:disabled) [part=\"control checked\"]::before{background:var(--disabled-fill-color)}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `[part~=ripple]{border-radius:var(--size);display:block;position:absolute;top:calc(50% - 1.25rem);width:calc(var(--size)*2);height:calc(var(--size)*2);min-width:calc(var(--size)*2);overflow:hidden;pointer-events:none;-webkit-filter:opacity(1);filter:opacity(1)}[part~=base]{gap:.125rem}[part~=base]:hover [part~=ripple]{background:var(--empty-color);opacity:.06}[part~=base]:hover [part="ripple checked"]{background:var(--fill-color);opacity:.06}[part~=base]:focus-visible [part=ripple],[part~=base][part~=focused] [part=ripple]{background:var(--empty-color);opacity:.12}[part~=base]:focus-visible [part="ripple checked"],[part~=base][part~=focused] [part="ripple checked"]{background:var(--fill-color);opacity:.12}[part~=control]{border-radius:var(--size);position:relative}[part~=control]::before,[part~=control]::after{border-radius:calc(var(--size)/2)}[part~=control]::after{border:calc(var(--size)/10) solid var(--empty-color)}[part="control checked"]::before{border-color:var(--fill-color);background:var(--fill-color)}[part="control checked"]::after{border-color:var(--fill-color)}:host(:not([disabled])[invalid]) [part~=control]::after{border-color:var(--error-color)}:host(:not([disabled])[invalid]) [part="control checked"]::before{background:var(--error-color)}:host(:not([disabled])[invalid]) [part~=base]:hover [part~=ripple]{background:var(--error-color)}:host(:not([disabled])[invalid]) [part~=base]:focus-visible [part~=ripple],:host(:not([disabled])[invalid]) [part~=base][part~=focused] [part~=ripple]{background:var(--error-color)}:host([disabled]) [part~=control]::after,:host(:disabled) [part~=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part="control checked"]::before,:host(:disabled) [part="control checked"]::before{background:var(--disabled-color);border-color:var(--disabled-color)}`;
2
+ export const styles = css `[part~=ripple]{border-radius:var(--size);display:block;position:absolute;top:calc(50% - 1.25rem);width:calc(var(--size)*2);height:calc(var(--size)*2);min-width:calc(var(--size)*2);overflow:hidden;pointer-events:none;filter:opacity(1)}[part~=base]{gap:.125rem}[part~=base]:hover [part~=ripple]{background:var(--empty-color);opacity:.06}[part~=base]:hover [part="ripple checked"]{background:var(--fill-color);opacity:.06}[part~=base]:focus-visible [part=ripple],[part~=base][part~=focused] [part=ripple]{background:var(--empty-color);opacity:.12}[part~=base]:focus-visible [part="ripple checked"],[part~=base][part~=focused] [part="ripple checked"]{background:var(--fill-color);opacity:.12}[part~=control]{border-radius:var(--size);position:relative}[part~=control]::before,[part~=control]::after{border-radius:calc(var(--size)/2)}[part~=control]::after{border:calc(var(--size)/10) solid var(--empty-color)}[part="control checked"]::before{border-color:var(--fill-color);background:var(--fill-color)}[part="control checked"]::after{border-color:var(--fill-color)}:host(:not([disabled])[invalid]) [part~=control]::after{border-color:var(--error-color)}:host(:not([disabled])[invalid]) [part="control checked"]::before{background:var(--error-color)}:host(:not([disabled])[invalid]) [part~=base]:hover [part~=ripple]{background:var(--error-color)}:host(:not([disabled])[invalid]) [part~=base]:focus-visible [part~=ripple],:host(:not([disabled])[invalid]) [part~=base][part~=focused] [part~=ripple]{background:var(--error-color)}:host([disabled]) [part~=control]::after,:host(:disabled) [part~=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part="control checked"]::before,:host(:disabled) [part="control checked"]::before{background:var(--disabled-color);border-color:var(--disabled-color)}`;
3
3
  //# sourceMappingURL=radio.material.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio.material.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/shared/radio.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,4yDAA4yD,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=ripple]{border-radius:var(--size);display:block;position:absolute;top:calc(50% - 1.25rem);width:calc(var(--size)*2);height:calc(var(--size)*2);min-width:calc(var(--size)*2);overflow:hidden;pointer-events:none;-webkit-filter:opacity(1);filter:opacity(1)}[part~=base]{gap:.125rem}[part~=base]:hover [part~=ripple]{background:var(--empty-color);opacity:.06}[part~=base]:hover [part=\"ripple checked\"]{background:var(--fill-color);opacity:.06}[part~=base]:focus-visible [part=ripple],[part~=base][part~=focused] [part=ripple]{background:var(--empty-color);opacity:.12}[part~=base]:focus-visible [part=\"ripple checked\"],[part~=base][part~=focused] [part=\"ripple checked\"]{background:var(--fill-color);opacity:.12}[part~=control]{border-radius:var(--size);position:relative}[part~=control]::before,[part~=control]::after{border-radius:calc(var(--size)/2)}[part~=control]::after{border:calc(var(--size)/10) solid var(--empty-color)}[part=\"control checked\"]::before{border-color:var(--fill-color);background:var(--fill-color)}[part=\"control checked\"]::after{border-color:var(--fill-color)}:host(:not([disabled])[invalid]) [part~=control]::after{border-color:var(--error-color)}:host(:not([disabled])[invalid]) [part=\"control checked\"]::before{background:var(--error-color)}:host(:not([disabled])[invalid]) [part~=base]:hover [part~=ripple]{background:var(--error-color)}:host(:not([disabled])[invalid]) [part~=base]:focus-visible [part~=ripple],:host(:not([disabled])[invalid]) [part~=base][part~=focused] [part~=ripple]{background:var(--error-color)}:host([disabled]) [part~=control]::after,:host(:disabled) [part~=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part=\"control checked\"]::before,:host(:disabled) [part=\"control checked\"]::before{background:var(--disabled-color);border-color:var(--disabled-color)}`;\n"]}
1
+ {"version":3,"file":"radio.material.css.js","sourceRoot":"","sources":["../../../../../src/components/radio/themes/shared/radio.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,kxDAAkxD,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=ripple]{border-radius:var(--size);display:block;position:absolute;top:calc(50% - 1.25rem);width:calc(var(--size)*2);height:calc(var(--size)*2);min-width:calc(var(--size)*2);overflow:hidden;pointer-events:none;filter:opacity(1)}[part~=base]{gap:.125rem}[part~=base]:hover [part~=ripple]{background:var(--empty-color);opacity:.06}[part~=base]:hover [part=\"ripple checked\"]{background:var(--fill-color);opacity:.06}[part~=base]:focus-visible [part=ripple],[part~=base][part~=focused] [part=ripple]{background:var(--empty-color);opacity:.12}[part~=base]:focus-visible [part=\"ripple checked\"],[part~=base][part~=focused] [part=\"ripple checked\"]{background:var(--fill-color);opacity:.12}[part~=control]{border-radius:var(--size);position:relative}[part~=control]::before,[part~=control]::after{border-radius:calc(var(--size)/2)}[part~=control]::after{border:calc(var(--size)/10) solid var(--empty-color)}[part=\"control checked\"]::before{border-color:var(--fill-color);background:var(--fill-color)}[part=\"control checked\"]::after{border-color:var(--fill-color)}:host(:not([disabled])[invalid]) [part~=control]::after{border-color:var(--error-color)}:host(:not([disabled])[invalid]) [part=\"control checked\"]::before{background:var(--error-color)}:host(:not([disabled])[invalid]) [part~=base]:hover [part~=ripple]{background:var(--error-color)}:host(:not([disabled])[invalid]) [part~=base]:focus-visible [part~=ripple],:host(:not([disabled])[invalid]) [part~=base][part~=focused] [part~=ripple]{background:var(--error-color)}:host([disabled]) [part~=control]::after,:host(:disabled) [part~=control]::after{border-color:var(--disabled-color)}:host([disabled]) [part=\"control checked\"]::before,:host(:disabled) [part=\"control checked\"]::before{background:var(--disabled-color);border-color:var(--disabled-color)}`;\n"]}
@@ -16,7 +16,7 @@ export function getGroup(member) {
16
16
  }
17
17
  return result;
18
18
  }
19
- const iterator = iterNodes(globalThis.document.documentElement, 'SHOW_ELEMENT', (radio) => radio.matches(`${member.tagName}[name='${member.name}']`));
19
+ const iterator = iterNodes(globalThis.document.documentElement, 'SHOW_ELEMENT', (radio) => radio.matches(member.tagName) && radio.name === member.name);
20
20
  for (const each of iterator) {
21
21
  result.radios.push(each);
22
22
  if (!each.disabled) {
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/components/radio/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAc9C,MAAM,UAAU,QAAQ,CAAC,MAAyB;IAChD,MAAM,MAAM,GAAqB;QAC/B,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,EAAE;KACb,CAAC;IAIF,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE3B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,QAAQ,GAAG,SAAS,CACxB,UAAU,CAAC,QAAQ,CAAC,eAAe,EACnC,cAAc,EACd,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,IAAI,IAAI,CAAC,CACrE,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEzB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["import { iterNodes } from '../common/util.js';\nimport type IgcRadioComponent from './radio.js';\n\ntype RadioQueryResult = {\n /** Radio components under the same group name */\n radios: IgcRadioComponent[];\n /** Radio components under the same group name that are not disabled */\n active: IgcRadioComponent[];\n /** Radio components under the same group name sans the radio member passed in `getGroup` */\n siblings: IgcRadioComponent[];\n /** Radio components under the same group name that are marked as checked */\n checked: IgcRadioComponent[];\n};\n\nexport function getGroup(member: IgcRadioComponent) {\n const result: RadioQueryResult = {\n active: [],\n checked: [],\n radios: [],\n siblings: [],\n };\n\n // No name property for the passed radio. Skip DOM search and return a group of one radio\n // with appropriate states.\n if (!member.name) {\n result.radios.push(member);\n\n if (member.checked) {\n result.checked.push(member);\n }\n\n if (!member.disabled) {\n result.active.push(member);\n }\n\n return result;\n }\n\n const iterator = iterNodes<IgcRadioComponent>(\n globalThis.document.documentElement,\n 'SHOW_ELEMENT',\n (radio) => radio.matches(`${member.tagName}[name='${member.name}']`)\n );\n\n for (const each of iterator) {\n result.radios.push(each);\n\n if (!each.disabled) {\n result.active.push(each);\n }\n\n if (each.checked) {\n result.checked.push(each);\n }\n\n if (each !== member) {\n result.siblings.push(each);\n }\n }\n\n return result;\n}\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/components/radio/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAc9C,MAAM,UAAU,QAAQ,CAAC,MAAyB;IAChD,MAAM,MAAM,GAAqB;QAC/B,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,EAAE;KACb,CAAC;IAIF,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE3B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,QAAQ,GAAG,SAAS,CACxB,UAAU,CAAC,QAAQ,CAAC,eAAe,EACnC,cAAc,EACd,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CACvE,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEzB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["import { iterNodes } from '../common/util.js';\nimport type IgcRadioComponent from './radio.js';\n\ntype RadioQueryResult = {\n /** Radio components under the same group name */\n radios: IgcRadioComponent[];\n /** Radio components under the same group name that are not disabled */\n active: IgcRadioComponent[];\n /** Radio components under the same group name sans the radio member passed in `getGroup` */\n siblings: IgcRadioComponent[];\n /** Radio components under the same group name that are marked as checked */\n checked: IgcRadioComponent[];\n};\n\nexport function getGroup(member: IgcRadioComponent) {\n const result: RadioQueryResult = {\n active: [],\n checked: [],\n radios: [],\n siblings: [],\n };\n\n // No name property for the passed radio. Skip DOM search and return a group of one radio\n // with appropriate states.\n if (!member.name) {\n result.radios.push(member);\n\n if (member.checked) {\n result.checked.push(member);\n }\n\n if (!member.disabled) {\n result.active.push(member);\n }\n\n return result;\n }\n\n const iterator = iterNodes<IgcRadioComponent>(\n globalThis.document.documentElement,\n 'SHOW_ELEMENT',\n (radio) => radio.matches(member.tagName) && radio.name === member.name\n );\n\n for (const each of iterator) {\n result.radios.push(each);\n\n if (!each.disabled) {\n result.active.push(each);\n }\n\n if (each.checked) {\n result.checked.push(each);\n }\n\n if (each !== member) {\n result.siblings.push(each);\n }\n }\n\n return result;\n}\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size);scrollbar-color:var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size);height:var(--ig-scrollbar-size);background:var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background)}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{display:-webkit-box;display:-ms-flexbox;display:flex}:host([alignment=vertical]){-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:.5rem}:host([alignment=horizontal]){-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;gap:.5rem}`;
2
+ export const styles = css `:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size);scrollbar-color:var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size);height:var(--ig-scrollbar-size);background:var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background)}:host *,:host *::before,:host *::after{box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{display:flex}:host([alignment=vertical]){flex-direction:column;gap:.5rem}:host([alignment=horizontal]){flex-direction:row;gap:.5rem}`;
3
3
  //# sourceMappingURL=radio-group.base.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio-group.base.css.js","sourceRoot":"","sources":["../../../src/components/radio-group/radio-group.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,qsCAAqsC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size);scrollbar-color:var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size);height:var(--ig-scrollbar-size);background:var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background)}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{display:-webkit-box;display:-ms-flexbox;display:flex}:host([alignment=vertical]){-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:.5rem}:host([alignment=horizontal]){-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;gap:.5rem}`;\n"]}
1
+ {"version":3,"file":"radio-group.base.css.js","sourceRoot":"","sources":["../../../src/components/radio-group/radio-group.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,47BAA47B,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size);scrollbar-color:var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size);height:var(--ig-scrollbar-size);background:var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background)}:host *,:host *::before,:host *::after{box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{display:flex}:host([alignment=vertical]){flex-direction:column;gap:.5rem}:host([alignment=horizontal]){flex-direction:row;gap:.5rem}`;\n"]}
@@ -60,7 +60,7 @@ let IgcRadioGroupComponent = IgcRadioGroupComponent_1 = class IgcRadioGroupCompo
60
60
  }
61
61
  _setDefaultValue() {
62
62
  for (const radio of this._radios) {
63
- Object.assign(radio, { _defaultValue: radio.checked });
63
+ radio.toggleAttribute('checked', radio.checked);
64
64
  }
65
65
  }
66
66
  _setSelectedRadio() {
@@ -1 +1 @@
1
- {"version":3,"file":"radio-group.js","sourceRoot":"","sources":["../../../src/components/radio-group/radio-group.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement, html } from 'lit';\nimport { property, queryAssignedElements } from 'lit/decorators.js';\n\nimport { themes } from '../../theming/theming-decorator.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport IgcRadioComponent from '../radio/radio.js';\nimport { styles } from './radio-group.base.css.js';\nimport { styles as fluent } from './radio-group.fluent.css.js';\nimport { styles as indigo } from './radio-group.indigo.css.js';\nimport { styles as material } from './radio-group.material.css.js';\n\n/**\n * The igc-radio-group component unifies one or more igc-radio buttons.\n *\n * @element igc-radio-group\n *\n * @slot - Default slot\n */\n@themes({\n light: { material, fluent, indigo },\n dark: { material, fluent, indigo },\n})\nexport default class IgcRadioGroupComponent extends LitElement {\n public static readonly tagName = 'igc-radio-group';\n public static override styles = styles;\n\n /* blazorSuppress */\n public static register() {\n registerComponent(IgcRadioGroupComponent, IgcRadioComponent);\n }\n\n private _internals: ElementInternals;\n private _name!: string;\n private _value!: string;\n\n @queryAssignedElements({ flatten: true })\n private _radios!: NodeListOf<IgcRadioComponent>;\n\n /**\n * Alignment of the radio controls inside this group.\n * @attr\n */\n @property({ reflect: true })\n public alignment: 'vertical' | 'horizontal' = 'vertical';\n\n /**\n * Gets/Sets the name for all child igc-radio components.\n * @attr\n */\n @property({ reflect: true })\n public set name(value: string) {\n this._name = value;\n this._setRadiosName();\n }\n\n public get name(): string {\n return this._name;\n }\n\n /* @tsTwoWayProperty(true, \"igcChange\", \"detail.value\", false) */\n /**\n * Gets/Sets the checked igc-radio element that matches `value`\n * @attr\n */\n @property()\n public set value(value: string) {\n this._value = value;\n this._setSelectedRadio();\n }\n\n public get value(): string {\n if (this._radios.length) {\n this._value =\n Array.from(this._radios).find((radio) => radio.checked)?.value ?? '';\n }\n\n return this._value;\n }\n\n constructor() {\n super();\n\n this._internals = this.attachInternals();\n this._internals.role = 'radiogroup';\n }\n\n protected override firstUpdated() {\n const radios = Array.from(this._radios);\n const allRadiosUnchecked = radios.every((radio) => !radio.checked);\n\n this._setRadiosName();\n\n if (allRadiosUnchecked && this._value) {\n this._setSelectedRadio();\n this._setDefaultValue();\n }\n }\n\n private _setRadiosName() {\n if (this._name) {\n for (const radio of this._radios) {\n radio.name = this._name;\n }\n }\n }\n\n private _setDefaultValue() {\n for (const radio of this._radios) {\n Object.assign(radio, { _defaultValue: radio.checked });\n }\n }\n\n private _setSelectedRadio() {\n for (const radio of this._radios) {\n radio.checked = radio.value === this._value;\n }\n }\n\n protected override render() {\n return html`<slot></slot>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-radio-group': IgcRadioGroupComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"radio-group.js","sourceRoot":"","sources":["../../../src/components/radio-group/radio-group.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement, html } from 'lit';\nimport { property, queryAssignedElements } from 'lit/decorators.js';\n\nimport { themes } from '../../theming/theming-decorator.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport IgcRadioComponent from '../radio/radio.js';\nimport { styles } from './radio-group.base.css.js';\nimport { styles as fluent } from './radio-group.fluent.css.js';\nimport { styles as indigo } from './radio-group.indigo.css.js';\nimport { styles as material } from './radio-group.material.css.js';\n\n/**\n * The igc-radio-group component unifies one or more igc-radio buttons.\n *\n * @element igc-radio-group\n *\n * @slot - Default slot\n */\n@themes({\n light: { material, fluent, indigo },\n dark: { material, fluent, indigo },\n})\nexport default class IgcRadioGroupComponent extends LitElement {\n public static readonly tagName = 'igc-radio-group';\n public static override styles = styles;\n\n /* blazorSuppress */\n public static register() {\n registerComponent(IgcRadioGroupComponent, IgcRadioComponent);\n }\n\n private _internals: ElementInternals;\n private _name!: string;\n private _value!: string;\n\n @queryAssignedElements({ flatten: true })\n private _radios!: NodeListOf<IgcRadioComponent>;\n\n /**\n * Alignment of the radio controls inside this group.\n * @attr\n */\n @property({ reflect: true })\n public alignment: 'vertical' | 'horizontal' = 'vertical';\n\n /**\n * Gets/Sets the name for all child igc-radio components.\n * @attr\n */\n @property({ reflect: true })\n public set name(value: string) {\n this._name = value;\n this._setRadiosName();\n }\n\n public get name(): string {\n return this._name;\n }\n\n /* @tsTwoWayProperty(true, \"igcChange\", \"detail.value\", false) */\n /**\n * Gets/Sets the checked igc-radio element that matches `value`\n * @attr\n */\n @property()\n public set value(value: string) {\n this._value = value;\n this._setSelectedRadio();\n }\n\n public get value(): string {\n if (this._radios.length) {\n this._value =\n Array.from(this._radios).find((radio) => radio.checked)?.value ?? '';\n }\n\n return this._value;\n }\n\n constructor() {\n super();\n\n this._internals = this.attachInternals();\n this._internals.role = 'radiogroup';\n }\n\n protected override firstUpdated() {\n const radios = Array.from(this._radios);\n const allRadiosUnchecked = radios.every((radio) => !radio.checked);\n\n this._setRadiosName();\n\n if (allRadiosUnchecked && this._value) {\n this._setSelectedRadio();\n this._setDefaultValue();\n }\n }\n\n private _setRadiosName() {\n if (this._name) {\n for (const radio of this._radios) {\n radio.name = this._name;\n }\n }\n }\n\n private _setDefaultValue() {\n for (const radio of this._radios) {\n radio.toggleAttribute('checked', radio.checked);\n }\n }\n\n private _setSelectedRadio() {\n for (const radio of this._radios) {\n radio.checked = radio.value === this._value;\n }\n }\n\n protected override render() {\n return html`<slot></slot>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-radio-group': IgcRadioGroupComponent;\n }\n}\n"]}
@@ -5,7 +5,7 @@ export interface IgcRatingEventMap {
5
5
  igcChange: CustomEvent<number>;
6
6
  igcHover: CustomEvent<number>;
7
7
  }
8
- declare const IgcRatingComponent_base: Constructor<import("../common/mixins/form-associated.js").FormAssociatedElementInterface> & Constructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcRatingEventMap>> & Constructor<LitElement>;
8
+ declare const IgcRatingComponent_base: Constructor<import("../common/mixins/forms/types.js").FormAssociatedElementInterface> & Constructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcRatingEventMap>> & Constructor<LitElement>;
9
9
  /**
10
10
  * Rating provides insight regarding others' opinions and experiences,
11
11
  * and can allow the user to submit a rating of their own
@@ -99,12 +99,13 @@ export default class IgcRatingComponent extends IgcRatingComponent_base {
99
99
  protected handlePrecisionChange(): void;
100
100
  protected handleSelectionChange(): void;
101
101
  constructor();
102
- protected handleClick({ clientX }: MouseEvent): void;
103
- protected handleMouseMove({ clientX }: MouseEvent): void;
102
+ protected handleClick({ clientX }: PointerEvent): void;
103
+ protected handlePointerMove({ clientX }: PointerEvent): void;
104
104
  protected emitValueUpdate(value: number): void;
105
105
  protected handleSlotChange(): void;
106
106
  protected handleHoverEnabled(): void;
107
107
  protected handleHoverDisabled(): void;
108
+ protected _setInitialDefaultValue(): void;
108
109
  protected calcNewValue(x: number): number;
109
110
  protected getPrecision(num: number): number;
110
111
  protected round(value: number): number;
@@ -15,7 +15,7 @@ import { addKeybindings, arrowDown, arrowLeft, arrowRight, arrowUp, endKey, home
15
15
  import { watch } from '../common/decorators/watch.js';
16
16
  import { registerComponent } from '../common/definitions/register.js';
17
17
  import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
18
- import { FormAssociatedMixin } from '../common/mixins/form-associated.js';
18
+ import { FormAssociatedMixin } from '../common/mixins/forms/associated.js';
19
19
  import { clamp, formatString, isLTR } from '../common/util.js';
20
20
  import IgcIconComponent from '../icon/icon.js';
21
21
  import IgcRatingSymbolComponent from './rating-symbol.js';
@@ -48,9 +48,8 @@ let IgcRatingComponent = IgcRatingComponent_1 = class IgcRatingComponent extends
48
48
  }
49
49
  handleValueChange() {
50
50
  this.value = clamp(Number.isNaN(this.value) ? 0 : this.value, 0, this.max);
51
- this.setFormValue(`${this.value}`, `${this.value}`);
52
- this.updateValidity();
53
- this.setInvalidState();
51
+ this._setFormValue(this.value.toString());
52
+ this._validate();
54
53
  }
55
54
  handlePrecisionChange() {
56
55
  this.step = !this.single ? clamp(this.step, 0.001, 1) : 1;
@@ -93,7 +92,7 @@ let IgcRatingComponent = IgcRatingComponent_1 = class IgcRatingComponent extends
93
92
  this.emitValueUpdate(value);
94
93
  }
95
94
  }
96
- handleMouseMove({ clientX }) {
95
+ handlePointerMove({ clientX }) {
97
96
  const value = this.calcNewValue(clientX);
98
97
  if (this.hoverValue !== value) {
99
98
  this.hoverValue = value;
@@ -118,6 +117,9 @@ let IgcRatingComponent = IgcRatingComponent_1 = class IgcRatingComponent extends
118
117
  handleHoverDisabled() {
119
118
  this.hoverState = false;
120
119
  }
120
+ _setInitialDefaultValue() {
121
+ this._defaultValue = this.value;
122
+ }
121
123
  calcNewValue(x) {
122
124
  const { width, left, right } = this.container.getBoundingClientRect();
123
125
  const percent = isLTR(this) ? (x - left) / width : (right - x) / width;
@@ -170,19 +172,19 @@ let IgcRatingComponent = IgcRatingComponent_1 = class IgcRatingComponent extends
170
172
  }
171
173
  }
172
174
  clipProjected() {
173
- if (this.hasProjectedSymbols) {
174
- const ltr = isLTR(this);
175
- this.ratingSymbols.forEach((symbol, i) => {
176
- const full = symbol.shadowRoot?.querySelector('[part="symbol full"]');
177
- const empty = symbol.shadowRoot?.querySelector('[part="symbol empty"]');
178
- const { forward, backward } = this.clipSymbol(i, ltr);
179
- if (full) {
180
- full.style.clipPath = forward;
181
- }
182
- if (empty) {
183
- empty.style.clipPath = backward;
184
- }
185
- });
175
+ const ltr = isLTR(this);
176
+ const partFull = '[part="symbol full"]';
177
+ const partEmpty = '[part="symbol empty"]';
178
+ for (const [i, symbol] of this.ratingSymbols.entries()) {
179
+ const full = symbol.renderRoot.querySelector(partFull);
180
+ const empty = symbol.renderRoot.querySelector(partEmpty);
181
+ const { forward, backward } = this.clipSymbol(i, ltr);
182
+ if (full) {
183
+ full.style.clipPath = forward;
184
+ }
185
+ if (empty) {
186
+ empty.style.clipPath = backward;
187
+ }
186
188
  }
187
189
  }
188
190
  render() {
@@ -214,15 +216,14 @@ let IgcRatingComponent = IgcRatingComponent_1 = class IgcRatingComponent extends
214
216
  aria-hidden="true"
215
217
  part="symbols"
216
218
  @click=${this.isInteractive ? this.handleClick : nothing}
217
- @mouseenter=${hoverActive ? this.handleHoverEnabled : nothing}
218
- @mouseleave=${hoverActive ? this.handleHoverDisabled : nothing}
219
- @mousemove=${hoverActive ? this.handleMouseMove : nothing}
219
+ @pointerenter=${hoverActive ? this.handleHoverEnabled : nothing}
220
+ @pointerleave=${hoverActive ? this.handleHoverDisabled : nothing}
221
+ @pointermove=${hoverActive ? this.handlePointerMove : nothing}
220
222
  >
221
223
  <slot name="symbol" @slotchange=${this.handleSlotChange}>
222
- ${guard(props, () => {
223
- this.clipProjected();
224
- return this.renderSymbols();
225
- })}
224
+ ${guard(props, () => this.hasProjectedSymbols
225
+ ? this.clipProjected()
226
+ : this.renderSymbols())}
226
227
  </slot>
227
228
  </div>
228
229
  <label part="value-label" ?hidden=${this.valueLabel.length === 0}>
@@ -1 +1 @@
1
- {"version":3,"file":"rating.js","sourceRoot":"","sources":["../../../src/components/rating/rating.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement, html, nothing } from 'lit';\nimport {\n property,\n query,\n queryAssignedElements,\n queryAssignedNodes,\n state,\n} from 'lit/decorators.js';\nimport { guard } from 'lit/directives/guard.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { styleMap } from 'lit/directives/style-map.js';\n\nimport { themes } from '../../theming/theming-decorator.js';\nimport {\n addKeybindings,\n arrowDown,\n arrowLeft,\n arrowRight,\n arrowUp,\n endKey,\n homeKey,\n} from '../common/controllers/key-bindings.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport type { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { FormAssociatedMixin } from '../common/mixins/form-associated.js';\nimport { clamp, formatString, isLTR } from '../common/util.js';\nimport IgcIconComponent from '../icon/icon.js';\nimport IgcRatingSymbolComponent from './rating-symbol.js';\nimport { styles } from './themes/rating.base.css.js';\nimport { styles as shared } from './themes/shared/rating.common.css.js';\nimport { all } from './themes/themes.js';\n\nexport interface IgcRatingEventMap {\n igcChange: CustomEvent<number>;\n igcHover: CustomEvent<number>;\n}\n\n/**\n * Rating provides insight regarding others' opinions and experiences,\n * and can allow the user to submit a rating of their own\n *\n * @element igc-rating\n *\n * @fires igcChange - Emitted when the value of the control changes.\n * @fires igcHover - Emitted when hover is enabled and the user mouses over a symbol of the rating.\n *\n * @csspart base - The main wrapper which holds all of the rating elements.\n * @csspart label - The label part.\n * @csspart 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(all)\nexport default class IgcRatingComponent extends FormAssociatedMixin(\n EventEmitterMixin<IgcRatingEventMap, Constructor<LitElement>>(LitElement)\n) {\n public static readonly tagName = 'igc-rating';\n public static styles = [styles, shared];\n\n /* blazorSuppress */\n public static register() {\n registerComponent(\n IgcRatingComponent,\n IgcIconComponent,\n IgcRatingSymbolComponent\n );\n }\n\n @queryAssignedElements({\n selector: IgcRatingSymbolComponent.tagName,\n slot: 'symbol',\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 return this.valueFormat\n ? formatString(this.valueFormat, value, 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 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 /* @tsTwoWayProperty(true, \"igcChange\", \"detail\", false) */\n /**\n * The current value of the component\n * @attr\n */\n @property({ type: Number })\n public value = 0;\n\n /**\n * Sets hover preview behavior for the component\n * @attr hover-preview\n */\n @property({ type: Boolean, reflect: true, attribute: 'hover-preview' })\n public hoverPreview = false;\n\n /**\n * Makes the control a readonly field.\n * @attr readonly\n */\n @property({ type: Boolean, reflect: true, attribute: 'readonly' })\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 /**\n * Whether to reset the rating when the user selects the same value.\n * @attr allow-reset\n */\n @property({ type: Boolean, reflect: true, attribute: 'allow-reset' })\n public allowReset = false;\n\n @watch('max')\n protected handleMaxChange() {\n this.max = this.hasProjectedSymbols\n ? this.ratingSymbols.length\n : Math.max(0, this.max);\n\n if (this.max < this.value) {\n this.value = this.max;\n }\n }\n\n @watch('value')\n protected handleValueChange() {\n this.value = clamp(Number.isNaN(this.value) ? 0 : this.value, 0, this.max);\n this.setFormValue(`${this.value}`, `${this.value}`);\n this.updateValidity();\n this.setInvalidState();\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\n addKeybindings(this, {\n skip: () => !this.isInteractive,\n bindingDefaults: { preventDefault: true },\n })\n .set(arrowUp, () => this.emitValueUpdate(this.value + this.step))\n .set(arrowRight, () =>\n this.emitValueUpdate(\n isLTR(this) ? this.value + this.step : this.value - this.step\n )\n )\n .set(arrowDown, () => this.emitValueUpdate(this.value - this.step))\n .set(arrowLeft, () =>\n this.emitValueUpdate(\n isLTR(this) ? this.value - this.step : this.value + this.step\n )\n )\n .set(homeKey, () => this.emitValueUpdate(this.step))\n .set(endKey, () => this.emitValueUpdate(this.max));\n }\n\n protected handleClick({ clientX }: MouseEvent) {\n const value = this.calcNewValue(clientX);\n const sameValue = this.value === value;\n\n if (this.allowReset && sameValue) {\n this.emitValueUpdate(0);\n } else if (!sameValue) {\n this.emitValueUpdate(value);\n }\n }\n\n protected handleMouseMove({ clientX }: MouseEvent) {\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 emitValueUpdate(value: number) {\n this.value = clamp(value, 0, this.max);\n if (value === this.value) {\n this.emitEvent('igcChange', { detail: this.value });\n }\n }\n\n protected handleSlotChange() {\n if (this.hasProjectedSymbols) {\n this.max = this.ratingSymbols.length;\n this.requestUpdate();\n }\n }\n\n protected handleHoverEnabled() {\n this.hoverState = true;\n }\n\n protected handleHoverDisabled() {\n this.hoverState = false;\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 return Number(\n (Math.round(value / this.step) * this.step).toFixed(\n this.getPrecision(this.step)\n )\n );\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=\"default\"\n name=\"star_filled\"\n style=${styleMap({ clipPath: forward })}\n ></igc-icon>\n <igc-icon\n collection=\"default\"\n name=\"star_outlined\"\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 const hoverActive = this.hoverPreview && this.isInteractive;\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.isInteractive ? this.handleClick : nothing}\n @mouseenter=${hoverActive ? this.handleHoverEnabled : nothing}\n @mouseleave=${hoverActive ? this.handleHoverDisabled : nothing}\n @mousemove=${hoverActive ? 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"]}
1
+ {"version":3,"file":"rating.js","sourceRoot":"","sources":["../../../src/components/rating/rating.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement, html, nothing } from 'lit';\nimport {\n property,\n query,\n queryAssignedElements,\n queryAssignedNodes,\n state,\n} from 'lit/decorators.js';\nimport { guard } from 'lit/directives/guard.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { styleMap } from 'lit/directives/style-map.js';\n\nimport { themes } from '../../theming/theming-decorator.js';\nimport {\n addKeybindings,\n arrowDown,\n arrowLeft,\n arrowRight,\n arrowUp,\n endKey,\n homeKey,\n} from '../common/controllers/key-bindings.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport type { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { FormAssociatedMixin } from '../common/mixins/forms/associated.js';\nimport { clamp, formatString, isLTR } from '../common/util.js';\nimport IgcIconComponent from '../icon/icon.js';\nimport IgcRatingSymbolComponent from './rating-symbol.js';\nimport { styles } from './themes/rating.base.css.js';\nimport { styles as shared } from './themes/shared/rating.common.css.js';\nimport { all } from './themes/themes.js';\n\nexport interface IgcRatingEventMap {\n igcChange: CustomEvent<number>;\n igcHover: CustomEvent<number>;\n}\n\n/**\n * Rating provides insight regarding others' opinions and experiences,\n * and can allow the user to submit a rating of their own\n *\n * @element igc-rating\n *\n * @fires igcChange - Emitted when the value of the control changes.\n * @fires igcHover - Emitted when hover is enabled and the user mouses over a symbol of the rating.\n *\n * @csspart base - The main wrapper which holds all of the rating elements.\n * @csspart label - The label part.\n * @csspart 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(all)\nexport default class IgcRatingComponent extends FormAssociatedMixin(\n EventEmitterMixin<IgcRatingEventMap, Constructor<LitElement>>(LitElement)\n) {\n public static readonly tagName = 'igc-rating';\n public static styles = [styles, shared];\n\n /* blazorSuppress */\n public static register() {\n registerComponent(\n IgcRatingComponent,\n IgcIconComponent,\n IgcRatingSymbolComponent\n );\n }\n\n @queryAssignedElements({\n selector: IgcRatingSymbolComponent.tagName,\n slot: 'symbol',\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 return this.valueFormat\n ? formatString(this.valueFormat, value, 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 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 /* @tsTwoWayProperty(true, \"igcChange\", \"detail\", false) */\n /**\n * The current value of the component\n * @attr\n */\n @property({ type: Number })\n public value = 0;\n\n /**\n * Sets hover preview behavior for the component\n * @attr hover-preview\n */\n @property({ type: Boolean, reflect: true, attribute: 'hover-preview' })\n public hoverPreview = false;\n\n /**\n * Makes the control a readonly field.\n * @attr readonly\n */\n @property({ type: Boolean, reflect: true, attribute: 'readonly' })\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 /**\n * Whether to reset the rating when the user selects the same value.\n * @attr allow-reset\n */\n @property({ type: Boolean, reflect: true, attribute: 'allow-reset' })\n public allowReset = false;\n\n @watch('max')\n protected handleMaxChange() {\n this.max = this.hasProjectedSymbols\n ? this.ratingSymbols.length\n : Math.max(0, this.max);\n\n if (this.max < this.value) {\n this.value = this.max;\n }\n }\n\n @watch('value')\n protected handleValueChange() {\n this.value = clamp(Number.isNaN(this.value) ? 0 : this.value, 0, this.max);\n this._setFormValue(this.value.toString());\n this._validate();\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\n addKeybindings(this, {\n skip: () => !this.isInteractive,\n bindingDefaults: { preventDefault: true },\n })\n .set(arrowUp, () => this.emitValueUpdate(this.value + this.step))\n .set(arrowRight, () =>\n this.emitValueUpdate(\n isLTR(this) ? this.value + this.step : this.value - this.step\n )\n )\n .set(arrowDown, () => this.emitValueUpdate(this.value - this.step))\n .set(arrowLeft, () =>\n this.emitValueUpdate(\n isLTR(this) ? this.value - this.step : this.value + this.step\n )\n )\n .set(homeKey, () => this.emitValueUpdate(this.step))\n .set(endKey, () => this.emitValueUpdate(this.max));\n }\n\n protected handleClick({ clientX }: PointerEvent) {\n const value = this.calcNewValue(clientX);\n const sameValue = this.value === value;\n\n if (this.allowReset && sameValue) {\n this.emitValueUpdate(0);\n } else if (!sameValue) {\n this.emitValueUpdate(value);\n }\n }\n\n protected handlePointerMove({ clientX }: PointerEvent) {\n const value = this.calcNewValue(clientX);\n\n if (this.hoverValue !== value) {\n // Since pointermove 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 emitValueUpdate(value: number) {\n this.value = clamp(value, 0, this.max);\n if (value === this.value) {\n this.emitEvent('igcChange', { detail: this.value });\n }\n }\n\n protected handleSlotChange() {\n if (this.hasProjectedSymbols) {\n this.max = this.ratingSymbols.length;\n this.requestUpdate();\n }\n }\n\n protected handleHoverEnabled() {\n this.hoverState = true;\n }\n\n protected handleHoverDisabled() {\n this.hoverState = false;\n }\n\n protected override _setInitialDefaultValue(): void {\n this._defaultValue = this.value;\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 return Number(\n (Math.round(value / this.step) * this.step).toFixed(\n this.getPrecision(this.step)\n )\n );\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=\"default\"\n name=\"star_filled\"\n style=${styleMap({ clipPath: forward })}\n ></igc-icon>\n <igc-icon\n collection=\"default\"\n name=\"star_outlined\"\n style=${styleMap({ clipPath: backward })}\n slot=\"empty\"\n ></igc-icon>\n </igc-rating-symbol>`;\n }\n }\n\n protected clipProjected() {\n const ltr = isLTR(this);\n const partFull = '[part=\"symbol full\"]';\n const partEmpty = '[part=\"symbol empty\"]';\n\n for (const [i, symbol] of this.ratingSymbols.entries()) {\n const full = symbol.renderRoot.querySelector<HTMLElement>(partFull);\n const empty = symbol.renderRoot.querySelector<HTMLElement>(partEmpty);\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 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 const hoverActive = this.hoverPreview && this.isInteractive;\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.isInteractive ? this.handleClick : nothing}\n @pointerenter=${hoverActive ? this.handleHoverEnabled : nothing}\n @pointerleave=${hoverActive ? this.handleHoverDisabled : nothing}\n @pointermove=${hoverActive ? this.handlePointerMove : nothing}\n >\n <slot name=\"symbol\" @slotchange=${this.handleSlotChange}>\n ${guard(props, () =>\n this.hasProjectedSymbols\n ? this.clipProjected()\n : 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,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size);scrollbar-color:var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size);height:var(--ig-scrollbar-size);background:var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background)}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:var(--symbol-size);height:var(--symbol-size)}[part~=symbol]{position:absolute;display:-webkit-box;display:-ms-flexbox;display:flex;color:inherit;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:var(--symbol-size);height:var(--symbol-size);min-width:var(--symbol-size);min-height:var(--symbol-size);font-size:var(--symbol-size);font-family:sans-serif;line-height:100%;letter-spacing:0}[part~=symbol] igc-icon{--size: var(--symbol-size)}[part="symbol full"]{color:var(--symbol-full-color)}[part="symbol empty"]{color:var(--symbol-empty-color)}::slotted(*){display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}::slotted(igc-icon){--size: var(--symbol-size) !important}slot:not([name])::slotted(:not(igc-icon)){-webkit-filter:var(--disabled-symbol-full-filter, grayscale(0));filter:var(--disabled-symbol-full-filter, grayscale(0))}[name=empty]::slotted(:not(igc-icon)){-webkit-filter:var(--disabled-symbol-empty-filter, grayscale(1));filter:var(--disabled-symbol-empty-filter, grayscale(1))}`;
2
+ export const styles = css `:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size);scrollbar-color:var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size);height:var(--ig-scrollbar-size);background:var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background)}:host *,:host *::before,:host *::after{box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{display:flex;justify-content:center;align-items:center;width:var(--symbol-size);height:var(--symbol-size)}[part~=symbol]{position:absolute;display:flex;color:inherit;align-items:center;justify-content:center;width:var(--symbol-size);height:var(--symbol-size);min-width:var(--symbol-size);min-height:var(--symbol-size);font-size:var(--symbol-size);font-family:sans-serif;line-height:100%;letter-spacing:0}[part~=symbol] igc-icon{--size: var(--symbol-size)}[part="symbol full"]{color:var(--symbol-full-color)}[part="symbol empty"]{color:var(--symbol-empty-color)}::slotted(*){display:inline-flex;justify-content:center;align-items:center}::slotted(igc-icon){--size: var(--symbol-size) !important}slot:not([name])::slotted(:not(igc-icon)){filter:var(--disabled-symbol-full-filter, grayscale(0))}[name=empty]::slotted(:not(igc-icon)){filter:var(--disabled-symbol-empty-filter, grayscale(1))}`;
3
3
  //# sourceMappingURL=rating-symbol.base.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rating-symbol.base.css.js","sourceRoot":"","sources":["../../../../src/components/rating/themes/rating-symbol.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,swEAAswE,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size);scrollbar-color:var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size);height:var(--ig-scrollbar-size);background:var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background)}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:var(--symbol-size);height:var(--symbol-size)}[part~=symbol]{position:absolute;display:-webkit-box;display:-ms-flexbox;display:flex;color:inherit;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:var(--symbol-size);height:var(--symbol-size);min-width:var(--symbol-size);min-height:var(--symbol-size);font-size:var(--symbol-size);font-family:sans-serif;line-height:100%;letter-spacing:0}[part~=symbol] igc-icon{--size: var(--symbol-size)}[part=\"symbol full\"]{color:var(--symbol-full-color)}[part=\"symbol empty\"]{color:var(--symbol-empty-color)}::slotted(*){display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}::slotted(igc-icon){--size: var(--symbol-size) !important}slot:not([name])::slotted(:not(igc-icon)){-webkit-filter:var(--disabled-symbol-full-filter, grayscale(0));filter:var(--disabled-symbol-full-filter, grayscale(0))}[name=empty]::slotted(:not(igc-icon)){-webkit-filter:var(--disabled-symbol-empty-filter, grayscale(1));filter:var(--disabled-symbol-empty-filter, grayscale(1))}`;\n"]}
1
+ {"version":3,"file":"rating-symbol.base.css.js","sourceRoot":"","sources":["../../../../src/components/rating/themes/rating-symbol.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,+qDAA+qD,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size);scrollbar-color:var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size);height:var(--ig-scrollbar-size);background:var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background)}:host *,:host *::before,:host *::after{box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{display:flex;justify-content:center;align-items:center;width:var(--symbol-size);height:var(--symbol-size)}[part~=symbol]{position:absolute;display:flex;color:inherit;align-items:center;justify-content:center;width:var(--symbol-size);height:var(--symbol-size);min-width:var(--symbol-size);min-height:var(--symbol-size);font-size:var(--symbol-size);font-family:sans-serif;line-height:100%;letter-spacing:0}[part~=symbol] igc-icon{--size: var(--symbol-size)}[part=\"symbol full\"]{color:var(--symbol-full-color)}[part=\"symbol empty\"]{color:var(--symbol-empty-color)}::slotted(*){display:inline-flex;justify-content:center;align-items:center}::slotted(igc-icon){--size: var(--symbol-size) !important}slot:not([name])::slotted(:not(igc-icon)){filter:var(--disabled-symbol-full-filter, grayscale(0))}[name=empty]::slotted(:not(igc-icon)){filter:var(--disabled-symbol-empty-filter, grayscale(1))}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size);scrollbar-color:var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size);height:var(--ig-scrollbar-size);background:var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background)}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-family:var(--ig-font-family);-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}[part=base]{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-flex-wrap:wrap;flex-wrap:wrap}[part~=symbols]{--symbol-size: max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.5rem, -1 * 1.5rem), var(--is-small, 1) * max(1.125rem, -1 * 1.125rem));position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.125rem;gap:.125rem;inset-inline-start:0}[part~=label]{-webkit-padding-start:.25rem;padding-inline-start:.25rem;height:auto;width:auto;min-height:0;min-width:0;margin:0}:host(:not(:disabled,[disabled],[readonly])) [part~=symbols]{cursor:pointer}:host([disabled]) [part~=symbols],:host(:disabled) [part~=symbols]{cursor:initial}`;
2
+ export const styles = css `:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size);scrollbar-color:var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size);height:var(--ig-scrollbar-size);background:var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background)}:host *,:host *::before,:host *::after{box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{display:inline-flex;font-family:var(--ig-font-family);align-items:flex-start;flex-direction:column}[part=base]{position:relative;display:flex;align-items:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-wrap:wrap}[part~=symbols]{--symbol-size: max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.5rem, -1 * 1.5rem), var(--is-small, 1) * max(1.125rem, -1 * 1.125rem));position:relative;display:flex;justify-content:center;align-items:center;padding:.125rem;gap:.125rem;inset-inline-start:0}[part~=label]{padding-inline-start:.25rem;height:auto;width:auto;min-height:0;min-width:0;margin:0}:host(:not(:disabled,[disabled],[readonly])) [part~=symbols]{cursor:pointer}:host([disabled]) [part~=symbols],:host(:disabled) [part~=symbols]{cursor:initial}`;
3
3
  //# sourceMappingURL=rating.base.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rating.base.css.js","sourceRoot":"","sources":["../../../../src/components/rating/themes/rating.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,4mEAA4mE,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size);scrollbar-color:var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size);height:var(--ig-scrollbar-size);background:var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background)}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-family:var(--ig-font-family);-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}[part=base]{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-flex-wrap:wrap;flex-wrap:wrap}[part~=symbols]{--symbol-size: max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.5rem, -1 * 1.5rem), var(--is-small, 1) * max(1.125rem, -1 * 1.125rem));position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.125rem;gap:.125rem;inset-inline-start:0}[part~=label]{-webkit-padding-start:.25rem;padding-inline-start:.25rem;height:auto;width:auto;min-height:0;min-width:0;margin:0}:host(:not(:disabled,[disabled],[readonly])) [part~=symbols]{cursor:pointer}:host([disabled]) [part~=symbols],:host(:disabled) [part~=symbols]{cursor:initial}`;\n"]}
1
+ {"version":3,"file":"rating.base.css.js","sourceRoot":"","sources":["../../../../src/components/rating/themes/rating.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,0lDAA0lD,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size);scrollbar-color:var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size);height:var(--ig-scrollbar-size);background:var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background)}:host *,:host *::before,:host *::after{box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{display:inline-flex;font-family:var(--ig-font-family);align-items:flex-start;flex-direction:column}[part=base]{position:relative;display:flex;align-items:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-wrap:wrap}[part~=symbols]{--symbol-size: max(var(--is-large, 1) * max(2.25rem, -1 * 2.25rem), var(--is-medium, 1) * max(1.5rem, -1 * 1.5rem), var(--is-small, 1) * max(1.125rem, -1 * 1.125rem));position:relative;display:flex;justify-content:center;align-items:center;padding:.125rem;gap:.125rem;inset-inline-start:0}[part~=label]{padding-inline-start:.25rem;height:auto;width:auto;min-height:0;min-width:0;margin:0}:host(:not(:disabled,[disabled],[readonly])) [part~=symbols]{cursor:pointer}:host([disabled]) [part~=symbols],:host(:disabled) [part~=symbols]{cursor:initial}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--default-size: 2;--component-size: var(--ig-size, var(--default-size)) !important;gap:.25rem}[part=base]{gap:.5rem}[part~=value-label]{font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom)}[part~=label]{-webkit-padding-start:.125rem;padding-inline-start:.125rem}[part~=symbols]{--symbol-size: max(var(--is-large, 1) * max(1.875rem, -1 * 1.875rem), var(--is-medium, 1) * max(1.5rem, -1 * 1.5rem), var(--is-small, 1) * max(1.125rem, -1 * 1.125rem));-webkit-padding-end:0;padding-inline-end:0}`;
2
+ export const styles = css `:host{--default-size: 2;--component-size: var(--ig-size, var(--default-size)) !important;gap:.25rem}[part=base]{gap:.5rem}[part~=value-label]{font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom)}[part~=label]{padding-inline-start:.125rem}[part~=symbols]{--symbol-size: max(var(--is-large, 1) * max(1.875rem, -1 * 1.875rem), var(--is-medium, 1) * max(1.5rem, -1 * 1.5rem), var(--is-small, 1) * max(1.125rem, -1 * 1.125rem));padding-inline-end:0}`;
3
3
  //# sourceMappingURL=rating.indigo.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rating.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/rating/themes/shared/rating.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,s1BAAs1B,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--default-size: 2;--component-size: var(--ig-size, var(--default-size)) !important;gap:.25rem}[part=base]{gap:.5rem}[part~=value-label]{font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom)}[part~=label]{-webkit-padding-start:.125rem;padding-inline-start:.125rem}[part~=symbols]{--symbol-size: max(var(--is-large, 1) * max(1.875rem, -1 * 1.875rem), var(--is-medium, 1) * max(1.5rem, -1 * 1.5rem), var(--is-small, 1) * max(1.125rem, -1 * 1.125rem));-webkit-padding-end:0;padding-inline-end:0}`;\n"]}
1
+ {"version":3,"file":"rating.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/rating/themes/shared/rating.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,kyBAAkyB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--default-size: 2;--component-size: var(--ig-size, var(--default-size)) !important;gap:.25rem}[part=base]{gap:.5rem}[part~=value-label]{font-family:var(--ig-caption-font-family, var(--ig-font-family));font-size:var(--ig-caption-font-size);font-weight:var(--ig-caption-font-weight);font-style:var(--ig-caption-font-style);line-height:var(--ig-caption-line-height);letter-spacing:var(--ig-caption-letter-spacing);text-transform:var(--ig-caption-text-transform);margin-top:var(--ig-caption-margin-top);margin-bottom:var(--ig-caption-margin-bottom)}[part~=label]{padding-inline-start:.125rem}[part~=symbols]{--symbol-size: max(var(--is-large, 1) * max(1.875rem, -1 * 1.875rem), var(--is-medium, 1) * max(1.5rem, -1 * 1.5rem), var(--is-small, 1) * max(1.125rem, -1 * 1.125rem));padding-inline-end:0}`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size);scrollbar-color:var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size);height:var(--ig-scrollbar-size);background:var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background)}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{position:absolute;display:block;width:100%;height:100%;top:0;left:0;contain:content;overflow:hidden}`;
2
+ export const styles = css `:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size);scrollbar-color:var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size);height:var(--ig-scrollbar-size);background:var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background)}:host *,:host *::before,:host *::after{box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{position:absolute;display:block;width:100%;height:100%;top:0;left:0;contain:content;overflow:hidden}`;
3
3
  //# sourceMappingURL=ripple.material.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ripple.material.css.js","sourceRoot":"","sources":["../../../src/components/ripple/ripple.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,w9BAAw9B,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size);scrollbar-color:var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size);height:var(--ig-scrollbar-size);background:var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background)}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{position:absolute;display:block;width:100%;height:100%;top:0;left:0;contain:content;overflow:hidden}`;\n"]}
1
+ {"version":3,"file":"ripple.material.css.js","sourceRoot":"","sources":["../../../src/components/ripple/ripple.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,45BAA45B,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size);scrollbar-color:var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size);height:var(--ig-scrollbar-size);background:var(--ig-scrollbar-track-background)}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background)}:host *,:host *::before,:host *::after{box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}:host{position:absolute;display:block;width:100%;height:100%;top:0;left:0;contain:content;overflow:hidden}`;\n"]}
@@ -13,7 +13,7 @@ export interface IgcSelectEventMap {
13
13
  igcClosing: CustomEvent<void>;
14
14
  igcClosed: CustomEvent<void>;
15
15
  }
16
- declare const IgcSelectComponent_base: import("../common/mixins/constructor.js").Constructor<import("../common/mixins/form-associated-required.js").FormRequiredInterface & import("../common/mixins/form-associated.js").FormAssociatedElementInterface> & import("../common/mixins/constructor.js").Constructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcSelectEventMap>> & AbstractConstructor<IgcBaseComboBoxLikeComponent>;
16
+ declare const IgcSelectComponent_base: import("../common/mixins/constructor.js").Constructor<import("../common/mixins/forms/types.js").FormRequiredInterface & import("../common/mixins/forms/types.js").FormAssociatedElementInterface> & import("../common/mixins/constructor.js").Constructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcSelectEventMap>> & AbstractConstructor<IgcBaseComboBoxLikeComponent>;
17
17
  /**
18
18
  * Represents a control that provides a menu of options.
19
19
  *
@@ -113,7 +113,7 @@ export default class IgcSelectComponent extends IgcSelectComponent_base {
113
113
  protected scrollStrategyChanged(): void;
114
114
  protected openChange(): void;
115
115
  constructor();
116
- protected createRenderRoot(): HTMLElement | DocumentFragment;
116
+ protected createRenderRoot(): DocumentFragment | HTMLElement;
117
117
  protected firstUpdated(): Promise<void>;
118
118
  private handleFocusIn;
119
119
  private handleFocusOut;
@@ -16,7 +16,7 @@ import { watch } from '../common/decorators/watch.js';
16
16
  import { registerComponent } from '../common/definitions/register.js';
17
17
  import { IgcBaseComboBoxLikeComponent, getActiveItems, getItems, getNextActiveItem, getPreviousActiveItem, setInitialSelectionState, } from '../common/mixins/combo-box.js';
18
18
  import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
19
- import { FormAssociatedRequiredMixin } from '../common/mixins/form-associated-required.js';
19
+ import { FormAssociatedRequiredMixin } from '../common/mixins/forms/associated-required.js';
20
20
  import { findElementFromEventPath, partNameMap } from '../common/util.js';
21
21
  import IgcIconComponent from '../icon/icon.js';
22
22
  import IgcInputComponent from '../input/input.js';
@@ -125,7 +125,7 @@ let IgcSelectComponent = IgcSelectComponent_1 = class IgcSelectComponent extends
125
125
  if (this.autofocus) {
126
126
  this.focus();
127
127
  }
128
- this.updateValidity();
128
+ this._updateValidity();
129
129
  }
130
130
  handleFocusIn({ relatedTarget }) {
131
131
  this._dirty = true;
@@ -206,7 +206,7 @@ let IgcSelectComponent = IgcSelectComponent_1 = class IgcSelectComponent extends
206
206
  onTabKey(event) {
207
207
  if (this.open) {
208
208
  event.preventDefault();
209
- this._selectItem(this._activeItem);
209
+ this._selectItem(this._activeItem ?? this._selectedItem);
210
210
  this._hide(true);
211
211
  }
212
212
  }
@@ -242,12 +242,11 @@ let IgcSelectComponent = IgcSelectComponent_1 = class IgcSelectComponent extends
242
242
  this._updateValue();
243
243
  return null;
244
244
  }
245
- const items = this.items;
246
- const [previous, current] = [
247
- items.indexOf(this._selectedItem),
248
- items.indexOf(item),
249
- ];
250
- if (previous === current) {
245
+ const shouldFocus = emit && this.open;
246
+ const shouldHide = emit && !this.keepOpenOnSelect;
247
+ if (this._selectedItem === item) {
248
+ if (shouldFocus)
249
+ this.input.focus();
251
250
  return this._selectedItem;
252
251
  }
253
252
  const newItem = this.setSelectedItem(item);
@@ -255,9 +254,9 @@ let IgcSelectComponent = IgcSelectComponent_1 = class IgcSelectComponent extends
255
254
  this._updateValue(newItem.value);
256
255
  if (emit)
257
256
  this.handleChange(newItem);
258
- if (emit && this.open)
257
+ if (shouldFocus)
259
258
  this.input.focus();
260
- if (emit && !this.keepOpenOnSelect)
259
+ if (shouldHide)
261
260
  this._hide(true);
262
261
  return this._selectedItem;
263
262
  }
@@ -270,9 +269,8 @@ let IgcSelectComponent = IgcSelectComponent_1 = class IgcSelectComponent extends
270
269
  }
271
270
  _updateValue(value) {
272
271
  this._value = value;
273
- this.setFormValue(this._value ? this._value : null);
274
- this.updateValidity();
275
- this.setInvalidState();
272
+ this._setFormValue(this._value ? this._value : null);
273
+ this._validate();
276
274
  }
277
275
  clearSelectedItem() {
278
276
  if (this._selectedItem) {
@@ -292,7 +290,6 @@ let IgcSelectComponent = IgcSelectComponent_1 = class IgcSelectComponent extends
292
290
  }
293
291
  blur() {
294
292
  this.input.blur();
295
- super.blur();
296
293
  }
297
294
  reportValidity() {
298
295
  const valid = super.reportValidity();