igniteui-webcomponents 4.4.0 → 4.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (831) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/components/accordion/accordion.d.ts +1 -0
  3. package/components/accordion/accordion.js +5 -3
  4. package/components/accordion/accordion.js.map +1 -1
  5. package/components/avatar/avatar.d.ts +1 -0
  6. package/components/avatar/avatar.js +8 -10
  7. package/components/avatar/avatar.js.map +1 -1
  8. package/components/avatar/themes/avatar.base.css.js +0 -12
  9. package/components/avatar/themes/avatar.base.css.js.map +1 -1
  10. package/components/avatar/themes/dark/avatar.bootstrap.css.js +6 -1
  11. package/components/avatar/themes/dark/avatar.bootstrap.css.js.map +1 -1
  12. package/components/avatar/themes/dark/avatar.fluent.css.js +6 -1
  13. package/components/avatar/themes/dark/avatar.fluent.css.js.map +1 -1
  14. package/components/avatar/themes/dark/avatar.indigo.css.js +6 -1
  15. package/components/avatar/themes/dark/avatar.indigo.css.js.map +1 -1
  16. package/components/avatar/themes/dark/avatar.material.css.js +6 -1
  17. package/components/avatar/themes/dark/avatar.material.css.js.map +1 -1
  18. package/components/avatar/themes/light/avatar.bootstrap.css.js +1 -20
  19. package/components/avatar/themes/light/avatar.bootstrap.css.js.map +1 -1
  20. package/components/avatar/themes/light/avatar.fluent.css.js +1 -20
  21. package/components/avatar/themes/light/avatar.fluent.css.js.map +1 -1
  22. package/components/avatar/themes/light/avatar.indigo.css.js +1 -20
  23. package/components/avatar/themes/light/avatar.indigo.css.js.map +1 -1
  24. package/components/avatar/themes/light/avatar.material.css.js +1 -20
  25. package/components/avatar/themes/light/avatar.material.css.js.map +1 -1
  26. package/components/avatar/themes/shared/avatar.bootstrap.css.js +20 -0
  27. package/components/avatar/themes/shared/avatar.bootstrap.css.js.map +1 -0
  28. package/components/avatar/themes/shared/avatar.fluent.css.js +20 -0
  29. package/components/avatar/themes/shared/avatar.fluent.css.js.map +1 -0
  30. package/components/avatar/themes/shared/avatar.indigo.css.js +20 -0
  31. package/components/avatar/themes/shared/avatar.indigo.css.js.map +1 -0
  32. package/components/avatar/themes/shared/avatar.material.css.js +20 -0
  33. package/components/avatar/themes/shared/avatar.material.css.js.map +1 -0
  34. package/components/avatar/themes/themes.d.ts +2 -0
  35. package/components/avatar/themes/themes.js +43 -0
  36. package/components/avatar/themes/themes.js.map +1 -0
  37. package/components/badge/badge.d.ts +1 -0
  38. package/components/badge/badge.js +5 -1
  39. package/components/badge/badge.js.map +1 -1
  40. package/components/{tabs/themes/dark/tab.dark.bootstrap.css.js → badge/themes/dark/badge.bootstrap.css.js} +1 -1
  41. package/components/badge/themes/dark/badge.bootstrap.css.js.map +1 -0
  42. package/components/badge/themes/light/badge.base.css.js +17 -6
  43. package/components/badge/themes/light/badge.base.css.js.map +1 -1
  44. package/components/badge/themes/light/badge.bootstrap.css.js +18 -4
  45. package/components/badge/themes/light/badge.bootstrap.css.js.map +1 -1
  46. package/components/button/button-base.d.ts +1 -1
  47. package/components/button/button-base.js +2 -16
  48. package/components/button/button-base.js.map +1 -1
  49. package/components/button/button.d.ts +1 -3
  50. package/components/button/button.js +9 -5
  51. package/components/button/button.js.map +1 -1
  52. package/components/button/icon-button.d.ts +1 -0
  53. package/components/button/icon-button.js +9 -4
  54. package/components/button/icon-button.js.map +1 -1
  55. package/components/button/themes/button/light/button.base.css.js +0 -12
  56. package/components/button/themes/button/light/button.base.css.js.map +1 -1
  57. package/components/button/themes/button/light/button.fluent.css.js +2 -2
  58. package/components/button/themes/button/light/button.fluent.css.js.map +1 -1
  59. package/components/button/themes/icon-button/light/icon-button.base.css.js +0 -12
  60. package/components/button/themes/icon-button/light/icon-button.base.css.js.map +1 -1
  61. package/components/button/themes/icon-button/light/icon-button.fluent.css.js +2 -2
  62. package/components/button/themes/icon-button/light/icon-button.fluent.css.js.map +1 -1
  63. package/components/button-group/button-group.d.ts +70 -0
  64. package/components/button-group/button-group.js +209 -0
  65. package/components/button-group/button-group.js.map +1 -0
  66. package/components/button-group/themes/light/button-group.base.css.js +57 -0
  67. package/components/button-group/themes/light/button-group.base.css.js.map +1 -0
  68. package/components/button-group/themes/light/button-group.bootstrap.css.js +34 -0
  69. package/components/button-group/themes/light/button-group.bootstrap.css.js.map +1 -0
  70. package/components/button-group/themes/light/button-group.fluent.css.js +34 -0
  71. package/components/button-group/themes/light/button-group.fluent.css.js.map +1 -0
  72. package/components/button-group/themes/light/button-group.indigo.css.js +35 -0
  73. package/components/button-group/themes/light/button-group.indigo.css.js.map +1 -0
  74. package/components/button-group/themes/light/button-group.material.css.js +34 -0
  75. package/components/button-group/themes/light/button-group.material.css.js.map +1 -0
  76. package/components/button-group/themes/light/toggle-button/toggle-button.base.css.js +161 -0
  77. package/components/button-group/themes/light/toggle-button/toggle-button.base.css.js.map +1 -0
  78. package/components/button-group/themes/light/toggle-button/toggle-button.bootstrap.css.js +63 -0
  79. package/components/button-group/themes/light/toggle-button/toggle-button.bootstrap.css.js.map +1 -0
  80. package/components/button-group/themes/light/toggle-button/toggle-button.fluent.css.js +55 -0
  81. package/components/button-group/themes/light/toggle-button/toggle-button.fluent.css.js.map +1 -0
  82. package/components/button-group/themes/light/toggle-button/toggle-button.indigo.css.js +69 -0
  83. package/components/button-group/themes/light/toggle-button/toggle-button.indigo.css.js.map +1 -0
  84. package/components/button-group/themes/light/toggle-button/toggle-button.material.css.js +56 -0
  85. package/components/button-group/themes/light/toggle-button/toggle-button.material.css.js.map +1 -0
  86. package/components/button-group/toggle-button.d.ts +49 -0
  87. package/components/button-group/toggle-button.js +81 -0
  88. package/components/button-group/toggle-button.js.map +1 -0
  89. package/components/calendar/calendar.d.ts +4 -3
  90. package/components/calendar/calendar.js +26 -14
  91. package/components/calendar/calendar.js.map +1 -1
  92. package/components/calendar/days-view/days-view.d.ts +1 -0
  93. package/components/calendar/days-view/days-view.js +21 -5
  94. package/components/calendar/days-view/days-view.js.map +1 -1
  95. package/components/calendar/months-view/months-view.d.ts +1 -0
  96. package/components/calendar/months-view/months-view.js +20 -4
  97. package/components/calendar/months-view/months-view.js.map +1 -1
  98. package/components/calendar/themes/calendar.base.css.js +13 -74
  99. package/components/calendar/themes/calendar.base.css.js.map +1 -1
  100. package/components/calendar/themes/days-view.base.css.js +1 -137
  101. package/components/calendar/themes/days-view.base.css.js.map +1 -1
  102. package/components/calendar/themes/{bootstrap → light/bootstrap}/calendar.bootstrap.css.js +25 -11
  103. package/components/calendar/themes/light/bootstrap/calendar.bootstrap.css.js.map +1 -0
  104. package/components/calendar/themes/{bootstrap → light/bootstrap}/days-view.bootstrap.css.js +104 -3
  105. package/components/calendar/themes/light/bootstrap/days-view.bootstrap.css.js.map +1 -0
  106. package/components/calendar/themes/{bootstrap → light/bootstrap}/year-month-view.bootstrap.css.js +14 -5
  107. package/components/calendar/themes/light/bootstrap/year-month-view.bootstrap.css.js.map +1 -0
  108. package/components/calendar/themes/light/fluent/calendar.fluent.css.js +108 -0
  109. package/components/calendar/themes/light/fluent/calendar.fluent.css.js.map +1 -0
  110. package/components/calendar/themes/{fluent → light/fluent}/days-view.fluent.css.js +108 -25
  111. package/components/calendar/themes/light/fluent/days-view.fluent.css.js.map +1 -0
  112. package/components/calendar/themes/light/fluent/year-month-view.fluent.css.js +49 -0
  113. package/components/calendar/themes/light/fluent/year-month-view.fluent.css.js.map +1 -0
  114. package/components/calendar/themes/{indigo → light/indigo}/calendar.indigo.css.js +30 -10
  115. package/components/calendar/themes/light/indigo/calendar.indigo.css.js.map +1 -0
  116. package/components/calendar/themes/light/indigo/days-view.indigo.css.js +166 -0
  117. package/components/calendar/themes/light/indigo/days-view.indigo.css.js.map +1 -0
  118. package/components/calendar/themes/light/indigo/year-month-view.indigo.css.js +40 -0
  119. package/components/calendar/themes/light/indigo/year-month-view.indigo.css.js.map +1 -0
  120. package/components/calendar/themes/light/material/calendar.material.css.js +83 -0
  121. package/components/calendar/themes/light/material/calendar.material.css.js.map +1 -0
  122. package/components/calendar/themes/light/material/days-view.material.css.js +166 -0
  123. package/components/calendar/themes/light/material/days-view.material.css.js.map +1 -0
  124. package/components/calendar/themes/light/material/year-month-view.material.css.js +40 -0
  125. package/components/calendar/themes/light/material/year-month-view.material.css.js.map +1 -0
  126. package/components/calendar/themes/year-month-view.base.css.js +0 -38
  127. package/components/calendar/themes/year-month-view.base.css.js.map +1 -1
  128. package/components/calendar/years-view/years-view.d.ts +1 -0
  129. package/components/calendar/years-view/years-view.js +20 -4
  130. package/components/calendar/years-view/years-view.js.map +1 -1
  131. package/components/card/card.actions.d.ts +1 -0
  132. package/components/card/card.actions.js +6 -2
  133. package/components/card/card.actions.js.map +1 -1
  134. package/components/card/card.content.d.ts +1 -0
  135. package/components/card/card.content.js +22 -2
  136. package/components/card/card.content.js.map +1 -1
  137. package/components/card/card.d.ts +1 -0
  138. package/components/card/card.header.d.ts +1 -0
  139. package/components/card/card.header.js +18 -4
  140. package/components/card/card.header.js.map +1 -1
  141. package/components/card/card.js +18 -6
  142. package/components/card/card.js.map +1 -1
  143. package/components/card/card.media.d.ts +1 -0
  144. package/components/card/card.media.js +5 -1
  145. package/components/card/card.media.js.map +1 -1
  146. package/components/{nav-drawer/themes/dark/nav-drawer-item.base.css.js → card/themes/dark/card.bootstrap.css.js} +1 -1
  147. package/components/card/themes/dark/card.bootstrap.css.js.map +1 -0
  148. package/components/{tabs/themes/dark/tab.dark.base.css.js → card/themes/dark/card.fluent.css.js} +1 -1
  149. package/components/card/themes/dark/card.fluent.css.js.map +1 -0
  150. package/components/{nav-drawer/themes/dark/nav-drawer-item.indigo.css.js → card/themes/dark/card.indigo.css.js} +1 -1
  151. package/components/card/themes/dark/card.indigo.css.js.map +1 -0
  152. package/components/card/themes/dark/card.material.css.js +3 -0
  153. package/components/card/themes/dark/card.material.css.js.map +1 -0
  154. package/components/card/themes/light/card.actions.base.css.d.ts +1 -0
  155. package/components/card/themes/light/{card.actions.material.css.js → card.actions.base.css.js} +1 -1
  156. package/components/card/themes/light/card.actions.base.css.js.map +1 -0
  157. package/components/card/themes/light/card.actions.bootstrap.css.js +0 -96
  158. package/components/card/themes/light/card.actions.bootstrap.css.js.map +1 -1
  159. package/components/card/themes/light/card.base.css.d.ts +1 -0
  160. package/components/card/themes/light/card.base.css.js +66 -0
  161. package/components/card/themes/light/card.base.css.js.map +1 -0
  162. package/components/card/themes/light/card.bootstrap.css.js +11 -5
  163. package/components/card/themes/light/card.bootstrap.css.js.map +1 -1
  164. package/components/card/themes/light/card.content.base.css.d.ts +1 -0
  165. package/components/card/themes/light/card.content.base.css.js +53 -0
  166. package/components/card/themes/light/card.content.base.css.js.map +1 -0
  167. package/components/card/themes/light/card.content.bootstrap.css.js +10 -54
  168. package/components/card/themes/light/card.content.bootstrap.css.js.map +1 -1
  169. package/components/card/themes/light/card.content.fluent.css.d.ts +1 -0
  170. package/components/card/themes/light/card.content.fluent.css.js +14 -0
  171. package/components/card/themes/light/card.content.fluent.css.js.map +1 -0
  172. package/components/card/themes/light/card.content.indigo.css.js +10 -54
  173. package/components/card/themes/light/card.content.indigo.css.js.map +1 -1
  174. package/components/card/themes/light/card.content.material.css.js +10 -50
  175. package/components/card/themes/light/card.content.material.css.js.map +1 -1
  176. package/components/card/themes/light/card.fluent.css.js +16 -5
  177. package/components/card/themes/light/card.fluent.css.js.map +1 -1
  178. package/components/card/themes/light/card.header.base.css.d.ts +1 -0
  179. package/components/card/themes/light/card.header.base.css.js +106 -0
  180. package/components/card/themes/light/card.header.base.css.js.map +1 -0
  181. package/components/card/themes/light/card.header.bootstrap.css.js +11 -106
  182. package/components/card/themes/light/card.header.bootstrap.css.js.map +1 -1
  183. package/components/card/themes/light/card.header.fluent.css.js +11 -104
  184. package/components/card/themes/light/card.header.fluent.css.js.map +1 -1
  185. package/components/card/themes/light/card.header.indigo.css.js +11 -109
  186. package/components/card/themes/light/card.header.indigo.css.js.map +1 -1
  187. package/components/card/themes/light/card.header.material.css.js +11 -101
  188. package/components/card/themes/light/card.header.material.css.js.map +1 -1
  189. package/components/card/themes/light/card.indigo.css.js +13 -0
  190. package/components/card/themes/light/card.indigo.css.js.map +1 -1
  191. package/components/card/themes/light/card.material.css.js +8 -67
  192. package/components/card/themes/light/card.material.css.js.map +1 -1
  193. package/components/card/themes/light/card.media.base.css.d.ts +1 -0
  194. package/components/card/themes/light/{card.media.material.css.js → card.media.base.css.js} +1 -1
  195. package/components/card/themes/light/card.media.base.css.js.map +1 -0
  196. package/components/checkbox/checkbox.d.ts +1 -0
  197. package/components/checkbox/checkbox.js +8 -1
  198. package/components/checkbox/checkbox.js.map +1 -1
  199. package/components/checkbox/switch.d.ts +1 -0
  200. package/components/checkbox/switch.js +8 -1
  201. package/components/checkbox/switch.js.map +1 -1
  202. package/components/checkbox/themes/light/checkbox.bootstrap.css.js +3 -4
  203. package/components/checkbox/themes/light/checkbox.bootstrap.css.js.map +1 -1
  204. package/components/checkbox/themes/light/checkbox.fluent.css.js +3 -4
  205. package/components/checkbox/themes/light/checkbox.fluent.css.js.map +1 -1
  206. package/components/checkbox/themes/light/checkbox.indigo.css.js +27 -11
  207. package/components/checkbox/themes/light/checkbox.indigo.css.js.map +1 -1
  208. package/components/checkbox/themes/light/checkbox.material.css.js +2 -3
  209. package/components/checkbox/themes/light/checkbox.material.css.js.map +1 -1
  210. package/components/checkbox/themes/light/switch.bootstrap.css.js +1 -2
  211. package/components/checkbox/themes/light/switch.bootstrap.css.js.map +1 -1
  212. package/components/checkbox/themes/light/switch.fluent.css.js +3 -4
  213. package/components/checkbox/themes/light/switch.fluent.css.js.map +1 -1
  214. package/components/checkbox/themes/light/switch.indigo.css.js +1 -2
  215. package/components/checkbox/themes/light/switch.indigo.css.js.map +1 -1
  216. package/components/checkbox/themes/light/switch.material.css.js +2 -3
  217. package/components/checkbox/themes/light/switch.material.css.js.map +1 -1
  218. package/components/chip/chip.d.ts +1 -0
  219. package/components/chip/chip.js +13 -8
  220. package/components/chip/chip.js.map +1 -1
  221. package/components/chip/themes/dark/chip.bootstrap.css.d.ts +1 -0
  222. package/components/{nav-drawer/themes/dark/nav-drawer-item.fluent.css.js → chip/themes/dark/chip.bootstrap.css.js} +1 -1
  223. package/components/chip/themes/dark/chip.bootstrap.css.js.map +1 -0
  224. package/components/chip/themes/dark/chip.fluent.css.d.ts +1 -0
  225. package/components/chip/themes/dark/chip.fluent.css.js +3 -0
  226. package/components/chip/themes/dark/chip.fluent.css.js.map +1 -0
  227. package/components/chip/themes/dark/chip.indigo.css.d.ts +1 -0
  228. package/components/chip/themes/dark/chip.indigo.css.js +3 -0
  229. package/components/chip/themes/dark/chip.indigo.css.js.map +1 -0
  230. package/components/chip/themes/dark/chip.material.css.d.ts +1 -0
  231. package/components/chip/themes/dark/chip.material.css.js +3 -0
  232. package/components/chip/themes/dark/chip.material.css.js.map +1 -0
  233. package/components/chip/themes/light/chip.base.css.d.ts +1 -0
  234. package/components/chip/themes/{chip.base.css.js → light/chip.base.css.js} +12 -47
  235. package/components/chip/themes/light/chip.base.css.js.map +1 -0
  236. package/components/chip/themes/light/chip.bootstrap.css.d.ts +1 -0
  237. package/components/chip/themes/light/chip.bootstrap.css.js +108 -0
  238. package/components/chip/themes/light/chip.bootstrap.css.js.map +1 -0
  239. package/components/chip/themes/light/chip.fluent.css.d.ts +1 -0
  240. package/components/chip/themes/light/chip.fluent.css.js +73 -0
  241. package/components/chip/themes/light/chip.fluent.css.js.map +1 -0
  242. package/components/chip/themes/light/chip.indigo.css.d.ts +1 -0
  243. package/components/chip/themes/light/chip.indigo.css.js +172 -0
  244. package/components/chip/themes/light/chip.indigo.css.js.map +1 -0
  245. package/components/chip/themes/light/chip.material.css.d.ts +1 -0
  246. package/components/chip/themes/light/chip.material.css.js +53 -0
  247. package/components/chip/themes/light/chip.material.css.js.map +1 -0
  248. package/components/combo/combo-header.d.ts +1 -0
  249. package/components/combo/combo-header.js +10 -4
  250. package/components/combo/combo-header.js.map +1 -1
  251. package/components/combo/combo-item.d.ts +1 -0
  252. package/components/combo/combo-item.js +12 -7
  253. package/components/combo/combo-item.js.map +1 -1
  254. package/components/combo/combo-list.d.ts +1 -0
  255. package/components/combo/combo-list.js +4 -0
  256. package/components/combo/combo-list.js.map +1 -1
  257. package/components/combo/combo.d.ts +7 -6
  258. package/components/combo/combo.js +33 -23
  259. package/components/combo/combo.js.map +1 -1
  260. package/components/combo/themes/light/combo.base.css.js +5 -0
  261. package/components/combo/themes/light/combo.base.css.js.map +1 -1
  262. package/components/combo/themes/light/combo.bootstrap.css.js +1 -1
  263. package/components/combo/themes/light/combo.bootstrap.css.js.map +1 -1
  264. package/components/combo/themes/light/combo.fluent.css.js +1 -1
  265. package/components/combo/themes/light/combo.fluent.css.js.map +1 -1
  266. package/components/combo/themes/light/combo.indigo.css.js +1 -1
  267. package/components/combo/themes/light/combo.indigo.css.js.map +1 -1
  268. package/components/combo/themes/light/combo.material.css.js +1 -1
  269. package/components/combo/themes/light/combo.material.css.js.map +1 -1
  270. package/components/common/definitions/defineAllComponents.d.ts +1 -1
  271. package/components/common/definitions/defineAllComponents.js +8 -2
  272. package/components/common/definitions/defineAllComponents.js.map +1 -1
  273. package/components/common/definitions/defineComponents.d.ts +2 -1
  274. package/components/common/definitions/defineComponents.js +3 -6
  275. package/components/common/definitions/defineComponents.js.map +1 -1
  276. package/components/common/definitions/register.d.ts +5 -0
  277. package/components/common/definitions/register.js +9 -0
  278. package/components/common/definitions/register.js.map +1 -0
  279. package/components/common/mixins/form-associated.d.ts +1 -1
  280. package/components/common/mixins/form-associated.js +10 -24
  281. package/components/common/mixins/form-associated.js.map +1 -1
  282. package/components/common/mixins/sizable.d.ts +3 -0
  283. package/components/common/mixins/sizable.js +7 -0
  284. package/components/common/mixins/sizable.js.map +1 -1
  285. package/components/common/util.d.ts +1 -0
  286. package/components/common/util.js +10 -0
  287. package/components/common/util.js.map +1 -1
  288. package/components/date-time-input/date-time-input.d.ts +4 -3
  289. package/components/date-time-input/date-time-input.js +9 -5
  290. package/components/date-time-input/date-time-input.js.map +1 -1
  291. package/components/dialog/dialog.d.ts +2 -1
  292. package/components/dialog/dialog.js +13 -7
  293. package/components/dialog/dialog.js.map +1 -1
  294. package/components/dialog/themes/dark/dialog.bootstrap.css.d.ts +1 -0
  295. package/components/dialog/themes/dark/dialog.bootstrap.css.js +3 -0
  296. package/components/dialog/themes/dark/dialog.bootstrap.css.js.map +1 -0
  297. package/components/dialog/themes/dark/dialog.fluent.css.d.ts +1 -0
  298. package/components/dialog/themes/dark/dialog.fluent.css.js +3 -0
  299. package/components/dialog/themes/dark/dialog.fluent.css.js.map +1 -0
  300. package/components/dialog/themes/dark/dialog.indigo.css.d.ts +1 -0
  301. package/components/dialog/themes/dark/dialog.indigo.css.js +3 -0
  302. package/components/dialog/themes/dark/dialog.indigo.css.js.map +1 -0
  303. package/components/dialog/themes/dark/dialog.material.css.d.ts +1 -0
  304. package/components/dialog/themes/dark/dialog.material.css.js +3 -0
  305. package/components/dialog/themes/dark/dialog.material.css.js.map +1 -0
  306. package/components/dialog/themes/light/dialog.base.css.js +0 -7
  307. package/components/dialog/themes/light/dialog.base.css.js.map +1 -1
  308. package/components/dialog/themes/light/dialog.bootstrap.css.js +15 -7
  309. package/components/dialog/themes/light/dialog.bootstrap.css.js.map +1 -1
  310. package/components/dialog/themes/light/dialog.fluent.css.js +12 -2
  311. package/components/dialog/themes/light/dialog.fluent.css.js.map +1 -1
  312. package/components/dialog/themes/light/dialog.indigo.css.js +14 -1
  313. package/components/dialog/themes/light/dialog.indigo.css.js.map +1 -1
  314. package/components/dialog/themes/light/dialog.material.css.js +14 -32
  315. package/components/dialog/themes/light/dialog.material.css.js.map +1 -1
  316. package/components/dropdown/dropdown-group.d.ts +1 -0
  317. package/components/dropdown/dropdown-group.js +9 -4
  318. package/components/dropdown/dropdown-group.js.map +1 -1
  319. package/components/dropdown/dropdown-header.d.ts +1 -0
  320. package/components/dropdown/dropdown-header.js +8 -1
  321. package/components/dropdown/dropdown-header.js.map +1 -1
  322. package/components/dropdown/dropdown-item.d.ts +1 -0
  323. package/components/dropdown/dropdown-item.js +8 -1
  324. package/components/dropdown/dropdown-item.js.map +1 -1
  325. package/components/dropdown/dropdown.d.ts +2 -3
  326. package/components/dropdown/dropdown.js +9 -10
  327. package/components/dropdown/dropdown.js.map +1 -1
  328. package/components/dropdown/themes/light/dropdown.base.css.js +0 -12
  329. package/components/dropdown/themes/light/dropdown.base.css.js.map +1 -1
  330. package/components/expansion-panel/expansion-panel.d.ts +2 -1
  331. package/components/expansion-panel/expansion-panel.js +14 -7
  332. package/components/expansion-panel/expansion-panel.js.map +1 -1
  333. package/components/expansion-panel/themes/dark/expansion-panel.bootstrap.css.d.ts +1 -0
  334. package/components/{nav-drawer/themes/dark/nav-drawer-item.bootstrap.css.js → expansion-panel/themes/dark/expansion-panel.bootstrap.css.js} +1 -1
  335. package/components/expansion-panel/themes/dark/expansion-panel.bootstrap.css.js.map +1 -0
  336. package/components/expansion-panel/themes/dark/expansion-panel.fluent.css.d.ts +1 -0
  337. package/components/expansion-panel/themes/dark/expansion-panel.fluent.css.js +3 -0
  338. package/components/expansion-panel/themes/dark/expansion-panel.fluent.css.js.map +1 -0
  339. package/components/expansion-panel/themes/dark/expansion-panel.indigo.css.d.ts +1 -0
  340. package/components/expansion-panel/themes/dark/expansion-panel.indigo.css.js +3 -0
  341. package/components/expansion-panel/themes/dark/expansion-panel.indigo.css.js.map +1 -0
  342. package/components/expansion-panel/themes/dark/expansion-panel.material.css.d.ts +1 -0
  343. package/components/expansion-panel/themes/dark/expansion-panel.material.css.js +3 -0
  344. package/components/expansion-panel/themes/dark/expansion-panel.material.css.js.map +1 -0
  345. package/components/expansion-panel/themes/light/expansion-panel.base.css.js +1 -27
  346. package/components/expansion-panel/themes/light/expansion-panel.base.css.js.map +1 -1
  347. package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js +33 -15
  348. package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js.map +1 -1
  349. package/components/expansion-panel/themes/light/expansion-panel.fluent.css.js +21 -3
  350. package/components/expansion-panel/themes/light/expansion-panel.fluent.css.js.map +1 -1
  351. package/components/expansion-panel/themes/light/expansion-panel.indigo.css.js +16 -3
  352. package/components/expansion-panel/themes/light/expansion-panel.indigo.css.js.map +1 -1
  353. package/components/expansion-panel/themes/light/expansion-panel.material.css.d.ts +1 -0
  354. package/components/expansion-panel/themes/light/expansion-panel.material.css.js +42 -0
  355. package/components/expansion-panel/themes/light/expansion-panel.material.css.js.map +1 -0
  356. package/components/form/form.d.ts +1 -0
  357. package/components/form/form.js +5 -1
  358. package/components/form/form.js.map +1 -1
  359. package/components/icon/icon.base.css.js +6 -0
  360. package/components/icon/icon.base.css.js.map +1 -1
  361. package/components/icon/icon.d.ts +1 -0
  362. package/components/icon/icon.js +11 -4
  363. package/components/icon/icon.js.map +1 -1
  364. package/components/icon/light/icon.bootstrap.css.js +2 -3
  365. package/components/icon/light/icon.bootstrap.css.js.map +1 -1
  366. package/components/icon/light/icon.fluent.css.js +2 -3
  367. package/components/icon/light/icon.fluent.css.js.map +1 -1
  368. package/components/icon/light/icon.indigo.css.js +2 -3
  369. package/components/icon/light/icon.indigo.css.js.map +1 -1
  370. package/components/icon/light/icon.material.css.js +2 -3
  371. package/components/icon/light/icon.material.css.js.map +1 -1
  372. package/components/input/input-base.d.ts +2 -2
  373. package/components/input/input-base.js +11 -6
  374. package/components/input/input-base.js.map +1 -1
  375. package/components/input/input.d.ts +6 -5
  376. package/components/input/input.js +8 -4
  377. package/components/input/input.js.map +1 -1
  378. package/components/input/themes/light/input.base.css.js +0 -12
  379. package/components/input/themes/light/input.base.css.js.map +1 -1
  380. package/components/input/themes/light/input.bootstrap.css.js +1 -1
  381. package/components/input/themes/light/input.bootstrap.css.js.map +1 -1
  382. package/components/input/themes/light/input.fluent.css.js +3 -3
  383. package/components/input/themes/light/input.fluent.css.js.map +1 -1
  384. package/components/input/themes/light/input.indigo.css.js +1 -1
  385. package/components/input/themes/light/input.indigo.css.js.map +1 -1
  386. package/components/input/themes/light/input.material.css.js +1 -1
  387. package/components/input/themes/light/input.material.css.js.map +1 -1
  388. package/components/list/list-header.d.ts +1 -1
  389. package/components/list/list-header.js +5 -3
  390. package/components/list/list-header.js.map +1 -1
  391. package/components/list/list-item.d.ts +1 -1
  392. package/components/list/list-item.js +8 -3
  393. package/components/list/list-item.js.map +1 -1
  394. package/components/list/list.d.ts +1 -1
  395. package/components/list/list.js +4 -5
  396. package/components/list/list.js.map +1 -1
  397. package/components/list/themes/dark/list-header.bootstrap.css.d.ts +1 -0
  398. package/components/list/themes/dark/list-header.bootstrap.css.js +3 -0
  399. package/components/list/themes/dark/list-header.bootstrap.css.js.map +1 -0
  400. package/components/list/themes/dark/list-header.indigo.css.d.ts +1 -0
  401. package/components/list/themes/dark/list-header.indigo.css.js +3 -0
  402. package/components/list/themes/dark/list-header.indigo.css.js.map +1 -0
  403. package/components/list/themes/dark/list-item.bootstrap.css.d.ts +1 -0
  404. package/components/list/themes/dark/list-item.bootstrap.css.js +3 -0
  405. package/components/list/themes/dark/list-item.bootstrap.css.js.map +1 -0
  406. package/components/list/themes/dark/list-item.fluent.css.d.ts +1 -0
  407. package/components/list/themes/dark/list-item.fluent.css.js +3 -0
  408. package/components/list/themes/dark/list-item.fluent.css.js.map +1 -0
  409. package/components/list/themes/dark/list-item.indigo.css.d.ts +1 -0
  410. package/components/list/themes/dark/list-item.indigo.css.js +3 -0
  411. package/components/list/themes/dark/list-item.indigo.css.js.map +1 -0
  412. package/components/list/themes/dark/list-item.material.css.d.ts +1 -0
  413. package/components/list/themes/dark/list-item.material.css.js +3 -0
  414. package/components/list/themes/dark/list-item.material.css.js.map +1 -0
  415. package/components/list/themes/light/list-header.base.css.js +36 -11
  416. package/components/list/themes/light/list-header.base.css.js.map +1 -1
  417. package/components/list/themes/light/list-header.bootstrap.css.d.ts +1 -0
  418. package/components/list/themes/light/list-header.bootstrap.css.js +31 -0
  419. package/components/list/themes/light/list-header.bootstrap.css.js.map +1 -0
  420. package/components/list/themes/light/list-header.indigo.css.js +27 -1
  421. package/components/list/themes/light/list-header.indigo.css.js.map +1 -1
  422. package/components/list/themes/light/list-item.base.css.js +2 -33
  423. package/components/list/themes/light/list-item.base.css.js.map +1 -1
  424. package/components/list/themes/light/list-item.bootstrap.css.js +10 -4
  425. package/components/list/themes/light/list-item.bootstrap.css.js.map +1 -1
  426. package/components/list/themes/light/list-item.fluent.css.js +26 -15
  427. package/components/list/themes/light/list-item.fluent.css.js.map +1 -1
  428. package/components/list/themes/light/list-item.indigo.css.js +18 -8
  429. package/components/list/themes/light/list-item.indigo.css.js.map +1 -1
  430. package/components/list/themes/light/list-item.material.css.d.ts +1 -0
  431. package/components/list/themes/light/list-item.material.css.js +49 -0
  432. package/components/list/themes/light/list-item.material.css.js.map +1 -0
  433. package/components/list/themes/light/list.base.css.js +1 -13
  434. package/components/list/themes/light/list.base.css.js.map +1 -1
  435. package/components/list/themes/light/list.bootstrap.css.js +2 -2
  436. package/components/list/themes/light/list.bootstrap.css.js.map +1 -1
  437. package/components/mask-input/mask-input.d.ts +2 -1
  438. package/components/mask-input/mask-input.js +7 -3
  439. package/components/mask-input/mask-input.js.map +1 -1
  440. package/components/nav-drawer/nav-drawer-header-item.d.ts +1 -0
  441. package/components/nav-drawer/nav-drawer-header-item.js +11 -4
  442. package/components/nav-drawer/nav-drawer-header-item.js.map +1 -1
  443. package/components/nav-drawer/nav-drawer-item.d.ts +1 -0
  444. package/components/nav-drawer/nav-drawer-item.js +13 -4
  445. package/components/nav-drawer/nav-drawer-item.js.map +1 -1
  446. package/components/nav-drawer/nav-drawer.d.ts +1 -0
  447. package/components/nav-drawer/nav-drawer.js +17 -8
  448. package/components/nav-drawer/nav-drawer.js.map +1 -1
  449. package/components/nav-drawer/themes/dark/nav-drawer.bootstrap.css.d.ts +1 -0
  450. package/components/nav-drawer/themes/dark/nav-drawer.bootstrap.css.js +3 -0
  451. package/components/nav-drawer/themes/dark/{nav-drawer-item.base.css.js.map → nav-drawer.bootstrap.css.js.map} +1 -1
  452. package/components/nav-drawer/themes/dark/nav-drawer.fluent.css.d.ts +1 -0
  453. package/components/nav-drawer/themes/dark/nav-drawer.fluent.css.js +3 -0
  454. package/components/nav-drawer/themes/dark/nav-drawer.fluent.css.js.map +1 -0
  455. package/components/nav-drawer/themes/dark/nav-drawer.material.css.d.ts +1 -0
  456. package/components/nav-drawer/themes/dark/nav-drawer.material.css.js +3 -0
  457. package/components/nav-drawer/themes/dark/nav-drawer.material.css.js.map +1 -0
  458. package/components/nav-drawer/themes/light/header-item/nav-drawer-header-item.base.css.d.ts +1 -0
  459. package/components/nav-drawer/themes/light/header-item/nav-drawer-header-item.base.css.js +7 -0
  460. package/components/nav-drawer/themes/light/header-item/nav-drawer-header-item.base.css.js.map +1 -0
  461. package/components/nav-drawer/themes/light/header-item/nav-drawer-header-item.bootstrap.css.d.ts +1 -0
  462. package/components/nav-drawer/themes/light/{fluent/nav-drawer-header-item.fluent.css.js → header-item/nav-drawer-header-item.bootstrap.css.js} +2 -1
  463. package/components/nav-drawer/themes/light/header-item/nav-drawer-header-item.bootstrap.css.js.map +1 -0
  464. package/components/nav-drawer/themes/light/header-item/nav-drawer-header-item.fluent.css.d.ts +1 -0
  465. package/components/nav-drawer/themes/light/{nav-drawer-header-item.base.css.js → header-item/nav-drawer-header-item.fluent.css.js} +2 -5
  466. package/components/nav-drawer/themes/light/header-item/nav-drawer-header-item.fluent.css.js.map +1 -0
  467. package/components/nav-drawer/themes/light/header-item/nav-drawer-header-item.indigo.css.d.ts +1 -0
  468. package/components/nav-drawer/themes/light/header-item/nav-drawer-header-item.indigo.css.js +14 -0
  469. package/components/nav-drawer/themes/light/header-item/nav-drawer-header-item.indigo.css.js.map +1 -0
  470. package/components/nav-drawer/themes/light/header-item/nav-drawer-header-item.material.css.d.ts +1 -0
  471. package/components/nav-drawer/themes/light/header-item/nav-drawer-header-item.material.css.js +14 -0
  472. package/components/nav-drawer/themes/light/header-item/nav-drawer-header-item.material.css.js.map +1 -0
  473. package/components/nav-drawer/themes/light/item/nav-drawer-item.base.css.d.ts +1 -0
  474. package/components/nav-drawer/themes/light/item/nav-drawer-item.base.css.js +65 -0
  475. package/components/nav-drawer/themes/light/item/nav-drawer-item.base.css.js.map +1 -0
  476. package/components/nav-drawer/themes/light/item/nav-drawer-item.bootstrap.css.d.ts +1 -0
  477. package/components/nav-drawer/themes/light/{nav-drawer-item.base.css.js → item/nav-drawer-item.bootstrap.css.js} +16 -66
  478. package/components/nav-drawer/themes/light/item/nav-drawer-item.bootstrap.css.js.map +1 -0
  479. package/components/nav-drawer/themes/light/item/nav-drawer-item.fluent.css.d.ts +1 -0
  480. package/components/nav-drawer/themes/light/item/nav-drawer-item.fluent.css.js +54 -0
  481. package/components/nav-drawer/themes/light/item/nav-drawer-item.fluent.css.js.map +1 -0
  482. package/components/nav-drawer/themes/light/item/nav-drawer-item.indigo.css.d.ts +1 -0
  483. package/components/nav-drawer/themes/light/{indigo → item}/nav-drawer-item.indigo.css.js +30 -9
  484. package/components/nav-drawer/themes/light/item/nav-drawer-item.indigo.css.js.map +1 -0
  485. package/components/nav-drawer/themes/light/item/nav-drawer-item.material.css.d.ts +1 -0
  486. package/components/nav-drawer/themes/light/item/nav-drawer-item.material.css.js +54 -0
  487. package/components/nav-drawer/themes/light/item/nav-drawer-item.material.css.js.map +1 -0
  488. package/components/nav-drawer/themes/light/nav-drawer.base.css.js +85 -62
  489. package/components/nav-drawer/themes/light/nav-drawer.base.css.js.map +1 -1
  490. package/components/nav-drawer/themes/light/nav-drawer.bootstrap.css.d.ts +1 -0
  491. package/components/nav-drawer/themes/light/nav-drawer.bootstrap.css.js +62 -0
  492. package/components/nav-drawer/themes/light/nav-drawer.bootstrap.css.js.map +1 -0
  493. package/components/nav-drawer/themes/light/nav-drawer.fluent.css.d.ts +1 -0
  494. package/components/nav-drawer/themes/light/nav-drawer.fluent.css.js +62 -0
  495. package/components/nav-drawer/themes/light/nav-drawer.fluent.css.js.map +1 -0
  496. package/components/nav-drawer/themes/light/nav-drawer.indigo.css.d.ts +1 -0
  497. package/components/nav-drawer/themes/light/{indigo/nav-drawer.indigo.css.js → nav-drawer.indigo.css.js} +34 -2
  498. package/components/nav-drawer/themes/light/nav-drawer.indigo.css.js.map +1 -0
  499. package/components/nav-drawer/themes/light/nav-drawer.material.css.d.ts +1 -0
  500. package/components/nav-drawer/themes/light/nav-drawer.material.css.js +62 -0
  501. package/components/nav-drawer/themes/light/nav-drawer.material.css.js.map +1 -0
  502. package/components/navbar/navbar.d.ts +1 -0
  503. package/components/navbar/navbar.js +9 -2
  504. package/components/navbar/navbar.js.map +1 -1
  505. package/components/navbar/themes/navbar.base.css.js +4 -10
  506. package/components/navbar/themes/navbar.base.css.js.map +1 -1
  507. package/components/progress/circular-gradient.d.ts +1 -0
  508. package/components/progress/circular-gradient.js +4 -0
  509. package/components/progress/circular-gradient.js.map +1 -1
  510. package/components/progress/circular-progress.d.ts +1 -0
  511. package/components/progress/circular-progress.js +7 -5
  512. package/components/progress/circular-progress.js.map +1 -1
  513. package/components/progress/linear-progress.d.ts +1 -0
  514. package/components/progress/linear-progress.js +10 -3
  515. package/components/progress/linear-progress.js.map +1 -1
  516. package/components/radio/radio.d.ts +1 -0
  517. package/components/radio/radio.js +10 -3
  518. package/components/radio/radio.js.map +1 -1
  519. package/components/radio/themes/light/radio.fluent.css.js +2 -2
  520. package/components/radio/themes/light/radio.fluent.css.js.map +1 -1
  521. package/components/radio-group/radio-group.d.ts +1 -0
  522. package/components/radio-group/radio-group.js +7 -5
  523. package/components/radio-group/radio-group.js.map +1 -1
  524. package/components/rating/rating-symbol.d.ts +1 -0
  525. package/components/rating/rating-symbol.js +4 -0
  526. package/components/rating/rating-symbol.js.map +1 -1
  527. package/components/rating/rating.base.css.js +0 -12
  528. package/components/rating/rating.base.css.js.map +1 -1
  529. package/components/rating/rating.d.ts +4 -3
  530. package/components/rating/rating.js +12 -7
  531. package/components/rating/rating.js.map +1 -1
  532. package/components/ripple/ripple.d.ts +1 -0
  533. package/components/ripple/ripple.js +4 -0
  534. package/components/ripple/ripple.js.map +1 -1
  535. package/components/select/select-group.d.ts +1 -1
  536. package/components/select/select-group.js +4 -0
  537. package/components/select/select-group.js.map +1 -1
  538. package/components/select/select-header.d.ts +1 -1
  539. package/components/select/select-header.js +4 -0
  540. package/components/select/select-header.js.map +1 -1
  541. package/components/select/select-item.d.ts +2 -1
  542. package/components/select/select-item.js +6 -4
  543. package/components/select/select-item.js.map +1 -1
  544. package/components/select/select.d.ts +4 -3
  545. package/components/select/select.js +11 -6
  546. package/components/select/select.js.map +1 -1
  547. package/components/select/themes/light/select.base.css.js +0 -12
  548. package/components/select/themes/light/select.base.css.js.map +1 -1
  549. package/components/select/themes/light/select.bootstrap.css.js +1 -1
  550. package/components/select/themes/light/select.bootstrap.css.js.map +1 -1
  551. package/components/select/themes/light/select.fluent.css.js +1 -1
  552. package/components/select/themes/light/select.fluent.css.js.map +1 -1
  553. package/components/select/themes/light/select.indigo.css.js +1 -1
  554. package/components/select/themes/light/select.indigo.css.js.map +1 -1
  555. package/components/select/themes/light/select.material.css.js +1 -1
  556. package/components/select/themes/light/select.material.css.js.map +1 -1
  557. package/components/slider/range-slider.d.ts +1 -0
  558. package/components/slider/range-slider.js +5 -0
  559. package/components/slider/range-slider.js.map +1 -1
  560. package/components/slider/slider-base.js +6 -6
  561. package/components/slider/slider-base.js.map +1 -1
  562. package/components/slider/slider-label.d.ts +2 -1
  563. package/components/slider/slider-label.js +5 -1
  564. package/components/slider/slider-label.js.map +1 -1
  565. package/components/slider/slider.d.ts +1 -0
  566. package/components/slider/slider.js +5 -0
  567. package/components/slider/slider.js.map +1 -1
  568. package/components/slider/themes/dark/slider.material.css.d.ts +1 -0
  569. package/components/slider/themes/dark/slider.material.css.js +3 -0
  570. package/components/slider/themes/dark/slider.material.css.js.map +1 -0
  571. package/components/slider/themes/light/slider.base.css.js +0 -41
  572. package/components/slider/themes/light/slider.base.css.js.map +1 -1
  573. package/components/slider/themes/light/slider.bootstrap.css.js +62 -6
  574. package/components/slider/themes/light/slider.bootstrap.css.js.map +1 -1
  575. package/components/slider/themes/light/slider.fluent.css.js +55 -17
  576. package/components/slider/themes/light/slider.fluent.css.js.map +1 -1
  577. package/components/slider/themes/light/slider.indigo.css.js +64 -11
  578. package/components/slider/themes/light/slider.indigo.css.js.map +1 -1
  579. package/components/slider/themes/light/slider.material.css.js +62 -3
  580. package/components/slider/themes/light/slider.material.css.js.map +1 -1
  581. package/components/snackbar/snackbar.d.ts +8 -4
  582. package/components/snackbar/snackbar.js +16 -5
  583. package/components/snackbar/snackbar.js.map +1 -1
  584. package/components/snackbar/themes/light/snackbar.base.css.js +21 -16
  585. package/components/snackbar/themes/light/snackbar.base.css.js.map +1 -1
  586. package/components/snackbar/themes/light/snackbar.bootstrap.css.js +5 -5
  587. package/components/snackbar/themes/light/snackbar.bootstrap.css.js.map +1 -1
  588. package/components/snackbar/themes/light/snackbar.fluent.css.js +5 -1
  589. package/components/snackbar/themes/light/snackbar.fluent.css.js.map +1 -1
  590. package/components/snackbar/themes/light/snackbar.indigo.css.js +5 -3
  591. package/components/snackbar/themes/light/snackbar.indigo.css.js.map +1 -1
  592. package/components/snackbar/themes/light/snackbar.material.css.d.ts +1 -0
  593. package/components/snackbar/themes/light/snackbar.material.css.js +17 -0
  594. package/components/snackbar/themes/light/snackbar.material.css.js.map +1 -0
  595. package/components/stepper/animations.js +3 -1
  596. package/components/stepper/animations.js.map +1 -1
  597. package/components/stepper/step.d.ts +1 -2
  598. package/components/stepper/step.js +13 -5
  599. package/components/stepper/step.js.map +1 -1
  600. package/components/stepper/stepper.d.ts +2 -3
  601. package/components/stepper/stepper.js +11 -6
  602. package/components/stepper/stepper.js.map +1 -1
  603. package/components/tabs/tab-panel.d.ts +1 -0
  604. package/components/tabs/tab-panel.js +4 -0
  605. package/components/tabs/tab-panel.js.map +1 -1
  606. package/components/tabs/tab.d.ts +1 -0
  607. package/components/tabs/tab.js +9 -1
  608. package/components/tabs/tab.js.map +1 -1
  609. package/components/tabs/tabs.d.ts +2 -1
  610. package/components/tabs/tabs.js +15 -9
  611. package/components/tabs/tabs.js.map +1 -1
  612. package/components/tabs/themes/dark/tab.bootstrap.css.d.ts +1 -0
  613. package/components/tabs/themes/dark/tab.bootstrap.css.js +3 -0
  614. package/components/tabs/themes/dark/tab.bootstrap.css.js.map +1 -0
  615. package/components/tabs/themes/dark/tab.fluent.css.d.ts +1 -0
  616. package/components/tabs/themes/dark/tab.fluent.css.js +3 -0
  617. package/components/tabs/themes/dark/tab.fluent.css.js.map +1 -0
  618. package/components/tabs/themes/dark/tab.indigo.css.d.ts +1 -0
  619. package/components/tabs/themes/dark/tab.indigo.css.js +3 -0
  620. package/components/tabs/themes/dark/tab.indigo.css.js.map +1 -0
  621. package/components/tabs/themes/dark/tab.material.css.d.ts +1 -0
  622. package/components/tabs/themes/dark/tab.material.css.js +3 -0
  623. package/components/tabs/themes/dark/tab.material.css.js.map +1 -0
  624. package/components/tabs/themes/light/tab.base.css.js +2 -47
  625. package/components/tabs/themes/light/tab.base.css.js.map +1 -1
  626. package/components/tabs/themes/light/tab.bootstrap.css.js +21 -21
  627. package/components/tabs/themes/light/tab.bootstrap.css.js.map +1 -1
  628. package/components/tabs/themes/light/tab.fluent.css.js +19 -5
  629. package/components/tabs/themes/light/tab.fluent.css.js.map +1 -1
  630. package/components/tabs/themes/light/tab.indigo.css.js +11 -6
  631. package/components/tabs/themes/light/tab.indigo.css.js.map +1 -1
  632. package/components/tabs/themes/light/tab.material.css.d.ts +1 -0
  633. package/components/tabs/themes/light/tab.material.css.js +51 -0
  634. package/components/tabs/themes/light/tab.material.css.js.map +1 -0
  635. package/components/tabs/themes/light/tabs.base.css.js +1 -16
  636. package/components/tabs/themes/light/tabs.base.css.js.map +1 -1
  637. package/components/tabs/themes/light/tabs.bootstrap.css.js +41 -6
  638. package/components/tabs/themes/light/tabs.bootstrap.css.js.map +1 -1
  639. package/components/tabs/themes/light/tabs.fluent.css.js +50 -4
  640. package/components/tabs/themes/light/tabs.fluent.css.js.map +1 -1
  641. package/components/tabs/themes/light/tabs.indigo.css.js +41 -5
  642. package/components/tabs/themes/light/tabs.indigo.css.js.map +1 -1
  643. package/components/tabs/themes/light/tabs.material.css.d.ts +1 -0
  644. package/components/tabs/themes/light/tabs.material.css.js +55 -0
  645. package/components/tabs/themes/light/tabs.material.css.js.map +1 -0
  646. package/components/textarea/textarea.d.ts +191 -0
  647. package/components/textarea/textarea.js +304 -0
  648. package/components/textarea/textarea.js.map +1 -0
  649. package/components/textarea/themes/dark/textarea.bootstrap.css.d.ts +1 -0
  650. package/components/textarea/themes/dark/textarea.bootstrap.css.js +3 -0
  651. package/components/textarea/themes/dark/textarea.bootstrap.css.js.map +1 -0
  652. package/components/textarea/themes/dark/textarea.fluent.css.d.ts +1 -0
  653. package/components/textarea/themes/dark/textarea.fluent.css.js +3 -0
  654. package/components/textarea/themes/dark/textarea.fluent.css.js.map +1 -0
  655. package/components/textarea/themes/dark/textarea.indigo.css.d.ts +1 -0
  656. package/components/textarea/themes/dark/textarea.indigo.css.js +3 -0
  657. package/components/textarea/themes/dark/textarea.indigo.css.js.map +1 -0
  658. package/components/textarea/themes/dark/textarea.material.css.d.ts +1 -0
  659. package/components/textarea/themes/dark/textarea.material.css.js +3 -0
  660. package/components/textarea/themes/dark/textarea.material.css.js.map +1 -0
  661. package/components/textarea/themes/light/textarea.base.css.d.ts +1 -0
  662. package/components/textarea/themes/light/textarea.base.css.js +194 -0
  663. package/components/textarea/themes/light/textarea.base.css.js.map +1 -0
  664. package/components/textarea/themes/light/textarea.bootstrap.css.d.ts +1 -0
  665. package/components/textarea/themes/light/textarea.bootstrap.css.js +286 -0
  666. package/components/textarea/themes/light/textarea.bootstrap.css.js.map +1 -0
  667. package/components/textarea/themes/light/textarea.fluent.css.d.ts +1 -0
  668. package/components/textarea/themes/light/textarea.fluent.css.js +278 -0
  669. package/components/textarea/themes/light/textarea.fluent.css.js.map +1 -0
  670. package/components/textarea/themes/light/textarea.indigo.css.d.ts +1 -0
  671. package/components/textarea/themes/light/textarea.indigo.css.js +293 -0
  672. package/components/textarea/themes/light/textarea.indigo.css.js.map +1 -0
  673. package/components/textarea/themes/light/textarea.material.css.d.ts +1 -0
  674. package/components/textarea/themes/light/textarea.material.css.js +491 -0
  675. package/components/textarea/themes/light/textarea.material.css.js.map +1 -0
  676. package/components/toast/themes/dark/toast.bootstrap.css.d.ts +1 -0
  677. package/components/toast/themes/dark/toast.bootstrap.css.js +9 -0
  678. package/components/toast/themes/dark/toast.bootstrap.css.js.map +1 -0
  679. package/components/toast/themes/dark/toast.fluent.css.d.ts +1 -0
  680. package/components/toast/themes/dark/toast.fluent.css.js +9 -0
  681. package/components/toast/themes/dark/toast.fluent.css.js.map +1 -0
  682. package/components/toast/themes/dark/toast.indigo.css.d.ts +1 -0
  683. package/components/toast/themes/dark/toast.indigo.css.js +9 -0
  684. package/components/toast/themes/dark/toast.indigo.css.js.map +1 -0
  685. package/components/toast/themes/dark/toast.material.css.d.ts +1 -0
  686. package/components/toast/themes/dark/toast.material.css.js +9 -0
  687. package/components/toast/themes/dark/toast.material.css.js.map +1 -0
  688. package/components/toast/themes/light/toast.base.css.d.ts +1 -0
  689. package/components/toast/themes/{toast.base.css.js → light/toast.base.css.js} +28 -15
  690. package/components/toast/themes/light/toast.base.css.js.map +1 -0
  691. package/components/toast/themes/light/toast.bootstrap.css.d.ts +1 -0
  692. package/components/toast/themes/{toast.bootstrap.css.js → light/toast.bootstrap.css.js} +6 -5
  693. package/components/toast/themes/light/toast.bootstrap.css.js.map +1 -0
  694. package/components/toast/themes/light/toast.fluent.css.d.ts +1 -0
  695. package/components/toast/themes/{toast.fluent.css.js → light/toast.fluent.css.js} +6 -2
  696. package/components/toast/themes/light/toast.fluent.css.js.map +1 -0
  697. package/components/toast/themes/light/toast.indigo.css.d.ts +1 -0
  698. package/components/toast/themes/{toast.indigo.css.js → light/toast.indigo.css.js} +6 -2
  699. package/components/toast/themes/light/toast.indigo.css.js.map +1 -0
  700. package/components/toast/themes/light/toast.material.css.d.ts +1 -0
  701. package/components/toast/themes/light/toast.material.css.js +16 -0
  702. package/components/toast/themes/light/toast.material.css.js.map +1 -0
  703. package/components/toast/toast.d.ts +6 -0
  704. package/components/toast/toast.js +18 -6
  705. package/components/toast/toast.js.map +1 -1
  706. package/components/tree/themes/dark/tree-item.material.css.d.ts +1 -0
  707. package/components/tree/themes/dark/tree-item.material.css.js +3 -0
  708. package/components/tree/themes/dark/tree-item.material.css.js.map +1 -0
  709. package/components/tree/themes/light/tree-item.base.css.js +7 -47
  710. package/components/tree/themes/light/tree-item.base.css.js.map +1 -1
  711. package/components/tree/themes/light/tree-item.bootstrap.css.js +21 -8
  712. package/components/tree/themes/light/tree-item.bootstrap.css.js.map +1 -1
  713. package/components/tree/themes/light/tree-item.fluent.css.js +21 -8
  714. package/components/tree/themes/light/tree-item.fluent.css.js.map +1 -1
  715. package/components/tree/themes/light/tree-item.indigo.css.js +23 -9
  716. package/components/tree/themes/light/tree-item.indigo.css.js.map +1 -1
  717. package/components/tree/themes/light/tree-item.material.css.js +35 -0
  718. package/components/tree/themes/light/tree-item.material.css.js.map +1 -1
  719. package/components/tree/themes/light/tree.base.css.js +0 -12
  720. package/components/tree/themes/light/tree.base.css.js.map +1 -1
  721. package/components/tree/tree-item.d.ts +1 -2
  722. package/components/tree/tree-item.js +21 -24
  723. package/components/tree/tree-item.js.map +1 -1
  724. package/components/tree/tree.d.ts +1 -2
  725. package/components/tree/tree.js +7 -5
  726. package/components/tree/tree.js.map +1 -1
  727. package/custom-elements.json +677 -121
  728. package/index.d.ts +4 -1
  729. package/index.js +3 -0
  730. package/index.js.map +1 -1
  731. package/package.json +5 -3
  732. package/themes/dark/bootstrap.css +306 -43
  733. package/themes/dark/fluent.css +267 -57
  734. package/themes/dark/indigo.css +301 -64
  735. package/themes/dark/material.css +276 -38
  736. package/themes/light/bootstrap.css +5 -0
  737. package/themes/light/fluent.css +5 -0
  738. package/themes/light/indigo.css +5 -0
  739. package/themes/light/material.css +5 -0
  740. package/theming/config.d.ts +8 -5
  741. package/theming/config.js +21 -9
  742. package/theming/config.js.map +1 -1
  743. package/theming/theming-controller.d.ts +2 -1
  744. package/theming/theming-controller.js +4 -2
  745. package/theming/theming-controller.js.map +1 -1
  746. package/theming/theming-event.d.ts +2 -1
  747. package/theming/theming-event.js.map +1 -1
  748. package/theming/types.d.ts +7 -1
  749. package/theming/types.js.map +1 -1
  750. package/vscode-html-custom-data.json +311 -71
  751. package/animations/index.d.ts +0 -3
  752. package/animations/index.js +0 -4
  753. package/animations/index.js.map +0 -1
  754. package/animations/presets/index.d.ts +0 -3
  755. package/animations/presets/index.js +0 -4
  756. package/animations/presets/index.js.map +0 -1
  757. package/components/calendar/themes/bootstrap/calendar.bootstrap.css.js.map +0 -1
  758. package/components/calendar/themes/bootstrap/days-view.bootstrap.css.js.map +0 -1
  759. package/components/calendar/themes/bootstrap/year-month-view.bootstrap.css.js.map +0 -1
  760. package/components/calendar/themes/fluent/calendar.fluent.css.js +0 -409
  761. package/components/calendar/themes/fluent/calendar.fluent.css.js.map +0 -1
  762. package/components/calendar/themes/fluent/days-view.fluent.css.js.map +0 -1
  763. package/components/calendar/themes/fluent/year-month-view.fluent.css.js +0 -129
  764. package/components/calendar/themes/fluent/year-month-view.fluent.css.js.map +0 -1
  765. package/components/calendar/themes/indigo/calendar.indigo.css.js.map +0 -1
  766. package/components/card/themes/light/card.actions.material.css.js.map +0 -1
  767. package/components/card/themes/light/card.media.material.css.js.map +0 -1
  768. package/components/chip/themes/chip.base.css.js.map +0 -1
  769. package/components/chip/themes/chip.bootstrap.css.js +0 -323
  770. package/components/chip/themes/chip.bootstrap.css.js.map +0 -1
  771. package/components/chip/themes/chip.fluent.css.js +0 -287
  772. package/components/chip/themes/chip.fluent.css.js.map +0 -1
  773. package/components/chip/themes/chip.indigo.css.js +0 -384
  774. package/components/chip/themes/chip.indigo.css.js.map +0 -1
  775. package/components/chip/themes/chip.material.css.js +0 -268
  776. package/components/chip/themes/chip.material.css.js.map +0 -1
  777. package/components/common/decorators/index.d.ts +0 -9
  778. package/components/common/decorators/index.js +0 -10
  779. package/components/common/decorators/index.js.map +0 -1
  780. package/components/nav-drawer/themes/dark/nav-drawer-item.bootstrap.css.js.map +0 -1
  781. package/components/nav-drawer/themes/dark/nav-drawer-item.fluent.css.js.map +0 -1
  782. package/components/nav-drawer/themes/dark/nav-drawer-item.indigo.css.js.map +0 -1
  783. package/components/nav-drawer/themes/light/fluent/nav-drawer-header-item.fluent.css.js.map +0 -1
  784. package/components/nav-drawer/themes/light/fluent/nav-drawer-item.fluent.css.js +0 -17
  785. package/components/nav-drawer/themes/light/fluent/nav-drawer-item.fluent.css.js.map +0 -1
  786. package/components/nav-drawer/themes/light/indigo/nav-drawer-header-item.indigo.css.js +0 -5
  787. package/components/nav-drawer/themes/light/indigo/nav-drawer-header-item.indigo.css.js.map +0 -1
  788. package/components/nav-drawer/themes/light/indigo/nav-drawer-item.indigo.css.js.map +0 -1
  789. package/components/nav-drawer/themes/light/indigo/nav-drawer.indigo.css.js.map +0 -1
  790. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.js.map +0 -1
  791. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js.map +0 -1
  792. package/components/tabs/themes/dark/tab.dark.base.css.js.map +0 -1
  793. package/components/tabs/themes/dark/tab.dark.bootstrap.css.js.map +0 -1
  794. package/components/toast/themes/toast.base.css.js.map +0 -1
  795. package/components/toast/themes/toast.bootstrap.css.js.map +0 -1
  796. package/components/toast/themes/toast.fluent.css.js.map +0 -1
  797. package/components/toast/themes/toast.indigo.css.js.map +0 -1
  798. package/theming/index.d.ts +0 -4
  799. package/theming/index.js +0 -5
  800. package/theming/index.js.map +0 -1
  801. /package/components/{calendar/themes/bootstrap/calendar.bootstrap.css.d.ts → avatar/themes/shared/avatar.bootstrap.css.d.ts} +0 -0
  802. /package/components/{calendar/themes/bootstrap/days-view.bootstrap.css.d.ts → avatar/themes/shared/avatar.fluent.css.d.ts} +0 -0
  803. /package/components/{calendar/themes/bootstrap/year-month-view.bootstrap.css.d.ts → avatar/themes/shared/avatar.indigo.css.d.ts} +0 -0
  804. /package/components/{calendar/themes/fluent/calendar.fluent.css.d.ts → avatar/themes/shared/avatar.material.css.d.ts} +0 -0
  805. /package/components/{calendar/themes/fluent/days-view.fluent.css.d.ts → badge/themes/dark/badge.bootstrap.css.d.ts} +0 -0
  806. /package/components/{calendar/themes/fluent/year-month-view.fluent.css.d.ts → button-group/themes/light/button-group.base.css.d.ts} +0 -0
  807. /package/components/{calendar/themes/indigo/calendar.indigo.css.d.ts → button-group/themes/light/button-group.bootstrap.css.d.ts} +0 -0
  808. /package/components/{card/themes/light/card.actions.material.css.d.ts → button-group/themes/light/button-group.fluent.css.d.ts} +0 -0
  809. /package/components/{card/themes/light/card.media.material.css.d.ts → button-group/themes/light/button-group.indigo.css.d.ts} +0 -0
  810. /package/components/{chip/themes/chip.base.css.d.ts → button-group/themes/light/button-group.material.css.d.ts} +0 -0
  811. /package/components/{chip/themes/chip.bootstrap.css.d.ts → button-group/themes/light/toggle-button/toggle-button.base.css.d.ts} +0 -0
  812. /package/components/{chip/themes/chip.fluent.css.d.ts → button-group/themes/light/toggle-button/toggle-button.bootstrap.css.d.ts} +0 -0
  813. /package/components/{chip/themes/chip.indigo.css.d.ts → button-group/themes/light/toggle-button/toggle-button.fluent.css.d.ts} +0 -0
  814. /package/components/{chip/themes/chip.material.css.d.ts → button-group/themes/light/toggle-button/toggle-button.indigo.css.d.ts} +0 -0
  815. /package/components/{nav-drawer/themes/dark/nav-drawer-item.base.css.d.ts → button-group/themes/light/toggle-button/toggle-button.material.css.d.ts} +0 -0
  816. /package/components/{nav-drawer/themes/dark/nav-drawer-item.bootstrap.css.d.ts → calendar/themes/light/bootstrap/calendar.bootstrap.css.d.ts} +0 -0
  817. /package/components/{nav-drawer/themes/dark/nav-drawer-item.fluent.css.d.ts → calendar/themes/light/bootstrap/days-view.bootstrap.css.d.ts} +0 -0
  818. /package/components/{nav-drawer/themes/dark/nav-drawer-item.indigo.css.d.ts → calendar/themes/light/bootstrap/year-month-view.bootstrap.css.d.ts} +0 -0
  819. /package/components/{nav-drawer/themes/light/fluent/nav-drawer-header-item.fluent.css.d.ts → calendar/themes/light/fluent/calendar.fluent.css.d.ts} +0 -0
  820. /package/components/{nav-drawer/themes/light/fluent/nav-drawer-item.fluent.css.d.ts → calendar/themes/light/fluent/days-view.fluent.css.d.ts} +0 -0
  821. /package/components/{nav-drawer/themes/light/indigo/nav-drawer-header-item.indigo.css.d.ts → calendar/themes/light/fluent/year-month-view.fluent.css.d.ts} +0 -0
  822. /package/components/{nav-drawer/themes/light/indigo/nav-drawer-item.indigo.css.d.ts → calendar/themes/light/indigo/calendar.indigo.css.d.ts} +0 -0
  823. /package/components/{nav-drawer/themes/light/indigo/nav-drawer.indigo.css.d.ts → calendar/themes/light/indigo/days-view.indigo.css.d.ts} +0 -0
  824. /package/components/{nav-drawer/themes/light/nav-drawer-header-item.base.css.d.ts → calendar/themes/light/indigo/year-month-view.indigo.css.d.ts} +0 -0
  825. /package/components/{nav-drawer/themes/light/nav-drawer-item.base.css.d.ts → calendar/themes/light/material/calendar.material.css.d.ts} +0 -0
  826. /package/components/{tabs/themes/dark/tab.dark.base.css.d.ts → calendar/themes/light/material/days-view.material.css.d.ts} +0 -0
  827. /package/components/{tabs/themes/dark/tab.dark.bootstrap.css.d.ts → calendar/themes/light/material/year-month-view.material.css.d.ts} +0 -0
  828. /package/components/{toast/themes/toast.base.css.d.ts → card/themes/dark/card.bootstrap.css.d.ts} +0 -0
  829. /package/components/{toast/themes/toast.bootstrap.css.d.ts → card/themes/dark/card.fluent.css.d.ts} +0 -0
  830. /package/components/{toast/themes/toast.fluent.css.d.ts → card/themes/dark/card.indigo.css.d.ts} +0 -0
  831. /package/components/{toast/themes/toast.indigo.css.d.ts → card/themes/dark/card.material.css.d.ts} +0 -0
