@atlaskit/smart-card 38.7.1 → 38.8.0

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
@@ -1,5 +1,19 @@
1
1
  # @atlaskit/smart-card
2
2
 
3
+ ## 38.8.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#166380](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/166380)
8
+ [`769ada2231863`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/769ada2231863) -
9
+ Adds optional FlexibleUI property for enabling the SnippetRenderer
10
+
11
+ ## 38.7.2
12
+
13
+ ### Patch Changes
14
+
15
+ - Updated dependencies
16
+
3
17
  ## 38.7.1
4
18
 
5
19
  ### Patch Changes
@@ -11,7 +11,7 @@ var ANALYTICS_CHANNEL = exports.ANALYTICS_CHANNEL = 'media';
11
11
  var context = exports.context = {
12
12
  componentName: 'smart-cards',
13
13
  packageName: "@atlaskit/smart-card",
14
- packageVersion: "38.7.1"
14
+ packageVersion: "38.8.0"
15
15
  };
16
16
  var TrackQuickActionType = exports.TrackQuickActionType = /*#__PURE__*/function (TrackQuickActionType) {
17
17
  TrackQuickActionType["StatusUpdate"] = "StatusUpdate";
@@ -74,6 +74,10 @@ var ResolvedView = function ResolvedView(_ref) {
74
74
  }];
75
75
  }, []);
76
76
  var status = cardState.status;
