@synerise/ds-avatar 0.13.37 → 0.14.3

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/CHANGELOG.md CHANGED
@@ -3,6 +3,38 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [0.14.3](https://github.com/synerise/synerise-design/compare/@synerise/ds-avatar@0.14.2...@synerise/ds-avatar@0.14.3) (2021-11-22)
7
+
8
+ **Note:** Version bump only for package @synerise/ds-avatar
9
+
10
+
11
+
12
+
13
+
14
+ ## [0.14.2](https://github.com/synerise/synerise-design/compare/@synerise/ds-avatar@0.14.1...@synerise/ds-avatar@0.14.2) (2021-11-16)
15
+
16
+ **Note:** Version bump only for package @synerise/ds-avatar
17
+
18
+
19
+
20
+
21
+
22
+ ## [0.14.1](https://github.com/synerise/synerise-design/compare/@synerise/ds-avatar@0.13.37...@synerise/ds-avatar@0.14.1) (2021-11-09)
23
+
24
+ **Note:** Version bump only for package @synerise/ds-avatar
25
+
26
+
27
+
28
+
29
+
30
+ # [0.14.0](https://github.com/synerise/synerise-design/compare/@synerise/ds-avatar@0.13.37...@synerise/ds-avatar@0.14.0) (2021-11-09)
31
+
32
+ **Note:** Version bump only for package @synerise/ds-avatar
33
+
34
+
35
+
36
+
37
+
6
38
  ## [0.13.37](https://github.com/synerise/synerise-design/compare/@synerise/ds-avatar@0.13.36...@synerise/ds-avatar@0.13.37) (2021-11-05)
7
39
 
8
40
  **Note:** Version bump only for package @synerise/ds-avatar
package/README.md CHANGED
@@ -95,8 +95,7 @@ We can present avatars as a single entity or in a group.
95
95
  ### Avatar icons
96
96
 
97
97
  ```
98
- import Icon from "@synerise/ds-icon";
99
- import { FileM} from "@synerise/ds-icon/dist/icons";
98
+ import Icon, { FileM } from "@synerise/ds-icon";
100
99
  <div style={{ 'display': 'flex', 'justifyContent': 'space-between' }}>
101
100
  <Avatar tooltip={{name: 'Jan Janowski', email: 'jj@test.pl'}} shape="square" size="medium" backgroundColor="blue" backgroundColorHue="600">JJ</Avatar>
102
101
  <Avatar tooltip={{name: 'Jan Janowski', email: 'jj@test.pl'}} shape="cirlce" size="medium" backgroundColor="blue" backgroundColorHue="600">JJ</Avatar>
@@ -194,4 +193,4 @@ import { ObjectAvatar } from '@synerise/ds-avatar';
194
193
  | disabled | Determines if avatar is disabled | boolean | `false` | |
195
194
  | iconComponent | Replace default user icon | React.ReactNode | - | |
196
195
  | size | Size of the avatar | `small` / `medium` / `large` / `extraLarge` | `medium` | |
197
- | tooltip | Change default tooltip text displayed on hover | { title: string, description: string, status: string } / `false` | - | |
196
+ | tooltip | Change default tooltip text displayed on hover | { title: string, description: string, status: string } / `false` | - | |
package/dist/Avatar.js CHANGED
@@ -1,3 +1,6 @@
1
+ var _excluded = ["backgroundColor", "backgroundColorHue", "children", "disabled", "hasStatus", "iconComponent", "iconScale", "tooltip", "size"],
2
+ _excluded2 = ["type"];
3
+
1
4
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
5
 
3
6
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
@@ -6,8 +9,6 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
6
9
 
7
10
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
8
11
 
9
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
10
-
11
12
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
12
13
 
13
14
  import * as React from 'react';
@@ -42,16 +43,16 @@ var Avatar = function Avatar(_ref) {
42
43
  tooltip = _ref$tooltip === void 0 ? {} : _ref$tooltip,
43
44
  _ref$size = _ref.size,
44
45
  size = _ref$size === void 0 ? DEFAULT_SIZE : _ref$size,
45
- antdProps = _objectWithoutProperties(_ref, ["backgroundColor", "backgroundColorHue", "children", "disabled", "hasStatus", "iconComponent", "iconScale", "tooltip", "size"]);
46
+ antdProps = _objectWithoutPropertiesLoose(_ref, _excluded);
46
47
 
47
48
  var sizes = _objectSpread({}, ICON_SIZES);
48
49
 
49
50
  var iconElement = iconComponent; // Enforce icon to be scaled
50
51
 
51
- if (isIconComponent((_iconElement = iconElement) === null || _iconElement === void 0 ? void 0 : _iconElement.type) && iconScale) {
52
+ if (isIconComponent((_iconElement = iconElement) == null ? void 0 : _iconElement.type) && iconScale) {
52
53
  var _iconElement$props$co, _iconElement$props$co2, _iconElement$props$co3;
53
54
 
54
- if ((_iconElement$props$co = iconElement.props.component) === null || _iconElement$props$co === void 0 ? void 0 : (_iconElement$props$co2 = _iconElement$props$co.type) === null || _iconElement$props$co2 === void 0 ? void 0 : (_iconElement$props$co3 = _iconElement$props$co2.name) === null || _iconElement$props$co3 === void 0 ? void 0 : _iconElement$props$co3.match(/S$/)) {
55
+ if ((_iconElement$props$co = iconElement.props.component) != null && (_iconElement$props$co2 = _iconElement$props$co.type) != null && (_iconElement$props$co3 = _iconElement$props$co2.name) != null && _iconElement$props$co3.match(/S$/)) {
55
56
  sizes.small = 24;
56
57
  }
57
58
 
@@ -63,16 +64,16 @@ var Avatar = function Avatar(_ref) {
63
64
 
64
65
  var _getTooltipProps = getTooltipProps(tooltip),
65
66
  type = _getTooltipProps.type,
66
- tooltipProps = _objectWithoutProperties(_getTooltipProps, ["type"]);
67
+ tooltipProps = _objectWithoutPropertiesLoose(_getTooltipProps, _excluded2);
67
68
 
68
69
  var hasTooltip = Object.keys(tooltipProps).length && !!Object.values(tooltipProps).reduce(function (prev, next) {
69
70
  return next || prev;
70
71
  });
71
- return React.createElement(Tooltip, _extends({
72
+ return /*#__PURE__*/React.createElement(Tooltip, _extends({
72
73
  type: type,
73
74
  mouseLeaveDelay: 0,
74
75
  mouseEnterDelay: 0
75
- }, tooltipProps), React.createElement(AntdAvatar, _extends({
76
+ }, tooltipProps), /*#__PURE__*/React.createElement(AntdAvatar, _extends({
76
77
  className: "ds-avatar",
77
78
  hasStatus: hasStatus,
78
79
  hasTooltip: hasTooltip,
@@ -11,7 +11,7 @@ var IMG_SRC = 'https://hsto.org/web/77c/061/c05/77c061c0550f4acd98380bf554eb8886
11
11
  describe('Avatar', function () {
12
12
  it('should render with text', function () {
13
13
  // ARRANGE
14
- var _renderWithProvider = renderWithProvider(React.createElement(Avatar, {
14
+ var _renderWithProvider = renderWithProvider( /*#__PURE__*/React.createElement(Avatar, {
15
15
  backgroundColor: FERN,
16
16
  size: DEF_SIZE,
17
17
  shape: CIRCLE_SHAPE
@@ -23,9 +23,9 @@ describe('Avatar', function () {
23
23
  });
24
24
  it('should render with custom icon', function () {
25
25
  // ARRANGE
26
- var _renderWithProvider2 = renderWithProvider(React.createElement(Avatar, {
26
+ var _renderWithProvider2 = renderWithProvider( /*#__PURE__*/React.createElement(Avatar, {
27
27
  backgroundColor: FERN,
28
- iconComponent: React.createElement("div", null, React.createElement("svg", null, "i"))
28
+ iconComponent: /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("svg", null, "i"))
29
29
  })),
30
30
  container = _renderWithProvider2.container;
31
31
 
@@ -35,7 +35,7 @@ describe('Avatar', function () {
35
35
  });
36
36
  it('should render with image', function () {
37
37
  // ARRANGE
38
- var _renderWithProvider3 = renderWithProvider(React.createElement(Avatar, {
38
+ var _renderWithProvider3 = renderWithProvider( /*#__PURE__*/React.createElement(Avatar, {
39
39
  src: IMG_SRC
40
40
  })),
41
41
  container = _renderWithProvider3.container;
@@ -43,13 +43,13 @@ describe('Avatar', function () {
43
43
  var img = container.querySelector('img'); // ASSERT
44
44
 
45
45
  expect(container).toContainElement(img);
46
- expect(img).toHaveAttribute('src', expect.stringContaining("".concat(IMG_SRC)));
46
+ expect(img).toHaveAttribute('src', expect.stringContaining("" + IMG_SRC));
47
47
  });
48
48
  it('should render with badge dot', function () {
49
49
  // ARRANGE
50
- var _renderWithProvider4 = renderWithProvider(React.createElement(Badge, {
50
+ var _renderWithProvider4 = renderWithProvider( /*#__PURE__*/React.createElement(Badge, {
51
51
  status: "inactive"
52
- }, React.createElement(Avatar, {
52
+ }, /*#__PURE__*/React.createElement(Avatar, {
53
53
  hasStatus: true,
54
54
  src: IMG_SRC,
55
55
  size: "small"
@@ -66,7 +66,7 @@ describe('Avatar', function () {
66
66
  });
67
67
  it('should render with proper styles', function () {
68
68
  // ARRANGE
69
- var _renderWithProvider5 = renderWithProvider(React.createElement(Avatar, {
69
+ var _renderWithProvider5 = renderWithProvider( /*#__PURE__*/React.createElement(Avatar, {
70
70
  backgroundColor: RED,
71
71
  shape: SQUARE_SHAPE,
72
72
  size: "small"
@@ -80,7 +80,7 @@ describe('Avatar', function () {
80
80
  });
81
81
  it('should render with inline styles bg color', function () {
82
82
  // ARRANGE
83
- var _renderWithProvider6 = renderWithProvider(React.createElement(Avatar, {
83
+ var _renderWithProvider6 = renderWithProvider( /*#__PURE__*/React.createElement(Avatar, {
84
84
  backgroundColor: RED,
85
85
  shape: SQUARE_SHAPE,
86
86
  style: {
@@ -95,7 +95,7 @@ describe('Avatar', function () {
95
95
  });
96
96
  it('should render with disabled styles', function () {
97
97
  // ARRANGE
98
- var _renderWithProvider7 = renderWithProvider(React.createElement(Avatar, {
98
+ var _renderWithProvider7 = renderWithProvider( /*#__PURE__*/React.createElement(Avatar, {
99
99
  disabled: true
100
100
  })),
101
101
  container = _renderWithProvider7.container;
@@ -106,7 +106,7 @@ describe('Avatar', function () {
106
106
  });
107
107
  it('should contain `ds-avatar` className', function () {
108
108
  // ARRANGE
109
- var _renderWithProvider8 = renderWithProvider(React.createElement(Avatar, null, "AA")),
109
+ var _renderWithProvider8 = renderWithProvider( /*#__PURE__*/React.createElement(Avatar, null, "AA")),
110
110
  container = _renderWithProvider8.container; // ASSERT
111
111
 
112
112
 
@@ -1,6 +1,6 @@
1
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
1
+ var _excluded = ["backgroundColorHue", "backgroundColor", "onClick", "hasStatus", "hasTooltip"];
2
2
 
3
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
4
4
 
5
5
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
6
6
 
@@ -14,7 +14,7 @@ export var TooltipGroup = styled.div.withConfig({
14
14
  })(["margin:13px 8px;font-size:11px;line-height:1.45;text-align:center;p{margin:0;font-weight:normal;&:first-child{font-weight:500;}}"]);
15
15
 
16
16
  var applyBgColors = function applyBgColors(props) {
17
- return css(["background:", ";"], props.theme.palette["".concat(props.backgroundColor, "-").concat(props.backgroundColorHue ? props.backgroundColorHue : '400')]);
17
+ return css(["background:", ";"], props.theme.palette[props.backgroundColor + "-" + (props.backgroundColorHue ? props.backgroundColorHue : '400')]);
18
18
  };
19
19
 
20
20
  var applyDisabledStyles = function applyDisabledStyles(props) {
@@ -39,11 +39,11 @@ var FONT_SIZE = {
39
39
  };
40
40
 
41
41
  var applyBadgePosition = function applyBadgePosition(props) {
42
- return css(["top:", ";right:", ";"], BADGE_POSITION["".concat(props.shape).concat(props.size)] || '0', BADGE_POSITION["".concat(props.shape).concat(props.size)] || '0');
42
+ return css(["top:", ";right:", ";"], BADGE_POSITION["" + props.shape + props.size] || '0', BADGE_POSITION["" + props.shape + props.size] || '0');
43
43
  };
44
44
 
45
45
  var applyFontSize = function applyFontSize(props) {
46
- return css(["", ";"], macro[FONT_SIZE["".concat(props.size)]]);
46
+ return css(["", ";"], macro[FONT_SIZE["" + props.size]]);
47
47
  }; // eslint-disable-next-line react/jsx-props-no-spreading
48
48
 
49
49
 
@@ -53,9 +53,9 @@ export default styled(function (_ref) {
53
53
  onClick = _ref.onClick,
54
54
  hasStatus = _ref.hasStatus,
55
55
  hasTooltip = _ref.hasTooltip,
56
- rest = _objectWithoutProperties(_ref, ["backgroundColorHue", "backgroundColor", "onClick", "hasStatus", "hasTooltip"]);
56
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded);
57
57
 
58
- return React.createElement(Avatar, _extends({
58
+ return /*#__PURE__*/React.createElement(Avatar, _extends({
59
59
  onClick: onClick
60
60
  }, rest));
61
61
  }).withConfig({
@@ -0,0 +1 @@
1
+ export {};
@@ -1,25 +1,12 @@
1
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
-
3
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
-
5
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
6
-
7
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
1
+ var _excluded = ["backgroundColor", "badgeStatus", "iconComponent", "color", "object", "size", "src", "tooltip", "text", "children", "disabled", "style"];
8
2
 
9
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
10
-
11
- function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
12
-
13
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
-
15
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
16
4
 
17
5
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
18
6
 
19
7
  import * as React from 'react';
20
- import { MailM } from '@synerise/ds-icon/dist/icons';
8
+ import Icon, { MailM } from '@synerise/ds-icon';
21
9
  import theme from '@synerise/ds-core/dist/js/DSProvider/ThemeProvider/theme';
22
- import Icon from '@synerise/ds-icon';
23
10
  import Badge from '@synerise/ds-badge';
24
11
  import Status from '@synerise/ds-status';
25
12
  import Avatar from '../Avatar';
@@ -42,7 +29,7 @@ var ObjectAvatar = function ObjectAvatar(_ref) {
42
29
  children = _ref.children,
43
30
  disabled = _ref.disabled,
44
31
  style = _ref.style,
45
- restProps = _objectWithoutProperties(_ref, ["backgroundColor", "badgeStatus", "iconComponent", "color", "object", "size", "src", "tooltip", "text", "children", "disabled", "style"]);
32
+ restProps = _objectWithoutPropertiesLoose(_ref, _excluded);
46
33
 
47
34
  var _ref2 = object || {},
48
35
  objectName = _ref2.name,
@@ -53,7 +40,7 @@ var ObjectAvatar = function ObjectAvatar(_ref) {
53
40
  var defaultTooltip = {
54
41
  title: objectName || '',
55
42
  description: objectDescription || '',
56
- status: objectStatus ? React.createElement(Status, {
43
+ status: objectStatus ? /*#__PURE__*/React.createElement(Status, {
57
44
  label: objectStatus,
58
45
  type: "disabled"
59
46
  }) : ''
@@ -61,18 +48,17 @@ var ObjectAvatar = function ObjectAvatar(_ref) {
61
48
  var avatarText = getObjectName(objectName, text);
62
49
 
63
50
  var _getColorByText = getColorByText(avatarText, backgroundColor),
64
- _getColorByText2 = _slicedToArray(_getColorByText, 2),
65
- avatarBackgroundColor = _getColorByText2[0],
66
- avatarBackgroundHue = _getColorByText2[1];
51
+ avatarBackgroundColor = _getColorByText[0],
52
+ avatarBackgroundHue = _getColorByText[1];
67
53
 
68
- var iconColor = theme.palette["".concat(color || DEFAULT_COLOR, "-").concat(DEFAULT_COLOR_HUE)];
54
+ var iconColor = theme.palette[(color || DEFAULT_COLOR) + "-" + DEFAULT_COLOR_HUE];
69
55
  var avatarTooltip = tooltip === undefined && (defaultTooltip.title || defaultTooltip.description) ? defaultTooltip : tooltip;
70
56
  var iconElement = addIconColor(iconComponent, iconColor);
71
- var icon = !avatarText ? iconElement || React.createElement(Icon, {
72
- component: React.createElement(MailM, null),
57
+ var icon = !avatarText ? iconElement || /*#__PURE__*/React.createElement(Icon, {
58
+ component: /*#__PURE__*/React.createElement(MailM, null),
73
59
  color: iconColor
74
60
  }) : null;
75
- var avatarRender = React.createElement(Avatar, _extends({
61
+ var avatarRender = /*#__PURE__*/React.createElement(Avatar, _extends({
76
62
  iconComponent: icon,
77
63
  shape: "square",
78
64
  backgroundColor: avatarBackgroundColor,
@@ -84,9 +70,9 @@ var ObjectAvatar = function ObjectAvatar(_ref) {
84
70
  disabled: disabled,
85
71
  style: badgeStatus ? {} : style
86
72
  }, restProps), children || avatarText);
87
- return badgeStatus ? React.createElement("span", {
73
+ return badgeStatus ? /*#__PURE__*/React.createElement("span", {
88
74
  style: style
89
- }, React.createElement(Badge, {
75
+ }, /*#__PURE__*/React.createElement(Badge, {
90
76
  status: badgeStatus
91
77
  }, avatarRender)) : avatarRender;
92
78
  };
@@ -13,20 +13,26 @@ var testObjectImage = {
13
13
  avatar: 'https://image.com/image.jpg'
14
14
  };
15
15
  describe('ObjectAvatar', function () {
16
- test('should match snapshot', function () {
17
- var objectAvatar = renderWithProvider(React.createElement(ObjectAvatar, null));
18
- expect(objectAvatar).toMatchSnapshot();
16
+ test('should render', function () {
17
+ var _renderWithProvider = renderWithProvider( /*#__PURE__*/React.createElement(ObjectAvatar, null)),
18
+ container = _renderWithProvider.container,
19
+ debug = _renderWithProvider.debug;
20
+
21
+ debug();
22
+ expect(container.getElementsByClassName('mail-m').length).toBe(1);
19
23
  });
20
- test('should match snapshot with object data', function () {
21
- var objectAvatar = renderWithProvider(React.createElement(ObjectAvatar, {
24
+ test('should render with object data', function () {
25
+ var objectAvatar = renderWithProvider( /*#__PURE__*/React.createElement(ObjectAvatar, {
22
26
  object: testObject
23
27
  }));
24
- expect(objectAvatar).toMatchSnapshot();
28
+ var firstLetters = objectAvatar.getByText(testObject.name.charAt(0));
29
+ expect(firstLetters).toBeTruthy();
25
30
  });
26
- test('should match snapshot with object data and avatar', function () {
27
- var objectAvatar = renderWithProvider(React.createElement(ObjectAvatar, {
31
+ test('should render with object data and avatar', function () {
32
+ var objectAvatar = renderWithProvider( /*#__PURE__*/React.createElement(ObjectAvatar, {
28
33
  object: testObjectImage
29
34
  }));
30
- expect(objectAvatar).toMatchSnapshot();
35
+ var img = objectAvatar.getByRole('img');
36
+ expect(img).toHaveAttribute('src', testObjectImage.avatar);
31
37
  });
32
38
  });
@@ -1,25 +1,12 @@
1
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
-
3
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
-
5
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
6
-
7
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
1
+ var _excluded = ["backgroundColor", "size", "text", "tooltip", "badgeStatus", "user", "src", "iconComponent", "children", "disabled", "style"];
8
2
 
9
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
10
-
11
- function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
12
-
13
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
-
15
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
16
4
 
17
5
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
18
6
 
19
7
  import * as React from 'react';
20
- import { UserM, UserS } from '@synerise/ds-icon/dist/icons';
8
+ import Icon, { UserM, UserS } from '@synerise/ds-icon';
21
9
  import theme from '@synerise/ds-core/dist/js/DSProvider/ThemeProvider/theme';
22
- import Icon from '@synerise/ds-icon';
23
10
  import Badge from '@synerise/ds-badge';
24
11
  import Avatar from '../Avatar';
25
12
  import { getUserText, addIconColor, getColorByText } from '../utils';
@@ -39,7 +26,7 @@ var UserAvatar = function UserAvatar(_ref) {
39
26
  children = _ref.children,
40
27
  disabled = _ref.disabled,
41
28
  style = _ref.style,
42
- restProps = _objectWithoutProperties(_ref, ["backgroundColor", "size", "text", "tooltip", "badgeStatus", "user", "src", "iconComponent", "children", "disabled", "style"]);
29
+ restProps = _objectWithoutPropertiesLoose(_ref, _excluded);
43
30
 
44
31
  var _ref2 = user || {},
45
32
  _ref2$firstName = _ref2.firstName,
@@ -52,23 +39,22 @@ var UserAvatar = function UserAvatar(_ref) {
52
39
 
53
40
  var avatarText = getUserText(user, src, text);
54
41
  var defaultTooltip = {
55
- title: "".concat(firstName || '', " ").concat(lastName || '').trim(),
42
+ title: ((firstName || '') + " " + (lastName || '')).trim(),
56
43
  description: email || ''
57
44
  };
58
45
  var avatarTooltip = (tooltip === undefined || tooltip === true) && (defaultTooltip.title || defaultTooltip.description) ? defaultTooltip : tooltip;
59
- var iconColor = theme.palette["".concat(DEFAULT_COLOR, "-").concat(DEFAULT_COLOR_HUE)];
46
+ var iconColor = theme.palette[DEFAULT_COLOR + "-" + DEFAULT_COLOR_HUE];
60
47
  var iconElement = addIconColor(iconComponent, iconColor);
61
- var icon = !avatarText ? iconElement || React.createElement(Icon, {
62
- component: size === 'small' ? React.createElement(UserS, null) : React.createElement(UserM, null),
48
+ var icon = !avatarText ? iconElement || /*#__PURE__*/React.createElement(Icon, {
49
+ component: size === 'small' ? /*#__PURE__*/React.createElement(UserS, null) : /*#__PURE__*/React.createElement(UserM, null),
63
50
  color: theme.palette['grey-500']
64
51
  }) : null;
65
52
 
66
53
  var _getColorByText = getColorByText(avatarText, backgroundColor),
67
- _getColorByText2 = _slicedToArray(_getColorByText, 2),
68
- avatarBackgroundColor = _getColorByText2[0],
69
- avatarBackgroundHue = _getColorByText2[1];
54
+ avatarBackgroundColor = _getColorByText[0],
55
+ avatarBackgroundHue = _getColorByText[1];
70
56
 
71
- var avatarRender = React.createElement(Avatar, _extends({
57
+ var avatarRender = /*#__PURE__*/React.createElement(Avatar, _extends({
72
58
  iconComponent: icon,
73
59
  shape: "circle",
74
60
  hasStatus: disabled === true ? false : !!badgeStatus,
@@ -80,9 +66,9 @@ var UserAvatar = function UserAvatar(_ref) {
80
66
  disabled: disabled,
81
67
  style: badgeStatus ? {} : style
82
68
  }, restProps), children || avatarText);
83
- return badgeStatus ? React.createElement("span", {
69
+ return badgeStatus ? /*#__PURE__*/React.createElement("span", {
84
70
  style: style
85
- }, React.createElement(Badge, {
71
+ }, /*#__PURE__*/React.createElement(Badge, {
86
72
  status: badgeStatus
87
73
  }, avatarRender)) : avatarRender;
88
74
  };
@@ -13,20 +13,24 @@ var testUserImage = {
13
13
  avatar: 'http://image.com/image.jpg'
14
14
  };
15
15
  describe('UserAvatar', function () {
16
- test('should match snapshot', function () {
17
- var userAvatar = renderWithProvider(React.createElement(UserAvatar, null));
18
- expect(userAvatar).toMatchSnapshot();
16
+ test('should render', function () {
17
+ var _renderWithProvider = renderWithProvider( /*#__PURE__*/React.createElement(UserAvatar, null)),
18
+ container = _renderWithProvider.container;
19
+
20
+ expect(container.getElementsByClassName('user-m').length).toBe(1);
19
21
  });
20
- test('should match snapshot with user data', function () {
21
- var userAvatar = renderWithProvider(React.createElement(UserAvatar, {
22
+ test('should render with user data', function () {
23
+ var userAvatar = renderWithProvider( /*#__PURE__*/React.createElement(UserAvatar, {
22
24
  user: testUser
23
25
  }));
24
- expect(userAvatar).toMatchSnapshot();
26
+ var nameFirstLetters = userAvatar.getByText(testUser.firstName.charAt(0) + testUser.lastName.charAt(0));
27
+ expect(nameFirstLetters).toBeTruthy();
25
28
  });
26
- test('should match snapshot with user data and avatar', function () {
27
- var userAvatar = renderWithProvider(React.createElement(UserAvatar, {
29
+ test('should render with user data and avatar', function () {
30
+ var userAvatar = renderWithProvider( /*#__PURE__*/React.createElement(UserAvatar, {
28
31
  user: testUserImage
29
32
  }));
30
- expect(userAvatar).toMatchSnapshot();
33
+ var img = userAvatar.getByRole('img');
34
+ expect(img).toHaveAttribute('src', testUserImage.avatar);
31
35
  });
32
36
  });
package/dist/utils.js CHANGED
@@ -4,8 +4,6 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
4
4
 
5
5
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
6
 
7
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
8
-
9
7
  import * as React from 'react';
10
8
  import Icon from '@synerise/ds-icon';
11
9
  import selectColorByLetter from '@synerise/ds-utils/dist/selectColorByLetter/selectColorByLetter';
@@ -14,9 +12,15 @@ function getFirstLetter(from) {
14
12
  return (from || '').substr(0, 1).toUpperCase();
15
13
  }
16
14
 
17
- export function getUserText(user) {
18
- var src = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
19
- var text = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
15
+ export function getUserText(user, src, text) {
16
+ if (src === void 0) {
17
+ src = '';
18
+ }
19
+
20
+ if (text === void 0) {
21
+ text = '';
22
+ }
23
+
20
24
  var _user$firstName = user.firstName,
21
25
  firstName = _user$firstName === void 0 ? '' : _user$firstName,
22
26
  _user$lastName = user.lastName,
@@ -27,16 +31,22 @@ export function getUserText(user) {
27
31
  avatar = _user$avatar === void 0 ? '' : _user$avatar;
28
32
  if (src || avatar) return null;
29
33
  if (text) return text;
30
- if (firstName || lastName) return "".concat(getFirstLetter(firstName)).concat(getFirstLetter(lastName));
34
+ if (firstName || lastName) return "" + getFirstLetter(firstName) + getFirstLetter(lastName);
31
35
  if (email) return getFirstLetter(email);
32
36
  return null;
33
37
  }
34
38
  export function isIconComponent(component) {
35
39
  return component ? component.name === Icon.name : false;
36
40
  }
37
- export function getObjectName() {
38
- var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
39
- var text = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
41
+ export function getObjectName(name, text) {
42
+ if (name === void 0) {
43
+ name = '';
44
+ }
45
+
46
+ if (text === void 0) {
47
+ text = '';
48
+ }
49
+
40
50
  if (text) return text.toUpperCase();
41
51
  if (name) return name.substr(0, 1).toUpperCase();
42
52
  return null;
@@ -46,7 +56,7 @@ export function addIconColor(iconComponent, color) {
46
56
 
47
57
  var iconElement = iconComponent;
48
58
 
49
- if (isIconComponent((_iconElement = iconElement) === null || _iconElement === void 0 ? void 0 : _iconElement.type) && !((_iconElement2 = iconElement) === null || _iconElement2 === void 0 ? void 0 : (_iconElement2$props = _iconElement2.props) === null || _iconElement2$props === void 0 ? void 0 : _iconElement2$props.color)) {
59
+ if (isIconComponent((_iconElement = iconElement) == null ? void 0 : _iconElement.type) && !((_iconElement2 = iconElement) != null && (_iconElement2$props = _iconElement2.props) != null && _iconElement2$props.color)) {
50
60
  iconElement = React.cloneElement(iconElement, {
51
61
  color: color
52
62
  });
@@ -57,13 +67,13 @@ export function addIconColor(iconComponent, color) {
57
67
  export function getColorByText(text, backgroundColor) {
58
68
  var _ref;
59
69
 
60
- var autoColor = ((_ref = typeof text === 'string' ? selectColorByLetter(text.slice(0, 1), true) : {}) === null || _ref === void 0 ? void 0 : _ref.color) || 'grey';
70
+ var autoColor = ((_ref = typeof text === 'string' ? selectColorByLetter(text.slice(0, 1), true) : {}) == null ? void 0 : _ref.color) || 'grey';
61
71
  var color = text && backgroundColor && backgroundColor !== 'auto' ? backgroundColor : autoColor;
62
72
  var hue = text ? '500' : '100';
63
73
  return [color, hue];
64
74
  }
65
75
  export function getTooltipProps(tooltip) {
66
- var tooltipProps = _typeof(tooltip) === 'object' ? _objectSpread({}, tooltip, {
76
+ var tooltipProps = typeof tooltip === 'object' ? _objectSpread({}, tooltip, {
67
77
  title: tooltip.title || tooltip.name,
68
78
  description: tooltip.description || tooltip.email
69
79
  }) : {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@synerise/ds-avatar",
3
- "version": "0.13.37",
3
+ "version": "0.14.3",
4
4
  "description": "Avatar UI Component for the Synerise Design System",
5
5
  "license": "ISC",
6
6
  "repository": "synerise/synerise-design",
@@ -32,10 +32,10 @@
32
32
  ],
33
33
  "types": "dist/index.d.ts",
34
34
  "dependencies": {
35
- "@synerise/ds-badge": "^0.4.81",
36
- "@synerise/ds-icon": "^0.45.2",
37
- "@synerise/ds-status": "^0.4.1",
38
- "@synerise/ds-tooltip": "^0.10.56"
35
+ "@synerise/ds-badge": "^0.5.3",
36
+ "@synerise/ds-icon": "^0.46.2",
37
+ "@synerise/ds-status": "^0.5.3",
38
+ "@synerise/ds-tooltip": "^0.11.2"
39
39
  },
40
40
  "peerDependencies": {
41
41
  "@synerise/ds-core": "*",
@@ -45,5 +45,5 @@
45
45
  "devDependencies": {
46
46
  "@synerise/ds-utils": "^0.19.0"
47
47
  },
48
- "gitHead": "bf865b6d1967c42effb68dc794f34dd18ddebe27"
48
+ "gitHead": "2468359677783819939fb9f1ef5acc36667ecd1a"
49
49
  }