@koobiq/components 17.5.0 → 17.6.1

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 (148) hide show
  1. package/button/button-tokens.scss +2 -3
  2. package/code-block/_code-block-theme.scss +124 -143
  3. package/code-block/code-block-tokens.scss +400 -0
  4. package/code-block/code-block.scss +4 -2
  5. package/core/services/theme.service.d.ts +16 -0
  6. package/core/styles/_koobiq-theme.scss +3 -58
  7. package/divider/_divider-theme.scss +2 -4
  8. package/divider/divider-tokens.scss +14 -0
  9. package/divider/divider.scss +4 -0
  10. package/dl/_dl-theme.scss +4 -6
  11. package/dl/dl-tokens.scss +32 -0
  12. package/dl/dl.scss +5 -0
  13. package/dropdown/dropdown-tokens.scss +0 -1
  14. package/empty-state/_empty-state-theme.scss +6 -9
  15. package/empty-state/empty-state-tokens.scss +68 -0
  16. package/empty-state/empty-state.scss +5 -0
  17. package/esm2022/button/button.component.mjs +2 -2
  18. package/esm2022/code-block/code-block.component.mjs +3 -3
  19. package/esm2022/core/services/theme.service.mjs +20 -3
  20. package/esm2022/core/version.mjs +2 -2
  21. package/esm2022/divider/divider.component.mjs +3 -3
  22. package/esm2022/dl/dl.component.mjs +3 -3
  23. package/esm2022/empty-state/empty-state.component.mjs +3 -3
  24. package/esm2022/file-upload/multiple-file-upload.component.mjs +3 -3
  25. package/esm2022/file-upload/single-file-upload.component.mjs +3 -3
  26. package/esm2022/form-field/form-field.mjs +2 -2
  27. package/esm2022/form-field/password-hint.mjs +8 -5
  28. package/esm2022/list/list-selection.component.mjs +3 -3
  29. package/esm2022/list/list.component.mjs +3 -3
  30. package/esm2022/loader-overlay/loader-overlay.component.mjs +3 -3
  31. package/esm2022/markdown/markdown.component.mjs +3 -3
  32. package/esm2022/modal/modal.component.mjs +3 -3
  33. package/esm2022/navbar/navbar-item.component.mjs +2 -2
  34. package/esm2022/navbar/navbar.component.mjs +3 -3
  35. package/esm2022/popover/popover-confirm.component.mjs +3 -3
  36. package/esm2022/popover/popover.component.mjs +3 -3
  37. package/esm2022/table/table.component.mjs +3 -3
  38. package/esm2022/timezone/timezone-option.component.mjs +3 -3
  39. package/esm2022/timezone/timezone-select.component.mjs +3 -3
  40. package/esm2022/toast/toast.component.mjs +3 -3
  41. package/esm2022/toggle/toggle.component.mjs +3 -3
  42. package/esm2022/tooltip/tooltip.component.mjs +3 -3
  43. package/esm2022/tree/toggle.mjs +3 -3
  44. package/esm2022/tree/tree-option.component.mjs +3 -3
  45. package/esm2022/tree/tree-selection.component.mjs +3 -3
  46. package/esm2022/tree/tree.mjs +3 -3
  47. package/esm2022/tree-select/tree-select.component.mjs +3 -3
  48. package/fesm2022/koobiq-components-button.mjs +2 -2
  49. package/fesm2022/koobiq-components-code-block.mjs +2 -2
  50. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  51. package/fesm2022/koobiq-components-core.mjs +21 -4
  52. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  53. package/fesm2022/koobiq-components-divider.mjs +2 -2
  54. package/fesm2022/koobiq-components-divider.mjs.map +1 -1
  55. package/fesm2022/koobiq-components-dl.mjs +2 -2
  56. package/fesm2022/koobiq-components-dl.mjs.map +1 -1
  57. package/fesm2022/koobiq-components-empty-state.mjs +2 -2
  58. package/fesm2022/koobiq-components-empty-state.mjs.map +1 -1
  59. package/fesm2022/koobiq-components-file-upload.mjs +4 -4
  60. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  61. package/fesm2022/koobiq-components-form-field.mjs +9 -6
  62. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  63. package/fesm2022/koobiq-components-list.mjs +4 -4
  64. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  65. package/fesm2022/koobiq-components-loader-overlay.mjs +2 -2
  66. package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
  67. package/fesm2022/koobiq-components-markdown.mjs +2 -2
  68. package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
  69. package/fesm2022/koobiq-components-modal.mjs +2 -2
  70. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  71. package/fesm2022/koobiq-components-navbar.mjs +4 -4
  72. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  73. package/fesm2022/koobiq-components-popover.mjs +4 -4
  74. package/fesm2022/koobiq-components-popover.mjs.map +1 -1
  75. package/fesm2022/koobiq-components-table.mjs +2 -2
  76. package/fesm2022/koobiq-components-table.mjs.map +1 -1
  77. package/fesm2022/koobiq-components-timezone.mjs +4 -4
  78. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  79. package/fesm2022/koobiq-components-toast.mjs +2 -2
  80. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  81. package/fesm2022/koobiq-components-toggle.mjs +2 -2
  82. package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
  83. package/fesm2022/koobiq-components-tooltip.mjs +2 -2
  84. package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
  85. package/fesm2022/koobiq-components-tree-select.mjs +2 -2
  86. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  87. package/fesm2022/koobiq-components-tree.mjs +8 -8
  88. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  89. package/file-upload/_file-upload-theme.scss +29 -112
  90. package/file-upload/file-upload-tokens.scss +159 -0
  91. package/file-upload/file-upload.scss +4 -2
  92. package/form-field/form-field-tokens.scss +1 -1
  93. package/icon/icon-button-tokens.scss +0 -1
  94. package/link/link-tokens.scss +1 -1
  95. package/list/_list-theme.scss +14 -25
  96. package/list/list-tokens.scss +100 -0
  97. package/list/list.scss +5 -0
  98. package/loader-overlay/_loader-overlay-theme.scss +8 -23
  99. package/loader-overlay/loader-overlay-tokens.scss +58 -0
  100. package/loader-overlay/loader-overlay.scss +4 -5
  101. package/markdown/_markdown-theme.scss +29 -43
  102. package/markdown/markdown-tokens.scss +252 -0
  103. package/markdown/markdown.scss +0 -6
  104. package/modal/_modal-confirm.scss +0 -3
  105. package/modal/_modal-theme.scss +10 -12
  106. package/modal/modal-tokens.scss +53 -0
  107. package/modal/modal.scss +5 -0
  108. package/navbar/_navbar-theme.scss +15 -25
  109. package/navbar/navbar-divider.scss +0 -3
  110. package/navbar/navbar-item.scss +0 -3
  111. package/navbar/navbar-tokens.scss +83 -0
  112. package/navbar/navbar.scss +5 -3
  113. package/navbar/vertical-navbar.scss +0 -3
  114. package/package.json +6 -6
  115. package/popover/_popover-theme.scss +9 -16
  116. package/popover/popover-tokens.scss +60 -0
  117. package/popover/popover.scss +4 -5
  118. package/prebuilt-themes/dark-theme.css +1 -1
  119. package/prebuilt-themes/light-theme.css +1 -1
  120. package/schematics/ng-add/index.js +4 -4
  121. package/table/_table-theme.scss +7 -15
  122. package/table/table-tokens.scss +37 -0
  123. package/table/table.scss +4 -1
  124. package/textarea/_textarea-theme.scss +1 -1
  125. package/textarea/textarea-tokens.scss +14 -0
  126. package/textarea/textarea.scss +1 -0
  127. package/timezone/_timezone-option-theme.scss +5 -7
  128. package/timezone/timezone-option-tokens.scss +51 -0
  129. package/timezone/timezone-option.component.scss +5 -0
  130. package/timezone/timezone-select.component.scss +5 -0
  131. package/toast/_toast-theme.scss +11 -15
  132. package/toast/toast-tokens.scss +75 -0
  133. package/toast/toast.component.scss +4 -1
  134. package/toggle/_toggle-theme.scss +21 -41
  135. package/toggle/toggle-tokens.scss +142 -0
  136. package/toggle/toggle.scss +4 -1
  137. package/tooltip/_tooltip-theme.scss +13 -23
  138. package/tooltip/tooltip-tokens.scss +63 -0
  139. package/tooltip/tooltip.scss +5 -0
  140. package/tree/_tree-theme.scss +14 -21
  141. package/tree/toggle.scss +5 -0
  142. package/tree/tree-option.scss +0 -5
  143. package/tree/tree-selection.scss +5 -0
  144. package/tree/tree-tokens.scss +94 -0
  145. package/tree/tree.scss +5 -0
  146. package/tree-select/_tree-select-theme.scss +9 -16
  147. package/tree-select/tree-select-tokens.scss +59 -0
  148. package/tree-select/tree-select.scss +5 -0
