igniteui-webcomponents 4.0.0-alpha → 4.0.0-alpha.3

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 (456) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +17 -15
  3. package/components/accordion/themes/accordion.base.css.js +2 -1
  4. package/components/accordion/themes/accordion.base.css.js.map +1 -1
  5. package/components/avatar/themes/avatar.base.css.js +15 -6
  6. package/components/avatar/themes/avatar.base.css.js.map +1 -1
  7. package/components/avatar/themes/avatar.bootstrap.css.js +2 -1
  8. package/components/avatar/themes/avatar.bootstrap.css.js.map +1 -1
  9. package/components/badge/themes/light/badge.base.css.js +8 -0
  10. package/components/badge/themes/light/badge.base.css.js.map +1 -1
  11. package/components/badge/themes/light/badge.bootstrap.css.js +2 -1
  12. package/components/badge/themes/light/badge.bootstrap.css.js.map +1 -1
  13. package/components/button/icon-button.js +13 -10
  14. package/components/button/icon-button.js.map +1 -1
  15. package/components/button/themes/button/dark/button.fluent.css.js +1 -1
  16. package/components/button/themes/button/dark/button.fluent.css.js.map +1 -1
  17. package/components/button/themes/button/light/button.base.css.js +36 -31
  18. package/components/button/themes/button/light/button.base.css.js.map +1 -1
  19. package/components/button/themes/button/light/button.bootstrap.css.js +6 -13
  20. package/components/button/themes/button/light/button.bootstrap.css.js.map +1 -1
  21. package/components/button/themes/button/light/button.fluent.css.js +6 -15
  22. package/components/button/themes/button/light/button.fluent.css.js.map +1 -1
  23. package/components/button/themes/button/light/button.indigo.css.js +8 -19
  24. package/components/button/themes/button/light/button.indigo.css.js.map +1 -1
  25. package/components/button/themes/button/light/button.material.css.js +36 -31
  26. package/components/button/themes/button/light/button.material.css.js.map +1 -1
  27. package/components/button/themes/icon-button/dark/icon-button.fluent.css.js +1 -1
  28. package/components/button/themes/icon-button/dark/icon-button.fluent.css.js.map +1 -1
  29. package/components/button/themes/icon-button/light/icon-button.base.css.js +17 -19
  30. package/components/button/themes/icon-button/light/icon-button.base.css.js.map +1 -1
  31. package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js +9 -19
  32. package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js.map +1 -1
  33. package/components/button/themes/icon-button/light/icon-button.fluent.css.js +9 -18
  34. package/components/button/themes/icon-button/light/icon-button.fluent.css.js.map +1 -1
  35. package/components/button/themes/icon-button/light/icon-button.indigo.css.js +9 -18
  36. package/components/button/themes/icon-button/light/icon-button.indigo.css.js.map +1 -1
  37. package/components/button/themes/icon-button/light/icon-button.material.css.js +7 -13
  38. package/components/button/themes/icon-button/light/icon-button.material.css.js.map +1 -1
  39. package/components/calendar/days-view/days-view.d.ts +2 -0
  40. package/components/calendar/days-view/days-view.js +17 -5
  41. package/components/calendar/days-view/days-view.js.map +1 -1
  42. package/components/calendar/themes/bootstrap/calendar.bootstrap.css.js +2 -1
  43. package/components/calendar/themes/bootstrap/calendar.bootstrap.css.js.map +1 -1
  44. package/components/calendar/themes/bootstrap/days-view.bootstrap.css.js +2 -1
  45. package/components/calendar/themes/bootstrap/days-view.bootstrap.css.js.map +1 -1
  46. package/components/calendar/themes/bootstrap/year-month-view.bootstrap.css.js +2 -1
  47. package/components/calendar/themes/bootstrap/year-month-view.bootstrap.css.js.map +1 -1
  48. package/components/calendar/themes/calendar.base.css.js +68 -90
  49. package/components/calendar/themes/calendar.base.css.js.map +1 -1
  50. package/components/calendar/themes/days-view.base.css.js +2 -2
  51. package/components/calendar/themes/days-view.base.css.js.map +1 -1
  52. package/components/calendar/themes/fluent/calendar.fluent.css.js +68 -90
  53. package/components/calendar/themes/fluent/calendar.fluent.css.js.map +1 -1
  54. package/components/calendar/themes/fluent/days-view.fluent.css.js +2 -1
  55. package/components/calendar/themes/fluent/days-view.fluent.css.js.map +1 -1
  56. package/components/calendar/themes/fluent/year-month-view.fluent.css.js +2 -1
  57. package/components/calendar/themes/fluent/year-month-view.fluent.css.js.map +1 -1
  58. package/components/calendar/themes/year-month-view.base.css.js +2 -1
  59. package/components/calendar/themes/year-month-view.base.css.js.map +1 -1
  60. package/components/card/themes/light/card.actions.bootstrap.css.js +8 -0
  61. package/components/card/themes/light/card.actions.bootstrap.css.js.map +1 -1
  62. package/components/card/themes/light/card.actions.material.css.js +8 -0
  63. package/components/card/themes/light/card.actions.material.css.js.map +1 -1
  64. package/components/card/themes/light/card.bootstrap.css.js +2 -1
  65. package/components/card/themes/light/card.bootstrap.css.js.map +1 -1
  66. package/components/card/themes/light/card.content.bootstrap.css.js +8 -0
  67. package/components/card/themes/light/card.content.bootstrap.css.js.map +1 -1
  68. package/components/card/themes/light/card.content.indigo.css.js +8 -0
  69. package/components/card/themes/light/card.content.indigo.css.js.map +1 -1
  70. package/components/card/themes/light/card.content.material.css.js +8 -0
  71. package/components/card/themes/light/card.content.material.css.js.map +1 -1
  72. package/components/card/themes/light/card.fluent.css.js +2 -1
  73. package/components/card/themes/light/card.fluent.css.js.map +1 -1
  74. package/components/card/themes/light/card.header.bootstrap.css.js +8 -0
  75. package/components/card/themes/light/card.header.bootstrap.css.js.map +1 -1
  76. package/components/card/themes/light/card.header.fluent.css.js +8 -0
  77. package/components/card/themes/light/card.header.fluent.css.js.map +1 -1
  78. package/components/card/themes/light/card.header.indigo.css.js +8 -0
  79. package/components/card/themes/light/card.header.indigo.css.js.map +1 -1
  80. package/components/card/themes/light/card.header.material.css.js +8 -0
  81. package/components/card/themes/light/card.header.material.css.js.map +1 -1
  82. package/components/card/themes/light/card.material.css.js +8 -0
  83. package/components/card/themes/light/card.material.css.js.map +1 -1
  84. package/components/card/themes/light/card.media.material.css.js +8 -0
  85. package/components/card/themes/light/card.media.material.css.js.map +1 -1
  86. package/components/checkbox/themes/dark/checkbox.fluent.css.js +1 -1
  87. package/components/checkbox/themes/dark/checkbox.fluent.css.js.map +1 -1
  88. package/components/checkbox/themes/dark/checkbox.indigo.css.js +1 -1
  89. package/components/checkbox/themes/dark/checkbox.indigo.css.js.map +1 -1
  90. package/components/checkbox/themes/dark/switch.fluent.css.js +1 -1
  91. package/components/checkbox/themes/dark/switch.fluent.css.js.map +1 -1
  92. package/components/checkbox/themes/dark/switch.indigo.css.js +1 -1
  93. package/components/checkbox/themes/dark/switch.indigo.css.js.map +1 -1
  94. package/components/checkbox/themes/light/checkbox.base.css.js +11 -2
  95. package/components/checkbox/themes/light/checkbox.base.css.js.map +1 -1
  96. package/components/checkbox/themes/light/checkbox.bootstrap.css.js +6 -4
  97. package/components/checkbox/themes/light/checkbox.bootstrap.css.js.map +1 -1
  98. package/components/checkbox/themes/light/checkbox.fluent.css.js +2 -1
  99. package/components/checkbox/themes/light/checkbox.fluent.css.js.map +1 -1
  100. package/components/checkbox/themes/light/checkbox.indigo.css.js +2 -1
  101. package/components/checkbox/themes/light/checkbox.indigo.css.js.map +1 -1
  102. package/components/checkbox/themes/light/checkbox.material.css.js +2 -1
  103. package/components/checkbox/themes/light/checkbox.material.css.js.map +1 -1
  104. package/components/checkbox/themes/light/switch.base.css.js +8 -0
  105. package/components/checkbox/themes/light/switch.base.css.js.map +1 -1
  106. package/components/checkbox/themes/light/switch.bootstrap.css.js +2 -1
  107. package/components/checkbox/themes/light/switch.bootstrap.css.js.map +1 -1
  108. package/components/checkbox/themes/light/switch.fluent.css.js +2 -1
  109. package/components/checkbox/themes/light/switch.fluent.css.js.map +1 -1
  110. package/components/checkbox/themes/light/switch.indigo.css.js +2 -1
  111. package/components/checkbox/themes/light/switch.indigo.css.js.map +1 -1
  112. package/components/checkbox/themes/light/switch.material.css.js +2 -1
  113. package/components/checkbox/themes/light/switch.material.css.js.map +1 -1
  114. package/components/chip/chip.d.ts +1 -0
  115. package/components/chip/chip.js +9 -0
  116. package/components/chip/chip.js.map +1 -1
  117. package/components/chip/themes/chip.base.css.js +48 -40
  118. package/components/chip/themes/chip.base.css.js.map +1 -1
  119. package/components/chip/themes/chip.bootstrap.css.js +48 -40
  120. package/components/chip/themes/chip.bootstrap.css.js.map +1 -1
  121. package/components/chip/themes/chip.fluent.css.js +48 -40
  122. package/components/chip/themes/chip.fluent.css.js.map +1 -1
  123. package/components/chip/themes/chip.indigo.css.js +48 -40
  124. package/components/chip/themes/chip.indigo.css.js.map +1 -1
  125. package/components/chip/themes/chip.material.css.js +48 -40
  126. package/components/chip/themes/chip.material.css.js.map +1 -1
  127. package/components/dialog/dialog.d.ts +69 -0
  128. package/components/dialog/dialog.js +168 -0
  129. package/components/dialog/dialog.js.map +1 -0
  130. package/components/dialog/themes/light/dialog.base.css.d.ts +1 -0
  131. package/components/dialog/themes/light/dialog.base.css.js +127 -0
  132. package/components/dialog/themes/light/dialog.base.css.js.map +1 -0
  133. package/components/dialog/themes/light/dialog.bootstrap.css.d.ts +1 -0
  134. package/components/dialog/themes/light/dialog.bootstrap.css.js +42 -0
  135. package/components/dialog/themes/light/dialog.bootstrap.css.js.map +1 -0
  136. package/components/dialog/themes/light/dialog.fluent.css.d.ts +1 -0
  137. package/components/dialog/themes/light/dialog.fluent.css.js +24 -0
  138. package/components/dialog/themes/light/dialog.fluent.css.js.map +1 -0
  139. package/components/dialog/themes/light/dialog.indigo.css.d.ts +1 -0
  140. package/components/dialog/themes/light/dialog.indigo.css.js +17 -0
  141. package/components/dialog/themes/light/dialog.indigo.css.js.map +1 -0
  142. package/components/dialog/themes/light/dialog.material.css.d.ts +1 -0
  143. package/components/dialog/themes/light/dialog.material.css.js +18 -0
  144. package/components/dialog/themes/light/dialog.material.css.js.map +1 -0
  145. package/components/dropdown/dropdown-group.d.ts +2 -2
  146. package/components/dropdown/dropdown-group.js +1 -1
  147. package/components/dropdown/dropdown-group.js.map +1 -1
  148. package/components/dropdown/dropdown-header.d.ts +1 -1
  149. package/components/dropdown/dropdown-header.js +2 -1
  150. package/components/dropdown/dropdown-header.js.map +1 -1
  151. package/components/dropdown/dropdown-item.d.ts +1 -1
  152. package/components/dropdown/dropdown-item.js.map +1 -1
  153. package/components/dropdown/dropdown.d.ts +10 -8
  154. package/components/dropdown/dropdown.js +15 -10
  155. package/components/dropdown/dropdown.js.map +1 -1
  156. package/components/dropdown/themes/dark/dropdown.bootstrap.css.js +1 -1
  157. package/components/dropdown/themes/dark/dropdown.bootstrap.css.js.map +1 -1
  158. package/components/dropdown/themes/dark/dropdown.fluent.css.js +1 -1
  159. package/components/dropdown/themes/dark/dropdown.fluent.css.js.map +1 -1
  160. package/components/dropdown/themes/dark/dropdown.indigo.css.js +1 -1
  161. package/components/dropdown/themes/dark/dropdown.indigo.css.js.map +1 -1
  162. package/components/dropdown/themes/light/dropdown-group.base.css.js +10 -21
  163. package/components/dropdown/themes/light/dropdown-group.base.css.js.map +1 -1
  164. package/components/dropdown/themes/light/dropdown-group.fluent.css.js +3 -13
  165. package/components/dropdown/themes/light/dropdown-group.fluent.css.js.map +1 -1
  166. package/components/dropdown/themes/light/dropdown-header.base.css.js +10 -0
  167. package/components/dropdown/themes/light/dropdown-header.base.css.js.map +1 -1
  168. package/components/dropdown/themes/light/dropdown-header.bootstrap.css.js +2 -1
  169. package/components/dropdown/themes/light/dropdown-header.bootstrap.css.js.map +1 -1
  170. package/components/dropdown/themes/light/dropdown-header.fluent.css.d.ts +1 -0
  171. package/components/dropdown/themes/light/dropdown-header.fluent.css.js +6 -0
  172. package/components/dropdown/themes/light/dropdown-header.fluent.css.js.map +1 -0
  173. package/components/dropdown/themes/light/dropdown-item.base.css.js +15 -4
  174. package/components/dropdown/themes/light/dropdown-item.base.css.js.map +1 -1
  175. package/components/dropdown/themes/light/dropdown-item.bootstrap.css.js +2 -1
  176. package/components/dropdown/themes/light/dropdown-item.bootstrap.css.js.map +1 -1
  177. package/components/dropdown/themes/light/dropdown-item.fluent.css.js +6 -1
  178. package/components/dropdown/themes/light/dropdown-item.fluent.css.js.map +1 -1
  179. package/components/dropdown/themes/light/dropdown-item.indigo.css.js +2 -1
  180. package/components/dropdown/themes/light/dropdown-item.indigo.css.js.map +1 -1
  181. package/components/dropdown/themes/light/dropdown.base.css.js +14 -15
  182. package/components/dropdown/themes/light/dropdown.base.css.js.map +1 -1
  183. package/components/dropdown/themes/light/dropdown.bootstrap.css.js +2 -1
  184. package/components/dropdown/themes/light/dropdown.bootstrap.css.js.map +1 -1
  185. package/components/dropdown/themes/light/dropdown.fluent.css.js +1 -15
  186. package/components/dropdown/themes/light/dropdown.fluent.css.js.map +1 -1
  187. package/components/dropdown/themes/light/dropdown.indigo.css.js +2 -1
  188. package/components/dropdown/themes/light/dropdown.indigo.css.js.map +1 -1
  189. package/components/expansion-panel/themes/light/expansion-panel.base.css.js +10 -7
  190. package/components/expansion-panel/themes/light/expansion-panel.base.css.js.map +1 -1
  191. package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js +2 -1
  192. package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js.map +1 -1
  193. package/components/expansion-panel/themes/light/expansion-panel.fluent.css.js +2 -1
  194. package/components/expansion-panel/themes/light/expansion-panel.fluent.css.js.map +1 -1
  195. package/components/expansion-panel/themes/light/expansion-panel.indigo.css.js +2 -1
  196. package/components/expansion-panel/themes/light/expansion-panel.indigo.css.js.map +1 -1
  197. package/components/form/form.js +4 -3
  198. package/components/form/form.js.map +1 -1
  199. package/components/icon/icon.js +3 -1
  200. package/components/icon/icon.js.map +1 -1
  201. package/components/icon/icon.material.css.js +14 -5
  202. package/components/icon/icon.material.css.js.map +1 -1
  203. package/components/input/input.d.ts +1 -0
  204. package/components/input/input.js +5 -0
  205. package/components/input/input.js.map +1 -1
  206. package/components/input/themes/dark/input.dark.indigo.css.js +1 -1
  207. package/components/input/themes/dark/input.dark.indigo.css.js.map +1 -1
  208. package/components/input/themes/dark/input.dark.material.css.js +1 -1
  209. package/components/input/themes/dark/input.dark.material.css.js.map +1 -1
  210. package/components/input/themes/light/input.base.css.js +25 -17
  211. package/components/input/themes/light/input.base.css.js.map +1 -1
  212. package/components/input/themes/light/input.bootstrap.css.js +50 -60
  213. package/components/input/themes/light/input.bootstrap.css.js.map +1 -1
  214. package/components/input/themes/light/input.fluent.css.js +23 -36
  215. package/components/input/themes/light/input.fluent.css.js.map +1 -1
  216. package/components/input/themes/light/input.indigo.css.js +3 -2
  217. package/components/input/themes/light/input.indigo.css.js.map +1 -1
  218. package/components/input/themes/light/input.material.css.js +2 -3
  219. package/components/input/themes/light/input.material.css.js.map +1 -1
  220. package/components/list/themes/dark/list.bootstrap.css.js +1 -1
  221. package/components/list/themes/dark/list.bootstrap.css.js.map +1 -1
  222. package/components/list/themes/dark/list.fluent.css.js +1 -1
  223. package/components/list/themes/dark/list.fluent.css.js.map +1 -1
  224. package/components/list/themes/dark/list.indigo.css.js +1 -1
  225. package/components/list/themes/dark/list.indigo.css.js.map +1 -1
  226. package/components/list/themes/light/list-header.base.css.js +10 -0
  227. package/components/list/themes/light/list-header.base.css.js.map +1 -1
  228. package/components/list/themes/light/list-header.indigo.css.js +2 -1
  229. package/components/list/themes/light/list-header.indigo.css.js.map +1 -1
  230. package/components/list/themes/light/list-item.base.css.js +14 -4
  231. package/components/list/themes/light/list-item.base.css.js.map +1 -1
  232. package/components/list/themes/light/list-item.bootstrap.css.js +2 -1
  233. package/components/list/themes/light/list-item.bootstrap.css.js.map +1 -1
  234. package/components/list/themes/light/list-item.fluent.css.js +2 -1
  235. package/components/list/themes/light/list-item.fluent.css.js.map +1 -1
  236. package/components/list/themes/light/list-item.indigo.css.js +2 -1
  237. package/components/list/themes/light/list-item.indigo.css.js.map +1 -1
  238. package/components/list/themes/light/list.base.css.js +14 -9
  239. package/components/list/themes/light/list.base.css.js.map +1 -1
  240. package/components/list/themes/light/list.bootstrap.css.js +2 -1
  241. package/components/list/themes/light/list.bootstrap.css.js.map +1 -1
  242. package/components/nav-drawer/themes/dark/nav-drawer-item.base.css.js +1 -1
  243. package/components/nav-drawer/themes/dark/nav-drawer-item.base.css.js.map +1 -1
  244. package/components/nav-drawer/themes/dark/nav-drawer-item.bootstrap.css.js +1 -1
  245. package/components/nav-drawer/themes/dark/nav-drawer-item.bootstrap.css.js.map +1 -1
  246. package/components/nav-drawer/themes/dark/nav-drawer-item.fluent.css.js +1 -1
  247. package/components/nav-drawer/themes/dark/nav-drawer-item.fluent.css.js.map +1 -1
  248. package/components/nav-drawer/themes/dark/nav-drawer-item.indigo.css.js +1 -1
  249. package/components/nav-drawer/themes/dark/nav-drawer-item.indigo.css.js.map +1 -1
  250. package/components/nav-drawer/themes/dark/nav-drawer.indigo.css.js +1 -1
  251. package/components/nav-drawer/themes/dark/nav-drawer.indigo.css.js.map +1 -1
  252. package/components/nav-drawer/themes/light/fluent/nav-drawer-header-item.fluent.css.js +2 -1
  253. package/components/nav-drawer/themes/light/fluent/nav-drawer-header-item.fluent.css.js.map +1 -1
  254. package/components/nav-drawer/themes/light/fluent/nav-drawer-item.fluent.css.js +2 -1
  255. package/components/nav-drawer/themes/light/fluent/nav-drawer-item.fluent.css.js.map +1 -1
  256. package/components/nav-drawer/themes/light/indigo/nav-drawer-header-item.indigo.css.js +2 -1
  257. package/components/nav-drawer/themes/light/indigo/nav-drawer-header-item.indigo.css.js.map +1 -1
  258. package/components/nav-drawer/themes/light/indigo/nav-drawer-item.indigo.css.js +2 -1
  259. package/components/nav-drawer/themes/light/indigo/nav-drawer-item.indigo.css.js.map +1 -1
  260. package/components/nav-drawer/themes/light/indigo/nav-drawer.indigo.css.js +2 -1
  261. package/components/nav-drawer/themes/light/indigo/nav-drawer.indigo.css.js.map +1 -1
  262. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.js +8 -0
  263. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.js.map +1 -1
  264. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js +8 -0
  265. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js.map +1 -1
  266. package/components/nav-drawer/themes/light/nav-drawer.base.css.js +8 -0
  267. package/components/nav-drawer/themes/light/nav-drawer.base.css.js.map +1 -1
  268. package/components/navbar/themes/light/navbar.base.css.js +8 -0
  269. package/components/navbar/themes/light/navbar.base.css.js.map +1 -1
  270. package/components/navbar/themes/light/navbar.bootstrap.css.js +2 -1
  271. package/components/navbar/themes/light/navbar.bootstrap.css.js.map +1 -1
  272. package/components/navbar/themes/light/navbar.fluent.css.js +2 -1
  273. package/components/navbar/themes/light/navbar.fluent.css.js.map +1 -1
  274. package/components/navbar/themes/light/navbar.indigo.css.js +2 -1
  275. package/components/navbar/themes/light/navbar.indigo.css.js.map +1 -1
  276. package/components/progress/themes/circular/circular.progress.base.css.js +8 -1
  277. package/components/progress/themes/circular/circular.progress.base.css.js.map +1 -1
  278. package/components/progress/themes/circular/circular.progress.bootstrap.css.js +2 -1
  279. package/components/progress/themes/circular/circular.progress.bootstrap.css.js.map +1 -1
  280. package/components/progress/themes/circular/circular.progress.fluent.css.js +2 -1
  281. package/components/progress/themes/circular/circular.progress.fluent.css.js.map +1 -1
  282. package/components/progress/themes/linear/linear.progress.base.css.js +8 -1
  283. package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
  284. package/components/progress/themes/linear/linear.progress.bootstrap.css.js +8 -1
  285. package/components/progress/themes/linear/linear.progress.bootstrap.css.js.map +1 -1
  286. package/components/progress/themes/linear/linear.progress.fluent.css.js +2 -1
  287. package/components/progress/themes/linear/linear.progress.fluent.css.js.map +1 -1
  288. package/components/progress/themes/linear/linear.progress.indigo.css.js +8 -0
  289. package/components/progress/themes/linear/linear.progress.indigo.css.js.map +1 -1
  290. package/components/radio/themes/dark/radio.fluent.css.js +1 -1
  291. package/components/radio/themes/dark/radio.fluent.css.js.map +1 -1
  292. package/components/radio/themes/dark/radio.indigo.css.js +1 -1
  293. package/components/radio/themes/dark/radio.indigo.css.js.map +1 -1
  294. package/components/radio/themes/light/radio.base.css.js +8 -0
  295. package/components/radio/themes/light/radio.base.css.js.map +1 -1
  296. package/components/radio/themes/light/radio.bootstrap.css.js +2 -1
  297. package/components/radio/themes/light/radio.bootstrap.css.js.map +1 -1
  298. package/components/radio/themes/light/radio.fluent.css.js +2 -1
  299. package/components/radio/themes/light/radio.fluent.css.js.map +1 -1
  300. package/components/radio/themes/light/radio.indigo.css.js +2 -1
  301. package/components/radio/themes/light/radio.indigo.css.js.map +1 -1
  302. package/components/radio/themes/light/radio.material.css.js +2 -1
  303. package/components/radio/themes/light/radio.material.css.js.map +1 -1
  304. package/components/radio-group/radio-group.base.css.js +8 -0
  305. package/components/radio-group/radio-group.base.css.js.map +1 -1
  306. package/components/rating/rating-symbol.base.css.js +9 -0
  307. package/components/rating/rating-symbol.base.css.js.map +1 -1
  308. package/components/rating/rating.base.css.js +13 -5
  309. package/components/rating/rating.base.css.js.map +1 -1
  310. package/components/rating/rating.bootstrap.css.js +2 -1
  311. package/components/rating/rating.bootstrap.css.js.map +1 -1
  312. package/components/rating/rating.d.ts +15 -5
  313. package/components/rating/rating.fluent.css.js +2 -1
  314. package/components/rating/rating.fluent.css.js.map +1 -1
  315. package/components/rating/rating.indigo.css.js +2 -1
  316. package/components/rating/rating.indigo.css.js.map +1 -1
  317. package/components/rating/rating.js +9 -5
  318. package/components/rating/rating.js.map +1 -1
  319. package/components/ripple/ripple.material.css.js +7 -0
  320. package/components/ripple/ripple.material.css.js.map +1 -1
  321. package/components/select/select-group.d.ts +31 -0
  322. package/components/select/select-group.js +69 -0
  323. package/components/select/select-group.js.map +1 -0
  324. package/components/select/select-header.d.ts +15 -0
  325. package/components/select/select-header.js +5 -0
  326. package/components/select/select-header.js.map +1 -0
  327. package/components/select/select-item.d.ts +30 -0
  328. package/components/select/select-item.js +39 -0
  329. package/components/select/select-item.js.map +1 -0
  330. package/components/select/select.d.ts +112 -0
  331. package/components/select/select.js +343 -0
  332. package/components/select/select.js.map +1 -0
  333. package/components/select/themes/dark/select.bootstrap.css.d.ts +1 -0
  334. package/components/select/themes/dark/select.bootstrap.css.js +3 -0
  335. package/components/select/themes/dark/select.bootstrap.css.js.map +1 -0
  336. package/components/select/themes/dark/select.fluent.css.d.ts +1 -0
  337. package/components/select/themes/dark/select.fluent.css.js +3 -0
  338. package/components/select/themes/dark/select.fluent.css.js.map +1 -0
  339. package/components/select/themes/dark/select.indigo.css.d.ts +1 -0
  340. package/components/select/themes/dark/select.indigo.css.js +3 -0
  341. package/components/select/themes/dark/select.indigo.css.js.map +1 -0
  342. package/components/select/themes/dark/select.material.css.d.ts +1 -0
  343. package/components/select/themes/dark/select.material.css.js +3 -0
  344. package/components/select/themes/dark/select.material.css.js.map +1 -0
  345. package/components/select/themes/light/select.base.css.d.ts +1 -0
  346. package/components/select/themes/light/select.base.css.js +107 -0
  347. package/components/select/themes/light/select.base.css.js.map +1 -0
  348. package/components/select/themes/light/select.bootstrap.css.d.ts +1 -0
  349. package/components/select/themes/light/select.bootstrap.css.js +69 -0
  350. package/components/select/themes/light/select.bootstrap.css.js.map +1 -0
  351. package/components/select/themes/light/select.fluent.css.d.ts +1 -0
  352. package/components/select/themes/light/select.fluent.css.js +26 -0
  353. package/components/select/themes/light/select.fluent.css.js.map +1 -0
  354. package/components/select/themes/light/select.indigo.css.d.ts +1 -0
  355. package/components/select/themes/light/select.indigo.css.js +23 -0
  356. package/components/select/themes/light/select.indigo.css.js.map +1 -0
  357. package/components/select/themes/light/select.material.css.d.ts +1 -0
  358. package/components/select/themes/light/select.material.css.js +63 -0
  359. package/components/select/themes/light/select.material.css.js.map +1 -0
  360. package/components/slider/range-slider.d.ts +2 -0
  361. package/components/slider/range-slider.js +65 -0
  362. package/components/slider/range-slider.js.map +1 -1
  363. package/components/slider/slider-base.d.ts +9 -7
  364. package/components/slider/slider-base.js +16 -2
  365. package/components/slider/slider-base.js.map +1 -1
  366. package/components/slider/themes/dark/slider.bootstrap.css.js +1 -1
  367. package/components/slider/themes/dark/slider.bootstrap.css.js.map +1 -1
  368. package/components/slider/themes/dark/slider.fluent.css.js +1 -1
  369. package/components/slider/themes/dark/slider.fluent.css.js.map +1 -1
  370. package/components/slider/themes/dark/slider.indigo.css.js +1 -1
  371. package/components/slider/themes/dark/slider.indigo.css.js.map +1 -1
  372. package/components/slider/themes/light/slider.base.css.js +13 -5
  373. package/components/slider/themes/light/slider.base.css.js.map +1 -1
  374. package/components/slider/themes/light/slider.bootstrap.css.js +4 -3
  375. package/components/slider/themes/light/slider.bootstrap.css.js.map +1 -1
  376. package/components/slider/themes/light/slider.fluent.css.js +30 -11
  377. package/components/slider/themes/light/slider.fluent.css.js.map +1 -1
  378. package/components/slider/themes/light/slider.indigo.css.js +6 -5
  379. package/components/slider/themes/light/slider.indigo.css.js.map +1 -1
  380. package/components/slider/themes/light/slider.material.css.js +7 -6
  381. package/components/slider/themes/light/slider.material.css.js.map +1 -1
  382. package/components/snackbar/themes/dark/snackbar.indigo.css.js +1 -1
  383. package/components/snackbar/themes/dark/snackbar.indigo.css.js.map +1 -1
  384. package/components/snackbar/themes/light/snackbar.base.css.js +8 -0
  385. package/components/snackbar/themes/light/snackbar.base.css.js.map +1 -1
  386. package/components/snackbar/themes/light/snackbar.bootstrap.css.js +2 -1
  387. package/components/snackbar/themes/light/snackbar.bootstrap.css.js.map +1 -1
  388. package/components/snackbar/themes/light/snackbar.fluent.css.js +2 -1
  389. package/components/snackbar/themes/light/snackbar.fluent.css.js.map +1 -1
  390. package/components/snackbar/themes/light/snackbar.indigo.css.js +2 -1
  391. package/components/snackbar/themes/light/snackbar.indigo.css.js.map +1 -1
  392. package/components/tabs/tabs.js +1 -0
  393. package/components/tabs/tabs.js.map +1 -1
  394. package/components/tabs/themes/dark/tab.dark.base.css.js +1 -1
  395. package/components/tabs/themes/dark/tab.dark.base.css.js.map +1 -1
  396. package/components/tabs/themes/dark/tab.dark.bootstrap.css.js +1 -1
  397. package/components/tabs/themes/dark/tab.dark.bootstrap.css.js.map +1 -1
  398. package/components/tabs/themes/light/tab-panel.base.css.js +8 -0
  399. package/components/tabs/themes/light/tab-panel.base.css.js.map +1 -1
  400. package/components/tabs/themes/light/tab.base.css.js +8 -0
  401. package/components/tabs/themes/light/tab.base.css.js.map +1 -1
  402. package/components/tabs/themes/light/tab.bootstrap.css.js +2 -1
  403. package/components/tabs/themes/light/tab.bootstrap.css.js.map +1 -1
  404. package/components/tabs/themes/light/tab.fluent.css.js +2 -1
  405. package/components/tabs/themes/light/tab.fluent.css.js.map +1 -1
  406. package/components/tabs/themes/light/tab.indigo.css.js +2 -1
  407. package/components/tabs/themes/light/tab.indigo.css.js.map +1 -1
  408. package/components/tabs/themes/light/tabs.base.css.js +8 -0
  409. package/components/tabs/themes/light/tabs.base.css.js.map +1 -1
  410. package/components/tabs/themes/light/tabs.bootstrap.css.js +2 -1
  411. package/components/tabs/themes/light/tabs.bootstrap.css.js.map +1 -1
  412. package/components/tabs/themes/light/tabs.fluent.css.js +2 -1
  413. package/components/tabs/themes/light/tabs.fluent.css.js.map +1 -1
  414. package/components/tabs/themes/light/tabs.indigo.css.js +2 -1
  415. package/components/tabs/themes/light/tabs.indigo.css.js.map +1 -1
  416. package/components/toast/themes/toast.base.css.js +2 -1
  417. package/components/toast/themes/toast.base.css.js.map +1 -1
  418. package/components/toast/themes/toast.bootstrap.css.js +2 -1
  419. package/components/toast/themes/toast.bootstrap.css.js.map +1 -1
  420. package/components/toast/themes/toast.fluent.css.js +2 -1
  421. package/components/toast/themes/toast.fluent.css.js.map +1 -1
  422. package/components/toast/themes/toast.indigo.css.js +2 -1
  423. package/components/toast/themes/toast.indigo.css.js.map +1 -1
  424. package/components/toast/toast.d.ts +1 -0
  425. package/components/toast/toast.js +9 -0
  426. package/components/toast/toast.js.map +1 -1
  427. package/components/tree/themes/dark/tree-item.bootstrap.css.js +1 -1
  428. package/components/tree/themes/dark/tree-item.bootstrap.css.js.map +1 -1
  429. package/components/tree/themes/dark/tree-item.fluent.css.js +1 -1
  430. package/components/tree/themes/dark/tree-item.fluent.css.js.map +1 -1
  431. package/components/tree/themes/dark/tree-item.indigo.css.js +1 -1
  432. package/components/tree/themes/dark/tree-item.indigo.css.js.map +1 -1
  433. package/components/tree/themes/light/tree-item.base.css.js +12 -22
  434. package/components/tree/themes/light/tree-item.base.css.js.map +1 -1
  435. package/components/tree/themes/light/tree-item.bootstrap.css.js +2 -1
  436. package/components/tree/themes/light/tree-item.bootstrap.css.js.map +1 -1
  437. package/components/tree/themes/light/tree-item.fluent.css.js +2 -1
  438. package/components/tree/themes/light/tree-item.fluent.css.js.map +1 -1
  439. package/components/tree/themes/light/tree-item.indigo.css.js +2 -1
  440. package/components/tree/themes/light/tree-item.indigo.css.js.map +1 -1
  441. package/components/tree/themes/light/tree.base.css.js +20 -0
  442. package/components/tree/themes/light/tree.base.css.js.map +1 -1
  443. package/custom-elements.json +613 -14
  444. package/index.d.ts +5 -0
  445. package/index.js +5 -0
  446. package/index.js.map +1 -1
  447. package/package.json +3 -3
  448. package/themes/dark/bootstrap.css +19 -3
  449. package/themes/dark/fluent.css +56 -6
  450. package/themes/dark/indigo.css +27 -3
  451. package/themes/dark/material.css +21 -4
  452. package/themes/light/bootstrap.css +7 -3
  453. package/themes/light/fluent.css +7 -3
  454. package/themes/light/indigo.css +7 -3
  455. package/themes/light/material.css +8 -4
  456. package/vscode-html-custom-data.json +278 -10
