igniteui-webcomponents 3.3.0-beta.0 → 4.0.0-alpha

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 (422) hide show
  1. package/CHANGELOG.md +38 -20
  2. package/README.md +7 -2
  3. package/components/accordion/accordion.d.ts +36 -0
  4. package/components/accordion/accordion.js +129 -0
  5. package/components/accordion/accordion.js.map +1 -0
  6. package/components/accordion/themes/accordion.base.css.d.ts +1 -0
  7. package/components/accordion/themes/accordion.base.css.js +14 -0
  8. package/components/accordion/themes/accordion.base.css.js.map +1 -0
  9. package/components/avatar/themes/avatar.base.css.js +94 -1
  10. package/components/avatar/themes/avatar.base.css.js.map +1 -1
  11. package/components/avatar/themes/avatar.bootstrap.css.js +4 -1
  12. package/components/avatar/themes/avatar.bootstrap.css.js.map +1 -1
  13. package/components/badge/themes/light/badge.base.css.js +99 -1
  14. package/components/badge/themes/light/badge.base.css.js.map +1 -1
  15. package/components/badge/themes/light/badge.bootstrap.css.js +10 -1
  16. package/components/badge/themes/light/badge.bootstrap.css.js.map +1 -1
  17. package/components/button/button-base.js +7 -2
  18. package/components/button/button-base.js.map +1 -1
  19. package/components/button/icon-button.d.ts +0 -1
  20. package/components/button/icon-button.js +3 -1
  21. package/components/button/icon-button.js.map +1 -1
  22. package/components/button/themes/button/light/button.base.css.js +183 -1
  23. package/components/button/themes/button/light/button.base.css.js.map +1 -1
  24. package/components/button/themes/button/light/button.bootstrap.css.js +147 -1
  25. package/components/button/themes/button/light/button.bootstrap.css.js.map +1 -1
  26. package/components/button/themes/button/light/button.fluent.css.js +167 -1
  27. package/components/button/themes/button/light/button.fluent.css.js.map +1 -1
  28. package/components/button/themes/button/light/button.indigo.css.js +140 -1
  29. package/components/button/themes/button/light/button.indigo.css.js.map +1 -1
  30. package/components/button/themes/button/light/button.material.css.js +232 -1
  31. package/components/button/themes/button/light/button.material.css.js.map +1 -1
  32. package/components/button/themes/icon-button/light/icon-button.base.css.js +100 -1
  33. package/components/button/themes/icon-button/light/icon-button.base.css.js.map +1 -1
  34. package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js +80 -1
  35. package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js.map +1 -1
  36. package/components/button/themes/icon-button/light/icon-button.fluent.css.js +89 -1
  37. package/components/button/themes/icon-button/light/icon-button.fluent.css.js.map +1 -1
  38. package/components/button/themes/icon-button/light/icon-button.indigo.css.js +83 -1
  39. package/components/button/themes/icon-button/light/icon-button.indigo.css.js.map +1 -1
  40. package/components/button/themes/icon-button/light/icon-button.material.css.js +52 -1
  41. package/components/button/themes/icon-button/light/icon-button.material.css.js.map +1 -1
  42. package/components/calendar/calendar.d.ts +0 -4
  43. package/components/calendar/calendar.js +6 -4
  44. package/components/calendar/calendar.js.map +1 -1
  45. package/components/calendar/common/calendar-base.js +3 -1
  46. package/components/calendar/common/calendar-base.js.map +1 -1
  47. package/components/calendar/common/calendar.model.js.map +1 -1
  48. package/components/calendar/days-view/days-view.d.ts +1 -0
  49. package/components/calendar/days-view/days-view.js +2 -2
  50. package/components/calendar/days-view/days-view.js.map +1 -1
  51. package/components/calendar/months-view/months-view.d.ts +1 -0
  52. package/components/calendar/months-view/months-view.js +2 -2
  53. package/components/calendar/months-view/months-view.js.map +1 -1
  54. package/components/calendar/themes/bootstrap/calendar.bootstrap.css.js +41 -1
  55. package/components/calendar/themes/bootstrap/calendar.bootstrap.css.js.map +1 -1
  56. package/components/calendar/themes/bootstrap/days-view.bootstrap.css.js +263 -1
  57. package/components/calendar/themes/bootstrap/days-view.bootstrap.css.js.map +1 -1
  58. package/components/calendar/themes/bootstrap/year-month-view.bootstrap.css.js +55 -1
  59. package/components/calendar/themes/bootstrap/year-month-view.bootstrap.css.js.map +1 -1
  60. package/components/calendar/themes/calendar.base.css.js +277 -1
  61. package/components/calendar/themes/calendar.base.css.js.map +1 -1
  62. package/components/calendar/themes/days-view.base.css.js +285 -1
  63. package/components/calendar/themes/days-view.base.css.js.map +1 -1
  64. package/components/calendar/themes/fluent/calendar.fluent.css.js +289 -1
  65. package/components/calendar/themes/fluent/calendar.fluent.css.js.map +1 -1
  66. package/components/calendar/themes/fluent/days-view.fluent.css.js +327 -1
  67. package/components/calendar/themes/fluent/days-view.fluent.css.js.map +1 -1
  68. package/components/calendar/themes/fluent/year-month-view.fluent.css.js +121 -1
  69. package/components/calendar/themes/fluent/year-month-view.fluent.css.js.map +1 -1
  70. package/components/calendar/themes/year-month-view.base.css.js +93 -1
  71. package/components/calendar/themes/year-month-view.base.css.js.map +1 -1
  72. package/components/calendar/years-view/years-view.d.ts +1 -0
  73. package/components/calendar/years-view/years-view.js +2 -2
  74. package/components/calendar/years-view/years-view.js.map +1 -1
  75. package/components/card/card.js +6 -0
  76. package/components/card/card.js.map +1 -1
  77. package/components/card/themes/light/card.actions.bootstrap.css.js +93 -1
  78. package/components/card/themes/light/card.actions.bootstrap.css.js.map +1 -1
  79. package/components/card/themes/light/card.actions.material.css.js +89 -1
  80. package/components/card/themes/light/card.actions.material.css.js.map +1 -1
  81. package/components/card/themes/light/card.bootstrap.css.js +10 -1
  82. package/components/card/themes/light/card.bootstrap.css.js.map +1 -1
  83. package/components/card/themes/light/card.content.bootstrap.css.js +75 -1
  84. package/components/card/themes/light/card.content.bootstrap.css.js.map +1 -1
  85. package/components/card/themes/light/card.content.indigo.css.js +57 -1
  86. package/components/card/themes/light/card.content.indigo.css.js.map +1 -1
  87. package/components/card/themes/light/card.content.material.css.js +49 -1
  88. package/components/card/themes/light/card.content.material.css.js.map +1 -1
  89. package/components/card/themes/light/card.fluent.css.js +20 -1
  90. package/components/card/themes/light/card.fluent.css.js.map +1 -1
  91. package/components/card/themes/light/card.header.bootstrap.css.js +132 -1
  92. package/components/card/themes/light/card.header.bootstrap.css.js.map +1 -1
  93. package/components/card/themes/light/card.header.fluent.css.js +128 -1
  94. package/components/card/themes/light/card.header.fluent.css.js.map +1 -1
  95. package/components/card/themes/light/card.header.indigo.css.js +114 -1
  96. package/components/card/themes/light/card.header.indigo.css.js.map +1 -1
  97. package/components/card/themes/light/card.header.material.css.js +104 -1
  98. package/components/card/themes/light/card.header.material.css.js.map +1 -1
  99. package/components/card/themes/light/card.material.css.js +59 -1
  100. package/components/card/themes/light/card.material.css.js.map +1 -1
  101. package/components/card/themes/light/card.media.material.css.js +42 -1
  102. package/components/card/themes/light/card.media.material.css.js.map +1 -1
  103. package/components/checkbox/checkbox-base.js +7 -2
  104. package/components/checkbox/checkbox-base.js.map +1 -1
  105. package/components/checkbox/checkbox.d.ts +1 -0
  106. package/components/checkbox/checkbox.js +6 -5
  107. package/components/checkbox/checkbox.js.map +1 -1
  108. package/components/checkbox/switch.d.ts +1 -0
  109. package/components/checkbox/switch.js +6 -5
  110. package/components/checkbox/switch.js.map +1 -1
  111. package/components/checkbox/themes/light/checkbox.base.css.js +207 -1
  112. package/components/checkbox/themes/light/checkbox.base.css.js.map +1 -1
  113. package/components/checkbox/themes/light/checkbox.bootstrap.css.js +107 -1
  114. package/components/checkbox/themes/light/checkbox.bootstrap.css.js.map +1 -1
  115. package/components/checkbox/themes/light/checkbox.fluent.css.js +191 -1
  116. package/components/checkbox/themes/light/checkbox.fluent.css.js.map +1 -1
  117. package/components/checkbox/themes/light/checkbox.indigo.css.js +106 -1
  118. package/components/checkbox/themes/light/checkbox.indigo.css.js.map +1 -1
  119. package/components/checkbox/themes/light/checkbox.material.css.js +57 -1
  120. package/components/checkbox/themes/light/checkbox.material.css.js.map +1 -1
  121. package/components/checkbox/themes/light/switch.base.css.js +208 -1
  122. package/components/checkbox/themes/light/switch.base.css.js.map +1 -1
  123. package/components/checkbox/themes/light/switch.bootstrap.css.js +125 -1
  124. package/components/checkbox/themes/light/switch.bootstrap.css.js.map +1 -1
  125. package/components/checkbox/themes/light/switch.fluent.css.js +130 -1
  126. package/components/checkbox/themes/light/switch.fluent.css.js.map +1 -1
  127. package/components/checkbox/themes/light/switch.indigo.css.js +129 -1
  128. package/components/checkbox/themes/light/switch.indigo.css.js.map +1 -1
  129. package/components/checkbox/themes/light/switch.material.css.js +80 -1
  130. package/components/checkbox/themes/light/switch.material.css.js.map +1 -1
  131. package/components/chip/chip.d.ts +0 -1
  132. package/components/chip/chip.js +3 -1
  133. package/components/chip/chip.js.map +1 -1
  134. package/components/chip/themes/chip.base.css.js +212 -1
  135. package/components/chip/themes/chip.base.css.js.map +1 -1
  136. package/components/chip/themes/chip.bootstrap.css.js +285 -1
  137. package/components/chip/themes/chip.bootstrap.css.js.map +1 -1
  138. package/components/chip/themes/chip.fluent.css.js +247 -1
  139. package/components/chip/themes/chip.fluent.css.js.map +1 -1
  140. package/components/chip/themes/chip.indigo.css.js +345 -1
  141. package/components/chip/themes/chip.indigo.css.js.map +1 -1
  142. package/components/chip/themes/chip.material.css.js +228 -1
  143. package/components/chip/themes/chip.material.css.js.map +1 -1
  144. package/components/common/decorators/blazorAdditionalDependencies.d.ts +5 -0
  145. package/components/common/decorators/blazorAdditionalDependencies.js +6 -0
  146. package/components/common/decorators/blazorAdditionalDependencies.js.map +1 -0
  147. package/components/common/decorators/blazorDeepImport.d.ts +4 -0
  148. package/components/common/decorators/blazorDeepImport.js +2 -0
  149. package/components/common/decorators/blazorDeepImport.js.map +1 -0
  150. package/components/common/decorators/index.d.ts +1 -0
  151. package/components/common/decorators/index.js +1 -0
  152. package/components/common/decorators/index.js.map +1 -1
  153. package/components/common/definitions/defineAllComponents.js +2 -0
  154. package/components/common/definitions/defineAllComponents.js.map +1 -1
  155. package/components/common/i18n/calendar.resources.js.map +1 -1
  156. package/components/common/types.d.ts +1 -0
  157. package/components/common/types.js +2 -0
  158. package/components/common/types.js.map +1 -0
  159. package/components/common/util.d.ts +2 -1
  160. package/components/common/util.js +5 -2
  161. package/components/common/util.js.map +1 -1
  162. package/components/date-time-input/date-time-input.d.ts +2 -0
  163. package/components/date-time-input/date-time-input.js +12 -2
  164. package/components/date-time-input/date-time-input.js.map +1 -1
  165. package/components/dropdown/dropdown-group.d.ts +3 -2
  166. package/components/dropdown/dropdown-group.js +7 -10
  167. package/components/dropdown/dropdown-group.js.map +1 -1
  168. package/components/dropdown/dropdown.d.ts +24 -20
  169. package/components/dropdown/dropdown.js +63 -79
  170. package/components/dropdown/dropdown.js.map +1 -1
  171. package/components/dropdown/themes/light/dropdown-group.base.css.js +70 -1
  172. package/components/dropdown/themes/light/dropdown-group.base.css.js.map +1 -1
  173. package/components/dropdown/themes/light/dropdown-group.fluent.css.js +14 -1
  174. package/components/dropdown/themes/light/dropdown-group.fluent.css.js.map +1 -1
  175. package/components/dropdown/themes/light/dropdown-header.base.css.js +50 -1
  176. package/components/dropdown/themes/light/dropdown-header.base.css.js.map +1 -1
  177. package/components/dropdown/themes/light/dropdown-header.bootstrap.css.js +3 -1
  178. package/components/dropdown/themes/light/dropdown-header.bootstrap.css.js.map +1 -1
  179. package/components/dropdown/themes/light/dropdown-item.base.css.js +112 -1
  180. package/components/dropdown/themes/light/dropdown-item.base.css.js.map +1 -1
  181. package/components/dropdown/themes/light/dropdown-item.bootstrap.css.js +24 -1
  182. package/components/dropdown/themes/light/dropdown-item.bootstrap.css.js.map +1 -1
  183. package/components/dropdown/themes/light/dropdown-item.fluent.css.js +20 -1
  184. package/components/dropdown/themes/light/dropdown-item.fluent.css.js.map +1 -1
  185. package/components/dropdown/themes/light/dropdown-item.indigo.css.js +24 -1
  186. package/components/dropdown/themes/light/dropdown-item.indigo.css.js.map +1 -1
  187. package/components/dropdown/themes/light/dropdown.base.css.js +65 -1
  188. package/components/dropdown/themes/light/dropdown.base.css.js.map +1 -1
  189. package/components/dropdown/themes/light/dropdown.bootstrap.css.js +5 -1
  190. package/components/dropdown/themes/light/dropdown.bootstrap.css.js.map +1 -1
  191. package/components/dropdown/themes/light/dropdown.fluent.css.js +21 -1
  192. package/components/dropdown/themes/light/dropdown.fluent.css.js.map +1 -1
  193. package/components/dropdown/themes/light/dropdown.indigo.css.js +6 -1
  194. package/components/dropdown/themes/light/dropdown.indigo.css.js.map +1 -1
  195. package/components/expansion-panel/expansion-panel.d.ts +1 -1
  196. package/components/expansion-panel/expansion-panel.js +11 -6
  197. package/components/expansion-panel/expansion-panel.js.map +1 -1
  198. package/components/expansion-panel/themes/light/expansion-panel.base.css.js +133 -1
  199. package/components/expansion-panel/themes/light/expansion-panel.base.css.js.map +1 -1
  200. package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js +31 -1
  201. package/components/expansion-panel/themes/light/expansion-panel.bootstrap.css.js.map +1 -1
  202. package/components/expansion-panel/themes/light/expansion-panel.fluent.css.js +42 -1
  203. package/components/expansion-panel/themes/light/expansion-panel.fluent.css.js.map +1 -1
  204. package/components/expansion-panel/themes/light/expansion-panel.indigo.css.js +25 -1
  205. package/components/expansion-panel/themes/light/expansion-panel.indigo.css.js.map +1 -1
  206. package/components/icon/icon.js +3 -7
  207. package/components/icon/icon.js.map +1 -1
  208. package/components/icon/icon.material.css.js +63 -1
  209. package/components/icon/icon.material.css.js.map +1 -1
  210. package/components/icon/icon.registry.js +2 -0
  211. package/components/icon/icon.registry.js.map +1 -1
  212. package/components/input/input-base.d.ts +2 -1
  213. package/components/input/input-base.js +9 -6
  214. package/components/input/input-base.js.map +1 -1
  215. package/components/input/themes/light/input.base.css.js +100 -1
  216. package/components/input/themes/light/input.base.css.js.map +1 -1
  217. package/components/input/themes/light/input.bootstrap.css.js +172 -1
  218. package/components/input/themes/light/input.bootstrap.css.js.map +1 -1
  219. package/components/input/themes/light/input.fluent.css.js +138 -1
  220. package/components/input/themes/light/input.fluent.css.js.map +1 -1
  221. package/components/input/themes/light/input.indigo.css.js +106 -1
  222. package/components/input/themes/light/input.indigo.css.js.map +1 -1
  223. package/components/input/themes/light/input.material.css.js +386 -1
  224. package/components/input/themes/light/input.material.css.js.map +1 -1
  225. package/components/list/list.js +4 -0
  226. package/components/list/list.js.map +1 -1
  227. package/components/list/themes/light/list-header.base.css.js +53 -1
  228. package/components/list/themes/light/list-header.base.css.js.map +1 -1
  229. package/components/list/themes/light/list-header.indigo.css.js +3 -1
  230. package/components/list/themes/light/list-header.indigo.css.js.map +1 -1
  231. package/components/list/themes/light/list-item.base.css.js +105 -1
  232. package/components/list/themes/light/list-item.base.css.js.map +1 -1
  233. package/components/list/themes/light/list-item.bootstrap.css.js +38 -1
  234. package/components/list/themes/light/list-item.bootstrap.css.js.map +1 -1
  235. package/components/list/themes/light/list-item.fluent.css.js +24 -1
  236. package/components/list/themes/light/list-item.fluent.css.js.map +1 -1
  237. package/components/list/themes/light/list-item.indigo.css.js +20 -1
  238. package/components/list/themes/light/list-item.indigo.css.js.map +1 -1
  239. package/components/list/themes/light/list.base.css.js +54 -1
  240. package/components/list/themes/light/list.base.css.js.map +1 -1
  241. package/components/list/themes/light/list.bootstrap.css.js +5 -1
  242. package/components/list/themes/light/list.bootstrap.css.js.map +1 -1
  243. package/components/mask-input/mask-input-base.js +7 -2
  244. package/components/mask-input/mask-input-base.js.map +1 -1
  245. package/components/nav-drawer/nav-drawer.js +4 -0
  246. package/components/nav-drawer/nav-drawer.js.map +1 -1
  247. package/components/nav-drawer/themes/light/fluent/nav-drawer-header-item.fluent.css.js +11 -1
  248. package/components/nav-drawer/themes/light/fluent/nav-drawer-header-item.fluent.css.js.map +1 -1
  249. package/components/nav-drawer/themes/light/fluent/nav-drawer-item.fluent.css.js +15 -1
  250. package/components/nav-drawer/themes/light/fluent/nav-drawer-item.fluent.css.js.map +1 -1
  251. package/components/nav-drawer/themes/light/indigo/nav-drawer-header-item.indigo.css.js +3 -1
  252. package/components/nav-drawer/themes/light/indigo/nav-drawer-header-item.indigo.css.js.map +1 -1
  253. package/components/nav-drawer/themes/light/indigo/nav-drawer-item.indigo.css.js +20 -1
  254. package/components/nav-drawer/themes/light/indigo/nav-drawer-item.indigo.css.js.map +1 -1
  255. package/components/nav-drawer/themes/light/indigo/nav-drawer.indigo.css.js +11 -1
  256. package/components/nav-drawer/themes/light/indigo/nav-drawer.indigo.css.js.map +1 -1
  257. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.js +41 -1
  258. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.js.map +1 -1
  259. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js +114 -1
  260. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js.map +1 -1
  261. package/components/nav-drawer/themes/light/nav-drawer.base.css.js +154 -1
  262. package/components/nav-drawer/themes/light/nav-drawer.base.css.js.map +1 -1
  263. package/components/navbar/themes/light/navbar.base.css.js +134 -1
  264. package/components/navbar/themes/light/navbar.base.css.js.map +1 -1
  265. package/components/navbar/themes/light/navbar.bootstrap.css.js +32 -1
  266. package/components/navbar/themes/light/navbar.bootstrap.css.js.map +1 -1
  267. package/components/navbar/themes/light/navbar.fluent.css.js +13 -1
  268. package/components/navbar/themes/light/navbar.fluent.css.js.map +1 -1
  269. package/components/navbar/themes/light/navbar.indigo.css.js +4 -1
  270. package/components/navbar/themes/light/navbar.indigo.css.js.map +1 -1
  271. package/components/progress/circular-progress.d.ts +1 -1
  272. package/components/progress/circular-progress.js +3 -0
  273. package/components/progress/circular-progress.js.map +1 -1
  274. package/components/progress/linear-progress.js +1 -0
  275. package/components/progress/linear-progress.js.map +1 -1
  276. package/components/progress/themes/circular/circular.progress.base.css.js +456 -1
  277. package/components/progress/themes/circular/circular.progress.base.css.js.map +1 -1
  278. package/components/progress/themes/circular/circular.progress.bootstrap.css.js +19 -1
  279. package/components/progress/themes/circular/circular.progress.bootstrap.css.js.map +1 -1
  280. package/components/progress/themes/circular/circular.progress.fluent.css.js +7 -1
  281. package/components/progress/themes/circular/circular.progress.fluent.css.js.map +1 -1
  282. package/components/progress/themes/linear/linear.progress.base.css.js +578 -1
  283. package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
  284. package/components/progress/themes/linear/linear.progress.bootstrap.css.js +400 -1
  285. package/components/progress/themes/linear/linear.progress.bootstrap.css.js.map +1 -1
  286. package/components/progress/themes/linear/linear.progress.fluent.css.js +70 -1
  287. package/components/progress/themes/linear/linear.progress.fluent.css.js.map +1 -1
  288. package/components/progress/themes/linear/linear.progress.indigo.css.js +32 -1
  289. package/components/progress/themes/linear/linear.progress.indigo.css.js.map +1 -1
  290. package/components/radio/radio.d.ts +1 -0
  291. package/components/radio/radio.js +6 -5
  292. package/components/radio/radio.js.map +1 -1
  293. package/components/radio/themes/light/radio.base.css.js +173 -1
  294. package/components/radio/themes/light/radio.base.css.js.map +1 -1
  295. package/components/radio/themes/light/radio.bootstrap.css.js +72 -1
  296. package/components/radio/themes/light/radio.bootstrap.css.js.map +1 -1
  297. package/components/radio/themes/light/radio.fluent.css.js +107 -1
  298. package/components/radio/themes/light/radio.fluent.css.js.map +1 -1
  299. package/components/radio/themes/light/radio.indigo.css.js +86 -1
  300. package/components/radio/themes/light/radio.indigo.css.js.map +1 -1
  301. package/components/radio/themes/light/radio.material.css.js +14 -1
  302. package/components/radio/themes/light/radio.material.css.js.map +1 -1
  303. package/components/radio-group/radio-group.base.css.js +53 -1
  304. package/components/radio-group/radio-group.base.css.js.map +1 -1
  305. package/components/radio-group/radio-group.d.ts +0 -1
  306. package/components/radio-group/radio-group.js +7 -6
  307. package/components/radio-group/radio-group.js.map +1 -1
  308. package/components/rating/rating-symbol.base.css.d.ts +1 -0
  309. package/components/rating/rating-symbol.base.css.js +100 -0
  310. package/components/rating/rating-symbol.base.css.js.map +1 -0
  311. package/components/rating/rating-symbol.d.ts +8 -2
  312. package/components/rating/rating-symbol.js +12 -3
  313. package/components/rating/rating-symbol.js.map +1 -1
  314. package/components/rating/rating.base.css.js +138 -1
  315. package/components/rating/rating.base.css.js.map +1 -1
  316. package/components/rating/rating.bootstrap.css.js +29 -1
  317. package/components/rating/rating.bootstrap.css.js.map +1 -1
  318. package/components/rating/rating.d.ts +23 -16
  319. package/components/rating/rating.fluent.css.js +41 -1
  320. package/components/rating/rating.fluent.css.js.map +1 -1
  321. package/components/rating/rating.indigo.css.js +33 -1
  322. package/components/rating/rating.indigo.css.js.map +1 -1
  323. package/components/rating/rating.js +108 -53
  324. package/components/rating/rating.js.map +1 -1
  325. package/components/ripple/ripple.js +1 -1
  326. package/components/ripple/ripple.js.map +1 -1
  327. package/components/ripple/ripple.material.css.js +36 -1
  328. package/components/ripple/ripple.material.css.js.map +1 -1
  329. package/components/slider/range-slider.js.map +1 -1
  330. package/components/slider/slider-base.d.ts +0 -1
  331. package/components/slider/slider-base.js +12 -9
  332. package/components/slider/slider-base.js.map +1 -1
  333. package/components/slider/themes/light/slider.base.css.js +297 -1
  334. package/components/slider/themes/light/slider.base.css.js.map +1 -1
  335. package/components/slider/themes/light/slider.bootstrap.css.js +26 -1
  336. package/components/slider/themes/light/slider.bootstrap.css.js.map +1 -1
  337. package/components/slider/themes/light/slider.fluent.css.js +45 -1
  338. package/components/slider/themes/light/slider.fluent.css.js.map +1 -1
  339. package/components/slider/themes/light/slider.indigo.css.js +48 -1
  340. package/components/slider/themes/light/slider.indigo.css.js.map +1 -1
  341. package/components/slider/themes/light/slider.material.css.js +62 -1
  342. package/components/slider/themes/light/slider.material.css.js.map +1 -1
  343. package/components/snackbar/snackbar.js +3 -0
  344. package/components/snackbar/snackbar.js.map +1 -1
  345. package/components/snackbar/themes/light/snackbar.base.css.js +102 -1
  346. package/components/snackbar/themes/light/snackbar.base.css.js.map +1 -1
  347. package/components/snackbar/themes/light/snackbar.bootstrap.css.js +10 -1
  348. package/components/snackbar/themes/light/snackbar.bootstrap.css.js.map +1 -1
  349. package/components/snackbar/themes/light/snackbar.fluent.css.js +24 -1
  350. package/components/snackbar/themes/light/snackbar.fluent.css.js.map +1 -1
  351. package/components/snackbar/themes/light/snackbar.indigo.css.js +10 -1
  352. package/components/snackbar/themes/light/snackbar.indigo.css.js.map +1 -1
  353. package/components/tabs/tab-panel.js +2 -3
  354. package/components/tabs/tab-panel.js.map +1 -1
  355. package/components/tabs/tab.js +1 -1
  356. package/components/tabs/tab.js.map +1 -1
  357. package/components/tabs/tabs.d.ts +2 -4
  358. package/components/tabs/tabs.js +17 -11
  359. package/components/tabs/tabs.js.map +1 -1
  360. package/components/tabs/themes/light/tab-panel.base.css.js +33 -1
  361. package/components/tabs/themes/light/tab-panel.base.css.js.map +1 -1
  362. package/components/tabs/themes/light/tab.base.css.js +133 -1
  363. package/components/tabs/themes/light/tab.base.css.js.map +1 -1
  364. package/components/tabs/themes/light/tab.bootstrap.css.js +65 -1
  365. package/components/tabs/themes/light/tab.bootstrap.css.js.map +1 -1
  366. package/components/tabs/themes/light/tab.fluent.css.js +18 -1
  367. package/components/tabs/themes/light/tab.fluent.css.js.map +1 -1
  368. package/components/tabs/themes/light/tab.indigo.css.js +21 -1
  369. package/components/tabs/themes/light/tab.indigo.css.js.map +1 -1
  370. package/components/tabs/themes/light/tabs.base.css.js +160 -1
  371. package/components/tabs/themes/light/tabs.base.css.js.map +1 -1
  372. package/components/tabs/themes/light/tabs.bootstrap.css.js +29 -1
  373. package/components/tabs/themes/light/tabs.bootstrap.css.js.map +1 -1
  374. package/components/tabs/themes/light/tabs.fluent.css.js +11 -1
  375. package/components/tabs/themes/light/tabs.fluent.css.js.map +1 -1
  376. package/components/tabs/themes/light/tabs.indigo.css.js +17 -1
  377. package/components/tabs/themes/light/tabs.indigo.css.js.map +1 -1
  378. package/components/toast/themes/toast.base.css.js +34 -1
  379. package/components/toast/themes/toast.base.css.js.map +1 -1
  380. package/components/toast/themes/toast.bootstrap.css.js +9 -1
  381. package/components/toast/themes/toast.bootstrap.css.js.map +1 -1
  382. package/components/toast/themes/toast.fluent.css.js +6 -1
  383. package/components/toast/themes/toast.fluent.css.js.map +1 -1
  384. package/components/toast/themes/toast.indigo.css.js +6 -1
  385. package/components/toast/themes/toast.indigo.css.js.map +1 -1
  386. package/components/toggle/toggle.controller.d.ts +24 -4
  387. package/components/toggle/toggle.controller.js +36 -30
  388. package/components/toggle/toggle.controller.js.map +1 -1
  389. package/components/toggle/toggle.directive.d.ts +1 -1
  390. package/components/toggle/toggle.directive.js +1 -0
  391. package/components/toggle/toggle.directive.js.map +1 -1
  392. package/components/tree/themes/light/tree-item.base.css.js +190 -1
  393. package/components/tree/themes/light/tree-item.base.css.js.map +1 -1
  394. package/components/tree/themes/light/tree-item.bootstrap.css.js +26 -1
  395. package/components/tree/themes/light/tree-item.bootstrap.css.js.map +1 -1
  396. package/components/tree/themes/light/tree-item.fluent.css.js +26 -1
  397. package/components/tree/themes/light/tree-item.fluent.css.js.map +1 -1
  398. package/components/tree/themes/light/tree-item.indigo.css.js +29 -1
  399. package/components/tree/themes/light/tree-item.indigo.css.js.map +1 -1
  400. package/components/tree/themes/light/tree.base.css.js +31 -1
  401. package/components/tree/themes/light/tree.base.css.js.map +1 -1
  402. package/components/tree/tree-item.d.ts +0 -1
  403. package/components/tree/tree-item.js +8 -1
  404. package/components/tree/tree-item.js.map +1 -1
  405. package/components/tree/tree.common.js.map +1 -1
  406. package/components/tree/tree.d.ts +2 -2
  407. package/components/tree/tree.js +22 -2
  408. package/components/tree/tree.js.map +1 -1
  409. package/custom-elements.json +125 -28
  410. package/index.d.ts +7 -12
  411. package/index.js +4 -11
  412. package/index.js.map +1 -1
  413. package/package.json +10 -8
  414. package/themes/dark/bootstrap.css +678 -1
  415. package/themes/dark/fluent.css +689 -1
  416. package/themes/dark/indigo.css +466 -1
  417. package/themes/dark/material.css +647 -1
  418. package/themes/light/bootstrap.css +644 -1
  419. package/themes/light/fluent.css +635 -1
  420. package/themes/light/indigo.css +411 -1
  421. package/themes/light/material.css +635 -1
  422. package/vscode-html-custom-data.json +35 -39
