igniteui-webcomponents 4.0.0-alpha.2 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (240) hide show
  1. package/CHANGELOG.md +33 -2
  2. package/README.md +17 -15
  3. package/components/avatar/themes/avatar.base.css.js +20 -12
  4. package/components/avatar/themes/avatar.base.css.js.map +1 -1
  5. package/components/badge/themes/light/badge.base.css.js +13 -6
  6. package/components/badge/themes/light/badge.base.css.js.map +1 -1
  7. package/components/button/icon-button.js +13 -10
  8. package/components/button/icon-button.js.map +1 -1
  9. package/components/button/themes/button/light/button.base.css.js +41 -37
  10. package/components/button/themes/button/light/button.base.css.js.map +1 -1
  11. package/components/button/themes/button/light/button.bootstrap.css.js +4 -12
  12. package/components/button/themes/button/light/button.bootstrap.css.js.map +1 -1
  13. package/components/button/themes/button/light/button.fluent.css.js +5 -15
  14. package/components/button/themes/button/light/button.fluent.css.js.map +1 -1
  15. package/components/button/themes/button/light/button.indigo.css.js +6 -18
  16. package/components/button/themes/button/light/button.indigo.css.js.map +1 -1
  17. package/components/button/themes/button/light/button.material.css.js +41 -37
  18. package/components/button/themes/button/light/button.material.css.js.map +1 -1
  19. package/components/button/themes/icon-button/light/icon-button.base.css.js +22 -25
  20. package/components/button/themes/icon-button/light/icon-button.base.css.js.map +1 -1
  21. package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js +7 -18
  22. package/components/button/themes/icon-button/light/icon-button.bootstrap.css.js.map +1 -1
  23. package/components/button/themes/icon-button/light/icon-button.fluent.css.js +7 -17
  24. package/components/button/themes/icon-button/light/icon-button.fluent.css.js.map +1 -1
  25. package/components/button/themes/icon-button/light/icon-button.indigo.css.js +7 -17
  26. package/components/button/themes/icon-button/light/icon-button.indigo.css.js.map +1 -1
  27. package/components/button/themes/icon-button/light/icon-button.material.css.js +6 -13
  28. package/components/button/themes/icon-button/light/icon-button.material.css.js.map +1 -1
  29. package/components/calendar/days-view/days-view.d.ts +2 -0
  30. package/components/calendar/days-view/days-view.js +17 -5
  31. package/components/calendar/days-view/days-view.js.map +1 -1
  32. package/components/calendar/themes/calendar.base.css.js +66 -89
  33. package/components/calendar/themes/calendar.base.css.js.map +1 -1
  34. package/components/calendar/themes/days-view.base.css.js +0 -1
  35. package/components/calendar/themes/days-view.base.css.js.map +1 -1
  36. package/components/calendar/themes/fluent/calendar.fluent.css.js +66 -89
  37. package/components/calendar/themes/fluent/calendar.fluent.css.js.map +1 -1
  38. package/components/card/themes/light/card.actions.bootstrap.css.js +13 -6
  39. package/components/card/themes/light/card.actions.bootstrap.css.js.map +1 -1
  40. package/components/card/themes/light/card.actions.material.css.js +13 -6
  41. package/components/card/themes/light/card.actions.material.css.js.map +1 -1
  42. package/components/card/themes/light/card.content.bootstrap.css.js +13 -6
  43. package/components/card/themes/light/card.content.bootstrap.css.js.map +1 -1
  44. package/components/card/themes/light/card.content.indigo.css.js +13 -6
  45. package/components/card/themes/light/card.content.indigo.css.js.map +1 -1
  46. package/components/card/themes/light/card.content.material.css.js +13 -6
  47. package/components/card/themes/light/card.content.material.css.js.map +1 -1
  48. package/components/card/themes/light/card.header.bootstrap.css.js +13 -6
  49. package/components/card/themes/light/card.header.bootstrap.css.js.map +1 -1
  50. package/components/card/themes/light/card.header.fluent.css.js +13 -6
  51. package/components/card/themes/light/card.header.fluent.css.js.map +1 -1
  52. package/components/card/themes/light/card.header.indigo.css.js +13 -6
  53. package/components/card/themes/light/card.header.indigo.css.js.map +1 -1
  54. package/components/card/themes/light/card.header.material.css.js +13 -6
  55. package/components/card/themes/light/card.header.material.css.js.map +1 -1
  56. package/components/card/themes/light/card.material.css.js +13 -6
  57. package/components/card/themes/light/card.material.css.js.map +1 -1
  58. package/components/card/themes/light/card.media.material.css.js +13 -6
  59. package/components/card/themes/light/card.media.material.css.js.map +1 -1
  60. package/components/checkbox/checkbox-base.d.ts +2 -0
  61. package/components/checkbox/checkbox-base.js +3 -0
  62. package/components/checkbox/checkbox-base.js.map +1 -1
  63. package/components/checkbox/themes/light/checkbox.base.css.js +16 -8
  64. package/components/checkbox/themes/light/checkbox.base.css.js.map +1 -1
  65. package/components/checkbox/themes/light/checkbox.bootstrap.css.js +4 -3
  66. package/components/checkbox/themes/light/checkbox.bootstrap.css.js.map +1 -1
  67. package/components/checkbox/themes/light/switch.base.css.js +13 -6
  68. package/components/checkbox/themes/light/switch.base.css.js.map +1 -1
  69. package/components/chip/themes/chip.base.css.js +53 -46
  70. package/components/chip/themes/chip.base.css.js.map +1 -1
  71. package/components/chip/themes/chip.bootstrap.css.js +53 -46
  72. package/components/chip/themes/chip.bootstrap.css.js.map +1 -1
  73. package/components/chip/themes/chip.fluent.css.js +53 -46
  74. package/components/chip/themes/chip.fluent.css.js.map +1 -1
  75. package/components/chip/themes/chip.indigo.css.js +53 -46
  76. package/components/chip/themes/chip.indigo.css.js.map +1 -1
  77. package/components/chip/themes/chip.material.css.js +53 -46
  78. package/components/chip/themes/chip.material.css.js.map +1 -1
  79. package/components/dialog/dialog.d.ts +69 -0
  80. package/components/dialog/dialog.js +168 -0
  81. package/components/dialog/dialog.js.map +1 -0
  82. package/components/dialog/themes/light/dialog.base.css.d.ts +1 -0
  83. package/components/dialog/themes/light/dialog.base.css.js +127 -0
  84. package/components/dialog/themes/light/dialog.base.css.js.map +1 -0
  85. package/components/dialog/themes/light/dialog.bootstrap.css.d.ts +1 -0
  86. package/components/dialog/themes/light/dialog.bootstrap.css.js +42 -0
  87. package/components/dialog/themes/light/dialog.bootstrap.css.js.map +1 -0
  88. package/components/dialog/themes/light/dialog.fluent.css.d.ts +1 -0
  89. package/components/dialog/themes/light/dialog.fluent.css.js +24 -0
  90. package/components/dialog/themes/light/dialog.fluent.css.js.map +1 -0
  91. package/components/dialog/themes/light/dialog.indigo.css.d.ts +1 -0
  92. package/components/dialog/themes/light/dialog.indigo.css.js +17 -0
  93. package/components/dialog/themes/light/dialog.indigo.css.js.map +1 -0
  94. package/components/dialog/themes/light/dialog.material.css.d.ts +1 -0
  95. package/components/dialog/themes/light/dialog.material.css.js +18 -0
  96. package/components/dialog/themes/light/dialog.material.css.js.map +1 -0
  97. package/components/dropdown/dropdown-header.js +2 -1
  98. package/components/dropdown/dropdown-header.js.map +1 -1
  99. package/components/dropdown/dropdown.js +2 -0
  100. package/components/dropdown/dropdown.js.map +1 -1
  101. package/components/dropdown/themes/light/dropdown-group.base.css.js +15 -30
  102. package/components/dropdown/themes/light/dropdown-group.base.css.js.map +1 -1
  103. package/components/dropdown/themes/light/dropdown-group.fluent.css.js +2 -16
  104. package/components/dropdown/themes/light/dropdown-group.fluent.css.js.map +1 -1
  105. package/components/dropdown/themes/light/dropdown-header.base.css.js +15 -6
  106. package/components/dropdown/themes/light/dropdown-header.base.css.js.map +1 -1
  107. package/components/dropdown/themes/light/dropdown-header.fluent.css.d.ts +1 -0
  108. package/components/dropdown/themes/light/dropdown-header.fluent.css.js +6 -0
  109. package/components/dropdown/themes/light/dropdown-header.fluent.css.js.map +1 -0
  110. package/components/dropdown/themes/light/dropdown-item.base.css.js +19 -10
  111. package/components/dropdown/themes/light/dropdown-item.base.css.js.map +1 -1
  112. package/components/dropdown/themes/light/dropdown-item.fluent.css.js +4 -0
  113. package/components/dropdown/themes/light/dropdown-item.fluent.css.js.map +1 -1
  114. package/components/dropdown/themes/light/dropdown.base.css.js +19 -24
  115. package/components/dropdown/themes/light/dropdown.base.css.js.map +1 -1
  116. package/components/dropdown/themes/light/dropdown.fluent.css.js +0 -18
  117. package/components/dropdown/themes/light/dropdown.fluent.css.js.map +1 -1
  118. package/components/expansion-panel/themes/light/expansion-panel.base.css.js +8 -6
  119. package/components/expansion-panel/themes/light/expansion-panel.base.css.js.map +1 -1
  120. package/components/form/form.js +3 -3
  121. package/components/form/form.js.map +1 -1
  122. package/components/icon/icon.material.css.js +19 -11
  123. package/components/icon/icon.material.css.js.map +1 -1
  124. package/components/input/input.d.ts +2 -0
  125. package/components/input/input.js +3 -0
  126. package/components/input/input.js.map +1 -1
  127. package/components/input/themes/light/input.base.css.js +28 -22
  128. package/components/input/themes/light/input.base.css.js.map +1 -1
  129. package/components/input/themes/light/input.bootstrap.css.js +26 -45
  130. package/components/input/themes/light/input.bootstrap.css.js.map +1 -1
  131. package/components/input/themes/light/input.fluent.css.js +20 -34
  132. package/components/input/themes/light/input.fluent.css.js.map +1 -1
  133. package/components/list/themes/light/list-header.base.css.js +15 -6
  134. package/components/list/themes/light/list-header.base.css.js.map +1 -1
  135. package/components/list/themes/light/list-item.base.css.js +19 -10
  136. package/components/list/themes/light/list-item.base.css.js.map +1 -1
  137. package/components/list/themes/light/list.base.css.js +19 -15
  138. package/components/list/themes/light/list.base.css.js.map +1 -1
  139. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.js +13 -6
  140. package/components/nav-drawer/themes/light/nav-drawer-header-item.base.css.js.map +1 -1
  141. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js +13 -6
  142. package/components/nav-drawer/themes/light/nav-drawer-item.base.css.js.map +1 -1
  143. package/components/nav-drawer/themes/light/nav-drawer.base.css.js +13 -6
  144. package/components/nav-drawer/themes/light/nav-drawer.base.css.js.map +1 -1
  145. package/components/navbar/themes/light/navbar.base.css.js +13 -6
  146. package/components/navbar/themes/light/navbar.base.css.js.map +1 -1
  147. package/components/progress/themes/circular/circular.progress.base.css.js +39 -30
  148. package/components/progress/themes/circular/circular.progress.base.css.js.map +1 -1
  149. package/components/progress/themes/circular/circular.progress.bootstrap.css.js +2 -2
  150. package/components/progress/themes/circular/circular.progress.bootstrap.css.js.map +1 -1
  151. package/components/progress/themes/circular/circular.progress.fluent.css.js +1 -1
  152. package/components/progress/themes/circular/circular.progress.fluent.css.js.map +1 -1
  153. package/components/progress/themes/linear/linear.progress.base.css.js +29 -22
  154. package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
  155. package/components/progress/themes/linear/linear.progress.bootstrap.css.js +29 -22
  156. package/components/progress/themes/linear/linear.progress.bootstrap.css.js.map +1 -1
  157. package/components/progress/themes/linear/linear.progress.indigo.css.js +13 -6
  158. package/components/progress/themes/linear/linear.progress.indigo.css.js.map +1 -1
  159. package/components/radio/radio.d.ts +3 -1
  160. package/components/radio/radio.js +4 -1
  161. package/components/radio/radio.js.map +1 -1
  162. package/components/radio/themes/light/radio.base.css.js +13 -6
  163. package/components/radio/themes/light/radio.base.css.js.map +1 -1
  164. package/components/radio-group/radio-group.base.css.js +13 -6
  165. package/components/radio-group/radio-group.base.css.js.map +1 -1
  166. package/components/rating/rating-symbol.base.css.js +14 -6
  167. package/components/rating/rating-symbol.base.css.js.map +1 -1
  168. package/components/rating/rating.base.css.js +18 -11
  169. package/components/rating/rating.base.css.js.map +1 -1
  170. package/components/ripple/ripple.material.css.js +13 -6
  171. package/components/ripple/ripple.material.css.js.map +1 -1
  172. package/components/select/select.d.ts +4 -0
  173. package/components/select/select.js +20 -8
  174. package/components/select/select.js.map +1 -1
  175. package/components/select/themes/light/select.base.css.js +26 -24
  176. package/components/select/themes/light/select.base.css.js.map +1 -1
  177. package/components/select/themes/light/select.fluent.css.js +6 -8
  178. package/components/select/themes/light/select.fluent.css.js.map +1 -1
  179. package/components/slider/range-slider.d.ts +2 -0
  180. package/components/slider/range-slider.js +65 -0
  181. package/components/slider/range-slider.js.map +1 -1
  182. package/components/slider/slider-base.d.ts +9 -7
  183. package/components/slider/slider-base.js +16 -2
  184. package/components/slider/slider-base.js.map +1 -1
  185. package/components/slider/themes/light/slider.base.css.js +18 -11
  186. package/components/slider/themes/light/slider.base.css.js.map +1 -1
  187. package/components/slider/themes/light/slider.bootstrap.css.js +2 -2
  188. package/components/slider/themes/light/slider.bootstrap.css.js.map +1 -1
  189. package/components/slider/themes/light/slider.fluent.css.js +29 -11
  190. package/components/slider/themes/light/slider.fluent.css.js.map +1 -1
  191. package/components/slider/themes/light/slider.indigo.css.js +4 -4
  192. package/components/slider/themes/light/slider.indigo.css.js.map +1 -1
  193. package/components/slider/themes/light/slider.material.css.js +5 -5
  194. package/components/slider/themes/light/slider.material.css.js.map +1 -1
  195. package/components/snackbar/themes/light/snackbar.base.css.js +13 -6
  196. package/components/snackbar/themes/light/snackbar.base.css.js.map +1 -1
  197. package/components/tabs/tab-panel.js +1 -0
  198. package/components/tabs/tab-panel.js.map +1 -1
  199. package/components/tabs/tabs.js +2 -3
  200. package/components/tabs/tabs.js.map +1 -1
  201. package/components/tabs/themes/light/tab-panel.base.css.js +13 -7
  202. package/components/tabs/themes/light/tab-panel.base.css.js.map +1 -1
  203. package/components/tabs/themes/light/tab.base.css.js +13 -6
  204. package/components/tabs/themes/light/tab.base.css.js.map +1 -1
  205. package/components/tabs/themes/light/tabs.base.css.js +13 -6
  206. package/components/tabs/themes/light/tabs.base.css.js.map +1 -1
  207. package/components/toggle/toggle.controller.d.ts +1 -1
  208. package/components/toggle/toggle.controller.js.map +1 -1
  209. package/components/toggle/toggle.directive.d.ts +2 -2
  210. package/components/toggle/toggle.directive.js.map +1 -1
  211. package/components/tree/themes/light/tree-item.base.css.js +17 -28
  212. package/components/tree/themes/light/tree-item.base.css.js.map +1 -1
  213. package/components/tree/themes/light/tree.base.css.js +25 -6
  214. package/components/tree/themes/light/tree.base.css.js.map +1 -1
  215. package/custom-elements.json +129 -0
  216. package/index.d.ts +3 -1
  217. package/index.js +2 -0
  218. package/index.js.map +1 -1
  219. package/package.json +3 -3
  220. package/themes/dark/bootstrap.css +159 -91
  221. package/themes/dark/fluent.css +162 -94
  222. package/themes/dark/indigo.css +79 -11
  223. package/themes/dark/material.css +160 -92
  224. package/themes/light/bootstrap.css +158 -90
  225. package/themes/light/fluent.css +158 -90
  226. package/themes/light/indigo.css +78 -10
  227. package/themes/light/material.css +159 -91
  228. package/theming/config.d.ts +1 -1
  229. package/theming/config.js +1 -2
  230. package/theming/config.js.map +1 -1
  231. package/theming/index.d.ts +1 -1
  232. package/theming/index.js +1 -1
  233. package/theming/index.js.map +1 -1
  234. package/theming/theming-controller.d.ts +1 -1
  235. package/theming/theming-controller.js.map +1 -1
  236. package/theming/theming-decorator.d.ts +1 -1
  237. package/theming/theming-decorator.js.map +1 -1
  238. package/theming/theming-event.d.ts +1 -1
  239. package/theming/theming-event.js.map +1 -1
  240. package/vscode-html-custom-data.json +39 -1