@@ -5,19 +5,19 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import { html, LitElement } from 'lit';
8
- import { property, query, queryAssignedElements } from 'lit/decorators.js';
8
+ import { property, query, queryAssignedElements, state, } from 'lit/decorators.js';
9
+ import { styleMap } from 'lit/directives/style-map.js';
10
+ import { themes } from '../../theming/theming-decorator.js';
11
+ import { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';
12
+ import { blazorSuppress } from '../common/decorators/blazorSuppress.js';
13
+ import { watch } from '../common/decorators/watch.js';
9
14
  import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
15
+ import { SizableMixin } from '../common/mixins/sizable.js';
16
+ import { IgcToggleController } from '../toggle/toggle.controller.js';
10
17
  import { styles } from './themes/light/dropdown.base.css.js';
11
18
  import { styles as bootstrap } from './themes/light/dropdown.bootstrap.css.js';
12
19
  import { styles as fluent } from './themes/light/dropdown.fluent.css.js';
13
20
  import { styles as indigo } from './themes/light/dropdown.indigo.css.js';
14
- import { IgcToggleController } from '../toggle/toggle.controller.js';
15
- import { styleMap } from 'lit/directives/style-map.js';
16
- import { SizableMixin } from '../common/mixins/sizable.js';
17
- import { themes } from '../../theming/theming-decorator.js';
18
- import { watch } from '../common/decorators/watch.js';
19
- import { blazorSuppress } from '../common/decorators/blazorSuppress.js';
20
- import { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';
21
21
  import { defineComponents } from '../common/definitions/defineComponents.js';
22
22
  import IgcDropdownGroupComponent from './dropdown-group.js';
23
23
  import IgcDropdownHeaderComponent from './dropdown-header.js';
@@ -31,6 +31,8 @@ let IgcDropdownComponent = class IgcDropdownComponent extends SizableMixin(Event
31
31
  Enter: this.onEnterKey,
32
32
  ArrowUp: this.onArrowUpKeyDown,
33
33
  ArrowDown: this.onArrowDownKeyDown,
34
+ ArrowLeft: this.onArrowUpKeyDown,
35
+ ArrowRight: this.onArrowDownKeyDown,
34
36
  Home: this.onHomeKey,
35
37
  End: this.onEndKey,
36
38
  }));