@@ -1 +1 @@
1
- {"version":3,"file":"snackbar.js","sourceRoot":"","sources":["../../../src/components/snackbar/snackbar.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAE5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,qCAAqC,CAAC;AAC7D,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAC/E,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAqBzE,IAAqB,oBAAoB,GAAzC,MAAqB,oBAAqB,SAAQ,iBAAiB,CAGjE,UAAU,CAAC;IAHb;;QAcS,SAAI,GAAG,KAAK,CAAC;QAIb,gBAAW,GAAG,IAAI,CAAC;QAInB,aAAQ,GAAG,KAAK,CAAC;IA+D1B,CAAC;IAxDQ,IAAI;QACT,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,OAAO;SACR;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACnC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC/B,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,UAAU,CACtC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,EACjB,IAAI,CAAC,WAAW,CACjB,CAAC;SACH;IACH,CAAC;IAGM,IAAI;QACT,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACd,OAAO;SACR;QAED,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACrC,CAAC;IAGM,MAAM;QACX,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IACxC,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC9B,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA;;;;;UAKL,IAAI,CAAC,UAAU;YACf,CAAC,CAAC,IAAI,CAAA;;;;;yBAKS,IAAI,CAAC,WAAW;;kBAEvB,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;;aAE/B;YACH,CAAC,CAAC,OAAO;;KAEd,CAAC;IACJ,CAAC;CACF,CAAA;AAhFe,4BAAO,GAAG,cAAe,CAAA;AAGzB,2BAAM,GAAG,MAAO,CAAA;AAM9B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;kDACvB;AAIpB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;yDAC5B;AAI1B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;sDAC5B;AAIxB;IADC,QAAQ,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;wDACZ;AA1BR,oBAAoB;IADxC,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;GACjB,oBAAoB,CAqFxC;eArFoB,oBAAoB","sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { styles } from './themes/light/snackbar.base.css.js';\nimport { styles as bootstrap } from './themes/light/snackbar.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/snackbar.fluent.css.js';\nimport { styles as indigo } from './themes/light/snackbar.indigo.css.js';\n\nexport interface IgcSnackbarEventMap {\n igcAction: CustomEvent<void>;\n}\n\n/**\n * A snackbar component is used to provide feedback about an operation\n * by showing a brief message at the bottom of the screen.\n *\n * @element igc-snackbar\n *\n * @slot - Renders the snackbar content.\n *\n * @fires igcAction - Emitted when the snackbar action button is clicked.\n *\n * @csspart base - The base wrapper of the snackbar component.\n * @csspart message - The snackbar message.\n * @csspart action - The snackbar action button.\n */\n@themes({ bootstrap, fluent, indigo })\nexport default class IgcSnackbarComponent extends EventEmitterMixin<\n IgcSnackbarEventMap,\n Constructor<LitElement>\n>(LitElement) {\n /** @private */\n public static tagName = 'igc-snackbar';\n\n /** @private */\n public static styles = styles;\n\n private autoHideTimeout!: number;\n\n /** Determines whether the snackbar is opened. */\n @property({ type: Boolean, reflect: true })\n public open = false;\n\n /** Determines the duration in ms in which the snackbar will be visible. */\n @property({ type: Number, attribute: 'display-time' })\n public displayTime = 4000;\n\n /** Determines whether the snackbar should close after the displayTime is over. */\n @property({ type: Boolean, attribute: 'keep-open' })\n public keepOpen = false;\n\n /** The snackbar action button. */\n @property({ attribute: 'action-text' })\n public actionText!: string;\n\n /** Opens the snackbar. */\n public show() {\n if (this.open) {\n return;\n }\n\n this.open = true;\n\n clearTimeout(this.autoHideTimeout);\n if (this.open && !this.keepOpen) {\n this.autoHideTimeout = window.setTimeout(\n () => this.hide(),\n this.displayTime\n );\n }\n }\n\n /** Closes the snackbar. */\n public hide() {\n if (!this.open) {\n return;\n }\n\n this.open = false;\n clearTimeout(this.autoHideTimeout);\n }\n\n /** Toggles the open state of the component. */\n public toggle() {\n this.open ? this.hide() : this.show();\n }\n\n private handleClick() {\n this.emitEvent('igcAction');\n }\n\n protected override render() {\n return html`\n <div part=\"base\">\n <span part=\"message\">\n <slot></slot>\n </span>\n ${this.actionText\n ? html`\n <igc-button\n variant=\"flat\"\n part=\"action\"\n size=\"small\"\n @click=${this.handleClick}\n >\n ${ifDefined(this.actionText)}\n </igc-button>\n `\n : nothing}\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-snackbar': IgcSnackbarComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"snackbar.js","sourceRoot":"","sources":["../../../src/components/snackbar/snackbar.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAG5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,qCAAqC,CAAC;AAC7D,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAC/E,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAEzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAC7E,OAAO,kBAAkB,MAAM,qBAAqB,CAAC;AAErD,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;AAqBrC,IAAqB,oBAAoB,GAAzC,MAAqB,oBAAqB,SAAQ,iBAAiB,CAGjE,UAAU,CAAC;IAHb;;QAcS,SAAI,GAAG,KAAK,CAAC;QAIb,gBAAW,GAAG,IAAI,CAAC;QAInB,aAAQ,GAAG,KAAK,CAAC;IA+D1B,CAAC;IAxDQ,IAAI;QACT,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,OAAO;SACR;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACnC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC/B,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,UAAU,CACtC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,EACjB,IAAI,CAAC,WAAW,CACjB,CAAC;SACH;IACH,CAAC;IAGM,IAAI;QACT,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACd,OAAO;SACR;QAED,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACrC,CAAC;IAGM,MAAM;QACX,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IACxC,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC9B,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA;;;;;UAKL,IAAI,CAAC,UAAU;YACf,CAAC,CAAC,IAAI,CAAA;;;;;yBAKS,IAAI,CAAC,WAAW;;kBAEvB,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;;aAE/B;YACH,CAAC,CAAC,OAAO;;KAEd,CAAC;IACJ,CAAC;CACF,CAAA;AAhFe,4BAAO,GAAG,cAAe,CAAA;AAGzB,2BAAM,GAAG,MAAO,CAAA;AAM9B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;kDACvB;AAIpB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;yDAC5B;AAI1B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;sDAC5B;AAIxB;IADC,QAAQ,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;wDACZ;AA1BR,oBAAoB;IADxC,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;GACjB,oBAAoB,CAqFxC;eArFoB,oBAAoB","sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { themes } from '../../theming/theming-decorator.js';\n\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { styles } from './themes/light/snackbar.base.css.js';\nimport { styles as bootstrap } from './themes/light/snackbar.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/snackbar.fluent.css.js';\nimport { styles as indigo } from './themes/light/snackbar.indigo.css.js';\n\nimport { defineComponents } from '../common/definitions/defineComponents.js';\nimport IgcButtonComponent from '../button/button.js';\n\ndefineComponents(IgcButtonComponent);\n\nexport interface IgcSnackbarEventMap {\n igcAction: CustomEvent<void>;\n}\n\n/**\n * A snackbar component is used to provide feedback about an operation\n * by showing a brief message at the bottom of the screen.\n *\n * @element igc-snackbar\n *\n * @slot - Renders the snackbar content.\n *\n * @fires igcAction - Emitted when the snackbar action button is clicked.\n *\n * @csspart base - The base wrapper of the snackbar component.\n * @csspart message - The snackbar message.\n * @csspart action - The snackbar action button.\n */\n@themes({ bootstrap, fluent, indigo })\nexport default class IgcSnackbarComponent extends EventEmitterMixin<\n IgcSnackbarEventMap,\n Constructor<LitElement>\n>(LitElement) {\n /** @private */\n public static tagName = 'igc-snackbar';\n\n /** @private */\n public static styles = styles;\n\n private autoHideTimeout!: number;\n\n /** Determines whether the snackbar is opened. */\n @property({ type: Boolean, reflect: true })\n public open = false;\n\n /** Determines the duration in ms in which the snackbar will be visible. */\n @property({ type: Number, attribute: 'display-time' })\n public displayTime = 4000;\n\n /** Determines whether the snackbar should close after the displayTime is over. */\n @property({ type: Boolean, attribute: 'keep-open' })\n public keepOpen = false;\n\n /** The snackbar action button. */\n @property({ attribute: 'action-text' })\n public actionText!: string;\n\n /** Opens the snackbar. */\n public show() {\n if (this.open) {\n return;\n }\n\n this.open = true;\n\n clearTimeout(this.autoHideTimeout);\n if (this.open && !this.keepOpen) {\n this.autoHideTimeout = window.setTimeout(\n () => this.hide(),\n this.displayTime\n );\n }\n }\n\n /** Closes the snackbar. */\n public hide() {\n if (!this.open) {\n return;\n }\n\n this.open = false;\n clearTimeout(this.autoHideTimeout);\n }\n\n /** Toggles the open state of the component. */\n public toggle() {\n this.open ? this.hide() : this.show();\n }\n\n private handleClick() {\n this.emitEvent('igcAction');\n }\n\n protected override render() {\n return html`\n <div part=\"base\">\n <span part=\"message\">\n <slot></slot>\n </span>\n ${this.actionText\n ? html`\n <igc-button\n variant=\"flat\"\n part=\"action\"\n size=\"small\"\n @click=${this.handleClick}\n >\n ${ifDefined(this.actionText)}\n </igc-button>\n `\n : nothing}\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-snackbar': IgcSnackbarComponent;\n }\n}\n"]}
@@ -1,3 +1,104 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{font-family:var(--igc-font-family);position:fixed;bottom:0;left:50%;-webkit-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%)}[part~=base]{border-radius:clamp(0rem,var(--igc-radius-factor)*.25rem,.25rem);display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:row nowrap;flex-wrap:row nowrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;min-height:3rem;padding:.4375rem 1.5rem;margin:.5rem;gap:1.5rem;color:var(--igc-gray-900-contrast);background:hsla(var(--igc-gray-900), 0.9);-webkit-box-shadow:var(--igc-elevation-4);box-shadow:var(--igc-elevation-4);-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}[part~=message]{font-family:var(--igc-body-2-font-family);font-weight:var(--igc-body-2-font-weight);font-size:var(--igc-body-2-font-size);font-style:var(--igc-body-2-font-style);letter-spacing:var(--igc-body-2-letter-spacing);text-transform:var(--igc-body-2-text-transform);line-height:var(--igc-body-2-line-height);margin-top:var(--igc-body-2-margin-top);margin-bottom:var(--igc-body-2-margin-bottom);display:-webkit-inline-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;-webkit-box-flex:1;-ms-flex:1 1 50%;flex:1 1 50%}:host([action-text]) igc-button::part(base){text-transform:uppercase;font-weight:600}:host([action-text]) igc-button::part(base):hover::before{background:rgba(0,0,0,0)}:host([action-text]) igc-button::part(base):focus{background:rgba(0,0,0,0);outline:none;-webkit-box-shadow:none;box-shadow:none}:host([action-text]) igc-button::part(base):focus::before{background:rgba(0,0,0,0)}:host(:not([open])) [part=base]{display:none}`;
2
+ export const styles = css `:host {
3
+ position: relative;
4
+ -webkit-box-sizing: border-box;
5
+ box-sizing: border-box;
6
+ scrollbar-width: var(--scrolbar-size, 0.875rem);
7
+ scrollbar-color: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));
8
+ }
9
+ :host *,
10
+ :host *::before,
11
+ :host *::after {
12
+ -webkit-box-sizing: border-box;
13
+ box-sizing: border-box;
14
+ }
15
+ :host ::-webkit-scrollbar {
16
+ width: var(--scrolbar-size, 0.875rem);
17
+ height: var(--scrolbar-size, 0.875rem);
18
+ background: var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));
19
+ }
20
+ :host ::-webkit-scrollbar-thumb {
21
+ background: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a)));
22
+ }
23
+
24
+ [hidden] {
25
+ display: none !important;
26
+ }
27
+
28
+ :host {
29
+ font-family: var(--ig-font-family);
30
+ position: fixed;
31
+ bottom: 0;
32
+ left: 50%;
33
+ -webkit-transform: translate(-50%, -50%);
34
+ -ms-transform: translate(-50%, -50%);
35
+ transform: translate(-50%, -50%);
36
+ }
37
+
38
+ [part~=base] {
39
+ border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 0.25rem), 0.25rem);
40
+ display: -webkit-box;
41
+ display: -ms-flexbox;
42
+ display: flex;
43
+ -ms-flex-wrap: row nowrap;
44
+ flex-wrap: row nowrap;
45
+ -webkit-box-align: center;
46
+ -ms-flex-align: center;
47
+ align-items: center;
48
+ -webkit-box-pack: justify;
49
+ -ms-flex-pack: justify;
50
+ justify-content: space-between;
51
+ min-height: 3rem;
52
+ padding: 0.4375rem 1.5rem;
53
+ margin: 0.5rem;
54
+ gap: 1.5rem;
55
+ color: var(--ig-gray-900-contrast);
56
+ background: hsla(var(--ig-gray-900), 0.9);
57
+ -webkit-box-shadow: var(--ig-elevation-4);
58
+ box-shadow: var(--ig-elevation-4);
59
+ -webkit-backface-visibility: hidden;
60
+ backface-visibility: hidden;
61
+ -webkit-backdrop-filter: blur(8px);
62
+ backdrop-filter: blur(8px);
63
+ }
64
+
65
+ [part~=message] {
66
+ font-family: var(--ig-body-2-font-family);
67
+ font-size: var(--ig-body-2-font-size);
68
+ font-weight: var(--ig-body-2-font-weight);
69
+ font-style: var(--ig-body-2-font-style);
70
+ line-height: var(--ig-body-2-line-height);
71
+ letter-spacing: var(--ig-body-2-letter-spacing);
72
+ text-transform: var(--ig-body-2-text-transform);
73
+ margin-top: var(--ig-body-2-margin-top);
74
+ margin-bottom: var(--ig-body-2-margin-bottom);
75
+ display: -webkit-inline-box;
76
+ -webkit-line-clamp: 2;
77
+ -webkit-box-orient: vertical;
78
+ overflow: hidden;
79
+ -webkit-box-flex: 1;
80
+ -ms-flex: 1 1 50%;
81
+ flex: 1 1 50%;
82
+ }
83
+
84
+ :host([action-text]) igc-button::part(base) {
85
+ text-transform: uppercase;
86
+ font-weight: 600;
87
+ }
88
+ :host([action-text]) igc-button::part(base):hover::before {
89
+ background: transparent;
90
+ }
91
+ :host([action-text]) igc-button::part(base):focus {
92
+ background: transparent;
93
+ outline: none;
94
+ -webkit-box-shadow: none;
95
+ box-shadow: none;
96
+ }
97
+ :host([action-text]) igc-button::part(base):focus::before {
98
+ background: transparent;
99
+ }
100
+
101
+ :host(:not([open])) [part=base] {
102
+ display: none;
103
+ }`;
3
104
  //# sourceMappingURL=snackbar.base.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"snackbar.base.css.js","sourceRoot":"","sources":["../../../../../src/components/snackbar/themes/light/snackbar.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,g/EAAg/E,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{font-family:var(--igc-font-family);position:fixed;bottom:0;left:50%;-webkit-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%)}[part~=base]{border-radius:clamp(0rem,var(--igc-radius-factor)*.25rem,.25rem);display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:row nowrap;flex-wrap:row nowrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;min-height:3rem;padding:.4375rem 1.5rem;margin:.5rem;gap:1.5rem;color:var(--igc-gray-900-contrast);background:hsla(var(--igc-gray-900), 0.9);-webkit-box-shadow:var(--igc-elevation-4);box-shadow:var(--igc-elevation-4);-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}[part~=message]{font-family:var(--igc-body-2-font-family);font-weight:var(--igc-body-2-font-weight);font-size:var(--igc-body-2-font-size);font-style:var(--igc-body-2-font-style);letter-spacing:var(--igc-body-2-letter-spacing);text-transform:var(--igc-body-2-text-transform);line-height:var(--igc-body-2-line-height);margin-top:var(--igc-body-2-margin-top);margin-bottom:var(--igc-body-2-margin-bottom);display:-webkit-inline-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;-webkit-box-flex:1;-ms-flex:1 1 50%;flex:1 1 50%}:host([action-text]) igc-button::part(base){text-transform:uppercase;font-weight:600}:host([action-text]) igc-button::part(base):hover::before{background:rgba(0,0,0,0)}:host([action-text]) igc-button::part(base):focus{background:rgba(0,0,0,0);outline:none;-webkit-box-shadow:none;box-shadow:none}:host([action-text]) igc-button::part(base):focus::before{background:rgba(0,0,0,0)}:host(:not([open])) [part=base]{display:none}`;\n"]}