@@ -50,6 +50,15 @@ export const styles = css `:host {
50
50
 
51
51
  [part~=wrapper] {
52
52
  min-height: var(--size);
53
+ background: var(--background);
54
+ color: var(--foreground);
55
+ }
56
+ [part~=wrapper]::after {
57
+ background: transparent;
58
+ }
59
+ [part~=wrapper]:hover::after {
60
+ background: var(--hover-color);
61
+ opacity: 0.3;
53
62
  }
54
63
 
55
64
  [part~=label] {
@@ -57,23 +66,23 @@ export const styles = css `:host {
57
66
  }
58
67
 
59
68
  [part~=active] {
60
- background: var(--active-background, hsla(var(--ig-surface-500), var(--ig-surface-a)));
61
- color: var(--active-color, hsla(var(--ig-primary-500), var(--ig-primary-a)));
69
+ background: var(--background-active);
70
+ color: var(--foreground-active);
62
71
  }
63
72
  [part~=active]:hover {
64
- color: var(--active-color, hsla(var(--ig-primary-500), var(--ig-primary-a)));
73
+ color: var(--foreground-active);
65
74
  }
66
75
 
67
76
  [part~=selected] {
68
- background: var(--selected-background, hsla(var(--ig-primary-500), var(--ig-primary-a)));
69
- color: var(--selected-color, var(--ig-primary-600-contrast));
77
+ background: var(--background-selected);
78
+ color: var(--foreground-selected);
70
79
  }
