@occmundial/occ-atomic 3.0.0-beta.7 → 3.0.0-beta.70

Sign up to get free protection for your applications and to get access to all the features.
Files changed (170) hide show
  1. package/CHANGELOG.md +549 -0
  2. package/build/Avatar/Avatar.js +69 -21
  3. package/build/Avatar/Avatar.test.js +15 -8
  4. package/build/Avatar/AvatarContent/AvatarContent.js +61 -21
  5. package/build/Avatar/AvatarContent/AvatarContent.test.js +4 -18
  6. package/build/Avatar/AvatarContent/__snapshots__/AvatarContent.test.js.snap +75 -15
  7. package/build/Avatar/AvatarContent/styles.js +88 -21
  8. package/build/Avatar/__snapshots__/Avatar.test.js.snap +11 -2
  9. package/build/Avatar/styles.js +18 -7
  10. package/build/Banner/Banner.js +30 -40
  11. package/build/Banner/Banner.test.js +64 -17
  12. package/build/Banner/__snapshots__/Banner.test.js.snap +0 -28
  13. package/build/Banner/index.js +1 -6
  14. package/build/Button/Button.js +1 -1
  15. package/build/Button/Button.test.js +0 -11
  16. package/build/Button/__snapshots__/Button.test.js.snap +63 -67
  17. package/build/Button/styles.js +42 -75
  18. package/build/Checkbox/Checkbox.js +48 -3
  19. package/build/Checkbox/__snapshots__/Checkbox.test.js.snap +81 -49
  20. package/build/Checkbox/styles.js +91 -48
  21. package/build/Drawer/Drawer.js +40 -0
  22. package/build/{Header/Nav/Nav.js → Drawer/index.js} +54 -39
  23. package/build/Drawer/index.test.js +52 -0
  24. package/build/Drawer/styles.js +61 -0
  25. package/build/Droplist/__snapshots__/Droplist.test.js.snap +5 -5
  26. package/build/Fab/__snapshots__/Fab.test.js.snap +2 -2
  27. package/build/Footer/Footer.js +81 -87
  28. package/build/Footer/List/List.js +89 -124
  29. package/build/Footer/List/styles.js +85 -31
  30. package/build/Footer/__snapshots__/Footer.test.js.snap +109 -59
  31. package/build/Footer/styles.js +116 -51
  32. package/build/Grid/Col/__snapshots__/Col.test.js.snap +16 -2
  33. package/build/Grid/Col/styles.js +12 -6
  34. package/build/Grid/Row/__snapshots__/Row.test.js.snap +18 -2
  35. package/build/Grid/Row/styles.js +15 -5
  36. package/build/Grid/styles.js +26 -9
  37. package/build/Menu/Menu.js +96 -0
  38. package/build/Menu/index.js +34 -0
  39. package/build/Menu/styles.js +25 -0
  40. package/build/MenuDivider/MenuDivider.js +47 -0
  41. package/build/MenuDivider/index.js +18 -0
  42. package/build/MenuDivider/styles.js +21 -0
  43. package/build/MenuItem/MenuItem.js +160 -0
  44. package/build/{Header/Menu → MenuItem}/index.js +2 -2
  45. package/build/MenuItem/styles.js +25 -0
  46. package/build/MenuItemBase/MenuItemBase.js +94 -0
  47. package/build/MenuItemBase/index.js +18 -0
  48. package/build/MenuItemBase/styles.js +57 -0
  49. package/build/MenuList/MenuList.js +71 -0
  50. package/build/{Header → MenuList}/index.js +2 -2
  51. package/build/MenuList/styles.js +54 -0
  52. package/build/MenuUser/MenuUser.js +152 -0
  53. package/build/MenuUser/index.js +18 -0
  54. package/build/MenuUser/styles.js +22 -0
  55. package/build/Modal/Modal.js +94 -66
  56. package/build/Modal/Modal.test.js +14 -7
  57. package/build/Modal/__snapshots__/Modal.test.js.snap +155 -100
  58. package/build/Modal/styles.js +165 -143
  59. package/build/NavAside/NavAside.js +54 -113
  60. package/build/NavAside/NavAside.test.js +0 -57
  61. package/build/NavAside/__snapshots__/NavAside.test.js.snap +35 -43
  62. package/build/NavAside/index.js +6 -0
  63. package/build/NavAside/styles.js +45 -63
  64. package/build/NavAvatarButton/NavAvatarButton.js +134 -0
  65. package/build/{NavIcon → NavAvatarButton}/index.js +2 -2
  66. package/build/NavAvatarButton/styles.js +33 -0
  67. package/build/NavButton/NavButton.js +73 -0
  68. package/build/{Header/Nav → NavButton}/index.js +2 -2
  69. package/build/NavButton/styles.js +79 -0
  70. package/build/NavItem/styles.js +4 -4
  71. package/build/NavTab/NavTab.js +45 -32
  72. package/build/NavTab/styles.js +59 -27
  73. package/build/NavTop/styles.js +6 -6
  74. package/build/OrderBy/OrderBy.js +2 -1
  75. package/build/Pager/Page/Page.js +11 -6
  76. package/build/Pager/Page/Page.test.js +13 -9
  77. package/build/Pager/Page/__snapshots__/Page.test.js.snap +34 -10
  78. package/build/Pager/Page/styles.js +48 -14
  79. package/build/Pager/Pager.js +144 -235
  80. package/build/Pager/Pager.test.js +81 -36
  81. package/build/Pager/__snapshots__/Pager.test.js.snap +3 -36
  82. package/build/Pager/styles.js +5 -40
  83. package/build/Pill/Choice/Choice.js +6 -4
  84. package/build/Pill/Choice/styles.js +13 -10
  85. package/build/Pill/Group/styles.js +5 -5
  86. package/build/Pill/Stack/Stack.js +2 -2
  87. package/build/Pill/Stack/styles.js +5 -8
  88. package/build/Placeholder/Placeholder.js +29 -12
  89. package/build/Placeholder/Placeholder.test.js +4 -4
  90. package/build/Placeholder/__snapshots__/Placeholder.test.js.snap +81 -38
  91. package/build/Placeholder/styles.js +86 -42
  92. package/build/Provider/MenuListProvider.js +38 -0
  93. package/build/Provider/usePrevious.js +1 -1
  94. package/build/Radio/Radio.js +22 -7
  95. package/build/Radio/__snapshots__/Radio.test.js.snap +71 -79
  96. package/build/Radio/styles.js +84 -85
  97. package/build/SlideDown/SlideDown.js +167 -169
  98. package/build/SlideDown/SlideDown.test.js +49 -44
  99. package/build/SlideDown/__snapshots__/SlideDown.test.js.snap +44 -15
  100. package/build/SlideDown/styles.js +51 -20
  101. package/build/SlideToggle/SlideToggle.js +38 -6
  102. package/build/SlideToggle/SlideToggle.test.js +2 -2
  103. package/build/SlideToggle/__snapshots__/SlideToggle.test.js.snap +53 -38
  104. package/build/SlideToggle/styles.js +64 -45
  105. package/build/Tabs/Tab/Tab.js +73 -0
  106. package/build/Tabs/Tab/index.js +34 -0
  107. package/build/Tabs/Tab/index.test.js +132 -0
  108. package/build/Tabs/Tab/styles.js +74 -0
  109. package/build/Tabs/TabContent/TabContent.js +76 -0
  110. package/build/Tabs/TabContent/index.js +34 -0
  111. package/build/Tabs/TabContent/index.test.js +68 -0
  112. package/build/Tabs/TabContent/styles.js +23 -0
  113. package/build/Tabs/TabIndicator/TabIndicator.js +158 -0
  114. package/build/Tabs/TabIndicator/index.js +34 -0
  115. package/build/Tabs/TabIndicator/styles.js +24 -0
  116. package/build/Tabs/TabList/TabList.js +108 -0
  117. package/build/Tabs/TabList/index.js +34 -0
  118. package/build/{Pager/Break → Tabs/TabList}/styles.js +3 -2
  119. package/build/Tabs/Tabs.js +74 -0
  120. package/build/Tabs/context.js +94 -0
  121. package/build/Tabs/index.js +34 -0
  122. package/build/Tabs/index.test.js +157 -0
  123. package/build/Tabs/styles.js +19 -0
  124. package/build/Tag/Tag.js +2 -2
  125. package/build/Tag/__snapshots__/Tag.test.js.snap +40 -43
  126. package/build/Tag/styles.js +76 -82
  127. package/build/Text/Text.js +2 -1
  128. package/build/TextField/TextField.js +7 -6
  129. package/build/TextField/__snapshots__/TextField.test.js.snap +3 -0
  130. package/build/TextField/styles.js +3 -0
  131. package/build/Tip/Tip.js +62 -95
  132. package/build/Tip/Tip.test.js +29 -6
  133. package/build/Tip/TipText/index.js +32 -0
  134. package/build/Tip/__snapshots__/Tip.test.js.snap +127 -15
  135. package/build/Tip/styles.js +125 -31
  136. package/build/Toaster/Toast/Toast.js +76 -64
  137. package/build/Toaster/Toast/styles.js +118 -46
  138. package/build/Toaster/Toaster.js +3 -2
  139. package/build/Toaster/Toaster.test.js +5 -2
  140. package/build/Toaster/__snapshots__/Toaster.test.js.snap +1 -1
  141. package/build/Toaster/functions.js +4 -0
  142. package/build/Toaster/styles.js +3 -3
  143. package/build/Tooltip/Tooltip.js +73 -22
  144. package/build/Tooltip/__snapshots__/Tooltip.test.js.snap +22 -6
  145. package/build/Tooltip/styles.js +32 -10
  146. package/build/index.js +33 -19
  147. package/build/plugin/babel.js +0 -2
  148. package/build/subatomic/grid.js +5 -5
  149. package/build/tokens/colors.json +94 -60
  150. package/build/tokens/shadows.json +3 -3
  151. package/package.json +5 -2
  152. package/build/Banner/styles.js +0 -41
  153. package/build/Header/Header.js +0 -163
  154. package/build/Header/Header.test.js +0 -118
  155. package/build/Header/Menu/Menu.js +0 -135
  156. package/build/Header/Menu/Menu.test.js +0 -107
  157. package/build/Header/Menu/__snapshots__/Menu.test.js.snap +0 -113
  158. package/build/Header/Menu/styles.js +0 -123
  159. package/build/Header/Nav/Nav.test.js +0 -81
  160. package/build/Header/Nav/__snapshots__/Nav.test.js.snap +0 -101
  161. package/build/Header/Nav/styles.js +0 -110
  162. package/build/Header/__snapshots__/Header.test.js.snap +0 -79
  163. package/build/Header/styles.js +0 -94
  164. package/build/NavIcon/NavIcon.js +0 -112
  165. package/build/NavIcon/styles.js +0 -81
  166. package/build/Pager/Break/Break.js +0 -27
  167. package/build/Pager/Break/Break.test.js +0 -53
  168. package/build/Pager/Break/__snapshots__/Break.test.js.snap +0 -13
  169. package/build/Pager/Break/index.js +0 -18
  170. /package/build/Button/{Loading.js → Loading/index.js} +0 -0