@@ -1,10 +1,17 @@
1
1
  import { css } from 'lit';
2
2
  export const styles = css `:host {
3
+ --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);
4
+ --is-medium:
5
+ min(
6
+ clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),
7
+ clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)
8
+ );
9
+ --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);
3
10
  position: relative;
4
11
  -webkit-box-sizing: border-box;
5
12
  box-sizing: border-box;
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)));
13
+ scrollbar-width: var(--ig-scrollbar-size);
14
+ scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);
8
15
  }
9
16
  :host *,
10
17
  :host *::before,
@@ -13,12 +20,12 @@ export const styles = css `:host {
13
20
  box-sizing: border-box;
14
21
  }
15
22
  :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)));
23
+ width: var(--ig-scrollbar-size);
24
+ height: var(--ig-scrollbar-size);
25
+ background: var(--ig-scrollbar-track-background);
19
26
  }
20
27
  :host ::-webkit-scrollbar-thumb {
21
- background: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a)));
28
+ background: var(--ig-scrollbar-thumb-background);
22
29
  }
23
30
 
24
31
  [hidden] {
@@ -1 +1 @@
1
- {"version":3,"file":"tab.base.css.js","sourceRoot":"","sources":["../../../../../src/components/tabs/themes/light/tab.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqIvB,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/* stylelint-disable max-line-length */\n:host {\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n min-width: 5.625rem;\n max-width: 22.5rem;\n word-wrap: break-word;\n padding: 0.75rem 1rem;\n overflow: hidden;\n cursor: pointer;\n position: relative;\n -webkit-transition: all 0.3s cubic-bezier(0.35, 0, 0.25, 1);\n -o-transition: all 0.3s cubic-bezier(0.35, 0, 0.25, 1);\n transition: all 0.3s cubic-bezier(0.35, 0, 0.25, 1);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n background: hsla(var(--ig-surface-500), var(--ig-surface-a));\n color: hsla(var(--ig-gray-700), var(--ig-gray-a));\n}\n\n:host(:hover),\n:host(:focus-within) {\n background: var(--hover-background, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n color: hsla(var(--ig-gray-700), var(--ig-gray-a));\n}\n\n:host([selected]) {\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n:host([selected]) ::slotted(igc-icon) {\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n\n:host([selected]:hover),\n:host([selected]:focus-within) {\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n\n:host([disabled]) {\n pointer-events: none;\n cursor: initial;\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n}\n\n[part=base] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n outline-style: none;\n gap: 0.5rem;\n}\n\n[part=content] {\n font-family: var(--ig-button-font-family);\n font-size: var(--ig-button-font-size);\n font-weight: var(--ig-button-font-weight);\n font-style: var(--ig-button-font-style);\n line-height: var(--ig-button-line-height);\n letter-spacing: var(--ig-button-letter-spacing);\n text-transform: var(--ig-button-text-transform);\n margin-top: var(--ig-button-margin-top);\n margin-bottom: var(--ig-button-margin-bottom);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n text-align: center;\n outline-style: none;\n}\n[part=content] ::slotted(*) {\n display: -webkit-inline-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n[part=content] ::slotted(igc-icon:not(:only-child)) {\n margin-bottom: 0.5rem;\n}\n\n::slotted(igc-icon) {\n --size: 1.5rem;\n}`;\n"]}
1
+ {"version":3,"file":"tab.base.css.js","sourceRoot":"","sources":["../../../../../src/components/tabs/themes/light/tab.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4IvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);\n --is-medium:\n min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n[hidden] {\n display: none !important;\n}\n\n/* stylelint-disable max-line-length */\n:host {\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n min-width: 5.625rem;\n max-width: 22.5rem;\n word-wrap: break-word;\n padding: 0.75rem 1rem;\n overflow: hidden;\n cursor: pointer;\n position: relative;\n -webkit-transition: all 0.3s cubic-bezier(0.35, 0, 0.25, 1);\n -o-transition: all 0.3s cubic-bezier(0.35, 0, 0.25, 1);\n transition: all 0.3s cubic-bezier(0.35, 0, 0.25, 1);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n background: hsla(var(--ig-surface-500), var(--ig-surface-a));\n color: hsla(var(--ig-gray-700), var(--ig-gray-a));\n}\n\n:host(:hover),\n:host(:focus-within) {\n background: var(--hover-background, hsla(var(--ig-gray-200), var(--ig-gray-a)));\n color: hsla(var(--ig-gray-700), var(--ig-gray-a));\n}\n\n:host([selected]) {\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n:host([selected]) ::slotted(igc-icon) {\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n\n:host([selected]:hover),\n:host([selected]:focus-within) {\n color: hsla(var(--ig-primary-500), var(--ig-primary-a));\n}\n\n:host([disabled]) {\n pointer-events: none;\n cursor: initial;\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n}\n\n[part=base] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n outline-style: none;\n gap: 0.5rem;\n}\n\n[part=content] {\n font-family: var(--ig-button-font-family);\n font-size: var(--ig-button-font-size);\n font-weight: var(--ig-button-font-weight);\n font-style: var(--ig-button-font-style);\n line-height: var(--ig-button-line-height);\n letter-spacing: var(--ig-button-letter-spacing);\n text-transform: var(--ig-button-text-transform);\n margin-top: var(--ig-button-margin-top);\n margin-bottom: var(--ig-button-margin-bottom);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n text-align: center;\n outline-style: none;\n}\n[part=content] ::slotted(*) {\n display: -webkit-inline-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n[part=content] ::slotted(igc-icon:not(:only-child)) {\n margin-bottom: 0.5rem;\n}\n\n::slotted(igc-icon) {\n --size: 1.5rem;\n}`;\n"]}
@@ -1,10 +1,17 @@
1
1
  import { css } from 'lit';
2
2
  export const styles = css `:host {
3
+ --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);
4
+ --is-medium:
5
+ min(
6
+ clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),
7
+ clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)
8
+ );
9
+ --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);
3
10
  position: relative;
4
11
  -webkit-box-sizing: border-box;
5
12
  box-sizing: border-box;
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)));
13
+ scrollbar-width: var(--ig-scrollbar-size);
14
+ scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);
8
15
  }
9
16
  :host *,
10
17
  :host *::before,
@@ -13,12 +20,12 @@ export const styles = css `:host {
13
20
  box-sizing: border-box;
14
21
  }
15
22
  :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)));