@@ -252,10 +254,10 @@ let IgcDropdownComponent = class IgcDropdownComponent extends SizableMixin(Event
252
254
  this.navigatePrev();
253
255
  }
254
256
  async _hide(emit = true) {
255
- if (emit && !this.handleClosing())
256
- return;
257
257
  if (!this.open)
258
258
  return;
259
+ if (emit && !this.handleClosing())
260
+ return;
259
261
  this.open = false;
260
262
  if (emit) {
261
263
  await this.updateComplete;
@@ -315,6 +317,9 @@ let IgcDropdownComponent = class IgcDropdownComponent extends SizableMixin(Event
315
317
  };
316
318
  IgcDropdownComponent.tagName = 'igc-dropdown';
317
319
  IgcDropdownComponent.styles = styles;
320
+ __decorate([
321
+ state()
322
+ ], IgcDropdownComponent.prototype, "activeItem", void 0);
318
323
  __decorate([
319
324
  queryAssignedElements({ slot: 'target' })
320
325
  ], IgcDropdownComponent.prototype, "targetNodes", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\nimport { property, query, queryAssignedElements } from 'lit/decorators.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { styles } from './themes/light/dropdown.base.css.js';\nimport { styles as bootstrap } from './themes/light/dropdown.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/dropdown.fluent.css.js';\nimport { styles as indigo } from './themes/light/dropdown.indigo.css.js';\nimport type {\n IgcPlacement,\n IgcToggleComponent,\n IgcToggleEventMap,\n} from '../toggle/types';\nimport { IgcToggleController } from '../toggle/toggle.controller.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport { SizableMixin } from '../common/mixins/sizable.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { blazorSuppress } from '../common/decorators/blazorSuppress.js';\nimport { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';\n\nimport { defineComponents } from '../common/definitions/defineComponents.js';\nimport IgcDropdownGroupComponent from './dropdown-group.js';\nimport IgcDropdownHeaderComponent from './dropdown-header.js';\nimport IgcDropdownItemComponent from './dropdown-item.js';\n\ndefineComponents(\n IgcDropdownGroupComponent,\n IgcDropdownHeaderComponent,\n IgcDropdownItemComponent\n);\n\nexport interface IgcDropdownEventMap extends IgcToggleEventMap {\n igcChange: CustomEvent<IgcDropdownItemComponent>;\n}\n\n/**\n * Represents a DropDown component.\n *\n * @element igc-dropdown\n *\n * @fires igcChange - Emitted when the selected item changes.\n * @fires igcOpening - Emitted just before the dropdown is open.\n * @fires igcOpened - Emitted after the dropdown is open.\n * @fires igcClosing - Emitter just before the dropdown is closed.\n * @fires igcClosed - Emitted after closing the dropdown.\n *\n * @slot target - Renders the dropdown's target element.\n * @slot - Renders the dropdown list items.\n *\n * @csspart base - The dropdown list wrapper.\n * @csspart list - The dropdown list.\n */\n@themes({ bootstrap, fluent, indigo })\n@blazorAdditionalDependencies(\n 'IgcDropdownItemComponent, IgcDropdownHeaderComponent, IgcDropdownGroupComponent'\n)\nexport default class IgcDropdownComponent\n extends SizableMixin(\n EventEmitterMixin<IgcDropdownEventMap, Constructor<LitElement>>(LitElement)\n )\n implements IgcToggleComponent\n{\n public static readonly tagName = 'igc-dropdown';\n\n public static styles = styles;\n\n private toggleController!: IgcToggleController;\n private selectedItem!: IgcDropdownItemComponent | null;\n private activeItem!: IgcDropdownItemComponent;\n private target!: HTMLElement;\n\n private readonly keyDownHandlers: Map<string, Function> = new Map(\n Object.entries({\n Escape: this.onEscapeKey,\n Enter: this.onEnterKey,\n ArrowUp: this.onArrowUpKeyDown,\n ArrowDown: this.onArrowDownKeyDown,\n Home: this.onHomeKey,\n End: this.onEndKey,\n })\n );\n\n protected get allItems() {\n return [...this.items, ...this.groups.flatMap((group) => group.items)];\n }\n\n @queryAssignedElements({ slot: 'target' })\n private targetNodes!: Array<HTMLElement>;\n\n @query('[part=\"base\"]')\n protected content!: HTMLElement;\n\n @query('[part=\"list\"]')\n protected scrollContainer!: HTMLElement;\n\n @queryAssignedElements({ flatten: true, selector: 'igc-dropdown-item' })\n protected items!: Array<IgcDropdownItemComponent>;\n\n @queryAssignedElements({ flatten: true, selector: 'igc-dropdown-group' })\n protected groups!: Array<IgcDropdownGroupComponent>;\n\n /** Whether the dropdown should be kept open on selection. */\n @property({ type: Boolean, attribute: 'keep-open-on-select' })\n public keepOpenOnSelect = false;\n\n /** Sets the open state of the component. */\n @property({ type: Boolean })\n public open = false;\n\n /** The preferred placement of the component around the target element.\n * @type {\"top\" | \"top-start\" | \"top-end\" | \"bottom\" | \"bottom-start\" | \"bottom-end\" | \"right\" | \"right-start\" | \"right-end\" | \"left\" | \"left-start\" | \"left-end\"}\n */\n @property()\n public placement: IgcPlacement = 'bottom-start';\n\n /** Sets the component's positioning strategy. */\n @property({ attribute: 'position-strategy' })\n public positionStrategy: 'absolute' | 'fixed' = 'absolute';\n\n /** Determines the behavior of the component during scrolling the container. */\n @property({ attribute: 'scroll-strategy' })\n public scrollStrategy: 'scroll' | 'block' | 'close' = 'scroll';\n\n /**\n * Whether the component should be flipped to the opposite side of the target once it's about to overflow the visible area.\n * When true, once enough space is detected on its preferred side, it will flip back.\n */\n @property({ type: Boolean })\n public flip = false;\n\n /** The distance from the target element. */\n @property({ type: Number })\n public distance = 0;\n\n /** Whether the component should be kept open on clicking outside of it. */\n @property({ type: Boolean, attribute: 'keep-open-on-outside-click' })\n public keepOpenOnOutsideClick = false;\n\n /** Whether the dropdown's width should be the same as the target's one. */\n @property({ type: Boolean, attribute: 'same-width' })\n public sameWidth = false;\n\n @watch('open')\n protected toggleDirectiveChange() {\n if (!this.target) return;\n this.toggleController.target = this.target;\n\n if (this.open) {\n document.addEventListener('keydown', this.handleKeyDown);\n this.target.addEventListener('focusout', this.handleFocusout);\n this.selectedItem = this.allItems.find((i) => i.selected) ?? null;\n } else {\n document.removeEventListener('keydown', this.handleKeyDown);\n this.target.removeEventListener('focusout', this.handleFocusout);\n }\n\n this.target.setAttribute('aria-expanded', this.open ? 'true' : 'false');\n }\n\n @watch('placement')\n @watch('flip')\n @watch('positionStrategy')\n @watch('closeOnOutsideClick')\n @watch('distance')\n @watch('sameWidth')\n protected updateOptions() {\n if (!this.toggleController) return;\n\n this.toggleController.update();\n }\n\n @watch('size')\n protected sizeChange() {\n this.groups.forEach((g) => g.requestUpdate());\n }\n\n constructor() {\n super();\n this.toggleController = new IgcToggleController(this, {\n target: this.target,\n closeCallback: () => this._hide(),\n });\n }\n\n public override async firstUpdated() {\n if (this.targetNodes.length) {\n this.target = this.targetNodes[0];\n this.target.setAttribute('aria-haspopup', 'listbox');\n }\n\n await this.updateComplete;\n this.setInitialSelection();\n }\n\n protected override async getUpdateComplete() {\n const result = await super.getUpdateComplete();\n await this.toggleController.rendered;\n return result;\n }\n\n protected setInitialSelection() {\n const item = this.allItems.filter((item) => item.selected).at(-1);\n this.allItems.forEach((item) => (item.selected = false));\n if (item) {\n this.selectItem(item, false);\n }\n }\n\n protected handleKeyDown = (event: KeyboardEvent) => {\n const path = event.composedPath();\n if (!(path.includes(this.target) || path.includes(this.content))) return;\n\n if (this.keyDownHandlers.has(event.key)) {\n event.preventDefault();\n event.stopPropagation();\n this.keyDownHandlers.get(event.key)?.call(this);\n }\n };\n\n protected onHomeKey() {\n this.navigateTo(\n this.allItems.filter((item) => !item.disabled).at(0)!.value\n );\n }\n\n protected onEndKey() {\n this.navigateTo(\n this.allItems.filter((item) => !item.disabled).at(-1)!.value\n );\n }\n\n protected onEscapeKey() {\n this._hide();\n }\n\n protected onEnterKey() {\n this.selectItem(this.activeItem);\n }\n\n protected handleClick(event: MouseEvent) {\n const item = event\n .composedPath()\n .find(\n (e) => e instanceof IgcDropdownItemComponent\n ) as IgcDropdownItemComponent;\n\n if (!item || item.disabled) return;\n\n this.selectItem(item);\n }\n\n protected handleTargetClick = async () => {\n if (!this.open) {\n if (!this.handleOpening()) return;\n this.show();\n await this.updateComplete;\n this.emitEvent('igcOpened');\n } else {\n this._hide();\n }\n };\n\n protected handleOpening() {\n const args = { cancelable: true };\n return this.emitEvent('igcOpening', args);\n }\n\n protected handleClosing(): boolean {\n const args = { cancelable: true };\n return this.emitEvent('igcClosing', args);\n }\n\n protected handleChange(item: IgcDropdownItemComponent) {\n const args = { detail: item };\n this.emitEvent('igcChange', args);\n }\n\n protected handleSlotChange() {\n if (!this.target) return;\n this.target.setAttribute('aria-expanded', this.open ? 'true' : 'false');\n }\n\n protected handleFocusout(event: Event) {\n event.preventDefault();\n (event.target as HTMLElement).focus();\n }\n\n protected getItem(value: string) {\n let itemIndex = -1;\n let item!: IgcDropdownItemComponent;\n this.allItems.find((i, index) => {\n if (i.value === value) {\n item = i;\n itemIndex = index;\n }\n });\n return { item: item, index: itemIndex };\n }\n\n protected activateItem(value: IgcDropdownItemComponent) {\n if (!value) return;\n\n if (this.activeItem) {\n this.activeItem.active = false;\n }\n\n this.activeItem = value;\n this.activeItem.active = true;\n }\n\n protected selectItem(\n item: IgcDropdownItemComponent,\n emit = true\n ): IgcDropdownItemComponent | null {\n if (!item) return null;\n\n if (this.selectedItem) {\n this.selectedItem.selected = false;\n }\n\n this.activateItem(item);\n this.selectedItem = item;\n this.selectedItem.selected = true;\n if (emit) this.handleChange(this.selectedItem);\n if (emit && !this.keepOpenOnSelect) this._hide();\n\n return this.selectedItem;\n }\n\n protected navigate(direction: -1 | 1, currentIndex?: number) {\n let index = -1;\n if (this.activeItem) {\n index = currentIndex\n ? currentIndex\n : [...this.allItems].indexOf(this.activeItem) ?? index;\n }\n\n const newIndex = this.getNearestSiblingFocusableItemIndex(index, direction);\n this.navigateItem(newIndex);\n }\n\n private navigateItem(newIndex: number): IgcDropdownItemComponent | null {\n if (!this.allItems) {\n return null;\n }\n\n if (newIndex < 0 || newIndex >= this.allItems.length) {\n return null;\n }\n\n const newItem = this.allItems[newIndex];\n\n this.activateItem(newItem);\n this.scrollToHiddenItem(newItem);\n\n return newItem;\n }\n\n private scrollToHiddenItem(newItem: IgcDropdownItemComponent) {\n const elementRect = newItem.getBoundingClientRect();\n const parentRect = this.content.getBoundingClientRect();\n if (parentRect.top > elementRect.top) {\n this.content.scrollTop -= parentRect.top - elementRect.top;\n }\n\n if (parentRect.bottom < elementRect.bottom) {\n this.content.scrollTop += elementRect.bottom - parentRect.bottom;\n }\n }\n\n private getNearestSiblingFocusableItemIndex(\n startIndex: number,\n direction: -1 | 1\n ): number {\n let index = startIndex;\n const items = this.allItems;\n if (!items) {\n return -1;\n }\n\n while (items[index + direction] && items[index + direction].disabled) {\n index += direction;\n }\n\n index += direction;\n\n return index > -1 && index < items.length ? index : -1;\n }\n\n private navigateNext() {\n this.navigate(1);\n }\n\n private navigatePrev() {\n this.navigate(-1);\n }\n\n private onArrowDownKeyDown() {\n this.navigateNext();\n }\n\n private onArrowUpKeyDown() {\n this.navigatePrev();\n }\n\n private async _hide(emit = true) {\n if (emit && !this.handleClosing()) return;\n\n if (!this.open) return;\n\n this.open = false;\n\n if (emit) {\n await this.updateComplete;\n this.emitEvent('igcClosed');\n }\n }\n\n /** Shows the dropdown. */\n @blazorSuppress()\n public show(target?: HTMLElement) {\n if (this.open && !target) return;\n\n if (target) this.target = target;\n\n this.open = true;\n }\n\n /** Hides the dropdown. */\n public hide(): void {\n this._hide(false);\n }\n\n /** Toggles the open state of the dropdown. */\n @blazorSuppress()\n public toggle(target?: HTMLElement): void {\n this.open ? this.hide() : this.show(target);\n }\n\n /** Navigates to the item with the specified value. If it exists, returns the found item, otherwise - null. */\n public navigateTo(value: string): IgcDropdownItemComponent | null;\n /** Navigates to the item at the specified index. If it exists, returns the found item, otherwise - null. */\n public navigateTo(index: number): IgcDropdownItemComponent | null;\n /** Navigates to the specified item. If it exists, returns the found item, otherwise - null. */\n @blazorSuppress()\n public navigateTo(value: string | number): IgcDropdownItemComponent | null {\n const index =\n typeof value === 'string' ? this.getItem(value).index : (value as number);\n\n return this.navigateItem(index);\n }\n\n /** Selects the item with the specified value. If it exists, returns the found item, otherwise - null. */\n public select(value: string): IgcDropdownItemComponent | null;\n /** Selects the item at the specified index. If it exists, returns the found item, otherwise - null. */\n public select(index: number): IgcDropdownItemComponent | null;\n /** Selects the specified item. If it exists, returns the found item, otherwise - null. */\n @blazorSuppress()\n public select(value: string | number): IgcDropdownItemComponent | null {\n const item =\n typeof value === 'string'\n ? this.getItem(value).item\n : this.allItems[value as number];\n\n return this.selectItem(item, false);\n }\n\n /** Clears the current selection of the dropdown. */\n public clearSelection() {\n if (this.selectedItem) {\n this.selectedItem.selected = false;\n }\n this.selectedItem = null;\n }\n\n protected override render() {\n return html`\n <slot\n id=\"igcDDLTarget\"\n name=\"target\"\n @click=${this.handleTargetClick}\n @slotchange=${this.handleSlotChange}\n >\n </slot>\n <div\n part=\"base\"\n style=${styleMap({ position: this.positionStrategy })}\n @click=${this.handleClick}\n ${this.toggleController.toggleDirective}\n >\n <div role=\"listbox\" part=\"list\" aria-labelledby=\"igcDDLTarget\">\n <slot></slot>\n </div>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dropdown': IgcDropdownComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"dropdown.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\nimport {\n property,\n query,\n queryAssignedElements,\n state,\n} from 'lit/decorators.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';\nimport { blazorSuppress } from '../common/decorators/blazorSuppress.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { SizableMixin } from '../common/mixins/sizable.js';\nimport { IgcToggleController } from '../toggle/toggle.controller.js';\nimport type {\n IgcPlacement,\n IgcToggleComponent,\n IgcToggleEventMap,\n} from '../toggle/types';\nimport { styles } from './themes/light/dropdown.base.css.js';\nimport { styles as bootstrap } from './themes/light/dropdown.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/dropdown.fluent.css.js';\nimport { styles as indigo } from './themes/light/dropdown.indigo.css.js';\n\nimport { defineComponents } from '../common/definitions/defineComponents.js';\nimport IgcDropdownGroupComponent from './dropdown-group.js';\nimport IgcDropdownHeaderComponent from './dropdown-header.js';\nimport IgcDropdownItemComponent from './dropdown-item.js';\n\ndefineComponents(\n IgcDropdownGroupComponent,\n IgcDropdownHeaderComponent,\n IgcDropdownItemComponent\n);\n\nexport interface IgcDropdownEventMap extends IgcToggleEventMap {\n igcChange: CustomEvent<IgcDropdownItemComponent>;\n}\n\n/**\n * Represents a DropDown component.\n *\n * @element igc-dropdown\n *\n * @fires igcChange - Emitted when the selected item changes.\n * @fires igcOpening - Emitted just before the dropdown is open.\n * @fires igcOpened - Emitted after the dropdown is open.\n * @fires igcClosing - Emitter just before the dropdown is closed.\n * @fires igcClosed - Emitted after closing the dropdown.\n *\n * @slot target - Renders the dropdown's target element.\n * @slot - Renders the dropdown list items.\n *\n * @csspart base - The dropdown list wrapper.\n * @csspart list - The dropdown list.\n */\n@themes({ bootstrap, fluent, indigo })\n@blazorAdditionalDependencies(\n 'IgcDropdownItemComponent, IgcDropdownHeaderComponent, IgcDropdownGroupComponent'\n)\nexport default class IgcDropdownComponent\n extends SizableMixin(\n EventEmitterMixin<IgcDropdownEventMap, Constructor<LitElement>>(LitElement)\n )\n implements IgcToggleComponent\n{\n /** @private */\n public static readonly tagName: string = 'igc-dropdown';\n\n public static styles = styles;\n\n protected toggleController!: IgcToggleController;\n protected selectedItem!: IgcDropdownItemComponent | null;\n\n @state()\n protected activeItem!: IgcDropdownItemComponent;\n\n protected target!: HTMLElement;\n\n private readonly keyDownHandlers: Map<string, Function> = new Map(\n Object.entries({\n Escape: this.onEscapeKey,\n Enter: this.onEnterKey,\n ArrowUp: this.onArrowUpKeyDown,\n ArrowDown: this.onArrowDownKeyDown,\n ArrowLeft: this.onArrowUpKeyDown,\n ArrowRight: this.onArrowDownKeyDown,\n Home: this.onHomeKey,\n End: this.onEndKey,\n })\n );\n\n protected get allItems() {\n return [...this.items, ...this.groups.flatMap((group) => group.items)];\n }\n\n @queryAssignedElements({ slot: 'target' })\n private targetNodes!: Array<HTMLElement>;\n\n @query('[part=\"base\"]')\n protected content!: HTMLElement;\n\n @query('[part=\"list\"]')\n protected scrollContainer!: HTMLElement;\n\n @queryAssignedElements({ flatten: true, selector: 'igc-dropdown-item' })\n protected items!: Array<IgcDropdownItemComponent>;\n\n @queryAssignedElements({ flatten: true, selector: 'igc-dropdown-group' })\n protected groups!: Array<IgcDropdownGroupComponent>;\n\n /** Whether the dropdown should be kept open on selection. */\n @property({ type: Boolean, attribute: 'keep-open-on-select' })\n public keepOpenOnSelect = false;\n\n /** Sets the open state of the component. */\n @property({ type: Boolean })\n public open = false;\n\n /** The preferred placement of the component around the target element.\n * @type {\"top\" | \"top-start\" | \"top-end\" | \"bottom\" | \"bottom-start\" | \"bottom-end\" | \"right\" | \"right-start\" | \"right-end\" | \"left\" | \"left-start\" | \"left-end\"}\n */\n @property()\n public placement: IgcPlacement = 'bottom-start';\n\n /** Sets the component's positioning strategy. */\n @property({ attribute: 'position-strategy' })\n public positionStrategy: 'absolute' | 'fixed' = 'absolute';\n\n /** Determines the behavior of the component during scrolling the container. */\n @property({ attribute: 'scroll-strategy' })\n public scrollStrategy: 'scroll' | 'block' | 'close' = 'scroll';\n\n /**\n * Whether the component should be flipped to the opposite side of the target once it's about to overflow the visible area.\n * When true, once enough space is detected on its preferred side, it will flip back.\n */\n @property({ type: Boolean })\n public flip = false;\n\n /** The distance from the target element. */\n @property({ type: Number })\n public distance = 0;\n\n /** Whether the component should be kept open on clicking outside of it. */\n @property({ type: Boolean, attribute: 'keep-open-on-outside-click' })\n public keepOpenOnOutsideClick = false;\n\n /** Whether the dropdown's width should be the same as the target's one. */\n @property({ type: Boolean, attribute: 'same-width' })\n public sameWidth = false;\n\n @watch('open')\n protected toggleDirectiveChange() {\n if (!this.target) return;\n this.toggleController.target = this.target;\n\n if (this.open) {\n document.addEventListener('keydown', this.handleKeyDown);\n this.target.addEventListener('focusout', this.handleFocusout);\n this.selectedItem = this.allItems.find((i) => i.selected) ?? null;\n } else {\n document.removeEventListener('keydown', this.handleKeyDown);\n this.target.removeEventListener('focusout', this.handleFocusout);\n }\n\n this.target.setAttribute('aria-expanded', this.open ? 'true' : 'false');\n }\n\n @watch('placement')\n @watch('flip')\n @watch('positionStrategy')\n @watch('closeOnOutsideClick')\n @watch('distance')\n @watch('sameWidth')\n protected updateOptions() {\n if (!this.toggleController) return;\n\n this.toggleController.update();\n }\n\n @watch('size')\n protected sizeChange() {\n this.groups.forEach((g) => g.requestUpdate());\n }\n\n constructor() {\n super();\n this.toggleController = new IgcToggleController(this, {\n target: this.target,\n closeCallback: () => this._hide(),\n });\n }\n\n public override async firstUpdated() {\n if (this.targetNodes.length) {\n this.target = this.targetNodes[0];\n this.target.setAttribute('aria-haspopup', 'listbox');\n }\n\n await this.updateComplete;\n this.setInitialSelection();\n }\n\n protected override async getUpdateComplete() {\n const result = await super.getUpdateComplete();\n await this.toggleController.rendered;\n return result;\n }\n\n protected setInitialSelection() {\n const item = this.allItems.filter((item) => item.selected).at(-1);\n this.allItems.forEach((item) => (item.selected = false));\n if (item) {\n this.selectItem(item, false);\n }\n }\n\n protected handleKeyDown = (event: KeyboardEvent) => {\n const path = event.composedPath();\n if (!(path.includes(this.target) || path.includes(this.content))) return;\n\n if (this.keyDownHandlers.has(event.key)) {\n event.preventDefault();\n event.stopPropagation();\n this.keyDownHandlers.get(event.key)?.call(this);\n }\n };\n\n protected onHomeKey() {\n this.navigateTo(\n this.allItems.filter((item) => !item.disabled).at(0)!.value\n );\n }\n\n protected onEndKey() {\n this.navigateTo(\n this.allItems.filter((item) => !item.disabled).at(-1)!.value\n );\n }\n\n protected onEscapeKey() {\n this._hide();\n }\n\n protected onEnterKey() {\n this.selectItem(this.activeItem);\n }\n\n protected handleClick(event: MouseEvent) {\n const item = event\n .composedPath()\n .find(\n (e) => e instanceof IgcDropdownItemComponent\n ) as IgcDropdownItemComponent;\n\n if (!item || item.disabled) return;\n\n this.selectItem(item);\n }\n\n protected handleTargetClick = async () => {\n if (!this.open) {\n if (!this.handleOpening()) return;\n this.show();\n await this.updateComplete;\n this.emitEvent('igcOpened');\n } else {\n this._hide();\n }\n };\n\n protected handleOpening() {\n const args = { cancelable: true };\n return this.emitEvent('igcOpening', args);\n }\n\n protected handleClosing(): boolean {\n const args = { cancelable: true };\n return this.emitEvent('igcClosing', args);\n }\n\n protected handleChange(item: IgcDropdownItemComponent) {\n const args = { detail: item };\n this.emitEvent('igcChange', args);\n }\n\n protected handleSlotChange() {\n if (!this.target) return;\n this.target.setAttribute('aria-expanded', this.open ? 'true' : 'false');\n }\n\n protected handleFocusout(event: Event) {\n event.preventDefault();\n (event.target as HTMLElement).focus();\n }\n\n protected getItem(value: string) {\n let itemIndex = -1;\n let item!: IgcDropdownItemComponent;\n this.allItems.find((i, index) => {\n if (i.value === value) {\n item = i;\n itemIndex = index;\n }\n });\n return { item: item, index: itemIndex };\n }\n\n protected activateItem(value: IgcDropdownItemComponent) {\n if (!value) return;\n\n if (this.activeItem) {\n this.activeItem.active = false;\n }\n\n this.activeItem = value;\n this.activeItem.active = true;\n }\n\n protected selectItem(\n item: IgcDropdownItemComponent,\n emit = true\n ): IgcDropdownItemComponent | null {\n if (!item) return null;\n\n if (this.selectedItem) {\n this.selectedItem.selected = false;\n }\n\n this.activateItem(item);\n this.selectedItem = item;\n this.selectedItem.selected = true;\n if (emit) this.handleChange(this.selectedItem);\n if (emit && !this.keepOpenOnSelect) this._hide();\n\n return this.selectedItem;\n }\n\n protected navigate(direction: -1 | 1, currentIndex?: number) {\n let index = -1;\n if (this.activeItem) {\n index = currentIndex\n ? currentIndex\n : [...this.allItems].indexOf(this.activeItem) ?? index;\n }\n\n const newIndex = this.getNearestSiblingFocusableItemIndex(index, direction);\n this.navigateItem(newIndex);\n }\n\n private navigateItem(newIndex: number): IgcDropdownItemComponent | null {\n if (!this.allItems) {\n return null;\n }\n\n if (newIndex < 0 || newIndex >= this.allItems.length) {\n return null;\n }\n\n const newItem = this.allItems[newIndex];\n\n this.activateItem(newItem);\n this.scrollToHiddenItem(newItem);\n\n return newItem;\n }\n\n private scrollToHiddenItem(newItem: IgcDropdownItemComponent) {\n const elementRect = newItem.getBoundingClientRect();\n const parentRect = this.content.getBoundingClientRect();\n if (parentRect.top > elementRect.top) {\n this.content.scrollTop -= parentRect.top - elementRect.top;\n }\n\n if (parentRect.bottom < elementRect.bottom) {\n this.content.scrollTop += elementRect.bottom - parentRect.bottom;\n }\n }\n\n protected getNearestSiblingFocusableItemIndex(\n startIndex: number,\n direction: -1 | 1\n ): number {\n let index = startIndex;\n const items = this.allItems;\n if (!items) {\n return -1;\n }\n\n while (items[index + direction] && items[index + direction].disabled) {\n index += direction;\n }\n\n index += direction;\n\n return index > -1 && index < items.length ? index : -1;\n }\n\n private navigateNext() {\n this.navigate(1);\n }\n\n private navigatePrev() {\n this.navigate(-1);\n }\n\n protected onArrowDownKeyDown() {\n this.navigateNext();\n }\n\n protected onArrowUpKeyDown() {\n this.navigatePrev();\n }\n\n private async _hide(emit = true) {\n if (!this.open) return;\n if (emit && !this.handleClosing()) return;\n\n this.open = false;\n\n if (emit) {\n await this.updateComplete;\n this.emitEvent('igcClosed');\n }\n }\n\n /** Shows the dropdown. */\n @blazorSuppress()\n public show(target?: HTMLElement) {\n if (this.open && !target) return;\n\n if (target) this.target = target;\n\n this.open = true;\n }\n\n /** Hides the dropdown. */\n public hide(): void {\n this._hide(false);\n }\n\n /** Toggles the open state of the dropdown. */\n @blazorSuppress()\n public toggle(target?: HTMLElement): void {\n this.open ? this.hide() : this.show(target);\n }\n\n /** Navigates to the item with the specified value. If it exists, returns the found item, otherwise - null. */\n public navigateTo(value: string): IgcDropdownItemComponent | null;\n /** Navigates to the item at the specified index. If it exists, returns the found item, otherwise - null. */\n public navigateTo(index: number): IgcDropdownItemComponent | null;\n /** Navigates to the specified item. If it exists, returns the found item, otherwise - null. */\n @blazorSuppress()\n public navigateTo(value: string | number): IgcDropdownItemComponent | null {\n const index =\n typeof value === 'string' ? this.getItem(value).index : (value as number);\n\n return this.navigateItem(index);\n }\n\n /** Selects the item with the specified value. If it exists, returns the found item, otherwise - null. */\n public select(value: string): IgcDropdownItemComponent | null;\n /** Selects the item at the specified index. If it exists, returns the found item, otherwise - null. */\n public select(index: number): IgcDropdownItemComponent | null;\n /** Selects the specified item. If it exists, returns the found item, otherwise - null. */\n @blazorSuppress()\n public select(value: string | number): IgcDropdownItemComponent | null {\n const item =\n typeof value === 'string'\n ? this.getItem(value).item\n : this.allItems[value as number];\n\n return this.selectItem(item, false);\n }\n\n /** Clears the current selection of the dropdown. */\n public clearSelection() {\n if (this.selectedItem) {\n this.selectedItem.selected = false;\n }\n this.selectedItem = null;\n }\n\n protected override render() {\n return html`\n <slot\n id=\"igcDDLTarget\"\n name=\"target\"\n @click=${this.handleTargetClick}\n @slotchange=${this.handleSlotChange}\n >\n </slot>\n <div\n part=\"base\"\n style=${styleMap({ position: this.positionStrategy })}\n @click=${this.handleClick}\n ${this.toggleController.toggleDirective}\n >\n <div role=\"listbox\" part=\"list\" aria-labelledby=\"igcDDLTarget\">\n <slot></slot>\n </div>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dropdown': IgcDropdownComponent;\n }\n}\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css ``;
2
+ export const styles = css `/* stylelint-disable max-line-length */`;
3
3
  //# sourceMappingURL=dropdown.bootstrap.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/dark/dropdown.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css``;\n"]}
1
+ {"version":3,"file":"dropdown.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/dark/dropdown.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,yCAAyC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css ``;
2
+ export const styles = css `/* stylelint-disable max-line-length */`;
3
3
  //# sourceMappingURL=dropdown.fluent.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/dark/dropdown.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css``;\n"]}
1
+ {"version":3,"file":"dropdown.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/dark/dropdown.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,yCAAyC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */`;\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css ``;
2
+ export const styles = css `/* stylelint-disable max-line-length */`;
3
3
  //# sourceMappingURL=dropdown.indigo.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/dark/dropdown.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,EAAE,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css``;\n"]}
1
+ {"version":3,"file":"dropdown.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/dark/dropdown.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,yCAAyC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */`;\n"]}
@@ -1,5 +1,12 @@
1
1
  import { css } from 'lit';
2
2
  export const styles = css `:host {
3
+ --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);
4
+ --is-medium:
5
+ min(
6
+ clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),
7
+ clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)
8
+ );
9
+ --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);
3
10
  position: relative;
4
11
  -webkit-box-sizing: border-box;
5
12
  box-sizing: border-box;
@@ -25,6 +32,7 @@ export const styles = css `:host {
25
32
  display: none !important;
26
33
  }
27
34
 
35
+ /* stylelint-disable max-line-length */
28
36
  :host {
29
37
  pointer-events: auto;
30
38
  }
@@ -47,26 +55,7 @@ export const styles = css `:host {
47
55
  position: relative;
48
56
  color: hsla(var(--ig-secondary-500), var(--ig-secondary-a));
49
57
  pointer-events: none;
50
- }
51
-
52
- :host([size=small]) ::slotted(igc-dropdown-item) {
53
- padding: var(--igc-spacing-small) calc(var(--igc-spacing-small) * 3);
54
- }
55
- :host([size=small]) ::slotted([slot=label]) {
56
- padding: var(--igc-spacing-small) calc(var(--igc-spacing-small) * 2);
57
- }
58
-
59
- :host([size=medium]) ::slotted(igc-dropdown-item) {
60
- padding: var(--igc-spacing-medium) calc(var(--igc-spacing-medium) * 3);
61
- }
62
- :host([size=medium]) ::slotted([slot=label]) {
63
- padding: var(--igc-spacing-medium) calc(var(--igc-spacing-medium) * 2);
64
- }
65
-
66
- :host([size=large]) ::slotted(igc-dropdown-item) {
67
- padding: var(--igc-spacing-large) calc(var(--igc-spacing-large) * 3);
68
- }
69
- :host([size=large]) ::slotted([slot=label]) {
70
- padding: var(--igc-spacing-large) calc(var(--igc-spacing-large) * 2);
58
+ padding-inline: max(var(--is-large, 1) * 16px * var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)), var(--is-medium, 1) * 8px * var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)), var(--is-small, 1) * 4px * var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)));
59
+ padding-block: max(var(--is-large, 1) * 8px * var(--ig-spacing-block-large, var(--ig-spacing-block, --ig-spacing)), var(--is-medium, 1) * 4px * var(--ig-spacing-block-medium, var(--ig-spacing-block, --ig-spacing)), var(--is-small, 1) * 2px * var(--ig-spacing-block-small, var(--ig-spacing-block, --ig-spacing)));
71
60
  }`;
72
61
  //# sourceMappingURL=dropdown-group.base.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-group.base.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-group.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqEvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--scrolbar-size, 0.875rem);\n scrollbar-color: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--scrolbar-size, 0.875rem);\n height: var(--scrolbar-size, 0.875rem);\n background: var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a)));\n}\n\n[hidden] {\n display: none !important;\n}\n\n:host {\n pointer-events: auto;\n}\n:host ::slotted([slot=label]) {\n font-family: var(--ig-overline-font-family);\n font-size: var(--ig-overline-font-size);\n font-weight: var(--ig-overline-font-weight);\n font-style: var(--ig-overline-font-style);\n line-height: var(--ig-overline-line-height);\n letter-spacing: var(--ig-overline-letter-spacing);\n text-transform: var(--ig-overline-text-transform);\n margin-top: var(--ig-overline-margin-top);\n margin-bottom: var(--ig-overline-margin-bottom);\n white-space: nowrap;\n -o-text-overflow: ellipsis;\n text-overflow: ellipsis;\n overflow: hidden;\n display: block;\n white-space: nowrap;\n position: relative;\n color: hsla(var(--ig-secondary-500), var(--ig-secondary-a));\n pointer-events: none;\n}\n\n:host([size=small]) ::slotted(igc-dropdown-item) {\n padding: var(--igc-spacing-small) calc(var(--igc-spacing-small) * 3);\n}\n:host([size=small]) ::slotted([slot=label]) {\n padding: var(--igc-spacing-small) calc(var(--igc-spacing-small) * 2);\n}\n\n:host([size=medium]) ::slotted(igc-dropdown-item) {\n padding: var(--igc-spacing-medium) calc(var(--igc-spacing-medium) * 3);\n}\n:host([size=medium]) ::slotted([slot=label]) {\n padding: var(--igc-spacing-medium) calc(var(--igc-spacing-medium) * 2);\n}\n\n:host([size=large]) ::slotted(igc-dropdown-item) {\n padding: var(--igc-spacing-large) calc(var(--igc-spacing-large) * 3);\n}\n:host([size=large]) ::slotted([slot=label]) {\n padding: var(--igc-spacing-large) calc(var(--igc-spacing-large) * 2);\n}`;\n"]}
1
+ {"version":3,"file":"dropdown-group.base.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-group.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0DvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);\n --is-medium:\n min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--scrolbar-size, 0.875rem);\n scrollbar-color: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--scrolbar-size, 0.875rem);\n height: var(--scrolbar-size, 0.875rem);\n background: var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a)));\n}\n\n[hidden] {\n display: none !important;\n}\n\n/* stylelint-disable max-line-length */\n:host {\n pointer-events: auto;\n}\n:host ::slotted([slot=label]) {\n font-family: var(--ig-overline-font-family);\n font-size: var(--ig-overline-font-size);\n font-weight: var(--ig-overline-font-weight);\n font-style: var(--ig-overline-font-style);\n line-height: var(--ig-overline-line-height);\n letter-spacing: var(--ig-overline-letter-spacing);\n text-transform: var(--ig-overline-text-transform);\n margin-top: var(--ig-overline-margin-top);\n margin-bottom: var(--ig-overline-margin-bottom);\n white-space: nowrap;\n -o-text-overflow: ellipsis;\n text-overflow: ellipsis;\n overflow: hidden;\n display: block;\n white-space: nowrap;\n position: relative;\n color: hsla(var(--ig-secondary-500), var(--ig-secondary-a));\n pointer-events: none;\n padding-inline: max(var(--is-large, 1) * 16px * var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)), var(--is-medium, 1) * 8px * var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)), var(--is-small, 1) * 4px * var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)));\n padding-block: max(var(--is-large, 1) * 8px * var(--ig-spacing-block-large, var(--ig-spacing-block, --ig-spacing)), var(--is-medium, 1) * 4px * var(--ig-spacing-block-medium, var(--ig-spacing-block, --ig-spacing)), var(--is-small, 1) * 2px * var(--ig-spacing-block-small, var(--ig-spacing-block, --ig-spacing)));\n}`;\n"]}
@@ -1,16 +1,6 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host([size=small]) ::slotted(igc-dropdown-item),
3
- :host([size=small]) ::slotted([slot=label]) {
4
- padding: var(--igc-spacing-small);
5
- }
6
-
7
- :host([size=medium]) ::slotted(igc-dropdown-item),
8
- :host([size=medium]) ::slotted([slot=label]) {
9
- padding: var(--igc-spacing-medium);
10
- }
11
-
12
- :host([size=large]) ::slotted(igc-dropdown-item),
13
- :host([size=large]) ::slotted([slot=label]) {
14
- padding: var(--igc-spacing-large);
2
+ export const styles = css `/* stylelint-disable max-line-length */
3
+ :host ::slotted([slot=label]) {
4
+ padding: max(var(--is-large, 1) * 8px * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * 4px * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * 2px * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));
15
5
  }`;
16
6
  //# sourceMappingURL=dropdown-group.fluent.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-group.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-group.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;EAavB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host([size=small]) ::slotted(igc-dropdown-item),\n:host([size=small]) ::slotted([slot=label]) {\n padding: var(--igc-spacing-small);\n}\n\n:host([size=medium]) ::slotted(igc-dropdown-item),\n:host([size=medium]) ::slotted([slot=label]) {\n padding: var(--igc-spacing-medium);\n}\n\n:host([size=large]) ::slotted(igc-dropdown-item),\n:host([size=large]) ::slotted([slot=label]) {\n padding: var(--igc-spacing-large);\n}`;\n"]}
1
+ {"version":3,"file":"dropdown-group.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-group.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;EAGvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */\n:host ::slotted([slot=label]) {\n padding: max(var(--is-large, 1) * 8px * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * 4px * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * 2px * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n}`;\n"]}
@@ -1,5 +1,12 @@
1
1
  import { css } from 'lit';
2
2
  export const styles = css `:host {
3
+ --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);
4
+ --is-medium:
5
+ min(
6
+ clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),
7
+ clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)
8
+ );
9
+ --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);
3
10
  position: relative;
4
11
  -webkit-box-sizing: border-box;
5
12
  box-sizing: border-box;
@@ -25,6 +32,7 @@ export const styles = css `:host {
25
32
  display: none !important;
26
33
  }
27
34
 
35
+ /* stylelint-disable max-line-length */
28
36
  :host {
29
37
  font-family: var(--ig-overline-font-family);
30
38
  font-size: var(--ig-overline-font-size);
@@ -44,6 +52,8 @@ export const styles = css `:host {
44
52
  position: relative;
45
53
  color: var(--header-color, hsla(var(--ig-secondary-500), var(--ig-secondary-a)));
46
54
  pointer-events: none;
55
+ padding-inline: max(var(--is-large, 1) * 16px * var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)), var(--is-medium, 1) * 8px * var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)), var(--is-small, 1) * 4px * var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)));
56
+ padding-block: max(var(--is-large, 1) * 8px * var(--ig-spacing-block-large, var(--ig-spacing-block, --ig-spacing)), var(--is-medium, 1) * 4px * var(--ig-spacing-block-medium, var(--ig-spacing-block, --ig-spacing)), var(--is-small, 1) * 2px * var(--ig-spacing-block-small, var(--ig-spacing-block, --ig-spacing)));
47
57
  }
48
58
 
49
59
  ::slotted(*) {
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-header.base.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-header.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiDvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--scrolbar-size, 0.875rem);\n scrollbar-color: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--scrolbar-size, 0.875rem);\n height: var(--scrolbar-size, 0.875rem);\n background: var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a)));\n}\n\n[hidden] {\n display: none !important;\n}\n\n:host {\n font-family: var(--ig-overline-font-family);\n font-size: var(--ig-overline-font-size);\n font-weight: var(--ig-overline-font-weight);\n font-style: var(--ig-overline-font-style);\n line-height: var(--ig-overline-line-height);\n letter-spacing: var(--ig-overline-letter-spacing);\n text-transform: var(--ig-overline-text-transform);\n margin-top: var(--ig-overline-margin-top);\n margin-bottom: var(--ig-overline-margin-bottom);\n white-space: nowrap;\n -o-text-overflow: ellipsis;\n text-overflow: ellipsis;\n overflow: hidden;\n display: block;\n white-space: nowrap;\n position: relative;\n color: var(--header-color, hsla(var(--ig-secondary-500), var(--ig-secondary-a)));\n pointer-events: none;\n}\n\n::slotted(*) {\n font: inherit;\n}`;\n"]}
1
+ {"version":3,"file":"dropdown-header.base.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-header.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2DvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);\n --is-medium:\n min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--scrolbar-size, 0.875rem);\n scrollbar-color: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--scrolbar-size, 0.875rem);\n height: var(--scrolbar-size, 0.875rem);\n background: var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a)));\n}\n\n[hidden] {\n display: none !important;\n}\n\n/* stylelint-disable max-line-length */\n:host {\n font-family: var(--ig-overline-font-family);\n font-size: var(--ig-overline-font-size);\n font-weight: var(--ig-overline-font-weight);\n font-style: var(--ig-overline-font-style);\n line-height: var(--ig-overline-line-height);\n letter-spacing: var(--ig-overline-letter-spacing);\n text-transform: var(--ig-overline-text-transform);\n margin-top: var(--ig-overline-margin-top);\n margin-bottom: var(--ig-overline-margin-bottom);\n white-space: nowrap;\n -o-text-overflow: ellipsis;\n text-overflow: ellipsis;\n overflow: hidden;\n display: block;\n white-space: nowrap;\n position: relative;\n color: var(--header-color, hsla(var(--ig-secondary-500), var(--ig-secondary-a)));\n pointer-events: none;\n padding-inline: max(var(--is-large, 1) * 16px * var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)), var(--is-medium, 1) * 8px * var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)), var(--is-small, 1) * 4px * var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)));\n padding-block: max(var(--is-large, 1) * 8px * var(--ig-spacing-block-large, var(--ig-spacing-block, --ig-spacing)), var(--is-medium, 1) * 4px * var(--ig-spacing-block-medium, var(--ig-spacing-block, --ig-spacing)), var(--is-small, 1) * 2px * var(--ig-spacing-block-small, var(--ig-spacing-block, --ig-spacing)));\n}\n\n::slotted(*) {\n font: inherit;\n}`;\n"]}
@@ -1,5 +1,6 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host {
2
+ export const styles = css `/* stylelint-disable max-line-length */
3
+ :host {
3
4
  color: hsla(var(--ig-gray-700), var(--ig-gray-a));
4
5
  }`;
5
6
  //# sourceMappingURL=dropdown-header.bootstrap.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-header.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-header.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;EAEvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n color: hsla(var(--ig-gray-700), var(--ig-gray-a));\n}`;\n"]}
1
+ {"version":3,"file":"dropdown-header.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-header.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;EAGvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */\n:host {\n color: hsla(var(--ig-gray-700), var(--ig-gray-a));\n}`;\n"]}
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;
@@ -0,0 +1,6 @@
1
+ import { css } from 'lit';
2
+ export const styles = css `/* stylelint-disable max-line-length */
3
+ :host {
4
+ padding: max(var(--is-large, 1) * 8px * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * 4px * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * 2px * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));
5
+ }`;
6
+ //# sourceMappingURL=dropdown-header.fluent.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropdown-header.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-header.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;EAGvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */\n:host {\n padding: max(var(--is-large, 1) * 8px * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * 4px * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * 2px * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n}`;\n"]}
@@ -1,5 +1,12 @@
1
1
  import { css } from 'lit';
2
2
  export const styles = css `:host {
3
+ --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);
4
+ --is-medium:
5
+ min(
6
+ clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),
7
+ clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)
8
+ );
9
+ --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);
3
10
  position: relative;
4
11
  -webkit-box-sizing: border-box;
5
12
  box-sizing: border-box;
@@ -25,6 +32,7 @@ export const styles = css `:host {
25
32
  display: none !important;
26
33
  }
27
34
 
35
+ /* stylelint-disable max-line-length */
28
36
  :host {
29
37
  font-family: var(--ig-body-2-font-family);
30
38
  font-size: var(--ig-body-2-font-size);
@@ -49,6 +57,9 @@ export const styles = css `:host {
49
57
  position: relative;
50
58
  cursor: pointer;
51
59
  color: hsla(var(--ig-gray-800), var(--ig-gray-a));
60
+ outline-style: none;
61
+ padding-inline: max(var(--is-large, 1) * 24px * var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)), var(--is-medium, 1) * 12px * var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)), var(--is-small, 1) * 6px * var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)));
62
+ padding-block: max(var(--is-large, 1) * 8px * var(--ig-spacing-block-large, var(--ig-spacing-block, --ig-spacing)), var(--is-medium, 1) * 4px * var(--ig-spacing-block-medium, var(--ig-spacing-block, --ig-spacing)), var(--is-small, 1) * 2px * var(--ig-spacing-block-small, var(--ig-spacing-block, --ig-spacing)));
52
63
  }
53
64
 
54
65
  :host(:hover),
@@ -103,12 +114,12 @@ export const styles = css `:host {
103
114
  }
104
115
 
105
116
  [name=prefix]::slotted(*) {
106
- -webkit-margin-end: calc(var(--igc-spacing-large) * 2);
107
- margin-inline-end: calc(var(--igc-spacing-large) * 2);
117
+ -webkit-margin-end: max(var(--is-large, 1) * 16px * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * 16px * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * 16px * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));
118
+ margin-inline-end: max(var(--is-large, 1) * 16px * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * 16px * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * 16px * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));
108
119
  }
109
120
 
110
121
  [name=suffix]::slotted(*) {
111
- -webkit-margin-start: calc(var(--igc-spacing-large) * 2);
112
- margin-inline-start: calc(var(--igc-spacing-large) * 2);
122
+ -webkit-margin-start: max(var(--is-large, 1) * 16px * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * 16px * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * 16px * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));
123
+ margin-inline-start: max(var(--is-large, 1) * 16px * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * 16px * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * 16px * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));
113
124
  }`;
114
125
  //# sourceMappingURL=dropdown-item.base.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-item.base.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-item.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+GvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--scrolbar-size, 0.875rem);\n scrollbar-color: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--scrolbar-size, 0.875rem);\n height: var(--scrolbar-size, 0.875rem);\n background: var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a)));\n}\n\n[hidden] {\n display: none !important;\n}\n\n:host {\n font-family: var(--ig-body-2-font-family);\n font-size: var(--ig-body-2-font-size);\n font-weight: var(--ig-body-2-font-weight);\n font-style: var(--ig-body-2-font-style);\n line-height: var(--ig-body-2-line-height);\n letter-spacing: var(--ig-body-2-letter-spacing);\n text-transform: var(--ig-body-2-text-transform);\n margin-top: var(--ig-body-2-margin-top);\n margin-bottom: var(--ig-body-2-margin-bottom);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n width: 100%;\n white-space: nowrap;\n position: relative;\n cursor: pointer;\n color: hsla(var(--ig-gray-800), var(--ig-gray-a));\n}\n\n:host(:hover),\n:host([active]) {\n background: hsla(var(--ig-gray-200), var(--ig-gray-a));\n}\n\n:host([selected]) {\n background: hsla(var(--ig-secondary-100), var(--ig-secondary-a));\n color: var(--ig-secondary-100-contrast);\n}\n\n:host([selected]:hover),\n:host([selected][active]) {\n background: hsla(var(--ig-secondary-200), var(--ig-secondary-a));\n color: var(--ig-secondary-200-contrast);\n}\n\n:host([disabled]) {\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n cursor: default;\n pointer-events: none;\n}\n\n::slotted(*) {\n font: inherit;\n}\n\n[part=content] {\n white-space: nowrap;\n -o-text-overflow: ellipsis;\n text-overflow: ellipsis;\n overflow: hidden;\n display: block;\n width: 100%;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n}\n\n[part=prefix],\n[part=suffix] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n\n[name=prefix]::slotted(*) {\n -webkit-margin-end: calc(var(--igc-spacing-large) * 2);\n margin-inline-end: calc(var(--igc-spacing-large) * 2);\n}\n\n[name=suffix]::slotted(*) {\n -webkit-margin-start: calc(var(--igc-spacing-large) * 2);\n margin-inline-start: calc(var(--igc-spacing-large) * 2);\n}`;\n"]}
1
+ {"version":3,"file":"dropdown-item.base.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-item.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0HvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);\n --is-medium:\n min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--scrolbar-size, 0.875rem);\n scrollbar-color: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--scrolbar-size, 0.875rem);\n height: var(--scrolbar-size, 0.875rem);\n background: var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a)));\n}\n\n[hidden] {\n display: none !important;\n}\n\n/* stylelint-disable max-line-length */\n:host {\n font-family: var(--ig-body-2-font-family);\n font-size: var(--ig-body-2-font-size);\n font-weight: var(--ig-body-2-font-weight);\n font-style: var(--ig-body-2-font-style);\n line-height: var(--ig-body-2-line-height);\n letter-spacing: var(--ig-body-2-letter-spacing);\n text-transform: var(--ig-body-2-text-transform);\n margin-top: var(--ig-body-2-margin-top);\n margin-bottom: var(--ig-body-2-margin-bottom);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n width: 100%;\n white-space: nowrap;\n position: relative;\n cursor: pointer;\n color: hsla(var(--ig-gray-800), var(--ig-gray-a));\n outline-style: none;\n padding-inline: max(var(--is-large, 1) * 24px * var(--ig-spacing-inline-large, var(--ig-spacing-inline, --ig-spacing)), var(--is-medium, 1) * 12px * var(--ig-spacing-inline-medium, var(--ig-spacing-inline, --ig-spacing)), var(--is-small, 1) * 6px * var(--ig-spacing-inline-small, var(--ig-spacing-inline, --ig-spacing)));\n padding-block: max(var(--is-large, 1) * 8px * var(--ig-spacing-block-large, var(--ig-spacing-block, --ig-spacing)), var(--is-medium, 1) * 4px * var(--ig-spacing-block-medium, var(--ig-spacing-block, --ig-spacing)), var(--is-small, 1) * 2px * var(--ig-spacing-block-small, var(--ig-spacing-block, --ig-spacing)));\n}\n\n:host(:hover),\n:host([active]) {\n background: hsla(var(--ig-gray-200), var(--ig-gray-a));\n}\n\n:host([selected]) {\n background: hsla(var(--ig-secondary-100), var(--ig-secondary-a));\n color: var(--ig-secondary-100-contrast);\n}\n\n:host([selected]:hover),\n:host([selected][active]) {\n background: hsla(var(--ig-secondary-200), var(--ig-secondary-a));\n color: var(--ig-secondary-200-contrast);\n}\n\n:host([disabled]) {\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n cursor: default;\n pointer-events: none;\n}\n\n::slotted(*) {\n font: inherit;\n}\n\n[part=content] {\n white-space: nowrap;\n -o-text-overflow: ellipsis;\n text-overflow: ellipsis;\n overflow: hidden;\n display: block;\n width: 100%;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n}\n\n[part=prefix],\n[part=suffix] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n\n[name=prefix]::slotted(*) {\n -webkit-margin-end: max(var(--is-large, 1) * 16px * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * 16px * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * 16px * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n margin-inline-end: max(var(--is-large, 1) * 16px * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * 16px * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * 16px * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n}\n\n[name=suffix]::slotted(*) {\n -webkit-margin-start: max(var(--is-large, 1) * 16px * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * 16px * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * 16px * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n margin-inline-start: max(var(--is-large, 1) * 16px * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * 16px * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * 16px * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n}`;\n"]}
@@ -1,5 +1,6 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host {
2
+ export const styles = css `/* stylelint-disable max-line-length */
3
+ :host {
3
4
  color: var(--item-color, hsla(var(--ig-gray-900), var(--ig-gray-a)));
4
5
  }
5
6
 
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-item.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-item.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;EAuBvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n color: var(--item-color, hsla(var(--ig-gray-900), var(--ig-gray-a)));\n}\n\n:host(:hover),\n:host([active]) {\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n color: var(--hover-item-color, var(--ig-gray-100-contrast));\n}\n\n:host([selected]) {\n background: hsla(var(--ig-primary-500), var(--ig-primary-a));\n color: var(--ig-primary-600-contrast);\n}\n\n:host([selected]:hover),\n:host([selected][active]) {\n background: hsla(var(--ig-primary-600), var(--ig-primary-a));\n color: var(--ig-primary-600-contrast);\n}\n\n:host([disabled]) {\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n}`;\n"]}
1
+ {"version":3,"file":"dropdown-item.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-item.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;EAwBvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */\n:host {\n color: var(--item-color, hsla(var(--ig-gray-900), var(--ig-gray-a)));\n}\n\n:host(:hover),\n:host([active]) {\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n color: var(--hover-item-color, var(--ig-gray-100-contrast));\n}\n\n:host([selected]) {\n background: hsla(var(--ig-primary-500), var(--ig-primary-a));\n color: var(--ig-primary-600-contrast);\n}\n\n:host([selected]:hover),\n:host([selected][active]) {\n background: hsla(var(--ig-primary-600), var(--ig-primary-a));\n color: var(--ig-primary-600-contrast);\n}\n\n:host([disabled]) {\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n}`;\n"]}
@@ -1,5 +1,10 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host(:hover),
2
+ export const styles = css `/* stylelint-disable max-line-length */
3
+ :host {
4
+ padding: max(var(--is-large, 1) * 8px * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * 4px * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * 2px * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));
5
+ }
6
+
7
+ :host(:hover),
3
8
  :host([active]) {
4
9
  background: hsla(var(--ig-gray-100), var(--ig-gray-a));
5
10
  color: var(--ig-gray-100-contrast);
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-item.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-item.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;EAmBvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host(:hover),\n:host([active]) {\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n color: var(--ig-gray-100-contrast);\n}\n\n:host([selected]) {\n background: hsla(var(--ig-gray-200), var(--ig-gray-a));\n color: var(--selected-item-color, var(--ig-gray-200-contrast));\n}\n\n:host([selected]:hover),\n:host([selected][active]) {\n background: hsla(var(--ig-gray-200), var(--ig-gray-a));\n color: var(--selected-item-color, var(--ig-gray-200-contrast));\n}\n\n:host([disabled]) {\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n}`;\n"]}
1
+ {"version":3,"file":"dropdown-item.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-item.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;EAwBvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */\n:host {\n padding: max(var(--is-large, 1) * 8px * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * 4px * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * 2px * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n}\n\n:host(:hover),\n:host([active]) {\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n color: var(--ig-gray-100-contrast);\n}\n\n:host([selected]) {\n background: hsla(var(--ig-gray-200), var(--ig-gray-a));\n color: var(--selected-item-color, var(--ig-gray-200-contrast));\n}\n\n:host([selected]:hover),\n:host([selected][active]) {\n background: hsla(var(--ig-gray-200), var(--ig-gray-a));\n color: var(--selected-item-color, var(--ig-gray-200-contrast));\n}\n\n:host([disabled]) {\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n}`;\n"]}
@@ -1,5 +1,6 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host {
2
+ export const styles = css `/* stylelint-disable max-line-length */
3
+ :host {
3
4
  border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 0.125rem), 0.125rem);
4
5
  color: hsla(var(--ig-gray-700), var(--ig-gray-a));
5
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-item.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-item.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;EAuBvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 0.125rem), 0.125rem);\n color: hsla(var(--ig-gray-700), var(--ig-gray-a));\n}\n\n:host(:hover),\n:host([active]) {\n background: hsla(var(--ig-primary-500), 0.15);\n}\n\n:host([selected]) {\n background: hsla(var(--ig-primary-500), var(--ig-primary-a));\n color: var(--ig-primary-500-contrast);\n}\n\n:host([selected]:hover),\n:host([selected][active]) {\n background: hsla(var(--ig-primary-400), var(--ig-primary-a));\n color: var(--ig-primary-400-contrast);\n}\n\n:host([disabled]) {\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n}`;\n"]}
1
+ {"version":3,"file":"dropdown-item.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/dropdown/themes/light/dropdown-item.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;EAwBvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`/* stylelint-disable max-line-length */\n:host {\n border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 0.125rem), 0.125rem);\n color: hsla(var(--ig-gray-700), var(--ig-gray-a));\n}\n\n:host(:hover),\n:host([active]) {\n background: hsla(var(--ig-primary-500), 0.15);\n}\n\n:host([selected]) {\n background: hsla(var(--ig-primary-500), var(--ig-primary-a));\n color: var(--ig-primary-500-contrast);\n}\n\n:host([selected]:hover),\n:host([selected][active]) {\n background: hsla(var(--ig-primary-400), var(--ig-primary-a));\n color: var(--ig-primary-400-contrast);\n}\n\n:host([disabled]) {\n color: hsla(var(--ig-gray-400), var(--ig-gray-a));\n}`;\n"]}
@@ -1,5 +1,12 @@
1
1
  import { css } from 'lit';