@@ -15,6 +15,12 @@ var _AvatarContent = _interopRequireDefault(require("./AvatarContent"));
15
15
 
16
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
17
17
 
18
+ 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; }
19
+
20
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
21
+
22
+ 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; }
23
+
18
24
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
19
25
 
20
26
  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
@@ -44,33 +50,72 @@ var Avatar = /*#__PURE__*/function (_React$Component) {
44
50
 
45
51
  var _super = _createSuper(Avatar);
46
52
 
47
- function Avatar() {
53
+ function Avatar(props) {
54
+ var _this;
55
+
48
56
  _classCallCheck(this, Avatar);
49
57
 
50
- return _super.apply(this, arguments);
58
+ _this = _super.call(this, props);
59
+ _this.handleKeyUp = _this.handleKeyUp.bind(_assertThisInitialized(_this));
60
+ return _this;
51
61
  }
52
62
 
53
63
  _createClass(Avatar, [{
64
+ key: "handleKeyDown",
65
+ value: function handleKeyDown(e) {
66
+ if (e.keyCode == 13 || e.keyCode == 32) {
67
+ e.preventDefault();
68
+ }
69
+ }
70
+ }, {
71
+ key: "handleKeyUp",
72
+ value: function handleKeyUp(e) {
73
+ if (e.keyCode == 13 || e.keyCode == 32) {
74
+ var _this$props = this.props,
75
+ onEdit = _this$props.onEdit,
76
+ onClick = _this$props.onClick;
77
+ var isEditable = onEdit || onClick;
78
+ var handleClick = isEditable ? onClick || onEdit : undefined;
79
+ if (handleClick) handleClick();
80
+ }
81
+ }
82
+ }, {
54
83
  key: "render",
55
84
  value: function render() {
56
- var _this$props = this.props,
57
- classes = _this$props.classes,
58
- photo = _this$props.photo,
59
- gender = _this$props.gender,
60
- name = _this$props.name,
61
- size = _this$props.size,
62
- id = _this$props.id,
63
- className = _this$props.className,
64
- style = _this$props.style;
85
+ var _this$props2 = this.props,
86
+ classes = _this$props2.classes,
87
+ photo = _this$props2.photo,
88
+ name = _this$props2.name,
89
+ _this$props2$size = _this$props2.size,
90
+ size = _this$props2$size === void 0 ? 40 : _this$props2$size,
91
+ id = _this$props2.id,
92
+ className = _this$props2.className,
93
+ style = _this$props2.style,
94
+ onEdit = _this$props2.onEdit,
95
+ onClick = _this$props2.onClick,
96
+ disabled = _this$props2.disabled;
97
+ var isEditable = onEdit || onClick;
98
+ var handleClick = isEditable ? onClick || onEdit : undefined;
99
+ var tabIndexValue = isEditable && !disabled ? 0 : undefined;
100
+ var combinedClasses = "".concat(classes.circle).concat(isEditable ? " ".concat(classes.editable) : '').concat(disabled ? " ".concat(classes.disabled) : '').concat(className ? " ".concat(className) : '');
65
101
  return /*#__PURE__*/_react["default"].createElement("div", {
66
102
  id: id,
67
- className: "".concat(classes.circle).concat(className ? " ".concat(className) : ''),
68
- style: style
103
+ className: combinedClasses,
104
+ onClick: handleClick,
105
+ onKeyDown: this.handleKeyDown,
106
+ onKeyUp: this.handleKeyUp,
107
+ tabIndex: tabIndexValue,
108
+ style: _objectSpread(_objectSpread({}, style), {}, {
109
+ width: size,
110
+ height: size
111
+ })
69
112
  }, /*#__PURE__*/_react["default"].createElement(_AvatarContent["default"], {
70
113
  photo: photo,
71
- gender: gender,
72
114
  name: name,
73
- size: size
115
+ size: size,
116
+ onEdit: onEdit,
117
+ onClick: onClick,
118
+ disabled: disabled
74
119
  }));
75
120
  }
76
121
  }]);
@@ -78,23 +123,26 @@ var Avatar = /*#__PURE__*/function (_React$Component) {
78
123
  return Avatar;
79
124
  }(_react["default"].Component);
80
125
 
81
- Avatar.defaultProps = {
82
- size: 70
83
- };
84
126
  Avatar.propTypes = {
85
127
  classes: _propTypes["default"].object.isRequired,
86
128
 
87
129
  /** A url to show a photo as the avatar. */
88
130
  photo: _propTypes["default"].string,
89
131
 
90
- /** Use the values 'm' or 'f' to show a default avatar with an icon representing the gender. */
91
- gender: _propTypes["default"].oneOf(['f', 'm']),
92
-
93
132
  /** Pass a name to show two initials. */
94
133
  name: _propTypes["default"].string,
95
134
 
96
135
  /** The size of the avatar. */
97
136
  size: _propTypes["default"].number,
137
+
138
+ /** A function to handle the click action for editing. */
139
+ onEdit: _propTypes["default"].func,
140
+
141
+ /** A function to handle the click. */
142
+ onClick: _propTypes["default"].func,
143
+
144
+ /** Determines if the avatar is disabled. */
145
+ disabled: _propTypes["default"].bool,
98
146
  id: _propTypes["default"].string,
99
147
  className: _propTypes["default"].string,
100
148
  style: _propTypes["default"].object
@@ -35,17 +35,24 @@ describe("AvatarJSS", function () {
35
35
  }));
36
36
  expect(wrapper).toMatchSnapshot();
37
37
  });