23
+ width: var(--ig-scrollbar-size);
24
+ height: var(--ig-scrollbar-size);
25
+ background: var(--ig-scrollbar-track-background);
19
26
  }
20
27
  :host ::-webkit-scrollbar-thumb {
21
- background: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a)));
28
+ background: var(--ig-scrollbar-thumb-background);
22
29
  }
23
30
 
24
31
  [hidden] {
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.base.css.js","sourceRoot":"","sources":["../../../../../src/components/tabs/themes/light/tabs.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgKvB,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/* stylelint-disable max-line-length */\n:host {\n display: block;\n}\n\n:host([alignment=start]) [part=headers-scroll] ::slotted(igc-tab:last-of-type) {\n -webkit-margin-end: auto;\n margin-inline-end: auto;\n}\n\n:host([alignment=end]) [part=headers-scroll] ::slotted(igc-tab:first-of-type) {\n -webkit-margin-start: auto;\n margin-inline-start: auto;\n}\n\n:host([alignment=center]) [part=headers-scroll] ::slotted(igc-tab:first-of-type) {\n -webkit-margin-start: auto;\n margin-inline-start: auto;\n}\n:host([alignment=center]) [part=headers-scroll] ::slotted(igc-tab:last-of-type) {\n -webkit-margin-end: auto;\n margin-inline-end: auto;\n}\n\n:host([alignment=justify]) [part=headers-scroll] ::slotted(igc-tab) {\n -ms-flex-preferred-size: 100px;\n flex-basis: 100px;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n}\n\n[part=headers] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n overflow: hidden;\n min-height: 2.625rem;\n background: hsla(var(--ig-surface-500), var(--ig-surface-a));\n}\n\n[part=headers-content] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n scroll-behavior: smooth;\n overflow: hidden;\n}\n\n[part=headers-wrapper] {\n position: relative;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n}\n\n[part=headers-scroll] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n height: 100%;\n}\n\n[part=selected-indicator] {\n position: absolute;\n inset-inline-start: 0;\n bottom: 0;\n -webkit-transform: translateX(0);\n -ms-transform: translateX(0);\n transform: translateX(0);\n height: 0.125rem;\n min-width: 5.625rem;\n background: hsla(var(--ig-primary-500), var(--ig-primary-a));\n -webkit-transition: width 0.2s cubic-bezier(0.35, 0, 0.25, 1), -webkit-transform 0.3s cubic-bezier(0.35, 0, 0.25, 1);\n transition: width 0.2s cubic-bezier(0.35, 0, 0.25, 1), -webkit-transform 0.3s cubic-bezier(0.35, 0, 0.25, 1);\n -o-transition: transform 0.3s cubic-bezier(0.35, 0, 0.25, 1), width 0.2s cubic-bezier(0.35, 0, 0.25, 1);\n transition: transform 0.3s cubic-bezier(0.35, 0, 0.25, 1), width 0.2s cubic-bezier(0.35, 0, 0.25, 1);\n transition: transform 0.3s cubic-bezier(0.35, 0, 0.25, 1), width 0.2s cubic-bezier(0.35, 0, 0.25, 1), -webkit-transform 0.3s cubic-bezier(0.35, 0, 0.25, 1);\n}\n\n[part=start-scroll-button],\n[part=end-scroll-button] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n z-index: 1;\n border: none;\n padding: 0;\n min-width: 3rem;\n width: 3rem;\n cursor: pointer;\n position: relative;\n background: hsla(var(--ig-surface-500), var(--ig-surface-a));\n}\n[part=start-scroll-button]:hover, [part=start-scroll-button]:focus,\n[part=end-scroll-button]:hover,\n[part=end-scroll-button]:focus {\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n}\n[part=start-scroll-button] ::slotted(*),\n[part=end-scroll-button] ::slotted(*) {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n\nigc-icon-button::part(base) {\n color: hsla(var(--ig-gray-700), var(--ig-gray-a));\n}\nigc-icon-button::part(base):hover, igc-icon-button::part(base):focus-within {\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n background: transparent;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n\nigc-icon-button[disabled]::part(base) {\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n}\n\n:host([dir=rtl]) [part=start-scroll-button],\n:host([dir=rtl]) [part=end-scroll-button] {\n -webkit-transform: scaleX(-1);\n -ms-transform: scaleX(-1);\n transform: scaleX(-1);\n}`;\n"]}
1
+ {"version":3,"file":"tabs.base.css.js","sourceRoot":"","sources":["../../../../../src/components/tabs/themes/light/tabs.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuKvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);\n --is-medium:\n min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n[hidden] {\n display: none !important;\n}\n\n/* stylelint-disable max-line-length */\n:host {\n display: block;\n}\n\n:host([alignment=start]) [part=headers-scroll] ::slotted(igc-tab:last-of-type) {\n -webkit-margin-end: auto;\n margin-inline-end: auto;\n}\n\n:host([alignment=end]) [part=headers-scroll] ::slotted(igc-tab:first-of-type) {\n -webkit-margin-start: auto;\n margin-inline-start: auto;\n}\n\n:host([alignment=center]) [part=headers-scroll] ::slotted(igc-tab:first-of-type) {\n -webkit-margin-start: auto;\n margin-inline-start: auto;\n}\n:host([alignment=center]) [part=headers-scroll] ::slotted(igc-tab:last-of-type) {\n -webkit-margin-end: auto;\n margin-inline-end: auto;\n}\n\n:host([alignment=justify]) [part=headers-scroll] ::slotted(igc-tab) {\n -ms-flex-preferred-size: 100px;\n flex-basis: 100px;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n}\n\n[part=headers] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n overflow: hidden;\n min-height: 2.625rem;\n background: hsla(var(--ig-surface-500), var(--ig-surface-a));\n}\n\n[part=headers-content] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n scroll-behavior: smooth;\n overflow: hidden;\n}\n\n[part=headers-wrapper] {\n position: relative;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n}\n\n[part=headers-scroll] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n height: 100%;\n}\n\n[part=selected-indicator] {\n position: absolute;\n inset-inline-start: 0;\n bottom: 0;\n -webkit-transform: translateX(0);\n -ms-transform: translateX(0);\n transform: translateX(0);\n height: 0.125rem;\n min-width: 5.625rem;\n background: hsla(var(--ig-primary-500), var(--ig-primary-a));\n -webkit-transition: width 0.2s cubic-bezier(0.35, 0, 0.25, 1), -webkit-transform 0.3s cubic-bezier(0.35, 0, 0.25, 1);\n transition: width 0.2s cubic-bezier(0.35, 0, 0.25, 1), -webkit-transform 0.3s cubic-bezier(0.35, 0, 0.25, 1);\n -o-transition: transform 0.3s cubic-bezier(0.35, 0, 0.25, 1), width 0.2s cubic-bezier(0.35, 0, 0.25, 1);\n transition: transform 0.3s cubic-bezier(0.35, 0, 0.25, 1), width 0.2s cubic-bezier(0.35, 0, 0.25, 1);\n transition: transform 0.3s cubic-bezier(0.35, 0, 0.25, 1), width 0.2s cubic-bezier(0.35, 0, 0.25, 1), -webkit-transform 0.3s cubic-bezier(0.35, 0, 0.25, 1);\n}\n\n[part=start-scroll-button],\n[part=end-scroll-button] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n z-index: 1;\n border: none;\n padding: 0;\n min-width: 3rem;\n width: 3rem;\n cursor: pointer;\n position: relative;\n background: hsla(var(--ig-surface-500), var(--ig-surface-a));\n}\n[part=start-scroll-button]:hover, [part=start-scroll-button]:focus,\n[part=end-scroll-button]:hover,\n[part=end-scroll-button]:focus {\n background: hsla(var(--ig-gray-100), var(--ig-gray-a));\n}\n[part=start-scroll-button] ::slotted(*),\n[part=end-scroll-button] ::slotted(*) {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n\nigc-icon-button::part(base) {\n color: hsla(var(--ig-gray-700), var(--ig-gray-a));\n}\nigc-icon-button::part(base):hover, igc-icon-button::part(base):focus-within {\n color: hsla(var(--ig-gray-900), var(--ig-gray-a));\n background: transparent;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n\nigc-icon-button[disabled]::part(base) {\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n}\n\n:host([dir=rtl]) [part=start-scroll-button],\n:host([dir=rtl]) [part=end-scroll-button] {\n -webkit-transform: scaleX(-1);\n -ms-transform: scaleX(-1);\n transform: scaleX(-1);\n}`;\n"]}
@@ -1,7 +1,7 @@
1
1
  import { ReactiveController, ReactiveControllerHost } from 'lit';
2
2
  import { IgcToggleDirective } from './toggle.directive.js';
3
3
  import type { DirectiveResult } from 'lit/directive';
4
- import type { IgcToggleComponent } from './types';
4
+ import type { IgcToggleComponent } from './types.js';
5
5
  declare type ToggleHost = ReactiveControllerHost & IgcToggleComponent & HTMLElement;
6
6
  /**
7
7
  * Toggle controller configuration
@@ -1 +1 @@
1
- {"version":3,"file":"toggle.controller.js","sourceRoot":"","sources":["../../../src/components/toggle/toggle.controller.ts"],"names":[],"mappings":"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","sourcesContent":["import { ReactiveController, ReactiveControllerHost } from 'lit';\nimport { igcToggle, IgcToggleDirective } from './toggle.directive.js';\nimport type { DirectiveResult } from 'lit/directive';\nimport type { IgcToggleComponent } from './types';\n\ntype ToggleHost = ReactiveControllerHost & IgcToggleComponent & HTMLElement;\n\n/**\n * Toggle controller configuration\n */\ninterface ToggleControllerConfig {\n /** The element, relative to which, the toggle will be positioned. */\n target?: HTMLElement;\n /**\n * The function to call when closing the toggle element from an user interaction (scroll, click).\n */\n closeCallback?: Function;\n}\n\n/**\n * Controller, bundling the creation of a toggle directive and handling global events,\n * related to the configuration of togglable components.\n */\nexport class IgcToggleController implements ReactiveController {\n private host: IgcToggleComponent & HTMLElement;\n private sourceElement?: Element;\n private initialScrollTop = 0;\n private initialScrollLeft = 0;\n private _target!: HTMLElement;\n private _hide?: Function;\n private _abortController = new AbortController();\n\n /**\n * Abort controller used to clean up document level event listeners\n * See https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#add_an_abortable_listener\n */\n protected get abortController() {\n if (this._abortController.signal.aborted) {\n this._abortController = new AbortController();\n }\n return this._abortController;\n }\n\n /** The directive that marks the toggle. */\n public toggleDirective!: DirectiveResult<typeof IgcToggleDirective>;\n public rendered!: Promise<void>;\n\n public set target(value: HTMLElement) {\n this._target = value;\n this.update();\n }\n\n /** The element, relative to which, the toggle will be positioned. */\n public get target() {\n return this._target;\n }\n\n constructor(host: ToggleHost, config?: ToggleControllerConfig) {\n (this.host = host).addController(this);\n\n if (config?.target) {\n this._target = config.target;\n }\n\n if (config?.closeCallback) {\n this._hide = config.closeCallback;\n }\n\n this.update();\n }\n\n public hostDisconnected() {\n this.abortController.abort();\n }\n\n public update() {\n this.toggleDirective = igcToggle(this.target, this.host, this);\n this.configureListeners();\n }\n\n protected hide() {\n this._hide ? this._hide() : this.host.hide();\n }\n\n private addEventListeners() {\n const options: AddEventListenerOptions = {\n capture: true,\n signal: this.abortController.signal,\n };\n\n if (!this.host.keepOpenOnOutsideClick) {\n document.addEventListener('click', this.documentClicked, options);\n }\n\n document.addEventListener('scroll', this.handleScroll, options);\n }\n\n private configureListeners() {\n this.host.open ? this.addEventListeners() : this.abortController.abort();\n }\n\n private blockScroll = (event: Event) => {\n event.preventDefault();\n if (!this.sourceElement || this.sourceElement !== event.target) {\n this.sourceElement = event.target as Element;\n this.initialScrollTop =\n this.sourceElement.scrollTop ??\n this.sourceElement.firstElementChild?.scrollTop;\n this.initialScrollLeft =\n this.sourceElement.scrollLeft ??\n this.sourceElement.firstElementChild?.scrollLeft;\n }\n\n this.sourceElement.scrollTop = this.initialScrollTop;\n this.sourceElement.scrollLeft = this.initialScrollLeft;\n if (this.sourceElement.firstElementChild) {\n this.sourceElement.firstElementChild.scrollTop = this.initialScrollTop;\n this.sourceElement.firstElementChild.scrollLeft = this.initialScrollLeft;\n }\n };\n\n /** The document's click event handler to override in the host component if necessary. */\n private documentClicked = (event: MouseEvent) => {\n if (!this.host.keepOpenOnOutsideClick) {\n const tree = event.composed ? event.composedPath() : [event.target];\n\n if (tree.includes(this.host) || tree.includes(this.target)) {\n return;\n }\n\n this.hide();\n }\n };\n\n /** The document's scroll event handler to override in the host component if necessary. */\n private handleScroll = (event: Event) => {\n switch (this.host.scrollStrategy) {\n case 'scroll':\n break;\n case 'block':\n this.blockScroll(event);\n break;\n case 'close':\n this.hide();\n break;\n }\n };\n}\n"]}
1
+ {"version":3,"file":"toggle.controller.js","sourceRoot":"","sources":["../../../src/components/toggle/toggle.controller.ts"],"names":[],"mappings":"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","sourcesContent":["import { ReactiveController, ReactiveControllerHost } from 'lit';\nimport { igcToggle, IgcToggleDirective } from './toggle.directive.js';\nimport type { DirectiveResult } from 'lit/directive';\nimport type { IgcToggleComponent } from './types.js';\n\ntype ToggleHost = ReactiveControllerHost & IgcToggleComponent & HTMLElement;\n\n/**\n * Toggle controller configuration\n */\ninterface ToggleControllerConfig {\n /** The element, relative to which, the toggle will be positioned. */\n target?: HTMLElement;\n /**\n * The function to call when closing the toggle element from an user interaction (scroll, click).\n */\n closeCallback?: Function;\n}\n\n/**\n * Controller, bundling the creation of a toggle directive and handling global events,\n * related to the configuration of togglable components.\n */\nexport class IgcToggleController implements ReactiveController {\n private host: IgcToggleComponent & HTMLElement;\n private sourceElement?: Element;\n private initialScrollTop = 0;\n private initialScrollLeft = 0;\n private _target!: HTMLElement;\n private _hide?: Function;\n private _abortController = new AbortController();\n\n /**\n * Abort controller used to clean up document level event listeners\n * See https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#add_an_abortable_listener\n */\n protected get abortController() {\n if (this._abortController.signal.aborted) {\n this._abortController = new AbortController();\n }\n return this._abortController;\n }\n\n /** The directive that marks the toggle. */\n public toggleDirective!: DirectiveResult<typeof IgcToggleDirective>;\n public rendered!: Promise<void>;\n\n public set target(value: HTMLElement) {\n this._target = value;\n this.update();\n }\n\n /** The element, relative to which, the toggle will be positioned. */\n public get target() {\n return this._target;\n }\n\n constructor(host: ToggleHost, config?: ToggleControllerConfig) {\n (this.host = host).addController(this);\n\n if (config?.target) {\n this._target = config.target;\n }\n\n if (config?.closeCallback) {\n this._hide = config.closeCallback;\n }\n\n this.update();\n }\n\n public hostDisconnected() {\n this.abortController.abort();\n }\n\n public update() {\n this.toggleDirective = igcToggle(this.target, this.host, this);\n this.configureListeners();\n }\n\n protected hide() {\n this._hide ? this._hide() : this.host.hide();\n }\n\n private addEventListeners() {\n const options: AddEventListenerOptions = {\n capture: true,\n signal: this.abortController.signal,\n };\n\n if (!this.host.keepOpenOnOutsideClick) {\n document.addEventListener('click', this.documentClicked, options);\n }\n\n document.addEventListener('scroll', this.handleScroll, options);\n }\n\n private configureListeners() {\n this.host.open ? this.addEventListeners() : this.abortController.abort();\n }\n\n private blockScroll = (event: Event) => {\n event.preventDefault();\n if (!this.sourceElement || this.sourceElement !== event.target) {\n this.sourceElement = event.target as Element;\n this.initialScrollTop =\n this.sourceElement.scrollTop ??\n this.sourceElement.firstElementChild?.scrollTop;\n this.initialScrollLeft =\n this.sourceElement.scrollLeft ??\n this.sourceElement.firstElementChild?.scrollLeft;\n }\n\n this.sourceElement.scrollTop = this.initialScrollTop;\n this.sourceElement.scrollLeft = this.initialScrollLeft;\n if (this.sourceElement.firstElementChild) {\n this.sourceElement.firstElementChild.scrollTop = this.initialScrollTop;\n this.sourceElement.firstElementChild.scrollLeft = this.initialScrollLeft;\n }\n };\n\n /** The document's click event handler to override in the host component if necessary. */\n private documentClicked = (event: MouseEvent) => {\n if (!this.host.keepOpenOnOutsideClick) {\n const tree = event.composed ? event.composedPath() : [event.target];\n\n if (tree.includes(this.host) || tree.includes(this.target)) {\n return;\n }\n\n this.hide();\n }\n };\n\n /** The document's scroll event handler to override in the host component if necessary. */\n private handleScroll = (event: Event) => {\n switch (this.host.scrollStrategy) {\n case 'scroll':\n break;\n case 'block':\n this.blockScroll(event);\n break;\n case 'close':\n this.hide();\n break;\n }\n };\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import { Directive, PartInfo } from 'lit/directive.js';
2
- import type { IgcToggleOptions } from './types';
2
+ import type { IgcToggleOptions } from './types.js';
3
3
  import type { IgcToggleController } from './toggle.controller.js';
4
4
  export declare class IgcToggleDirective extends Directive {
5
5
  private part;
@@ -11,4 +11,4 @@ export declare class IgcToggleDirective extends Directive {
11
11
  constructor(partInfo: PartInfo);
12
12
  render(target: HTMLElement, options: IgcToggleOptions, controller?: IgcToggleController): symbol;
13
13
  }
14
- export declare const igcToggle: (target: HTMLElement, options: IgcToggleOptions, controller?: IgcToggleController | undefined) => import("lit-html/directive").DirectiveResult<typeof IgcToggleDirective>;
14
+ export declare const igcToggle: (target: HTMLElement, options: IgcToggleOptions, controller?: IgcToggleController | undefined) => import("lit-html/directive.js").DirectiveResult<typeof IgcToggleDirective>;
@@ -1 +1 @@
1
- {"version":3,"file":"toggle.directive.js","sourceRoot":"","sources":["../../../src/components/toggle/toggle.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,IAAI,EACJ,MAAM,EACN,KAAK,EACL,IAAI,GAEL,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,SAAS,EACT,SAAS,EAGT,QAAQ,GACT,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAI/B,MAAM,OAAO,kBAAmB,SAAQ,SAAS;IAyF/C,YAAY,QAAkB;QAC5B,KAAK,CAAC,QAAQ,CAAC,CAAC;QAxFV,iBAAY,GAAI;YACtB,QAAQ,EAAE,IAAI;SACf,CAAC;QAuFA,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;QACrB,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,OAAO,EAAE;YACtC,MAAM,IAAI,KAAK,CACb,+DAA+D,CAChE,CAAC;SACH;IACH,CAAC;IAzFO,cAAc,CACpB,MAAmB,EACnB,OAAyB,EACzB,UAAgC;;QAEhC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEhE,IAAI,CAAC,MAAM,EAAE;YACX,IAAI,UAAU,EAAE;gBACd,UAAU,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;aACzC;YACD,OAAO,QAAQ,CAAC;SACjB;QAED,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE;YAC5D,SAAS,EAAE,MAAA,OAAO,CAAC,SAAS,mCAAI,cAAc;YAC9C,QAAQ,EAAE,MAAA,OAAO,CAAC,gBAAgB,mCAAI,UAAU;YAChD,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;SAC3C,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE;YACnB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE;gBACxC,IAAI,EAAE,CAAC;gBACP,GAAG,EAAE,CAAC;gBACN,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK;aACtC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,UAAU,EAAE;YACd,UAAU,CAAC,QAAQ,GAAG,OAAO,CAAC;SAC/B;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,qBAAqB,CAAC,IAAI,GAAG,KAAK;QACxC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACzB,IAAI,CAAC,eAAe,GAAI,IAAI,CAAC,IAAoB,CAAC,OAAsB,CAAC;SAC1E;QAED,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QAExD,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAEO,gBAAgB,CAAC,OAAyB;QAChD,MAAM,UAAU,GAAiB,EAAE,CAAC;QAEpC,IAAI,OAAO,CAAC,QAAQ,EAAE;YACpB,UAAU,CAAC,IAAI,CACb,MAAM,CAAC;gBACL,QAAQ,EAAE,OAAO,CAAC,QAAQ;aAC3B,CAAC,CACH,CAAC;SACH;QAED,IAAI,OAAO,CAAC,IAAI,EAAE;YAChB,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;SACzB;QAED,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;SAC3C;QAGD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QAEzD,IAAI,OAAO,CAAC,SAAS,EAAE;YACrB,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;YAC7C,UAAU,CAAC,IAAI,CACb,IAAI,CAAC;gBACH,KAAK,CAAC,EAAE,KAAK,EAAE;oBACb,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE;wBACnC,KAAK,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,IAAI;qBACpC,CAAC,CAAC;gBACL,CAAC;aACF,CAAC,CACH,CAAC;SACH;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAYM,MAAM,CACX,MAAmB,EACnB,OAAyB,EACzB,UAAgC;QAEhC,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IAC1D,CAAC;CACF;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,SAAS,CAAC,kBAAkB,CAAC,CAAC","sourcesContent":["import {\n computePosition,\n flip,\n offset,\n shift,\n size,\n Middleware,\n} from '@floating-ui/dom';\nimport {\n directive,\n Directive,\n PartInfo,\n ElementPart,\n PartType,\n} from 'lit/directive.js';\nimport { noChange } from 'lit';\nimport type { IgcToggleOptions } from './types';\nimport type { IgcToggleController } from './toggle.controller.js';\n\nexport class IgcToggleDirective extends Directive {\n private part: PartInfo;\n private shiftOptions? = {\n mainAxis: true,\n };\n\n private floatingElement!: HTMLElement;\n\n private updatePosition(\n target: HTMLElement,\n options: IgcToggleOptions,\n controller?: IgcToggleController\n ) {\n this.floatingElement = this.createFloatingElement(options.open);\n\n if (!target) {\n if (controller) {\n controller.rendered = Promise.resolve();\n }\n return noChange;\n }\n\n const promise = computePosition(target, this.floatingElement, {\n placement: options.placement ?? 'bottom-start',\n strategy: options.positionStrategy ?? 'absolute',\n middleware: this.createMiddleware(options),\n }).then(({ x, y }) => {\n Object.assign(this.floatingElement.style, {\n left: 0,\n top: 0,\n transform: `translate(${x}px,${y}px)`,\n });\n });\n\n if (controller) {\n controller.rendered = promise;\n }\n\n return noChange;\n }\n\n private createFloatingElement(open = false) {\n if (!this.floatingElement) {\n this.floatingElement = (this.part as ElementPart).element as HTMLElement;\n }\n\n this.floatingElement.style.display = open ? '' : 'none';\n\n return this.floatingElement;\n }\n\n private createMiddleware(options: IgcToggleOptions) {\n const middleware: Middleware[] = [];\n\n if (options.distance) {\n middleware.push(\n offset({\n mainAxis: options.distance,\n })\n );\n }\n\n if (options.flip) {\n middleware.push(flip());\n }\n\n if (this.shiftOptions) {\n middleware.push(shift(this.shiftOptions));\n }\n\n // Toggling `sameWidth` does not reset the applied style on the floater element\n Object.assign(this.floatingElement.style, { width: '' });\n\n if (options.sameWidth) {\n const floatingElement = this.floatingElement;\n middleware.push(\n size({\n apply({ rects }) {\n Object.assign(floatingElement.style, {\n width: `${rects.reference.width}px`,\n });\n },\n })\n );\n }\n\n return middleware;\n }\n\n constructor(partInfo: PartInfo) {\n super(partInfo);\n this.part = partInfo;\n if (partInfo.type !== PartType.ELEMENT) {\n throw new Error(\n 'The `igcToggle` directive must be attached to an element tag.'\n );\n }\n }\n\n public render(\n target: HTMLElement,\n options: IgcToggleOptions,\n controller?: IgcToggleController\n ) {\n return this.updatePosition(target, options, controller);\n }\n}\n\nexport const igcToggle = directive(IgcToggleDirective);\n"]}
1
+ {"version":3,"file":"toggle.directive.js","sourceRoot":"","sources":["../../../src/components/toggle/toggle.directive.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n computePosition,\n flip,\n offset,\n shift,\n size,\n Middleware,\n} from '@floating-ui/dom';\nimport {\n directive,\n Directive,\n PartInfo,\n ElementPart,\n PartType,\n} from 'lit/directive.js';\nimport { noChange } from 'lit';\nimport type { IgcToggleOptions } from './types.js';\nimport type { IgcToggleController } from './toggle.controller.js';\n\nexport class IgcToggleDirective extends Directive {\n private part: PartInfo;\n private shiftOptions? = {\n mainAxis: true,\n };\n\n private floatingElement!: HTMLElement;\n\n private updatePosition(\n target: HTMLElement,\n options: IgcToggleOptions,\n controller?: IgcToggleController\n ) {\n this.floatingElement = this.createFloatingElement(options.open);\n\n if (!target) {\n if (controller) {\n controller.rendered = Promise.resolve();\n }\n return noChange;\n }\n\n const promise = computePosition(target, this.floatingElement, {\n placement: options.placement ?? 'bottom-start',\n strategy: options.positionStrategy ?? 'absolute',\n middleware: this.createMiddleware(options),\n }).then(({ x, y }) => {\n Object.assign(this.floatingElement.style, {\n left: 0,\n top: 0,\n transform: `translate(${x}px,${y}px)`,\n });\n });\n\n if (controller) {\n controller.rendered = promise;\n }\n\n return noChange;\n }\n\n private createFloatingElement(open = false) {\n if (!this.floatingElement) {\n this.floatingElement = (this.part as ElementPart).element as HTMLElement;\n }\n\n this.floatingElement.style.display = open ? '' : 'none';\n\n return this.floatingElement;\n }\n\n private createMiddleware(options: IgcToggleOptions) {\n const middleware: Middleware[] = [];\n\n if (options.distance) {\n middleware.push(\n offset({\n mainAxis: options.distance,\n })\n );\n }\n\n if (options.flip) {\n middleware.push(flip());\n }\n\n if (this.shiftOptions) {\n middleware.push(shift(this.shiftOptions));\n }\n\n // Toggling `sameWidth` does not reset the applied style on the floater element\n Object.assign(this.floatingElement.style, { width: '' });\n\n if (options.sameWidth) {\n const floatingElement = this.floatingElement;\n middleware.push(\n size({\n apply({ rects }) {\n Object.assign(floatingElement.style, {\n width: `${rects.reference.width}px`,\n });\n },\n })\n );\n }\n\n return middleware;\n }\n\n constructor(partInfo: PartInfo) {\n super(partInfo);\n this.part = partInfo;\n if (partInfo.type !== PartType.ELEMENT) {\n throw new Error(\n 'The `igcToggle` directive must be attached to an element tag.'\n );\n }\n }\n\n public render(\n target: HTMLElement,\n options: IgcToggleOptions,\n controller?: IgcToggleController\n ) {\n return this.updatePosition(target, options, controller);\n }\n}\n\nexport const igcToggle = directive(IgcToggleDirective);\n"]}
@@ -1,10 +1,17 @@
1
1
  import { css } from 'lit';
2
2
  export const styles = css `:host {
3
+ --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);
4
+ --is-medium:
5
+ min(
6
+ clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),
7
+ clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)
8
+ );
9
+ --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);
3
10
  position: relative;
4
11
  -webkit-box-sizing: border-box;
5
12
  box-sizing: border-box;
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)));
13
+ scrollbar-width: var(--ig-scrollbar-size);
14
+ scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);
8
15
  }
9
16
  :host *,
10
17
  :host *::before,
@@ -13,12 +20,12 @@ export const styles = css `:host {
13
20
  box-sizing: border-box;
14
21
  }
15
22
  :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)));
23
+ width: var(--ig-scrollbar-size);
24
+ height: var(--ig-scrollbar-size);
25
+ background: var(--ig-scrollbar-track-background);
19
26
  }
20
27
  :host ::-webkit-scrollbar-thumb {
21
- background: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a)));
28
+ background: var(--ig-scrollbar-thumb-background);
22
29
  }