71
80
 
72
81
  [part~=selected][part~=focused][part~=active],
73
82
  [part~=selected][part~=focused],
74
83
  [part~=selected][part~=active] {
75
- background: var(--active-selected-background, hsla(var(--ig-primary-400), var(--ig-primary-a)));
76
- color: var(--active-selected-color, var(--ig-primary-400-contrast));
84
+ background: var(--background-active-selected);
85
+ color: var(--foreground-active-selected);
77
86
  }
78
87
 
79
88
  [part~=select] {
@@ -82,7 +91,12 @@ export const styles = css `:host {
82
91
  }
83
92
 
84
93
  [part~=focused] {
85
- -webkit-box-shadow: inset 0 0 0 1px var(--focused-border-color, hsla(var(--ig-primary-300), var(--ig-primary-a)));
86
- box-shadow: inset 0 0 0 1px var(--focused-border-color, hsla(var(--ig-primary-300), var(--ig-primary-a)));
94
+ -webkit-box-shadow: inset 0 0 0 1px var(--border-color);
95
+ box-shadow: inset 0 0 0 1px var(--border-color);
96
+ }
97
+
98
+ :host([disabled]) [part~=label] {
99
+ color: var(--foreground-disabled);
100
+ background: var(--background-disabled);
87
101
  }`;
88
102
  //# sourceMappingURL=tree-item.indigo.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tree-item.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/tree/themes/light/tree-item.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqFvB,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: min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n:host([hidden]),\n[hidden] {\n display: none !important;\n}\n:host {\n --background: var(--ig-tree-background, hsla(var(--ig-surface-500), var(--ig-surface-a)));\n --foreground: var(--ig-tree-foreground, var(--ig-surface-500-contrast));\n --background-selected: var(--ig-tree-background-selected, hsla(var(--ig-primary-500), var(--ig-primary-a)));\n --foreground-selected: var(--ig-tree-foreground-selected, var(--ig-primary-500-contrast));\n --background-active: var(--ig-tree-background-active, hsla(var(--ig-surface-500), var(--ig-surface-a)));\n --foreground-active: var(--ig-tree-foreground-active, hsla(var(--ig-primary-500), var(--ig-primary-a)));\n --background-active-selected: var(--ig-tree-background-active-selected, hsla(var(--ig-primary-400), var(--ig-primary-a)));\n --foreground-active-selected: var(--ig-tree-foreground-active-selected, var(--ig-primary-400-contrast));\n --border-color: var(--ig-tree-border-color, hsla(var(--ig-primary-300), var(--ig-primary-a)));\n --background-disabled: var(--ig-tree-background-disabled, hsla(var(--ig-surface-500), var(--ig-surface-a)));\n --foreground-disabled: var(--ig-tree-foreground-disabled, hsla(var(--ig-gray-500), var(--ig-gray-a)));\n --drop-area-color: var(--ig-tree-drop-area-color, hsla(var(--ig-secondary-500), var(--ig-secondary-a)));\n --hover-color: var(--ig-tree-hover-color, hsla(var(--ig-primary-100), var(--ig-primary-a)));\n --size: var(--ig-tree-size, max(var(--is-large, 1) * max(3.125rem, -1 * 3.125rem), var(--is-medium, 1) * max(2.5rem, -1 * 2.5rem), var(--is-small, 1) * max(2rem, -1 * 2rem)));\n}\n\n[part~=wrapper] {\n min-height: var(--size);\n}\n\n[part~=label] {\n max-height: var(--size);\n}\n\n[part~=active] {\n background: var(--active-background, hsla(var(--ig-surface-500), var(--ig-surface-a)));\n color: var(--active-color, hsla(var(--ig-primary-500), var(--ig-primary-a)));\n}\n[part~=active]:hover {\n color: var(--active-color, hsla(var(--ig-primary-500), var(--ig-primary-a)));\n}\n\n[part~=selected] {\n background: var(--selected-background, hsla(var(--ig-primary-500), var(--ig-primary-a)));\n color: var(--selected-color, var(--ig-primary-600-contrast));\n}\n\n[part~=selected][part~=focused][part~=active],\n[part~=selected][part~=focused],\n[part~=selected][part~=active] {\n background: var(--active-selected-background, hsla(var(--ig-primary-400), var(--ig-primary-a)));\n color: var(--active-selected-color, var(--ig-primary-400-contrast));\n}\n\n[part~=select] {\n -webkit-margin-end: 0.5rem;\n margin-inline-end: 0.5rem;\n}\n\n[part~=focused] {\n -webkit-box-shadow: inset 0 0 0 1px var(--focused-border-color, hsla(var(--ig-primary-300), var(--ig-primary-a)));\n box-shadow: inset 0 0 0 1px var(--focused-border-color, hsla(var(--ig-primary-300), var(--ig-primary-a)));\n}`;\n"]}
1
+ {"version":3,"file":"tree-item.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/tree/themes/light/tree-item.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmGvB,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: min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n:host([hidden]),\n[hidden] {\n display: none !important;\n}\n:host {\n --background: var(--ig-tree-background, hsla(var(--ig-surface-500), var(--ig-surface-a)));\n --foreground: var(--ig-tree-foreground, var(--ig-surface-500-contrast));\n --background-selected: var(--ig-tree-background-selected, hsla(var(--ig-primary-500), var(--ig-primary-a)));\n --foreground-selected: var(--ig-tree-foreground-selected, var(--ig-primary-500-contrast));\n --background-active: var(--ig-tree-background-active, hsla(var(--ig-surface-500), var(--ig-surface-a)));\n --foreground-active: var(--ig-tree-foreground-active, hsla(var(--ig-primary-500), var(--ig-primary-a)));\n --background-active-selected: var(--ig-tree-background-active-selected, hsla(var(--ig-primary-400), var(--ig-primary-a)));\n --foreground-active-selected: var(--ig-tree-foreground-active-selected, var(--ig-primary-400-contrast));\n --border-color: var(--ig-tree-border-color, hsla(var(--ig-primary-300), var(--ig-primary-a)));\n --background-disabled: var(--ig-tree-background-disabled, hsla(var(--ig-surface-500), var(--ig-surface-a)));\n --foreground-disabled: var(--ig-tree-foreground-disabled, hsla(var(--ig-gray-500), var(--ig-gray-a)));\n --drop-area-color: var(--ig-tree-drop-area-color, hsla(var(--ig-secondary-500), var(--ig-secondary-a)));\n --hover-color: var(--ig-tree-hover-color, hsla(var(--ig-primary-100), var(--ig-primary-a)));\n --size: var(--ig-tree-size, max(var(--is-large, 1) * max(3.125rem, -1 * 3.125rem), var(--is-medium, 1) * max(2.5rem, -1 * 2.5rem), var(--is-small, 1) * max(2rem, -1 * 2rem)));\n}\n\n[part~=wrapper] {\n min-height: var(--size);\n background: var(--background);\n color: var(--foreground);\n}\n[part~=wrapper]::after {\n background: transparent;\n}\n[part~=wrapper]:hover::after {\n background: var(--hover-color);\n opacity: 0.3;\n}\n\n[part~=label] {\n max-height: var(--size);\n}\n\n[part~=active] {\n background: var(--background-active);\n color: var(--foreground-active);\n}\n[part~=active]:hover {\n color: var(--foreground-active);\n}\n\n[part~=selected] {\n background: var(--background-selected);\n color: var(--foreground-selected);\n}\n\n[part~=selected][part~=focused][part~=active],\n[part~=selected][part~=focused],\n[part~=selected][part~=active] {\n background: var(--background-active-selected);\n color: var(--foreground-active-selected);\n}\n\n[part~=select] {\n -webkit-margin-end: 0.5rem;\n margin-inline-end: 0.5rem;\n}\n\n[part~=focused] {\n -webkit-box-shadow: inset 0 0 0 1px var(--border-color);\n box-shadow: inset 0 0 0 1px var(--border-color);\n}\n\n:host([disabled]) [part~=label] {\n color: var(--foreground-disabled);\n background: var(--background-disabled);\n}`;\n"]}
@@ -50,9 +50,44 @@ export const styles = css `:host {
50
50
 
51
51
  [part~=wrapper] {
52
52
  min-height: var(--size);
53
+ background: var(--background);
54
+ color: var(--foreground);
55
+ }
56
+ [part~=wrapper]::after {
57
+ background: transparent;
58
+ }
59
+ [part~=wrapper]:hover::after {
60
+ background: var(--hover-color);
53
61
  }
54
62
 
55
63
  [part~=label] {
56
64
  max-height: var(--size);
65
+ }
66
+
67
+ [part~=active] {
68
+ background: var(--background-active);
69
+ color: var(--foreground-active);
70
+ }
71
+
72
+ [part~=selected] {
73
+ background: var(--background-selected);
74
+ color: var(--foreground-selected);
75
+ }
76
+
77
+ [part~=selected][part~=focused][part~=active],
78
+ [part~=selected][part~=focused],
79
+ [part~=selected][part~=active] {
80
+ background: var(--background-active-selected);
81
+ color: var(--foreground-active-selected);
82
+ }
83
+
84
+ [part~=focused] {
85
+ -webkit-box-shadow: inset 0 0 0 1px var(--border-color);
86
+ box-shadow: inset 0 0 0 1px var(--border-color);
87
+ }
88
+
89
+ :host([disabled]) [part~=label] {
90
+ color: var(--foreground-disabled);
91
+ background: var(--background-disabled);
57
92
  }`;
