@hazelcast/ui 1.3.3-next.3 → 1.3.3-next.30

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 (182) hide show
  1. package/lib/Alert.module.scss +1 -0
  2. package/lib/AppHeader/AppHeader.d.ts +16 -0
  3. package/lib/AppHeader/AppHeader.js +17 -0
  4. package/lib/AppHeader/AppHeader.js.map +1 -0
  5. package/lib/AppHeader/AppHeader.module.scss +29 -0
  6. package/lib/AppHeader/AppHeaderLogo/AppHeaderLogo.d.ts +12 -0
  7. package/lib/AppHeader/AppHeaderLogo/AppHeaderLogo.js +7 -0
  8. package/lib/AppHeader/AppHeaderLogo/AppHeaderLogo.js.map +1 -0
  9. package/lib/AppHeader/AppHeaderLogo/AppHeaderLogo.module.scss +29 -0
  10. package/lib/AppHeader/AppHeaderLogo/index.d.ts +1 -0
  11. package/lib/AppHeader/AppHeaderLogo/index.js +2 -0
  12. package/lib/AppHeader/AppHeaderLogo/index.js.map +1 -0
  13. package/lib/AppHeader/AppHeaderMenu/AppHeaderMenu.d.ts +8 -0
  14. package/lib/AppHeader/AppHeaderMenu/AppHeaderMenu.js +15 -0
  15. package/lib/AppHeader/AppHeaderMenu/AppHeaderMenu.js.map +1 -0
  16. package/lib/AppHeader/AppHeaderMenu/AppHeaderMenu.module.scss +20 -0
  17. package/lib/AppHeader/AppHeaderMenu/index.d.ts +1 -0
  18. package/lib/AppHeader/AppHeaderMenu/index.js +2 -0
  19. package/lib/AppHeader/AppHeaderMenu/index.js.map +1 -0
  20. package/lib/AppHeader/EnvironmentBadge/EnvironmentBadge.d.ts +5 -0
  21. package/lib/AppHeader/EnvironmentBadge/EnvironmentBadge.js +10 -0
  22. package/lib/AppHeader/EnvironmentBadge/EnvironmentBadge.js.map +1 -0
  23. package/lib/AppHeader/EnvironmentBadge/EnvironmentBadge.module.scss +13 -0
  24. package/lib/AppHeader/EnvironmentBadge/index.d.ts +1 -0
  25. package/lib/AppHeader/EnvironmentBadge/index.js +2 -0
  26. package/lib/AppHeader/EnvironmentBadge/index.js.map +1 -0
  27. package/lib/AppHeader/SelectCluster/SelectCluster.d.ts +9 -0
  28. package/lib/AppHeader/SelectCluster/SelectCluster.js +37 -0
  29. package/lib/AppHeader/SelectCluster/SelectCluster.js.map +1 -0
  30. package/lib/AppHeader/SelectCluster/SelectCluster.module.scss +101 -0
  31. package/lib/AppHeader/SelectCluster/index.d.ts +1 -0
  32. package/lib/AppHeader/SelectCluster/index.js +2 -0
  33. package/lib/AppHeader/SelectCluster/index.js.map +1 -0
  34. package/lib/AppHeader/index.d.ts +1 -0
  35. package/lib/AppHeader/index.js +2 -0
  36. package/lib/AppHeader/index.js.map +1 -0
  37. package/lib/AppSidebar/AppSidebar.d.ts +12 -0
  38. package/lib/AppSidebar/AppSidebar.js +31 -0
  39. package/lib/AppSidebar/AppSidebar.js.map +1 -0
  40. package/lib/AppSidebar/AppSidebar.module.scss +66 -0
  41. package/lib/AppSidebar/AppSidebarFavoriteButton/AppSidebarFavoriteButton.d.ts +6 -0
  42. package/lib/AppSidebar/AppSidebarFavoriteButton/AppSidebarFavoriteButton.js +22 -0
  43. package/lib/AppSidebar/AppSidebarFavoriteButton/AppSidebarFavoriteButton.js.map +1 -0
  44. package/lib/AppSidebar/AppSidebarFavoriteButton/AppSidebarFavoriteButton.module.scss +16 -0
  45. package/lib/AppSidebar/AppSidebarFavoriteButton/index.d.ts +1 -0
  46. package/lib/AppSidebar/AppSidebarFavoriteButton/index.js +2 -0
  47. package/lib/AppSidebar/AppSidebarFavoriteButton/index.js.map +1 -0
  48. package/lib/AppSidebar/AppSidebarFavorites/AppSidebarFavorites.d.ts +7 -0
  49. package/lib/AppSidebar/AppSidebarFavorites/AppSidebarFavorites.js +11 -0
  50. package/lib/AppSidebar/AppSidebarFavorites/AppSidebarFavorites.js.map +1 -0
  51. package/lib/AppSidebar/AppSidebarFavorites/AppSidebarFavorites.module.scss +13 -0
  52. package/lib/AppSidebar/AppSidebarFavorites/index.d.ts +1 -0
  53. package/lib/AppSidebar/AppSidebarFavorites/index.js +2 -0
  54. package/lib/AppSidebar/AppSidebarFavorites/index.js.map +1 -0
  55. package/lib/AppSidebar/AppSidebarItem/AppSidebarItem.d.ts +28 -0
  56. package/lib/AppSidebar/AppSidebarItem/AppSidebarItem.js +23 -0
  57. package/lib/AppSidebar/AppSidebarItem/AppSidebarItem.js.map +1 -0
  58. package/lib/AppSidebar/AppSidebarItem/AppSidebarItem.module.scss +92 -0
  59. package/lib/AppSidebar/AppSidebarItem/index.d.ts +1 -0
  60. package/lib/AppSidebar/AppSidebarItem/index.js +2 -0
  61. package/lib/AppSidebar/AppSidebarItem/index.js.map +1 -0
  62. package/lib/AppSidebar/AppSidebarMenuItemCounter/AppSidebarMenuItemCounter.d.ts +6 -0
  63. package/lib/AppSidebar/AppSidebarMenuItemCounter/AppSidebarMenuItemCounter.js +6 -0
  64. package/lib/AppSidebar/AppSidebarMenuItemCounter/AppSidebarMenuItemCounter.js.map +1 -0
  65. package/lib/AppSidebar/AppSidebarMenuItemCounter/AppSidebarMenuItemCounter.module.scss +24 -0
  66. package/lib/AppSidebar/AppSidebarMenuItemCounter/index.d.ts +1 -0
  67. package/lib/AppSidebar/AppSidebarMenuItemCounter/index.js +2 -0
  68. package/lib/AppSidebar/AppSidebarMenuItemCounter/index.js.map +1 -0
  69. package/lib/AppSidebar/AppSidebarSection/AppSidebarSection.d.ts +13 -0
  70. package/lib/AppSidebar/AppSidebarSection/AppSidebarSection.js +15 -0
  71. package/lib/AppSidebar/AppSidebarSection/AppSidebarSection.js.map +1 -0
  72. package/lib/AppSidebar/AppSidebarSection/AppSidebarSection.module.scss +58 -0
  73. package/lib/AppSidebar/AppSidebarSection/AppSidebarSectionExpandable.d.ts +12 -0
  74. package/lib/AppSidebar/AppSidebarSection/AppSidebarSectionExpandable.js +55 -0
  75. package/lib/AppSidebar/AppSidebarSection/AppSidebarSectionExpandable.js.map +1 -0
  76. package/lib/AppSidebar/AppSidebarSection/appSidebarSectionContext.d.ts +2 -0
  77. package/lib/AppSidebar/AppSidebarSection/appSidebarSectionContext.js +3 -0
  78. package/lib/AppSidebar/AppSidebarSection/appSidebarSectionContext.js.map +1 -0
  79. package/lib/AppSidebar/AppSidebarSection/index.d.ts +1 -0
  80. package/lib/AppSidebar/AppSidebarSection/index.js +2 -0
  81. package/lib/AppSidebar/AppSidebarSection/index.js.map +1 -0
  82. package/lib/AppSidebar/appSidebarContext.d.ts +10 -0
  83. package/lib/AppSidebar/appSidebarContext.js +11 -0
  84. package/lib/AppSidebar/appSidebarContext.js.map +1 -0
  85. package/lib/AppSidebar/index.d.ts +5 -0
  86. package/lib/AppSidebar/index.js +6 -0
  87. package/lib/AppSidebar/index.js.map +1 -0
  88. package/lib/Button.d.ts +8 -3
  89. package/lib/Button.js +11 -10
  90. package/lib/Button.js.map +1 -1
  91. package/lib/Button.module.scss +40 -10
  92. package/lib/Card.d.ts +2 -0
  93. package/lib/Card.js +3 -2
  94. package/lib/Card.js.map +1 -1
  95. package/lib/Card.module.scss +51 -18
  96. package/lib/CenteredLoader.d.ts +5 -0
  97. package/lib/CenteredLoader.js +6 -0
  98. package/lib/CenteredLoader.js.map +1 -0
  99. package/lib/CenteredLoader.module.scss +11 -0
  100. package/lib/Checkbox.module.scss +2 -2
  101. package/lib/Icon.d.ts +2 -1
  102. package/lib/Icon.js +2 -2
  103. package/lib/Icon.js.map +1 -1
  104. package/lib/Link.d.ts +1 -1
  105. package/lib/Link.js +1 -0
  106. package/lib/Link.js.map +1 -1
  107. package/lib/Link.module.scss +5 -0
  108. package/lib/Modal.module.scss +2 -1
  109. package/lib/NumberField.d.ts +1 -0
  110. package/lib/NumberField.js +19 -3
  111. package/lib/NumberField.js.map +1 -1
  112. package/lib/Overlay.js +3 -1
  113. package/lib/Overlay.js.map +1 -1
  114. package/lib/Overlay.module.scss +5 -2
  115. package/lib/Pagination.js +9 -9
  116. package/lib/Pagination.js.map +1 -1
  117. package/lib/Pagination.module.scss +4 -4
  118. package/lib/Select/Common.js +8 -12
  119. package/lib/Select/Common.js.map +1 -1
  120. package/lib/Select/Common.module.scss +1 -1
  121. package/lib/Select/SelectField.d.ts +1 -0
  122. package/lib/Select/SelectField.js.map +1 -1
  123. package/lib/Slider.module.scss +6 -6
  124. package/lib/Table/Cell.d.ts +5 -3
  125. package/lib/Table/Cell.js +1 -1
  126. package/lib/Table/Cell.js.map +1 -1
  127. package/lib/Table/Cell.module.scss +14 -5
  128. package/lib/Table/CellWrapper.d.ts +6 -6
  129. package/lib/Table/CellWrapper.js +6 -6
  130. package/lib/Table/CellWrapper.js.map +1 -1
  131. package/lib/Table/EnhancedRenderers.d.ts +8 -10
  132. package/lib/Table/EnhancedRenderers.js +7 -10
  133. package/lib/Table/EnhancedRenderers.js.map +1 -1
  134. package/lib/Table/Header.d.ts +9 -5
  135. package/lib/Table/Header.js +12 -7
  136. package/lib/Table/Header.js.map +1 -1
  137. package/lib/Table/Header.module.scss +12 -7
  138. package/lib/Table/Row.d.ts +5 -3
  139. package/lib/Table/Row.js +4 -4
  140. package/lib/Table/Row.js.map +1 -1
  141. package/lib/Table/Row.module.scss +15 -12
  142. package/lib/Table/Table.d.ts +21 -36
  143. package/lib/Table/Table.js +102 -87
  144. package/lib/Table/Table.js.map +1 -1
  145. package/lib/Table/Table.module.scss +6 -0
  146. package/lib/Table/TableContent.d.ts +7 -7
  147. package/lib/Table/TableContent.js +20 -14
  148. package/lib/Table/TableContent.js.map +1 -1
  149. package/lib/Table/helpers.d.ts +2 -0
  150. package/lib/Table/helpers.js +10 -0
  151. package/lib/Table/helpers.js.map +1 -0
  152. package/lib/Table/tableTypes.d.ts +80 -0
  153. package/lib/Table/tableTypes.js +2 -0
  154. package/lib/Table/tableTypes.js.map +1 -0
  155. package/lib/Table/useTrackTableState.d.ts +3 -0
  156. package/lib/Table/useTrackTableState.js +30 -0
  157. package/lib/Table/useTrackTableState.js.map +1 -0
  158. package/lib/Table/utils.d.ts +16 -0
  159. package/lib/Table/utils.js +121 -0
  160. package/lib/Table/utils.js.map +1 -0
  161. package/lib/Tooltip.d.ts +3 -0
  162. package/lib/Tooltip.js +21 -15
  163. package/lib/Tooltip.js.map +1 -1
  164. package/lib/Tooltip.module.scss +102 -70
  165. package/lib/TruncatedText.d.ts +2 -0
  166. package/lib/TruncatedText.js +3 -3
  167. package/lib/TruncatedText.js.map +1 -1
  168. package/lib/TruncatedText.module.scss +4 -0
  169. package/lib/hooks/useOnClickOutside.d.ts +1 -1
  170. package/lib/hooks/useOnClickOutside.js +7 -1
  171. package/lib/hooks/useOnClickOutside.js.map +1 -1
  172. package/package.json +25 -18
  173. package/styles/constants/_colors.scss +36 -12
  174. package/styles/constants/_typography.scss +0 -7
  175. package/styles/helpers/_a11y.scss +8 -0
  176. package/styles/helpers/_gradients.scss +39 -6
  177. package/styles/helpers/_text.scss +9 -0
  178. package/styles/typography/fonts/UbuntuMono-Bold.woff2 +0 -0
  179. package/styles/typography/fonts/UbuntuMono-BoldItalic.woff2 +0 -0
  180. package/styles/typography/fonts/UbuntuMono-Italic.woff2 +0 -0
  181. package/styles/typography/fonts/UbuntuMono-Regular.woff2 +0 -0
  182. package/styles/typography/ubuntu-mono.css +31 -0