38
+ it('returns the right width and height', function () {
39
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_index["default"], {
40
+ name: "John Doe",
41
+ size: 50
42
+ }));
43
+ var styles = wrapper.dive().props().style;
44
+ expect(styles.width).toBe(50);
45
+ expect(styles.height).toBe(50);
46
+ wrapper.setProps({
47
+ size: 70
48
+ });
49
+ var styles2 = wrapper.dive().props().style;
50
+ expect(styles2.width).toBe(70);
51
+ expect(styles2.height).toBe(70);
52
+ });
38
53
  });
39
54
  describe("Avatar styles", function () {
40
55
  it('matches the snapshot', function () {
41
56
  expect(_styles["default"]).toMatchSnapshot();
42
57
  });
43
- it('returns the right width and height', function () {
44
- var props = {};
45
- expect(_styles["default"].circle.width(props)).toBe(70);
46
- expect(_styles["default"].circle.height(props)).toBe(70);
47
- props.size = 50;
48
- expect(_styles["default"].circle.width(props)).toBe(50);
49
- expect(_styles["default"].circle.height(props)).toBe(50);
50
- });
51
58
  });
@@ -9,40 +9,77 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
+ var _Icon = _interopRequireDefault(require("../../Icon"));
13
+
14
+ var _colors = _interopRequireDefault(require("../../tokens/colors.json"));
15
+
12
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
17
 