58
93
  //# sourceMappingURL=tree-item.material.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tree-item.material.css.js","sourceRoot":"","sources":["../../../../../src/components/tree/themes/light/tree-item.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuDvB,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: min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n:host([hidden]),\n[hidden] {\n display: none !important;\n}\n:host {\n --background: var(--ig-tree-background, hsla(var(--ig-surface-500), var(--ig-surface-a)));\n --foreground: var(--ig-tree-foreground, var(--ig-surface-500-contrast));\n --background-selected: var(--ig-tree-background-selected, hsla(var(--ig-secondary-200), var(--ig-secondary-a)));\n --foreground-selected: var(--ig-tree-foreground-selected, var(--ig-secondary-200-contrast));\n --background-active: var(--ig-tree-background-active, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n --foreground-active: var(--ig-tree-foreground-active, var(--ig-gray-200-contrast));\n --background-active-selected: var(--ig-tree-background-active-selected, hsla(var(--ig-secondary-300), var(--ig-secondary-a)));\n --foreground-active-selected: var(--ig-tree-foreground-active-selected, var(--ig-secondary-300-contrast));\n --border-color: var(--ig-tree-border-color, hsla(var(--ig-secondary-500), var(--ig-secondary-a)));\n --background-disabled: var(--ig-tree-background-disabled, hsla(var(--ig-surface-500), var(--ig-surface-a)));\n --foreground-disabled: var(--ig-tree-foreground-disabled, hsla(var(--ig-gray-500), var(--ig-gray-a)));\n --drop-area-color: var(--ig-tree-drop-area-color, hsla(var(--ig-secondary-500), var(--ig-secondary-a)));\n --hover-color: var(--ig-tree-hover-color, hsla(var(--ig-gray-900), 0.1));\n --size: var(--ig-tree-size, max(var(--is-large, 1) * max(3.125rem, -1 * 3.125rem), var(--is-medium, 1) * max(2.5rem, -1 * 2.5rem), var(--is-small, 1) * max(2rem, -1 * 2rem)));\n}\n\n[part~=wrapper] {\n min-height: var(--size);\n}\n\n[part~=label] {\n max-height: var(--size);\n}`;\n"]}