1
+ {"version":3,"file":"snackbar.base.css.js","sourceRoot":"","sources":["../../../../../src/components/snackbar/themes/light/snackbar.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqGvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--scrolbar-size, 0.875rem);\n scrollbar-color: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--scrolbar-size, 0.875rem);\n height: var(--scrolbar-size, 0.875rem);\n background: var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a)));\n}\n\n[hidden] {\n display: none !important;\n}\n\n:host {\n font-family: var(--ig-font-family);\n position: fixed;\n bottom: 0;\n left: 50%;\n -webkit-transform: translate(-50%, -50%);\n -ms-transform: translate(-50%, -50%);\n transform: translate(-50%, -50%);\n}\n\n[part~=base] {\n border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 0.25rem), 0.25rem);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: row nowrap;\n flex-wrap: row nowrap;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n min-height: 3rem;\n padding: 0.4375rem 1.5rem;\n margin: 0.5rem;\n gap: 1.5rem;\n color: var(--ig-gray-900-contrast);\n background: hsla(var(--ig-gray-900), 0.9);\n -webkit-box-shadow: var(--ig-elevation-4);\n box-shadow: var(--ig-elevation-4);\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n -webkit-backdrop-filter: blur(8px);\n backdrop-filter: blur(8px);\n}\n\n[part~=message] {\n font-family: var(--ig-body-2-font-family);\n font-size: var(--ig-body-2-font-size);\n font-weight: var(--ig-body-2-font-weight);\n font-style: var(--ig-body-2-font-style);\n line-height: var(--ig-body-2-line-height);\n letter-spacing: var(--ig-body-2-letter-spacing);\n text-transform: var(--ig-body-2-text-transform);\n margin-top: var(--ig-body-2-margin-top);\n margin-bottom: var(--ig-body-2-margin-bottom);\n display: -webkit-inline-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n -webkit-box-flex: 1;\n -ms-flex: 1 1 50%;\n flex: 1 1 50%;\n}\n\n:host([action-text]) igc-button::part(base) {\n text-transform: uppercase;\n font-weight: 600;\n}\n:host([action-text]) igc-button::part(base):hover::before {\n background: transparent;\n}\n:host([action-text]) igc-button::part(base):focus {\n background: transparent;\n outline: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n:host([action-text]) igc-button::part(base):focus::before {\n background: transparent;\n}\n\n:host(:not([open])) [part=base] {\n display: none;\n}`;\n"]}
@@ -1,3 +1,12 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `[part~=base]{background:hsla(var(--igc-surface-500), var(--igc-surface-a));color:var(--igc-surface-500-contrast);-webkit-box-shadow:var(--igc-elevation-10);box-shadow:var(--igc-elevation-10)}igc-button::part(base):hover{color:hsla(var(--igc-primary-500), var(--igc-primary-a))}`;
2
+ export const styles = css `[part~=base] {
3
+ background: hsla(var(--ig-surface-500), var(--ig-surface-a));
4
+ color: var(--ig-surface-500-contrast);
5
+ -webkit-box-shadow: var(--ig-elevation-10);
6
+ box-shadow: var(--ig-elevation-10);
7
+ }
8
+
9
+ igc-button::part(base):hover {
10
+ color: hsla(var(--ig-primary-500), var(--ig-primary-a));
11
+ }`;
3
12
  //# sourceMappingURL=snackbar.bootstrap.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"snackbar.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/snackbar/themes/light/snackbar.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,uRAAuR,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=base]{background:hsla(var(--igc-surface-500), var(--igc-surface-a));color:var(--igc-surface-500-contrast);-webkit-box-shadow:var(--igc-elevation-10);box-shadow:var(--igc-elevation-10)}igc-button::part(base):hover{color:hsla(var(--igc-primary-500), var(--igc-primary-a))}`;\n"]}