2
2
  export const styles = css `:host {
3
+ --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);
4
+ --is-medium:
5
+ min(
6
+ clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),
7
+ clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)
8
+ );
9
+ --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);
3
10
  position: relative;
4
11
  -webkit-box-sizing: border-box;
5
12
  box-sizing: border-box;
@@ -25,6 +32,7 @@ export const styles = css `:host {
25
32
  display: none !important;
26
33
  }
27
34
 
35
+ /* stylelint-disable max-line-length */
28
36
  :host {
29
37
  display: -webkit-box;
30
38
  display: -ms-flexbox;
@@ -44,24 +52,15 @@ export const styles = css `:host {
44
52
  z-index: 10005;
45
53
  }
46
54
 
47
- :host([size=small]) ::slotted(igc-dropdown-item) {
48
- padding: var(--igc-spacing-small) calc(var(--igc-spacing-small) * 3);
49
- }
50
- :host([size=small]) ::slotted(igc-dropdown-header) {
51
- padding: var(--igc-spacing-small) calc(var(--igc-spacing-small) * 2);
55
+ :host([size=small]) {
56
+ --component-size: var(--ig-size, var(--ig-size-small));
52
57
  }
53
58
 
54
- :host([size=medium]) ::slotted(igc-dropdown-item) {
55
- padding: var(--igc-spacing-medium) calc(var(--igc-spacing-medium) * 3);
56
- }
57
- :host([size=medium]) ::slotted(igc-dropdown-header) {
58
- padding: var(--igc-spacing-medium) calc(var(--igc-spacing-medium) * 2);
59
+ :host([size=medium]) {
60
+ --component-size: var(--ig-size, var(--ig-size-medium));
59
61
  }
60
62
 
61
- :host([size=large]) ::slotted(igc-dropdown-item) {
62
- padding: var(--igc-spacing-large) calc(var(--igc-spacing-large) * 3);
63
- }
64
- :host([size=large]) ::slotted(igc-dropdown-header) {
65
- padding: var(--igc-spacing-large) calc(var(--igc-spacing-large) * 2);
63
+ :host([size=large]) {
64
+ --component-size: var(--ig-size, var(--ig-size-large));
66
65
  }`;
67
66
  //# sourceMappingURL=dropdown.base.css.js.map