1
+ {"version":3,"file":"tree-item.material.css.js","sourceRoot":"","sources":["../../../../../src/components/tree/themes/light/tree-item.material.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0FvB,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: min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n:host([hidden]),\n[hidden] {\n display: none !important;\n}\n:host {\n --background: var(--ig-tree-background, hsla(var(--ig-surface-500), var(--ig-surface-a)));\n --foreground: var(--ig-tree-foreground, var(--ig-surface-500-contrast));\n --background-selected: var(--ig-tree-background-selected, hsla(var(--ig-secondary-200), var(--ig-secondary-a)));\n --foreground-selected: var(--ig-tree-foreground-selected, var(--ig-secondary-200-contrast));\n --background-active: var(--ig-tree-background-active, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n --foreground-active: var(--ig-tree-foreground-active, var(--ig-gray-200-contrast));\n --background-active-selected: var(--ig-tree-background-active-selected, hsla(var(--ig-secondary-300), var(--ig-secondary-a)));\n --foreground-active-selected: var(--ig-tree-foreground-active-selected, var(--ig-secondary-300-contrast));\n --border-color: var(--ig-tree-border-color, hsla(var(--ig-secondary-500), var(--ig-secondary-a)));\n --background-disabled: var(--ig-tree-background-disabled, hsla(var(--ig-surface-500), var(--ig-surface-a)));\n --foreground-disabled: var(--ig-tree-foreground-disabled, hsla(var(--ig-gray-500), var(--ig-gray-a)));\n --drop-area-color: var(--ig-tree-drop-area-color, hsla(var(--ig-secondary-500), var(--ig-secondary-a)));\n --hover-color: var(--ig-tree-hover-color, hsla(var(--ig-gray-900), 0.1));\n --size: var(--ig-tree-size, max(var(--is-large, 1) * max(3.125rem, -1 * 3.125rem), var(--is-medium, 1) * max(2.5rem, -1 * 2.5rem), var(--is-small, 1) * max(2rem, -1 * 2rem)));\n}\n\n[part~=wrapper] {\n min-height: var(--size);\n background: var(--background);\n color: var(--foreground);\n}\n[part~=wrapper]::after {\n background: transparent;\n}\n[part~=wrapper]:hover::after {\n background: var(--hover-color);\n}\n\n[part~=label] {\n max-height: var(--size);\n}\n\n[part~=active] {\n background: var(--background-active);\n color: var(--foreground-active);\n}\n\n[part~=selected] {\n background: var(--background-selected);\n color: var(--foreground-selected);\n}\n\n[part~=selected][part~=focused][part~=active],\n[part~=selected][part~=focused],\n[part~=selected][part~=active] {\n background: var(--background-active-selected);\n color: var(--foreground-active-selected);\n}\n\n[part~=focused] {\n -webkit-box-shadow: inset 0 0 0 1px var(--border-color);\n box-shadow: inset 0 0 0 1px var(--border-color);\n}\n\n:host([disabled]) [part~=label] {\n color: var(--foreground-disabled);\n background: var(--background-disabled);\n}`;\n"]}
@@ -35,17 +35,5 @@ export const styles = css `:host {
35
35
  display: block;
36
36
  overflow: auto;
37
37
  font-family: var(--ig-font-family);
38
- }
39
-
40
- :host([size=small]) {
41
- --component-size: var(--ig-size, var(--ig-size-small));
42
- }
43
-
44
- :host([size=medium]) {
45
- --component-size: var(--ig-size, var(--ig-size-medium));
46
- }
47
-
48
- :host([size=large]) {
49
- --component-size: var(--ig-size, var(--ig-size-large));
50
38
  }`;
51
39
  //# sourceMappingURL=tree.base.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tree.base.css.js","sourceRoot":"","sources":["../../../../../src/components/tree/themes/light/tree.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgDvB,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: min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n:host([hidden]),\n[hidden] {\n display: none !important;\n}\n:host {\n display: block;\n overflow: auto;\n font-family: var(--ig-font-family);\n}\n\n:host([size=small]) {\n --component-size: var(--ig-size, var(--ig-size-small));\n}\n\n:host([size=medium]) {\n --component-size: var(--ig-size, var(--ig-size-medium));\n}\n\n:host([size=large]) {\n --component-size: var(--ig-size, var(--ig-size-large));\n}`;\n"]}
1
+ {"version":3,"file":"tree.base.css.js","sourceRoot":"","sources":["../../../../../src/components/tree/themes/light/tree.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoCvB,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: min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n:host([hidden]),\n[hidden] {\n display: none !important;\n}\n:host {\n display: block;\n overflow: auto;\n font-family: var(--ig-font-family);\n}`;\n"]}
@@ -21,10 +21,9 @@ import type IgcTreeComponent from './tree.js';
21
21
  * @csspart select - The checkbox of the tree item when selection is enabled.
22
22
  */
