@atlaskit/smart-card 26.2.0 → 26.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.
- package/CHANGELOG.md +14 -0
- package/dist/cjs/extractors/block/index.js +5 -4
- package/dist/cjs/extractors/common/actions/extractPreviewAction.js +4 -2
- package/dist/cjs/i18n/cs.js +4 -0
- package/dist/cjs/i18n/da.js +4 -0
- package/dist/cjs/i18n/de.js +4 -0
- package/dist/cjs/i18n/en_ZZ.js +54 -4
- package/dist/cjs/i18n/es.js +4 -0
- package/dist/cjs/i18n/fi.js +5 -0
- package/dist/cjs/i18n/fr.js +4 -0
- package/dist/cjs/i18n/hu.js +4 -0
- package/dist/cjs/i18n/it.js +4 -0
- package/dist/cjs/i18n/ja.js +4 -0
- package/dist/cjs/i18n/ko.js +4 -0
- package/dist/cjs/i18n/nb.js +4 -0
- package/dist/cjs/i18n/nl.js +4 -0
- package/dist/cjs/i18n/pl.js +4 -0
- package/dist/cjs/i18n/pt_BR.js +4 -0
- package/dist/cjs/i18n/ru.js +4 -0
- package/dist/cjs/i18n/sv.js +4 -0
- package/dist/cjs/i18n/th.js +4 -0
- package/dist/cjs/i18n/tr.js +4 -0
- package/dist/cjs/i18n/uk.js +4 -0
- package/dist/cjs/i18n/vi.js +4 -0
- package/dist/cjs/i18n/zh.js +4 -0
- package/dist/cjs/i18n/zh_TW.js +4 -0
- package/dist/cjs/messages.js +6 -0
- package/dist/cjs/state/actions/index.js +27 -11
- package/dist/cjs/state/hooks/use-resolve/index.js +28 -12
- package/dist/cjs/utils/analytics/SmartLinkAnalyticsContext.js +47 -0
- package/dist/cjs/version.json +1 -1
- package/dist/cjs/view/BlockCard/actions/PreviewAction.js +4 -2
- package/dist/cjs/view/BlockCard/index.js +3 -1
- package/dist/cjs/view/CardWithUrl/component.js +13 -3
- package/dist/cjs/view/FlexibleCard/components/actions/action/preview-action/index.js +7 -1
- package/dist/cjs/view/FlexibleCard/components/actions/utils.js +1 -1
- package/dist/cjs/view/HoverCard/components/HoverCardComponent.js +21 -2
- package/dist/cjs/view/HoverCard/components/views/resolved/index.js +26 -3
- package/dist/es2019/extractors/block/index.js +5 -4
- package/dist/es2019/extractors/common/actions/extractPreviewAction.js +4 -2
- package/dist/es2019/i18n/cs.js +4 -0
- package/dist/es2019/i18n/da.js +4 -0
- package/dist/es2019/i18n/de.js +4 -0
- package/dist/es2019/i18n/en_ZZ.js +54 -4
- package/dist/es2019/i18n/es.js +4 -0
- package/dist/es2019/i18n/fi.js +5 -0
- package/dist/es2019/i18n/fr.js +4 -0
- package/dist/es2019/i18n/hu.js +4 -0
- package/dist/es2019/i18n/it.js +4 -0
- package/dist/es2019/i18n/ja.js +4 -0
- package/dist/es2019/i18n/ko.js +4 -0
- package/dist/es2019/i18n/nb.js +4 -0
- package/dist/es2019/i18n/nl.js +4 -0
- package/dist/es2019/i18n/pl.js +4 -0
- package/dist/es2019/i18n/pt_BR.js +4 -0
- package/dist/es2019/i18n/ru.js +4 -0
- package/dist/es2019/i18n/sv.js +4 -0
- package/dist/es2019/i18n/th.js +4 -0
- package/dist/es2019/i18n/tr.js +4 -0
- package/dist/es2019/i18n/uk.js +4 -0
- package/dist/es2019/i18n/vi.js +4 -0
- package/dist/es2019/i18n/zh.js +4 -0
- package/dist/es2019/i18n/zh_TW.js +4 -0
- package/dist/es2019/messages.js +6 -0
- package/dist/es2019/state/actions/index.js +32 -12
- package/dist/es2019/state/hooks/use-resolve/index.js +28 -12
- package/dist/es2019/utils/analytics/SmartLinkAnalyticsContext.js +35 -0
- package/dist/es2019/version.json +1 -1
- package/dist/es2019/view/BlockCard/actions/PreviewAction.js +17 -13
- package/dist/es2019/view/BlockCard/index.js +3 -1
- package/dist/es2019/view/CardWithUrl/component.js +9 -2
- package/dist/es2019/view/FlexibleCard/components/actions/action/preview-action/index.js +7 -1
- package/dist/es2019/view/FlexibleCard/components/actions/utils.js +1 -1
- package/dist/es2019/view/HoverCard/components/HoverCardComponent.js +21 -2
- package/dist/es2019/view/HoverCard/components/views/resolved/index.js +36 -11
- package/dist/esm/extractors/block/index.js +5 -4
- package/dist/esm/extractors/common/actions/extractPreviewAction.js +4 -2
- package/dist/esm/i18n/cs.js +4 -0
- package/dist/esm/i18n/da.js +4 -0
- package/dist/esm/i18n/de.js +4 -0
- package/dist/esm/i18n/en_ZZ.js +54 -4
- package/dist/esm/i18n/es.js +4 -0
- package/dist/esm/i18n/fi.js +5 -0
- package/dist/esm/i18n/fr.js +4 -0
- package/dist/esm/i18n/hu.js +4 -0
- package/dist/esm/i18n/it.js +4 -0
- package/dist/esm/i18n/ja.js +4 -0
- package/dist/esm/i18n/ko.js +4 -0
- package/dist/esm/i18n/nb.js +4 -0
- package/dist/esm/i18n/nl.js +4 -0
- package/dist/esm/i18n/pl.js +4 -0
- package/dist/esm/i18n/pt_BR.js +4 -0
- package/dist/esm/i18n/ru.js +4 -0
- package/dist/esm/i18n/sv.js +4 -0
- package/dist/esm/i18n/th.js +4 -0
- package/dist/esm/i18n/tr.js +4 -0
- package/dist/esm/i18n/uk.js +4 -0
- package/dist/esm/i18n/vi.js +4 -0
- package/dist/esm/i18n/zh.js +4 -0
- package/dist/esm/i18n/zh_TW.js +4 -0
- package/dist/esm/messages.js +6 -0
- package/dist/esm/state/actions/index.js +27 -11
- package/dist/esm/state/hooks/use-resolve/index.js +28 -12
- package/dist/esm/utils/analytics/SmartLinkAnalyticsContext.js +36 -0
- package/dist/esm/version.json +1 -1
- package/dist/esm/view/BlockCard/actions/PreviewAction.js +4 -2
- package/dist/esm/view/BlockCard/index.js +3 -1
- package/dist/esm/view/CardWithUrl/component.js +11 -2
- package/dist/esm/view/FlexibleCard/components/actions/action/preview-action/index.js +7 -1
- package/dist/esm/view/FlexibleCard/components/actions/utils.js +1 -1
- package/dist/esm/view/HoverCard/components/HoverCardComponent.js +21 -2
- package/dist/esm/view/HoverCard/components/views/resolved/index.js +26 -3
- package/dist/types/extractors/block/index.d.ts +2 -2
- package/dist/types/extractors/block/types.d.ts +1 -0
- package/dist/types/extractors/common/actions/extractPreviewAction.d.ts +1 -1
- package/dist/types/i18n/cs.d.ts +4 -0
- package/dist/types/i18n/da.d.ts +4 -0
- package/dist/types/i18n/de.d.ts +4 -0
- package/dist/types/i18n/en_ZZ.d.ts +50 -0
- package/dist/types/i18n/es.d.ts +4 -0
- package/dist/types/i18n/fi.d.ts +5 -0
- package/dist/types/i18n/fr.d.ts +4 -0
- package/dist/types/i18n/hu.d.ts +4 -0
- package/dist/types/i18n/it.d.ts +4 -0
- package/dist/types/i18n/ja.d.ts +4 -0
- package/dist/types/i18n/ko.d.ts +4 -0
- package/dist/types/i18n/nb.d.ts +4 -0
- package/dist/types/i18n/nl.d.ts +4 -0
- package/dist/types/i18n/pl.d.ts +4 -0
- package/dist/types/i18n/pt_BR.d.ts +4 -0
- package/dist/types/i18n/ru.d.ts +4 -0
- package/dist/types/i18n/sv.d.ts +4 -0
- package/dist/types/i18n/th.d.ts +4 -0
- package/dist/types/i18n/tr.d.ts +4 -0
- package/dist/types/i18n/uk.d.ts +4 -0
- package/dist/types/i18n/vi.d.ts +4 -0
- package/dist/types/i18n/zh.d.ts +4 -0
- package/dist/types/i18n/zh_TW.d.ts +4 -0
- package/dist/types/messages.d.ts +1 -1
- package/dist/types/utils/analytics/SmartLinkAnalyticsContext.d.ts +9 -0
- package/dist/types/view/BlockCard/actions/PreviewAction.d.ts +2 -1
- package/dist/types/view/BlockCard/views/ResolvedView.d.ts +2 -0
- package/dist/types/view/CardWithUrl/component.d.ts +1 -1
- package/dist/types/view/HoverCard/components/views/resolved/index.d.ts +1 -1
- package/dist/types-ts4.5/extractors/block/index.d.ts +2 -2
- package/dist/types-ts4.5/extractors/block/types.d.ts +1 -0
- package/dist/types-ts4.5/extractors/common/actions/extractPreviewAction.d.ts +1 -1
- package/dist/types-ts4.5/i18n/cs.d.ts +4 -0
- package/dist/types-ts4.5/i18n/da.d.ts +4 -0
- package/dist/types-ts4.5/i18n/de.d.ts +4 -0
- package/dist/types-ts4.5/i18n/en_ZZ.d.ts +50 -0
- package/dist/types-ts4.5/i18n/es.d.ts +4 -0
- package/dist/types-ts4.5/i18n/fi.d.ts +5 -0
- package/dist/types-ts4.5/i18n/fr.d.ts +4 -0
- package/dist/types-ts4.5/i18n/hu.d.ts +4 -0
- package/dist/types-ts4.5/i18n/it.d.ts +4 -0
- package/dist/types-ts4.5/i18n/ja.d.ts +4 -0
- package/dist/types-ts4.5/i18n/ko.d.ts +4 -0
- package/dist/types-ts4.5/i18n/nb.d.ts +4 -0
- package/dist/types-ts4.5/i18n/nl.d.ts +4 -0
- package/dist/types-ts4.5/i18n/pl.d.ts +4 -0
- package/dist/types-ts4.5/i18n/pt_BR.d.ts +4 -0
- package/dist/types-ts4.5/i18n/ru.d.ts +4 -0
- package/dist/types-ts4.5/i18n/sv.d.ts +4 -0
- package/dist/types-ts4.5/i18n/th.d.ts +4 -0
- package/dist/types-ts4.5/i18n/tr.d.ts +4 -0
- package/dist/types-ts4.5/i18n/uk.d.ts +4 -0
- package/dist/types-ts4.5/i18n/vi.d.ts +4 -0
- package/dist/types-ts4.5/i18n/zh.d.ts +4 -0
- package/dist/types-ts4.5/i18n/zh_TW.d.ts +4 -0
- package/dist/types-ts4.5/messages.d.ts +1 -1
- package/dist/types-ts4.5/utils/analytics/SmartLinkAnalyticsContext.d.ts +9 -0
- package/dist/types-ts4.5/view/BlockCard/actions/PreviewAction.d.ts +2 -1
- package/dist/types-ts4.5/view/BlockCard/views/ResolvedView.d.ts +2 -0
- package/dist/types-ts4.5/view/CardWithUrl/component.d.ts +1 -1
- package/dist/types-ts4.5/view/HoverCard/components/views/resolved/index.d.ts +1 -1
- package/package.json +11 -3
- package/tmp/api-report-tmp.d.ts +0 -909
package/dist/cjs/messages.js
CHANGED
|
@@ -221,6 +221,12 @@ var messages = (0, _reactIntlNext.defineMessages)({
|
|
|
221
221
|
defaultMessage: 'Owned by {context}',
|
|
222
222
|
description: 'Indicates the person or entity that owns or maintains the resource.'
|
|
223
223
|
},
|
|
224
|
+
// Move this to preview once FF has been merged
|
|
225
|
+
preview_improved: {
|
|
226
|
+
id: 'fabric.linking.preview_improved',
|
|
227
|
+
defaultMessage: 'Open preview',
|
|
228
|
+
description: 'Click to view a richer view of your content, without needing to navigate to it.'
|
|
229
|
+
},
|
|
224
230
|
preview: {
|
|
225
231
|
id: 'fabric.linking.preview',
|
|
226
232
|
defaultMessage: 'Full screen view',
|
|
@@ -25,13 +25,20 @@ var useSmartCardActions = function useSmartCardActions(id, url, analytics) {
|
|
|
25
25
|
connections = _useSmartLinkContext.connections;
|
|
26
26
|
var getState = store.getState,
|
|
27
27
|
dispatch = store.dispatch;
|
|
28
|
-
var
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
28
|
+
var getSmartLinkState = (0, _react.useCallback)(function () {
|
|
29
|
+
var _getState$url;
|
|
30
|
+
var _ref = (_getState$url = getState()[url]) !== null && _getState$url !== void 0 ? _getState$url : {
|
|
31
|
+
status: _constants.SmartLinkStatus.Pending
|
|
32
|
+
},
|
|
33
|
+
details = _ref.details,
|
|
34
|
+
status = _ref.status,
|
|
35
|
+
metadataStatus = _ref.metadataStatus;
|
|
36
|
+
return {
|
|
37
|
+
details: details,
|
|
38
|
+
status: status,
|
|
39
|
+
metadataStatus: metadataStatus
|
|
40
|
+
};
|
|
41
|
+
}, [getState, url]);
|
|
35
42
|
var setMetadataStatus = (0, _react.useCallback)(function (metadataStatus) {
|
|
36
43
|
dispatch((0, _linkingCommon.cardAction)(_linkingCommon.ACTION_UPDATE_METADATA_STATUS, {
|
|
37
44
|
url: url
|
|
@@ -56,6 +63,8 @@ var useSmartCardActions = function useSmartCardActions(id, url, analytics) {
|
|
|
56
63
|
}, _callee);
|
|
57
64
|
})), [id, resolveUrl, url]);
|
|
58
65
|
var register = (0, _react.useCallback)(function () {
|
|
66
|
+
var _getSmartLinkState = getSmartLinkState(),
|
|
67
|
+
details = _getSmartLinkState.details;
|
|
59
68
|
if (!details) {
|
|
60
69
|
dispatch((0, _linkingCommon.cardAction)(_linkingCommon.ACTION_RESOLVING, {
|
|
61
70
|
url: url
|
|
@@ -63,8 +72,10 @@ var useSmartCardActions = function useSmartCardActions(id, url, analytics) {
|
|
|
63
72
|
setMetadataStatus('pending');
|
|
64
73
|
}
|
|
65
74
|
return resolve();
|
|
66
|
-
}, [
|
|
75
|
+
}, [getSmartLinkState, resolve, dispatch, url, setMetadataStatus]);
|
|
67
76
|
var reload = (0, _react.useCallback)(function () {
|
|
77
|
+
var _getSmartLinkState2 = getSmartLinkState(),
|
|
78
|
+
details = _getSmartLinkState2.details;
|
|
68
79
|
var definitionId = (0, _helpers.getDefinitionId)(details);
|
|
69
80
|
if (definitionId) {
|
|
70
81
|
(0, _helpers.getByDefinitionId)(definitionId, getState()).map(function (url) {
|
|
@@ -73,15 +84,20 @@ var useSmartCardActions = function useSmartCardActions(id, url, analytics) {
|
|
|
73
84
|
} else {
|
|
74
85
|
resolve(url, true);
|
|
75
86
|
}
|
|
76
|
-
}, [
|
|
87
|
+
}, [getSmartLinkState, url, getState, resolve]);
|
|
77
88
|
var loadMetadata = (0, _react.useCallback)(function () {
|
|
89
|
+
var _getSmartLinkState3 = getSmartLinkState(),
|
|
90
|
+
metadataStatus = _getSmartLinkState3.metadataStatus;
|
|
78
91
|
//metadataStatus will be undefined for SSR links only
|
|
79
92
|
if (metadataStatus === undefined) {
|
|
80
93
|
setMetadataStatus('pending');
|
|
81
94
|
return resolve(url, false, true);
|
|
82
95
|
}
|
|
83
|
-
}, [
|
|
96
|
+
}, [getSmartLinkState, resolve, setMetadataStatus, url]);
|
|
84
97
|
var authorize = (0, _react.useCallback)(function (appearance) {
|
|
98
|
+
var _getSmartLinkState4 = getSmartLinkState(),
|
|
99
|
+
details = _getSmartLinkState4.details,
|
|
100
|
+
status = _getSmartLinkState4.status;
|
|
85
101
|
var definitionId = (0, _helpers.getDefinitionId)(details);
|
|
86
102
|
var extensionKey = (0, _helpers.getExtensionKey)(details);
|
|
87
103
|
var services = (0, _helpers.getServices)(details);
|
|
@@ -133,7 +149,7 @@ var useSmartCardActions = function useSmartCardActions(id, url, analytics) {
|
|
|
133
149
|
reload();
|
|
134
150
|
});
|
|
135
151
|
}
|
|
136
|
-
}, [analytics.ui, analytics.screen, analytics.track, analytics.operational, id, reload
|
|
152
|
+
}, [getSmartLinkState, analytics.ui, analytics.screen, analytics.track, analytics.operational, id, reload]);
|
|
137
153
|
var invoke = (0, _react.useCallback)( /*#__PURE__*/function () {
|
|
138
154
|
var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(opts, appearance) {
|
|
139
155
|
var key, action, source, markName, response;
|
|
@@ -8,9 +8,11 @@ exports.default = void 0;
|
|
|
8
8
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
9
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
10
|
var _react = require("react");
|
|
11
|
+
var _reactDom = require("react-dom");
|
|
11
12
|
var _analytics = require("../../analytics");
|
|
12
13
|
var _helpers = require("../../helpers");
|
|
13
14
|
var _linkingCommon = require("@atlaskit/linking-common");
|
|
15
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
14
16
|
var _constants = require("../../actions/constants");
|
|
15
17
|
var _jsonld = require("../../../utils/jsonld");
|
|
16
18
|
var _constants2 = require("../../../constants");
|
|
@@ -80,6 +82,20 @@ var useResolve = function useResolve() {
|
|
|
80
82
|
}
|
|
81
83
|
}
|
|
82
84
|
}, [getState, setMetadataStatus, dispatch]);
|
|
85
|
+
var handleResolvedLinkSuccess = (0, _react.useCallback)(function (resourceUrl, response, isReloading, isMetadataRequest) {
|
|
86
|
+
//if a link resolves normally, metadata will also always be resolved
|
|
87
|
+
setMetadataStatus(resourceUrl, 'resolved');
|
|
88
|
+
// Dispatch Analytics and resolved card action - including unauthorized states.
|
|
89
|
+
if (isReloading) {
|
|
90
|
+
dispatch((0, _linkingCommon.cardAction)(_linkingCommon.ACTION_RELOADING, {
|
|
91
|
+
url: resourceUrl
|
|
92
|
+
}, response));
|
|
93
|
+
} else {
|
|
94
|
+
dispatch((0, _linkingCommon.cardAction)(_linkingCommon.ACTION_RESOLVED, {
|
|
95
|
+
url: resourceUrl
|
|
96
|
+
}, response, undefined, undefined, isMetadataRequest));
|
|
97
|
+
}
|
|
98
|
+
}, [setMetadataStatus, dispatch]);
|
|
83
99
|
var handleResolvedLinkResponse = (0, _react.useCallback)(function (resourceUrl, response) {
|
|
84
100
|
var isReloading = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
85
101
|
var isMetadataRequest = arguments.length > 3 ? arguments[3] : undefined;
|
|
@@ -104,20 +120,20 @@ var useResolve = function useResolve() {
|
|
|
104
120
|
handleResolvedLinkError(resourceUrl, new _linkingCommon.APIError('error', hostname, _constants.ERROR_MESSAGE_METADATA), response, isMetadataRequest);
|
|
105
121
|
return;
|
|
106
122
|
}
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
123
|
+
if ((0, _platformFeatureFlags.getBooleanFF)('platform.linking-platform.smart-card.enable-analytics-context')) {
|
|
124
|
+
/**
|
|
125
|
+
* Using unstable_batchedUpdates because this store update happens async and trigers a rerender
|
|
126
|
+
* more info:
|
|
127
|
+
* https://github.com/facebook/react/blob/v18.2.0/packages/use-sync-external-store/src/useSyncExternalStoreShimClient.js#L113
|
|
128
|
+
* https://react-redux.js.org/api/batch
|
|
129
|
+
*/
|
|
130
|
+
(0, _reactDom.unstable_batchedUpdates)(function () {
|
|
131
|
+
handleResolvedLinkSuccess(resourceUrl, response, isReloading, isMetadataRequest);
|
|
132
|
+
});
|
|
115
133
|
} else {
|
|
116
|
-
|
|
117
|
-
url: resourceUrl
|
|
118
|
-
}, response, undefined, undefined, isMetadataRequest));
|
|
134
|
+
handleResolvedLinkSuccess(resourceUrl, response, isReloading, isMetadataRequest);
|
|
119
135
|
}
|
|
120
|
-
}, [
|
|
136
|
+
}, [handleResolvedLinkError, handleResolvedLinkSuccess, hasAuthFlowSupported]);
|
|
121
137
|
return (0, _react.useCallback)( /*#__PURE__*/function () {
|
|
122
138
|
var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(url) {
|
|
123
139
|
var isReloading,
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.SmartLinkAnalyticsContext = void 0;
|
|
9
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _analyticsNext = require("@atlaskit/analytics-next");
|
|
12
|
+
var _resolvedAttributes = require("@atlaskit/link-analytics/resolved-attributes");
|
|
13
|
+
var _flexible = require("../flexible");
|
|
14
|
+
var _constants = require("../../constants");
|
|
15
|
+
var _store = require("../../state/store");
|
|
16
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
17
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
18
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
19
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
20
|
+
var SmartLinkAnalyticsContext = function SmartLinkAnalyticsContext(_ref) {
|
|
21
|
+
var children = _ref.children,
|
|
22
|
+
url = _ref.url,
|
|
23
|
+
appearance = _ref.appearance,
|
|
24
|
+
id = _ref.id;
|
|
25
|
+
var _useSmartLinkState = (0, _store.useSmartCardState)(url),
|
|
26
|
+
details = _useSmartLinkState.details,
|
|
27
|
+
status = _useSmartLinkState.status;
|
|
28
|
+
var resolvedAttributes = (0, _resolvedAttributes.getResolvedAttributes)({
|
|
29
|
+
url: url
|
|
30
|
+
}, details, status);
|
|
31
|
+
var _getUrlAttributes = (0, _resolvedAttributes.getUrlAttributes)(url),
|
|
32
|
+
urlHash = _getUrlAttributes.urlHash;
|
|
33
|
+
var isFlexibleUi = (0, _react.useMemo)(function () {
|
|
34
|
+
return (0, _flexible.isFlexibleUiCard)(children);
|
|
35
|
+
}, [children]);
|
|
36
|
+
var display = isFlexibleUi ? _constants.CardDisplay.Flexible : appearance;
|
|
37
|
+
return /*#__PURE__*/_react.default.createElement(_analyticsNext.AnalyticsContext, {
|
|
38
|
+
data: {
|
|
39
|
+
attributes: _objectSpread(_objectSpread({}, resolvedAttributes), {}, {
|
|
40
|
+
urlHash: urlHash,
|
|
41
|
+
display: display,
|
|
42
|
+
id: id
|
|
43
|
+
})
|
|
44
|
+
}
|
|
45
|
+
}, children);
|
|
46
|
+
};
|
|
47
|
+
exports.SmartLinkAnalyticsContext = SmartLinkAnalyticsContext;
|
package/dist/cjs/version.json
CHANGED
|
@@ -17,7 +17,7 @@ var _reactDom = _interopRequireDefault(require("react-dom"));
|
|
|
17
17
|
var _reactIntlNext = require("react-intl-next");
|
|
18
18
|
var _messages = require("../../../messages");
|
|
19
19
|
var _excluded = ["popupMountPointId", "onClose"],
|
|
20
|
-
_excluded2 = ["details"];
|
|
20
|
+
_excluded2 = ["details", "enableImprovedPreviewAction"];
|
|
21
21
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
22
22
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
23
23
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
@@ -82,10 +82,12 @@ function _previewFunction() {
|
|
|
82
82
|
}
|
|
83
83
|
var _default = function _default(_ref2) {
|
|
84
84
|
var details = _ref2.details,
|
|
85
|
+
enableImprovedPreviewAction = _ref2.enableImprovedPreviewAction,
|
|
85
86
|
rest = (0, _objectWithoutProperties2.default)(_ref2, _excluded2);
|
|
87
|
+
var previewText = enableImprovedPreviewAction ? _messages.messages.preview_improved : _messages.messages.preview;
|
|
86
88
|
return {
|
|
87
89
|
id: 'preview-content',
|
|
88
|
-
text: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage,
|
|
90
|
+
text: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, previewText),
|
|
89
91
|
promise: function promise(props) {
|
|
90
92
|
return previewFunction(_objectSpread(_objectSpread({
|
|
91
93
|
popupMountPointId: 'twp-editor-preview-iframe',
|
|
@@ -82,6 +82,7 @@ var _FlexibleForbiddenView = _interopRequireDefault(require("./views/flexible/Fl
|
|
|
82
82
|
var _token = require("../../utils/token");
|
|
83
83
|
var _react = require("@emotion/react");
|
|
84
84
|
var _handlers = require("./utils/handlers");
|
|
85
|
+
var _linkProvider = require("@atlaskit/link-provider");
|
|
85
86
|
var _PreviewAction = _interopRequireDefault(require("./actions/PreviewAction"));
|
|
86
87
|
var _templateObject;
|
|
87
88
|
/** @jsx jsx */
|
|
@@ -117,6 +118,7 @@ var BlockCard = function BlockCard(_ref) {
|
|
|
117
118
|
handleInvoke: handleInvoke,
|
|
118
119
|
extensionKey: extensionKey
|
|
119
120
|
};
|
|
121
|
+
var enableImprovedPreviewAction = Boolean((0, _linkProvider.useFeatureFlag)('enableImprovedPreviewAction'));
|
|
120
122
|
if (enableFlexibleBlockCard) {
|
|
121
123
|
var ui = {
|
|
122
124
|
hideElevation: true
|
|
@@ -199,7 +201,7 @@ var BlockCard = function BlockCard(_ref) {
|
|
|
199
201
|
isSelected: isSelected
|
|
200
202
|
});
|
|
201
203
|
case 'resolved':
|
|
202
|
-
var resolvedViewProps = (0, _block.extractBlockProps)(data, meta, extractorOpts, renderers, platform);
|
|
204
|
+
var resolvedViewProps = (0, _block.extractBlockProps)(data, meta, extractorOpts, renderers, platform, enableImprovedPreviewAction);
|
|
203
205
|
if (onResolve) {
|
|
204
206
|
onResolve({
|
|
205
207
|
title: resolvedViewProps.title,
|
|
@@ -5,10 +5,11 @@ var _typeof = require("@babel/runtime/helpers/typeof");
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.CardWithUrlContent =
|
|
8
|
+
exports.CardWithUrlContent = void 0;
|
|
9
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _analyticsNext = require("@atlaskit/analytics-next");
|
|
11
11
|
var _linkProvider = require("@atlaskit/link-provider");
|
|
12
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
12
13
|
var _utils = require("../../utils");
|
|
13
14
|
var measure = _interopRequireWildcard(require("../../utils/performance"));
|
|
14
15
|
var _helpers = require("../../state/helpers");
|
|
@@ -20,9 +21,10 @@ var _flexible = require("../../utils/flexible");
|
|
|
20
21
|
var _FlexibleCard = _interopRequireDefault(require("../FlexibleCard"));
|
|
21
22
|
var _constants = require("../../constants");
|
|
22
23
|
var _click = require("../../utils/analytics/click");
|
|
24
|
+
var _SmartLinkAnalyticsContext = require("../../utils/analytics/SmartLinkAnalyticsContext");
|
|
23
25
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
24
26
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
25
|
-
function
|
|
27
|
+
function Component(_ref) {
|
|
26
28
|
var id = _ref.id,
|
|
27
29
|
url = _ref.url,
|
|
28
30
|
isSelected = _ref.isSelected,
|
|
@@ -268,4 +270,12 @@ function CardWithUrlContent(_ref) {
|
|
|
268
270
|
onIframeFocus: onIframeFocus
|
|
269
271
|
});
|
|
270
272
|
}
|
|
271
|
-
}
|
|
273
|
+
}
|
|
274
|
+
var CardWithUrlContent = function CardWithUrlContent(props) {
|
|
275
|
+
return (0, _platformFeatureFlags.getBooleanFF)('platform.linking-platform.smart-card.enable-analytics-context') ? /*#__PURE__*/_react.default.createElement(_SmartLinkAnalyticsContext.SmartLinkAnalyticsContext, {
|
|
276
|
+
url: props.url,
|
|
277
|
+
appearance: props.appearance,
|
|
278
|
+
id: props.id
|
|
279
|
+
}, /*#__PURE__*/_react.default.createElement(Component, props)) : /*#__PURE__*/_react.default.createElement(Component, props);
|
|
280
|
+
};
|
|
281
|
+
exports.CardWithUrlContent = CardWithUrlContent;
|
|
@@ -12,6 +12,9 @@ var _index = _interopRequireDefault(require("../index"));
|
|
|
12
12
|
var _flexibleUiContext = require("../../../../../../state/flexible-ui-context");
|
|
13
13
|
var _state = require("../../../../../../state");
|
|
14
14
|
var _utils = require("../../../../../EmbedModal/utils");
|
|
15
|
+
var _reactIntlNext = require("react-intl-next");
|
|
16
|
+
var _messages = require("../../../../../../messages");
|
|
17
|
+
var _linkProvider = require("@atlaskit/link-provider");
|
|
15
18
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
16
19
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
17
20
|
var PreviewAction = function PreviewAction(props) {
|
|
@@ -28,6 +31,8 @@ var PreviewAction = function PreviewAction(props) {
|
|
|
28
31
|
isSupportTheming = props.isSupportTheming;
|
|
29
32
|
var defaultAnalytics = (0, _state.useSmartLinkAnalytics)(url, function () {});
|
|
30
33
|
var analytics = (0, _flexibleUiContext.useFlexibleUiAnalyticsContext)() || defaultAnalytics;
|
|
34
|
+
var enableImprovedPreviewAction = Boolean((0, _linkProvider.useFeatureFlag)('enableImprovedPreviewAction'));
|
|
35
|
+
var previewText = enableImprovedPreviewAction ? _messages.messages.preview_improved : _messages.messages.preview;
|
|
31
36
|
if (src && url) {
|
|
32
37
|
var embedModal = function embedModal() {
|
|
33
38
|
return (0, _utils.openPreviewModal)({
|
|
@@ -46,7 +51,8 @@ var PreviewAction = function PreviewAction(props) {
|
|
|
46
51
|
if (_onClick) {
|
|
47
52
|
_onClick();
|
|
48
53
|
}
|
|
49
|
-
}
|
|
54
|
+
},
|
|
55
|
+
content: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, previewText)
|
|
50
56
|
});
|
|
51
57
|
return /*#__PURE__*/_react.default.createElement(_index.default, (0, _extends2.default)({}, action, {
|
|
52
58
|
appearance: appearance,
|
|
@@ -57,7 +57,7 @@ var actionMappings = (_actionMappings = {}, (0, _defineProperty2.default)(_actio
|
|
|
57
57
|
testId: 'smart-action-preview-action',
|
|
58
58
|
content: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.messages.preview),
|
|
59
59
|
icon: /*#__PURE__*/_react.default.createElement(_vidFullScreenOn.default, {
|
|
60
|
-
label: "
|
|
60
|
+
label: "Open preview"
|
|
61
61
|
}),
|
|
62
62
|
tooltipMessage: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.messages.preview)
|
|
63
63
|
}
|
|
@@ -8,6 +8,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
8
8
|
exports.HoverCardComponent = void 0;
|
|
9
9
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
11
12
|
var _popup = _interopRequireDefault(require("@atlaskit/popup"));
|
|
12
13
|
var _react = require("@emotion/react");
|
|
13
14
|
var _react2 = _interopRequireWildcard(require("react"));
|
|
@@ -17,6 +18,7 @@ var _store = require("../../../state/store");
|
|
|
17
18
|
var _HoverCardContent = _interopRequireDefault(require("../components/HoverCardContent"));
|
|
18
19
|
var _styled = require("../styled");
|
|
19
20
|
var _constants = require("../../../constants");
|
|
21
|
+
var _SmartLinkAnalyticsContext = require("../../../utils/analytics/SmartLinkAnalyticsContext");
|
|
20
22
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
21
23
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
22
24
|
/** @jsx jsx */
|
|
@@ -24,6 +26,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
24
26
|
var HoverCardComponent = function HoverCardComponent(_ref) {
|
|
25
27
|
var children = _ref.children,
|
|
26
28
|
url = _ref.url,
|
|
29
|
+
id = _ref.id,
|
|
27
30
|
analyticsHandler = _ref.analyticsHandler,
|
|
28
31
|
analytics = _ref.analytics,
|
|
29
32
|
_ref$canOpen = _ref.canOpen,
|
|
@@ -133,7 +136,23 @@ var HoverCardComponent = function HoverCardComponent(_ref) {
|
|
|
133
136
|
}, [closeOnChildClick, hideCard]);
|
|
134
137
|
var content = (0, _react2.useCallback)(function (_ref2) {
|
|
135
138
|
var update = _ref2.update;
|
|
136
|
-
return (0, _react.jsx)(
|
|
139
|
+
return (0, _platformFeatureFlags.getBooleanFF)('platform.linking-platform.smart-card.enable-analytics-context') ? (0, _react.jsx)(_SmartLinkAnalyticsContext.SmartLinkAnalyticsContext, {
|
|
140
|
+
url: url,
|
|
141
|
+
appearance: _constants.CardDisplay.HoverCardPreview,
|
|
142
|
+
id: id
|
|
143
|
+
}, (0, _react.jsx)(_HoverCardContent.default, {
|
|
144
|
+
onMouseEnter: initShowCard,
|
|
145
|
+
onMouseLeave: initHideCard,
|
|
146
|
+
analytics: analytics,
|
|
147
|
+
cardActions: filteredActions,
|
|
148
|
+
cardState: linkState,
|
|
149
|
+
onActionClick: onActionClick,
|
|
150
|
+
onResolve: update,
|
|
151
|
+
renderers: renderers,
|
|
152
|
+
showServerActions: showServerActions,
|
|
153
|
+
url: url,
|
|
154
|
+
id: id
|
|
155
|
+
})) : (0, _react.jsx)(_HoverCardContent.default, {
|
|
137
156
|
onMouseEnter: initShowCard,
|
|
138
157
|
onMouseLeave: initHideCard,
|
|
139
158
|
analytics: analytics,
|
|
@@ -145,7 +164,7 @@ var HoverCardComponent = function HoverCardComponent(_ref) {
|
|
|
145
164
|
showServerActions: showServerActions,
|
|
146
165
|
url: url
|
|
147
166
|
});
|
|
148
|
-
}, [analytics, initHideCard, initShowCard, filteredActions, linkState, onActionClick, renderers, showServerActions, url]);
|
|
167
|
+
}, [analytics, initHideCard, initShowCard, filteredActions, linkState, onActionClick, renderers, showServerActions, url, id]);
|
|
149
168
|
var trigger = (0, _react2.useCallback)(function (triggerProps) {
|
|
150
169
|
return (0, _react.jsx)("span", {
|
|
151
170
|
ref: parentSpan
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.toFooterActions = exports.default = void 0;
|
|
9
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
11
|
var _linkProvider = require("@atlaskit/link-provider");
|
|
11
12
|
var _extractors = require("@atlaskit/linking-common/extractors");
|
|
@@ -16,10 +17,31 @@ var _FlexibleCard = _interopRequireDefault(require("../../../../FlexibleCard"));
|
|
|
16
17
|
var _utils = require("../../../utils");
|
|
17
18
|
var _SnippetOrPreview = _interopRequireDefault(require("../../SnippetOrPreview"));
|
|
18
19
|
var _extractMetadata = require("../../../../../extractors/hover/extractMetadata");
|
|
20
|
+
var _messages = require("../../../../../messages");
|
|
21
|
+
var _reactIntlNext = require("react-intl-next");
|
|
19
22
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
20
23
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
21
|
-
var
|
|
24
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
25
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
26
|
+
var toFooterActions = function toFooterActions(cardActions, onActionClick, enableImprovedPreviewAction) {
|
|
27
|
+
var appearance = enableImprovedPreviewAction ? {
|
|
28
|
+
appearance: 'primary'
|
|
29
|
+
} : undefined;
|
|
30
|
+
var previewText = enableImprovedPreviewAction ? _messages.messages.preview_improved : _messages.messages.preview;
|
|
22
31
|
return cardActions.map(function (action) {
|
|
32
|
+
if (action.id === 'preview-content') {
|
|
33
|
+
return _objectSpread({
|
|
34
|
+
content: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, previewText),
|
|
35
|
+
name: _constants.ActionName.CustomAction,
|
|
36
|
+
onClick: function onClick() {
|
|
37
|
+
if (onActionClick) {
|
|
38
|
+
onActionClick(action.id);
|
|
39
|
+
}
|
|
40
|
+
return action.invoke();
|
|
41
|
+
},
|
|
42
|
+
testId: action.id
|
|
43
|
+
}, appearance);
|
|
44
|
+
}
|
|
23
45
|
return {
|
|
24
46
|
content: action.text,
|
|
25
47
|
name: _constants.ActionName.CustomAction,
|
|
@@ -48,6 +70,7 @@ var HoverCardResolvedView = function HoverCardResolvedView(_ref) {
|
|
|
48
70
|
onActionClick = _ref.onActionClick,
|
|
49
71
|
extensionKey = _ref.extensionKey;
|
|
50
72
|
var showActionableElement = (0, _linkProvider.useFeatureFlag)('enableActionableElement');
|
|
73
|
+
var enableImprovedPreviewAction = (0, _linkProvider.useFeatureFlag)('enableImprovedPreviewAction');
|
|
51
74
|
(0, _react.useEffect)(function () {
|
|
52
75
|
// Since this hover view is only rendered on resolved status,
|
|
53
76
|
// there is no need to check for statuses.
|
|
@@ -57,8 +80,8 @@ var HoverCardResolvedView = function HoverCardResolvedView(_ref) {
|
|
|
57
80
|
});
|
|
58
81
|
}, [analytics.ui, cardState.status]);
|
|
59
82
|
var footerActions = (0, _react.useMemo)(function () {
|
|
60
|
-
return toFooterActions(cardActions, onActionClick);
|
|
61
|
-
}, [cardActions, onActionClick]);
|
|
83
|
+
return toFooterActions(cardActions, onActionClick, Boolean(enableImprovedPreviewAction));
|
|
84
|
+
}, [cardActions, onActionClick, enableImprovedPreviewAction]);
|
|
62
85
|
var data = (_cardState$details = cardState.details) === null || _cardState$details === void 0 ? void 0 : _cardState$details.data;
|
|
63
86
|
var _useMemo = (0, _react.useMemo)(function () {
|
|
64
87
|
var types = data ? (0, _extractors.extractType)(data) : undefined;
|
|
@@ -21,7 +21,7 @@ const extractBlockIcon = jsonLd => {
|
|
|
21
21
|
}
|
|
22
22
|
};
|
|
23
23
|
const extractBlockDetails = jsonLd => [extractCommentCount(jsonLd), extractProgrammingLanguage(jsonLd), extractSubscriberCount(jsonLd), extractAttachmentCount(jsonLd)].filter(detail => !!detail);
|
|
24
|
-
export const extractBlockActions = (props, jsonLd, opts, platform, meta) => {
|
|
24
|
+
export const extractBlockActions = (props, jsonLd, opts, platform, meta, enableImprovedPreviewAction) => {
|
|
25
25
|
if (opts) {
|
|
26
26
|
const {
|
|
27
27
|
handleInvoke
|
|
@@ -32,7 +32,8 @@ export const extractBlockActions = (props, jsonLd, opts, platform, meta) => {
|
|
|
32
32
|
viewProps: props,
|
|
33
33
|
jsonLd,
|
|
34
34
|
platform,
|
|
35
|
-
meta
|
|
35
|
+
meta,
|
|
36
|
+
enableImprovedPreviewAction
|
|
36
37
|
});
|
|
37
38
|
|
|
38
39
|
// The previewAction should always be the last action
|
|
@@ -63,7 +64,7 @@ export const extractBlockUsers = jsonLd => {
|
|
|
63
64
|
return updatedByMembers || createdByMembers;
|
|
64
65
|
}
|
|
65
66
|
};
|
|
66
|
-
export const extractBlockProps = (jsonLd, meta, opts, renderers, platform) => {
|
|
67
|
+
export const extractBlockProps = (jsonLd, meta, opts, renderers, platform, enableImprovedPreviewAction) => {
|
|
67
68
|
const props = {
|
|
68
69
|
link: extractLink(jsonLd),
|
|
69
70
|
title: extractTitle(jsonLd),
|
|
@@ -80,6 +81,6 @@ export const extractBlockProps = (jsonLd, meta, opts, renderers, platform) => {
|
|
|
80
81
|
};
|
|
81
82
|
return {
|
|
82
83
|
...props,
|
|
83
|
-
actions: extractBlockActions(props, jsonLd, opts, platform, meta)
|
|
84
|
+
actions: extractBlockActions(props, jsonLd, opts, platform, meta, enableImprovedPreviewAction)
|
|
84
85
|
};
|
|
85
86
|
};
|
|
@@ -46,7 +46,8 @@ export const extractPreviewAction = ({
|
|
|
46
46
|
origin,
|
|
47
47
|
source = 'block',
|
|
48
48
|
analytics,
|
|
49
|
-
meta
|
|
49
|
+
meta,
|
|
50
|
+
enableImprovedPreviewAction
|
|
50
51
|
}) => {
|
|
51
52
|
// Extract metadata from view props & raw JSON-LD.
|
|
52
53
|
const metadataFromJsonLd = getMetadataFromJsonLd(jsonLd, platform);
|
|
@@ -70,7 +71,8 @@ export const extractPreviewAction = ({
|
|
|
70
71
|
onViewActionClick: () => {
|
|
71
72
|
handleInvoke(getInvokeOpts(key, 'ViewAction'));
|
|
72
73
|
},
|
|
73
|
-
isSupportTheming: extractIsSupportTheming(meta)
|
|
74
|
+
isSupportTheming: extractIsSupportTheming(meta),
|
|
75
|
+
enableImprovedPreviewAction
|
|
74
76
|
});
|
|
75
77
|
// Setup props to go through proper Redux 'invocation' flow
|
|
76
78
|
// for analytics, further state management if required in future.
|
package/dist/es2019/i18n/cs.js
CHANGED
|
@@ -47,6 +47,7 @@ export default {
|
|
|
47
47
|
'fabric.linking.more_actions': 'Další akce',
|
|
48
48
|
'fabric.linking.not_found_description': 'Odkaz se nepodařilo najít. Zkontrolujte adresu URL a zkuste ji upravit nebo vložit znovu.',
|
|
49
49
|
'fabric.linking.not_found_title': 'Jejda. Tento odkaz se nepodařilo najít.',
|
|
50
|
+
'fabric.linking.open_issue_in_jira': 'Otevřít požadavek v Jira',
|
|
50
51
|
'fabric.linking.open_link_in_a_new_tab': 'Otevřít odkaz na nové kartě',
|
|
51
52
|
'fabric.linking.owned_by': 'Vlastník: {context}',
|
|
52
53
|
'fabric.linking.pending_request': 'Vaše žádost o přístup čeká na vyřízení.',
|
|
@@ -77,6 +78,9 @@ export default {
|
|
|
77
78
|
'fabric.linking.save': 'Uložit',
|
|
78
79
|
'fabric.linking.srclink': 'Zobrazit v',
|
|
79
80
|
'fabric.linking.srclinkunknown': 'Zobrazit originál',
|
|
81
|
+
'fabric.linking.status_change_load_error': 'Načtení stavů a přechodů se nezdařilo',
|
|
82
|
+
'fabric.linking.status_change_permission_error': 'K provedení přechodu tohoto požadavku nemáte oprávnění.',
|
|
83
|
+
'fabric.linking.status_change_update_error': 'Aktualizace stavu se nezdařila',
|
|
80
84
|
'fabric.linking.try_again': 'Zkusit znovu',
|
|
81
85
|
'fabric.linking.try_another_account': 'Zkuste jiný účet',
|
|
82
86
|
'fabric.linking.unlink_account': 'Odpojit účet',
|
package/dist/es2019/i18n/da.js
CHANGED
|
@@ -47,6 +47,7 @@ export default {
|
|
|
47
47
|
'fabric.linking.more_actions': 'Flere handlinger',
|
|
48
48
|
'fabric.linking.not_found_description': 'Vi kunne ikke finde linket. Kontrollér og rediger URL-adressen, eller indsæt den igen.',
|
|
49
49
|
'fabric.linking.not_found_title': 'Ups. Vi kan ikke finde dette link!',
|
|
50
|
+
'fabric.linking.open_issue_in_jira': 'Åbn sag i Jira',
|
|
50
51
|
'fabric.linking.open_link_in_a_new_tab': 'Åbn link i en ny fane',
|
|
51
52
|
'fabric.linking.owned_by': 'Ejet af {context}',
|
|
52
53
|
'fabric.linking.pending_request': 'Din anmodning om adgang afventer behandling',
|
|
@@ -77,6 +78,9 @@ export default {
|
|
|
77
78
|
'fabric.linking.save': 'Gem',
|
|
78
79
|
'fabric.linking.srclink': 'Vis i',
|
|
79
80
|
'fabric.linking.srclinkunknown': 'Vis original',
|
|
81
|
+
'fabric.linking.status_change_load_error': 'Vi kunne ikke indlæse statusser og overførsler',
|
|
82
|
+
'fabric.linking.status_change_permission_error': 'Du har ikke tilladelse til at overføre denne sag.',
|
|
83
|
+
'fabric.linking.status_change_update_error': 'Vi kunne ikke opdatere statussen',
|
|
80
84
|
'fabric.linking.try_again': 'Prøv igen',
|
|
81
85
|
'fabric.linking.try_another_account': 'Prøv en anden konto',
|
|
82
86
|
'fabric.linking.unlink_account': 'Fjern link til konto',
|
package/dist/es2019/i18n/de.js
CHANGED
|
@@ -47,6 +47,7 @@ export default {
|
|
|
47
47
|
'fabric.linking.more_actions': 'Weitere Aktionen',
|
|
48
48
|
'fabric.linking.not_found_description': 'Der Link konnte nicht gefunden werden. Überprüfen Sie die URL und versuchen Sie die Bearbeitung oder das Einfügen erneut.',
|
|
49
49
|
'fabric.linking.not_found_title': 'Oh! Diese Verknüpfung konnte nicht gefunden werden!',
|
|
50
|
+
'fabric.linking.open_issue_in_jira': 'Vorgang in Jira öffnen',
|
|
50
51
|
'fabric.linking.open_link_in_a_new_tab': 'Link in neuer Registerkarte öffnen',
|
|
51
52
|
'fabric.linking.owned_by': 'Besitzer: {context}',
|
|
52
53
|
'fabric.linking.pending_request': 'Ihre Zugriffsanfrage ist ausstehend.',
|
|
@@ -77,6 +78,9 @@ export default {
|
|
|
77
78
|
'fabric.linking.save': 'Speichern',
|
|
78
79
|
'fabric.linking.srclink': 'Anzeigen in',
|
|
79
80
|
'fabric.linking.srclinkunknown': 'Original anzeigen',
|
|
81
|
+
'fabric.linking.status_change_load_error': 'Status und Übergänge konnten nicht geladen werden',
|
|
82
|
+
'fabric.linking.status_change_permission_error': 'Sie sind nicht berechtigt, diesen Vorgang weiterzugeben.',
|
|
83
|
+
'fabric.linking.status_change_update_error': 'Der Status konnte nicht aktualisiert werden',
|
|
80
84
|
'fabric.linking.try_again': 'Versuchen Sie es erneut.',
|
|
81
85
|
'fabric.linking.try_another_account': 'Versuchen Sie es mit einem anderen Konto erneut.',
|
|
82
86
|
'fabric.linking.unlink_account': 'Kontoverknüpfung löschen',
|