23
30
 
24
31
  [hidden] {
@@ -27,6 +34,8 @@ export const styles = css `:host {
27
34
 
28
35
  /* stylelint-disable max-line-length */
29
36
  :host {
37
+ --size: max(var(--is-large, 1) * 3.125rem, var(--is-medium, 1) * 2.5rem, var(--is-small, 1) * 2rem);
38
+ --igc-tree-indentation-size: 24px;
30
39
  display: -webkit-box;
31
40
  display: -ms-flexbox;
32
41
  display: flex;
@@ -35,7 +44,6 @@ export const styles = css `:host {
35
44
  -ms-flex-direction: column;
36
45
  flex-direction: column;
37
46
  font-family: inherit;
38
- --igc-tree-indentation-size: 24px;
39
47
  }
40
48
 
41
49
  :host(:focus-within) {
@@ -57,6 +65,8 @@ export const styles = css `:host {
57
65
  position: relative;
58
66
  background: hsla(var(--ig-surface-500), var(--ig-surface-a));
59
67
  color: var(--ig-surface-500-contrast);
68
+ height: var(--size);
69
+ padding: 0 max(var(--is-large, 1) * 24px * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * 16px * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * 12px * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));
60
70
  }
61
71
  [part~=wrapper]::after {
62
72
  content: "";
@@ -158,36 +168,15 @@ export const styles = css `:host {
158
168
  display: none;
159
169
  }
160
170
 
161
- [part~=large] {
162
- height: 3.125rem;
163
- }
164
171
  [part~=large] igc-circular-progress {
165
172
  --diameter: 1.5rem;
166
173
  }
167
174
 
168
- [part~=medium] {
169
- height: 2.5rem;
170
- }
171
175
  [part~=medium] igc-circular-progress {
172
176
  --diameter: 1.25rem;
173
177
  }
174
178
 
175
- [part~=small] {
176
- height: 2rem;
177
- }
178
179
  [part~=small] igc-circular-progress {
179
180
  --diameter: 1.125rem;
180
- }
181
-
182
- [part~=wrapper][part~=large] {
183
- padding: 0 1.5rem;
184
- }
185
-
186
- [part~=wrapper][part~=medium] {
187
- padding: 0 1rem;
188
- }
189
-
190
- [part~=wrapper][part~=small] {
191
- padding: 0 0.75rem;
192
181
  }`;
193
182
  //# sourceMappingURL=tree-item.base.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tree-item.base.css.js","sourceRoot":"","sources":["../../../../../src/components/tree/themes/light/tree-item.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8LvB,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/* stylelint-disable max-line-length */\n:host {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n font-family: inherit;\n --igc-tree-indentation-size: 24px;\n}\n\n:host(:focus-within) {\n outline: none;\n}\n\n:host([disabled]) {\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n background: hsla(var(--ig-surface-500), var(--ig-surface-a));\n}\n\n[part~=wrapper] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n position: relative;\n background: hsla(var(--ig-surface-500), var(--ig-surface-a));\n color: var(--ig-surface-500-contrast);\n}\n[part~=wrapper]::after {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 0;\n background: transparent;\n}\n[part~=wrapper]:hover::after {\n background: var(--hover-color, hsla(var(--ig-gray-900), 0.1));\n}\n\n[part~=active] {\n background: hsla(var(--ig-gray-200), var(--ig-gray-a));\n color: var(--ig-gray-200-contrast);\n}\n\n[part~=selected] {\n background: hsla(var(--ig-secondary-200), var(--ig-secondary-a));\n color: var(--ig-secondary-200-contrast);\n}\n\n[part~=selected][part~=focused][part~=active],\n[part~=selected][part~=focused],\n[part~=selected][part~=active] {\n background: hsla(var(--ig-secondary-300), var(--ig-secondary-a));\n color: var(--ig-secondary-300-contrast);\n}\n\n[part~=focused] {\n -webkit-box-shadow: inset 0 0 0 1px hsla(var(--ig-secondary-500), var(--ig-secondary-a));\n box-shadow: inset 0 0 0 1px hsla(var(--ig-secondary-500), var(--ig-secondary-a));\n}\n\n[part~=indicator] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n z-index: 1;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n -webkit-margin-end: 0.25rem;\n margin-inline-end: 0.25rem;\n min-width: 1.5rem;\n}\n[part~=indicator] igc-icon {\n width: 1.5rem;\n height: 1.5rem;\n font-size: 1.5rem;\n}\n\n[part~=label] {\n display: block;\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 margin: 0;\n}\n\n[part~=label],\n[part~=text] {\n z-index: 1;\n white-space: nowrap;\n -o-text-overflow: ellipsis;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n[part~=select] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n z-index: 1;\n -webkit-margin-end: 0.25rem;\n margin-inline-end: 0.25rem;\n}\n[part~=select] igc-checkbox::part(label) {\n display: none;\n}\n\n[part~=large] {\n height: 3.125rem;\n}\n[part~=large] igc-circular-progress {\n --diameter: 1.5rem;\n}\n\n[part~=medium] {\n height: 2.5rem;\n}\n[part~=medium] igc-circular-progress {\n --diameter: 1.25rem;\n}\n\n[part~=small] {\n height: 2rem;\n}\n[part~=small] igc-circular-progress {\n --diameter: 1.125rem;\n}\n\n[part~=wrapper][part~=large] {\n padding: 0 1.5rem;\n}\n\n[part~=wrapper][part~=medium] {\n padding: 0 1rem;\n}\n\n[part~=wrapper][part~=small] {\n padding: 0 0.75rem;\n}`;\n"]}
1
+ {"version":3,"file":"tree-item.base.css.js","sourceRoot":"","sources":["../../../../../src/components/tree/themes/light/tree-item.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmLvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);\n --is-medium:\n min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n[hidden] {\n display: none !important;\n}\n\n/* stylelint-disable max-line-length */\n:host {\n --size: max(var(--is-large, 1) * 3.125rem, var(--is-medium, 1) * 2.5rem, var(--is-small, 1) * 2rem);\n --igc-tree-indentation-size: 24px;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n font-family: inherit;\n}\n\n:host(:focus-within) {\n outline: none;\n}\n\n:host([disabled]) {\n color: hsla(var(--ig-gray-500), var(--ig-gray-a));\n background: hsla(var(--ig-surface-500), var(--ig-surface-a));\n}\n\n[part~=wrapper] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n position: relative;\n background: hsla(var(--ig-surface-500), var(--ig-surface-a));\n color: var(--ig-surface-500-contrast);\n height: var(--size);\n padding: 0 max(var(--is-large, 1) * 24px * var(--ig-spacing-large, var(--ig-spacing, --ig-spacing)), var(--is-medium, 1) * 16px * var(--ig-spacing-medium, var(--ig-spacing, --ig-spacing)), var(--is-small, 1) * 12px * var(--ig-spacing-small, var(--ig-spacing, --ig-spacing)));\n}\n[part~=wrapper]::after {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 0;\n background: transparent;\n}\n[part~=wrapper]:hover::after {\n background: var(--hover-color, hsla(var(--ig-gray-900), 0.1));\n}\n\n[part~=active] {\n background: hsla(var(--ig-gray-200), var(--ig-gray-a));\n color: var(--ig-gray-200-contrast);\n}\n\n[part~=selected] {\n background: hsla(var(--ig-secondary-200), var(--ig-secondary-a));\n color: var(--ig-secondary-200-contrast);\n}\n\n[part~=selected][part~=focused][part~=active],\n[part~=selected][part~=focused],\n[part~=selected][part~=active] {\n background: hsla(var(--ig-secondary-300), var(--ig-secondary-a));\n color: var(--ig-secondary-300-contrast);\n}\n\n[part~=focused] {\n -webkit-box-shadow: inset 0 0 0 1px hsla(var(--ig-secondary-500), var(--ig-secondary-a));\n box-shadow: inset 0 0 0 1px hsla(var(--ig-secondary-500), var(--ig-secondary-a));\n}\n\n[part~=indicator] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n z-index: 1;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n -webkit-margin-end: 0.25rem;\n margin-inline-end: 0.25rem;\n min-width: 1.5rem;\n}\n[part~=indicator] igc-icon {\n width: 1.5rem;\n height: 1.5rem;\n font-size: 1.5rem;\n}\n\n[part~=label] {\n display: block;\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 margin: 0;\n}\n\n[part~=label],\n[part~=text] {\n z-index: 1;\n white-space: nowrap;\n -o-text-overflow: ellipsis;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n[part~=select] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n z-index: 1;\n -webkit-margin-end: 0.25rem;\n margin-inline-end: 0.25rem;\n}\n[part~=select] igc-checkbox::part(label) {\n display: none;\n}\n\n[part~=large] igc-circular-progress {\n --diameter: 1.5rem;\n}\n\n[part~=medium] igc-circular-progress {\n --diameter: 1.25rem;\n}\n\n[part~=small] igc-circular-progress {\n --diameter: 1.125rem;\n}`;\n"]}
@@ -1,10 +1,17 @@
1
1
  import { css } from 'lit';
2
2
  export const styles = css `:host {
3
+ --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);
4
+ --is-medium:
5
+ min(
6
+ clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),
7
+ clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)
8
+ );
9
+ --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);
3
10
  position: relative;
4
11
  -webkit-box-sizing: border-box;
5
12
  box-sizing: border-box;
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)));
13
+ scrollbar-width: var(--ig-scrollbar-size);
14
+ scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);
8
15
  }
9
16
  :host *,
10
17
  :host *::before,
@@ -13,12 +20,12 @@ export const styles = css `:host {
13
20
  box-sizing: border-box;
14
21
  }
15
22
  :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)));