23
23
  export default class IgcTreeItemComponent extends LitElement {
24
- /** @private */
25
24
  static readonly tagName = "igc-tree-item";
26
- /** @private */
27
25
  static styles: import("lit").CSSResult;
26
+ static register(): void;
28
27
  private tabbableEl?;
29
28
  private focusedProgrammatically;
30
29
  private animationPlayer;
@@ -4,28 +4,23 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
+ import { LitElement, html } from 'lit';
7
8
  import { property, query, queryAssignedElements, state, } from 'lit/decorators.js';
8
- import { html, LitElement } from 'lit';
9
+ import { AnimationPlayer } from '../../animations/player.js';
10
+ import { growVerIn, growVerOut } from '../../animations/presets/grow/index.js';
11
+ import { themes } from '../../theming/theming-decorator.js';
12
+ import IgcCheckboxComponent from '../checkbox/checkbox.js';
13
+ import { blazorSuppress } from '../common/decorators/blazorSuppress.js';
14
+ import { watch } from '../common/decorators/watch.js';
15
+ import { registerComponent } from '../common/definitions/register.js';
9
16
  import { isLTR, partNameMap } from '../common/util.js';
17
+ import IgcIconComponent from '../icon/icon.js';
18
+ import IgcCircularProgressComponent from '../progress/circular-progress.js';
10
19
  import { styles } from './themes/light/tree-item.base.css.js';
11
20
  import { styles as bootstrap } from './themes/light/tree-item.bootstrap.css.js';
12
21
  import { styles as fluent } from './themes/light/tree-item.fluent.css.js';
13
22
  import { styles as indigo } from './themes/light/tree-item.indigo.css.js';
14
23
  import { styles as material } from './themes/light/tree-item.material.css.js';
15
- import { watch } from '../common/decorators/watch.js';
16
- import { themes } from '../../theming/theming-decorator.js';
17
- import { blazorSuppress } from '../common/decorators/blazorSuppress.js';
18
- import { AnimationPlayer, growVerIn, growVerOut, } from '../../animations/index.js';
19
- import { defineComponents } from '../common/definitions/defineComponents.js';
20
- import IgcIconComponent from '../icon/icon.js';
21
- import IgcCheckboxComponent from '../checkbox/checkbox.js';
22
- import IgcCircularProgressComponent from '../progress/circular-progress.js';
23
- defineComponents(IgcIconComponent, IgcCheckboxComponent, IgcCircularProgressComponent);
24
- const sizeMultiplier = {
25
- small: 1 / 2,
26
- medium: 2 / 3,
27
- large: 1,
28
- };
29
24
  let IgcTreeItemComponent = class IgcTreeItemComponent extends LitElement {
30
25
  constructor() {
31
26
  super(...arguments);
@@ -44,6 +39,9 @@ let IgcTreeItemComponent = class IgcTreeItemComponent extends LitElement {
44
39
  this.loading = false;
45
40
  this.value = undefined;
46
41
  }
42
+ static register() {
43
+ registerComponent(this, IgcIconComponent, IgcCheckboxComponent, IgcCircularProgressComponent);
44
+ }
47
45
  firstUpdated() {
48
46
  this.animationPlayer = new AnimationPlayer(this.group);
49
47
  }
@@ -336,16 +334,12 @@ let IgcTreeItemComponent = class IgcTreeItemComponent extends LitElement {
336
334
  this.expanded = false;
337
335
  }
338
336
  render() {
339
- var _a, _b;
340
- const size = this.level * (this.tree ? sizeMultiplier[this.tree.size] : 1);
337
+ var _a;
341
338
  const ltr = this.tree ? isLTR(this.tree) : true;
342
339
  return html `
343
- <div
344
- id="wrapper"
345
- part="wrapper ${(_a = this.tree) === null || _a === void 0 ? void 0 : _a.size} ${partNameMap(this.parts)}"
346
- >
340
+ <div id="wrapper" part="wrapper ${partNameMap(this.parts)}">
347
341
  <div
348
- style="width: calc(${size} * var(--igc-tree-indentation-size))"
342
+ style="width: calc(${this.level} * var(--igc-tree-indentation-size))"
349
343
  part="indentation"
350
344
  aria-hidden="true"
351
345
  >
@@ -376,7 +370,7 @@ let IgcTreeItemComponent = class IgcTreeItemComponent extends LitElement {
376
370
  </slot>
377
371
  `}
378
372
  </div>
379
- ${((_b = this.tree) === null || _b === void 0 ? void 0 : _b.selection) !== 'none'
373
+ ${((_a = this.tree) === null || _a === void 0 ? void 0 : _a.selection) !== 'none'
380
374
  ? html `
381
375
  <div part="select" aria-hidden="true">
382
376
  <igc-checkbox
@@ -480,7 +474,10 @@ __decorate([
480
474
  blazorSuppress()
481
475
  ], IgcTreeItemComponent.prototype, "getChildren", null);
482
476
  IgcTreeItemComponent = __decorate([
483
- themes({ bootstrap, fluent, indigo, material })
477
+ themes({
478
+ light: { bootstrap, fluent, indigo, material },
479
+ dark: { bootstrap, fluent, indigo, material },
480
+ })
484
481
  ], IgcTreeItemComponent);
485
482
  export default IgcTreeItemComponent;
486
483
  //# sourceMappingURL=tree-item.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tree-item.js","sourceRoot":"","sources":["../../../src/components/tree/tree-item.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n property,\n query,\n queryAssignedElements,\n state,\n} from 'lit/decorators.js';\nimport { html, LitElement } from 'lit';\nimport { isLTR, partNameMap } from '../common/util.js';\nimport { styles } from './themes/light/tree-item.base.css.js';\nimport { styles as bootstrap } from './themes/light/tree-item.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/tree-item.fluent.css.js';\nimport { styles as indigo } from './themes/light/tree-item.indigo.css.js';\nimport { styles as material } from './themes/light/tree-item.material.css.js';\nimport type IgcTreeComponent from './tree.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { IgcTreeSelectionService } from './tree.selection.js';\nimport { IgcTreeNavigationService } from './tree.navigation.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { blazorSuppress } from '../common/decorators/blazorSuppress.js';\nimport {\n AnimationPlayer,\n growVerIn,\n growVerOut,\n} from '../../animations/index.js';\n\nimport { defineComponents } from '../common/definitions/defineComponents.js';\nimport IgcIconComponent from '../icon/icon.js';\nimport IgcCheckboxComponent from '../checkbox/checkbox.js';\nimport IgcCircularProgressComponent from '../progress/circular-progress.js';\n\ndefineComponents(\n IgcIconComponent,\n IgcCheckboxComponent,\n IgcCircularProgressComponent\n);\n\nconst sizeMultiplier: Record<'small' | 'medium' | 'large', number> = {\n small: 1 / 2,\n medium: 2 / 3,\n large: 1,\n};\n\n/**\n * The tree-item component represents a child item of the tree component or another tree item.\n *\n * @element igc-tree-item\n *\n * @slot - Renders nested tree-item component.\n * @slot label - Renders the tree item container.\n * @slot indicator - Renders the expand indicator container.\n * @slot loading - Renders the tree item loading indicator container.\n * @slot indentation - Renders the container (by default the space) before the tree item.\n *\n * @csspart wrapper - The wrapper for the tree item.\n * @csspart selected - Indicates selected state. Applies to `wrapper`.\n * @csspart focused - Indicates focused state. Applies to `wrapper`.\n * @csspart active - Indicates an active state. Applies to `wrapper`.\n * @csspart indicator - The expand indicator of the tree item.\n * @csspart label - The tree item content.\n * @csspart text - The tree item displayed text.\n * @csspart select - The checkbox of the tree item when selection is enabled.\n */\n@themes({ bootstrap, fluent, indigo, material })\nexport default class IgcTreeItemComponent extends LitElement {\n /** @private */\n public static readonly tagName = 'igc-tree-item';\n /** @private */\n public static override styles = styles;\n\n private tabbableEl?: HTMLElement[];\n private focusedProgrammatically = false;\n private animationPlayer!: AnimationPlayer;\n\n /** A reference to the tree the item is a part of. */\n @blazorSuppress()\n public tree?: IgcTreeComponent;\n /** The parent item of the current tree item (if any) */\n public parent: IgcTreeItemComponent | null = null;\n\n /** @private */\n @blazorSuppress()\n public init = false;\n\n @queryAssignedElements({ slot: 'label', flatten: true })\n private contentList!: Array<HTMLElement>;\n\n /** @private */\n @query('#wrapper')\n @blazorSuppress()\n public wrapper!: HTMLElement;\n\n /** @private */\n @query('[role=\"group\"]', true)\n private group!: HTMLElement;\n\n @state()\n private isFocused = false;\n\n /** @private */\n @state()\n @blazorSuppress()\n public hasChildren = false;\n\n /** The depth of the item, relative to the root. */\n @state()\n public level = 0;\n\n /** @private */\n @state()\n @blazorSuppress()\n public indeterminate = false;\n\n /**\n * The tree item label.\n * @attr\n */\n @property()\n public label = '';\n\n /**\n * The tree item expansion state.\n * @attr\n */\n @property({ reflect: true, type: Boolean })\n public expanded = false;\n\n /**\n * Marks the item as the tree's active item.\n * @attr\n */\n @property({ reflect: true, type: Boolean })\n public active = false;\n\n /**\n * Get/Set whether the tree item is disabled. Disabled items are ignored for user interactions.\n * @attr\n */\n @property({ reflect: true, type: Boolean })\n public disabled = false;\n\n /**\n * The tree item selection state.\n * @attr\n */\n @property({ reflect: true, type: Boolean })\n public selected = false;\n\n /**\n * To be used for load-on-demand scenarios in order to specify whether the item is loading data.\n * @attr\n */\n @property({ reflect: true, type: Boolean })\n public loading = false;\n\n /**\n * The value entry that the tree item is visualizing. Required for searching through items.\n * @type any\n * @attr\n */\n @property({ attribute: true })\n public value: any = undefined;\n\n public override firstUpdated() {\n this.animationPlayer = new AnimationPlayer(this.group);\n }\n\n private async toggleAnimation(dir: 'open' | 'close') {\n const animation = dir === 'open' ? growVerIn : growVerOut;\n\n const [_, event] = await Promise.all([\n this.animationPlayer.stopAll(),\n this.animationPlayer.play(animation()),\n ]);\n\n return event.type === 'finish';\n }\n\n @watch('expanded', { waitUntilFirstUpdate: true })\n @watch('hasChildren', { waitUntilFirstUpdate: true })\n protected bothChange(): void {\n if (this.hasChildren) {\n this.setAttribute('aria-expanded', this.expanded.toString());\n } else {\n this.removeAttribute('aria-expanded');\n }\n }\n\n @watch('expanded')\n protected expandedChange(oldValue: boolean): void {\n // always update the visible cache\n this.navService?.update_visible_cache(this, this.expanded);\n if (!oldValue) {\n return;\n }\n // await for load on demand children\n Promise.resolve().then(() => {\n if (this.navService?.focusedItem !== this && !this.isFocused) {\n this.navService?.focusedItem?.wrapper?.scrollIntoView({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'nearest',\n });\n }\n });\n }\n\n @watch('active', { waitUntilFirstUpdate: true })\n protected activeChange(): void {\n if ((this.active && this.navService?.activeItem === this) || !this.active) {\n return;\n }\n if (this.navService) {\n this.navService.setActiveItem(this, false);\n }\n // Expand and scroll to the newly active item\n this.tree?.expandToItem(this);\n // Await for expanding\n Promise.resolve().then(() => {\n this.wrapper?.scrollIntoView({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'nearest',\n });\n });\n }\n\n @watch('disabled')\n protected disabledChange(): void {\n this.navService?.update_disabled_cache(this);\n }\n\n @watch('selected', { waitUntilFirstUpdate: true })\n protected selectedChange(): void {\n if (this.selected && !this.selectionService?.isItemSelected(this)) {\n this.selectionService?.selectItemsWithNoEvent([this]);\n }\n if (!this.selected && this.selectionService?.isItemSelected(this)) {\n this.selectionService?.deselectItemsWithNoEvent([this]);\n }\n }\n\n public override connectedCallback(): void {\n super.connectedCallback();\n this.tree = this.closest('igc-tree') as IgcTreeComponent;\n this.parent = this.parentElement?.closest(\n 'igc-tree-item'\n ) as IgcTreeItemComponent | null;\n this.level = this.parent ? this.parent.level + 1 : 0;\n this.setAttribute('role', 'treeitem');\n this.addEventListener('blur', this.onBlur);\n this.addEventListener('focus', this.onFocus);\n this.addEventListener('pointerdown', this.pointerDown);\n this.activeChange();\n // if the item is not added/moved runtime\n if (this.init) {\n this.selectedChange();\n } else {\n // retriger the item selection state in order to update the collections within the selectionService\n // and to handle correctly the itemParents recursively to the top-most ancestor\n this.selectionService?.retriggerItemState(this);\n }\n this.init = false;\n }\n\n public override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.selectionService?.ensureStateOnItemDelete(this);\n this.navService?.delete_item(this);\n }\n\n private get selectionService(): IgcTreeSelectionService | undefined {\n return this.tree?.selectionService;\n }\n\n private get navService(): IgcTreeNavigationService | undefined {\n return this.tree?.navService;\n }\n\n private get parts() {\n return {\n selected: this.selected,\n focused: this.isFocused,\n active: this.active,\n };\n }\n\n private get directChildren(): Array<IgcTreeItemComponent> {\n return this.allChildren.filter(\n (x) =>\n (x.parent ?? x.parentElement?.closest('igc-tree-item'))?.isSameNode(\n this\n )\n ) as IgcTreeItemComponent[];\n }\n\n private get allChildren(): Array<IgcTreeItemComponent> {\n return Array.from(this.querySelectorAll(`igc-tree-item`));\n }\n\n /** The full path to the tree item, starting from the top-most ancestor. */\n public get path(): IgcTreeItemComponent[] {\n return this.parent?.path ? [...this.parent.path, this] : [this];\n }\n\n private pointerDown(event: MouseEvent): void {\n event.stopPropagation();\n if (this.disabled) {\n return;\n }\n this.tabIndex = 0;\n this.navService?.setFocusedAndActiveItem(this, true, false);\n }\n\n private expandIndicatorClick(): void {\n if (this.disabled) {\n return;\n }\n if (this.expanded) {\n this.collapseWithEvent();\n } else {\n this.expandWithEvent();\n }\n }\n\n private selectorClick(event: MouseEvent): void {\n event.preventDefault();\n if (event.shiftKey) {\n this.selectionService?.selectMultipleItems(this);\n return;\n }\n if (this.selected) {\n this.selectionService?.deselectItem(this);\n } else {\n this.selectionService?.selectItem(this);\n }\n }\n\n private onFocus(): void {\n if (this.disabled) {\n return;\n }\n if (this.navService?.focusedItem !== this) {\n this.navService?.focusItem(this, false);\n this.wrapper?.scrollIntoView({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'nearest',\n });\n }\n if (this.tabbableEl && this.tabbableEl.length) {\n // set tabIndex = 0 to all tabbable elements\n // focus the first one\n this.tabbableEl.forEach((element: HTMLElement) => {\n element.tabIndex = 0;\n });\n this.focusedProgrammatically = true;\n this.tabbableEl[0].focus();\n return;\n }\n this.isFocused = true;\n }\n\n private onBlur(): void {\n this.isFocused = false;\n }\n\n private onFocusIn(ev: Event): void {\n ev?.stopPropagation();\n if (!this.disabled) {\n // clicking directly over tabbable element when the item is not focused\n if (!this.focusedProgrammatically) {\n this.tabbableEl?.forEach((element: HTMLElement) => {\n element.tabIndex = 0;\n });\n }\n this.removeAttribute('tabIndex');\n this.isFocused = true;\n this.focusedProgrammatically = false;\n }\n }\n\n private onFocusOut(ev: Event): void {\n ev?.stopPropagation();\n this.isFocused = false;\n this.tabbableEl?.forEach((element: HTMLElement) => {\n element.tabIndex = -1;\n });\n\n if (this.navService?.focusedItem === this) {\n // called twice when clicking on already focused item with link (pointerDown handler)\n this.setAttribute('tabindex', '0');\n }\n }\n\n private labelChange(): void {\n const firstElement = this.contentList[0];\n const tabbableSelector =\n 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"])';\n\n this.tabbableEl = [\n ...firstElement.querySelectorAll<HTMLElement>(tabbableSelector),\n ];\n if (firstElement.matches(tabbableSelector)) {\n this.tabbableEl.splice(0, 0, firstElement);\n }\n\n if (this.tabbableEl && this.tabbableEl.length) {\n this.setAttribute('role', 'none');\n this.tabbableEl[0].setAttribute('role', 'treeitem');\n\n this.tabbableEl.forEach((element: HTMLElement) => {\n element.tabIndex = -1;\n });\n } else {\n this.setAttribute('role', 'treeitem');\n }\n }\n\n private handleChange(): void {\n this.hasChildren = !!this.directChildren.length;\n // there is no need to update nested children beacuse they're state is already up to date\n this.navService?.update_visible_cache(this, this.expanded, false);\n }\n\n /**\n * Returns a collection of child items.\n * If the parameter value is true returns all tree item's direct children,\n * otherwise - only the direct children.\n */\n @blazorSuppress()\n public getChildren(\n options: { flatten: boolean } = { flatten: false }\n ): IgcTreeItemComponent[] {\n if (options.flatten) {\n return this.allChildren;\n } else {\n return this.directChildren;\n }\n }\n\n /**\n * @private\n * Expands the tree item.\n */\n public async expandWithEvent() {\n if (this.expanded) {\n return;\n }\n const args = {\n detail: this,\n cancelable: true,\n };\n\n const allowed = this.tree?.emitEvent('igcItemExpanding', args);\n\n if (!allowed) {\n return;\n }\n\n if (this.tree?.singleBranchExpand) {\n const pathSet = new Set(this.path.splice(0, this.path.length - 1));\n this.tree.items.forEach((item: IgcTreeItemComponent) => {\n if (!pathSet.has(item)) {\n item.collapseWithEvent();\n }\n });\n }\n\n this.expanded = true;\n if (await this.toggleAnimation('open')) {\n this.tree?.emitEvent('igcItemExpanded', { detail: this });\n }\n }\n\n /**\n * @private\n * Collapses the tree item.\n */\n public async collapseWithEvent() {\n if (!this.expanded) {\n return;\n }\n const args = {\n detail: this,\n cancelable: true,\n };\n\n const allowed = this.tree?.emitEvent('igcItemCollapsing', args);\n\n if (!allowed) {\n return;\n }\n\n this.expanded = false;\n if (await this.toggleAnimation('close')) {\n this.tree?.emitEvent('igcItemCollapsed', { detail: this });\n }\n }\n\n /** Toggles tree item expansion state. */\n public toggle(): void {\n this.expanded = !this.expanded;\n }\n\n /** Expands the tree item. */\n public expand(): void {\n this.expanded = true;\n }\n\n /** Collapses the tree item. */\n public collapse(): void {\n this.expanded = false;\n }\n\n protected override render() {\n const size = this.level * (this.tree ? sizeMultiplier[this.tree!.size] : 1);\n const ltr = this.tree ? isLTR(this.tree) : true;\n\n return html`\n <div\n id=\"wrapper\"\n part=\"wrapper ${this.tree?.size} ${partNameMap(this.parts)}\"\n >\n <div\n style=\"width: calc(${size} * var(--igc-tree-indentation-size))\"\n part=\"indentation\"\n aria-hidden=\"true\"\n >\n <slot name=\"indentation\"></slot>\n </div>\n <div part=\"indicator\" aria-hidden=\"true\">\n ${this.loading\n ? html`\n <slot name=\"loading\">\n <igc-circular-progress indeterminate></igc-circular-progress>\n </slot>\n `\n : html`\n <slot name=\"indicator\" @click=${this.expandIndicatorClick}>\n ${this.hasChildren\n ? html`\n <igc-icon\n name=${this.expanded\n ? 'keyboard_arrow_down'\n : !ltr\n ? 'navigate_before'\n : 'keyboard_arrow_right'}\n collection=\"internal\"\n >\n </igc-icon>\n `\n : ''}\n </slot>\n `}\n </div>\n ${this.tree?.selection !== 'none'\n ? html`\n <div part=\"select\" aria-hidden=\"true\">\n <igc-checkbox\n @click=${this.selectorClick}\n .checked=${this.selected}\n .indeterminate=${this.indeterminate}\n .disabled=${this.disabled}\n tabindex=\"-1\"\n >\n </igc-checkbox>\n </div>\n `\n : ''}\n <div part=\"label\">\n <slot\n name=\"label\"\n @slotchange=${this.labelChange}\n @focusin=${this.onFocusIn}\n @focusout=${this.onFocusOut}\n >\n <span part=\"text\">${this.label}</span>\n </slot>\n </div>\n </div>\n <div role=\"group\" aria-hidden=${!this.expanded}>\n <slot @slotchange=${this.handleChange}></slot>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-tree-item': IgcTreeItemComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"tree-item.js","sourceRoot":"","sources":["../../../src/components/tree/tree-item.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement, html } from 'lit';\nimport {\n property,\n query,\n queryAssignedElements,\n state,\n} from 'lit/decorators.js';\nimport { AnimationPlayer } from '../../animations/player.js';\nimport { growVerIn, growVerOut } from '../../animations/presets/grow/index.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport IgcCheckboxComponent from '../checkbox/checkbox.js';\nimport { blazorSuppress } from '../common/decorators/blazorSuppress.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport { isLTR, partNameMap } from '../common/util.js';\nimport IgcIconComponent from '../icon/icon.js';\nimport IgcCircularProgressComponent from '../progress/circular-progress.js';\nimport { styles } from './themes/light/tree-item.base.css.js';\nimport { styles as bootstrap } from './themes/light/tree-item.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/tree-item.fluent.css.js';\nimport { styles as indigo } from './themes/light/tree-item.indigo.css.js';\nimport { styles as material } from './themes/light/tree-item.material.css.js';\nimport type IgcTreeComponent from './tree.js';\nimport { IgcTreeNavigationService } from './tree.navigation.js';\nimport { IgcTreeSelectionService } from './tree.selection.js';\n\n/**\n * The tree-item component represents a child item of the tree component or another tree item.\n *\n * @element igc-tree-item\n *\n * @slot - Renders nested tree-item component.\n * @slot label - Renders the tree item container.\n * @slot indicator - Renders the expand indicator container.\n * @slot loading - Renders the tree item loading indicator container.\n * @slot indentation - Renders the container (by default the space) before the tree item.\n *\n * @csspart wrapper - The wrapper for the tree item.\n * @csspart selected - Indicates selected state. Applies to `wrapper`.\n * @csspart focused - Indicates focused state. Applies to `wrapper`.\n * @csspart active - Indicates an active state. Applies to `wrapper`.\n * @csspart indicator - The expand indicator of the tree item.\n * @csspart label - The tree item content.\n * @csspart text - The tree item displayed text.\n * @csspart select - The checkbox of the tree item when selection is enabled.\n */\n@themes({\n light: { bootstrap, fluent, indigo, material },\n dark: { bootstrap, fluent, indigo, material },\n})\nexport default class IgcTreeItemComponent extends LitElement {\n public static readonly tagName = 'igc-tree-item';\n public static override styles = styles;\n\n public static register() {\n registerComponent(\n this,\n IgcIconComponent,\n IgcCheckboxComponent,\n IgcCircularProgressComponent\n );\n }\n\n private tabbableEl?: HTMLElement[];\n private focusedProgrammatically = false;\n private animationPlayer!: AnimationPlayer;\n\n /** A reference to the tree the item is a part of. */\n @blazorSuppress()\n public tree?: IgcTreeComponent;\n /** The parent item of the current tree item (if any) */\n public parent: IgcTreeItemComponent | null = null;\n\n /** @private */\n @blazorSuppress()\n public init = false;\n\n @queryAssignedElements({ slot: 'label', flatten: true })\n private contentList!: Array<HTMLElement>;\n\n /** @private */\n @query('#wrapper')\n @blazorSuppress()\n public wrapper!: HTMLElement;\n\n /** @private */\n @query('[role=\"group\"]', true)\n private group!: HTMLElement;\n\n @state()\n private isFocused = false;\n\n /** @private */\n @state()\n @blazorSuppress()\n public hasChildren = false;\n\n /** The depth of the item, relative to the root. */\n @state()\n public level = 0;\n\n /** @private */\n @state()\n @blazorSuppress()\n public indeterminate = false;\n\n /**\n * The tree item label.\n * @attr\n */\n @property()\n public label = '';\n\n /**\n * The tree item expansion state.\n * @attr\n */\n @property({ reflect: true, type: Boolean })\n public expanded = false;\n\n /**\n * Marks the item as the tree's active item.\n * @attr\n */\n @property({ reflect: true, type: Boolean })\n public active = false;\n\n /**\n * Get/Set whether the tree item is disabled. Disabled items are ignored for user interactions.\n * @attr\n */\n @property({ reflect: true, type: Boolean })\n public disabled = false;\n\n /**\n * The tree item selection state.\n * @attr\n */\n @property({ reflect: true, type: Boolean })\n public selected = false;\n\n /**\n * To be used for load-on-demand scenarios in order to specify whether the item is loading data.\n * @attr\n */\n @property({ reflect: true, type: Boolean })\n public loading = false;\n\n /**\n * The value entry that the tree item is visualizing. Required for searching through items.\n * @type any\n * @attr\n */\n @property({ attribute: true })\n public value: any = undefined;\n\n public override firstUpdated() {\n this.animationPlayer = new AnimationPlayer(this.group);\n }\n\n private async toggleAnimation(dir: 'open' | 'close') {\n const animation = dir === 'open' ? growVerIn : growVerOut;\n\n const [_, event] = await Promise.all([\n this.animationPlayer.stopAll(),\n this.animationPlayer.play(animation()),\n ]);\n\n return event.type === 'finish';\n }\n\n @watch('expanded', { waitUntilFirstUpdate: true })\n @watch('hasChildren', { waitUntilFirstUpdate: true })\n protected bothChange(): void {\n if (this.hasChildren) {\n this.setAttribute('aria-expanded', this.expanded.toString());\n } else {\n this.removeAttribute('aria-expanded');\n }\n }\n\n @watch('expanded')\n protected expandedChange(oldValue: boolean): void {\n // always update the visible cache\n this.navService?.update_visible_cache(this, this.expanded);\n if (!oldValue) {\n return;\n }\n // await for load on demand children\n Promise.resolve().then(() => {\n if (this.navService?.focusedItem !== this && !this.isFocused) {\n this.navService?.focusedItem?.wrapper?.scrollIntoView({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'nearest',\n });\n }\n });\n }\n\n @watch('active', { waitUntilFirstUpdate: true })\n protected activeChange(): void {\n if ((this.active && this.navService?.activeItem === this) || !this.active) {\n return;\n }\n if (this.navService) {\n this.navService.setActiveItem(this, false);\n }\n // Expand and scroll to the newly active item\n this.tree?.expandToItem(this);\n // Await for expanding\n Promise.resolve().then(() => {\n this.wrapper?.scrollIntoView({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'nearest',\n });\n });\n }\n\n @watch('disabled')\n protected disabledChange(): void {\n this.navService?.update_disabled_cache(this);\n }\n\n @watch('selected', { waitUntilFirstUpdate: true })\n protected selectedChange(): void {\n if (this.selected && !this.selectionService?.isItemSelected(this)) {\n this.selectionService?.selectItemsWithNoEvent([this]);\n }\n if (!this.selected && this.selectionService?.isItemSelected(this)) {\n this.selectionService?.deselectItemsWithNoEvent([this]);\n }\n }\n\n public override connectedCallback(): void {\n super.connectedCallback();\n this.tree = this.closest('igc-tree') as IgcTreeComponent;\n this.parent = this.parentElement?.closest(\n 'igc-tree-item'\n ) as IgcTreeItemComponent | null;\n this.level = this.parent ? this.parent.level + 1 : 0;\n this.setAttribute('role', 'treeitem');\n this.addEventListener('blur', this.onBlur);\n this.addEventListener('focus', this.onFocus);\n this.addEventListener('pointerdown', this.pointerDown);\n this.activeChange();\n // if the item is not added/moved runtime\n if (this.init) {\n this.selectedChange();\n } else {\n // retriger the item selection state in order to update the collections within the selectionService\n // and to handle correctly the itemParents recursively to the top-most ancestor\n this.selectionService?.retriggerItemState(this);\n }\n this.init = false;\n }\n\n public override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.selectionService?.ensureStateOnItemDelete(this);\n this.navService?.delete_item(this);\n }\n\n private get selectionService(): IgcTreeSelectionService | undefined {\n return this.tree?.selectionService;\n }\n\n private get navService(): IgcTreeNavigationService | undefined {\n return this.tree?.navService;\n }\n\n private get parts() {\n return {\n selected: this.selected,\n focused: this.isFocused,\n active: this.active,\n };\n }\n\n private get directChildren(): Array<IgcTreeItemComponent> {\n return this.allChildren.filter(\n (x) =>\n (x.parent ?? x.parentElement?.closest('igc-tree-item'))?.isSameNode(\n this\n )\n ) as IgcTreeItemComponent[];\n }\n\n private get allChildren(): Array<IgcTreeItemComponent> {\n return Array.from(this.querySelectorAll(`igc-tree-item`));\n }\n\n /** The full path to the tree item, starting from the top-most ancestor. */\n public get path(): IgcTreeItemComponent[] {\n return this.parent?.path ? [...this.parent.path, this] : [this];\n }\n\n private pointerDown(event: MouseEvent): void {\n event.stopPropagation();\n if (this.disabled) {\n return;\n }\n this.tabIndex = 0;\n this.navService?.setFocusedAndActiveItem(this, true, false);\n }\n\n private expandIndicatorClick(): void {\n if (this.disabled) {\n return;\n }\n if (this.expanded) {\n this.collapseWithEvent();\n } else {\n this.expandWithEvent();\n }\n }\n\n private selectorClick(event: MouseEvent): void {\n event.preventDefault();\n if (event.shiftKey) {\n this.selectionService?.selectMultipleItems(this);\n return;\n }\n if (this.selected) {\n this.selectionService?.deselectItem(this);\n } else {\n this.selectionService?.selectItem(this);\n }\n }\n\n private onFocus(): void {\n if (this.disabled) {\n return;\n }\n if (this.navService?.focusedItem !== this) {\n this.navService?.focusItem(this, false);\n this.wrapper?.scrollIntoView({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'nearest',\n });\n }\n if (this.tabbableEl && this.tabbableEl.length) {\n // set tabIndex = 0 to all tabbable elements\n // focus the first one\n this.tabbableEl.forEach((element: HTMLElement) => {\n element.tabIndex = 0;\n });\n this.focusedProgrammatically = true;\n this.tabbableEl[0].focus();\n return;\n }\n this.isFocused = true;\n }\n\n private onBlur(): void {\n this.isFocused = false;\n }\n\n private onFocusIn(ev: Event): void {\n ev?.stopPropagation();\n if (!this.disabled) {\n // clicking directly over tabbable element when the item is not focused\n if (!this.focusedProgrammatically) {\n this.tabbableEl?.forEach((element: HTMLElement) => {\n element.tabIndex = 0;\n });\n }\n this.removeAttribute('tabIndex');\n this.isFocused = true;\n this.focusedProgrammatically = false;\n }\n }\n\n private onFocusOut(ev: Event): void {\n ev?.stopPropagation();\n this.isFocused = false;\n this.tabbableEl?.forEach((element: HTMLElement) => {\n element.tabIndex = -1;\n });\n\n if (this.navService?.focusedItem === this) {\n // called twice when clicking on already focused item with link (pointerDown handler)\n this.setAttribute('tabindex', '0');\n }\n }\n\n private labelChange(): void {\n const firstElement = this.contentList[0];\n const tabbableSelector =\n 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"])';\n\n this.tabbableEl = [\n ...firstElement.querySelectorAll<HTMLElement>(tabbableSelector),\n ];\n if (firstElement.matches(tabbableSelector)) {\n this.tabbableEl.splice(0, 0, firstElement);\n }\n\n if (this.tabbableEl && this.tabbableEl.length) {\n this.setAttribute('role', 'none');\n this.tabbableEl[0].setAttribute('role', 'treeitem');\n\n this.tabbableEl.forEach((element: HTMLElement) => {\n element.tabIndex = -1;\n });\n } else {\n this.setAttribute('role', 'treeitem');\n }\n }\n\n private handleChange(): void {\n this.hasChildren = !!this.directChildren.length;\n // there is no need to update nested children beacuse they're state is already up to date\n this.navService?.update_visible_cache(this, this.expanded, false);\n }\n\n /**\n * Returns a collection of child items.\n * If the parameter value is true returns all tree item's direct children,\n * otherwise - only the direct children.\n */\n @blazorSuppress()\n public getChildren(\n options: { flatten: boolean } = { flatten: false }\n ): IgcTreeItemComponent[] {\n if (options.flatten) {\n return this.allChildren;\n } else {\n return this.directChildren;\n }\n }\n\n /**\n * @private\n * Expands the tree item.\n */\n public async expandWithEvent() {\n if (this.expanded) {\n return;\n }\n const args = {\n detail: this,\n cancelable: true,\n };\n\n const allowed = this.tree?.emitEvent('igcItemExpanding', args);\n\n if (!allowed) {\n return;\n }\n\n if (this.tree?.singleBranchExpand) {\n const pathSet = new Set(this.path.splice(0, this.path.length - 1));\n this.tree.items.forEach((item: IgcTreeItemComponent) => {\n if (!pathSet.has(item)) {\n item.collapseWithEvent();\n }\n });\n }\n\n this.expanded = true;\n if (await this.toggleAnimation('open')) {\n this.tree?.emitEvent('igcItemExpanded', { detail: this });\n }\n }\n\n /**\n * @private\n * Collapses the tree item.\n */\n public async collapseWithEvent() {\n if (!this.expanded) {\n return;\n }\n const args = {\n detail: this,\n cancelable: true,\n };\n\n const allowed = this.tree?.emitEvent('igcItemCollapsing', args);\n\n if (!allowed) {\n return;\n }\n\n this.expanded = false;\n if (await this.toggleAnimation('close')) {\n this.tree?.emitEvent('igcItemCollapsed', { detail: this });\n }\n }\n\n /** Toggles tree item expansion state. */\n public toggle(): void {\n this.expanded = !this.expanded;\n }\n\n /** Expands the tree item. */\n public expand(): void {\n this.expanded = true;\n }\n\n /** Collapses the tree item. */\n public collapse(): void {\n this.expanded = false;\n }\n\n protected override render() {\n const ltr = this.tree ? isLTR(this.tree) : true;\n\n return html`\n <div id=\"wrapper\" part=\"wrapper ${partNameMap(this.parts)}\">\n <div\n style=\"width: calc(${this.level} * var(--igc-tree-indentation-size))\"\n part=\"indentation\"\n aria-hidden=\"true\"\n >\n <slot name=\"indentation\"></slot>\n </div>\n <div part=\"indicator\" aria-hidden=\"true\">\n ${this.loading\n ? html`\n <slot name=\"loading\">\n <igc-circular-progress indeterminate></igc-circular-progress>\n </slot>\n `\n : html`\n <slot name=\"indicator\" @click=${this.expandIndicatorClick}>\n ${this.hasChildren\n ? html`\n <igc-icon\n name=${this.expanded\n ? 'keyboard_arrow_down'\n : !ltr\n ? 'navigate_before'\n : 'keyboard_arrow_right'}\n collection=\"internal\"\n >\n </igc-icon>\n `\n : ''}\n </slot>\n `}\n </div>\n ${this.tree?.selection !== 'none'\n ? html`\n <div part=\"select\" aria-hidden=\"true\">\n <igc-checkbox\n @click=${this.selectorClick}\n .checked=${this.selected}\n .indeterminate=${this.indeterminate}\n .disabled=${this.disabled}\n tabindex=\"-1\"\n >\n </igc-checkbox>\n </div>\n `\n : ''}\n <div part=\"label\">\n <slot\n name=\"label\"\n @slotchange=${this.labelChange}\n @focusin=${this.onFocusIn}\n @focusout=${this.onFocusOut}\n >\n <span part=\"text\">${this.label}</span>\n </slot>\n </div>\n </div>\n <div role=\"group\" aria-hidden=${!this.expanded}>\n <slot @slotchange=${this.handleChange}></slot>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-tree-item': IgcTreeItemComponent;\n }\n}\n"]}
@@ -21,10 +21,9 @@ declare const IgcTreeComponent_base: Constructor<import("../common/mixins/sizabl
21
21
  * @fires igcItemActivated - Emitted when the tree's `active` item changes.
22
22
  */
23
23
  export default class IgcTreeComponent extends IgcTreeComponent_base {
24
- /** @private */
25
24
  static readonly tagName = "igc-tree";
26
- /** @private */
27
25
  static styles: import("lit").CSSResult;
26
+ static register(): void;
28
27
  /** @private */
29
28
  selectionService: IgcTreeSelectionService;
30
29
  /** @private */
@@ -6,18 +6,20 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { html, LitElement } from 'lit';
8
8
  import { property } from 'lit/decorators.js';
9
+ import { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';
10
+ import { blazorSuppress } from '../common/decorators/blazorSuppress.js';
9
11
  import { watch } from '../common/decorators/watch.js';
10
- import { styles } from './themes/light/tree.base.css.js';
11
12
  import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
12
13
  import { SizableMixin } from '../common/mixins/sizable.js';
14
+ import { styles } from './themes/light/tree.base.css.js';
13
15
  import { IgcTreeNavigationService } from './tree.navigation.js';
14
16
  import { IgcTreeSelectionService } from './tree.selection.js';
15
- import { blazorSuppress } from '../common/decorators/blazorSuppress.js';
16
- import { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';
17
- import { defineComponents } from '../common/definitions/defineComponents.js';
17
+ import { registerComponent } from '../common/definitions/register.js';
18
18
  import IgcTreeItemComponent from './tree-item.js';
19
- defineComponents(IgcTreeItemComponent);
20
19
  let IgcTreeComponent = class IgcTreeComponent extends SizableMixin(EventEmitterMixin(LitElement)) {
20
+ static register() {
21
+ registerComponent(this, IgcTreeItemComponent);
22
+ }
21
23
  onDirChange() {
22
24
  var _a;
23
25
  (_a = this.items) === null || _a === void 0 ? void 0 : _a.forEach((item) => {
@@ -1 +1 @@
1
- {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../src/components/tree/tree.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { styles } from './themes/light/tree.base.css.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { SizableMixin } from '../common/mixins/sizable.js';\nimport { IgcTreeEventMap } from './tree.common.js';\nimport { IgcTreeNavigationService } from './tree.navigation.js';\nimport { IgcTreeSelectionService } from './tree.selection.js';\nimport { blazorSuppress } from '../common/decorators/blazorSuppress.js';\nimport { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';\n\nimport { defineComponents } from '../common/definitions/defineComponents.js';\nimport IgcTreeItemComponent from './tree-item.js';\n\ndefineComponents(IgcTreeItemComponent);\n\n/**\n * The tree allows users to represent hierarchical data in a tree-view structure,\n * maintaining parent-child relationships, as well as to define static tree-view structure without a corresponding data model.\n *\n * @element igc-tree\n *\n * @slot - Renders the tree items inside default slot.\n *\n * @fires igcSelection - Emitted when item selection is changing, before the selection completes.\n * @fires igcItemCollapsed - Emitted when tree item is collapsed.\n * @fires igcItemCollapsing - Emitted when tree item is about to collapse.\n * @fires igcItemExpanded - Emitted when tree item is expanded.\n * @fires igcItemExpanding - Emitted when tree item is about to expand.\n * @fires igcItemActivated - Emitted when the tree's `active` item changes.\n */\n@blazorAdditionalDependencies('IgcTreeItemComponent')\nexport default class IgcTreeComponent extends SizableMixin(\n EventEmitterMixin<IgcTreeEventMap, Constructor<LitElement>>(LitElement)\n) {\n /** @private */\n public static readonly tagName = 'igc-tree';\n /** @private */\n public static styles = styles;\n\n /** @private */\n @blazorSuppress()\n public selectionService!: IgcTreeSelectionService;\n /** @private */\n @blazorSuppress()\n public navService!: IgcTreeNavigationService;\n\n /**\n * Whether a single or multiple of a parent's child items can be expanded.\n * @attr single-branch-expand\n */\n @property({ attribute: 'single-branch-expand', reflect: true, type: Boolean })\n public singleBranchExpand = false;\n\n /**\n * The selection state of the tree.\n * @attr\n */\n @property({ reflect: true })\n public selection: 'none' | 'multiple' | 'cascade' = 'none';\n\n @watch('dir')\n protected onDirChange(): void {\n this.items?.forEach((item: IgcTreeItemComponent) => {\n item.requestUpdate();\n });\n }\n\n @watch('size', { waitUntilFirstUpdate: true })\n protected onSizeChange(): void {\n this.items?.forEach((item: IgcTreeItemComponent) => {\n item.requestUpdate();\n });\n this.navService.activeItem?.wrapper?.scrollIntoView({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'nearest',\n });\n }\n\n @watch('selection', { waitUntilFirstUpdate: true })\n protected selectionModeChange(): void {\n this.selectionService.clearItemsSelection();\n this.items?.forEach((item: IgcTreeItemComponent) => {\n item.requestUpdate();\n });\n }\n\n @watch('singleBranchExpand')\n protected singleBranchExpandChange(): void {\n if (this.singleBranchExpand) {\n // if activeItem -> do not collapse its branch\n if (this.navService.activeItem) {\n const path = this.navService.activeItem.path;\n const remainExpanded = new Set(path.splice(0, path.length - 1));\n this.items.forEach((item) => {\n if (!remainExpanded.has(item)) {\n item.collapseWithEvent();\n }\n });\n } else {\n this.items.forEach((item) => item.collapseWithEvent());\n }\n }\n }\n\n constructor() {\n super();\n this.selectionService = new IgcTreeSelectionService(this);\n this.navService = new IgcTreeNavigationService(this, this.selectionService);\n }\n\n public override connectedCallback(): void {\n super.connectedCallback();\n this.setAttribute('role', 'tree');\n this.addEventListener('keydown', this.handleKeydown);\n // set init to true for all items which are rendered along with the tree\n this.items.forEach((i: IgcTreeItemComponent) => {\n i.init = true;\n });\n const firstNotDisabledItem = this.items.find(\n (i: IgcTreeItemComponent) => !i.disabled\n );\n if (firstNotDisabledItem) {\n firstNotDisabledItem.tabIndex = 0;\n this.navService.focusItem(firstNotDisabledItem);\n }\n }\n\n /** Returns all of the tree's items. */\n @blazorSuppress()\n public get items(): Array<IgcTreeItemComponent> {\n return Array.from(this.querySelectorAll(`igc-tree-item`));\n }\n\n private handleKeydown(event: KeyboardEvent) {\n this.navService.handleKeydown(event);\n }\n\n /** @private */\n public expandToItem(item: IgcTreeItemComponent): void {\n if (item && item.parent) {\n item.path.forEach((i) => {\n if (i !== item && !i.expanded) {\n i.expanded = true;\n }\n });\n }\n }\n\n /** Select all items if the items collection is empty. Otherwise, select the items in the items collection. */\n @blazorSuppress()\n public select(\n /* alternateType: TreeItemCollection */\n items?: IgcTreeItemComponent[]\n ): void {\n if (!items) {\n items =\n this.selection === 'cascade'\n ? this.items.filter((item: IgcTreeItemComponent) => item.level === 0)\n : this.items;\n }\n this.selectionService.selectItemsWithNoEvent(items);\n }\n\n /** Deselect all items if the items collection is empty. Otherwise, deselect the items in the items collection. */\n @blazorSuppress()\n public deselect(\n /* alternateType: TreeItemCollection */\n items?: IgcTreeItemComponent[]\n ): void {\n this.selectionService.deselectItemsWithNoEvent(items);\n }\n\n /**\n * Expands all of the passed items.\n * If no items are passed, expands ALL items.\n */\n @blazorSuppress()\n public expand(\n /* alternateType: TreeItemCollection */\n items?: IgcTreeItemComponent[]\n ): void {\n items = items || this.items;\n items.forEach((item) => (item.expanded = true));\n }\n\n /**\n * Collapses all of the passed items.\n * If no items are passed, collapses ALL items.\n */\n @blazorSuppress()\n public collapse(\n /* alternateType: TreeItemCollection */\n items?: IgcTreeItemComponent[]\n ): void {\n items = items || this.items;\n items.forEach((item) => (item.expanded = false));\n }\n\n protected override render() {\n return html`<slot></slot>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-tree': IgcTreeComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../src/components/tree/tree.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators.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 { styles } from './themes/light/tree.base.css.js';\nimport { IgcTreeEventMap } from './tree.common.js';\nimport { IgcTreeNavigationService } from './tree.navigation.js';\nimport { IgcTreeSelectionService } from './tree.selection.js';\n\nimport { registerComponent } from '../common/definitions/register.js';\nimport IgcTreeItemComponent from './tree-item.js';\n\n/**\n * The tree allows users to represent hierarchical data in a tree-view structure,\n * maintaining parent-child relationships, as well as to define static tree-view structure without a corresponding data model.\n *\n * @element igc-tree\n *\n * @slot - Renders the tree items inside default slot.\n *\n * @fires igcSelection - Emitted when item selection is changing, before the selection completes.\n * @fires igcItemCollapsed - Emitted when tree item is collapsed.\n * @fires igcItemCollapsing - Emitted when tree item is about to collapse.\n * @fires igcItemExpanded - Emitted when tree item is expanded.\n * @fires igcItemExpanding - Emitted when tree item is about to expand.\n * @fires igcItemActivated - Emitted when the tree's `active` item changes.\n */\n@blazorAdditionalDependencies('IgcTreeItemComponent')\nexport default class IgcTreeComponent extends SizableMixin(\n EventEmitterMixin<IgcTreeEventMap, Constructor<LitElement>>(LitElement)\n) {\n public static readonly tagName = 'igc-tree';\n public static styles = styles;\n\n public static register() {\n registerComponent(this, IgcTreeItemComponent);\n }\n\n /** @private */\n @blazorSuppress()\n public selectionService!: IgcTreeSelectionService;\n /** @private */\n @blazorSuppress()\n public navService!: IgcTreeNavigationService;\n\n /**\n * Whether a single or multiple of a parent's child items can be expanded.\n * @attr single-branch-expand\n */\n @property({ attribute: 'single-branch-expand', reflect: true, type: Boolean })\n public singleBranchExpand = false;\n\n /**\n * The selection state of the tree.\n * @attr\n */\n @property({ reflect: true })\n public selection: 'none' | 'multiple' | 'cascade' = 'none';\n\n @watch('dir')\n protected onDirChange(): void {\n this.items?.forEach((item: IgcTreeItemComponent) => {\n item.requestUpdate();\n });\n }\n\n @watch('size', { waitUntilFirstUpdate: true })\n protected onSizeChange(): void {\n this.items?.forEach((item: IgcTreeItemComponent) => {\n item.requestUpdate();\n });\n this.navService.activeItem?.wrapper?.scrollIntoView({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'nearest',\n });\n }\n\n @watch('selection', { waitUntilFirstUpdate: true })\n protected selectionModeChange(): void {\n this.selectionService.clearItemsSelection();\n this.items?.forEach((item: IgcTreeItemComponent) => {\n item.requestUpdate();\n });\n }\n\n @watch('singleBranchExpand')\n protected singleBranchExpandChange(): void {\n if (this.singleBranchExpand) {\n // if activeItem -> do not collapse its branch\n if (this.navService.activeItem) {\n const path = this.navService.activeItem.path;\n const remainExpanded = new Set(path.splice(0, path.length - 1));\n this.items.forEach((item) => {\n if (!remainExpanded.has(item)) {\n item.collapseWithEvent();\n }\n });\n } else {\n this.items.forEach((item) => item.collapseWithEvent());\n }\n }\n }\n\n constructor() {\n super();\n this.selectionService = new IgcTreeSelectionService(this);\n this.navService = new IgcTreeNavigationService(this, this.selectionService);\n }\n\n public override connectedCallback(): void {\n super.connectedCallback();\n this.setAttribute('role', 'tree');\n this.addEventListener('keydown', this.handleKeydown);\n // set init to true for all items which are rendered along with the tree\n this.items.forEach((i: IgcTreeItemComponent) => {\n i.init = true;\n });\n const firstNotDisabledItem = this.items.find(\n (i: IgcTreeItemComponent) => !i.disabled\n );\n if (firstNotDisabledItem) {\n firstNotDisabledItem.tabIndex = 0;\n this.navService.focusItem(firstNotDisabledItem);\n }\n }\n\n /** Returns all of the tree's items. */\n @blazorSuppress()\n public get items(): Array<IgcTreeItemComponent> {\n return Array.from(this.querySelectorAll(`igc-tree-item`));\n }\n\n private handleKeydown(event: KeyboardEvent) {\n this.navService.handleKeydown(event);\n }\n\n /** @private */\n public expandToItem(item: IgcTreeItemComponent): void {\n if (item && item.parent) {\n item.path.forEach((i) => {\n if (i !== item && !i.expanded) {\n i.expanded = true;\n }\n });\n }\n }\n\n /** Select all items if the items collection is empty. Otherwise, select the items in the items collection. */\n @blazorSuppress()\n public select(\n /* alternateType: TreeItemCollection */\n items?: IgcTreeItemComponent[]\n ): void {\n if (!items) {\n items =\n this.selection === 'cascade'\n ? this.items.filter((item: IgcTreeItemComponent) => item.level === 0)\n : this.items;\n }\n this.selectionService.selectItemsWithNoEvent(items);\n }\n\n /** Deselect all items if the items collection is empty. Otherwise, deselect the items in the items collection. */\n @blazorSuppress()\n public deselect(\n /* alternateType: TreeItemCollection */\n items?: IgcTreeItemComponent[]\n ): void {\n this.selectionService.deselectItemsWithNoEvent(items);\n }\n\n /**\n * Expands all of the passed items.\n * If no items are passed, expands ALL items.\n */\n @blazorSuppress()\n public expand(\n /* alternateType: TreeItemCollection */\n items?: IgcTreeItemComponent[]\n ): void {\n items = items || this.items;\n items.forEach((item) => (item.expanded = true));\n }\n\n /**\n * Collapses all of the passed items.\n * If no items are passed, collapses ALL items.\n */\n @blazorSuppress()\n public collapse(\n /* alternateType: TreeItemCollection */\n items?: IgcTreeItemComponent[]\n ): void {\n items = items || this.items;\n items.forEach((item) => (item.expanded = false));\n }\n\n protected override render() {\n return html`<slot></slot>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-tree': IgcTreeComponent;\n }\n}\n"]}