1
+ {"version":3,"file":"snackbar.bootstrap.css.js","sourceRoot":"","sources":["../../../../../src/components/snackbar/themes/light/snackbar.bootstrap.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;EASvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=base] {\n background: hsla(var(--ig-surface-500), var(--ig-surface-a));\n color: var(--ig-surface-500-contrast);\n -webkit-box-shadow: var(--ig-elevation-10);\n box-shadow: var(--ig-elevation-10);\n}\n\nigc-button::part(base):hover {\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n}`;\n"]}
@@ -1,3 +1,26 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `[part~=base]{border-radius:clamp(0rem,var(--igc-radius-factor)*.125rem,.125rem)}[part~=message]{font-family:var(--igc-caption-font-family);font-weight:var(--igc-caption-font-weight);font-size:var(--igc-caption-font-size);font-style:var(--igc-caption-font-style);letter-spacing:var(--igc-caption-letter-spacing);text-transform:var(--igc-caption-text-transform);line-height:var(--igc-caption-line-height);margin-top:var(--igc-caption-margin-top);margin-bottom:var(--igc-caption-margin-bottom)}igc-button::part(base),igc-button::part(base):hover{color:hsla(var(--igc-secondary-500), var(--igc-secondary-a))}igc-button::part(base):focus-visible::after{display:none}`;
2
+ export const styles = css `[part~=base] {
3
+ border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 0.125rem), 0.125rem);
4
+ }
5
+
6
+ [part~=message] {
7
+ font-family: var(--ig-caption-font-family);
8
+ font-size: var(--ig-caption-font-size);
9
+ font-weight: var(--ig-caption-font-weight);
10
+ font-style: var(--ig-caption-font-style);
11
+ line-height: var(--ig-caption-line-height);
12
+ letter-spacing: var(--ig-caption-letter-spacing);
13
+ text-transform: var(--ig-caption-text-transform);
14
+ margin-top: var(--ig-caption-margin-top);
15
+ margin-bottom: var(--ig-caption-margin-bottom);
16
+ }
17
+
18
+ igc-button::part(base),
19
+ igc-button::part(base):hover {
20
+ color: hsla(var(--ig-secondary-500), var(--ig-secondary-a));
21
+ }
22
+
23
+ igc-button::part(base):focus-visible::after {
24
+ display: none;
25
+ }`;
3
26
  //# sourceMappingURL=snackbar.fluent.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"snackbar.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/snackbar/themes/light/snackbar.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,upBAAupB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=base]{border-radius:clamp(0rem,var(--igc-radius-factor)*.125rem,.125rem)}[part~=message]{font-family:var(--igc-caption-font-family);font-weight:var(--igc-caption-font-weight);font-size:var(--igc-caption-font-size);font-style:var(--igc-caption-font-style);letter-spacing:var(--igc-caption-letter-spacing);text-transform:var(--igc-caption-text-transform);line-height:var(--igc-caption-line-height);margin-top:var(--igc-caption-margin-top);margin-bottom:var(--igc-caption-margin-bottom)}igc-button::part(base),igc-button::part(base):hover{color:hsla(var(--igc-secondary-500), var(--igc-secondary-a))}igc-button::part(base):focus-visible::after{display:none}`;\n"]}