14
- var capitalLetter = function capitalLetter(name) {
15
- if (name) {
16
- var capitals = name.toUpperCase().split(" ");
17
- capitals = capitals.filter(Boolean);
18
- return /*#__PURE__*/_react["default"].createElement("span", null, capitals[0] ? capitals[0].charAt(0) : 'N', capitals[1] ? capitals[1].charAt(0) : 'O');
18
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
19
+
20
+ 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."); }
21
+
22
+ 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(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
23
+
24
+ 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; }
25
+
26
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_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; }
27
+
28
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
29
+
30
+ var getInitials = function getInitials(name) {
31
+ if (name && name.trim()) {
32
+ var _name$trim$replace$to = name.trim().replace(/\s+/g, ' ').toUpperCase().split(' '),
33
+ _name$trim$replace$to2 = _slicedToArray(_name$trim$replace$to, 2),
34
+ firstName = _name$trim$replace$to2[0],
35
+ lastName = _name$trim$replace$to2[1];
36
+
37
+ return "".concat(firstName === null || firstName === void 0 ? void 0 : firstName.charAt(0)).concat(lastName === null || lastName === void 0 ? void 0 : lastName.charAt(0));
19
38
  }
20
39
 
21
- return "";
40
+ return null;
22
41
  };
23
42
 
24
43
  var AvatarContent = function AvatarContent(_ref) {
25
44
  var classes = _ref.classes,
26
45
  photo = _ref.photo,
27
- gender = _ref.gender,
28
46
  name = _ref.name,
29
- size = _ref.size;
47
+ size = _ref.size,
48
+ onEdit = _ref.onEdit,
49
+ onClick = _ref.onClick,
50
+ disabled = _ref.disabled;
51
+ var initials = getInitials(name);
30
52
  return /*#__PURE__*/_react["default"].createElement("div", {
31
53
  className: classes.wrap
32
- }, gender && /*#__PURE__*/_react["default"].createElement("div", {
33
- className: "".concat(classes.cont, " ").concat(classes[gender])
34
- }), !gender && name && /*#__PURE__*/_react["default"].createElement("div", {
35
- className: "".concat(classes.cont, " ").concat(classes.capital),
54
+ }, /*#__PURE__*/_react["default"].createElement("div", {
55
+ className: "".concat(classes.cont).concat(onClick ? " ".concat(classes.clickable) : '').concat(onEdit ? " ".concat(classes.editable) : '').concat(disabled ? " ".concat(classes.disabled) : '').concat(photo ? " ".concat(classes.photo) : '').concat(photo && (onClick || onEdit) ? " ".concat(classes.hoverPhoto) : ''),
56
+ style: photo ? {
57
+ background: "url('".concat(photo, "') no-repeat center center / cover")
58
+ } : null
59
+ }, !photo ? initials ? /*#__PURE__*/_react["default"].createElement("span", {
60
+ className: "".concat(classes.initials, " ").concat(disabled ? classes.disabledInitials : ''),
36
61
  style: size ? {
37
- fontSize: "".concat(size * 0.4, "px"),
38
- lineHeight: "".concat(size, "px")
62
+ transform: "scale(".concat(size / 40, ")")
39
63
  } : {}
40
- }, capitalLetter(name)), photo && /*#__PURE__*/_react["default"].createElement("div", {
41
- className: classes.cont,
42
- style: {
43
- background: "url('".concat(photo, "') no-repeat center center / cover")
44
- }
45
- }));
64
+ }, initials) : /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
65
+ iconName: "person",
66
+ className: classes.person,
67
+ colors: [disabled ? _colors["default"].icon["default"].disabled : _colors["default"].icon.brand["default"]],
68
+ size: 24,
69
+ style: size ? {
70
+ transform: "scale(".concat(size / 40, ")")
71
+ } : {}
72
+ }) : null, /*#__PURE__*/_react["default"].createElement("div", {
73
+ className: classes.overlay
74
+ }, onEdit && !disabled && /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
75
+ iconName: "camera",
76
+ className: classes.camera,
77
+ colors: [disabled ? _colors["default"].icon["default"].disabled : _colors["default"].icon.inverse["default"]],
78
+ size: 24,
79
+ style: size ? {
80
+ transform: "scale(".concat(size / 40, ")")
81
+ } : {}
82
+ }))));
46
83
  };
47
84
 
48
85
  AvatarContent.propTypes = {
@@ -50,7 +87,10 @@ AvatarContent.propTypes = {
50
87
  photo: _propTypes["default"].string,
51
88
  gender: _propTypes["default"].string,
52
89
  name: _propTypes["default"].string,
53
- size: _propTypes["default"].number
90
+ size: _propTypes["default"].number,
91
+ onEdit: _propTypes["default"].func,
92
+ onClick: _propTypes["default"].func,
93
+ disabled: _propTypes["default"].bool
54
94
  };
55
95
  var _default = AvatarContent;
56
96
  exports["default"] = _default;
@@ -27,25 +27,12 @@ describe("AvatarContent", function () {
27
27
  }));
28
28
  expect(wrapper).toMatchSnapshot();
29
29
  });
30
- it('returns the first two capital letters of the name', function () {
30
+ it('returns the first two initial letters of the name', function () {
31
31
  var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_AvatarContent["default"], {
32
32
  name: "John Doe",
33
33
  classes: classes
34
34
  }));
35
- expect(wrapper.find('.capital span').text()).toEqual('JD');
36
- });
37
- it('shows the right gender icon', function () {
38
- var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_AvatarContent["default"], {
39
- gender: "m",
40
- classes: classes
41
- }));
42
- expect(wrapper.find('.m').length).toBe(1);
43
- expect(wrapper.find('.f').length).toBe(0);
44
- wrapper.setProps({
45
- gender: 'f'
46
- });
47
- expect(wrapper.find('.m').length).toBe(0);
48
- expect(wrapper.find('.f').length).toBe(1);
35
+ expect(wrapper.find('.initials').text()).toEqual('JD');
49
36
  });
50
37
  it('renders the photo as a background', function () {
51
38
  var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_AvatarContent["default"], {
@@ -60,9 +47,8 @@ describe("AvatarContent", function () {
60
47
  size: 50,
61
48
  classes: classes
62
49
  }));
63
- var styles = wrapper.find('.capital').prop('style');
64
- expect(styles).toHaveProperty('fontSize', '20px');
65
- expect(styles).toHaveProperty('lineHeight', '50px');
50
+ var styles = wrapper.find('.initials').prop('style');
51
+ expect(styles).toHaveProperty('transform', 'scale(1.25)');
66
52
  });
67
53
  });