@@ -9,65 +9,31 @@
9
9
  $tooltipArrowSize1-3: math.div(c.$tooltipArrowSize, 3);
10
10
  $tooltipArrowSize2-3: math.div(c.$tooltipArrowSize, 3) * 2;
11
11
 
12
- .overlay {
13
- @include c.typographyBodySmall;
14
-
15
- position: relative;
16
- max-width: c.$tooltipMaxWidth;
17
- padding: c.$grid * 3;
18
- background: c.$colorNeutralLighter;
19
- border: c.$borderWidth solid c.$colorNeutralLight;
20
- border-radius: c.$borderRadius;
21
- color: c.$colorText;
22
- word-break: break-all;
23
-
24
- &.hidden {
25
- visibility: hidden;
26
-
27
- // important is needed to override inline style
28
- top: -99999px !important;
29
- left: -99999px !important;
30
- }
31
-
32
- > .arrow {
33
- position: absolute;
34
- z-index: c.$zIndex100;
35
- display: block;
36
- width: c.$tooltipArrowSize;
37
- height: c.$tooltipArrowSize;
38
-
39
- &::before,
40
- &::after {
41
- content: '';
42
- position: absolute;
43
- }
44
- }
45
-
46
- &[data-popper-placement^='top'] {
12
+ @mixin arrow($position, $color, $borderColor) {
13
+ @if $position == bottom {
47
14
  > .arrow {
48
- bottom: 0;
15
+ top: 0;
49
16
 
50
17
  &::before,
51
18
  &::after {
52
19
  border-left: c.$tooltipArrowSize solid transparent;
53
20
  border-right: c.$tooltipArrowSize solid transparent;
54
- top: 100%;
21
+ top: 0;
55
22
  left: 50%;
56
23
  margin-left: -(c.$tooltipArrowSize);
57
24
  }
58
25
 
59
26
  &::before {
60
- border-top: c.$tooltipArrowSize solid c.$colorNeutralLight;
27
+ border-bottom: c.$tooltipArrowSize solid $color;
28
+ margin-top: -(c.$tooltipArrowSize);
61
29
  }
62
30
 
63
31
  &::after {
64
- border-top: c.$tooltipArrowSize solid c.$colorNeutralLighter;
65
- transform: translateY(-($tooltipArrowSize1-3));
32
+ border-bottom: c.$tooltipArrowSize solid $borderColor;
33
+ transform: translateY(-($tooltipArrowSize2-3));
66
34
  }
67
35
  }
68
- }
69
-
70
- &[data-popper-placement^='right'] {
36
+ } @else if $position == right {
71
37
  > .arrow {
72
38
  left: 0;
73
39
 
@@ -81,63 +47,129 @@ $tooltipArrowSize2-3: math.div(c.$tooltipArrowSize, 3) * 2;
81
47
  }
82
48
 
83
49
  &::before {
84
- border-right: c.$tooltipArrowSize solid c.$colorNeutralLight;
50
+ border-right: c.$tooltipArrowSize solid $color;
85
51
  margin-left: -(c.$tooltipArrowSize);
86
52
  }
87
53
 
88
54
  &::after {
89
- border-right: c.$tooltipArrowSize solid c.$colorNeutralLighter;
55
+ border-right: c.$tooltipArrowSize solid $borderColor;
90
56
  transform: translateX(-($tooltipArrowSize2-3));
91
57
  }
92
58
  }
93
- }
94
-
95
- &[data-popper-placement^='bottom'] {
59
+ } @else if $position == left {
96
60
  > .arrow {
97
- top: 0;
61
+ right: 0;
98
62
 
99
63
  &::before,
100
64
  &::after {
101
- border-left: c.$tooltipArrowSize solid transparent;
102
- border-right: c.$tooltipArrowSize solid transparent;
103
- top: 0;
104
- left: 50%;
105
- margin-left: -(c.$tooltipArrowSize);
65
+ border-top: c.$tooltipArrowSize solid transparent;
66
+ border-bottom: c.$tooltipArrowSize solid transparent;
67
+ top: 50%;
68
+ left: 100%;
69
+ margin-top: -(c.$tooltipArrowSize);
106
70
  }
107
71
 
108
72
  &::before {
109
- border-bottom: c.$tooltipArrowSize solid c.$colorNeutralLight;
110
- margin-top: -(c.$tooltipArrowSize);
73
+ border-left: c.$tooltipArrowSize solid $color;
111
74
  }
112
75
 
113
76
  &::after {
114
- border-bottom: c.$tooltipArrowSize solid c.$colorNeutralLighter;
115
- transform: translateY(-($tooltipArrowSize2-3));
77
+ border-left: c.$tooltipArrowSize solid $borderColor;
78
+ transform: translateX(-($tooltipArrowSize1-3));
116
79
  }
117
80
  }
118
- }
119
-
120
- &[data-popper-placement^='left'] {
81
+ } @else {
121
82
  > .arrow {
122
- right: 0;
83
+ bottom: 0;
123
84
 
124
85
  &::before,
125
86
  &::after {
126
- border-top: c.$tooltipArrowSize solid transparent;
127
- border-bottom: c.$tooltipArrowSize solid transparent;
128
- top: 50%;
129
- left: 100%;
130
- margin-top: -(c.$tooltipArrowSize);
87
+ border-left: c.$tooltipArrowSize solid transparent;
88
+ border-right: c.$tooltipArrowSize solid transparent;
89
+ top: 100%;
90
+ left: 50%;
91
+ margin-left: -(c.$tooltipArrowSize);
131
92
  }
132
93
 
133
94
  &::before {
134
- border-left: c.$tooltipArrowSize solid c.$colorNeutralLight;
95
+ border-top: c.$tooltipArrowSize solid $color;
135
96
  }
136
97
 
137
98
  &::after {
138
- border-left: c.$tooltipArrowSize solid c.$colorNeutralLighter;
139
- transform: translateX(-($tooltipArrowSize1-3));
99
+ border-top: c.$tooltipArrowSize solid $borderColor;
100
+ transform: translateY(-($tooltipArrowSize1-3));
140
101
  }
141
102
  }
142
103
  }
143
104
  }
105
+
106
+ @mixin arrowPlacements($color: c.$colorNeutralLight, $borderColor: c.$colorNeutralLighter) {
107
+ &[data-popper-placement^='top'] {
108
+ @include arrow(top, $color, $borderColor);
109
+ }
110
+
111
+ &[data-popper-placement^='right'] {
112
+ @include arrow(right, $color, $borderColor);
113
+ }
114
+
115
+ &[data-popper-placement^='bottom'] {
116
+ @include arrow(bottom, $color, $borderColor);
117
+ }
118
+
119
+ &[data-popper-placement^='left'] {
120
+ @include arrow(left, $color, $borderColor);
121
+ }
122
+ }
123
+
124
+ .overlay {
125
+ @include c.typographyBodySmall;
126
+
127
+ position: relative;
128
+ max-width: c.$tooltipMaxWidth;
129
+ padding: c.$grid * 3;
130
+ background: c.$colorNeutralLighter;
131
+ border: c.$borderWidth solid c.$colorNeutralLight;
132
+ border-radius: c.$borderRadius;
133
+ color: c.$colorText;
134
+ word-break: break-all;
135
+
136
+ &.hidden {
137
+ visibility: hidden;
138
+
139
+ // important is needed to override inline style
140
+ top: -99999px !important;
141
+ left: -99999px !important;
142
+ }
143
+
144
+ &.secondary {
145
+ border: none;
146
+ color: c.$colorNeutralWhite;
147
+ background-color: c.$colorTextSubdued;
148
+
149
+ @include arrowPlacements(c.$colorTextSubdued, transparent);
150
+ }
151
+
152
+ &.dark {
153
+ border: none;
154
+ color: c.$colorBrandText;
155
+ background-color: c.$colorBrandAccent;
156
+
157
+ @include arrowPlacements(c.$colorBrandAccent, transparent);
158
+ }
159
+
160
+ > .arrow {
161
+ position: absolute;
162
+ z-index: c.$zIndex100;
163
+ display: block;
164
+ width: c.$tooltipArrowSize;
165
+ height: c.$tooltipArrowSize;
166
+
167
+ &::before,
168
+ &::after {
169
+ content: '';
170
+ position: absolute;
171
+ }
172
+ }
173
+
174
+ @include arrowPlacements;
175
+ }
@@ -4,7 +4,9 @@ interface TruncatedTextProps {
4
4
  text: ReactText | ((...arg: unknown[]) => string) | ReactElement;
5
5
  forceUpdateToken?: ReactText | boolean;
6
6
  className?: string;
7
+ multiline?: boolean;
7
8
  tooltipVisible?: boolean;
9
+ tooltipClassName?: string;
8
10
  hoverAbleTooltip?: boolean;
9
11
  tooltipPlacement?: TooltipProps['placement'];
10
12
  }
@@ -5,7 +5,7 @@ import useIsomorphicLayoutEffect from 'react-use/lib/useIsomorphicLayoutEffect';
5
5
  import { useUID } from 'react-uid';
6
6
  import { Tooltip } from './Tooltip';
7
7
  import styles from './TruncatedText.module.scss';
8
- export const TruncatedText = ({ text, forceUpdateToken, className, tooltipVisible, tooltipPlacement = 'top', hoverAbleTooltip, }) => {
8
+ export const TruncatedText = ({ text, forceUpdateToken, className, tooltipVisible, tooltipPlacement = 'top', hoverAbleTooltip, multiline, tooltipClassName, }) => {
9
9
  const textRef = useRef(null);
10
10
  const [tooltip, setTooltip] = useState();
11
11
  const idTooltip = useUID();
@@ -15,9 +15,9 @@ export const TruncatedText = ({ text, forceUpdateToken, className, tooltipVisibl
15
15
  return;
16
16
  }
17
17
  // https://codepen.io/triple-j/pen/wadKQB
18
- setTooltip(span.offsetWidth < span.scrollWidth ? text : undefined);
18
+ setTooltip(span.offsetWidth < span.scrollWidth || span.offsetHeight < span.scrollHeight ? text : undefined);
19
19
  }, [text, forceUpdateToken]);
20
- return (React.createElement(Tooltip, { id: idTooltip, content: tooltip, visible: tooltipVisible, placement: tooltipPlacement, updateToken: forceUpdateToken, hoverAbleTooltip: hoverAbleTooltip }, (ref) => (React.createElement("div", { ref: mergeRefs([textRef, ref]), className: cn(styles.truncatedText, className) },
20
+ return (React.createElement(Tooltip, { id: idTooltip, content: tooltip, visible: tooltipVisible, className: tooltipClassName, placement: tooltipPlacement, updateToken: forceUpdateToken, hoverAbleTooltip: hoverAbleTooltip }, (ref) => (React.createElement("div", { ref: mergeRefs([textRef, ref]), className: cn(styles.truncatedText, { [styles.multiline]: multiline }, className) },
21
21
  React.createElement("span", { "aria-labelledby": tooltip ? idTooltip : undefined }, text)))));
22
22
  };
23
23
  //# sourceMappingURL=TruncatedText.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TruncatedText.js","sourceRoot":"","sources":["../src/TruncatedText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAM,MAAM,EAAE,QAAQ,EAAuC,MAAM,OAAO,CAAA;AACxF,OAAO,SAAS,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAE,MAAM,YAAY,CAAA;AAC3B,OAAO,yBAAyB,MAAM,yCAAyC,CAAA;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAElC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAA;AAEjD,OAAO,MAAM,MAAM,6BAA6B,CAAA;AAYhD,MAAM,CAAC,MAAM,aAAa,GAA2B,CAAC,EACpD,IAAI,EACJ,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,gBAAgB,GAAG,KAAK,EACxB,gBAAgB,GACjB,EAAE,EAAE;IACH,MAAM,OAAO,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAA;IAC5C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,EAA0B,CAAA;IAChE,MAAM,SAAS,GAAG,MAAM,EAAE,CAAA;IAE1B,yBAAyB,CAAC,GAAG,EAAE;QAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAA;QAE5B,IAAI,IAAI,KAAK,IAAI,EAAE;YACjB,OAAM;SACP;QAED,yCAAyC;QACzC,UAAU,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IACpE,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAA;IAE5B,OAAO,CACL,oBAAC,OAAO,IACN,EAAE,EAAE,SAAS,EACb,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,gBAAgB,EAC3B,WAAW,EAAE,gBAAgB,EAC7B,gBAAgB,EAAE,gBAAgB,IAEjC,CAAC,GAAG,EAAE,EAAE,CAAC,CACR,6BAAK,GAAG,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,SAAS,CAAC;QACjF,iDAAuB,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,IAAG,IAAI,CAAQ,CACjE,CACP,CACO,CACX,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"TruncatedText.js","sourceRoot":"","sources":["../src/TruncatedText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAM,MAAM,EAAE,QAAQ,EAAuC,MAAM,OAAO,CAAA;AACxF,OAAO,SAAS,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAE,MAAM,YAAY,CAAA;AAC3B,OAAO,yBAAyB,MAAM,yCAAyC,CAAA;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAElC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAA;AAEjD,OAAO,MAAM,MAAM,6BAA6B,CAAA;AAchD,MAAM,CAAC,MAAM,aAAa,GAA2B,CAAC,EACpD,IAAI,EACJ,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,gBAAgB,GAAG,KAAK,EACxB,gBAAgB,EAChB,SAAS,EACT,gBAAgB,GACjB,EAAE,EAAE;IACH,MAAM,OAAO,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAA;IAC5C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,EAA0B,CAAA;IAChE,MAAM,SAAS,GAAG,MAAM,EAAE,CAAA;IAE1B,yBAAyB,CAAC,GAAG,EAAE;QAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAA;QAE5B,IAAI,IAAI,KAAK,IAAI,EAAE;YACjB,OAAM;SACP;QAED,yCAAyC;QACzC,UAAU,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAC7G,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAA;IAE5B,OAAO,CACL,oBAAC,OAAO,IACN,EAAE,EAAE,SAAS,EACb,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,gBAAgB,EAC3B,SAAS,EAAE,gBAAgB,EAC3B,WAAW,EAAE,gBAAgB,EAC7B,gBAAgB,EAAE,gBAAgB,IAEjC,CAAC,GAAG,EAAE,EAAE,CAAC,CACR,6BAAK,GAAG,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,EAAE,SAAS,CAAC;QACpH,iDAAuB,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,IAAG,IAAI,CAAQ,CACjE,CACP,CACO,CACX,CAAA;AACH,CAAC,CAAA"}
@@ -3,3 +3,7 @@
3
3
  .truncatedText {
4
4
  @include h.overflowEllipsis;
5
5
  }
6
+
7
+ .multiline {
8
+ @include h.multilineOverflowEllipsis;
9
+ }
@@ -1,5 +1,5 @@
1
1
  type RefElement = HTMLElement | null | undefined;
2
- export declare const containsElement: (target: RefElement, element: Node) => boolean | undefined;
2
+ export declare const containsElement: (target: RefElement, element: EventTarget | HTMLElement | null | undefined) => boolean | undefined;
3
3
  export declare const useOnClickOutside: (active: boolean, opts: {
4
4
  target: RefElement;
5
5
  handler: (event: Event) => void;
@@ -1,6 +1,12 @@
1
1
  import { useCallback, useEffect } from 'react';
2
2
  import { useRefValue } from './useRefValue';
3
- export const containsElement = (target, element) => target === null || target === void 0 ? void 0 : target.contains(element);
3
+ export const containsElement = (target, element) => {
4
+ if (isNode(element)) {
5
+ return target === null || target === void 0 ? void 0 : target.contains(element);
6
+ }
7
+ return false;
8
+ };
9
+ const isNode = (element) => element != null && 'nodeType' in element;
4
10
  export const useOnClickOutside = (active, opts) => {
5
11
  const { target, handler, excludeElement } = opts;
6
12
  const getOutsideClickHandler = useRefValue(handler);
@@ -1 +1 @@
1
- {"version":3,"file":"useOnClickOutside.js","sourceRoot":"","sources":["../../src/hooks/useOnClickOutside.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAI3C,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAkB,EAAE,OAAa,EAAE,EAAE,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;AAE/F,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,MAAe,EACf,IAA0F,EAC1F,EAAE;IACF,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,IAAI,CAAA;IAChD,MAAM,sBAAsB,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;IAEnD,MAAM,QAAQ,GAAG,WAAW,CAC1B,CAAC,KAAY,EAAE,EAAE;QACf,MAAM,OAAO,GAAG,KAAK,CAAC,MAAc,CAAA;QAEpC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,EAAE,OAAO,CAAC,EAAE;YAClF,sBAAsB,EAAE,CAAC,KAAK,CAAC,CAAA;SAChC;IACH,CAAC,EACD,CAAC,MAAM,EAAE,cAAc,EAAE,sBAAsB,CAAC,CACjD,CAAA;IAED,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,MAAM,EAAE;YACV,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;YAChD,QAAQ,CAAC,gBAAgB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;SAClD;aAAM;YACL,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;YACnD,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;SACrD;QAED,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;YACnD,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;QACtD,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA;AACxB,CAAC,CAAA"}
1
+ {"version":3,"file":"useOnClickOutside.js","sourceRoot":"","sources":["../../src/hooks/useOnClickOutside.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAE9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAI3C,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAkB,EAAE,OAAqD,EAAE,EAAE;IAC3G,IAAI,MAAM,CAAC,OAAO,CAAC,EAAE;QACnB,OAAO,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;KACjC;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,MAAM,GAAG,CAAC,OAAuC,EAAmB,EAAE,CAAC,OAAO,IAAI,IAAI,IAAI,UAAU,IAAI,OAAO,CAAA;AAErH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,MAAe,EACf,IAA0F,EAC1F,EAAE;IACF,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,IAAI,CAAA;IAChD,MAAM,sBAAsB,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;IAEnD,MAAM,QAAQ,GAAG,WAAW,CAC1B,CAAC,KAAY,EAAE,EAAE;QACf,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAA;QAE5B,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,EAAE,OAAO,CAAC,EAAE;YAClF,sBAAsB,EAAE,CAAC,KAAK,CAAC,CAAA;SAChC;IACH,CAAC,EACD,CAAC,MAAM,EAAE,cAAc,EAAE,sBAAsB,CAAC,CACjD,CAAA;IAED,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,MAAM,EAAE;YACV,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;YAChD,QAAQ,CAAC,gBAAgB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;SAClD;aAAM;YACL,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;YACnD,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;SACrD;QAED,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;YACnD,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;QACtD,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA;AACxB,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hazelcast/ui",
3
- "version": "1.3.3-next.3+8237d83",
3
+ "version": "1.3.3-next.30+c8ba067",
4
4
  "description": "Hazelcast design system components",
5
5
  "author": "",
6
6
  "homepage": "https://github.com/hazelcast/frontend-shared#readme",
@@ -51,8 +51,8 @@
51
51
  "@headlessui/react": "^1.4.2",
52
52
  "@icons-pack/react-simple-icons": "^9.3.0",
53
53
  "@popperjs/core": "^2.11.7",
54
+ "@tanstack/react-table": "^8.20.5",
54
55
  "@types/react-modal": "3.16.0",
55
- "@types/react-table": "^7.7.14",
56
56
  "classnames": "^2.3.2",
57
57
  "date-fns": "^2.29.3",
58
58
  "dequal": "^2.0.3",
@@ -68,13 +68,13 @@
68
68
  "react-resize-aware": "3.1.1",
69
69
  "react-select": "^5.8.0",
70
70
  "react-simple-timefield": "^3.3.1",
71
- "react-table": "^7.8.0",
72
71
  "react-uid": "^2.3.2",
73
72
  "react-use": "^17.4.0",
74
- "use-deep-compare": "^1.1.0"
73
+ "use-deep-compare": "^1.1.0",
74
+ "use-persisted-state": "^0.3.3"
75
75
  },
76
76
  "devDependencies": {
77
- "@hazelcast/test-helpers": "^1.3.2",
77
+ "@hazelcast/test-helpers": "1.3.3-next.20",
78
78
  "@storybook/addon-docs": "^6.5.16",
79
79
  "@storybook/addons": "^6.5.16",
80
80
  "@storybook/builder-webpack5": "^6.5.16",
@@ -82,38 +82,45 @@
82
82
  "@storybook/preset-scss": "^1.0.3",
83
83
  "@storybook/react": "^6.5.16",
84
84
  "@storybook/theming": "^6.5.16",
85
+ "@testing-library/dom": "^10.4.0",
86
+ "@testing-library/jest-dom": "^6.5.0",
87
+ "@testing-library/react": "^12.1.5",
88
+ "@testing-library/user-event": "^14.5.2",
85
89
  "@types/classnames": "^2.3.1",
86
90
  "@types/enzyme": "^3.10.12",
87
91
  "@types/jest-axe": "^3.5.3",
88
92
  "@types/react": "^17.0.45",
89
93
  "@types/react-datepicker": "^4.3.2",
90
94
  "@types/react-dom": "^17.0.17",
95
+ "@types/use-persisted-state": "^0.3.4",
91
96
  "@wojtekmaj/enzyme-adapter-react-17": "^0.8.0",
92
97
  "babel-loader": "^9.1.2",
93
- "doiuse": "^4.4.1",
98
+ "doiuse": "^6.0.3",
94
99
  "enzyme": "^3.11.0",
95
100
  "jest-axe": "^8.0.0",
96
- "loki": "^0.34.0",
97
- "postcss": "^8.4.23",
98
- "postcss-cli": "^9.1.0",
99
- "postcss-reporter": "^7.0.5",
100
- "postcss-scss": "^4.0.6",
101
+ "loki": "^0.35.1",
102
+ "postcss": "^8.4.47",
103
+ "postcss-cli": "^11.0.0",
104
+ "postcss-reporter": "^7.1.0",
105
+ "postcss-scss": "^4.0.9",
101
106
  "react": "^17.0.2",
102
107
  "react-dom": "^17.0.2",
103
108
  "storybook-addon-designs": "^6.3.1",
104
- "stylelint": "^15.6.0",
105
- "stylelint-config-standard": "^33.0.0",
106
- "stylelint-config-standard-scss": "^9.0.0",
107
- "stylelint-prettier": "^3.0.0",
108
- "stylelint-scss": "^4.6.0",
109
- "webpack": "^5.81.0",
109
+ "stylelint": "^16.9.0",
110
+ "stylelint-config-standard": "^36.0.1",
111
+ "stylelint-config-standard-scss": "^13.1.0",
112
+ "stylelint-prettier": "^5.0.2",
113
+ "stylelint-scss": "^6.7.0",
114
+ "webpack": "^5.95.0",
110
115
  "yup": "^0.32.11"
111
116
  },
112
117
  "peerDependencies": {
118
+ "@types/lodash": "^4.17.13",
113
119
  "@types/react": "^17 || ^18",
114
120
  "@types/react-dom": "^17 || ^18",
121
+ "lodash": "^4.17.21",
115
122
  "react": "^17 || ^18",
116
123
  "react-dom": "^17 || ^18"
117
124
  },
118
- "gitHead": "8237d835b6af6421bcf3e4e6d57403485afac1ff"
125
+ "gitHead": "c8ba067ba693224cad7692c23be5dc3c337d834c"
119
126
  }
@@ -1,30 +1,54 @@
1
- // https://zeroheight.com/11d0e6dac/p/594529--colors
1
+ // https://www.figma.com/design/uGTDLFJEVy4dCNIhlmTPRw/%F0%9F%90%9D-HIVE-3.0?node-id=1061-4605&p=f&t=7sJDCVUY4O5jNXma-0
2
2
  $colorPrimaryLight: #2d7de4 !default;
3
3
  $colorPrimary: #2160c0 !default;
4
4
  $colorPrimaryDark: #003b87 !default;
5
+
5
6
  $colorNeutralWhite: #fff !default;
6
- $colorNeutralLighter: #fafafa !default;
7
- $colorNeutralLight: #b7c1cb !default;
7
+
8
+ $colorNeutralGray: #e9f0f9 !default;
9
+ $colorNeutralGrayDarker: #ccdff5 !default;
10
+
8
11
  $colorNeutral: #dbdbdb !default;
12
+ $colorNeutralLight: #b7c1cb !default;
13
+ $colorNeutralLighter: #fafafa !default;
14
+
9
15
  $colorSuccess: #85da66 !default;
10
16
  $colorSuccessLight: #d5f0d1 !default;
11
- $colorSuccessDark: darken($colorSuccess, 10%) !default;
17
+ $colorSuccessDark: #64d03c !default;
18
+ $colorSuccessDarkest: #3b7044 !default;
19
+
12
20
  $colorInfo: #76e7e7 !default;
13
21
  $colorInfoLight: #d0f4f8 !default;
14
- $colorInfoDark: darken($colorInfo, 10%) !default;
22
+ $colorInfoDark: #4adfdf !default;
23
+ $colorInfoDarkest: #006585 !default;
24
+
15
25
  $colorWarning: #ffec44 !default;
16
26
  $colorWarningLight: #f9f6c7 !default;
17
- $colorWarningDark: darken($colorWarning, 15%) !default;
27
+ $colorWarningDark: #f6dd00 !default;
28
+ $colorWarningDarkest: #8b5d00 !default;
29
+
18
30
  $colorError: #dc084b !default;
19
31
  $colorErrorLight: #efb1c9 !default;
20
- $colorErrorDark: darken($colorError, 10%) !default;
32
+ $colorErrorDark: #8f001d !default;
33
+
21
34
  $colorText: #061827 !default;
22
35
  $colorTextSecondary: #707482 !default;
23
- $colorTextSubdued: #69707d !default;
36
+ $colorTextSubdued: $colorTextSecondary !default;
37
+
24
38
  $colorOverlayBackground: #f0f6ff !default;
25
39
  $colorAccessibilityOutline: #74f !default;
40
+
26
41
  $colorBrand: #00bac6 !default;
27
- $colorShadow: rgb(53 61 73 / 20%) !default;
28
- $colorMenuDark: #333 !default;
29
- $authPrimary: #c6ff3a !default;
30
- $authSecondary: #0b2b39 !default;
42
+ $colorBrandText: #10a4b3 !default;
43
+ $colorShadow: $colorNeutral !default;
44
+
45
+ $colorMenuDark: $colorText !default;
46
+ $colorAuthSecondary: #0b2b39 !default;
47
+
48
+ $colorBrandPrimary: #c6ff3a !default;
49
+ $colorBrandSecondary: #061727 !default;
50
+ $colorBrandAccent: #122d45 !default;
51
+ $colorBrandOcean: #0080a9 !default;
52
+ $colorBrandRaspberry: #c91268 !default;
53
+ $colorBrandCarrot: #f5911e !default;
54
+ $colorBrandBlueberry: #0019fe !default;
@@ -44,13 +44,6 @@ $lineHeightBodyTiny: normal !default;
44
44
  @return '';
45
45
  }
46
46
 
47
- @mixin typographyH1Hero($override: false) {
48
- font-weight: $fontWeightHeadingRegular #{override($override)};
49
- font-size: $fontSizeH4 #{override($override)};
50
- letter-spacing: $letterSpacingH4 #{override($override)};
51
- line-height: $lineHeightH4 #{override($override)};
52
- }
53
-
54
47
  @mixin typographyH1($override: false) {
55
48
  font-weight: $fontWeightHeadingRegular #{override($override)};
56
49
  font-size: $fontSizeH1 #{override($override)};
@@ -36,3 +36,11 @@
36
36
  top: 1px;
37
37
  left: 1px;
38
38
  }
39
+
40
+ @mixin focusOutlineSimple() {
41
+ &:focus-within {
42
+ outline: none;
43
+
44
+ @include outlineSimple;
45
+ }
46
+ }
@@ -1,11 +1,44 @@
1
1
  @use '../constants' as c;
2
2
 
3
- @mixin gradientLime {
4
- background: c.$authPrimary;
5
- background: linear-gradient(270deg, c.$authPrimary 0%, #00b8b8 100%);
3
+ @mixin textGradient() {
4
+ /* doiuse-disable background-clip-text */
5
+ background-clip: text;
6
+ -webkit-text-fill-color: transparent;
7
+ /* doiuse-enable background-clip-text */
6
8
  }
7
9
 
8
- @mixin gradientOcean {
9
- background: c.$colorText;
10
- background: linear-gradient(270deg, #0c6f8e 0%, #1b2939 100%);
10
+ @mixin gradientLime($angle: 270deg) {
11
+ background: linear-gradient($angle, c.$colorBrandPrimary, #00b8b8);
12
+ }
13
+
14
+ @mixin textGradientLime($angle: 0deg) {
15
+ @include gradientLime($angle);
16
+ @include textGradient;
17
+ }
18
+
19
+ @mixin gradientOcean($angle: 270deg) {
20
+ background: linear-gradient($angle, #116884, c.$colorText);
21
+ }
22
+
23
+ @mixin textGradientOcean($angle: 0deg) {
24
+ @include gradientOcean($angle);
25
+ @include textGradient;
26
+ }
27
+
28
+ @mixin gradientSea($angle: 270deg) {
29
+ background: linear-gradient($angle, #0c6f8e, #08d1d1);
30
+ }
31
+
32
+ @mixin textGradientSea($angle: 0deg) {
33
+ @include gradientSea($angle);
34
+ @include textGradient;
35
+ }
36
+
37
+ @mixin gradientCitrus($angle: 90deg) {
38
+ background: linear-gradient($angle, c.$colorBrandRaspberry, c.$colorBrandCarrot);
39
+ }
40
+
41
+ @mixin textGradientCitrus($angle: 0deg) {
42
+ @include gradientCitrus($angle);
43
+ @include textGradient;
11
44
  }
@@ -3,3 +3,12 @@
3
3
  overflow: hidden;
4
4
  text-overflow: ellipsis;
5
5
  }
6
+
7
+ @mixin multilineOverflowEllipsis {
8
+ @supports (-webkit-line-clamp: 2) {
9
+ white-space: normal;
10
+ display: -webkit-box;
11
+ -webkit-line-clamp: 2;
12
+ -webkit-box-orient: vertical;
13
+ }
14
+ }
@@ -0,0 +1,31 @@
1
+ @font-face {
2
+ font-family: 'Ubuntu Mono';
3
+ font-style: normal;
4
+ font-display: swap;
5
+ font-weight: 400;
6
+ src: url('./fonts/UbuntuMono-Regular.woff2') format('woff2');
7
+ }
8
+
9
+ @font-face {
10
+ font-family: 'Ubuntu Mono';
11
+ font-style: italic;
12
+ font-display: swap;
13
+ font-weight: 400;
14
+ src: url('./fonts/UbuntuMono-Italic.woff2') format('woff2');
15
+ }
16
+
17
+ @font-face {
18
+ font-family: 'Ubuntu Mono';
19
+ font-style: normal;
20
+ font-display: swap;
21
+ font-weight: 500;
22
+ src: url('./fonts/UbuntuMono-Bold.woff2') format('woff2');
23
+ }
24
+
25
+ @font-face {
26
+ font-family: 'Ubuntu Mono';
27
+ font-style: italic;
28
+ font-display: swap;
29
+ font-weight: 500;
30
+ src: url('./fonts/UbuntuMono-BoldItalic.woff2') format('woff2');
31
+ }