superdesk-ui-framework 3.1.14 → 3.1.15
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/app/img/AvatarDefaultImage.svg +6 -0
- package/app/styles/_avatar.scss +28 -6
- package/app/styles/design-tokens/_new-colors.scss +32 -17
- package/app-typescript/components/Button.tsx +1 -1
- package/app-typescript/components/DatePicker.tsx +6 -0
- package/app-typescript/components/avatar/avatar-group.tsx +2 -1
- package/app-typescript/components/avatar/avatar-image.tsx +1 -1
- package/app-typescript/components/avatar/avatar-placeholder.tsx +0 -1
- package/app-typescript/components/avatar/avatar-wrapper.tsx +14 -2
- package/app-typescript/components/avatar/avatar.tsx +8 -1
- package/dist/components/Avatar.tsx +97 -40
- package/dist/components/Buttons.tsx +5 -3
- package/dist/components/Index.tsx +151 -127
- package/dist/examples.bundle.js +189 -156
- package/dist/playgrounds/react-playgrounds/TestGround.tsx +30 -10
- package/dist/superdesk-ui.bundle.css +55 -20
- package/dist/superdesk-ui.bundle.js +15 -9
- package/examples/pages/components/Avatar.tsx +97 -40
- package/examples/pages/components/Buttons.tsx +5 -3
- package/examples/pages/components/Index.tsx +151 -127
- package/examples/pages/playgrounds/react-playgrounds/TestGround.tsx +30 -10
- package/package.json +1 -1
- package/react/components/Button.js +1 -1
- package/react/components/DatePicker.js +4 -0
- package/react/components/avatar/avatar-group.js +2 -2
- package/react/components/avatar/avatar-image.js +1 -1
- package/react/components/avatar/avatar-placeholder.js +1 -1
- package/react/components/avatar/avatar-wrapper.d.ts +4 -1
- package/react/components/avatar/avatar-wrapper.js +4 -2
- package/react/components/avatar/avatar.d.ts +4 -0
- package/react/components/avatar/avatar.js +2 -2
@@ -1,6 +1,6 @@
|
|
1
1
|
import * as React from 'react';
|
2
2
|
import * as Components from './components/Index';
|
3
|
-
import { Checkbox, RadioGroup, CheckboxButton, RadioButtonGroup, Button, Dropdown, Input, Label, Icon, IconButton, Badge, ThemeSelector, Container, IconLabel, Tooltip, Spinner, Divider, InputWrapper, InputNew, InputBase, Text, FormRowNew, ButtonGroup, Heading, SearchBar, Modal, BoxedList, BoxedListItem, TimePicker, TreeSelect, DatePicker, ContentDivider, Select, Option, AvatarGroup, Avatar, SvgIconIllustration, IllustrationButton, SubNav, NavButton } from '../../../../app-typescript/index';
|
3
|
+
import { Checkbox, RadioGroup, CheckboxButton, RadioButtonGroup, Button, Dropdown, Input, Label, Icon, IconButton, Badge, ThemeSelector, Container, IconLabel, Tooltip, Spinner, Divider, InputWrapper, InputNew, InputBase, Text, FormRowNew, ButtonGroup, Heading, SearchBar, Modal, BoxedList, BoxedListItem, TimePicker, TreeSelect, DatePicker, ContentDivider, Select, Option, AvatarGroup, Avatar, SvgIconIllustration, IllustrationButton, SubNav, NavButton, } from '../../../../app-typescript/index';
|
4
4
|
import { IAvatarInGroup } from '../../../../app-typescript/components/avatar/avatar-group';
|
5
5
|
import { FormLabel } from '../../../../app-typescript/components/Form/FormLabel';
|
6
6
|
|
@@ -104,29 +104,37 @@ export class TestGround extends React.Component<IProps, IState> {
|
|
104
104
|
|
105
105
|
render() {
|
106
106
|
const avatars: Array<IAvatarInGroup> = [
|
107
|
+
{
|
108
|
+
imageUrl: null,
|
109
|
+
initials: null,
|
110
|
+
displayName: 'Unassigned',
|
111
|
+
icon:{name: 'video', color: 'var(--sd-colour-state--default)'},
|
112
|
+
statusDot:{color: 'var(--sd-colour-coverage-state--not-covering)'}
|
113
|
+
},
|
114
|
+
{
|
115
|
+
imageUrl: null,
|
116
|
+
initials: null,
|
117
|
+
displayName: 'Unassigned',
|
118
|
+
icon:{name: 'file', color: 'var(--sd-colour-state--unassigned)'},
|
119
|
+
statusDot:{color: 'var(--sd-colour-coverage-state--on-merit)'}
|
120
|
+
},
|
107
121
|
{
|
108
122
|
imageUrl: null,
|
109
123
|
initials: "VS",
|
110
124
|
displayName: 'Vladimir Stefanovic',
|
111
|
-
icon:{name: 'text', color: 'var(--sd-colour-
|
125
|
+
icon:{name: 'text', color: 'var(--sd-colour-state--in-progress)'},
|
112
126
|
},
|
113
127
|
{
|
114
128
|
imageUrl: null,
|
115
129
|
initials: "JL",
|
116
130
|
displayName: 'Jeffrey Lebowski',
|
117
|
-
icon:{name: 'photo', color: 'var(--sd-colour-
|
131
|
+
icon:{name: 'photo', color: 'var(--sd-colour-state--in-workflow)'}
|
118
132
|
},
|
119
133
|
{
|
120
134
|
imageUrl: null,
|
121
135
|
initials: "WS",
|
122
136
|
displayName: 'Walter Sobchak',
|
123
|
-
icon:{name: '
|
124
|
-
},
|
125
|
-
{
|
126
|
-
imageUrl: null,
|
127
|
-
initials: "ML",
|
128
|
-
displayName: 'Maude Lebowski',
|
129
|
-
icon:{name: 'file', color: 'var(--sd-colour-highlight)'}
|
137
|
+
icon:{name: 'text', color: 'var(--sd-colour-state--done)'},
|
130
138
|
},
|
131
139
|
];
|
132
140
|
|
@@ -159,6 +167,18 @@ export class TestGround extends React.Component<IProps, IState> {
|
|
159
167
|
|
160
168
|
<hr />
|
161
169
|
|
170
|
+
<Avatar
|
171
|
+
displayName="Jeffrey Lebowski"
|
172
|
+
imageUrl={null}
|
173
|
+
initials='JL'
|
174
|
+
size="small"
|
175
|
+
statusDot={{color: 'var(--sd-colour-coverage-state--on-merit)'}}
|
176
|
+
icon={{name: 'text'}}
|
177
|
+
/>
|
178
|
+
|
179
|
+
<hr />
|
180
|
+
|
181
|
+
|
162
182
|
<div style={{maxWidth: '600px'}} className={`sd-shadow--z1 new-collapse-box ${this.state.openCollapsibleOne ? 'new-collapse-box--open' : ''}`}>
|
163
183
|
{/* Header */}
|
164
184
|
<div className='new-collapse-box__header'>
|
@@ -12035,19 +12035,29 @@
|
|
12035
12035
|
--sd-colour-bg__desk-select--worspace: hsla(306, 25%, 49%, 1);
|
12036
12036
|
--sd-colour__tag-label-Bg--inverse: var(--sd-colour-bg--08);
|
12037
12037
|
--sd-colour__tag-label-Txt--inverse: hsla(214, 13%, 98%, 1);
|
12038
|
-
--sd-colour-avatar-bg: hsl(197, 100%,
|
12038
|
+
--sd-colour-avatar-bg: hsl(197, 100%, 30%);
|
12039
12039
|
--sd-colour-avatar-border: var(--sd-colour-avatar-bg);
|
12040
12040
|
--sd-colour-avatar-bg--light: hsla(214, 13%, 90%, 1);
|
12041
|
-
--sd-colour-avatar-
|
12042
|
-
--sd-colour-avatar-
|
12043
|
-
--sd-colour-avatar-
|
12041
|
+
--sd-colour-avatar-bg--empty: hsl(212, 20%, 48%);
|
12042
|
+
--sd-colour-avatar-bg--empty-light: hsla(214, 13%, 90%, 1);
|
12043
|
+
--sd-colour-avatar-border--light: var(--sd-colour-line--medium);
|
12044
|
+
--sd-colour-avatar-border--light-hover: var(--sd-colour-line--strong);
|
12045
|
+
--sd-colour-avatar-dummy: hsla(214, 13%, 65%, 0.50);
|
12044
12046
|
--sd-colour-avatar-add: hsla(214, 13%, 55%, 1);
|
12045
12047
|
--sd-colour-avatar-add--hover: hsla(214, 13%, 45%, 1);
|
12046
|
-
--sd-colour-avatar-outline--offline:
|
12048
|
+
--sd-colour-avatar-outline--offline: var(--sd-colour-line--light);
|
12047
12049
|
--sd-colour-avatar-outline--online: var(--sd-colour-success);
|
12048
12050
|
--sd-colour-state--default: var(--color-text-lighter);
|
12049
|
-
--sd-colour-state--
|
12051
|
+
--sd-colour-state--unassigned: var(--color-text-lighter);
|
12052
|
+
--sd-colour-state--assigned: var(--color-text-lighter);
|
12053
|
+
--sd-colour-state--canceled: var(--color-text-lighter);
|
12054
|
+
--sd-colour-state--in-progress: var(--sd-colour-warning);
|
12055
|
+
--sd-colour-state--in-workflow: var(--sd-colour-info);
|
12056
|
+
--sd-colour-state--completed: var(--sd-colour-success);
|
12050
12057
|
--sd-colour-state--done: var(--sd-colour-success);
|
12058
|
+
--sd-colour-coverage-state--default: var(--color-text-lighter);
|
12059
|
+
--sd-colour-coverage-state--on-merit: var(--sd-colour-warning);
|
12060
|
+
--sd-colour-coverage-state--not-covering: var(--sd-colour-alert);
|
12051
12061
|
--collapse-box-button-color-bg-default: hsla(var(--sd-colour-cool-grey-l--85), 1);
|
12052
12062
|
--collapse-box-button-color-bg-hover: hsla(var(--sd-colour-cool-grey-l--80), 1);
|
12053
12063
|
--collapse-box-button-color-fg-default: var(--color-text);
|
@@ -12162,16 +12172,21 @@
|
|
12162
12172
|
--sd-colour__tag-label-Bg--inverse: hsla(214, 13%, 55%, 0.95);
|
12163
12173
|
--sd-colour__tag-label-Txt--inverse: hsla(214, 13%, 10%, 1);
|
12164
12174
|
--sd-colour-avatar-bg: hsl(197, 100%, 25%);
|
12165
|
-
--sd-colour-avatar-border:
|
12175
|
+
--sd-colour-avatar-border: var(--sd-colour-avatar-bg);
|
12166
12176
|
--sd-colour-avatar-bg--light: hsla(214, 13%, 20%, 1);
|
12167
|
-
--sd-colour-avatar-
|
12168
|
-
--sd-colour-avatar-
|
12169
|
-
--sd-colour-avatar-
|
12177
|
+
--sd-colour-avatar-bg--empty: hsl(212, 20%, 38%);
|
12178
|
+
--sd-colour-avatar-bg--empty-light: hsla(214, 13%, 20%, 1);
|
12179
|
+
--sd-colour-avatar-border--light: var(--sd-colour-line--light);
|
12180
|
+
--sd-colour-avatar-border--light-hover: var(--sd-colour-line--medium);
|
12181
|
+
--sd-colour-avatar-dummy: hsla(214, 13%, 95%, 0.2);
|
12170
12182
|
--sd-colour-avatar-add: hsla(214, 13%, 65%, 1);
|
12171
12183
|
--sd-colour-avatar-add--hover: hsla(214, 13%, 90%, 1);
|
12184
|
+
--sd-colour-avatar-outline--offline: var(--sd-colour-line--medium);
|
12185
|
+
--sd-colour-avatar-outline--online: var(--sd-colour-success);
|
12172
12186
|
--sd-colour-state--default: var(--color-text-lighter);
|
12173
|
-
--sd-colour-state--
|
12174
|
-
--sd-colour-state--
|
12187
|
+
--sd-colour-state--unassigned: var(--color-text-lighter);
|
12188
|
+
--sd-colour-state--assigned: var(--color-text-lighter);
|
12189
|
+
--sd-colour-state--canceled: var(--color-text-lighter);
|
12175
12190
|
--collapse-box-button-color-bg-default: hsla(var(--sd-colour-cool-grey-l--25), 1);
|
12176
12191
|
--collapse-box-button-color-bg-hover: hsla(var(--sd-colour-cool-grey-l--30), 1);
|
12177
12192
|
--collapse-box-button-color-fg-default: var(--color-text-light);
|
@@ -65745,7 +65760,8 @@ i.sd-sidetab-menu__helper-icon {
|
|
65745
65760
|
color: white;
|
65746
65761
|
text-transform: uppercase;
|
65747
65762
|
letter-spacing: -0.03em;
|
65748
|
-
overflow: hidden;
|
65763
|
+
overflow: hidden;
|
65764
|
+
cursor: default; }
|
65749
65765
|
.sd-avatar .sd-avatar-content > img {
|
65750
65766
|
width: 100%; }
|
65751
65767
|
.sd-avatar .sd-avatar-content.sd-avatar-content--add-item {
|
@@ -65781,17 +65797,20 @@ i.sd-sidetab-menu__helper-icon {
|
|
65781
65797
|
.sd-avatar .sd-avatar-content.sd-avatar-content--number:active {
|
65782
65798
|
cursor: pointer;
|
65783
65799
|
outline: 2px solid var(--sd-colour-interactive); }
|
65800
|
+
.sd-avatar .sd-avatar-content span {
|
65801
|
+
cursor: default; }
|
65784
65802
|
.sd-avatar .sd-avatar-content--text {
|
65785
65803
|
background-color: var(--sd-colour-avatar-bg); }
|
65786
65804
|
.sd-avatar .sd-avatar-content--dummy-img {
|
65787
|
-
background-color: var(--sd-colour-avatar-bg);
|
65805
|
+
background-color: var(--sd-colour-avatar-bg--empty);
|
65788
65806
|
background-image: url(avatar_dummy.svg);
|
65789
65807
|
background-repeat: no-repeat;
|
65790
|
-
background-size: cover;
|
65791
|
-
border: 1px solid var(--sd-colour-avatar-border); }
|
65808
|
+
background-size: cover; }
|
65792
65809
|
.sd-avatar.sd-avatar--empty-light .sd-avatar-content--dummy-img {
|
65793
65810
|
background-color: var(--sd-colour-avatar-bg--light);
|
65794
65811
|
border: 1px dashed var(--sd-colour-avatar-border--light); }
|
65812
|
+
.sd-avatar.sd-avatar--empty-light .sd-avatar-content--dummy-img svg {
|
65813
|
+
opacity: 0.25; }
|
65795
65814
|
.sd-avatar .sd-avatar__icon {
|
65796
65815
|
position: absolute;
|
65797
65816
|
display: flex;
|
@@ -65799,9 +65818,24 @@ i.sd-sidetab-menu__helper-icon {
|
|
65799
65818
|
justify-content: center;
|
65800
65819
|
z-index: 1;
|
65801
65820
|
inset-block-end: -4px;
|
65802
|
-
inset-inline-end: -4px;
|
65821
|
+
inset-inline-end: -4px;
|
65822
|
+
opacity: 1;
|
65823
|
+
color: var(--color-text-lighter); }
|
65803
65824
|
.sd-avatar .sd-avatar__icon [class^="icon-"], .sd-avatar .sd-avatar__icon [class*=" icon-"] {
|
65825
|
+
color: inherit;
|
65804
65826
|
text-shadow: -1px 1px 0 var(--sd-item__main-Bg), 1px 1px 0 var(--sd-item__main-Bg), 1px -1px 0 var(--sd-item__main-Bg), -1px -1px 0 var(--sd-item__main-Bg); }
|
65827
|
+
.sd-avatar .sd-avatar__coverage-state {
|
65828
|
+
--dot-size: 6px;
|
65829
|
+
display: flex;
|
65830
|
+
height: var(--dot-size);
|
65831
|
+
width: var(--dot-size);
|
65832
|
+
position: absolute;
|
65833
|
+
background-color: var(--sd-colour-coverage-state--default);
|
65834
|
+
z-index: 2;
|
65835
|
+
border-radius: var(--b-radius--full);
|
65836
|
+
inset-block-end: -3px;
|
65837
|
+
inset-inline-end: 3px;
|
65838
|
+
box-shadow: 0 0 0 1px var(--sd-item__main-Bg); }
|
65805
65839
|
.sd-avatar.sd-avatar--x-small .sd-avatar__icon {
|
65806
65840
|
inset-block-end: -4px;
|
65807
65841
|
inset-inline-end: -10px; }
|
@@ -65966,10 +66000,11 @@ i.sd-sidetab-menu__helper-icon {
|
|
65966
66000
|
|
65967
66001
|
.avatar-popup {
|
65968
66002
|
background-color: var(--color-dropdown-menu-Bg);
|
65969
|
-
border-radius:
|
65970
|
-
padding:
|
66003
|
+
border-radius: var(--b-radius--large);
|
66004
|
+
padding: var(--space--2);
|
66005
|
+
padding-inline-end: var(--space--3);
|
65971
66006
|
box-shadow: var(--sd-shadow__dropdown);
|
65972
66007
|
display: flex;
|
65973
66008
|
flex-direction: column;
|
65974
|
-
gap:
|
66009
|
+
gap: var(--gap-1-5);
|
65975
66010
|
overflow: auto; }
|
@@ -38055,7 +38055,7 @@ var Button = /** @class */ (function (_super) {
|
|
38055
38055
|
_a));
|
38056
38056
|
return (React.createElement("button", { id: this.props.id, className: classes, tabIndex: 0, disabled: this.props.disabled || this.props.isLoading, "data-loading": this.props.isLoading, onClick: this.props.disabled ? function () { return false; } : function (event) { return _this.props.onClick(event); }, "aria-label": this.props.iconOnly ? this.props.text : '', "data-test-id": this.props['data-test-id'], title: this.props.tooltip },
|
38057
38057
|
this.props.isLoading ? React.createElement(Spinner_1.Spinner, { size: "mini" }) : null,
|
38058
|
-
this.props.icon && !this.props.isLoading ? React.createElement(Icon_1.Icon, { name: this.props.icon }) : null,
|
38058
|
+
this.props.icon && !this.props.isLoading ? React.createElement(Icon_1.Icon, { ariaHidden: true, name: this.props.icon }) : null,
|
38059
38059
|
this.props.iconOnly ? null : this.props.text));
|
38060
38060
|
};
|
38061
38061
|
return Button;
|
@@ -38203,6 +38203,7 @@ var AvatarWrapper = /** @class */ (function (_super) {
|
|
38203
38203
|
AvatarWrapper.prototype.render = function () {
|
38204
38204
|
var _a, _b, _c;
|
38205
38205
|
var icon = this.props.icon;
|
38206
|
+
var statusDot = this.props.statusDot;
|
38206
38207
|
return (React.createElement("span", { className: (0, classnames_1.default)('sd-avatar', {
|
38207
38208
|
'sd-avatar--x-small': this.props.size === 'x-small',
|
38208
38209
|
'sd-avatar--small': this.props.size === 'small',
|
@@ -38212,14 +38213,15 @@ var AvatarWrapper = /** @class */ (function (_super) {
|
|
38212
38213
|
'sd-avatar--xx-large': this.props.size === 'xx-large',
|
38213
38214
|
'sd-avatar--indicator-status--online': ((_a = this.props.statusIndicator) === null || _a === void 0 ? void 0 : _a.status) === 'online',
|
38214
38215
|
'sd-avatar--indicator-status--offline': ((_b = this.props.statusIndicator) === null || _b === void 0 ? void 0 : _b.status) === 'offline',
|
38215
|
-
'sd-avatar--empty-light': this.props.
|
38216
|
+
'sd-avatar--empty-light': this.props.noAvatarPlaceholderColor === 'subtle',
|
38216
38217
|
}), "data-test-id": this.props['data-test-id'], title: this.props.statusIndicator != null ? this.props.statusIndicator.tooltipText : "" },
|
38217
38218
|
this.props.children,
|
38218
38219
|
((_c = this.props.administratorIndicator) === null || _c === void 0 ? void 0 : _c.enabled) === true
|
38219
38220
|
? (React.createElement("i", { className: "icon-settings sd-avatar--indicator-admin", title: this.props.administratorIndicator.tooltipText }))
|
38220
38221
|
: null,
|
38221
38222
|
icon != null && (React.createElement("span", { className: "sd-avatar__icon" },
|
38222
|
-
React.createElement(Icon_1.Icon, { name: icon.name, color: icon.color })))
|
38223
|
+
React.createElement(Icon_1.Icon, { name: icon.name, color: icon.color }))),
|
38224
|
+
statusDot != null && (React.createElement("span", { style: { backgroundColor: statusDot.color }, className: "sd-avatar__coverage-state" }))));
|
38223
38225
|
};
|
38224
38226
|
return AvatarWrapper;
|
38225
38227
|
}(React.PureComponent));
|
@@ -39881,7 +39883,7 @@ var AvatarContentImage = /** @class */ (function (_super) {
|
|
39881
39883
|
if (imageUrl == null) {
|
39882
39884
|
return (React.createElement("span", __assign({}, maybeButtonProps, { className: "sd-avatar-content sd-avatar-content--dummy-img", title: tooltipText }),
|
39883
39885
|
React.createElement("svg", { width: "200", height: "200", viewBox: "0 0 200 200", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
|
39884
|
-
React.createElement("circle", { cx: "100", cy: "100", r: "100", fill: "white", fillOpacity: "0
|
39886
|
+
React.createElement("circle", { cx: "100", cy: "100", r: "100", fill: "white", fillOpacity: "0" }),
|
39885
39887
|
React.createElement("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M40 153V145.384C40 141.557 41.16 137.981 43.16 135C49.14 126.057 66.24 119.711 77.14 118C82.74 117.115 90.16 116.538 100 116.538C109.84 116.538 117.26 117.115 122.86 118C133.76 119.711 150.86 126.057 156.84 135C158.84 137.981 160 141.557 160 145.384V153C150 165 130 180 100 180C70 180 50 165 40 153ZM100 30C122.08 30 140 47.2307 140 68.4614C140 89.6922 122.08 106.923 100 106.923C77.92 106.923 60 89.6922 60 68.4614C60 47.2307 77.92 30 100 30Z", fill: "var(--sd-colour-avatar-dummy)", fillOpacity: "1" }))));
|
39886
39888
|
}
|
39887
39889
|
else {
|
@@ -41833,6 +41835,10 @@ var DatePicker = /** @class */ (function (_super) {
|
|
41833
41835
|
React.createElement(calendar_1.Calendar, { footerTemplate: this.props.required !== true ? function () { return (React.createElement("div", { className: 'd-flex justify-end' },
|
41834
41836
|
React.createElement(Button_1.Button, { onClick: function () {
|
41835
41837
|
_this.props.onChange(null);
|
41838
|
+
if (_this.instance != null
|
41839
|
+
&& typeof _this.instance.hideOverlay === 'function') {
|
41840
|
+
_this.instance.hideOverlay();
|
41841
|
+
}
|
41836
41842
|
}, text: 'Clear', "data-test-id": 'clear-button' }))); } : undefined, inputId: this.htmlId, ariaLabelledBy: this.htmlId + 'label', ref: function (ref) {
|
41837
41843
|
_this.instance = ref;
|
41838
41844
|
var refAny = ref;
|
@@ -44287,10 +44293,10 @@ var Avatar = /** @class */ (function (_super) {
|
|
44287
44293
|
return _super !== null && _super.apply(this, arguments) || this;
|
44288
44294
|
}
|
44289
44295
|
Avatar.prototype.render = function () {
|
44290
|
-
var _a = this.props, imageUrl = _a.imageUrl, initials = _a.initials, size = _a.size, statusIndicator = _a.statusIndicator, administratorIndicator = _a.administratorIndicator, icon = _a.icon, displayName = _a.displayName, customContent = _a.customContent;
|
44296
|
+
var _a = this.props, imageUrl = _a.imageUrl, initials = _a.initials, size = _a.size, statusIndicator = _a.statusIndicator, administratorIndicator = _a.administratorIndicator, icon = _a.icon, noAvatarPlaceholderColor = _a.noAvatarPlaceholderColor, displayName = _a.displayName, customContent = _a.customContent, statusDot = _a.statusDot;
|
44291
44297
|
var tooltipCombined = [displayName, this.props.tooltip]
|
44292
44298
|
.filter(function (str) { return (str !== null && str !== void 0 ? str : '').trim().length > 0; }).join('\n');
|
44293
|
-
return (React.createElement(avatar_wrapper_1.AvatarWrapper, { size: size, statusIndicator: statusIndicator ? { status: statusIndicator, tooltipText: '' } : undefined, administratorIndicator: administratorIndicator ? { enabled: true, tooltipText: '' } : undefined, icon: icon,
|
44299
|
+
return (React.createElement(avatar_wrapper_1.AvatarWrapper, { size: size, statusIndicator: statusIndicator ? { status: statusIndicator, tooltipText: '' } : undefined, administratorIndicator: administratorIndicator ? { enabled: true, tooltipText: '' } : undefined, icon: icon, statusDot: statusDot, noAvatarPlaceholderColor: noAvatarPlaceholderColor }, (function () {
|
44294
44300
|
if (customContent != null) {
|
44295
44301
|
return customContent;
|
44296
44302
|
}
|
@@ -44364,7 +44370,7 @@ var AvatarPlaceholder = /** @class */ (function (_super) {
|
|
44364
44370
|
}
|
44365
44371
|
AvatarPlaceholder.prototype.render = function () {
|
44366
44372
|
var _a = this.props, size = _a.size, tooltip = _a.tooltip, icon = _a.icon, kind = _a.kind, onClick = _a.onClick;
|
44367
|
-
return (React.createElement(avatar_wrapper_1.AvatarWrapper, { size: size,
|
44373
|
+
return (React.createElement(avatar_wrapper_1.AvatarWrapper, { size: size, icon: icon }, (function () {
|
44368
44374
|
if (kind === 'plus-button') {
|
44369
44375
|
return (React.createElement(avatar_action_add_1.AvatarContentAdd, { tooltipText: tooltip !== null && tooltip !== void 0 ? tooltip : undefined, onClick: onClick }));
|
44370
44376
|
}
|
@@ -83920,7 +83926,7 @@ var AvatarGroup = /** @class */ (function (_super) {
|
|
83920
83926
|
isAvatar(item)
|
83921
83927
|
&& item.displayName,
|
83922
83928
|
isAvatar(item)
|
83923
|
-
? (React.createElement(avatar_1.Avatar, { size: 'small', imageUrl: item.imageUrl, initials: item.initials, displayName: item.displayName, icon: item.icon }))
|
83929
|
+
? (React.createElement(avatar_1.Avatar, { size: 'small', imageUrl: item.imageUrl, initials: item.initials, displayName: item.displayName, icon: item.icon, statusDot: item.statusDot }))
|
83924
83930
|
: (React.createElement(avatar_placeholder_1.AvatarPlaceholder, { kind: 'plus-button', size: 'small', icon: item.icon, onClick: item.onClick })))
|
83925
83931
|
: React.createElement("div", null,
|
83926
83932
|
React.createElement(avatar_placeholder_1.AvatarPlaceholder, { kind: 'plus-button', size: 'small', icon: item.icon, onClick: isAvatar(item) ? undefined : item.onClick, key: index })));
|
@@ -83934,7 +83940,7 @@ var AvatarGroup = /** @class */ (function (_super) {
|
|
83934
83940
|
}
|
83935
83941
|
}),
|
83936
83942
|
itemsOverLimit > 0 && (React.createElement(PlusButtonWrapper, { onToggle: onToggle },
|
83937
|
-
React.createElement(avatar_wrapper_1.AvatarWrapper, { size: size
|
83943
|
+
React.createElement(avatar_wrapper_1.AvatarWrapper, { size: size },
|
83938
83944
|
React.createElement(avatar_number_1.AvatarContentNumber, { number: "".concat(itemsOverLimit) })))))); }));
|
83939
83945
|
};
|
83940
83946
|
return AvatarGroup;
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import * as React from 'react';
|
2
2
|
import * as Markup from '../../js/react';
|
3
3
|
|
4
|
-
import {Container, Avatar, AvatarGroup} from '../../../app-typescript';
|
4
|
+
import {Container, Avatar, AvatarGroup, AvatarPlaceholder} from '../../../app-typescript';
|
5
5
|
import {IAvatarInGroup, IAvatarPlaceholderInGroup} from '../../../app-typescript/components/avatar/avatar-group';
|
6
6
|
|
7
7
|
const avatars: Array<IAvatarInGroup> = [
|
@@ -73,7 +73,7 @@ export default class AvatarDoc extends React.PureComponent {
|
|
73
73
|
imageUrl={null}
|
74
74
|
initials="Jeffrey Lebowski"
|
75
75
|
size="large"
|
76
|
-
icon={{name: 'print', color: '
|
76
|
+
icon={{name: 'print', color: 'var(--sd-colour-state--in-workflow)'}}
|
77
77
|
statusIndicator="offline"
|
78
78
|
administratorIndicator
|
79
79
|
/>
|
@@ -83,7 +83,7 @@ export default class AvatarDoc extends React.PureComponent {
|
|
83
83
|
imageUrl={null}
|
84
84
|
initials='Jeffrey Lebowski'
|
85
85
|
size="large"
|
86
|
-
icon={{name: 'print', color: '
|
86
|
+
icon={{name: 'print', color: 'var(--sd-colour-state--done)'}}
|
87
87
|
administratorIndicator
|
88
88
|
/>
|
89
89
|
|
@@ -192,15 +192,29 @@ export default class AvatarDoc extends React.PureComponent {
|
|
192
192
|
imageUrl="/avatar.jpg"
|
193
193
|
initials="JL"
|
194
194
|
displayName="Jeffrey Lebowski"
|
195
|
-
icon={{name: 'text', color: 'var(--sd-colour-state--in-
|
195
|
+
icon={{name: 'text', color: 'var(--sd-colour-state--in-workflow)'}}
|
196
196
|
/>
|
197
197
|
|
198
198
|
<Avatar
|
199
199
|
size="x-large"
|
200
|
-
imageUrl=
|
201
|
-
initials=
|
202
|
-
displayName="
|
203
|
-
|
200
|
+
imageUrl={null}
|
201
|
+
initials={null}
|
202
|
+
displayName="Unassigned"
|
203
|
+
noAvatarPlaceholderColor='subtle'
|
204
|
+
icon={{name: 'text', color: 'var(--sd-colour-state--canceled)'}}
|
205
|
+
/>
|
206
|
+
|
207
|
+
<AvatarPlaceholder
|
208
|
+
kind='plus-button'
|
209
|
+
size='x-large'
|
210
|
+
/>
|
211
|
+
|
212
|
+
<Avatar
|
213
|
+
size="x-large"
|
214
|
+
imageUrl={null}
|
215
|
+
initials={null}
|
216
|
+
displayName="Unassigned"
|
217
|
+
icon={{name: 'text', color: 'var(--sd-colour-state--canceled)'}}
|
204
218
|
/>
|
205
219
|
|
206
220
|
<Avatar
|
@@ -208,12 +222,29 @@ export default class AvatarDoc extends React.PureComponent {
|
|
208
222
|
imageUrl={null}
|
209
223
|
initials="JL"
|
210
224
|
displayName="Jeffrey Lebowski"
|
211
|
-
icon={{name: 'video-cancel', color: 'var(--sd-colour-state--
|
225
|
+
icon={{name: 'video-cancel', color: 'var(--sd-colour-state--canceled)'}}
|
212
226
|
/>
|
213
227
|
|
214
228
|
</Container>
|
215
|
-
|
216
|
-
|
229
|
+
<p className="docs-page__paragraph">// With icon and Coverage status indicator</p>
|
230
|
+
<Container gap='medium' className='sd-margin-b--3'>
|
231
|
+
<Avatar
|
232
|
+
displayName="Unassigned"
|
233
|
+
imageUrl={null}
|
234
|
+
initials={null}
|
235
|
+
size="small"
|
236
|
+
icon={{name: 'text', color: 'var(--sd-colour-state--assigned)'}}
|
237
|
+
statusDot={{color: 'var(--sd-colour-coverage-state--on-merit)'}}
|
238
|
+
/>
|
239
|
+
<Avatar
|
240
|
+
displayName="Unassigned"
|
241
|
+
imageUrl={null}
|
242
|
+
initials={null}
|
243
|
+
size="small"
|
244
|
+
icon={{name: 'photo', color: 'var(--sd-colour-state--assigned)'}}
|
245
|
+
statusDot={{color: 'var(--sd-colour-coverage-state--not-covering)'}}
|
246
|
+
/>
|
247
|
+
</Container>
|
217
248
|
</Markup.ReactMarkupPreview>
|
218
249
|
|
219
250
|
<Markup.ReactMarkupCode>{`
|
@@ -234,7 +265,7 @@ export default class AvatarDoc extends React.PureComponent {
|
|
234
265
|
imageUrl={null}
|
235
266
|
initials="Jeffrey Lebowski"
|
236
267
|
size="large"
|
237
|
-
icon={{name: 'print', color: '
|
268
|
+
icon={{name: 'print', color: 'var(--sd-colour-state--in-workflow)}}
|
238
269
|
statusIndicator="offline"
|
239
270
|
administratorIndicator
|
240
271
|
/>
|
@@ -244,7 +275,7 @@ export default class AvatarDoc extends React.PureComponent {
|
|
244
275
|
imageUrl={null}
|
245
276
|
initials='Jeffrey Lebowski'
|
246
277
|
size="large"
|
247
|
-
icon={{name: 'print', color: '
|
278
|
+
icon={{name: 'print', color: 'var(--sd-colour-state--done)'}}
|
248
279
|
administratorIndicator
|
249
280
|
/>
|
250
281
|
|
@@ -366,15 +397,24 @@ export default class AvatarDoc extends React.PureComponent {
|
|
366
397
|
imageUrl="/avatar.jpg"
|
367
398
|
initials="JL"
|
368
399
|
displayName="Jeffrey Lebowski"
|
369
|
-
icon={{name: 'text', color: 'var(--sd-colour-state--in-
|
400
|
+
icon={{name: 'text', color: 'var(--sd-colour-state--in-workflow)'}}
|
370
401
|
/>
|
371
402
|
|
372
403
|
<Avatar
|
373
404
|
size="x-large"
|
374
|
-
imageUrl=
|
375
|
-
initials=
|
376
|
-
displayName="
|
377
|
-
|
405
|
+
imageUrl={null}
|
406
|
+
initials={null}
|
407
|
+
displayName="Unassigned"
|
408
|
+
emptyLight
|
409
|
+
icon={{name: 'text', color: 'var(--sd-colour-state--canceled)'}}
|
410
|
+
/>
|
411
|
+
|
412
|
+
<Avatar
|
413
|
+
size="x-large"
|
414
|
+
imageUrl={null}
|
415
|
+
initials={null}
|
416
|
+
displayName="Unassigned"
|
417
|
+
icon={{name: 'text', color: 'var(--sd-colour-state--canceled)'}}
|
378
418
|
/>
|
379
419
|
|
380
420
|
<Avatar
|
@@ -382,10 +422,27 @@ export default class AvatarDoc extends React.PureComponent {
|
|
382
422
|
imageUrl={null}
|
383
423
|
initials="JL"
|
384
424
|
displayName="Jeffrey Lebowski"
|
385
|
-
icon={{name: 'video-cancel', color: 'var(--sd-colour-state--
|
425
|
+
icon={{name: 'video-cancel', color: 'var(--sd-colour-state--canceled)'}}
|
426
|
+
/>
|
427
|
+
|
428
|
+
// With icon and Coverage status indicator
|
429
|
+
<Avatar
|
430
|
+
displayName="Unassigned"
|
431
|
+
imageUrl={null}
|
432
|
+
initials={null}
|
433
|
+
size="small"
|
434
|
+
icon={{name: 'text', color: 'var(--sd-colour-state--assigned)'}}
|
435
|
+
statusDot={{color: 'var(--sd-colour-coverage-state--on-merit)'}}
|
436
|
+
/>
|
437
|
+
<Avatar
|
438
|
+
displayName="Unassigned"
|
439
|
+
imageUrl={null}
|
440
|
+
initials={null}
|
441
|
+
size="small"
|
442
|
+
icon={{name: 'photo', color: 'var(--sd-colour-state--assigned)'}}
|
443
|
+
statusDot={{color: 'var(--sd-colour-coverage-state--not-covering)'}}
|
386
444
|
/>
|
387
445
|
|
388
|
-
</AvatarWrapper>
|
389
446
|
`}
|
390
447
|
</Markup.ReactMarkupCode>
|
391
448
|
</Markup.ReactMarkup>
|
@@ -453,25 +510,25 @@ export default class AvatarDoc extends React.PureComponent {
|
|
453
510
|
imageUrl: null,
|
454
511
|
initials: "U3",
|
455
512
|
displayName: 'User3',
|
456
|
-
icon:{name: 'print', color: '
|
513
|
+
icon:{name: 'print', color: 'var(--sd-colour-state--in-workflow)'},
|
457
514
|
},
|
458
515
|
{
|
459
516
|
imageUrl: 'avatar-3.jpg',
|
460
517
|
initials: "U4",
|
461
518
|
displayName: 'User4',
|
462
|
-
icon:{name: 'print', color: '
|
519
|
+
icon:{name: 'print', color: 'var(--sd-colour-state--in-progress)'},
|
463
520
|
},
|
464
521
|
{
|
465
522
|
imageUrl: 'avatar-4.jpg',
|
466
523
|
initials: "U5",
|
467
524
|
displayName: 'User5',
|
468
|
-
icon:{name: 'print', color: '
|
525
|
+
icon:{name: 'print', color: 'var(--sd-colour-highlight)'},
|
469
526
|
},
|
470
527
|
{
|
471
528
|
imageUrl: null,
|
472
529
|
initials: "U6",
|
473
530
|
displayName: 'User6',
|
474
|
-
icon:{name: 'print', color: '
|
531
|
+
icon:{name: 'print', color: 'var(--sd-colour-state--in-progress)'},
|
475
532
|
},
|
476
533
|
];
|
477
534
|
|
@@ -571,39 +628,39 @@ export default class AvatarDoc extends React.PureComponent {
|
|
571
628
|
const avatars: Array<IAvatarInGroup> = [
|
572
629
|
{
|
573
630
|
imageUrl: 'avatar.jpg',
|
574
|
-
initials: "
|
575
|
-
displayName:
|
631
|
+
initials: "U1",
|
632
|
+
displayName: 'User1',
|
576
633
|
icon:{name: 'print', color: 'red'},
|
577
634
|
},
|
578
635
|
{
|
579
636
|
imageUrl: null,
|
580
|
-
initials: "
|
581
|
-
displayName:
|
637
|
+
initials: "U2",
|
638
|
+
displayName: 'User2',
|
582
639
|
icon:{name: 'print', color: 'green'},
|
583
640
|
},
|
584
641
|
{
|
585
642
|
imageUrl: null,
|
586
|
-
initials: "
|
587
|
-
displayName:
|
588
|
-
icon:{name: 'print', color: '
|
643
|
+
initials: "U3",
|
644
|
+
displayName: 'User3',
|
645
|
+
icon:{name: 'print', color: 'var(--sd-colour-state--in-workflow)'},
|
589
646
|
},
|
590
647
|
{
|
591
648
|
imageUrl: 'avatar-3.jpg',
|
592
|
-
initials: "
|
593
|
-
displayName:
|
594
|
-
icon:{name: 'print', color: '
|
649
|
+
initials: "U4",
|
650
|
+
displayName: 'User4',
|
651
|
+
icon:{name: 'print', color: 'var(--sd-colour-state--in-progress)'},
|
595
652
|
},
|
596
653
|
{
|
597
654
|
imageUrl: 'avatar-4.jpg',
|
598
|
-
initials: "
|
599
|
-
displayName:
|
600
|
-
icon:{name: 'print', color: '
|
655
|
+
initials: "U5",
|
656
|
+
displayName: 'User5',
|
657
|
+
icon:{name: 'print', color: 'var(--sd-colour-highlight)'},
|
601
658
|
},
|
602
659
|
{
|
603
660
|
imageUrl: null,
|
604
|
-
initials: "
|
605
|
-
displayName:
|
606
|
-
icon:{name: 'print', color: '
|
661
|
+
initials: "U6",
|
662
|
+
displayName: 'User6',
|
663
|
+
icon:{name: 'print', color: 'var(--sd-colour-state--in-progress)'},
|
607
664
|
},
|
608
665
|
];
|
609
666
|
|
@@ -223,7 +223,7 @@ export default class ButtonsDoc extends React.Component {
|
|
223
223
|
<Markup.ReactMarkupPreview>
|
224
224
|
<p className="docs-page__paragraph">// Large default and small</p>
|
225
225
|
<div className="docs-page__content-row">
|
226
|
-
|
226
|
+
<Button type="warning" icon="exclamation-sign" text="exclamation-sign" size="large" iconOnly={true} onClick={()=> false} />
|
227
227
|
<Button type="primary" icon="plus-sign" text="plus-sign" style="hollow" size="large" iconOnly={true} onClick={()=> false} />
|
228
228
|
<Button type="highlight" icon="bell" text="bell" size="large" iconOnly={true} onClick={()=> false} />
|
229
229
|
<Button icon="info-sign" text="info-sign" iconOnly={true} onClick={()=> false} />
|
@@ -236,14 +236,16 @@ export default class ButtonsDoc extends React.Component {
|
|
236
236
|
|
237
237
|
<p className="docs-page__paragraph">// Circle (large, default and small)</p>
|
238
238
|
<div className="docs-page__content-row">
|
239
|
-
|
239
|
+
<Button type="warning" icon="exclamation-sign" text="exclamation-sign" size="large" shape="round" iconOnly={true} onClick={()=> false} />
|
240
240
|
<Button type="primary" icon="plus-large" text="plus-large" style="hollow" size="large" shape="round" iconOnly={true} onClick={()=> false} />
|
241
|
+
<Button icon="chevron-up-thin" text="Pull up" style="hollow" shape="round" size="large" iconOnly={true} onClick={()=> false} />
|
241
242
|
<Button type="highlight" icon="bell" text="bell" size="large" shape="round" iconOnly={true} onClick={()=> false} />
|
242
243
|
<Button size="normal" icon="info-sign" text="info-sign" shape="round" iconOnly={true} onClick={()=> false} />
|
243
244
|
<Button type="primary" icon="plus-large" text="plus-large" shape="round" iconOnly={true} onClick={()=> false} />
|
244
245
|
<Button type="success" icon="ok" text="ok" shape="round" iconOnly={true} onClick={()=> false} />
|
245
246
|
<Button type="alert" icon="close-small" text="close-small" size="small" shape="round" iconOnly={true} onClick={()=> false} />
|
246
|
-
<Button type="primary" icon="plus-large" text="
|
247
|
+
<Button type="primary" icon="plus-large" text="Add New" size="small" shape="round" iconOnly={true} onClick={()=> false} />
|
248
|
+
<Button icon="chevron-up-thin" text="Pull up" size="small" shape="round" iconOnly={true} onClick={()=> false} />
|
247
249
|
<Button type="sd-green" icon="star" text="star" size="small" shape="round" iconOnly={true} onClick={()=> false} />
|
248
250
|
</div>
|
249
251
|
</Markup.ReactMarkupPreview>
|