23
+ width: var(--ig-scrollbar-size);
24
+ height: var(--ig-scrollbar-size);
25
+ background: var(--ig-scrollbar-track-background);
19
26
  }
20
27
  :host ::-webkit-scrollbar-thumb {
21
- background: var(--igc-scrollbar-thumb-color, hsla(var(--ig-gray-400), var(--ig-gray-a)));
28
+ background: var(--ig-scrollbar-thumb-background);
22
29
  }
23
30
 
24
31
  [hidden] {
@@ -30,5 +37,17 @@ export const styles = css `:host {
30
37
  display: block;
31
38
  overflow: auto;
32
39
  font-family: var(--ig-font-family);
40
+ }
41
+
42
+ :host([size=small]) {
43
+ --component-size: var(--ig-size, var(--ig-size-small));
44
+ }
45
+
46
+ :host([size=medium]) {
47
+ --component-size: var(--ig-size, var(--ig-size-medium));
48
+ }
49
+
50
+ :host([size=large]) {
51
+ --component-size: var(--ig-size, var(--ig-size-large));
33
52
  }`;
34
53
  //# sourceMappingURL=tree.base.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tree.base.css.js","sourceRoot":"","sources":["../../../../../src/components/tree/themes/light/tree.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+BvB,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/* stylelint-disable max-line-length */\n:host {\n display: block;\n overflow: auto;\n font-family: var(--ig-font-family);\n}`;\n"]}
1
+ {"version":3,"file":"tree.base.css.js","sourceRoot":"","sources":["../../../../../src/components/tree/themes/light/tree.base.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkDvB,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styles = css`:host {\n --is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);\n --is-medium:\n min(\n clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1),\n clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1)\n );\n --is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);\n position: relative;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n scrollbar-width: var(--ig-scrollbar-size);\n scrollbar-color: var(--ig-scrollbar-thumb-background) var(--ig-scrollbar-track-background);\n}\n:host *,\n:host *::before,\n:host *::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n:host ::-webkit-scrollbar {\n width: var(--ig-scrollbar-size);\n height: var(--ig-scrollbar-size);\n background: var(--ig-scrollbar-track-background);\n}\n:host ::-webkit-scrollbar-thumb {\n background: var(--ig-scrollbar-thumb-background);\n}\n\n[hidden] {\n display: none !important;\n}\n\n/* stylelint-disable max-line-length */\n:host {\n display: block;\n overflow: auto;\n font-family: var(--ig-font-family);\n}\n\n:host([size=small]) {\n --component-size: var(--ig-size, var(--ig-size-small));\n}\n\n:host([size=medium]) {\n --component-size: var(--ig-size, var(--ig-size-medium));\n}\n\n:host([size=large]) {\n --component-size: var(--ig-size, var(--ig-size-large));\n}`;\n"]}
@@ -2069,6 +2069,135 @@
2069
2069
  }
