@atlaskit/profilecard 22.1.0 → 22.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/dist/cjs/client/getOrgIdForCloudIdFromAGG.js +1 -1
  3. package/dist/cjs/client/getTeamFromAGG.js +1 -1
  4. package/dist/cjs/components/Error/ErrorMessage.js +1 -1
  5. package/dist/cjs/components/Team/TeamForbiddenErrorState.js +1 -1
  6. package/dist/cjs/components/Team/TeamLoadingState.js +2 -2
  7. package/dist/cjs/components/Team/TeamProfileCard.js +8 -7
  8. package/dist/cjs/components/User/ProfileCardTrigger.js +14 -3
  9. package/dist/cjs/styled/Card.js +1 -1
  10. package/dist/cjs/styled/Error.compiled.css +9 -0
  11. package/dist/cjs/styled/Error.js +33 -5
  12. package/dist/cjs/styled/ReportingLines.js +1 -1
  13. package/dist/cjs/styled/TeamCard.compiled.css +40 -0
  14. package/dist/cjs/styled/TeamCard.js +145 -47
  15. package/dist/cjs/util/analytics.js +1 -1
  16. package/dist/es2019/client/getOrgIdForCloudIdFromAGG.js +1 -1
  17. package/dist/es2019/client/getTeamFromAGG.js +1 -1
  18. package/dist/es2019/components/Error/ErrorMessage.js +1 -1
  19. package/dist/es2019/components/Team/TeamForbiddenErrorState.js +1 -1
  20. package/dist/es2019/components/Team/TeamLoadingState.js +2 -2
  21. package/dist/es2019/components/Team/TeamProfileCard.js +6 -5
  22. package/dist/es2019/components/User/ProfileCardTrigger.js +14 -3
  23. package/dist/es2019/styled/Card.js +1 -1
  24. package/dist/es2019/styled/Error.compiled.css +9 -0
  25. package/dist/es2019/styled/Error.js +28 -5
  26. package/dist/es2019/styled/ReportingLines.js +1 -1
  27. package/dist/es2019/styled/TeamCard.compiled.css +40 -0
  28. package/dist/es2019/styled/TeamCard.js +118 -48
  29. package/dist/es2019/util/analytics.js +1 -1
  30. package/dist/esm/client/getOrgIdForCloudIdFromAGG.js +1 -1
  31. package/dist/esm/client/getTeamFromAGG.js +1 -1
  32. package/dist/esm/components/Error/ErrorMessage.js +1 -1
  33. package/dist/esm/components/Team/TeamForbiddenErrorState.js +1 -1
  34. package/dist/esm/components/Team/TeamLoadingState.js +2 -2
  35. package/dist/esm/components/Team/TeamProfileCard.js +6 -5
  36. package/dist/esm/components/User/ProfileCardTrigger.js +14 -3
  37. package/dist/esm/styled/Card.js +1 -1
  38. package/dist/esm/styled/Error.compiled.css +9 -0
  39. package/dist/esm/styled/Error.js +34 -5
  40. package/dist/esm/styled/ReportingLines.js +1 -1
  41. package/dist/esm/styled/TeamCard.compiled.css +40 -0
  42. package/dist/esm/styled/TeamCard.js +146 -48
  43. package/dist/esm/util/analytics.js +1 -1
  44. package/dist/types/components/User/ProfileCardTrigger.d.ts +1 -1
  45. package/dist/types/styled/Error.d.ts +11 -13
  46. package/dist/types/styled/TeamCard.d.ts +47 -62
  47. package/dist/types-ts4.5/components/User/ProfileCardTrigger.d.ts +1 -1
  48. package/dist/types-ts4.5/styled/Error.d.ts +11 -13
  49. package/dist/types-ts4.5/styled/TeamCard.d.ts +47 -62
  50. package/package.json +8 -5
package/CHANGELOG.md CHANGED
@@ -1,5 +1,30 @@
1
1
  # @atlaskit/profilecard
2
2
 
