@jetbrains/ring-ui 7.0.61 → 7.0.62
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.
- package/components/global/variables.css +4 -2
- package/components/global/variables_dark.css +8 -6
- package/components/select/select.d.ts +1 -0
- package/components/select/select.js +5 -2
- package/components/tag/tag.css +89 -9
- package/components/tag/tag.d.ts +11 -0
- package/components/tag/tag.js +15 -2
- package/components/toggle/toggle.css +4 -1
- package/components/user-card/card.js +2 -2
- package/components/user-card/user-card.css +0 -4
- package/package.json +9 -9
|
@@ -116,10 +116,12 @@
|
|
|
116
116
|
--ring-link-hover-color: rgb(var(--ring-link-hover-components)); /* #2E55A3 */
|
|
117
117
|
--ring-error-components: 204, 54, 69;
|
|
118
118
|
--ring-error-color: rgb(var(--ring-error-components)); /* #CC3645 */
|
|
119
|
-
--ring-warning-components:
|
|
120
|
-
--ring-warning-color: rgb(var(--ring-warning-components)); /* #
|
|
119
|
+
--ring-warning-components: 182, 84, 22;
|
|
120
|
+
--ring-warning-color: rgb(var(--ring-warning-components)); /* #B65416 */ /* Prefer using warning icon + regular text color */
|
|
121
121
|
--ring-success-components: 31, 117, 54;
|
|
122
122
|
--ring-success-color: rgb(var(--ring-success-components)); /* #1F7536 */ /* Prefer using success icon + regular text color */
|
|
123
|
+
--ring-purple-text-components: 131, 77, 240;
|
|
124
|
+
--ring-purple-text-color: rgb(var(--ring-purple-text-components)); /* #834DF0 */
|
|
123
125
|
--ring-text-components: 39, 40, 46;
|
|
124
126
|
--ring-text-color: rgb(var(--ring-text-components)); /* #27282E */
|
|
125
127
|
--ring-active-text-color: var(--ring-text-color);
|
|
@@ -41,8 +41,8 @@
|
|
|
41
41
|
--ring-main-error-color: rgb(var(--ring-main-error-components)); /* #BD5757 */
|
|
42
42
|
--ring-main-error-hover-components: 156, 78, 78;
|
|
43
43
|
--ring-main-error-hover-color: rgb(var(--ring-main-error-hover-components)); /* #9C4E4E */
|
|
44
|
-
--ring-main-warning-components: 224,
|
|
45
|
-
--ring-main-warning-color: rgb(var(--ring-main-warning-components)); /* #
|
|
44
|
+
--ring-main-warning-components: 224, 137, 87;
|
|
45
|
+
--ring-main-warning-color: rgb(var(--ring-main-warning-components)); /* #E08957 */
|
|
46
46
|
--ring-main-warning-hover-components: 199, 125, 85;
|
|
47
47
|
--ring-main-warning-hover-color: rgb(var(--ring-main-warning-hover-components)); /* #C77D55 */
|
|
48
48
|
--ring-main-purple-components: 149, 90, 224;
|
|
@@ -103,10 +103,12 @@
|
|
|
103
103
|
--ring-link-hover-color: rgb(var(--ring-link-hover-components)); /* #6B9BFA */
|
|
104
104
|
--ring-error-components: 227, 119, 116;
|
|
105
105
|
--ring-error-color: rgb(var(--ring-error-components)); /* #E37774 */
|
|
106
|
-
--ring-warning-components: 224,
|
|
107
|
-
--ring-warning-color: rgb(var(--ring-warning-components)); /* #
|
|
106
|
+
--ring-warning-components: 224, 137, 87;
|
|
107
|
+
--ring-warning-color: rgb(var(--ring-warning-components)); /* #E08957 */ /* Prefer using warning icon + regular text color */
|
|
108
108
|
--ring-success-components: 95, 173, 101;
|
|
109
109
|
--ring-success-color: rgb(var(--ring-success-components)); /* #5FAD65 */ /* Prefer using success icon + regular text color */
|
|
110
|
+
--ring-purple-text-components: 181, 137, 236;
|
|
111
|
+
--ring-purple-text-color: rgb(var(--ring-purple-text-components)); /* #B589EC */
|
|
110
112
|
--ring-text-components: 255, 255, 255;
|
|
111
113
|
--ring-text-color: rgb(var(--ring-text-components)); /* #FFFFFF */
|
|
112
114
|
--ring-active-text-components: 255, 255, 255;
|
|
@@ -175,8 +177,8 @@
|
|
|
175
177
|
--ring-warning-container-light-color: rgb(var(--ring-warning-container-light-components)); /* #352A27 */
|
|
176
178
|
--ring-highlight-container-light-components: 49, 42, 35;
|
|
177
179
|
--ring-highlight-container-light-color: rgb(var(--ring-highlight-container-light-components)); /* #312A23 */
|
|
178
|
-
--ring-grey-container-light-components:
|
|
179
|
-
--ring-grey-container-light-color: rgb(var(--ring-grey-container-light-components)); /* #
|
|
180
|
+
--ring-grey-container-light-components: 43, 45, 48;
|
|
181
|
+
--ring-grey-container-light-color: rgb(var(--ring-grey-container-light-components)); /* #2B2D30 */
|
|
180
182
|
--ring-purple-container-light-components: 43, 37, 49;
|
|
181
183
|
--ring-purple-container-light-color: rgb(var(--ring-purple-container-light-components)); /* #2B2531 */
|
|
182
184
|
--ring-highlight-fill-components: 214, 174, 88;
|
|
@@ -259,6 +259,7 @@ export default class Select<T = unknown> extends Component<SelectProps<T>, Selec
|
|
|
259
259
|
private _getLabel;
|
|
260
260
|
private _getPlaceholder;
|
|
261
261
|
_getSelectedString(): string | null;
|
|
262
|
+
private getHeight;
|
|
262
263
|
private _getIcons;
|
|
263
264
|
private _getAvatar;
|
|
264
265
|
filter?: HTMLInputElement | null;
|
|
@@ -733,11 +733,14 @@ export default class Select extends Component {
|
|
|
733
733
|
return this.state.selected != null ? getItemLabel(this.state.selected) : null;
|
|
734
734
|
}
|
|
735
735
|
}
|
|
736
|
+
getHeight() {
|
|
737
|
+
return this.props.height || (typeof this.context === 'function' ? this.context() : this.context);
|
|
738
|
+
}
|
|
736
739
|
_getIcons() {
|
|
737
740
|
const { selected } = this.state;
|
|
738
741
|
const { disabled, clear, hideArrow } = this.props;
|
|
739
742
|
const icons = [];
|
|
740
|
-
const height = this.
|
|
743
|
+
const height = this.getHeight();
|
|
741
744
|
if (!Array.isArray(selected) && selected?.icon) {
|
|
742
745
|
icons.push(_jsx("button", { title: "Toggle options popup", type: "button", className: styles.selectedIcon, disabled: this.props.disabled, onClick: this._clickHandler, style: { backgroundImage: `url(${selected.icon})` } }, "selected"));
|
|
743
746
|
}
|
|
@@ -775,7 +778,7 @@ export default class Select extends Component {
|
|
|
775
778
|
const dataTest = this.props['data-test'];
|
|
776
779
|
const { selectedLabel } = this.props;
|
|
777
780
|
const { shortcutsEnabled } = this.state;
|
|
778
|
-
const classes = classNames(styles.select, 'ring-js-shortcuts', this.props.className, styles[`height${this.
|
|
781
|
+
const classes = classNames(styles.select, 'ring-js-shortcuts', this.props.className, styles[`height${this.getHeight()}`], {
|
|
779
782
|
[styles[`size${this.props.size}`]]: this.props.type !== Type.INLINE,
|
|
780
783
|
[styles.disabled]: this.props.disabled,
|
|
781
784
|
});
|
package/components/tag/tag.css
CHANGED
|
@@ -3,6 +3,15 @@
|
|
|
3
3
|
/* ensure styles order */
|
|
4
4
|
@import "../link/link.css";
|
|
5
5
|
|
|
6
|
+
:root,
|
|
7
|
+
:host {
|
|
8
|
+
--ring-error-tag-text-color: var(--ring-main-error-hover-color);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
:global(.ring-ui-theme-dark) {
|
|
12
|
+
--ring-error-tag-text-color: var(--ring-error-color);
|
|
13
|
+
}
|
|
14
|
+
|
|
6
15
|
.tag {
|
|
7
16
|
--ring-tag-max-height: 20px;
|
|
8
17
|
|
|
@@ -23,7 +32,7 @@
|
|
|
23
32
|
|
|
24
33
|
vertical-align: top;
|
|
25
34
|
|
|
26
|
-
color: var(--ring-text-color);
|
|
35
|
+
color: var(--ring-tag-text-color);
|
|
27
36
|
|
|
28
37
|
border: none;
|
|
29
38
|
border-radius: var(--ring-border-radius);
|
|
@@ -52,8 +61,80 @@
|
|
|
52
61
|
|
|
53
62
|
border-radius: var(--ring-border-radius);
|
|
54
63
|
|
|
55
|
-
background-color: var(--ring-tag-background-color);
|
|
64
|
+
background-color: var(--ring-tag-container-background-color);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.default {
|
|
68
|
+
--ring-tag-container-background-color: var(--ring-tag-background-color);
|
|
69
|
+
--ring-tag-container-hover-background-color: var(--ring-tag-hover-background-color);
|
|
70
|
+
--ring-tag-text-color: var(--ring-text-color);
|
|
71
|
+
--ring-tag-icon-color: var(--ring-secondary-color);
|
|
72
|
+
--ring-tag-container-outline-background-color: var(--ring-grey-container-light-color);
|
|
73
|
+
--ring-tag-container-outline-hover-background-color: var(--ring-tag-background-color);
|
|
74
|
+
--ring-tag-outline-color: var(--ring-line-color);
|
|
75
|
+
--ring-tag-outline-hover-color: var(--ring-borders-color);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.main {
|
|
79
|
+
--ring-tag-container-background-color: var(--ring-hover-background-color);
|
|
80
|
+
--ring-tag-container-hover-background-color: var(--ring-selected-background-color);
|
|
81
|
+
--ring-tag-text-color: var(--ring-link-color);
|
|
82
|
+
--ring-tag-icon-color: var(--ring-link-color);
|
|
83
|
+
--ring-tag-container-outline-background-color: var(--ring-main-container-light-color);
|
|
84
|
+
--ring-tag-container-outline-hover-background-color: var(--ring-hover-background-color);
|
|
85
|
+
--ring-tag-outline-color: var(--ring-border-hover-color);
|
|
86
|
+
--ring-tag-outline-hover-color: var(--ring-border-accent-color);
|
|
87
|
+
}
|
|
56
88
|
|
|
89
|
+
.success {
|
|
90
|
+
--ring-tag-container-background-color: var(--ring-added-subtle-background-color);
|
|
91
|
+
--ring-tag-container-hover-background-color: var(--ring-added-background-color);
|
|
92
|
+
--ring-tag-text-color: var(--ring-success-color);
|
|
93
|
+
--ring-tag-icon-color: var(--ring-icon-success-color);
|
|
94
|
+
--ring-tag-container-outline-background-color: var(--ring-success-container-light-color);
|
|
95
|
+
--ring-tag-container-outline-hover-background-color: var(--ring-added-subtle-background-color);
|
|
96
|
+
--ring-tag-outline-color: var(--ring-success-border-color);
|
|
97
|
+
--ring-tag-outline-hover-color: var(--ring-success-border-hover-color);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.warning {
|
|
101
|
+
--ring-tag-container-background-color: var(--ring-warning-subtle-background-color);
|
|
102
|
+
--ring-tag-container-hover-background-color: var(--ring-warning-background-color);
|
|
103
|
+
--ring-tag-text-color: var(--ring-warning-color);
|
|
104
|
+
--ring-tag-icon-color: var(--ring-icon-warning-color);
|
|
105
|
+
--ring-tag-container-outline-background-color: var(--ring-warning-container-light-color);
|
|
106
|
+
--ring-tag-container-outline-hover-background-color: var(--ring-warning-subtle-background-color);
|
|
107
|
+
--ring-tag-outline-color: var(--ring-warning-border-color);
|
|
108
|
+
--ring-tag-outline-hover-color: var(--ring-warning-border-hover-color);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.error {
|
|
112
|
+
--ring-tag-container-background-color: var(--ring-removed-subtle-background-color);
|
|
113
|
+
--ring-tag-container-hover-background-color: var(--ring-removed-background-color);
|
|
114
|
+
--ring-tag-text-color: var(--ring-error-tag-text-color);
|
|
115
|
+
--ring-tag-icon-color: var(--ring-icon-error-color);
|
|
116
|
+
--ring-tag-container-outline-background-color: var(--ring-error-container-light-color);
|
|
117
|
+
--ring-tag-container-outline-hover-background-color: var(--ring-removed-subtle-background-color);
|
|
118
|
+
--ring-tag-outline-color: var(--ring-error-border-color);
|
|
119
|
+
--ring-tag-outline-hover-color: var(--ring-error-border-hover-color);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
.purple {
|
|
123
|
+
--ring-tag-container-background-color: var(--ring-purple-subtle-background-color);
|
|
124
|
+
--ring-tag-container-hover-background-color: var(--ring-purple-background-color);
|
|
125
|
+
--ring-tag-text-color: var(--ring-purple-text-color);
|
|
126
|
+
--ring-tag-icon-color: var(--ring-main-purple-color);
|
|
127
|
+
--ring-tag-container-outline-background-color: var(--ring-purple-container-light-color);
|
|
128
|
+
--ring-tag-container-outline-hover-background-color: var(--ring-purple-subtle-background-color);
|
|
129
|
+
--ring-tag-outline-color: var(--ring-purple-border-color);
|
|
130
|
+
--ring-tag-outline-hover-color: var(--ring-purple-border-hover-color);
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
.outline {
|
|
134
|
+
--ring-tag-container-background-color: var(--ring-tag-container-outline-background-color);
|
|
135
|
+
--ring-tag-container-hover-background-color: var(--ring-tag-container-outline-hover-background-color);
|
|
136
|
+
|
|
137
|
+
box-shadow: inset 0 0 0 1px var(--ring-tag-outline-color);
|
|
57
138
|
}
|
|
58
139
|
|
|
59
140
|
.focused,
|
|
@@ -67,9 +148,10 @@
|
|
|
67
148
|
.focused,
|
|
68
149
|
.tag:focus-visible,
|
|
69
150
|
.container:hover {
|
|
70
|
-
|
|
151
|
+
--ring-tag-outline-color: var(--ring-tag-outline-hover-color);
|
|
152
|
+
--ring-tag-container-background-color: var(--ring-tag-container-hover-background-color);
|
|
71
153
|
|
|
72
|
-
|
|
154
|
+
transition: none;
|
|
73
155
|
}
|
|
74
156
|
|
|
75
157
|
.content {
|
|
@@ -84,6 +166,8 @@
|
|
|
84
166
|
}
|
|
85
167
|
|
|
86
168
|
.remove {
|
|
169
|
+
--ring-button-text-color: var(--ring-secondary-color);
|
|
170
|
+
|
|
87
171
|
position: absolute;
|
|
88
172
|
z-index: 1;
|
|
89
173
|
top: 2px;
|
|
@@ -95,15 +179,11 @@
|
|
|
95
179
|
line-height: calc(var(--ring-unit) * 2);
|
|
96
180
|
}
|
|
97
181
|
|
|
98
|
-
.removeIcon.removeIcon {
|
|
99
|
-
color: var(--ring-secondary-color);
|
|
100
|
-
}
|
|
101
|
-
|
|
102
182
|
.icon {
|
|
103
183
|
margin-right: calc(var(--ring-unit) / 2);
|
|
104
184
|
margin-left: calc(var(--ring-unit) * -0.5);
|
|
105
185
|
|
|
106
|
-
color: var(--ring-
|
|
186
|
+
color: var(--ring-tag-icon-color);
|
|
107
187
|
|
|
108
188
|
&& svg {
|
|
109
189
|
vertical-align: -3.5px;
|
package/components/tag/tag.d.ts
CHANGED
|
@@ -6,6 +6,14 @@ export interface TagRenderProps extends HTMLAttributes<HTMLElement> {
|
|
|
6
6
|
ref: RefCallback<HTMLElement>;
|
|
7
7
|
'data-test': string;
|
|
8
8
|
}
|
|
9
|
+
export declare enum TagType {
|
|
10
|
+
DEFAULT = "default",
|
|
11
|
+
MAIN = "main",
|
|
12
|
+
SUCCESS = "success",
|
|
13
|
+
WARNING = "warning",
|
|
14
|
+
ERROR = "error",
|
|
15
|
+
PURPLE = "purple"
|
|
16
|
+
}
|
|
9
17
|
export interface TagProps {
|
|
10
18
|
onRemove?: ((event: React.MouseEvent<HTMLElement>) => void) | null;
|
|
11
19
|
onClick: (event: React.MouseEvent<HTMLElement>) => void;
|
|
@@ -22,6 +30,8 @@ export interface TagProps {
|
|
|
22
30
|
rgTagTitle?: string | undefined;
|
|
23
31
|
textColor?: string | undefined;
|
|
24
32
|
backgroundColor?: string | undefined;
|
|
33
|
+
outline?: boolean;
|
|
34
|
+
tagType?: TagType;
|
|
25
35
|
}
|
|
26
36
|
/**
|
|
27
37
|
* @name Tag
|
|
@@ -33,6 +43,7 @@ export default class Tag extends PureComponent<TagProps> {
|
|
|
33
43
|
};
|
|
34
44
|
componentDidUpdate(prevProps: TagProps): void;
|
|
35
45
|
componentWillUnmount(): void;
|
|
46
|
+
static Type: typeof TagType;
|
|
36
47
|
onDocumentClick: (event: MouseEvent) => void;
|
|
37
48
|
tagNode?: HTMLElement | null;
|
|
38
49
|
tagRef: (el: HTMLElement | null) => void;
|
package/components/tag/tag.js
CHANGED
|
@@ -6,6 +6,15 @@ import Icon from '../icon/icon';
|
|
|
6
6
|
import Button from '../button/button';
|
|
7
7
|
import { ControlsHeight } from '../global/controls-height';
|
|
8
8
|
import styles from './tag.css';
|
|
9
|
+
export var TagType;
|
|
10
|
+
(function (TagType) {
|
|
11
|
+
TagType["DEFAULT"] = "default";
|
|
12
|
+
TagType["MAIN"] = "main";
|
|
13
|
+
TagType["SUCCESS"] = "success";
|
|
14
|
+
TagType["WARNING"] = "warning";
|
|
15
|
+
TagType["ERROR"] = "error";
|
|
16
|
+
TagType["PURPLE"] = "purple";
|
|
17
|
+
})(TagType || (TagType = {}));
|
|
9
18
|
/**
|
|
10
19
|
* @name Tag
|
|
11
20
|
*/
|
|
@@ -16,6 +25,7 @@ export default class Tag extends PureComponent {
|
|
|
16
25
|
disabled: false,
|
|
17
26
|
focused: false,
|
|
18
27
|
render: props => _jsx("button", { type: "button", ...props }),
|
|
28
|
+
tagType: TagType.DEFAULT,
|
|
19
29
|
};
|
|
20
30
|
state = {
|
|
21
31
|
focused: false,
|
|
@@ -33,6 +43,7 @@ export default class Tag extends PureComponent {
|
|
|
33
43
|
this.setDocumentClickListener(false);
|
|
34
44
|
this.setState({ focused: false });
|
|
35
45
|
}
|
|
46
|
+
static Type = TagType;
|
|
36
47
|
onDocumentClick = (event) => {
|
|
37
48
|
if (this.tagNode) {
|
|
38
49
|
this.setState({ focused: this.tagNode === event.target });
|
|
@@ -77,7 +88,7 @@ export default class Tag extends PureComponent {
|
|
|
77
88
|
}
|
|
78
89
|
renderRemoveIcon() {
|
|
79
90
|
if (!this.props.readOnly && this.props.onRemove) {
|
|
80
|
-
return (_jsx(Button, { title: "Remove", icon: closeIcon, "data-test": "ring-tag-remove", className: styles.remove,
|
|
91
|
+
return (_jsx(Button, { title: "Remove", icon: closeIcon, "data-test": "ring-tag-remove", className: styles.remove, onClick: this.props.onRemove, style: { '--ring-secondary-color': this.props.textColor }, height: ControlsHeight.M }));
|
|
81
92
|
}
|
|
82
93
|
return null;
|
|
83
94
|
}
|
|
@@ -88,7 +99,9 @@ export default class Tag extends PureComponent {
|
|
|
88
99
|
[styles.withRemove]: !this.props.readOnly && this.props.onRemove,
|
|
89
100
|
}, this.props.className);
|
|
90
101
|
const { backgroundColor, textColor, render } = this.props;
|
|
91
|
-
return (_jsxs("span", { className: classNames(styles.container, this.props.containerClassName
|
|
102
|
+
return (_jsxs("span", { className: classNames(styles.container, this.props.containerClassName, styles[this.props.tagType], {
|
|
103
|
+
[styles.outline]: this.props.outline,
|
|
104
|
+
}), children: [render({
|
|
92
105
|
'data-test': 'ring-tag',
|
|
93
106
|
className: classes,
|
|
94
107
|
ref: this.tagRef,
|
|
@@ -190,6 +190,10 @@
|
|
|
190
190
|
}
|
|
191
191
|
}
|
|
192
192
|
|
|
193
|
+
.input[disabled] + .switch {
|
|
194
|
+
--ring-toggle-item-color: var(--ring-content-background-color);
|
|
195
|
+
}
|
|
196
|
+
|
|
193
197
|
/* stylelint-disable-next-line selector-max-specificity */
|
|
194
198
|
.input:checked[disabled] + .switch {
|
|
195
199
|
--ring-toggle-background-color: var(--ring-border-disabled-active-color);
|
|
@@ -197,7 +201,6 @@
|
|
|
197
201
|
|
|
198
202
|
/* stylelint-disable-next-line selector-max-specificity */
|
|
199
203
|
.input[disabled]:not(:checked) + .switch {
|
|
200
|
-
--ring-toggle-item-color: var(--ring-content-background-color);
|
|
201
204
|
--ring-toggle-background-color: var(--ring-disabled-background-color);
|
|
202
205
|
--ring-toggle-border-color: var(--ring-border-disabled-color);
|
|
203
206
|
--ring-switch-border-color: var(--ring-border-disabled-color);
|
|
@@ -5,7 +5,7 @@ import copyIcon from '@jetbrains/icons/copy';
|
|
|
5
5
|
import Avatar, { Size as AvatarSize } from '../avatar/avatar';
|
|
6
6
|
import Link from '../link/link';
|
|
7
7
|
import clipboard from '../clipboard/clipboard';
|
|
8
|
-
import Tag from '../tag/tag';
|
|
8
|
+
import Tag, { TagType } from '../tag/tag';
|
|
9
9
|
import Icon, { Size as IconSize } from '../icon/icon';
|
|
10
10
|
import { I18nContext } from '../i18n/i18n-context';
|
|
11
11
|
import Tooltip from '../tooltip/tooltip';
|
|
@@ -25,6 +25,6 @@ export default class UserCard extends PureComponent {
|
|
|
25
25
|
const userActiveStatusClasses = classNames(styles.userActiveStatus, user.online ? styles.online : '');
|
|
26
26
|
return (_jsx("div", { ...restProps, className: classes, children: _jsxs("div", { className: styles.userInformationContainer, children: [_jsxs("div", { className: styles.userAvatar, children: [_jsx(Avatar, { size: AvatarSize.Size56, url: user.avatarUrl, username: user.name, round: true }), !!avatarInfo && avatarInfo] }), _jsxs("div", { className: styles.userInformation, children: [_jsxs("div", { className: styles.userInformationGeneral, children: [_jsxs("div", { className: styles.userNameLine, children: [user.href && (_jsx(Link, { href: user.href, className: styles.userName, "data-test": "user-card-link", children: user.name })), !user.href && _jsx("span", { className: styles.userName, children: user.name }), typeof user.online === 'boolean' && (_jsx("span", { className: userActiveStatusClasses, title: user.online
|
|
27
27
|
? (translations?.online ?? translate('online'))
|
|
28
|
-
: (translations?.offline ?? translate('offline')) })), !!info && _jsx("span", { className: styles.userNameInfo, children: info }), user.banned && (_jsx(Tooltip, { title: user.banReason, children: _jsx(Tag, {
|
|
28
|
+
: (translations?.offline ?? translate('offline')) })), !!info && _jsx("span", { className: styles.userNameInfo, children: info }), user.banned && (_jsx(Tooltip, { title: user.banReason, children: _jsx(Tag, { tagType: TagType.ERROR, children: translations?.banned ?? translate('banned') }) }))] }), _jsx("div", { className: styles.userLogin, children: user.login }), user.email && (_jsxs("span", { className: styles.userEmailWrapper, children: [_jsx(Link, { href: `mailto:${user.email}`, title: `mailto:${user.email}`, target: "_blank", className: styles.userEmail, children: user.email }), user.unverifiedEmail && (_jsx("span", { className: styles.unverifiedLabel, children: translations?.unverified ?? translate('unverified') })), _jsx(Icon, { title: translations?.copyToClipboard ?? translate('copyToClipboard'), className: styles.userCopyIcon, onClick: this.copyEmail, glyph: copyIcon, size: IconSize.Size14, suppressSizeWarning: true })] }))] }), children] })] }) }));
|
|
29
29
|
}
|
|
30
30
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jetbrains/ring-ui",
|
|
3
|
-
"version": "7.0.
|
|
3
|
+
"version": "7.0.62",
|
|
4
4
|
"description": "JetBrains UI library",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "JetBrains"
|
|
@@ -107,7 +107,7 @@
|
|
|
107
107
|
"@jetbrains/logos": "3.0.0-canary.734b213.0",
|
|
108
108
|
"@jetbrains/rollup-css-plugin": "./packages/rollup-css-plugin",
|
|
109
109
|
"@jetbrains/stylelint-config": "^4.0.2",
|
|
110
|
-
"@primer/octicons": "^19.
|
|
110
|
+
"@primer/octicons": "^19.18.0",
|
|
111
111
|
"@rollup/plugin-babel": "^6.0.4",
|
|
112
112
|
"@rollup/plugin-json": "^6.1.0",
|
|
113
113
|
"@rollup/plugin-node-resolve": "^16.0.1",
|
|
@@ -125,7 +125,7 @@
|
|
|
125
125
|
"@types/chai-dom": "1.11.3",
|
|
126
126
|
"@types/eslint__js": "^9.14.0",
|
|
127
127
|
"@types/markdown-it": "^14.1.2",
|
|
128
|
-
"@types/react": "^19.1.
|
|
128
|
+
"@types/react": "^19.1.13",
|
|
129
129
|
"@types/react-dom": "^19.1.9",
|
|
130
130
|
"@types/webpack-env": "^1.18.8",
|
|
131
131
|
"@vitejs/plugin-react": "^5.0.2",
|
|
@@ -152,7 +152,7 @@
|
|
|
152
152
|
"eslint-plugin-storybook": "^9.1.5",
|
|
153
153
|
"events": "^3.3.0",
|
|
154
154
|
"glob": "^11.0.3",
|
|
155
|
-
"globals": "^16.
|
|
155
|
+
"globals": "^16.4.0",
|
|
156
156
|
"html-webpack-plugin": "^5.6.4",
|
|
157
157
|
"http-server": "^14.1.1",
|
|
158
158
|
"husky": "^9.1.7",
|
|
@@ -170,16 +170,16 @@
|
|
|
170
170
|
"react-dom": "^19.1.1",
|
|
171
171
|
"regenerator-runtime": "^0.14.1",
|
|
172
172
|
"rimraf": "^6.0.1",
|
|
173
|
-
"rollup": "^4.50.
|
|
173
|
+
"rollup": "^4.50.1",
|
|
174
174
|
"rollup-plugin-clear": "^2.0.7",
|
|
175
175
|
"storage-mock": "^2.1.0",
|
|
176
176
|
"storybook": "9.1.5",
|
|
177
|
-
"stylelint": "^16.
|
|
177
|
+
"stylelint": "^16.24.0",
|
|
178
178
|
"svg-inline-loader": "^0.8.2",
|
|
179
179
|
"teamcity-service-messages": "^0.1.14",
|
|
180
180
|
"terser-webpack-plugin": "^5.3.14",
|
|
181
181
|
"typescript": "~5.9.2",
|
|
182
|
-
"typescript-eslint": "^8.
|
|
182
|
+
"typescript-eslint": "^8.43.0",
|
|
183
183
|
"vitest": "^3.2.4",
|
|
184
184
|
"vitest-teamcity-reporter": "^0.3.1",
|
|
185
185
|
"wallaby-webpack": "^3.9.16",
|
|
@@ -210,7 +210,7 @@
|
|
|
210
210
|
"@babel/core": "^7.28.4",
|
|
211
211
|
"@babel/preset-typescript": "^7.27.1",
|
|
212
212
|
"@jetbrains/babel-preset-jetbrains": "^2.4.0",
|
|
213
|
-
"@jetbrains/icons": "^5.
|
|
213
|
+
"@jetbrains/icons": "^5.13.0",
|
|
214
214
|
"@jetbrains/postcss-require-hover": "^0.2.0",
|
|
215
215
|
"@types/combokeys": "^2.4.9",
|
|
216
216
|
"@types/element-resize-detector": "^1.1.6",
|
|
@@ -218,7 +218,7 @@
|
|
|
218
218
|
"@types/util-deprecate": "^1.0.4",
|
|
219
219
|
"babel-loader": "10.0.0",
|
|
220
220
|
"babel-plugin-transform-define": "^2.1.4",
|
|
221
|
-
"browserslist": "^4.
|
|
221
|
+
"browserslist": "^4.26.0",
|
|
222
222
|
"change-case": "^4.1.1",
|
|
223
223
|
"classnames": "^2.5.1",
|
|
224
224
|
"combokeys": "^3.0.1",
|