1
+ {"version":3,"file":"snackbar.fluent.css.js","sourceRoot":"","sources":["../../../../../src/components/snackbar/themes/light/snackbar.fluent.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;EAuBvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=base] {\n border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 0.125rem), 0.125rem);\n}\n\n[part~=message] {\n font-family: var(--ig-caption-font-family);\n font-size: var(--ig-caption-font-size);\n font-weight: var(--ig-caption-font-weight);\n font-style: var(--ig-caption-font-style);\n line-height: var(--ig-caption-line-height);\n letter-spacing: var(--ig-caption-letter-spacing);\n text-transform: var(--ig-caption-text-transform);\n margin-top: var(--ig-caption-margin-top);\n margin-bottom: var(--ig-caption-margin-bottom);\n}\n\nigc-button::part(base),\nigc-button::part(base):hover {\n color: hsla(var(--ig-secondary-500), var(--ig-secondary-a));\n}\n\nigc-button::part(base):focus-visible::after {\n display: none;\n}`;\n"]}
@@ -1,3 +1,12 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `[part~=base]{border-radius:clamp(0rem,var(--igc-radius-factor)*.375rem,.375rem);background:var(--background-color, hsla(var(--igc-gray-700), 0.9));color:var(--text-color, var(--igc-gray-700-contrast))}igc-button::part(base),igc-button::part(base):hover{color:var(--text-color, var(--igc-gray-700-contrast))}`;
2
+ export const styles = css `[part~=base] {
3
+ border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 0.375rem), 0.375rem);
4
+ background: var(--background-color, hsla(var(--ig-gray-700), 0.9));
5
+ color: var(--text-color, var(--ig-gray-700-contrast));
6
+ }
7
+
8
+ igc-button::part(base),
9
+ igc-button::part(base):hover {
10
+ color: var(--text-color, var(--ig-gray-700-contrast));
11
+ }`;
3
12
  //# sourceMappingURL=snackbar.indigo.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"snackbar.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/snackbar/themes/light/snackbar.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,qTAAqT,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=base]{border-radius:clamp(0rem,var(--igc-radius-factor)*.375rem,.375rem);background:var(--background-color, hsla(var(--igc-gray-700), 0.9));color:var(--text-color, var(--igc-gray-700-contrast))}igc-button::part(base),igc-button::part(base):hover{color:var(--text-color, var(--igc-gray-700-contrast))}`;\n"]}
1
+ {"version":3,"file":"snackbar.indigo.css.js","sourceRoot":"","sources":["../../../../../src/components/snackbar/themes/light/snackbar.indigo.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;EASvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`[part~=base] {\n border-radius: clamp(0rem, calc(var(--ig-radius-factor) * 0.375rem), 0.375rem);\n background: var(--background-color, hsla(var(--ig-gray-700), 0.9));\n color: var(--text-color, var(--ig-gray-700-contrast));\n}\n\nigc-button::part(base),\nigc-button::part(base):hover {\n color: var(--text-color, var(--ig-gray-700-contrast));\n}`;\n"]}
@@ -7,9 +7,8 @@ export default class IgcTabPanelComponent extends LitElement {
7
7
  this.tabIndex = this.hasAttribute('tabindex') ? this.tabIndex : 0;
8
8
  this.slot = this.slot.length > 0 ? this.slot : 'panel';
9
9
  this.id =
10
- this.id.length > 0
11
- ? this.id
12
- : `igc-tab-panel-${IgcTabPanelComponent.increment()}`;
10
+ this.getAttribute('id') ||
11
+ `igc-tab-panel-${IgcTabPanelComponent.increment()}`;
13
12
  }