3
+ ## 22.2.2
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies
8
+
9
+ ## 22.2.1
10
+
11
+ ### Patch Changes
12
+
13
+ - [#114979](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/114979)
14
+ [`06b6a25655d18`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/06b6a25655d18) -
15
+ Fix for isVisibl
16
+ - [#114983](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/114983)
17
+ [`ba03c91383ce7`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/ba03c91383ce7) -
18
+ Remove invalid specifier
19
+
20
+ ## 22.2.0
21
+
22
+ ### Minor Changes
23
+
24
+ - [#113447](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/113447)
25
+ [`6ef7d7cb5d379`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/6ef7d7cb5d379) -
26
+ Compiled migration - team card
27
+
3
28
  ## 22.1.0
4
29
 
5
30
  ### Minor Changes
@@ -11,7 +11,7 @@ var _graphqlUtils = require("./graphqlUtils");
11
11
  var ORG_ID_FROM_CLOUD_ID_QUERY = "query OrgIdFromCloudId($cloudId: ID!) {\n\ttenantContexts(cloudIds: [$cloudId]) {\n\t\torgId\n\t}\n}";
12
12
  var addHeaders = function addHeaders(headers) {
13
13
  headers.append('atl-client-name', "@atlaskit/profilecard");
14
- headers.append('atl-client-version', "22.1.0");
14
+ headers.append('atl-client-version', "22.2.2");
15
15
  return headers;
16
16
  };
17
17
  function getOrgIdForCloudIdFromAGG(_x, _x2) {
@@ -66,7 +66,7 @@ var addHeaders = exports.addHeaders = function addHeaders(headers) {
66
66
  headers.append('X-ExperimentalApi', 'teams-beta');
67
67
  headers.append('X-ExperimentalApi', 'team-members-beta');
68
68
  headers.append('atl-client-name', "@atlaskit/profilecard");
69
- headers.append('atl-client-version', "22.1.0");
69
+ headers.append('atl-client-version', "22.2.2");
70
70
  return headers;
71
71
  };
72
72
  function getTeamFromAGG(_x, _x2, _x3) {
@@ -37,7 +37,7 @@ var ErrorMessage = function ErrorMessage(props) {
37
37
  }, "Try again and we\u2019ll give it another shot"));
38
38
  };
39
39
  return /*#__PURE__*/_react.default.createElement(_Error.ErrorWrapper, {
40
- "data-testid": "profilecard-error"
40
+ testId: "profilecard-error"
41
41
  }, /*#__PURE__*/_react.default.createElement(_crossCircle.default, {
42
42
  label: "icon error",
43
43
  size: "xlarge"
@@ -26,7 +26,7 @@ var _default = exports.default = function _default(props) {
26
26
  });
27
27
  }, [analytics]);
28
28
  return /*#__PURE__*/_react.default.createElement(_TeamCard.TeamForbiddenErrorStateWrapper, {
29
- "data-testid": "team-profilecard-forbidden-error-state"
29
+ testId: "team-profilecard-forbidden-error-state"
30
30
  }, /*#__PURE__*/_react.default.createElement(_emptyState.default, {
31
31
  header: intl.formatMessage(_messages.default.teamForbiddenErrorStateTitle),
32
32
  description: intl.formatMessage(_messages.default.teamForbiddenErrorStateDescription),
@@ -22,10 +22,10 @@ var _default = exports.default = function _default(props) {
22
22
  });
23
23
  }, [analytics]);
24
24
  return /*#__PURE__*/_react.default.createElement(_TeamCard.CardWrapper, {
25
- "data-testid": "team-profilecard"
25
+ testId: "team-profilecard"
26
26
  }, /*#__PURE__*/_react.default.createElement(_TeamCard.CardHeader, {
27
27
  isLoading: true
28
28
  }), /*#__PURE__*/_react.default.createElement(_TeamCard.CardContent, null, /*#__PURE__*/_react.default.createElement(_TeamCard.LoadingWrapper, {
29
- "data-testid": "team-profilecard-spinner"
29
+ testId: "team-profilecard-spinner"
30
30
  }, /*#__PURE__*/_react.default.createElement(_spinner.default, null))));
31
31
  };
@@ -21,7 +21,7 @@ var _menu = require("@atlaskit/menu");
21
21
  var _verifiedTeamIcon = require("@atlaskit/people-teams-ui-public/verified-team-icon");
22
22
  var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
23
23
  var _popup = _interopRequireDefault(require("@atlaskit/popup"));
24
- var _primitives = require("@atlaskit/primitives");
24
+ var _compiled = require("@atlaskit/primitives/compiled");
25
25
  var _constants = require("@atlaskit/theme/constants");
26
26
  var _tooltip = _interopRequireDefault(require("@atlaskit/tooltip"));
27
27
  var _messages = _interopRequireDefault(require("../../messages"));
@@ -250,12 +250,13 @@ var TeamProfilecardContent = function TeamProfilecardContent(_ref5) {
250
250
  // eslint-disable-next-line react-hooks/exhaustive-deps
251
251
  }, [analytics]);