68
54
  describe("AvatarContentJSS", function () {
@@ -4,31 +4,91 @@ exports[`AvatarContent matches the snapshot 1`] = `ShallowWrapper {}`;
4
4
 
5
5
  exports[`AvatarContent styles matches the snapshot 1`] = `
6
6
  Object {
7
- "capital": Object {
8
- "background": "#f5f5f5",
9
- "color": "#dddddd",
10
- "fontFamily": "'OccText', sans-serif",
11
- "fontSize": "57px",
12
- "fontStyle": "normal",
13
- "fontWeight": "400",
14
- "letterSpacing": -2,
15
- "lineHeight": "72px",
16
- "textAlign": "center",
7
+ "camera": Object {
8
+ "gridColumnStart": 1,
9
+ "gridRowStart": 1,
10
+ "opacity": 0,
11
+ "transition": "all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s",
12
+ },
13
+ "clickable": Object {
14
+ "&:active": Object {
15
+ "background": "#ABBDE4",
16
+ },
17
+ "&:hover": Object {
18
+ "background": "#CAD5EE",
19
+ },
20
+ "transition": "all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s",
17
21
  },
18
22
  "cont": Object {
19
- "borderRadius": "50%",
23
+ "alignItems": "center",
24
+ "background": "#E9EEF8",
25
+ "borderRadius": "9999px",
26
+ "display": "grid",
20
27
  "height": "100%",
28
+ "justifyContent": "center",
21
29
  "left": "0",
22
30
  "overflow": "hidden",
23
31
  "position": "absolute",
24
32
  "top": "0",
25
33
  "width": "100%",
26
34
  },
27
- "f": Object {
28
- "background": "url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJCQkgdmlld0JveD0iMCAwIDcwIDcwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA3MCA3MDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgoJCTxyZWN0IHk9IjAiIGZpbGw9IiNFOEVFRjgiIHdpZHRoPSI3MCIgaGVpZ2h0PSI3MCIvPgoJCTxwYXRoIGZpbGw9IiNEMEQ5RUQiIGQ9Ik00OS42LDI4LjRjLTAuOCwxLTIuNywxLjktNiwzLjJjLTQuOCwyLTkuNiwwLjYtMTEuOCwwYy03LjYtMS45LTExLDQuOC04LjQsMTEuM2MwLjQsMS4xLDAuOSwyLjUsMS40LDMuOQoJCQljLTAuOC01LjgtMC41LTE0LjUsNS41LTEzLjFjMi40LDAuNiw3LjgsMi4yLDEzLDBjMi45LTEuMiw1LjItMi43LDYuNS00YzAsMCwwLDAsMCwwYzAuMS0wLjUsMC4yLTAuOSwwLjMtMS40CgkJCUM0OS44LDI4LjUsNDkuNywyOC40LDQ5LjYsMjguNHoiLz4KCQk8bGluZWFyR3JhZGllbnQgaWQ9IlNWR0lEXzFfIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjMzLjMxMzUiIHkxPSI1Ny42MTI4IiB4Mj0iMzUuODEzNSIgeTI9IjY2LjM2MjgiPgoJCQk8c3RvcCAgb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojQzJDREUyIi8+CgkJCTxzdG9wICBvZmZzZXQ9IjEiIHN0eWxlPSJzdG9wLWNvbG9yOiNEOUUxRUYiLz4KCQk8L2xpbmVhckdyYWRpZW50PgoJCTxwYXRoIGZpbGw9InVybCgjU1ZHSURfMV8pIiBkPSJNNDMuNSw1NS43QzQzLjUsNTUuNyw0My41LDU1LjYsNDMuNSw1NS43YzAsMC0wLjEsMC0wLjIsMC4xYy0wLjgsMC43LTEuNiwxLjQtMi41LDIuMQoJCQljLTMuMSwyLjQtNy4yLDIuNy0xMC41LDAuOWMtMC41LTAuMy0wLjktMC41LTEuMy0wLjljLTAuOC0wLjYtMS41LTEuMi0yLjEtMS43YzAuNSwzLjcsMC41LDcuMy0wLjQsMTAuMmMtMC4xLDAuNC0wLjMsMC44LTAuNSwxLjIKCQkJYzAsMC40LTAuMSwwLjgtMC4xLDEuMmMwLjIsMCwwLjMsMC4xLDAuNSwwLjFDMjksNjkuNiwzMiw3MCwzNSw3MGMzLDAsNS44LTAuNCw4LjYtMS4xYzAuMSwwLDAuMy0wLjEsMC40LTAuMQoJCQlDNDMuNCw2NC41LDQzLjIsNTguNiw0My41LDU1Ljd6Ii8+CgkJPHBhdGggZmlsbD0iI0JEQzhERiIgZD0iTTU1LjIsNDcuNWMxLjItNC4yLDEuOC05LjQsMS43LTEzLjZjMC0xNi4zLTExLjItMjUuNC0yMS41LTI1LjRDMTkuNiw4LjQsMTIuNiwyNS42LDEyLjUsMzkKCQkJYy0xLjEsOC45LTEuMywxOC41LDAuMSwyMi44YzAsMCwwLDAuMSwwLDAuMWMwLDAsMCwwLDAsMGMwLDAsMCwwLDAsMGMzLjcsMyw4LDUuMywxMi43LDYuN2MwLjEsMCwwLjMsMC4xLDAuNCwwLjEKCQkJYzAuMiwwLDAuMywwLjEsMC41LDAuMWMwLjEtMC44LDAuMS0xLjYsMC4yLTIuNWMxLTIuOSwxLTYuNiwwLjQtMTAuMmMwLTAuMy0wLjEtMC43LTAuMi0xYy0wLjEtMC40LTAuMS0wLjgtMC4yLTEuMgoJCQljLTAuNS0yLjUtMS4xLTQuOS0xLjgtNy4xYy0wLjUtMS41LTAuOS0yLjgtMS40LTMuOWMtMi41LTYuNSwwLjktMTMuMyw4LjQtMTEuM2MyLjIsMC42LDcsMiwxMS44LDBjMy4zLTEuNCw1LjItMi4yLDYtMy4yCgkJCWMwLjEsMCwwLjIsMC4xLDAuMywwLjFjLTAuMSwwLjQtMC4yLDAuOS0wLjMsMS40Yy0wLjMsMi0wLjYsNC40LTAuOCw2LjhjMS41LTEuNSwyLjQtMS42LDIuOS0wLjhjMC43LDEsMC4zLDIuMywwLDQuMwoJCQljLTAuMSwwLjgtMC40LDMtMC40LDMuNWMwLDEuMi0xLjIsMi4yLTIuNiwxLjhjMCwwLjMsMCwwLjYsMCwxYy0wLjMsMi40LTEuMyw0LjYtMi44LDYuM2MtMC44LDEtMS42LDItMi40LDIuOQoJCQljLTAuMSwwLjEtMC4xLDAuMS0wLjIsMC4yYy0wLjIsMy42LTAuMSw5LjMsMC4yLDEzLjFjMC4xLDAsMC4zLTAuMSwwLjQtMC4xYzYuMi0xLjYsMTEuNy00LjksMTYtOS4zQzU2LjIsNTYuMiw1My45LDUyLjEsNTUuMiw0Ny41CgkJCXoiLz4KCQk8bGluZWFyR3JhZGllbnQgaWQ9IlNWR0lEXzJfIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjkzLjQ2OTUiIHkxPSIxNzYuODA2MiIgeDI9IjM3LjIxOTUiIHkyPSI0MC41NTYyIj4KCQkJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6I0M3RDJFNyIvPgoJCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojRTBFN0YyIi8+CgkJPC9saW5lYXJHcmFkaWVudD4KCQk8cGF0aCBmaWxsPSJ1cmwoI1NWR0lEXzJfKSIgZD0iTTUxLjcsMzUuOWMtMC41LTAuOC0xLjQtMC44LTIuOSwwLjhjMC4yLTIuNCwwLjUtNC45LDAuOC02LjhjMCwwLDAsMCwwLDBjLTEuMywxLjMtMy42LDIuNy02LjUsNAoJCQljLTUuMSwyLjItMTAuNiwwLjYtMTMsMGMtNi4xLTEuNC02LjMsNy4yLTUuNSwxMy4xYzAuNywyLjEsMS4zLDQuNiwxLjgsNy4xYzAuMSwwLjQsMC4xLDAuOCwwLjIsMS4yYzAuMSwwLjMsMC4xLDAuNywwLjIsMQoJCQljMC43LDAuNiwxLjQsMS4xLDIuMSwxLjdjMC40LDAuMywwLjksMC42LDEuMywwLjljMy4zLDEuOCw3LjUsMS41LDEwLjUtMC45YzAuOS0wLjcsMS43LTEuNCwyLjUtMi4xYzAsMCwwLDAuMSwwLDAuMQoJCQljMC4xLTAuMSwwLjEtMC4xLDAuMi0wLjJjMC45LTAuOSwxLjctMS45LDIuNC0yLjljMS41LTEuNywyLjUtMy45LDIuOC02LjNjMC0wLjMsMC0wLjcsMC0xYzEuNSwwLjQsMi42LTAuNiwyLjYtMS44CgkJCWMwLTAuNSwwLjMtMi43LDAuNC0zLjVDNTIsMzguMiw1Mi4zLDM2LjksNTEuNywzNS45eiIvPgoJCTwvc3ZnPg==)",
35
+ "disabled": Object {
36
+ "& $camera": Object {
37
+ "opacity": 1,
38
+ },
39
+ "background": "#EDEDF1",
40
+ "pointerEvents": "none",
41
+ },
42
+ "disabledInitials": Object {
43
+ "color": "#878A9F",
44
+ },
45
+ "editable": Object {
46
+ "&:active $overlay": Object {
47
+ "background": "rgba(8, 13, 57, 0.4)",
48
+ },
49
+ "&:hover $camera": Object {
50
+ "opacity": 1,
51
+ },
52
+ "&:hover $overlay": Object {
53
+ "background": "rgba(8, 13, 57, 0.3)",
54
+ },
55
+ },
56
+ "hoverPhoto": Object {
57
+ "&:active $overlay": Object {
58
+ "background": "rgba(8, 13, 57, 0.4)",
59
+ },
60
+ "&:hover $overlay": Object {
61
+ "background": "rgba(8, 13, 57, 0.3)",
62
+ },
63
+ },
64
+ "initials": Object {
65
+ "color": "#083CAE",
66
+ "display": "inline-block",
67
+ "font": "400 16px/1.5 'OccText', sans-serif",
68
+ "gridColumnStart": "1",
69
+ "gridRowStart": "1",
70
+ "textAlign": "center",
71
+ },
72
+ "overlay": Object {
73
+ "alignItems": "center",
74
+ "border": "1px solid transparent",
75
+ "borderRadius": "50%",
76
+ "display": "grid",
77
+ "height": "100%",
78
+ "justifyContent": "center",
79
+ "left": "0",
80
+ "position": "absolute",
81
+ "top": "0",
82
+ "transition": "all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s",
83
+ "width": "100%",
84
+ },
85
+ "person": Object {
86
+ "gridColumnStart": 1,
87
+ "gridRowStart": 1,
88
+ "transition": "all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s",
29
89
  },
30
- "m": Object {
31
- "background": "url(data:image/svg+xml;base64,CgkJPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJCQkgdmlld0JveD0iMCAwIDcwIDcwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA3MCA3MDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgoJCTxyZWN0IHk9IjAiIGZpbGw9IiNFOEVFRjgiIHdpZHRoPSI3MCIgaGVpZ2h0PSI3MCIvPgoJCTxsaW5lYXJHcmFkaWVudCBpZD0iU1ZHSURfMV8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iLTM2OS43ODE5IiB5MT0iMzMzLjIwODgiIHgyPSItMzY5LjMxMjIiIHkyPSIzMzIuMjQ1MSIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgtMzMuMDAyNCAzLjQ2ODcgLTMuNTUwNiAtMzMuNzgxNSAtMTA5NzYuNDAwNCAxMjU3Ny45Mzg1KSI+CgkJCTxzdG9wICBvZmZzZXQ9IjAiIHN0eWxlPSJzdG9wLWNvbG9yOiNDMkNERTIiLz4KCQkJPHN0b3AgIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6I0Q5RTFFRiIvPgoJCTwvbGluZWFyR3JhZGllbnQ+CgkJPHBhdGggZmlsbD0idXJsKCNTVkdJRF8xXykiIGQ9Ik00Mi4yLDYxLjFjLTMsMi42LTcuNCwyLjYtMTAuNCwwYy00LjQtMy43LTcuNC02LTkuNC04LjJjMC4xLDMuMi0wLjMsOS40LTIuNCwxMy43QzI0LjYsNjguOCwyOS43LDcwLDM1LDcwCgkJCWM2LDAsMTEuNi0xLjUsMTYuNS00LjJjLTEtMi42LTEuNC03LjctMS41LTExLjhDNDguMyw1Niw0NS43LDU4LjEsNDIuMiw2MS4xeiIvPgoJCTxsaW5lYXJHcmFkaWVudCBpZD0iU1ZHSURfMl8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iNzkuMzcwNSIgeTE9IjE4NC44MTkyIiB4Mj0iMzYuOTAyOSIgeTI9IjQzLjM0NjUiPgoJCQk8c3RvcCAgb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojQzdEMkU3Ii8+CgkJCTxzdG9wICBvZmZzZXQ9IjEiIHN0eWxlPSJzdG9wLWNvbG9yOiNFMEU3RjIiLz4KCQk8L2xpbmVhckdyYWRpZW50PgoJCTxwYXRoIGZpbGw9InVybCgjU1ZHSURfMl8pIiBkPSJNNTIuNSw0NC4yYy0xLjUtMC4yLTEuNC0yLjEtMS4yLTQuNmMwLjEtMS44LDAtMywwLjMtNGMwLDAtMC4xLDAtMC4xLDAuMWMtMi4zLDEuNC0xLjUtNC44LTItOS40CgkJCWMtMC4xLTEuMS0wLjItMy4xLTAuOC01LjNjMC0wLjEtMC4xLTAuMi0wLjEtMC4zYy0wLjMtMS0wLjYtMi0xLTIuOWMwLDAuNS0wLjIsMC42LTAuMi0wLjJjMC0wLjktMi4zLDEzLjMtMTguOCwxMy4zCgkJCWMtMS45LDAtMy45LTAuMi01LjgtMC41YzAuMSw0LjYsMCwxMC4xLTEuNyw2LjhjLTAuMy0wLjYtMC41LTEtMC43LTEuMmMwLjMsMSwwLjIsMi4xLDAuMywzLjhjMC4xLDIuNCwwLjIsNC4zLTEuMiw0LjYKCQkJYy0wLjEsMC0wLjEsMC0wLjIsMGMwLjEsMi43LDAuNCw0LjgsMC45LDUuOGMwLjUsMSwxLjIsMS45LDIuMSwyLjljMiwyLjEsNSw0LjUsOS40LDguMmMzLDIuNiw3LjQsMi42LDEwLjQsMAoJCQljMy41LTIuOSw2LjEtNS4xLDcuOC03YzEuNC0xLjYsMi4xLTMsMi4xLTQuNWMwLTAuMiwwLjQtMy4xLDAuNy01LjRDNTIuNyw0NC4yLDUyLjYsNDQuMiw1Mi41LDQ0LjJ6Ii8+CgkJPHBhdGggZmlsbD0iI0QwRDlFRCIgZD0iTTI2LjcsMjguOWMtMS4zLDAtMi41LTAuMS0zLjgtMC4yYzAsMC41LDAsMSwwLDEuNWMxLjksMC4zLDMuOCwwLjUsNS44LDAuNWMxNi41LDAsMTguOC0xNC4yLDE4LjgtMTMuMwoJCQljMCwwLjgsMC4yLDAuNywwLjIsMC4yYy0wLjEtMC4zLTAuMy0wLjUtMC40LTAuOEM0Ni43LDE2LDQ0LjYsMjguOSwyNi43LDI4Ljl6Ii8+CgkJPHBhdGggZmlsbD0iI0Q5RTFFRiIgZD0iTTU1LjUsMzNjLTAuMS0wLjMtMC4zLTAuNS0wLjUtMC42Yy0wLjUtMC4zLTEuMiwwLjMtMS44LDFjLTAuNCwwLjQtMC43LDAuOS0xLDEuMmMtMC4zLDAuMy0wLjQsMC42LTAuNiwxCgkJCWMtMC40LDEtMC4yLDIuMi0wLjMsNGMtMC4xLDIuNC0wLjIsNC4zLDEuMiw0LjZjMC4xLDAsMC4yLDAsMC4zLDBjMS4zLDAsMi4yLTEuMiwyLjItM0M1NS4xLDM5LjMsNTYuMywzNC43LDU1LjUsMzN6Ii8+CgkJPHBhdGggZmlsbD0iI0JEQzhERiIgZD0iTTU1LjEsMjEuMmMtMC4zLTIuNC0xLjUtNC44LTMuNi02LjhjLTAuMS0wLjEtMS45LTAuNS0yLjQtMC40Yy0wLjEtMC41LTAuNy0xLjktMS4xLTIuMQoJCQljLTIuNC0xLjMtNS41LTIuMi05LjItMi42QzM3LjMsOSwzNS43LDguOSwzNCw5LjJjLTUuNywxLTksOC4zLTEzLjcsOS45Yy00LjcsMS42LTQuMywxLjItNC4zLDUuNWMwLDEuMywwLjcsMi4yLDEuOCwyLjcKCQkJYzAsMS40LDAuMSwzLDAuMiw0LjRjMCwwLjIsMC4xLDAuNSwwLjEsMC44YzAuNCwwLjMsMC44LDAuNywxLjIsMS4yYzAuMiwwLjMsMC40LDAuNiwwLjYsMC44YzAuMywwLjQsMC41LDAuOCwwLjYsMS4yCgkJCWMwLjIsMC4yLDAuNCwwLjYsMC43LDEuMmMxLjYsMy4yLDEuNy0yLjMsMS43LTYuOGMwLTAuNSwwLTEsMC0xLjVjMS4zLDAuMSwyLjUsMC4yLDMuOCwwLjJjMTcuOSwwLDIwLTEyLjksMjAuNS0xMi4xCgkJCWMwLjEsMC4zLDAuMywwLjUsMC40LDAuOGMwLjQsMC45LDAuOCwxLjksMSwyLjljMCwwLjEsMC4xLDAuMiwwLjEsMC4zYzAuNSwyLjIsMC43LDQuMiwwLjgsNS4zYzAuNCw0LjctMC4zLDEwLjgsMiw5LjQKCQkJYzAsMCwwLjEsMCwwLjEtMC4xYzAuMS0wLjMsMC4zLTAuNywwLjYtMWMwLjMtMC40LDAuNy0wLjgsMS0xLjJjMC42LTAuNywxLjMtMS4zLDEuOC0xQzU1LjMsMjksNTUuNSwyNC40LDU1LjEsMjEuMnoiLz4KCQk8cGF0aCBmaWxsPSIjREVFNUYxIiBkPSJNMjAuOCwzOS42Yy0wLjEtMS43LDAtMi44LTAuMy0zLjhjLTAuMS0wLjQtMC4zLTAuOC0wLjYtMS4yYy0wLjItMC4yLTAuNC0wLjUtMC42LTAuOAoJCQljLTAuNC0wLjUtMC44LTAuOS0xLjItMS4yYy0wLjYtMC40LTEuMS0wLjUtMS41LDAuNGMtMC44LDEuNywwLjQsNi4zLDAuNCw4LjNjMC4xLDEuOCwxLDMuMSwyLjQsM2MwLjEsMCwwLjEsMCwwLjIsMAoJCQlDMjEuMSw0My45LDIwLjksNDIsMjAuOCwzOS42eiIvPgoJCTwvc3ZnPg==)",
90
+ "photo": Object {
91
+ "border": "1px solid #EDEDF1",
32
92
  },
33
93
  "wrap": Object {
34
94
  "height": "100%",
@@ -5,14 +5,21 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports["default"] = void 0;
7
7
 
8
- var _fonts = _interopRequireDefault(require("../../subatomic/fonts"));
8
+ var _fonts = _interopRequireDefault(require("../../tokens/fonts.json"));
9
9
 
10
- var _icons = _interopRequireDefault(require("../../subatomic/icons"));
10
+ var _colors = _interopRequireDefault(require("../../tokens/colors.json"));
11
11
 
12
- var _colors = _interopRequireDefault(require("../../subatomic/colors"));
12
+ var _borderRadius = _interopRequireDefault(require("../../tokens/borderRadius.json"));
13
+
14
+ var _fonts2 = _interopRequireDefault(require("../../subatomic/fonts"));
13
15
 
14
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
15
17
 
18
+ var avatar = _colors["default"].avatar,
19
+ text = _colors["default"].text,
20
+ border = _colors["default"].border;
21
+ var transition = 'all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s';
22
+ var font = _fonts["default"]['body-regular-strong'];
16
23
  var _default = {
17
24
  wrap: {
18
25
  position: 'relative',
@@ -25,25 +32,85 @@ var _default = {
25
32
  left: '0',
26
33
  width: '100%',
27
34
  height: '100%',
35
+ borderRadius: _borderRadius["default"]['br-full'],
36
+ overflow: 'hidden',
37
+ background: avatar.bg["default"],
38
+ display: 'grid',
39
+ alignItems: 'center',
40
+ justifyContent: 'center'
41
+ },
42
+ initials: {
43
+ display: 'inline-block',
44
+ font: "".concat(font.fontWeight, " ").concat(font.fontSize, "/").concat(font.lineHeight, " ").concat(_fonts2["default"].body),
45
+ color: text.indigo.primary,
46
+ gridRowStart: '1',
47
+ gridColumnStart: '1',
48
+ textAlign: 'center'
49
+ },
50
+ disabled: {
51
+ pointerEvents: 'none',
52
+ background: avatar.bg.disabled,
53
+ '& $camera': {
54
+ opacity: 1
55
+ }
56
+ },
57
+ disabledInitials: {
58
+ color: text.corp.disabled
59
+ },
60
+ clickable: {
61
+ transition: transition,
62
+ '&:hover': {
63
+ background: avatar.bg.hover
64
+ },
65
+ '&:active': {
66
+ background: avatar.bg.active
67
+ }
68
+ },
69
+ editable: {
70
+ '&:hover $camera': {
71
+ opacity: 1
72
+ },
73
+ '&:hover $overlay': {
74
+ background: avatar.bg.overlay.hover
75
+ },
76
+ '&:active $overlay': {
77
+ background: avatar.bg.overlay.active
78
+ }
79
+ },
80
+ person: {
81
+ gridRowStart: 1,
82
+ gridColumnStart: 1,
83
+ transition: transition
84
+ },
85
+ photo: {
86
+ border: "1px solid ".concat(border["default"].subtle)
87
+ },
88
+ hoverPhoto: {
89
+ '&:hover $overlay': {
90
+ background: avatar.bg.overlay.hover
91
+ },
92
+ '&:active $overlay': {
93
+ background: avatar.bg.overlay.active
94
+ }
95
+ },
96
+ camera: {
97
+ gridRowStart: 1,
98
+ gridColumnStart: 1,
99
+ opacity: 0,
100
+ transition: transition
101
+ },
102
+ overlay: {
28
103
  borderRadius: '50%',
29
- overflow: 'hidden'
30
- },
31
- m: {
32
- background: _icons["default"].base(_icons["default"].male.icon())
33
- },
34
- f: {
35
- background: _icons["default"].base(_icons["default"].female.icon())
36
- },
37
- capital: {
38
- fontFamily: _fonts["default"].body,
39
- fontSize: '57px',
40
- lineHeight: '72px',
41
- fontWeight: '400',
42
- background: _colors["default"].grey100,
43
- color: _colors["default"].grey200,
44
- textAlign: 'center',
45
- letterSpacing: -2,
46
- fontStyle: 'normal'
104
+ position: 'absolute',
105
+ top: '0',
106
+ left: '0',
107
+ width: '100%',
108
+ height: '100%',
109
+ display: 'grid',
110
+ alignItems: 'center',
111
+ justifyContent: 'center',
112
+ transition: transition,
113
+ border: "1px solid transparent"
47
114
  }
48
115
  };
49
116
  exports["default"] = _default;
@@ -6,10 +6,19 @@ exports[`Avatar styles matches the snapshot 1`] = `
6
6
  Object {
7
7
  "circle": Object {
8
8
  "borderRadius": "50%",
9
- "height": [Function],
9
+ "outline": "none",
10
10
  "overflow": "hidden",
11
11
  "position": "relative",
12
- "width": [Function],
12
+ },
13
+ "disabled": Object {
14
+ "pointerEvents": "none",
15
+ },
16
+ "editable": Object {
17
+ "&:focus-visible": Object {
18
+ "boxShadow": "0 0 0 8px rgba(0,110,255,0.3)",
19
+ },
20
+ "cursor": "pointer",
21
+ "transition": "all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s",
13
22
  },
14
23
  }
15
24
  `;
@@ -4,17 +4,28 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
+
8
+ var _shadows = _interopRequireDefault(require("../tokens/shadows.json"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
11
+
12
+ var transition = 'all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s';
7
13
  var _default = {
8
14
  circle: {
9
15
  position: 'relative',
10
- width: function width(props) {
11
- return props.size ? props.size : 70;
12
- },
13
- height: function height(props) {
14
- return props.size ? props.size : 70;
15
- },
16
16
  borderRadius: '50%',
17
- overflow: 'hidden'
17
+ overflow: 'hidden',
18
+ outline: 'none'
19
+ },
20
+ editable: {
21
+ cursor: 'pointer',
22
+ transition: transition,
23
+ '&:focus-visible': {
24
+ boxShadow: _shadows["default"]['focus-bright-blue']
25
+ }
26
+ },
27
+ disabled: {
28
+ pointerEvents: 'none'
18
29
  }
19
30
  };
20
31
  exports["default"] = _default;