14
13
  render() {
15
14
  return html `<slot></slot>`;
@@ -1 +1 @@
1
- {"version":3,"file":"tab-panel.js","sourceRoot":"","sources":["../../../src/components/tabs/tab-panel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAS9D,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,UAAU;IAO1C,iBAAiB;QAC/B,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;QACvD,IAAI,CAAC,EAAE;YACL,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC;gBAChB,CAAC,CAAC,IAAI,CAAC,EAAE;gBACT,CAAC,CAAC,iBAAiB,oBAAoB,CAAC,SAAS,EAAE,EAAE,CAAC;IAC5D,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA,eAAe,CAAC;IAC7B,CAAC;;AAlBsB,4BAAO,GAAG,eAAe,CAAC;AAE1B,2BAAM,GAAG,MAAM,CAAC;AAEf,8BAAS,GAAG,aAAa,EAAE,CAAC","sourcesContent":["import { html, LitElement } from 'lit';\nimport { createCounter } from '../common/util.js';\nimport { styles } from './themes/light/tab-panel.base.css.js';\n\n/**\n * Represents the content of a tab\n *\n * @element igc-tab-panel\n *\n * @slot - Renders the content.\n */\nexport default class IgcTabPanelComponent extends LitElement {\n public static readonly tagName = 'igc-tab-panel';\n\n public static override styles = styles;\n\n private static readonly increment = createCounter();\n\n public override connectedCallback() {\n this.setAttribute('role', 'tabpanel');\n this.tabIndex = this.hasAttribute('tabindex') ? this.tabIndex : 0;\n this.slot = this.slot.length > 0 ? this.slot : 'panel';\n this.id =\n this.id.length > 0\n ? this.id\n : `igc-tab-panel-${IgcTabPanelComponent.increment()}`;\n }\n\n protected override render() {\n return html`<slot></slot>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-tab-panel': IgcTabPanelComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"tab-panel.js","sourceRoot":"","sources":["../../../src/components/tabs/tab-panel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAS9D,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,UAAU;IAO1C,iBAAiB;QAC/B,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;QACvD,IAAI,CAAC,EAAE;YACL,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;gBACvB,iBAAiB,oBAAoB,CAAC,SAAS,EAAE,EAAE,CAAC;IACxD,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA,eAAe,CAAC;IAC7B,CAAC;;AAjBsB,4BAAO,GAAG,eAAe,CAAC;AAE1B,2BAAM,GAAG,MAAM,CAAC;AAEf,8BAAS,GAAG,aAAa,EAAE,CAAC","sourcesContent":["import { html, LitElement } from 'lit';\nimport { createCounter } from '../common/util.js';\nimport { styles } from './themes/light/tab-panel.base.css.js';\n\n/**\n * Represents the content of a tab\n *\n * @element igc-tab-panel\n *\n * @slot - Renders the content.\n */\nexport default class IgcTabPanelComponent extends LitElement {\n public static readonly tagName = 'igc-tab-panel';\n\n public static override styles = styles;\n\n private static readonly increment = createCounter();\n\n public override connectedCallback() {\n this.setAttribute('role', 'tabpanel');\n this.tabIndex = this.hasAttribute('tabindex') ? this.tabIndex : 0;\n this.slot = this.slot.length > 0 ? this.slot : 'panel';\n this.id =\n this.getAttribute('id') ||\n `igc-tab-panel-${IgcTabPanelComponent.increment()}`;\n }\n\n protected override render() {\n return html`<slot></slot>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-tab-panel': IgcTabPanelComponent;\n }\n}\n"]}
@@ -23,7 +23,7 @@ let IgcTabComponent = IgcTabComponent_1 = class IgcTabComponent extends LitEleme
23
23
  connectedCallback() {
24
24
  super.connectedCallback();
25
25
  this.id =
26
- this.id.length > 0 ? this.id : `igc-tab-${IgcTabComponent_1.increment()}`;
26
+ this.getAttribute('id') || `igc-tab-${IgcTabComponent_1.increment()}`;
27
27
  }
28
28
  focus(options) {
29
29
  this.tab.focus(options);
@@ -1 +1 @@
1
- {"version":3,"file":"tab.js","sourceRoot":"","sources":["../../../src/components/tabs/tab.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAgBpE,IAAqB,eAAe,uBAApC,MAAqB,eAAgB,SAAQ,UAAU;IAAvD;;QAYS,UAAK,GAAG,EAAE,CAAC;QAIX,aAAQ,GAAG,KAAK,CAAC;QAIjB,aAAQ,GAAG,KAAK,CAAC;IAmC1B,CAAC;IAjCiB,iBAAiB;QAC/B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,EAAE;YACL,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,iBAAe,CAAC,SAAS,EAAE,EAAE,CAAC;IAC5E,CAAC;IAGe,KAAK,CAAC,OAAsB;QAC1C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC;IAGe,IAAI;QAClB,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IAClB,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA;;;;wBAIS,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;wBAChC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;mBACrC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;;;;;;;;KAQtD,CAAC;IACJ,CAAC;CACF,CAAA;AAtDwB,uBAAO,GAAG,SAAU,CAAA;AAEpB,sBAAM,GAAG,MAAO,CAAA;AAEf,yBAAS,GAAG,aAAa,EAAG,CAAA;AAGpD;IADC,KAAK,CAAC,eAAe,EAAE,IAAI,CAAC;4CACH;AAI1B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;8CACT;AAIlB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;iDACnB;AAIxB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;iDACnB;AApBL,eAAe;IADnC,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;GACjB,eAAe,CAuDnC;eAvDoB,eAAe","sourcesContent":["import { html, LitElement } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { createCounter } from '../common/util.js';\nimport { styles } from './themes/light/tab.base.css.js';\nimport { styles as bootstrap } from './themes/light/tab.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/tab.fluent.css.js';\nimport { styles as indigo } from './themes/light/tab.indigo.css.js';\n\n/**\n * Represents the tab header.\n *\n * @element igc-tab\n *\n * @slot prefix - Renders before the tab header content.\n * @slot - Renders the tab header content.\n * @slot suffix - Renders after the tab header content.\n *\n * @csspart content - The content wrapper.\n * @csspart prefix - The prefix wrapper.\n * @csspart suffix - The suffix wrapper.\n */\n@themes({ bootstrap, fluent, indigo })\nexport default class IgcTabComponent extends LitElement {\n public static readonly tagName = 'igc-tab';\n\n public static override styles = styles;\n\n private static readonly increment = createCounter();\n\n @query('[part=\"base\"]', true)\n private tab!: HTMLElement;\n\n /** The id of the tab panel which will be controlled by the tab. */\n @property({ type: String })\n public panel = '';\n\n /** Determines whether the tab is selected. */\n @property({ type: Boolean, reflect: true })\n public selected = false;\n\n /** Determines whether the tab is disabled. */\n @property({ type: Boolean, reflect: true })\n public disabled = false;\n\n public override connectedCallback(): void {\n super.connectedCallback();\n this.id =\n this.id.length > 0 ? this.id : `igc-tab-${IgcTabComponent.increment()}`;\n }\n\n /** Sets focus to the tab. */\n public override focus(options?: FocusOptions) {\n this.tab.focus(options);\n }\n\n /** Removes focus from the tab. */\n public override blur() {\n this.tab.blur();\n }\n\n protected override render() {\n return html`\n <div\n part=\"base\"\n role=\"tab\"\n aria-disabled=${this.disabled ? 'true' : 'false'}\n aria-selected=${this.selected ? 'true' : 'false'}\n tabindex=${this.disabled || !this.selected ? -1 : 0}\n >\n <slot name=\"prefix\" part=\"prefix\"></slot>\n <div part=\"content\">\n <slot></slot>\n </div>\n <slot name=\"suffix\" part=\"suffix\"></slot>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-tab': IgcTabComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"tab.js","sourceRoot":"","sources":["../../../src/components/tabs/tab.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAgBpE,IAAqB,eAAe,uBAApC,MAAqB,eAAgB,SAAQ,UAAU;IAAvD;;QAYS,UAAK,GAAG,EAAE,CAAC;QAIX,aAAQ,GAAG,KAAK,CAAC;QAIjB,aAAQ,GAAG,KAAK,CAAC;IAmC1B,CAAC;IAjCiB,iBAAiB;QAC/B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,EAAE;YACL,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,WAAW,iBAAe,CAAC,SAAS,EAAE,EAAE,CAAC;IACxE,CAAC;IAGe,KAAK,CAAC,OAAsB;QAC1C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC;IAGe,IAAI;QAClB,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IAClB,CAAC;IAEkB,MAAM;QACvB,OAAO,IAAI,CAAA;;;;wBAIS,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;wBAChC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;mBACrC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;;;;;;;;KAQtD,CAAC;IACJ,CAAC;CACF,CAAA;AAtDwB,uBAAO,GAAG,SAAU,CAAA;AAEpB,sBAAM,GAAG,MAAO,CAAA;AAEf,yBAAS,GAAG,aAAa,EAAG,CAAA;AAGpD;IADC,KAAK,CAAC,eAAe,EAAE,IAAI,CAAC;4CACH;AAI1B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;8CACT;AAIlB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;iDACnB;AAIxB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;iDACnB;AApBL,eAAe;IADnC,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;GACjB,eAAe,CAuDnC;eAvDoB,eAAe","sourcesContent":["import { html, LitElement } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { createCounter } from '../common/util.js';\nimport { styles } from './themes/light/tab.base.css.js';\nimport { styles as bootstrap } from './themes/light/tab.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/tab.fluent.css.js';\nimport { styles as indigo } from './themes/light/tab.indigo.css.js';\n\n/**\n * Represents the tab header.\n *\n * @element igc-tab\n *\n * @slot prefix - Renders before the tab header content.\n * @slot - Renders the tab header content.\n * @slot suffix - Renders after the tab header content.\n *\n * @csspart content - The content wrapper.\n * @csspart prefix - The prefix wrapper.\n * @csspart suffix - The suffix wrapper.\n */\n@themes({ bootstrap, fluent, indigo })\nexport default class IgcTabComponent extends LitElement {\n public static readonly tagName = 'igc-tab';\n\n public static override styles = styles;\n\n private static readonly increment = createCounter();\n\n @query('[part=\"base\"]', true)\n private tab!: HTMLElement;\n\n /** The id of the tab panel which will be controlled by the tab. */\n @property({ type: String })\n public panel = '';\n\n /** Determines whether the tab is selected. */\n @property({ type: Boolean, reflect: true })\n public selected = false;\n\n /** Determines whether the tab is disabled. */\n @property({ type: Boolean, reflect: true })\n public disabled = false;\n\n public override connectedCallback(): void {\n super.connectedCallback();\n this.id =\n this.getAttribute('id') || `igc-tab-${IgcTabComponent.increment()}`;\n }\n\n /** Sets focus to the tab. */\n public override focus(options?: FocusOptions) {\n this.tab.focus(options);\n }\n\n /** Removes focus from the tab. */\n public override blur() {\n this.tab.blur();\n }\n\n protected override render() {\n return html`\n <div\n part=\"base\"\n role=\"tab\"\n aria-disabled=${this.disabled ? 'true' : 'false'}\n aria-selected=${this.selected ? 'true' : 'false'}\n tabindex=${this.disabled || !this.selected ? -1 : 0}\n >\n <slot name=\"prefix\" part=\"prefix\"></slot>\n <div part=\"content\">\n <slot></slot>\n </div>\n <slot name=\"suffix\" part=\"suffix\"></slot>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-tab': IgcTabComponent;\n }\n}\n"]}
@@ -1,8 +1,7 @@
1
- import '../button/icon-button';
2
1
  import { LitElement, nothing } from 'lit';
3
- import type IgcTabComponent from './tab';
4
- import type IgcTabPanelComponent from './tab-panel';
5
2
  import { Constructor } from '../common/mixins/constructor.js';
3
+ import IgcTabComponent from './tab.js';
4
+ import IgcTabPanelComponent from './tab-panel.js';
6
5
  export interface IgcTabsEventMap {
7
6
  igcChange: CustomEvent<IgcTabComponent>;
8
7
  }
@@ -42,7 +41,6 @@ export default class IgcTabsComponent extends IgcTabsComponent_base {
42
41
  protected resizeObserver: ResizeObserver;
43
42
  protected mutationObserver: MutationObserver;
44
43
  protected get enabledTabs(): IgcTabComponent[];
45
- protected get isLTR(): boolean;
46
44
  /** Returns the currently selected tab. */
47
45
  get selected(): string;
48
46
  /** Sets the alignment for the tab headers */
@@ -5,18 +5,23 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  var IgcTabsComponent_1;
8
- import '../button/icon-button';
9
8
  import { html, LitElement, nothing } from 'lit';
10
9
  import { eventOptions, property, query, queryAssignedElements, state, } from 'lit/decorators.js';
11
10
  import { watch } from '../common/decorators/watch.js';
11
+ import { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';
12
12
  import { themes } from '../../theming/theming-decorator.js';
13
13
  import { styles } from './themes/light/tabs.base.css.js';
14
14
  import { styles as bootstrap } from './themes/light/tabs.bootstrap.css.js';
15
15
  import { styles as fluent } from './themes/light/tabs.fluent.css.js';
16
16
  import { styles as indigo } from './themes/light/tabs.indigo.css.js';
17
17
  import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
18
- import { createCounter, getOffset } from '../common/util.js';
18
+ import { createCounter, getOffset, isLTR } from '../common/util.js';
19
19
  import { getAttributesForTags, getNodesForTags, observerConfig, } from './utils.js';
20
+ import { defineComponents } from '../common/definitions/defineComponents.js';
21
+ import IgcTabComponent from './tab.js';
22
+ import IgcTabPanelComponent from './tab-panel.js';
23
+ import IgcIconButtonComponent from '../button/icon-button.js';
24
+ defineComponents(IgcTabComponent, IgcTabPanelComponent, IgcIconButtonComponent);
20
25
  let IgcTabsComponent = IgcTabsComponent_1 = class IgcTabsComponent extends EventEmitterMixin(LitElement) {
21
26
  constructor() {
22
27
  super(...arguments);
@@ -29,15 +34,16 @@ let IgcTabsComponent = IgcTabsComponent_1 = class IgcTabsComponent extends Event
29
34
  var _a;
30
35
  const { key } = event;
31
36
  const enabledTabs = this.enabledTabs;
37
+ const ltr = isLTR(this);
32
38
  let index = enabledTabs.indexOf((_a = document.activeElement) === null || _a === void 0 ? void 0 : _a.closest('igc-tab'));
33
39
  switch (key) {
34
40
  case 'ArrowLeft':
35
- index = this.isLTR
41
+ index = ltr
36
42
  ? (enabledTabs.length + index - 1) % enabledTabs.length
37
43
  : (index + 1) % enabledTabs.length;
38
44
  break;
39
45
  case 'ArrowRight':
40
- index = this.isLTR
46
+ index = ltr
41
47
  ? (index + 1) % enabledTabs.length
42
48
  : (enabledTabs.length + index - 1) % enabledTabs.length;
43
49
  break;
@@ -68,9 +74,6 @@ let IgcTabsComponent = IgcTabsComponent_1 = class IgcTabsComponent extends Event
68
74
  get enabledTabs() {
69
75
  return this.tabs.filter((tab) => !tab.disabled);
70
76
  }
71
- get isLTR() {
72
- return (window.getComputedStyle(this).getPropertyValue('direction') === 'ltr');
73
- }
74
77
  get selected() {
75
78
  var _a, _b;
76
79
  return (_b = (_a = this.activeTab) === null || _a === void 0 ? void 0 : _a.panel) !== null && _b !== void 0 ? _b : '';
@@ -83,7 +86,7 @@ let IgcTabsComponent = IgcTabsComponent_1 = class IgcTabsComponent extends Event
83
86
  if (this.activeTab) {
84
87
  Object.assign(styles, {
85
88
  width: `${this.activeTab.offsetWidth}px`,
86
- transform: `translate(${this.isLTR
89
+ transform: `translate(${isLTR(this)
87
90
  ? getOffset(this.activeTab, this.wrapper).left
88
91
  : getOffset(this.activeTab, this.wrapper).right}px)`,
89
92
  });
@@ -188,7 +191,7 @@ let IgcTabsComponent = IgcTabsComponent_1 = class IgcTabsComponent extends Event
188
191
  }
189
192
  scrollByTabOffset(direction) {
190
193
  const { scrollLeft, offsetWidth } = this.container;
191
- const LTR = this.isLTR, next = direction === 'end';
194
+ const LTR = isLTR(this), next = direction === 'end';
192
195
  const pivot = Math.abs(next ? offsetWidth + scrollLeft : scrollLeft);
193
196
  let amount = this.tabs
194
197
  .map((tab) => ({
@@ -200,7 +203,7 @@ let IgcTabsComponent = IgcTabsComponent_1 = class IgcTabsComponent extends Event
200
203
  .filter((offset) => next ? offset.start + offset.width > pivot : offset.start < pivot)
201
204
  .at(next ? 0 : -1).width;
202
205
  amount *= next ? 1 : -1;
203
- this.container.scrollBy({ left: this.isLTR ? amount : -amount });
206
+ this.container.scrollBy({ left: LTR ? amount : -amount });
204
207
  }
205
208
  handleClick(event) {
206
209
  const target = event.target;
@@ -222,6 +225,8 @@ let IgcTabsComponent = IgcTabsComponent_1 = class IgcTabsComponent extends Event
222
225
  const start = direction === 'start';
223
226
  return this.showScrollButtons
224
227
  ? html `<igc-icon-button
228
+ tabindex="-1"
229
+ aria-hidden="true"
225
230
  size="large"
226
231
  variant="flat"
227
232
  collection="internal"
@@ -302,7 +307,8 @@ __decorate([
302
307
  eventOptions({ passive: true })
303
308
  ], IgcTabsComponent.prototype, "handleScroll", null);
304
309
  IgcTabsComponent = IgcTabsComponent_1 = __decorate([
305
- themes({ bootstrap, fluent, indigo })
310
+ themes({ bootstrap, fluent, indigo }),
311
+ blazorAdditionalDependencies('IgcTabComponent, IgcTabPanelComponent')
306
312
  ], IgcTabsComponent);
307
313
  export default IgcTabsComponent;
308
314
  //# sourceMappingURL=tabs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../src/components/tabs/tabs.ts"],"names":[],"mappings":"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","sourcesContent":["import '../button/icon-button';\nimport { html, LitElement, nothing } from 'lit';\nimport {\n eventOptions,\n property,\n query,\n queryAssignedElements,\n state,\n} from 'lit/decorators.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport type IgcTabComponent from './tab';\nimport type IgcTabPanelComponent from './tab-panel';\nimport { styles } from './themes/light/tabs.base.css.js';\nimport { styles as bootstrap } from './themes/light/tabs.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/tabs.fluent.css.js';\nimport { styles as indigo } from './themes/light/tabs.indigo.css.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { createCounter, getOffset } from '../common/util.js';\nimport {\n getAttributesForTags,\n getNodesForTags,\n observerConfig,\n} from './utils.js';\n\nexport interface IgcTabsEventMap {\n igcChange: CustomEvent<IgcTabComponent>;\n}\n\n/**\n * Represents tabs component\n *\n * @element igc-tabs\n *\n * @fires igcChange - Emitted when the selected tab changes.\n *\n * @slot - Renders the tab header.\n * @slot panel - Renders the tab content.\n *\n * @csspart headers - The wrapper of the tabs including the headers content and the scroll buttons.\n * @csspart headers-content - The container for the tab headers.\n * @csspart headers-wrapper - The wrapper for the tab headers and the selected indicator.\n * @csspart headers-scroll - The container for the headers.\n * @csspart selected-indicator - The selected indicator.\n * @csspart start-scroll-button - The start scroll button displayed when the tabs overflow.\n * @csspart end-scroll-button - The end scroll button displayed when the tabs overflow.\n * @csspart content - The container for the tabs content.\n */\n@themes({ bootstrap, fluent, indigo })\nexport default class IgcTabsComponent extends EventEmitterMixin<\n IgcTabsEventMap,\n Constructor<LitElement>\n>(LitElement) {\n public static readonly tagName = 'igc-tabs';\n\n public static styles = styles;\n private static readonly increment = createCounter();\n\n @queryAssignedElements({ selector: 'igc-tab' })\n protected tabs!: Array<IgcTabComponent>;\n\n @queryAssignedElements({ slot: 'panel' })\n protected panels!: Array<IgcTabPanelComponent>;\n\n @query('[part=\"headers-wrapper\"]', true)\n protected wrapper!: HTMLElement;\n\n @query('[part=\"headers-content\"]', true)\n protected container!: HTMLElement;\n\n @query('[part=\"selected-indicator\"]', true)\n protected selectedIndicator!: HTMLElement;\n\n @state()\n protected showScrollButtons = false;\n\n @state()\n protected disableStartScrollButton = true;\n\n @state()\n protected disableEndScrollButton = false;\n\n @state()\n protected activeTab?: IgcTabComponent;\n\n protected resizeObserver!: ResizeObserver;\n protected mutationObserver!: MutationObserver;\n\n protected get enabledTabs() {\n return this.tabs.filter((tab) => !tab.disabled);\n }\n\n protected get isLTR() {\n return (\n window.getComputedStyle(this).getPropertyValue('direction') === 'ltr'\n );\n }\n\n /** Returns the currently selected tab. */\n public get selected(): string {\n return this.activeTab?.panel ?? '';\n }\n\n /** Sets the alignment for the tab headers */\n @property({ reflect: true })\n public alignment: 'start' | 'end' | 'center' | 'justify' = 'start';\n\n /**\n * Determines the tab activation. When set to auto,\n * the tab is instantly selected while navigating with the Left/Right Arrows, Home or End keys\n * and the corresponding panel is displayed.\n * When set to manual, the tab is only focused. The selection happens after pressing Space or Enter.\n */\n @property()\n public activation: 'auto' | 'manual' = 'auto';\n\n @watch('alignment', { waitUntilFirstUpdate: true })\n protected alignIndicator() {\n const styles: Partial<CSSStyleDeclaration> = {\n visibility: this.activeTab ? 'visible' : 'hidden',\n transitionDuration: '0.3s',\n };\n\n if (this.activeTab) {\n Object.assign(styles, {\n width: `${this.activeTab!.offsetWidth}px`,\n transform: `translate(${\n this.isLTR\n ? getOffset(this.activeTab!, this.wrapper).left\n : getOffset(this.activeTab!, this.wrapper).right\n }px)`,\n });\n }\n\n Object.assign(this.selectedIndicator.style, styles);\n }\n\n protected override async firstUpdated() {\n this.showScrollButtons =\n this.container.scrollWidth > this.container.clientWidth;\n\n await this.updateComplete;\n\n this.syncAttributes();\n this.setupObserver();\n this.setSelectedTab(\n this.tabs.filter((tab) => tab.selected).at(-1) ?? this.enabledTabs.at(0)\n );\n }\n\n public override disconnectedCallback() {\n this.resizeObserver?.disconnect();\n this.mutationObserver?.disconnect();\n super.disconnectedCallback();\n }\n\n protected updateButtonsOnResize() {\n // Hide the buttons in the resize observer callback and synchronously update the DOM\n // in order to get the actual size\n this.showScrollButtons = false;\n this.performUpdate();\n\n this.showScrollButtons =\n this.container.scrollWidth > this.container.clientWidth;\n\n this.updateScrollButtons();\n }\n\n protected updateScrollButtons() {\n const { scrollLeft, offsetWidth } = this.container,\n { scrollWidth } = this.wrapper;\n\n this.disableEndScrollButton =\n scrollWidth <= Math.abs(scrollLeft) + offsetWidth;\n this.disableStartScrollButton = scrollLeft === 0;\n }\n\n protected setupObserver() {\n this.resizeObserver = new ResizeObserver(() => {\n this.updateButtonsOnResize();\n this.alignIndicator();\n });\n\n [this.container, this.wrapper, ...this.tabs].forEach((element) =>\n this.resizeObserver.observe(element)\n );\n\n this.mutationObserver = new MutationObserver(async (records, observer) => {\n // Stop observing while handling changes\n observer.disconnect();\n\n const attributes = getAttributesForTags<IgcTabComponent>(\n records,\n 'igc-tab'\n );\n const changed = getNodesForTags<IgcTabComponent>(\n records,\n this,\n 'igc-tab'\n );\n\n if (attributes.length > 0) {\n this.activeTab = attributes.find((tab) => tab.selected);\n }\n\n if (changed) {\n changed.addedNodes.forEach((tab) => {\n this.resizeObserver.observe(tab);\n if (tab.selected) {\n this.activeTab = tab;\n }\n });\n changed.removedNodes.forEach((tab) => {\n this.resizeObserver.unobserve(tab);\n if (tab.selected || this.activeTab === tab) {\n this.activeTab = undefined;\n }\n });\n\n this.syncAttributes();\n }\n\n this.updateSelectedTab();\n this.activeTab?.scrollIntoView({ block: 'nearest' });\n this.alignIndicator();\n\n // Watch for changes again\n await this.updateComplete;\n observer.observe(this, observerConfig);\n });\n\n this.mutationObserver.observe(this, observerConfig);\n }\n\n protected updateSelectedTab() {\n this.tabs.forEach((tab) => (tab.selected = tab === this.activeTab));\n this.panels.forEach((panel) =>\n Object.assign(panel.style, {\n display: panel.id === this.activeTab?.panel ? 'block' : 'none',\n })\n );\n }\n\n protected syncAttributes() {\n const prefix = this.id ? `${this.id}-` : '';\n this.tabs.forEach((tab, index) => {\n if (!tab.panel) {\n tab.panel =\n this.panels.at(index)?.id ??\n `${prefix}tab-${IgcTabsComponent.increment()}`;\n }\n this.panels\n .find((panel) => panel.id === tab.panel)\n ?.setAttribute('aria-labelledby', tab.id);\n });\n }\n\n private setSelectedTab(tab?: IgcTabComponent) {\n if (!tab || tab === this.activeTab) {\n return;\n }\n\n if (this.activeTab) {\n this.activeTab.selected = false;\n }\n\n this.activeTab = tab;\n this.activeTab.selected = true;\n }\n\n protected scrollByTabOffset(direction: 'start' | 'end') {\n const { scrollLeft, offsetWidth } = this.container;\n const LTR = this.isLTR,\n next = direction === 'end';\n\n const pivot = Math.abs(next ? offsetWidth + scrollLeft : scrollLeft);\n\n let amount = this.tabs\n .map((tab) => ({\n start: LTR\n ? getOffset(tab, this.wrapper).left\n : Math.abs(getOffset(tab, this.wrapper).right),\n width: tab.offsetWidth,\n }))\n .filter((offset) =>\n next ? offset.start + offset.width > pivot : offset.start < pivot\n )\n .at(next ? 0 : -1)!.width;\n\n amount *= next ? 1 : -1;\n this.container.scrollBy({ left: this.isLTR ? amount : -amount });\n }\n\n protected handleClick(event: MouseEvent) {\n const target = event.target as HTMLElement;\n const tab = target.closest('igc-tab');\n\n if (!(tab && this.contains(tab)) || tab.disabled) {\n return;\n }\n\n tab.focus();\n this.setSelectedTab(tab);\n this.emitEvent('igcChange', { detail: this.activeTab });\n }\n\n protected handleKeyDown = (event: KeyboardEvent) => {\n const { key } = event;\n const enabledTabs = this.enabledTabs;\n\n let index = enabledTabs.indexOf(\n document.activeElement?.closest('igc-tab') as IgcTabComponent\n );\n\n switch (key) {\n case 'ArrowLeft':\n index = this.isLTR\n ? (enabledTabs.length + index - 1) % enabledTabs.length\n : (index + 1) % enabledTabs.length;\n break;\n case 'ArrowRight':\n index = this.isLTR\n ? (index + 1) % enabledTabs.length\n : (enabledTabs.length + index - 1) % enabledTabs.length;\n break;\n case 'Home':\n index = 0;\n break;\n case 'End':\n index = enabledTabs.length - 1;\n break;\n case 'Enter':\n case ' ':\n this.setSelectedTab(enabledTabs[index]);\n break;\n default:\n return;\n }\n\n enabledTabs[index].focus({ preventScroll: true });\n\n if (this.activation === 'auto') {\n this.setSelectedTab(enabledTabs[index]);\n this.emitEvent('igcChange', { detail: this.activeTab });\n } else {\n enabledTabs[index].scrollIntoView({ block: 'nearest' });\n }\n\n event.preventDefault();\n };\n\n @eventOptions({ passive: true })\n protected handleScroll() {\n this.updateScrollButtons();\n }\n\n /** Selects the specified tab and displays the corresponding panel. */\n public select(name: string) {\n this.setSelectedTab(this.tabs.find((el) => el.panel === name));\n }\n\n protected renderScrollButton(direction: 'start' | 'end') {\n const start = direction === 'start';\n\n return this.showScrollButtons\n ? html`<igc-icon-button\n size=\"large\"\n variant=\"flat\"\n collection=\"internal\"\n part=\"${direction}-scroll-button\"\n name=\"navigate_${start ? 'before' : 'next'}\"\n .disabled=${start\n ? this.disableStartScrollButton\n : this.disableEndScrollButton}\n @click=${() => this.scrollByTabOffset(direction)}\n ></igc-icon-button>`\n : nothing;\n }\n\n protected override render() {\n return html`\n <div part=\"headers\">\n ${this.renderScrollButton('start')}\n <div part=\"headers-content\" @scroll=${this.handleScroll}>\n <div part=\"headers-wrapper\">\n <div\n part=\"headers-scroll\"\n role=\"tablist\"\n @click=${this.handleClick}\n @keydown=${this.handleKeyDown}\n >\n <slot></slot>\n </div>\n <div part=\"selected-indicator\"></div>\n </div>\n </div>\n ${this.renderScrollButton('end')}\n </div>\n <div part=\"content\">\n <slot name=\"panel\"></slot>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-tabs': IgcTabsComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../src/components/tabs/tabs.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport {\n eventOptions,\n property,\n query,\n queryAssignedElements,\n state,\n} from 'lit/decorators.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';\nimport { themes } from '../../theming/theming-decorator.js';\nimport { styles } from './themes/light/tabs.base.css.js';\nimport { styles as bootstrap } from './themes/light/tabs.bootstrap.css.js';\nimport { styles as fluent } from './themes/light/tabs.fluent.css.js';\nimport { styles as indigo } from './themes/light/tabs.indigo.css.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport { Constructor } from '../common/mixins/constructor.js';\nimport { createCounter, getOffset, isLTR } from '../common/util.js';\nimport {\n getAttributesForTags,\n getNodesForTags,\n observerConfig,\n} from './utils.js';\n\nimport { defineComponents } from '../common/definitions/defineComponents.js';\nimport IgcTabComponent from './tab.js';\nimport IgcTabPanelComponent from './tab-panel.js';\nimport IgcIconButtonComponent from '../button/icon-button.js';\n\ndefineComponents(IgcTabComponent, IgcTabPanelComponent, IgcIconButtonComponent);\n\nexport interface IgcTabsEventMap {\n igcChange: CustomEvent<IgcTabComponent>;\n}\n\n/**\n * Represents tabs component\n *\n * @element igc-tabs\n *\n * @fires igcChange - Emitted when the selected tab changes.\n *\n * @slot - Renders the tab header.\n * @slot panel - Renders the tab content.\n *\n * @csspart headers - The wrapper of the tabs including the headers content and the scroll buttons.\n * @csspart headers-content - The container for the tab headers.\n * @csspart headers-wrapper - The wrapper for the tab headers and the selected indicator.\n * @csspart headers-scroll - The container for the headers.\n * @csspart selected-indicator - The selected indicator.\n * @csspart start-scroll-button - The start scroll button displayed when the tabs overflow.\n * @csspart end-scroll-button - The end scroll button displayed when the tabs overflow.\n * @csspart content - The container for the tabs content.\n */\n@themes({ bootstrap, fluent, indigo })\n@blazorAdditionalDependencies('IgcTabComponent, IgcTabPanelComponent')\nexport default class IgcTabsComponent extends EventEmitterMixin<\n IgcTabsEventMap,\n Constructor<LitElement>\n>(LitElement) {\n public static readonly tagName = 'igc-tabs';\n\n public static styles = styles;\n private static readonly increment = createCounter();\n\n @queryAssignedElements({ selector: 'igc-tab' })\n protected tabs!: Array<IgcTabComponent>;\n\n @queryAssignedElements({ slot: 'panel' })\n protected panels!: Array<IgcTabPanelComponent>;\n\n @query('[part=\"headers-wrapper\"]', true)\n protected wrapper!: HTMLElement;\n\n @query('[part=\"headers-content\"]', true)\n protected container!: HTMLElement;\n\n @query('[part=\"selected-indicator\"]', true)\n protected selectedIndicator!: HTMLElement;\n\n @state()\n protected showScrollButtons = false;\n\n @state()\n protected disableStartScrollButton = true;\n\n @state()\n protected disableEndScrollButton = false;\n\n @state()\n protected activeTab?: IgcTabComponent;\n\n protected resizeObserver!: ResizeObserver;\n protected mutationObserver!: MutationObserver;\n\n protected get enabledTabs() {\n return this.tabs.filter((tab) => !tab.disabled);\n }\n\n /** Returns the currently selected tab. */\n public get selected(): string {\n return this.activeTab?.panel ?? '';\n }\n\n /** Sets the alignment for the tab headers */\n @property({ reflect: true })\n public alignment: 'start' | 'end' | 'center' | 'justify' = 'start';\n\n /**\n * Determines the tab activation. When set to auto,\n * the tab is instantly selected while navigating with the Left/Right Arrows, Home or End keys\n * and the corresponding panel is displayed.\n * When set to manual, the tab is only focused. The selection happens after pressing Space or Enter.\n */\n @property()\n public activation: 'auto' | 'manual' = 'auto';\n\n @watch('alignment', { waitUntilFirstUpdate: true })\n protected alignIndicator() {\n const styles: Partial<CSSStyleDeclaration> = {\n visibility: this.activeTab ? 'visible' : 'hidden',\n transitionDuration: '0.3s',\n };\n\n if (this.activeTab) {\n Object.assign(styles, {\n width: `${this.activeTab!.offsetWidth}px`,\n transform: `translate(${\n isLTR(this)\n ? getOffset(this.activeTab!, this.wrapper).left\n : getOffset(this.activeTab!, this.wrapper).right\n }px)`,\n });\n }\n\n Object.assign(this.selectedIndicator.style, styles);\n }\n\n protected override async firstUpdated() {\n this.showScrollButtons =\n this.container.scrollWidth > this.container.clientWidth;\n\n await this.updateComplete;\n\n this.syncAttributes();\n this.setupObserver();\n this.setSelectedTab(\n this.tabs.filter((tab) => tab.selected).at(-1) ?? this.enabledTabs.at(0)\n );\n }\n\n public override disconnectedCallback() {\n this.resizeObserver?.disconnect();\n this.mutationObserver?.disconnect();\n super.disconnectedCallback();\n }\n\n protected updateButtonsOnResize() {\n // Hide the buttons in the resize observer callback and synchronously update the DOM\n // in order to get the actual size\n this.showScrollButtons = false;\n this.performUpdate();\n\n this.showScrollButtons =\n this.container.scrollWidth > this.container.clientWidth;\n\n this.updateScrollButtons();\n }\n\n protected updateScrollButtons() {\n const { scrollLeft, offsetWidth } = this.container,\n { scrollWidth } = this.wrapper;\n\n this.disableEndScrollButton =\n scrollWidth <= Math.abs(scrollLeft) + offsetWidth;\n this.disableStartScrollButton = scrollLeft === 0;\n }\n\n protected setupObserver() {\n this.resizeObserver = new ResizeObserver(() => {\n this.updateButtonsOnResize();\n this.alignIndicator();\n });\n\n [this.container, this.wrapper, ...this.tabs].forEach((element) =>\n this.resizeObserver.observe(element)\n );\n\n this.mutationObserver = new MutationObserver(async (records, observer) => {\n // Stop observing while handling changes\n observer.disconnect();\n\n const attributes = getAttributesForTags<IgcTabComponent>(\n records,\n 'igc-tab'\n );\n const changed = getNodesForTags<IgcTabComponent>(\n records,\n this,\n 'igc-tab'\n );\n\n if (attributes.length > 0) {\n this.activeTab = attributes.find((tab) => tab.selected);\n }\n\n if (changed) {\n changed.addedNodes.forEach((tab) => {\n this.resizeObserver.observe(tab);\n if (tab.selected) {\n this.activeTab = tab;\n }\n });\n changed.removedNodes.forEach((tab) => {\n this.resizeObserver.unobserve(tab);\n if (tab.selected || this.activeTab === tab) {\n this.activeTab = undefined;\n }\n });\n\n this.syncAttributes();\n }\n\n this.updateSelectedTab();\n this.activeTab?.scrollIntoView({ block: 'nearest' });\n this.alignIndicator();\n\n // Watch for changes again\n await this.updateComplete;\n observer.observe(this, observerConfig);\n });\n\n this.mutationObserver.observe(this, observerConfig);\n }\n\n protected updateSelectedTab() {\n this.tabs.forEach((tab) => (tab.selected = tab === this.activeTab));\n this.panels.forEach((panel) =>\n Object.assign(panel.style, {\n display: panel.id === this.activeTab?.panel ? 'block' : 'none',\n })\n );\n }\n\n protected syncAttributes() {\n const prefix = this.id ? `${this.id}-` : '';\n this.tabs.forEach((tab, index) => {\n if (!tab.panel) {\n tab.panel =\n this.panels.at(index)?.id ??\n `${prefix}tab-${IgcTabsComponent.increment()}`;\n }\n this.panels\n .find((panel) => panel.id === tab.panel)\n ?.setAttribute('aria-labelledby', tab.id);\n });\n }\n\n private setSelectedTab(tab?: IgcTabComponent) {\n if (!tab || tab === this.activeTab) {\n return;\n }\n\n if (this.activeTab) {\n this.activeTab.selected = false;\n }\n\n this.activeTab = tab;\n this.activeTab.selected = true;\n }\n\n protected scrollByTabOffset(direction: 'start' | 'end') {\n const { scrollLeft, offsetWidth } = this.container;\n const LTR = isLTR(this),\n next = direction === 'end';\n\n const pivot = Math.abs(next ? offsetWidth + scrollLeft : scrollLeft);\n\n let amount = this.tabs\n .map((tab) => ({\n start: LTR\n ? getOffset(tab, this.wrapper).left\n : Math.abs(getOffset(tab, this.wrapper).right),\n width: tab.offsetWidth,\n }))\n .filter((offset) =>\n next ? offset.start + offset.width > pivot : offset.start < pivot\n )\n .at(next ? 0 : -1)!.width;\n\n amount *= next ? 1 : -1;\n this.container.scrollBy({ left: LTR ? amount : -amount });\n }\n\n protected handleClick(event: MouseEvent) {\n const target = event.target as HTMLElement;\n const tab = target.closest('igc-tab');\n\n if (!(tab && this.contains(tab)) || tab.disabled) {\n return;\n }\n\n tab.focus();\n this.setSelectedTab(tab);\n this.emitEvent('igcChange', { detail: this.activeTab });\n }\n\n protected handleKeyDown = (event: KeyboardEvent) => {\n const { key } = event;\n const enabledTabs = this.enabledTabs;\n const ltr = isLTR(this);\n\n let index = enabledTabs.indexOf(\n document.activeElement?.closest('igc-tab') as IgcTabComponent\n );\n\n switch (key) {\n case 'ArrowLeft':\n index = ltr\n ? (enabledTabs.length + index - 1) % enabledTabs.length\n : (index + 1) % enabledTabs.length;\n break;\n case 'ArrowRight':\n index = ltr\n ? (index + 1) % enabledTabs.length\n : (enabledTabs.length + index - 1) % enabledTabs.length;\n break;\n case 'Home':\n index = 0;\n break;\n case 'End':\n index = enabledTabs.length - 1;\n break;\n case 'Enter':\n case ' ':\n this.setSelectedTab(enabledTabs[index]);\n break;\n default:\n return;\n }\n\n enabledTabs[index].focus({ preventScroll: true });\n\n if (this.activation === 'auto') {\n this.setSelectedTab(enabledTabs[index]);\n this.emitEvent('igcChange', { detail: this.activeTab });\n } else {\n enabledTabs[index].scrollIntoView({ block: 'nearest' });\n }\n\n event.preventDefault();\n };\n\n @eventOptions({ passive: true })\n protected handleScroll() {\n this.updateScrollButtons();\n }\n\n /** Selects the specified tab and displays the corresponding panel. */\n public select(name: string) {\n this.setSelectedTab(this.tabs.find((el) => el.panel === name));\n }\n\n protected renderScrollButton(direction: 'start' | 'end') {\n const start = direction === 'start';\n\n return this.showScrollButtons\n ? html`<igc-icon-button\n tabindex=\"-1\"\n aria-hidden=\"true\"\n size=\"large\"\n variant=\"flat\"\n collection=\"internal\"\n part=\"${direction}-scroll-button\"\n name=\"navigate_${start ? 'before' : 'next'}\"\n .disabled=${start\n ? this.disableStartScrollButton\n : this.disableEndScrollButton}\n @click=${() => this.scrollByTabOffset(direction)}\n ></igc-icon-button>`\n : nothing;\n }\n\n protected override render() {\n return html`\n <div part=\"headers\">\n ${this.renderScrollButton('start')}\n <div part=\"headers-content\" @scroll=${this.handleScroll}>\n <div part=\"headers-wrapper\">\n <div\n part=\"headers-scroll\"\n role=\"tablist\"\n @click=${this.handleClick}\n @keydown=${this.handleKeyDown}\n >\n <slot></slot>\n </div>\n <div part=\"selected-indicator\"></div>\n </div>\n </div>\n ${this.renderScrollButton('end')}\n </div>\n <div part=\"content\">\n <slot name=\"panel\"></slot>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-tabs': IgcTabsComponent;\n }\n}\n"]}
@@ -1,3 +1,35 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{position:relative;overflow:hidden;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}`;
2
+ export const styles = css `:host {
3
+ position: relative;
4
+ -webkit-box-sizing: border-box;
5
+ box-sizing: border-box;
6
+ scrollbar-width: var(--scrolbar-size, 0.875rem);
7
+ scrollbar-color: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));
8
+ }
9
+ :host *,
10
+ :host *::before,
11
+ :host *::after {
12
+ -webkit-box-sizing: border-box;
13
+ box-sizing: border-box;
14
+ }
15
+ :host ::-webkit-scrollbar {
16
+ width: var(--scrolbar-size, 0.875rem);
17
+ height: var(--scrolbar-size, 0.875rem);
18
+ background: var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));
19
+ }
20
+ :host ::-webkit-scrollbar-thumb {
21
+ background: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a)));
22
+ }
23
+
24
+ [hidden] {
25
+ display: none !important;
26
+ }
27
+
28
+ :host {
29
+ position: relative;
30
+ overflow: hidden;
31
+ -webkit-box-flex: 1;
32
+ -ms-flex-positive: 1;
33
+ flex-grow: 1;
34
+ }`;
3
35
  //# sourceMappingURL=tab-panel.base.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tab-panel.base.css.js","sourceRoot":"","sources":["../../../../../src/components/tabs/themes/light/tab-panel.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,2zBAA2zB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;scrollbar-width:var(--scrolbar-size, 0.875rem);scrollbar-color:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host ::-webkit-scrollbar{width:var(--scrolbar-size, 0.875rem);height:var(--scrolbar-size, 0.875rem);background:var(--igc-scrollbar-track-color, hsla(var(--igc-gray-200), var(--igc-gray-a)))}:host ::-webkit-scrollbar-thumb{background:var(--igc-scrollbar-thumb-color, hsla(var(--igc-gray-400), var(--igc-gray-a)))}[hidden]{display:none !important}:host{position:relative;overflow:hidden;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}`;\n"]}
1
+ {"version":3,"file":"tab-panel.base.css.js","sourceRoot":"","sources":["../../../../../src/components/tabs/themes/light/tab-panel.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--scrolbar-size, 0.875rem);\n scrollbar-color: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a))) var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--scrolbar-size, 0.875rem);\n height: var(--scrolbar-size, 0.875rem);\n background: var(--igc-scrollbar-track-color, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a)));\n}\n\n[hidden] {\n display: none !important;\n}\n\n:host {\n position: relative;\n overflow: hidden;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n}`;\n"]}