77
+ var uiOptions = (0, _platformFeatureFlags.fg)('platform-linking-flexible-card-context') ? _utils.FlexibleCardUiOptions : _utils.FlexibleCardUiOptionsOld;
78
+ if ((0, _platformFeatureFlags.fg)('cc-ai-linking-platform-snippet-renderer')) {
79
+ uiOptions.enableSnippetRenderer = true;
80
+ }
77
81
  return /*#__PURE__*/React.createElement(_FlexibleCard.default, {
78
82
  appearance: "block",
79
83
  cardState: cardState,
@@ -83,7 +87,7 @@ var ResolvedView = function ResolvedView(_ref) {
83
87
  origin: "smartLinkCard",
84
88
  actionOptions: actionOptions,
85
89
  testId: testId,
86
- ui: (0, _platformFeatureFlags.fg)('platform-linking-flexible-card-context') ? _utils.FlexibleCardUiOptions : _utils.FlexibleCardUiOptionsOld,
90
+ ui: uiOptions,
87
91
  url: url
88
92
  }, /*#__PURE__*/React.createElement(_blocks.TitleBlock, (0, _extends2.default)({}, _utils.titleBlockOptions, {
89
93
  metadata: titleMetadata,
@@ -27,7 +27,7 @@ var MINIMUM_MAX_LINES = 1;
27
27
  * @see Block
28
28
  */
29
29
  var SnippetBlock = function SnippetBlock(_ref) {
30
- var _blockProps$size2, _cardContext$ui2, _ref2, _context$meta$objectI, _context$meta, _context$meta$resourc, _context$meta2, _context$meta$tenantI, _context$meta3;
30
+ var _useFlexibleUiOptionC, _blockProps$size2, _cardContext$ui2, _ref2, _context$meta$objectI, _context$meta, _context$meta$resourc, _context$meta2, _context$meta$tenantI, _context$meta3;
31
31
  var _ref$maxLines = _ref.maxLines,
32
32
  maxLines = _ref$maxLines === void 0 ? DEFAULT_MAX_LINES : _ref$maxLines,
33
33
  _ref$status = _ref.status,
@@ -44,6 +44,8 @@ var SnippetBlock = function SnippetBlock(_ref) {
44
44
  var renderers = (0, _platformFeatureFlags.fg)('cc-ai-linking-platform-snippet-renderer') ?
45
45
  // eslint-disable-next-line react-hooks/rules-of-hooks
46
46
  (0, _renderers.useSmartLinkRenderers)() : undefined;
47
+ var enableSnippetRenderer = (0, _platformFeatureFlags.fg)('cc-ai-linking-platform-snippet-renderer') ? // eslint-disable-next-line react-hooks/rules-of-hooks
48
+ (_useFlexibleUiOptionC = (0, _flexibleUiContext.useFlexibleUiOptionContext)()) === null || _useFlexibleUiOptionC === void 0 ? void 0 : _useFlexibleUiOptionC.enableSnippetRenderer : undefined;
47
49
  var cardContext = (0, _platformFeatureFlags.fg)('platform-linking-flexible-card-context') ?
48
50
  // eslint-disable-next-line react-hooks/rules-of-hooks
49
51
  (0, _flexibleUiContext.useFlexibleCardContext)() : undefined;
@@ -62,7 +64,7 @@ var SnippetBlock = function SnippetBlock(_ref) {
62
64
  maxLines: snippetMaxLines,
63
65
  content: text
64
66
  });
65
- if (!(0, _platformFeatureFlags.fg)('cc-ai-linking-platform-snippet-renderer')) {
67
+ if (!(0, _platformFeatureFlags.fg)('cc-ai-linking-platform-snippet-renderer') || !enableSnippetRenderer) {
66
68
  var _blockProps$size, _cardContext$ui;
67
69
  return /*#__PURE__*/_react.default.createElement(_block.default, (0, _extends2.default)({}, blockProps, (0, _platformFeatureFlags.fg)('platform-linking-flexible-card-context') ? {
68
70
  size: (_blockProps$size = blockProps.size) !== null && _blockProps$size !== void 0 ? _blockProps$size : cardContext === null || cardContext === void 0 || (_cardContext$ui = cardContext.ui) === null || _cardContext$ui === void 0 ? void 0 : _cardContext$ui.size
@@ -114,6 +114,10 @@ var HoverCardContent = function HoverCardContent(_ref) {
114
114
  position: _constants.SmartLinkPosition.Center,
115
115
  subtitle: subtitle
116
116
  };
117
+ var uiOptions = (0, _platformFeatureFlags.fg)('platform-linking-flexible-card-context') ? _styled.flexibleUiOptions : _styled.flexibleUiOptionsOld;
118
+ if ((0, _platformFeatureFlags.fg)('cc-ai-linking-platform-snippet-renderer')) {
119
+ uiOptions.enableSnippetRenderer = true;
120
+ }
117
121
  var flexibleCardProps = {
118
122
  appearance: _constants.CardDisplay.HoverCardPreview,
119
123
  cardState: cardState,
@@ -122,7 +126,7 @@ var HoverCardContent = function HoverCardContent(_ref) {
122
126
  origin: 'smartLinkPreviewHoverCard',
123
127
  renderers: renderers,
124
128
  actionOptions: actionOptions,
125
- ui: (0, _platformFeatureFlags.fg)('platform-linking-flexible-card-context') ? _styled.flexibleUiOptions : _styled.flexibleUiOptionsOld,
129
+ ui: uiOptions,
126
130
  url: url,
127
131
  children: null
128
132
  };
@@ -20,7 +20,7 @@ var _excluded = ["href", "children", "checkSafety", "onClick", "testId", "isLink
20
20
  _excluded2 = ["isLinkSafe", "showSafetyWarningModal"];
21
21
  var PACKAGE_DATA = {
22
22
  packageName: "@atlaskit/smart-card",
23
- packageVersion: "38.7.1",
23
+ packageVersion: "38.8.0",
24
24
  componentName: 'linkUrl'
25
25
  };
26
26
  var Anchor = (0, _click.withLinkClickedEvent)('a');
@@ -2,7 +2,7 @@ export const ANALYTICS_CHANNEL = 'media';
2
2
  export const context = {
3
3
  componentName: 'smart-cards',
4
4
  packageName: "@atlaskit/smart-card",
5
- packageVersion: "38.7.1"
5
+ packageVersion: "38.8.0"
6
6
  };
7
7
  export let TrackQuickActionType = /*#__PURE__*/function (TrackQuickActionType) {
8
8
  TrackQuickActionType["StatusUpdate"] = "StatusUpdate";
@@ -58,6 +58,10 @@ const ResolvedView = ({
58
58
  hideIcon: true
59
59
  }], []);
60
60
  const status = cardState.status;
61
+ const uiOptions = fg('platform-linking-flexible-card-context') ? FlexibleCardUiOptions : FlexibleCardUiOptionsOld;
62
+ if (fg('cc-ai-linking-platform-snippet-renderer')) {
63
+ uiOptions.enableSnippetRenderer = true;
64
+ }
61
65
  return /*#__PURE__*/React.createElement(FlexibleCard, {
62
66
  appearance: "block",
63
67
  cardState: cardState,
@@ -67,7 +71,7 @@ const ResolvedView = ({
67
71
  origin: "smartLinkCard",
68
72
  actionOptions: actionOptions,
69
73
  testId: testId,
70
- ui: fg('platform-linking-flexible-card-context') ? FlexibleCardUiOptions : FlexibleCardUiOptionsOld,
74
+ ui: uiOptions,
71
75
  url: url
72
76
  }, /*#__PURE__*/React.createElement(TitleBlock, _extends({}, titleBlockOptions, {
73
77
  metadata: titleMetadata,
@@ -2,7 +2,7 @@ import _extends from "@babel/runtime/helpers/extends";
2
2
  import React from 'react';
3
3
  import { fg } from '@atlaskit/platform-feature-flags';
4
4
  import { SmartLinkStatus } from '../../../../../constants';
5
- import { useFlexibleCardContext, useFlexibleUiContext } from '../../../../../state/flexible-ui-context';
5
+ import { useFlexibleCardContext, useFlexibleUiContext, useFlexibleUiOptionContext } from '../../../../../state/flexible-ui-context';
6
6
  import { useSmartLinkRenderers } from '../../../../../state/renderers';
7
7
  import { Snippet } from '../../elements';
8
8
  import { getMaxLines } from '../../utils';
@@ -25,13 +25,15 @@ const SnippetBlock = ({
25
25
  isHidden = false,
26
26
  ...blockProps
27
27
  }) => {
28
- var _blockProps$size2, _cardContext$ui2, _ref, _context$meta$objectI, _context$meta, _context$meta$resourc, _context$meta2, _context$meta$tenantI, _context$meta3;
28
+ var _useFlexibleUiOptionC, _blockProps$size2, _cardContext$ui2, _ref, _context$meta$objectI, _context$meta, _context$meta$resourc, _context$meta2, _context$meta$tenantI, _context$meta3;
29
29
  const context = fg('cc-ai-linking-platform-snippet-renderer') ?
30
30
  // eslint-disable-next-line react-hooks/rules-of-hooks
31
31
  useFlexibleUiContext() : undefined;
32
32
  const renderers = fg('cc-ai-linking-platform-snippet-renderer') ?
33
33
  // eslint-disable-next-line react-hooks/rules-of-hooks
34
34
  useSmartLinkRenderers() : undefined;
35
+ const enableSnippetRenderer = fg('cc-ai-linking-platform-snippet-renderer') ? // eslint-disable-next-line react-hooks/rules-of-hooks
36
+ (_useFlexibleUiOptionC = useFlexibleUiOptionContext()) === null || _useFlexibleUiOptionC === void 0 ? void 0 : _useFlexibleUiOptionC.enableSnippetRenderer : undefined;
35
37
  const cardContext = fg('platform-linking-flexible-card-context') ?
36
38
  // eslint-disable-next-line react-hooks/rules-of-hooks
37
39
  useFlexibleCardContext() : undefined;
@@ -50,7 +52,7 @@ const SnippetBlock = ({
50
52
  maxLines: snippetMaxLines,
51
53
  content: text
52
54
  });
53
- if (!fg('cc-ai-linking-platform-snippet-renderer')) {
55
+ if (!fg('cc-ai-linking-platform-snippet-renderer') || !enableSnippetRenderer) {
54
56
  var _blockProps$size, _cardContext$ui;
55
57
  return /*#__PURE__*/React.createElement(Block, _extends({}, blockProps, fg('platform-linking-flexible-card-context') ? {
56
58
  size: (_blockProps$size = blockProps.size) !== null && _blockProps$size !== void 0 ? _blockProps$size : cardContext === null || cardContext === void 0 ? void 0 : (_cardContext$ui = cardContext.ui) === null || _cardContext$ui === void 0 ? void 0 : _cardContext$ui.size
@@ -105,6 +105,10 @@ const HoverCardContent = ({
105
105
  position: SmartLinkPosition.Center,
106
106
  subtitle: subtitle
107
107
  };
108
+ const uiOptions = fg('platform-linking-flexible-card-context') ? flexibleUiOptions : flexibleUiOptionsOld;
109
+ if (fg('cc-ai-linking-platform-snippet-renderer')) {
110
+ uiOptions.enableSnippetRenderer = true;
111
+ }
108
112
  const flexibleCardProps = {
109
113
  appearance: CardDisplay.HoverCardPreview,
110
114
  cardState: cardState,
@@ -113,7 +117,7 @@ const HoverCardContent = ({
113
117
  origin: 'smartLinkPreviewHoverCard',
114
118
  renderers: renderers,
115
119
  actionOptions,
116
- ui: fg('platform-linking-flexible-card-context') ? flexibleUiOptions : flexibleUiOptionsOld,
120
+ ui: uiOptions,
117
121
  url: url,
118
122
  children: null
119
123
  };
@@ -10,7 +10,7 @@ import LinkWarningModal from './LinkWarningModal';
10
10
  import { useLinkWarningModal } from './LinkWarningModal/hooks/use-link-warning-modal';
11
11
  const PACKAGE_DATA = {
12
12
  packageName: "@atlaskit/smart-card",
13
- packageVersion: "38.7.1",
13
+ packageVersion: "38.8.0",
14
14
  componentName: 'linkUrl'
15
15
  };
16
16
  const Anchor = withLinkClickedEvent('a');
@@ -4,7 +4,7 @@ export var ANALYTICS_CHANNEL = 'media';
4
4
  export var context = {
5
5
  componentName: 'smart-cards',
6
6
  packageName: "@atlaskit/smart-card",
7
- packageVersion: "38.7.1"
7
+ packageVersion: "38.8.0"
8
8
  };
9
9
  export var TrackQuickActionType = /*#__PURE__*/function (TrackQuickActionType) {
10
10
  TrackQuickActionType["StatusUpdate"] = "StatusUpdate";
@@ -65,6 +65,10 @@ var ResolvedView = function ResolvedView(_ref) {
65
65
  }];
66
66
  }, []);
67
67
  var status = cardState.status;
68
+ var uiOptions = fg('platform-linking-flexible-card-context') ? FlexibleCardUiOptions : FlexibleCardUiOptionsOld;
69
+ if (fg('cc-ai-linking-platform-snippet-renderer')) {
70
+ uiOptions.enableSnippetRenderer = true;
71
+ }
68
72
  return /*#__PURE__*/React.createElement(FlexibleCard, {
69
73
  appearance: "block",
70
74
  cardState: cardState,
@@ -74,7 +78,7 @@ var ResolvedView = function ResolvedView(_ref) {
74
78
  origin: "smartLinkCard",
75
79
  actionOptions: actionOptions,
76
80
  testId: testId,
77
- ui: fg('platform-linking-flexible-card-context') ? FlexibleCardUiOptions : FlexibleCardUiOptionsOld,
81
+ ui: uiOptions,
78
82
  url: url
79
83
  }, /*#__PURE__*/React.createElement(TitleBlock, _extends({}, titleBlockOptions, {
80
84
  metadata: titleMetadata,
@@ -4,7 +4,7 @@ var _excluded = ["maxLines", "status", "testId", "text", "isHidden"];
4
4
  import React from 'react';
5
5
  import { fg } from '@atlaskit/platform-feature-flags';
6
6
  import { SmartLinkStatus } from '../../../../../constants';
7
- import { useFlexibleCardContext, useFlexibleUiContext } from '../../../../../state/flexible-ui-context';
7
+ import { useFlexibleCardContext, useFlexibleUiContext, useFlexibleUiOptionContext } from '../../../../../state/flexible-ui-context';
8
8
  import { useSmartLinkRenderers } from '../../../../../state/renderers';
9
9
  import { Snippet } from '../../elements';
10
10
  import { getMaxLines } from '../../utils';
@@ -20,7 +20,7 @@ var MINIMUM_MAX_LINES = 1;
20
20
  * @see Block
21
21
  */
22
22
  var SnippetBlock = function SnippetBlock(_ref) {
23
- var _blockProps$size2, _cardContext$ui2, _ref2, _context$meta$objectI, _context$meta, _context$meta$resourc, _context$meta2, _context$meta$tenantI, _context$meta3;
23
+ var _useFlexibleUiOptionC, _blockProps$size2, _cardContext$ui2, _ref2, _context$meta$objectI, _context$meta, _context$meta$resourc, _context$meta2, _context$meta$tenantI, _context$meta3;
24
24
  var _ref$maxLines = _ref.maxLines,
25
25
  maxLines = _ref$maxLines === void 0 ? DEFAULT_MAX_LINES : _ref$maxLines,
26
26
  _ref$status = _ref.status,
@@ -37,6 +37,8 @@ var SnippetBlock = function SnippetBlock(_ref) {
37
37
  var renderers = fg('cc-ai-linking-platform-snippet-renderer') ?
38
38
  // eslint-disable-next-line react-hooks/rules-of-hooks
39
39
  useSmartLinkRenderers() : undefined;
40
+ var enableSnippetRenderer = fg('cc-ai-linking-platform-snippet-renderer') ? // eslint-disable-next-line react-hooks/rules-of-hooks
41
+ (_useFlexibleUiOptionC = useFlexibleUiOptionContext()) === null || _useFlexibleUiOptionC === void 0 ? void 0 : _useFlexibleUiOptionC.enableSnippetRenderer : undefined;
40
42
  var cardContext = fg('platform-linking-flexible-card-context') ?
41
43
  // eslint-disable-next-line react-hooks/rules-of-hooks
42
44
  useFlexibleCardContext() : undefined;
@@ -55,7 +57,7 @@ var SnippetBlock = function SnippetBlock(_ref) {
55
57
  maxLines: snippetMaxLines,
56
58
  content: text
57
59
  });
58
- if (!fg('cc-ai-linking-platform-snippet-renderer')) {
60
+ if (!fg('cc-ai-linking-platform-snippet-renderer') || !enableSnippetRenderer) {
59
61
  var _blockProps$size, _cardContext$ui;
60
62
  return /*#__PURE__*/React.createElement(Block, _extends({}, blockProps, fg('platform-linking-flexible-card-context') ? {
61
63
  size: (_blockProps$size = blockProps.size) !== null && _blockProps$size !== void 0 ? _blockProps$size : cardContext === null || cardContext === void 0 || (_cardContext$ui = cardContext.ui) === null || _cardContext$ui === void 0 ? void 0 : _cardContext$ui.size
@@ -105,6 +105,10 @@ var HoverCardContent = function HoverCardContent(_ref) {
105
105
  position: SmartLinkPosition.Center,
106
106
  subtitle: subtitle
107
107
  };
108
+ var uiOptions = fg('platform-linking-flexible-card-context') ? flexibleUiOptions : flexibleUiOptionsOld;
109
+ if (fg('cc-ai-linking-platform-snippet-renderer')) {
110
+ uiOptions.enableSnippetRenderer = true;
111
+ }
108
112
  var flexibleCardProps = {
109
113
  appearance: CardDisplay.HoverCardPreview,
110
114
  cardState: cardState,
@@ -113,7 +117,7 @@ var HoverCardContent = function HoverCardContent(_ref) {
113
117
  origin: 'smartLinkPreviewHoverCard',
114
118
  renderers: renderers,
115
119
  actionOptions: actionOptions,
116
- ui: fg('platform-linking-flexible-card-context') ? flexibleUiOptions : flexibleUiOptionsOld,
120
+ ui: uiOptions,
117
121
  url: url,
118
122
  children: null
119
123
  };
@@ -13,7 +13,7 @@ import LinkWarningModal from './LinkWarningModal';
13
13
  import { useLinkWarningModal } from './LinkWarningModal/hooks/use-link-warning-modal';
14
14
  var PACKAGE_DATA = {
15
15
  packageName: "@atlaskit/smart-card",
16
- packageVersion: "38.7.1",
16
+ packageVersion: "38.8.0",
17
17
  componentName: 'linkUrl'
18
18
  };
19
19
  var Anchor = withLinkClickedEvent('a');
@@ -137,6 +137,10 @@ export type FlexibleUiOptions = {
137
137
  * This is passed to the portal component.
138
138
  */
139
139
  zIndex?: number;
140
+ /**
141
+ * Flag to enable specific SmartCard components to directly enable or disable the SnippetRennderer override
142
+ */
143
+ enableSnippetRenderer?: boolean;
140
144
  };
141
145
  /**
142
146
  * Retry options used if Smart Link resolves to an errored state.
@@ -137,6 +137,10 @@ export type FlexibleUiOptions = {
137
137
  * This is passed to the portal component.
138
138
  */
139
139
  zIndex?: number;
140
+ /**
141
+ * Flag to enable specific SmartCard components to directly enable or disable the SnippetRennderer override
142
+ */
143
+ enableSnippetRenderer?: boolean;
140
144
  };
141
145
  /**
142
146
  * Retry options used if Smart Link resolves to an errored state.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/smart-card",
3
- "version": "38.7.1",
3
+ "version": "38.8.0",
4
4
  "description": "Smart card component",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -52,7 +52,7 @@
52
52
  "@atlaskit/link-client-extension": "^5.0.0",
53
53
  "@atlaskit/link-extractors": "^2.3.0",
54
54
  "@atlaskit/linking-common": "^9.0.0",
55
- "@atlaskit/linking-types": "^11.0.0",
55
+ "@atlaskit/linking-types": "^12.0.0",
56
56
  "@atlaskit/logo": "^19.0.0",
57
57
  "@atlaskit/lozenge": "^13.0.0",
58
58
  "@atlaskit/menu": "^8.0.0",
@@ -96,7 +96,7 @@
96
96
  "@atlaskit/analytics-listeners": "^9.0.0",
97
97
  "@atlaskit/css-reset": "^7.3.0",
98
98
  "@atlaskit/link-test-helpers": "^8.0.0",
99
- "@atlaskit/media-test-helpers": "^36.0.0",
99
+ "@atlaskit/media-test-helpers": "^36.1.0",
100
100
  "@atlaskit/react-ufo": "^3.13.0",
101
101
  "@atlaskit/ssr": "workspace:^",
102
102
  "@atlaskit/visual-regression": "workspace:^",