2070
2070
  ]
2071
2071
  },
2072
+ {
2073
+ "name": "igc-dialog",
2074
+ "path": "./src/components/dialog/dialog.ts",
2075
+ "description": "Represents a Dialog component.",
2076
+ "attributes": [
2077
+ {
2078
+ "name": "close-on-escape",
2079
+ "description": "Whether the dialog should be closed when pressing the 'ESCAPE' button.",
2080
+ "type": "boolean",
2081
+ "default": "true"
2082
+ },
2083
+ {
2084
+ "name": "close-on-outside-click",
2085
+ "description": "Whether the dialog should be closed when clicking outside of it.",
2086
+ "type": "boolean",
2087
+ "default": "false"
2088
+ },
2089
+ {
2090
+ "name": "hide-default-action",
2091
+ "description": "Whether to hide the default action button for the dialog.\n\nWhen there is projected content in the `footer` slot this property\nhas no effect.",
2092
+ "type": "boolean",
2093
+ "default": "false"
2094
+ },
2095
+ {
2096
+ "name": "open",
2097
+ "description": "Whether the dialog is opened.",
2098
+ "type": "boolean",
2099
+ "default": "false"
2100
+ },
2101
+ {
2102
+ "name": "title",
2103
+ "description": "Sets the title of the dialog.",
2104
+ "type": "string"
2105
+ }
2106
+ ],
2107
+ "properties": [
2108
+ {
2109
+ "name": "tagName",
2110
+ "type": "\"igc-dialog\"",
2111
+ "default": "\"igc-dialog\""
2112
+ },
2113
+ {
2114
+ "name": "styles",
2115
+ "type": "CSSResult[]",
2116
+ "default": "[\"styles\"]"
2117
+ },
2118
+ {
2119
+ "name": "closeOnEscape",
2120
+ "attribute": "close-on-escape",
2121
+ "description": "Whether the dialog should be closed when pressing the 'ESCAPE' button.",
2122
+ "type": "boolean",
2123
+ "default": "true"
2124
+ },
2125
+ {
2126
+ "name": "closeOnOutsideClick",
2127
+ "attribute": "close-on-outside-click",
2128
+ "description": "Whether the dialog should be closed when clicking outside of it.",
2129
+ "type": "boolean",
2130
+ "default": "false"
2131
+ },
2132
+ {
2133
+ "name": "hideDefaultAction",
2134
+ "attribute": "hide-default-action",
2135
+ "description": "Whether to hide the default action button for the dialog.\n\nWhen there is projected content in the `footer` slot this property\nhas no effect.",
2136
+ "type": "boolean",
2137
+ "default": "false"
2138
+ },
2139
+ {
2140
+ "name": "open",
2141
+ "attribute": "open",
2142
+ "description": "Whether the dialog is opened.",
2143
+ "type": "boolean",
2144
+ "default": "false"
2145
+ },
2146
+ {
2147
+ "name": "title",
2148
+ "attribute": "title",
2149
+ "description": "Sets the title of the dialog.",
2150
+ "type": "string"
2151
+ },
2152
+ {
2153
+ "name": "returnValue",
2154
+ "description": "Sets the return value for the dialog.",
2155
+ "type": "string"
2156
+ }
2157
+ ],
2158
+ "events": [
2159
+ {
2160
+ "name": "igcClosing",
2161
+ "description": "Emitter just before the dialog is closed."
2162
+ },
2163
+ {
2164
+ "name": "igcClosed",
2165
+ "description": "Emitted after closing the dialog."
2166
+ }
2167
+ ],
2168
+ "slots": [
2169
+ {
2170
+ "name": "",
2171
+ "description": "Renders content inside the default slot."
2172
+ },
2173
+ {
2174
+ "name": "title",
2175
+ "description": "Renders the title of the dialog header."
2176
+ },
2177
+ {
2178
+ "name": "footer",
2179
+ "description": "Renders the dialog footer."
2180
+ }
2181
+ ],
2182
+ "cssParts": [
2183
+ {
2184
+ "name": "base",
2185
+ "description": "The base wrapper of the dialog."
2186
+ },
2187
+ {
2188
+ "name": "title",
2189
+ "description": "The title container."
2190
+ },
2191
+ {
2192
+ "name": "footer",
2193
+ "description": "The footer container."
2194
+ },
2195
+ {
2196
+ "name": "overlay",
2197
+ "description": "The overlay."
2198
+ }
2199
+ ]
2200
+ },
2072
2201
  {
2073
2202
  "name": "igc-dropdown-group",
2074
2203
  "path": "./src/components/dropdown/dropdown-group.ts",
package/index.d.ts CHANGED
@@ -13,6 +13,7 @@ export { default as IgcCircularProgressComponent } from './components/progress/c
13
13
  export { default as IgcCircularGradientComponent } from './components/progress/circular-gradient.js';
14
14
  export { default as IgcChipComponent } from './components/chip/chip.js';
15
15
  export { default as IgcDateTimeInputComponent } from './components/date-time-input/date-time-input.js';
16
+ export { default as IgcDialogComponent } from './components/dialog/dialog.js';
16
17
  export { default as IgcDropdownComponent } from './components/dropdown/dropdown.js';
17
18
  export { default as IgcDropdownGroupComponent } from './components/dropdown/dropdown-group.js';
18
19
  export { default as IgcDropdownHeaderComponent } from './components/dropdown/dropdown-header.js';
@@ -56,6 +57,7 @@ export { defineAllComponents } from './components/common/definitions/defineAllCo
56
57
  export { registerIcon, registerIconFromText, } from './components/icon/icon.registry.js';
57
58
  export { configureTheme } from './theming/config.js';
58
59
  export { IgcCalendarResourceStrings } from './components/common/i18n/calendar.resources.js';
59
- export type { DateRangeDescriptor, DateRangeType, } from './components/calendar/common/calendar.model.js';
60
+ export type { DateRangeDescriptor } from './components/calendar/common/calendar.model.js';
61
+ export { DateRangeType } from './components/calendar/common/calendar.model.js';
60
62
  export type { DatePart, DatePartDeltas, } from './components/date-time-input/date-util.js';
61
63
  export type { IgcRangeSliderValue } from './components/slider/range-slider.js';
package/index.js CHANGED
@@ -13,6 +13,7 @@ export { default as IgcCircularProgressComponent } from './components/progress/c
13
13
  export { default as IgcCircularGradientComponent } from './components/progress/circular-gradient.js';
14
14
  export { default as IgcChipComponent } from './components/chip/chip.js';
15
15
  export { default as IgcDateTimeInputComponent } from './components/date-time-input/date-time-input.js';
16
+ export { default as IgcDialogComponent } from './components/dialog/dialog.js';
16
17
  export { default as IgcDropdownComponent } from './components/dropdown/dropdown.js';
17
18
  export { default as IgcDropdownGroupComponent } from './components/dropdown/dropdown-group.js';
18
19
  export { default as IgcDropdownHeaderComponent } from './components/dropdown/dropdown-header.js';
@@ -55,4 +56,5 @@ export { defineComponents } from './components/common/definitions/defineComponen
55
56
  export { defineAllComponents } from './components/common/definitions/defineAllComponents.js';
56
57
  export { registerIcon, registerIconFromText, } from './components/icon/icon.registry.js';
57
58
  export { configureTheme } from './theming/config.js';
59
+ export { DateRangeType } from './components/calendar/common/calendar.model.js';
58
60
  //# sourceMappingURL=index.js.map