252
252
  return /*#__PURE__*/_react.default.createElement(_TeamCard.CardWrapper, {
253
- "data-testid": "team-profilecard"
253
+ testId: "team-profilecard"
254
254
  }, /*#__PURE__*/_react.default.createElement(_TeamCard.CardHeader, {
255
- image: team.largeHeaderImageUrl || team.smallHeaderImageUrl
255
+ image: team.largeHeaderImageUrl || team.smallHeaderImageUrl,
256
+ label: team.displayName
256
257
  }), /*#__PURE__*/_react.default.createElement(_TeamCard.CardContent, null, /*#__PURE__*/_react.default.createElement(_tooltip.default, {
257
258
  content: team.displayName
258
- }, /*#__PURE__*/_react.default.createElement(_primitives.Inline, null, /*#__PURE__*/_react.default.createElement(_TeamCard.TeamName, null, team.displayName), team.isVerified && (0, _platformFeatureFlags.fg)('show_verified_team_icon_in_profile_card') && /*#__PURE__*/_react.default.createElement(_verifiedTeamIcon.VerifiedTeamIcon, null))), /*#__PURE__*/_react.default.createElement(TeamMembers, {
259
+ }, /*#__PURE__*/_react.default.createElement(_compiled.Inline, null, /*#__PURE__*/_react.default.createElement(_TeamCard.TeamName, null, team.displayName), team.isVerified && (0, _platformFeatureFlags.fg)('show_verified_team_icon_in_profile_card') && /*#__PURE__*/_react.default.createElement(_verifiedTeamIcon.VerifiedTeamIcon, null))), /*#__PURE__*/_react.default.createElement(TeamMembers, {
259
260
  analytics: analytics,
260
261
  members: team.members,
261
262
  generateUserLink: generateUserLink,
@@ -290,8 +291,8 @@ var ErrorMessage = function ErrorMessage(_ref6) {
290
291
  }
291
292
  }, [analytics, clientFetchProfile]);
292
293
  return /*#__PURE__*/_react.default.createElement(_Error.ErrorWrapper, {
293
- "data-testid": "team-profilecard-error"
294
- }, /*#__PURE__*/_react.default.createElement(_Error2.ErrorIllustration, null), /*#__PURE__*/_react.default.createElement(_primitives.Text, {
294
+ testId: "team-profilecard-error"
295
+ }, /*#__PURE__*/_react.default.createElement(_Error2.ErrorIllustration, null), /*#__PURE__*/_react.default.createElement(_compiled.Text, {
295
296
  as: "p",
296
297
  weight: "semibold"
297
298
  }, /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.default.teamErrorTitle)), /*#__PURE__*/_react.default.createElement(_Error.TeamErrorText, null, /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.default.teamErrorText)), clientFetchProfile && /*#__PURE__*/_react.default.createElement(_TeamCard.ActionButtons, null, /*#__PURE__*/_react.default.createElement(_TeamCard.WrappedButton, null, /*#__PURE__*/_react.default.createElement(_loadingButton.default, {
@@ -315,7 +316,7 @@ var TeamProfileCard = function TeamProfileCard(props) {
315
316
  });
316
317
  } else {
317
318
  return /*#__PURE__*/_react.default.createElement(_TeamCard.CardWrapper, {
318
- "data-testid": "team-profilecard"
319
+ testId: "team-profilecard"
319
320
  }, /*#__PURE__*/_react.default.createElement(ErrorMessage, {
320
321
  analytics: analytics,
321
322
  clientFetchProfile: clientFetchProfile,
@@ -96,14 +96,15 @@ function ProfilecardTriggerNext(_ref2) {
96
96
  product = _ref2.product,
97
97
  agentActions = _ref2.agentActions,
98
98
  _ref2$ariaHideProfile = _ref2.ariaHideProfileTrigger,
99
- ariaHideProfileTrigger = _ref2$ariaHideProfile === void 0 ? false : _ref2$ariaHideProfile;
99
+ ariaHideProfileTrigger = _ref2$ariaHideProfile === void 0 ? false : _ref2$ariaHideProfile,
100
+ propsIsVisible = _ref2.isVisible;
100
101
  var _useAnalyticsEvents = (0, _analyticsNext.useAnalyticsEvents)(),
101
102
  createAnalyticsEvent = _useAnalyticsEvents.createAnalyticsEvent;
102
103
  var _useIntl = (0, _reactIntlNext.useIntl)(),
103
104
  formatMessage = _useIntl.formatMessage;
104
105
  var isMounted = (0, _react.useRef)(false);
105
- var showDelay = trigger === 'click' ? 0 : _config.DELAY_MS_SHOW;
106
- var hideDelay = trigger === 'click' ? 0 : _config.DELAY_MS_HIDE;
106
+ var showDelay = trigger === 'click' || propsIsVisible && (0, _platformFeatureFlags.fg)('fix_profilecard_trigger_isvisible') ? 0 : _config.DELAY_MS_SHOW;
107
+ var hideDelay = trigger === 'click' || propsIsVisible && (0, _platformFeatureFlags.fg)('fix_profilecard_trigger_isvisible') ? 0 : _config.DELAY_MS_HIDE;
107
108
  var showTimer = (0, _react.useRef)(0);
108
109
  var hideTimer = (0, _react.useRef)(0);
109
110
  var _useState = (0, _react.useState)(false),
@@ -289,6 +290,16 @@ function ProfilecardTriggerNext(_ref2) {
289
290
  var onFocus = (0, _react.useCallback)(function () {
290
291
  showProfilecard();
291
292
  }, [showProfilecard]);
293
+ (0, _react.useEffect)(function () {
294
+ if (!(0, _platformFeatureFlags.fg)('fix_profilecard_trigger_isvisible')) {
295
+ return;
296
+ }
297
+ if (propsIsVisible) {
298
+ showProfilecard();
299
+ } else {
300
+ hideProfilecard();
301
+ }
302
+ }, [hideProfilecard, propsIsVisible, showProfilecard]);
292
303
  var containerListeners = (0, _react.useMemo)(function () {
293
304
  return trigger === 'hover' ? {
294
305
  onMouseEnter: onMouseEnter,
@@ -1,4 +1,4 @@
1
- /* Card.tsx generated by @compiled/babel-plugin v0.36.0 */
1
+ /* Card.tsx generated by @compiled/babel-plugin v0.36.1 */
2
2
  "use strict";
3
3
 
4
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
@@ -0,0 +1,9 @@
1
+ ._11c81oud{font:var(--ds-font-body,normal 400 14px/20px ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Ubuntu,system-ui,"Helvetica Neue",sans-serif)}
2
+ ._19bv1ejb{padding-left:var(--ds-space-300,24px)}
3
+ ._19pku2gc{margin-top:var(--ds-space-100,8px)}
4
+ ._ca0q1ejb{padding-top:var(--ds-space-300,24px)}
5
+ ._n3td1ejb{padding-bottom:var(--ds-space-300,24px)}
6
+ ._syaz1fxt{color:var(--ds-text,#172b4d)}
7
+ ._syaz1wmz{color:var(--ds-text-subtlest,#6b778c)}
8
+ ._u5f31ejb{padding-right:var(--ds-space-300,24px)}
9
+ ._y3gn1h6o{text-align:center}
@@ -1,3 +1,4 @@
1
+ /* Error.tsx generated by @compiled/babel-plugin v0.36.1 */
1
2
  "use strict";
2
3
 
3
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
@@ -5,29 +6,56 @@ Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.TeamErrorText = exports.ErrorWrapper = exports.ErrorTitle = void 0;
9
+ require("./Error.compiled.css");
10
+ var _runtime = require("@compiled/react/runtime");
11
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
12
+ var _react = _interopRequireDefault(require("react"));
8
13
  var _styled = _interopRequireDefault(require("@emotion/styled"));
14
+ var _css = require("@atlaskit/css");
15
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
16
+ var _compiled = require("@atlaskit/primitives/compiled");
9
17
  var _colors = require("@atlaskit/theme/colors");
10
18
  var _constants = require("./constants");
11
19
  // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
12
-
20
+ var styles = {
21
+ errorWrapper: "_y3gn1h6o _ca0q1ejb _u5f31ejb _n3td1ejb _19bv1ejb",
22
+ errorTitle: "_11c81oud _syaz1fxt _19pku2gc",
23
+ teamErrorText: "_syaz1wmz _19pku2gc"
24
+ };
25
+ var ErrorWrapper = exports.ErrorWrapper = function ErrorWrapper(props) {
26
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, (0, _extends2.default)({
27
+ xcss: (0, _css.cx)(styles.errorWrapper)
28
+ }, props)) : /*#__PURE__*/_react.default.createElement(ErrorWrapperLegacy, {
29
+ "data-testId": props.testId
30
+ }, props.children);
31
+ };
13
32
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
14
- var ErrorWrapper = exports.ErrorWrapper = _styled.default.div({
33
+ var ErrorWrapperLegacy = _styled.default.div({
15
34
  textAlign: 'center',
16
35
  padding: "var(--ds-space-300, 24px)",
17
36
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
18
37
  color: _constants.errorIconColor
19
38
  });
20
-
39
+ var ErrorTitle = exports.ErrorTitle = function ErrorTitle(props) {
40
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, {
41
+ xcss: (0, _css.cx)(styles.errorTitle)
42
+ }, props.children) : /*#__PURE__*/_react.default.createElement(ErrorTitleLegacy, null, props.children);
43
+ };
21
44
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
22
- var ErrorTitle = exports.ErrorTitle = _styled.default.p({
45
+ var ErrorTitleLegacy = _styled.default.p({
23
46
  font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, system-ui, \"Helvetica Neue\", sans-serif)",
24
47
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
25
48
  color: _constants.errorTitleColor,
26
49
  margin: "var(--ds-space-100, 8px)".concat(" 0")
27
50
  });
51
+ var TeamErrorText = exports.TeamErrorText = function TeamErrorText(props) {
52
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, {
53
+ xcss: (0, _css.cx)(styles.teamErrorText)
54
+ }, props.children) : /*#__PURE__*/_react.default.createElement(TeamErrorTextLegacy, null, props.children);
55
+ };
28
56
 
29
57
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
30
- var TeamErrorText = exports.TeamErrorText = _styled.default.p({
58
+ var TeamErrorTextLegacy = _styled.default.p({
31
59
  color: "var(--ds-text-subtlest, ".concat(_colors.N200, ")"),
32
60
  marginTop: "var(--ds-space-100, 8px)"
33
61
  });
@@ -1,4 +1,4 @@
1
- /* ReportingLines.tsx generated by @compiled/babel-plugin v0.36.0 */
1
+ /* ReportingLines.tsx generated by @compiled/babel-plugin v0.36.1 */
2
2
  "use strict";
3
3
 
4
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
@@ -0,0 +1,40 @@
1
+ ._11c8o0gd{font:var(--ds-font-heading-medium,normal 500 20px/24px ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Ubuntu,system-ui,"Helvetica Neue",sans-serif)}
2
+ ._2rkoglpi{border-radius:var(--ds-border-radius,4px)}
3
+ ._12vemgnk{background-repeat:no-repeat}
4
+ ._16jlkb7n{flex-grow:1}
5
+ ._18m915vq{overflow-y:hidden}
6
+ ._18u01i6y{margin-left:var(--ds-space-negative-025,-2px)}
7
+ ._18u0u2gc{margin-left:var(--ds-space-100,8px)}
8
+ ._18u0x0bf{margin-left:var(--ds-space-negative-100,-8px)}
9
+ ._19bv1ejb{padding-left:var(--ds-space-300,24px)}
10
+ ._19pk1b66{margin-top:var(--ds-space-050,4px)}
11
+ ._19pk1ejb{margin-top:var(--ds-space-300,24px)}
12
+ ._19pk1jfw{margin-top:var(--ds-space-500,40px)}
13
+ ._19pkpxbi{margin-top:var(--ds-space-200,1pc)}
14
+ ._1bah1yb4{justify-content:space-between}
15
+ ._1bsb1osq{width:100%}
16
+ ._1bsbnklw{width:20pc}
17
+ ._1e0c1kw7{display:inherit}
18
+ ._1e0c1txw{display:flex}
19
+ ._1e0ccj1k{display:-webkit-box}
20
+ ._1lrw1dfr{background-size:cover}
21
+ ._1p1dglyw{text-transform:none}
22
+ ._1reo15vq{overflow-x:hidden}
23
+ ._1tke1l8a{min-height:78pt}
24
+ ._2hwx10v4{margin-right:var(--ds-space-negative-300,-24px)}
25
+ ._2lx21bp4{flex-direction:column}
26
+ ._4cvr1h6o{align-items:center}
27
+ ._4t3i1qr7{height:8pc}
28
+ ._c71l1wqb{max-height:60px}
29
+ ._c71lckbl{max-height:3pc}
30
+ ._ca0q1ejb{padding-top:var(--ds-space-300,24px)}
31
+ ._i0dlidpf{flex-basis:0}
32
+ ._kqswh2mm{position:relative}
33
+ ._n3td1ejb{padding-bottom:var(--ds-space-300,24px)}
34
+ ._otyr1ejb{margin-bottom:var(--ds-space-300,24px)}
35
+ ._otyr1jfw{margin-bottom:var(--ds-space-500,40px)}
36
+ ._otyridpf{margin-bottom:0}
37
+ ._ouxl1ssb{background-position:50%}
38
+ ._syaz1wmz{color:var(--ds-text-subtlest,#6b778c)}
39
+ ._u5f31ejb{padding-right:var(--ds-space-300,24px)}
40
+ ._y3gn1h6o{text-align:center}
@@ -1,3 +1,4 @@
1
+ /* TeamCard.tsx generated by @compiled/babel-plugin v0.36.1 */
1
2
  "use strict";
2
3
 
3
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
@@ -5,19 +6,58 @@ Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.WrappedButton = exports.TeamName = exports.TeamForbiddenErrorStateWrapper = exports.MoreButton = exports.MemberCount = exports.LoadingWrapper = exports.DescriptionWrapper = exports.Description = exports.CardWrapper = exports.CardTriggerWrapper = exports.CardHeader = exports.CardContent = exports.AvatarSection = exports.ActionButtons = exports.AccessLockSVGWrapper = void 0;
9
+ require("./TeamCard.compiled.css");
10
+ var _runtime = require("@compiled/react/runtime");
8
11
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
+ var _react = _interopRequireDefault(require("react"));
9
14
  var _styled = _interopRequireDefault(require("@emotion/styled"));
15
+ var _css = require("@atlaskit/css");
16
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
17
+ var _compiled = require("@atlaskit/primitives/compiled");
10
18
  var _colors = require("@atlaskit/theme/colors");
11
19
  var _constants = require("@atlaskit/theme/constants");
12
20
  var _constants2 = require("./constants");
13
21
  var _templateObject; // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
22
+ var styles = {
23
+ cardtriggerwrapper: "_1e0c1kw7",
24
+ cardwrapper: "_2rkoglpi _1bsbnklw _kqswh2mm",
25
+ teamforbiddenerrorstatewrapper: "_1bsbnklw _kqswh2mm",
26
+ cardheader: "_12vemgnk _ouxl1ssb _1lrw1dfr _4t3i1qr7",
27
+ cardcontent: "_1e0c1txw _2lx21bp4 _ca0q1ejb _u5f31ejb _n3td1ejb _19bv1ejb _1tke1l8a",
28
+ teamname: "_11c8o0gd _1reo15vq _18m915vq _1p1dglyw _c71lckbl _1e0ccj1k",
29
+ membercount: "_syaz1wmz _19pk1b66",
30
+ avatarsection: "_19pkpxbi _18u01i6y",
31
+ descriptionwrapper: "_19pkpxbi _4cvr1h6o _1e0c1txw",
32
+ description: "_1reo15vq _18m915vq _c71l1wqb _1e0ccj1k",
33
+ actionbuttons: "_1bsb1osq _1e0c1txw _1bah1yb4 _19pk1ejb _2hwx10v4 _otyridpf _18u0x0bf",
34
+ wrappedbutton: "_i0dlidpf _16jlkb7n _18u0u2gc",
35
+ morebutton: "_18u0u2gc",
36
+ loadingwrapper: "_y3gn1h6o _19pk1jfw _otyr1jfw",
37
+ accesslocksvgwrapper: "_otyr1ejb"
38
+ };
39
+ var CardTriggerWrapper = exports.CardTriggerWrapper = function CardTriggerWrapper() {
40
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, {
41
+ xcss: (0, _css.cx)(styles.cardtriggerwrapper)
42
+ }) : /*#__PURE__*/_react.default.createElement(CardTriggerWrapperLegacy, null);
43
+ };
14
44
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
15
- var CardTriggerWrapper = exports.CardTriggerWrapper = _styled.default.div({
45
+ var CardTriggerWrapperLegacy = _styled.default.div({
16
46
  display: 'inherit'
17
47
  });
18
-
48
+ var CardWrapper = exports.CardWrapper = function CardWrapper(_ref) {
49
+ var testId = _ref.testId,
50
+ children = _ref.children;
51
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, {
52
+ xcss: (0, _css.cx)(styles.cardwrapper),
53
+ backgroundColor: "elevation.surface.overlay",
54
+ testId: testId
55
+ }, children) : /*#__PURE__*/_react.default.createElement(CardWrapperLegacy, {
56
+ "data-testid": testId
57
+ }, children);
58
+ };
19
59
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
20
- var CardWrapper = exports.CardWrapper = _styled.default.div({
60
+ var CardWrapperLegacy = _styled.default.div({
21
61
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
22
62
  backgroundColor: _constants2.bgColor,
23
63
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
@@ -28,32 +68,64 @@ var CardWrapper = exports.CardWrapper = _styled.default.div({
28
68
  WebkitFontSmoothing: 'antialiased',
29
69
  MozOsxFontSmoothing: 'grayscale'
30
70
  });
31
-
71
+ var TeamForbiddenErrorStateWrapper = exports.TeamForbiddenErrorStateWrapper = function TeamForbiddenErrorStateWrapper(props) {
72
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, (0, _extends2.default)({
73
+ xcss: (0, _css.cx)(styles.teamforbiddenerrorstatewrapper)
74
+ }, props)) : /*#__PURE__*/_react.default.createElement(TeamForbiddenErrorStateWrapperLegacy, {
75
+ "data-testid": props.testId
76
+ }, props.children);
77
+ };
32
78
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
33
- var TeamForbiddenErrorStateWrapper = exports.TeamForbiddenErrorStateWrapper = _styled.default.div({
79
+ var TeamForbiddenErrorStateWrapperLegacy = _styled.default.div({
34
80
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
35
81
  width: '320px',
36
82
  position: 'relative'
37
83
  });
84
+ var CardHeader = exports.CardHeader = function CardHeader(_ref2) {
85
+ var image = _ref2.image,
86
+ isLoading = _ref2.isLoading,
87
+ label = _ref2.label;
88
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? isLoading || !image ? /*#__PURE__*/_react.default.createElement(_compiled.Box, {
89
+ xcss: (0, _css.cx)(styles.cardheader),
90
+ backgroundColor: "color.background.neutral"
91
+ }) : /*#__PURE__*/_react.default.createElement(_compiled.Box, {
92
+ as: "img",
93
+ alt: label || '',
94
+ src: image,
95
+ xcss: (0, _css.cx)(styles.cardheader),
96
+ backgroundColor: "color.background.neutral"
97
+ }) : /*#__PURE__*/_react.default.createElement(CardHeaderLegacy, {
98
+ image: image,
99
+ isLoading: isLoading
100
+ });
101
+ };
38
102
 
39
103
  // eslint-disable-next-line @atlaskit/design-system/no-styled-tagged-template-expression, @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
40
- var CardHeader = exports.CardHeader = _styled.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n\tbackground-color: ", ";\n\tbackground-image: ", ";\n\tbackground-repeat: no-repeat;\n\tbackground-position: center;\n\tbackground-size: cover;\n\tbox-sizing: content-box;\n\theight: 128px;\n"])), function (props) {
104
+ var CardHeaderLegacy = _styled.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n\tbackground-color: ", ";\n\tbackground-image: ", ";\n\tbackground-repeat: no-repeat;\n\tbackground-position: center;\n\tbackground-size: cover;\n\tbox-sizing: content-box;\n\theight: 128px;\n"])), function (props) {
41
105
  return props.isLoading ? "var(--ds-background-neutral, ".concat(_colors.N20, ")") : props.image ? '' : _constants2.teamHeaderBgColor;
42
106
  }, function (props) {
43
107
  return props.image ? "url(".concat(props.image, ")") : '';
44
108
  });
45
-
109
+ var CardContent = exports.CardContent = function CardContent(props) {
110
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, (0, _extends2.default)({
111
+ xcss: (0, _css.cx)(styles.cardcontent)
112
+ }, props)) : /*#__PURE__*/_react.default.createElement(CardContentLegacy, props);
113
+ };
46
114
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
47
- var CardContent = exports.CardContent = _styled.default.div({
115
+ var CardContentLegacy = _styled.default.div({
48
116
  display: 'flex',
49
117
  flexDirection: 'column',
50
118
  padding: "var(--ds-space-300, 24px)",
51
119
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
52
120
  minHeight: '104px'
53
121
  });
54
-
122
+ var TeamName = exports.TeamName = function TeamName(props) {
123
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, (0, _extends2.default)({
124
+ xcss: (0, _css.cx)(styles.teamname)
125
+ }, props)) : /*#__PURE__*/_react.default.createElement(TeamNameLegacy, props);
126
+ };
55
127
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles, @atlaskit/ui-styling-standard/no-imported-style-values, @atlaskit/ui-styling-standard/no-unsafe-values -- Ignored via go/DSP-18766
56
- var TeamName = exports.TeamName = _styled.default.h6({
128
+ var TeamNameLegacy = _styled.default.h6({
57
129
  font: "var(--ds-font-heading-medium, normal 500 20px/24px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, system-ui, \"Helvetica Neue\", sans-serif)",
58
130
  textTransform: 'none',
59
131
  overflow: 'hidden',
@@ -62,78 +134,104 @@ var TeamName = exports.TeamName = _styled.default.h6({
62
134
  WebkitLineClamp: 2,
63
135
  WebkitBoxOrient: 'vertical'
64
136
  });
65
-
137
+ var MemberCount = exports.MemberCount = function MemberCount(props) {
138
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, (0, _extends2.default)({
139
+ xcss: (0, _css.cx)(styles.membercount)
140
+ }, props)) : /*#__PURE__*/_react.default.createElement(MemberCountLegacy, props);
141
+ };
66
142
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
67
- var MemberCount = exports.MemberCount = _styled.default.div({
143
+ var MemberCountLegacy = _styled.default.div({
68
144
  color: "var(--ds-text-subtlest, ".concat(_colors.N200, ")"),
69
145
  marginTop: "var(--ds-space-050, 4px)"
70
146
  });
71
-
72
- // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
73
- var AvatarSection = exports.AvatarSection = _styled.default.div({
147
+ var AvatarSection = exports.AvatarSection = function AvatarSection(props) {
148
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, (0, _extends2.default)({
149
+ xcss: (0, _css.cx)(styles.avatarsection)
150
+ }, props)) : /*#__PURE__*/_react.default.createElement(AvatarSectionLegacy, props);
151
+ };
152
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles, @atlaskit/design-system/use-primitives -- Ignored via go/DSP-18766
153
+ var AvatarSectionLegacy = _styled.default.div({
74
154
  marginTop: "var(--ds-space-200, 16px)",
75
155
  marginLeft: "var(--ds-space-negative-025, -2px)"
76
156
  });
77
-
157
+ var DescriptionWrapper = exports.DescriptionWrapper = function DescriptionWrapper(props) {
158
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, (0, _extends2.default)({
159
+ xcss: (0, _css.cx)(styles.descriptionwrapper)
160
+ }, props)) : /*#__PURE__*/_react.default.createElement(DescriptionWrapperLegacy, props);
161
+ };
78
162
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
79
- var DescriptionWrapper = exports.DescriptionWrapper = _styled.default.div({
163
+ var DescriptionWrapperLegacy = _styled.default.div({
80
164
  marginTop: "var(--ds-space-200, 16px)",
81
165
  alignItems: 'center',
82
166
  display: 'flex'
83
167
  });
84
-
168
+ var Description = exports.Description = function Description(props) {
169
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, {
170
+ xcss: (0, _css.cx)(styles.description)
171
+ }, /*#__PURE__*/_react.default.createElement(_compiled.Text, (0, _extends2.default)({
172
+ maxLines: 3
173
+ }, props))) : /*#__PURE__*/_react.default.createElement(DescriptionLegacy, props);
174
+ };
85
175
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
86
- var Description = exports.Description = _styled.default.span({
176
+ var DescriptionLegacy = _styled.default.span({
87
177
  overflow: 'hidden',
88
178
  maxHeight: '60px',
89
179
  display: '-webkit-box',
90
180
  WebkitLineClamp: 3,
91
181
  WebkitBoxOrient: 'vertical'
92
182
  });
93
-
183
+ var ActionButtons = exports.ActionButtons = function ActionButtons(props) {
184
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, (0, _extends2.default)({
185
+ xcss: (0, _css.cx)(styles.actionbuttons),
186
+ backgroundColor: "elevation.surface.overlay"
187
+ }, props)) : /*#__PURE__*/_react.default.createElement(ActionButtonsLegacy, props);
188
+ };
94
189
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
95
- var ActionButtons = exports.ActionButtons = _styled.default.div({
190
+ var ActionButtonsLegacy = _styled.default.div({
96
191
  width: 'calc(100% + 8px)',
97
192
  display: 'flex',
98
193
  justifyContent: 'space-between',
99
194
  margin: "var(--ds-space-300, 24px)".concat(" ", "var(--ds-space-negative-300, -24px)", " 0 ", "var(--ds-space-negative-100, -8px)"),
100
195
  backgroundColor: "var(--ds-surface-overlay, hsla(0, 100%, 100%, 0.2))"
101
196
  });
102
-
197
+ var WrappedButton = exports.WrappedButton = function WrappedButton(props) {
198
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, (0, _extends2.default)({
199
+ xcss: (0, _css.cx)(styles.wrappedbutton)
200
+ }, props)) : /*#__PURE__*/_react.default.createElement(WrappedButtonLegacy, props);
201
+ };
103
202
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
104
- var WrappedButton = exports.WrappedButton = _styled.default.div({
203
+ var WrappedButtonLegacy = _styled.default.div({
105
204
  flexBasis: 0,
106
205
  flexGrow: 1,
107
206
  marginLeft: "var(--ds-space-100, 8px)"
108
207
  });
109
-
110
- // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
111
- var MoreButton = exports.MoreButton = _styled.default.div({
208
+ var MoreButton = exports.MoreButton = function MoreButton(props) {
209
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, (0, _extends2.default)({
210
+ xcss: (0, _css.cx)(styles.morebutton)
211
+ }, props)) : /*#__PURE__*/_react.default.createElement(MoreButtonLegacy, props);
212
+ };
213
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles, @atlaskit/design-system/use-primitives -- Ignored via go/DSP-18766
214
+ var MoreButtonLegacy = _styled.default.div({
112
215
  marginLeft: "var(--ds-space-100, 8px)"
113
216
  });
114
-
217
+ var LoadingWrapper = exports.LoadingWrapper = function LoadingWrapper(props) {
218
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, (0, _extends2.default)({
219
+ xcss: (0, _css.cx)(styles.loadingwrapper)
220
+ }, props)) : /*#__PURE__*/_react.default.createElement(LoadingWrapperLegacy, {
221
+ "data-testid": props.testId
222
+ }, props.children);
223
+ };
115
224
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
116
- var LoadingWrapper = exports.LoadingWrapper = _styled.default.div({
225
+ var LoadingWrapperLegacy = _styled.default.div({
117
226
  textAlign: 'center',
118
227
  marginTop: "var(--ds-space-500, 40px)"
119
228
  });
120
-
121
- // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766
122
- var AccessLockSVGWrapper = exports.AccessLockSVGWrapper = _styled.default.div({
229
+ var AccessLockSVGWrapper = exports.AccessLockSVGWrapper = function AccessLockSVGWrapper(props) {
230
+ return (0, _platformFeatureFlags.fg)('compiled-migration-profilecard') ? /*#__PURE__*/_react.default.createElement(_compiled.Box, (0, _extends2.default)({
231
+ xcss: (0, _css.cx)(styles.accesslocksvgwrapper)
232
+ }, props)) : /*#__PURE__*/_react.default.createElement(AccessLockSVGWrapperLegacy, props);
233
+ };
234
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-styled, @atlaskit/ui-styling-standard/no-exported-styles, @atlaskit/design-system/use-primitives -- Ignored via go/DSP-18766
235
+ var AccessLockSVGWrapperLegacy = _styled.default.div({
123
236
  marginBottom: "var(--ds-space-300, 24px)"
124
- });
125
-
126
- // export const LoadingTeamName = styled.div`
127
- // width: 175px;
128
- // height: ${gridSize () *3)px;
129
- // border-radius: ${borderRadius}px;
130
- // background-color: #f4f5f7;
131
- // `;
132
-
133
- // export const LoadingMemberCount = styled.div`
134
- // width: 81px;
135
- // height: ${gridSize () *2)px;
136
- // border-radius: 3px;
137
- // background-color: #f4f5f7;
138
- // margin: 4px 0;
139
- // `;
237
+ });
@@ -45,7 +45,7 @@ var createEvent = function createEvent(eventType, action, actionSubject, actionS
45
45
  actionSubjectId: actionSubjectId,
46
46
  attributes: _objectSpread(_objectSpread({
47
47
  packageName: "@atlaskit/profilecard",
48
- packageVersion: "22.1.0"
48
+ packageVersion: "22.2.2"
49
49
  }, attributes), {}, {
50
50
  firedAt: Math.round((0, _performance.getPageTime)())
51
51
  })
@@ -6,7 +6,7 @@ const ORG_ID_FROM_CLOUD_ID_QUERY = `query OrgIdFromCloudId($cloudId: ID!) {
6
6
  }`;
7
7
  const addHeaders = headers => {
8
8
  headers.append('atl-client-name', "@atlaskit/profilecard");
9
- headers.append('atl-client-version', "22.1.0");
9
+ headers.append('atl-client-version', "22.2.2");
10
10
  return headers;
11
11
  };
12
12
  export async function getOrgIdForCloudIdFromAGG(url, cloudId) {
@@ -75,7 +75,7 @@ export const addHeaders = headers => {
75
75
  headers.append('X-ExperimentalApi', 'teams-beta');
76
76
  headers.append('X-ExperimentalApi', 'team-members-beta');
77
77
  headers.append('atl-client-name', "@atlaskit/profilecard");
78
- headers.append('atl-client-version', "22.1.0");
78
+ headers.append('atl-client-version', "22.2.2");
79
79
  return headers;
80
80
  };
81
81
  export async function getTeamFromAGG(url, teamId, siteId) {
@@ -29,7 +29,7 @@ const ErrorMessage = props => {
29
29
  }, "Try again and we\u2019ll give it another shot"));
30
30
  };
31
31
  return /*#__PURE__*/React.createElement(ErrorWrapper, {
32
- "data-testid": "profilecard-error"
32
+ testId: "profilecard-error"
33
33
  }, /*#__PURE__*/React.createElement(IconError, {
34
34
  label: "icon error",
35
35
  size: "xlarge"