package/modal/modal.scss CHANGED
@@ -5,6 +5,8 @@
5
5
 
6
6
  @use './modal-confirm';
7
7
 
8
+ @use './modal-theme' as *;
9
+
8
10
  .kbq-modal {
9
11
  box-sizing: border-box;
10
12
 
@@ -143,3 +145,6 @@
143
145
  .kbq-modal-open {
144
146
  overflow: hidden;
145
147
  }
148
+
149
+ @include kbq-modal-theme();
150
+ @include kbq-modal-typography();
@@ -1,43 +1,34 @@
1
- @use 'sass:meta';
2
- @use 'sass:map';
3
-
4
- @use '../core/styles/typography/typography-utils' as *;
5
1
  @use '../core/styles/common/tokens' as *;
6
2
 
7
- @mixin kbq-navbar-item($component, $state-name) {
8
- $state: map.get($component, $state-name);
9
-
3
+ @mixin kbq-navbar-item($state-name) {
10
4
  &:not(.kbq-navbar-item_has-nested) {
11
5
  &:after {
12
6
  display: block;
13
- background: kbq-css-variable(navbar-item-#{$state-name}-content-background, map.get($state, background));
7
+ background: kbq-css-variable(navbar-item-#{$state-name}-content-background);
14
8
  }
15
9
  }
16
10
 
17
11
  .kbq-navbar-title {
18
- color: kbq-css-variable(navbar-item-#{$state-name}-content-text, map.get($state, text));
12
+ color: kbq-css-variable(navbar-item-#{$state-name}-content-text);
19
13
  }
20
14
 
21
15
  & > .kbq-icon {
22
- color: kbq-css-variable(navbar-item-#{$state-name}-content-icon-left, map.get($state, icon-left)) !important;
16
+ color: kbq-css-variable(navbar-item-#{$state-name}-content-icon-left) !important;
23
17
  }
24
18
 
25
19
  .kbq-navbar-item__arrow-icon {
26
- color: kbq-css-variable(navbar-item-#{$state-name}-content-icon-right, map.get($state, icon-right)) !important;
20
+ color: kbq-css-variable(navbar-item-#{$state-name}-content-icon-right) !important;
27
21
  }
28
22
  }
29
23
 
30
- @mixin kbq-navbar-theme($theme) {
31
- $navbar: map.get($theme, components, navbar);
32
- $item: map.get($navbar, item);
33
-
24
+ @mixin kbq-navbar-theme() {
34
25
  .kbq-navbar,
35
26
  .kbq-vertical-navbar .kbq-vertical-navbar__container {
36
- background-color: kbq-css-variable(navbar-background, map.get($navbar, background));
27
+ background-color: kbq-css-variable(navbar-background);
37
28
  }
38
29
 
39
30
  .kbq-vertical-navbar .kbq-vertical-navbar__container {
40
- border-right: 1px solid kbq-css-variable(navbar-border, map.get($navbar, border));
31
+ border-right: 1px solid kbq-css-variable(navbar-border);
41
32
  }
42
33
 
43
34
  .kbq-navbar-item,
@@ -45,10 +36,10 @@
45
36
  .kbq-navbar-toggle {
46
37
  cursor: pointer;
47
38
 
48
- @include kbq-navbar-item($item, default);
39
+ @include kbq-navbar-item(default);
49
40
 
50
41
  &:hover:not(.kbq-disabled, .kbq-vertical.kbq-navbar-brand) {
51
- @include kbq-navbar-item($item, states-hover);
42
+ @include kbq-navbar-item(states-hover);
52
43
  }
53
44
 
54
45
  &.cdk-focused.cdk-keyboard-focused {
@@ -56,14 +47,13 @@
56
47
 
57
48
  &:after {
58
49
  display: block;
59
- box-shadow: inset 0 0 0 2px
60
- kbq-css-variable(states-line-focus-theme, map.get($theme, states, line, focus-theme));
50
+ box-shadow: inset 0 0 0 2px kbq-css-variable(states-line-focus-theme);
61
51
  }
62
52
  }
63
53
 
64
54
  &:active:not(.kbq-disabled, .kbq-vertical.kbq-navbar-brand),
65
55
  &.kbq-active:not(.kbq-disabled, .kbq-vertical.kbq-navbar-brand) {
66
- @include kbq-navbar-item($item, states-selected);
56
+ @include kbq-navbar-item(states-selected);
67
57
  }
68
58
 
69
59
  &.kbq-navbar-focusable-item {
@@ -71,7 +61,7 @@
71
61
  }
72
62
 
73
63
  &.kbq-disabled {
74
- @include kbq-navbar-item($item, states-disabled);
64
+ @include kbq-navbar-item(states-disabled);
75
65
 
76
66
  pointer-events: none;
77
67
  cursor: default;
@@ -91,7 +81,7 @@
91
81
  }
92
82
 
93
83
  .kbq-navbar-divider {
94
- background: kbq-css-variable(line-contrast-less, map.get($theme, line, contrast-less));
84
+ background: kbq-css-variable(line-contrast-less);
95
85
  }
96
86
  }
97
87
 
@@ -104,7 +94,7 @@ button {
104
94
  }
105
95
  }
106
96
 
107
- @mixin kbq-navbar-typography($config) {
97
+ @mixin kbq-navbar-typography() {
108
98
  .kbq-navbar-title {
109
99
  @include kbq-typography-level-to-styles_css-variables(typography, text-normal-medium);
110
100
  }
@@ -1,6 +1,3 @@
1
- @use 'sass:meta';
2
- @use 'sass:map';
3
-
4
1
  @use '../core/styles/common/tokens' as *;
5
2
 
6
3
  .kbq-navbar-divider {
@@ -1,6 +1,3 @@
1
- @use 'sass:meta';
2
- @use 'sass:map';
3
-
4
1
  @use '../core/styles/common/list';
5
2
 
6
3
  @use '../core/styles/common/tokens' as *;
@@ -0,0 +1,83 @@
1
+ .kbq-navbar {
2
+ --kbq-size-xxs: 4px;
3
+ --kbq-size-xs: 6px;
4
+ --kbq-size-s: 8px;
5
+ --kbq-size-m: 12px;
6
+ --kbq-size-l: 16px;
7
+ --kbq-size-xl: 20px;
8
+ --kbq-size-xxl: 24px;
9
+ --kbq-size-3xl: 32px;
10
+ --kbq-size-4xl: 40px;
11
+ --kbq-size-5xl: 48px;
12
+ --kbq-typography-text-normal-medium-font-size: 14px;
13
+ --kbq-typography-text-normal-medium-line-height: 20px;
14
+ --kbq-typography-text-normal-medium-letter-spacing: -0.006em;
15
+ --kbq-typography-text-normal-medium-font-weight: 500;
16
+ --kbq-typography-text-normal-medium-font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI',
17
+ 'Helvetica Neue', Arial, sans-serif;
18
+ --kbq-typography-text-normal-medium-text-transform: null;
19
+ --kbq-typography-text-normal-medium-font-feature-settings: 'calt', 'kern', 'liga', 'ss01', 'ss04';
20
+ --kbq-navbar-font-title-font-size: 18px;
21
+ --kbq-navbar-font-title-line-height: 28px;
22
+ --kbq-navbar-font-title-letter-spacing: normal;
23
+ --kbq-navbar-font-title-font-weight: 700;
24
+ --kbq-navbar-font-title-font-family: 'TT-Positive', Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI',
25
+ 'Helvetica Neue', Arial, sans-serif;
26
+ --kbq-navbar-font-title-text-transform: null;
27
+ --kbq-navbar-font-title-font-feature-settings: 'calt', 'kern', 'liga';
28
+ --kbq-navbar-item-size-content-border-radius: 8px;
29
+ }
30
+
31
+ :where(.kbq-light, .theme-light, .kbq-theme-light) {
32
+ --kbq-line-contrast-less: hsla(229, 15%, 6%, 12%);
33
+ --kbq-states-line-focus-theme: hsla(216, 100%, 60%, 100%);
34
+ --kbq-navbar-background: hsla(0, 0%, 100%, 100%);
35
+ --kbq-navbar-border: hsla(229, 15%, 6%, 12%);
36
+ --kbq-navbar-item-default-content-text: hsla(229, 15%, 15%, 100%);
37
+ --kbq-navbar-item-default-content-background: transparent;
38
+ --kbq-navbar-item-default-content-icon-left: hsla(229, 15%, 15%, 100%);
39
+ --kbq-navbar-item-default-content-icon-right: hsla(229, 15%, 15%, 100%);
40
+ --kbq-navbar-item-states-hover-content-text: hsla(229, 15%, 15%, 100%);
41
+ --kbq-navbar-item-states-hover-content-background: hsla(229, 15%, 50%, 8%);
42
+ --kbq-navbar-item-states-hover-content-icon-left: hsla(229, 15%, 10%, 100%);
43
+ --kbq-navbar-item-states-hover-content-icon-right: hsla(229, 15%, 10%, 100%);
44
+ --kbq-navbar-item-states-selected-content-text: hsla(229, 15%, 15%, 100%);
45
+ --kbq-navbar-item-states-selected-content-background: hsla(229, 15%, 50%, 16%);
46
+ --kbq-navbar-item-states-selected-content-icon-left: hsla(229, 15%, 10%, 100%);
47
+ --kbq-navbar-item-states-selected-content-icon-right: hsla(229, 15%, 10%, 100%);
48
+ --kbq-navbar-item-states-selected-hover-content-text: hsla(229, 15%, 15%, 100%);
49
+ --kbq-navbar-item-states-selected-hover-content-background: hsla(229, 15%, 50%, 8%);
50
+ --kbq-navbar-item-states-selected-hover-content-icon-left: hsla(229, 15%, 10%, 100%);
51
+ --kbq-navbar-item-states-selected-hover-content-icon-right: hsla(229, 15%, 10%, 100%);
52
+ --kbq-navbar-item-states-disabled-content-text: hsla(229, 15%, 15%, 32%);
53
+ --kbq-navbar-item-states-disabled-content-background: transparent;
54
+ --kbq-navbar-item-states-disabled-content-icon-left: hsla(229, 15%, 15%, 32%);
55
+ --kbq-navbar-item-states-disabled-content-icon-right: hsla(229, 15%, 15%, 32%);
56
+ }
57
+
58
+ :where(.kbq-dark, .theme-dark, .kbq-theme-dark) {
59
+ --kbq-line-contrast-less: hsla(229, 15%, 22%, 100%);
60
+ --kbq-states-line-focus-theme: hsla(216, 100%, 60%, 100%);
61
+ --kbq-navbar-background: hsla(229, 15%, 12%, 100%);
62
+ --kbq-navbar-border: hsla(229, 15%, 22%, 100%);
63
+ --kbq-navbar-item-default-content-text: hsla(229, 15%, 80%, 100%);
64
+ --kbq-navbar-item-default-content-background: transparent;
65
+ --kbq-navbar-item-default-content-icon-left: hsla(229, 15%, 80%, 100%);
66
+ --kbq-navbar-item-default-content-icon-right: hsla(229, 15%, 80%, 100%);
67
+ --kbq-navbar-item-states-hover-content-text: hsla(229, 15%, 80%, 100%);
68
+ --kbq-navbar-item-states-hover-content-background: hsla(229, 15%, 50%, 16%);
69
+ --kbq-navbar-item-states-hover-content-icon-left: hsla(229, 15%, 90%, 100%);
70
+ --kbq-navbar-item-states-hover-content-icon-right: hsla(229, 15%, 90%, 100%);
71
+ --kbq-navbar-item-states-selected-content-text: hsla(229, 15%, 80%, 100%);
72
+ --kbq-navbar-item-states-selected-content-background: hsla(229, 100%, 85%, 15%);
73
+ --kbq-navbar-item-states-selected-content-icon-left: hsla(229, 15%, 80%, 100%);
74
+ --kbq-navbar-item-states-selected-content-icon-right: hsla(229, 15%, 80%, 100%);
75
+ --kbq-navbar-item-states-selected-hover-content-text: hsla(229, 15%, 80%, 100%);
76
+ --kbq-navbar-item-states-selected-hover-content-background: hsla(229, 15%, 50%, 16%);
77
+ --kbq-navbar-item-states-selected-hover-content-icon-left: hsla(229, 15%, 90%, 100%);
78
+ --kbq-navbar-item-states-selected-hover-content-icon-right: hsla(229, 15%, 90%, 100%);
79
+ --kbq-navbar-item-states-disabled-content-text: hsla(229, 15%, 40%, 100%);
80
+ --kbq-navbar-item-states-disabled-content-background: transparent;
81
+ --kbq-navbar-item-states-disabled-content-icon-left: hsla(229, 15%, 30%, 100%);
82
+ --kbq-navbar-item-states-disabled-content-icon-right: hsla(229, 15%, 30%, 100%);
83
+ }
@@ -1,8 +1,7 @@
1
- @use 'sass:meta';
2
- @use 'sass:map';
3
-
4
1
  @use '../core/styles/common/tokens' as *;
5
2
 
3
+ @use './navbar-theme' as *;
4
+
6
5
  .kbq-navbar {
7
6
  display: flex;
8
7
  flex-direction: row;
@@ -26,3 +25,6 @@
26
25
  .kbq-navbar .kbq-navbar-container + .kbq-navbar-container {
27
26
  margin-left: kbq-css-variable(size-xxl);
28
27
  }
28
+
29
+ @include kbq-navbar-theme();
30
+ @include kbq-navbar-typography();
@@ -1,6 +1,3 @@
1
- @use 'sass:meta';
2
- @use 'sass:map';
3
-
4
1
  @use '../core/styles/common/tokens' as *;
5
2
 
6
3
  .kbq-vertical-navbar {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@koobiq/components",
3
- "version": "17.5.0",
3
+ "version": "17.6.1",
4
4
  "description": "koobiq",
5
5
  "repository": {
6
6
  "type": "git",
@@ -23,13 +23,13 @@
23
23
  "peerDependencies": {
24
24
  "@angular/cdk": "^17.0.0",
25
25
  "@angular/forms": "^17.0.0",
26
- "@koobiq/cdk": "17.5.0",
27
- "@koobiq/angular-moment-adapter": "17.5.0",
28
- "@koobiq/angular-luxon-adapter": "17.5.0",
26
+ "@koobiq/cdk": "17.6.1",
27
+ "@koobiq/angular-moment-adapter": "17.6.1",
28
+ "@koobiq/angular-luxon-adapter": "17.6.1",
29
29
  "@koobiq/date-formatter": "^3.1.2",
30
30
  "@koobiq/icons": "^7.1.0",
31
- "@koobiq/tokens-builder": "3.5.0",
32
- "@koobiq/design-tokens": "3.5.0",
31
+ "@koobiq/tokens-builder": "3.5.1",
32
+ "@koobiq/design-tokens": "3.5.1",
33
33
  "marked": "^9.0.0",
34
34
  "overlayscrollbars": "^2.2.0",
35
35
  "ngx-highlightjs": "^10.0.0"
@@ -1,40 +1,33 @@
1
- @use 'sass:meta';
2
- @use 'sass:map';
3
-
4
- @use '../core/styles/typography/typography-utils' as *;
5
1
  @use '../core/styles/common/tokens' as *;
6
2
 
7
- @mixin kbq-popover-theme($theme) {
8
- $popover: map.get(map.get($theme, components), popover);
9
- $background: map.get($theme, background);
10
-
3
+ @mixin kbq-popover-theme() {
11
4
  .kbq-popover {
12
- box-shadow: kbq-css-variable(popover-container-box-shadow, map.get($popover, container, box-shadow));
5
+ box-shadow: kbq-css-variable(popover-container-box-shadow);
13
6
  }
14
7
 
15
8
  .kbq-popover__container {
16
- background: kbq-css-variable(popover-container-background, map.get($popover, container, background));
9
+ background: kbq-css-variable(popover-container-background);
17
10
  }
18
11
 
19
12
  .kbq-popover__arrow {
20
- box-shadow: kbq-css-variable(popover-container-box-shadow, map.get($popover, container, box-shadow));
21
- background: kbq-css-variable(popover-container-background, map.get($popover, container, background));
13
+ box-shadow: kbq-css-variable(popover-container-box-shadow);
14
+ background: kbq-css-variable(popover-container-background);
22
15
  }
23
16
 
24
17
  .kbq-popover__close {
25
- background-color: map.get($background, overlay-inverse);
18
+ background-color: kbq-css-variable(background-overlay-inverse);
26
19
  }
27
20
 
28
21
  .kbq-popover__header {
29
- color: kbq-css-variable(popover-header-text-color, map.get($popover, header, text));
22
+ color: kbq-css-variable(popover-header-text-color);
30
23
  }
31
24
 
32
25
  .kbq-popover__content {
33
- color: kbq-css-variable(popover-content-text-color, map.get($popover, content, text));
26
+ color: kbq-css-variable(popover-content-text-color);
34
27
  }
35
28
  }
36
29
 
37
- @mixin kbq-popover-typography($config) {
30
+ @mixin kbq-popover-typography() {
38
31
  .kbq-popover__header {
39
32
  @include kbq-typography-css-variables(popover, header);
40
33
  }
@@ -0,0 +1,60 @@
1
+ .kbq-popover {
2
+ --kbq-size-s: 8px;
3
+ --kbq-size-4xl: 40px;
4
+ --kbq-button-size-border-radius: 8px;
5
+ --kbq-popover-size-container-width-small: 200px;
6
+ --kbq-popover-size-container-width-medium: 400px;
7
+ --kbq-popover-size-container-width-large: 640px;
8
+ --kbq-popover-size-container-border-radius: 12px;
9
+ --kbq-popover-size-container-max-height: 480px;
10
+ --kbq-popover-size-close-button-width: 32px;
11
+ --kbq-popover-size-close-button-margin-right: -16px;
12
+ --kbq-popover-size-close-button-margin-top: -10px;
13
+ --kbq-popover-size-header-padding-horizontal: 24px;
14
+ --kbq-popover-size-header-padding-top: 16px;
15
+ --kbq-popover-size-header-padding-bottom: 6px;
16
+ --kbq-popover-size-content-padding-top: 24px;
17
+ --kbq-popover-size-content-padding-bottom: 32px;
18
+ --kbq-popover-size-content-padding-horizontal: 24px;
19
+ --kbq-popover-size-content-padding-with-header-top: 8px;
20
+ --kbq-popover-size-content-padding-with-footer-bottom: 8px;
21
+ --kbq-popover-size-footer-padding-vertical: 16px;
22
+ --kbq-popover-size-footer-padding-horizontal: 24px;
23
+ --kbq-popover-font-header-font-size: 18px;
24
+ --kbq-popover-font-header-line-height: 26px;
25
+ --kbq-popover-font-header-letter-spacing: normal;
26
+ --kbq-popover-font-header-font-weight: 600;
27
+ --kbq-popover-font-header-font-family: 'TT-Positive', Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI',
28
+ 'Helvetica Neue', Arial, sans-serif;
29
+ --kbq-popover-font-header-text-transform: null;
30
+ --kbq-popover-font-header-font-feature-settings: 'calt', 'kern', 'liga';
31
+ --kbq-popover-font-content-font-size: 14px;
32
+ --kbq-popover-font-content-line-height: 20px;
33
+ --kbq-popover-font-content-letter-spacing: -0.006em;
34
+ --kbq-popover-font-content-font-weight: normal;
35
+ --kbq-popover-font-content-font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue',
36
+ Arial, sans-serif;
37
+ --kbq-popover-font-content-text-transform: null;
38
+ --kbq-popover-font-content-font-feature-settings: 'calt', 'kern', 'liga', 'ss01', 'ss04';
39
+ }
40
+
41
+ :where(.kbq-light, .theme-light, .kbq-theme-light) {
42
+ --kbq-background-overlay-inverse: hsla(229, 15%, 99%, 88%);
43
+ --kbq-popover-container-background: hsla(229, 15%, 100%, 100%);
44
+ --kbq-popover-container-box-shadow: 0 0 0 1px hsla(229, 15%, 6%, 3%), 0 2px 8px hsla(229, 15%, 6%, 6%),
45
+ 0 3px 8px hsla(229, 15%, 6%, 12%);
46
+ --kbq-popover-header-text-color: hsla(229, 15%, 15%, 100%);
47
+ --kbq-popover-header-scroll-shadow: 9px 0 -8px -12px hsla(229, 15%, 60%, 100%);
48
+ --kbq-popover-content-text-color: hsla(229, 15%, 15%, 100%);
49
+ --kbq-popover-footer-scroll-shadow: 0px 9px 8px -12px hsla(229, 15%, 60%, 100%);
50
+ }
51
+
52
+ :where(.kbq-dark, .theme-dark, .kbq-theme-dark) {
53
+ --kbq-background-overlay-inverse: hsla(229, 15%, 12%, 80%);
54
+ --kbq-popover-container-background: hsla(229, 15%, 15%, 100%);
55
+ --kbq-popover-container-box-shadow: 0 0 0 1px hsla(229, 100%, 85%, 15%);
56
+ --kbq-popover-header-text-color: hsla(229, 15%, 80%, 100%);
57
+ --kbq-popover-header-scroll-shadow: 0px 1px 0px 0px hsla(229, 100%, 85%, 15%);
58
+ --kbq-popover-content-text-color: hsla(229, 15%, 80%, 100%);
59
+ --kbq-popover-footer-scroll-shadow: 0px -1px 0px 0px hsla(229, 100%, 85%, 15%);
60
+ }
@@ -1,13 +1,9 @@
1
- @use 'sass:meta';
2
- @use 'sass:map';
3
-
4
1
  @use '../core/pop-up/pop-up';
5
2
  @use '../core/styles/common';
6
3
 
7
- @use '../core/styles/tokens';
8
4
  @use '../core/styles/common/tokens' as *;
9
5
 
10
- $tokens: meta.module-variables(tokens) !default;
6
+ @use './popover-theme' as *;
11
7
 
12
8
  $arrow-size: 12px;
13
9
  $trigger-margin: 9px;
@@ -135,3 +131,6 @@ $arrow-padding: calc(18px - $trigger-margin);
135
131
  right: kbq-css-variable(size-s);
136
132
  border-radius: kbq-css-variable(button-size-border-radius);
137
133
  }
134
+
135
+ @include kbq-popover-theme();
136
+ @include kbq-popover-typography();