@atlaskit/renderer 126.13.5 → 126.14.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 +21 -0
- package/dist/cjs/react/index.js +4 -1
- package/dist/cjs/react/nodes/inlineCard.js +12 -16
- package/dist/cjs/react/renderer-node.js +21 -1
- package/dist/cjs/render-document.js +13 -0
- package/dist/cjs/ui/MediaCard.js +50 -42
- package/dist/cjs/ui/Renderer/index.js +6 -4
- package/dist/es2019/react/index.js +5 -2
- package/dist/es2019/react/nodes/inlineCard.js +10 -13
- package/dist/es2019/react/renderer-node.js +8 -0
- package/dist/es2019/render-document.js +15 -1
- package/dist/es2019/ui/MediaCard.js +12 -1
- package/dist/es2019/ui/Renderer/index.js +4 -3
- package/dist/esm/react/index.js +5 -2
- package/dist/esm/react/nodes/inlineCard.js +14 -18
- package/dist/esm/react/renderer-node.js +20 -0
- package/dist/esm/render-document.js +14 -1
- package/dist/esm/ui/MediaCard.js +50 -42
- package/dist/esm/ui/Renderer/index.js +6 -4
- package/dist/types/analytics/events.d.ts +3 -1
- package/dist/types/react/renderer-node.d.ts +1 -0
- package/dist/types/react/types.d.ts +2 -1
- package/dist/types/ui/MediaCard.d.ts +8 -0
- package/dist/types-ts4.5/analytics/events.d.ts +3 -1
- package/dist/types-ts4.5/react/renderer-node.d.ts +1 -0
- package/dist/types-ts4.5/react/types.d.ts +2 -1
- package/dist/types-ts4.5/ui/MediaCard.d.ts +8 -0
- package/package.json +13 -7
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
# @atlaskit/renderer
|
|
2
2
|
|
|
3
|
+
## 126.14.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`27de3457c3a79`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/27de3457c3a79) -
|
|
8
|
+
EDITOR-5532 add context to media error events
|
|
9
|
+
|
|
10
|
+
### Patch Changes
|
|
11
|
+
|
|
12
|
+
- [`8d4d473fe4cd8`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/8d4d473fe4cd8) -
|
|
13
|
+
Only reload cached smartlinks when the url changes and we sucessfully got the data from cache
|
|
14
|
+
- Updated dependencies
|
|
15
|
+
|
|
16
|
+
## 126.13.6
|
|
17
|
+
|
|
18
|
+
### Patch Changes
|
|
19
|
+
|
|
20
|
+
- [`6d87d08be8526`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/6d87d08be8526) -
|
|
21
|
+
Add dependency for a11y testing.
|
|
22
|
+
- Updated dependencies
|
|
23
|
+
|
|
3
24
|
## 126.13.5
|
|
4
25
|
|
|
5
26
|
### Patch Changes
|
package/dist/cjs/react/index.js
CHANGED
|
@@ -501,6 +501,8 @@ var ReactSerializer = exports.default = /*#__PURE__*/function () {
|
|
|
501
501
|
var _n$type2;
|
|
502
502
|
return ((_n$type2 = n.type) === null || _n$type2 === void 0 ? void 0 : _n$type2.name) === 'mediaSingle';
|
|
503
503
|
});
|
|
504
|
+
// Only check path for bodiedSyncBlock; syncBlock uses RendererContext
|
|
505
|
+
var nestedUnder = (0, _expValEquals.expValEquals)('platform_synced_block', 'isEnabled', true) && (0, _platformFeatureFlags.fg)('platform_synced_block_patch_5') ? (0, _rendererNode.getNestedUnderNodes)(path, ['bodiedSyncBlock']) : undefined;
|
|
504
506
|
var isAnnotationMark = function isAnnotationMark(mark) {
|
|
505
507
|
return mark.type === annotation;
|
|
506
508
|
};
|
|
@@ -523,7 +525,8 @@ var ReactSerializer = exports.default = /*#__PURE__*/function () {
|
|
|
523
525
|
ssr: (_this$media = this.media) === null || _this$media === void 0 ? void 0 : _this$media.ssr,
|
|
524
526
|
// surroundTextNodesWithTextWrapper checks inlineComment.allowDraftMode
|
|
525
527
|
allowAnnotationsDraftMode: this.surroundTextNodesWithTextWrapper,
|
|
526
|
-
enableSyncMediaCard: (_this$media2 = this.media) === null || _this$media2 === void 0 ? void 0 : _this$media2.enableSyncMediaCard
|
|
528
|
+
enableSyncMediaCard: (_this$media2 = this.media) === null || _this$media2 === void 0 ? void 0 : _this$media2.enableSyncMediaCard,
|
|
529
|
+
nestedUnder: nestedUnder
|
|
527
530
|
});
|
|
528
531
|
}
|
|
529
532
|
}, {
|
|
@@ -15,6 +15,7 @@ var _utils = require("@atlaskit/linking-common/utils");
|
|
|
15
15
|
var _hooks = require("@atlaskit/smart-card/hooks");
|
|
16
16
|
var _ssr = require("@atlaskit/smart-card/ssr");
|
|
17
17
|
var _ui = require("@atlaskit/editor-common/ui");
|
|
18
|
+
var _hooks2 = require("@atlaskit/editor-common/hooks");
|
|
18
19
|
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
19
20
|
var _analyticsNext = require("@atlaskit/analytics-next");
|
|
20
21
|
var _platformFeatureFlagsReact = require("@atlaskit/platform-feature-flags-react");
|
|
@@ -162,13 +163,15 @@ var InlineCard = function InlineCard(props) {
|
|
|
162
163
|
}
|
|
163
164
|
return card;
|
|
164
165
|
};
|
|
165
|
-
var
|
|
166
|
-
|
|
167
|
-
});
|
|
166
|
+
var _ref2 = (cardContext === null || cardContext === void 0 || (_cardContext$value5 = cardContext.value) === null || _cardContext$value5 === void 0 ? void 0 : _cardContext$value5.store) || {},
|
|
167
|
+
getSmartlinkState = _ref2.getState;
|
|
168
168
|
var _useState = (0, _react.useState)(false),
|
|
169
169
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
170
170
|
isResolvedViewRendered = _useState2[0],
|
|
171
171
|
setIsResolvedViewRendered = _useState2[1];
|
|
172
|
+
var cardState = getSmartlinkState === null || getSmartlinkState === void 0 ? void 0 : getSmartlinkState()[url || ''];
|
|
173
|
+
var cardStatus = cardState === null || cardState === void 0 ? void 0 : cardState.status;
|
|
174
|
+
(0, _hooks2.useSmartCardReloadAfterCache)(url, cardStatus, (smartLinks === null || smartLinks === void 0 ? void 0 : smartLinks.ssr) || false);
|
|
172
175
|
var onClick = (0, _getCardClickHandler.getCardClickHandler)(eventHandlers, url);
|
|
173
176
|
var cardProps = {
|
|
174
177
|
url: url,
|
|
@@ -176,10 +179,10 @@ var InlineCard = function InlineCard(props) {
|
|
|
176
179
|
onClick: onClick,
|
|
177
180
|
container: portal
|
|
178
181
|
};
|
|
179
|
-
var
|
|
180
|
-
hideHoverPreview =
|
|
181
|
-
actionOptions =
|
|
182
|
-
ssr =
|
|
182
|
+
var _ref3 = smartLinks || {},
|
|
183
|
+
hideHoverPreview = _ref3.hideHoverPreview,
|
|
184
|
+
actionOptions = _ref3.actionOptions,
|
|
185
|
+
ssr = _ref3.ssr;
|
|
183
186
|
var analyticsData = {
|
|
184
187
|
attributes: {
|
|
185
188
|
location: 'renderer'
|
|
@@ -193,20 +196,13 @@ var InlineCard = function InlineCard(props) {
|
|
|
193
196
|
sourceUrl: url,
|
|
194
197
|
linkType: "inline"
|
|
195
198
|
}) : null;
|
|
196
|
-
var onError = function onError(
|
|
197
|
-
var err =
|
|
199
|
+
var onError = function onError(_ref4) {
|
|
200
|
+
var err = _ref4.err;
|
|
198
201
|
if (err) {
|
|
199
202
|
throw err;
|
|
200
203
|
}
|
|
201
204
|
};
|
|
202
205
|
var MaybeOverlay = cardContext !== null && cardContext !== void 0 && cardContext.value ? OverlayWithCardContext : HoverLinkOverlayNoop;
|
|
203
|
-
var cardState = cardContext === null || cardContext === void 0 || (_cardContext$value5 = cardContext.value) === null || _cardContext$value5 === void 0 || (_cardContext$value5 = _cardContext$value5.store) === null || _cardContext$value5 === void 0 ? void 0 : _cardContext$value5.getState()[url || ''];
|
|
204
|
-
(0, _react.useEffect)(function () {
|
|
205
|
-
// if we render from cache, we want to make sure we reload the data in the background
|
|
206
|
-
if ((0, _expValEquals.expValEquals)('platform_editor_smartlink_local_cache', 'isEnabled', true) && !ssr && url && (cardState === null || cardState === void 0 ? void 0 : cardState.status) === 'resolved') {
|
|
207
|
-
reload();
|
|
208
|
-
}
|
|
209
|
-
});
|
|
210
206
|
if ((ssr || cardState && (0, _expValEquals.expValEquals)('platform_editor_smartlink_local_cache', 'isEnabled', true)) && url && !(0, _experiments.editorExperiment)('platform_editor_preview_panel_linking_exp', true, {
|
|
211
207
|
exposure: true
|
|
212
208
|
})) {
|
|
@@ -3,7 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.insideTable = exports.insideMultiBodiedExtension = exports.insideBreakoutLayout = exports.insideBreakoutExpand = exports.insideBlockNode = void 0;
|
|
6
|
+
exports.insideTable = exports.insideMultiBodiedExtension = exports.insideBreakoutLayout = exports.insideBreakoutExpand = exports.insideBlockNode = exports.getNestedUnderNodes = void 0;
|
|
7
|
+
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
|
|
8
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
9
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
7
10
|
var isLayoutNode = function isLayoutNode(node) {
|
|
8
11
|
return node.type.name === 'layoutSection';
|
|
9
12
|
};
|
|
@@ -50,4 +53,21 @@ var insideTable = exports.insideTable = function insideTable(path, schema) {
|
|
|
50
53
|
return path.some(function (n) {
|
|
51
54
|
return n.type === table;
|
|
52
55
|
});
|
|
56
|
+
};
|
|
57
|
+
var getNestedUnderNodes = exports.getNestedUnderNodes = function getNestedUnderNodes(path, nodeTypeNames) {
|
|
58
|
+
var _iterator = _createForOfIteratorHelper(path),
|
|
59
|
+
_step;
|
|
60
|
+
try {
|
|
61
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
62
|
+
var node = _step.value;
|
|
63
|
+
if (nodeTypeNames.includes(node.type.name)) {
|
|
64
|
+
return node.type.name;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
} catch (err) {
|
|
68
|
+
_iterator.e(err);
|
|
69
|
+
} finally {
|
|
70
|
+
_iterator.f();
|
|
71
|
+
}
|
|
72
|
+
return undefined;
|
|
53
73
|
};
|
|
@@ -92,6 +92,19 @@ var _validation = function _validation(doc, schema, adfStage, useSpecBasedValida
|
|
|
92
92
|
}
|
|
93
93
|
});
|
|
94
94
|
}
|
|
95
|
+
if (result && (0, _platformFeatureFlags.fg)('platform_editor_native_embeds_fallback_transform')) {
|
|
96
|
+
var _nativeEmbedsFallback = (0, _transforms.nativeEmbedsFallbackTransform)(result),
|
|
97
|
+
_transformedAdf2 = _nativeEmbedsFallback.transformedAdf,
|
|
98
|
+
_isTransformed2 = _nativeEmbedsFallback.isTransformed;
|
|
99
|
+
if (_isTransformed2) {
|
|
100
|
+
dispatchAnalyticsEvent === null || dispatchAnalyticsEvent === void 0 || dispatchAnalyticsEvent({
|
|
101
|
+
action: _analytics.ACTION.NATIVE_EMBEDS_TRANSFORMED,
|
|
102
|
+
actionSubject: _analytics.ACTION_SUBJECT.RENDERER,
|
|
103
|
+
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
104
|
+
});
|
|
105
|
+
result = _transformedAdf2 || result;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
95
108
|
return result;
|
|
96
109
|
};
|
|
97
110
|
var memoValidation = (0, _memoizeOne.default)(_validation, function (newArgs, lastArgs) {
|
package/dist/cjs/ui/MediaCard.js
CHANGED
|
@@ -23,6 +23,7 @@ var _utils = require("@atlaskit/editor-common/utils");
|
|
|
23
23
|
var _expValEquals = require("@atlaskit/tmp-editor-statsig/exp-val-equals");
|
|
24
24
|
var _analyticsContext = _interopRequireDefault(require("../analytics/analyticsContext"));
|
|
25
25
|
var _analytics = require("@atlaskit/editor-common/analytics");
|
|
26
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
26
27
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
27
28
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
28
29
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
@@ -108,16 +109,23 @@ var MediaCardView = exports.MediaCardView = /*#__PURE__*/function (_Component) {
|
|
|
108
109
|
};
|
|
109
110
|
}());
|
|
110
111
|
(0, _defineProperty2.default)(_this, "onError", function (reason) {
|
|
111
|
-
var _this$props$fireAnaly, _this$
|
|
112
|
-
|
|
112
|
+
var _this$props$fireAnaly, _this$props3;
|
|
113
|
+
var _this$props2 = _this.props,
|
|
114
|
+
nestedUnder = _this$props2.nestedUnder,
|
|
115
|
+
rendererContext = _this$props2.rendererContext;
|
|
116
|
+
(_this$props$fireAnaly = (_this$props3 = _this.props).fireAnalyticsEvent) === null || _this$props$fireAnaly === void 0 || _this$props$fireAnaly.call(_this$props3, {
|
|
113
117
|
action: _analytics.ACTION.ERRORED,
|
|
114
118
|
actionSubject: _analytics.ACTION_SUBJECT.RENDERER,
|
|
115
119
|
actionSubjectId: _analytics.ACTION_SUBJECT_ID.MEDIA,
|
|
116
120
|
eventType: _analytics.EVENT_TYPE.UI,
|
|
117
|
-
attributes: {
|
|
121
|
+
attributes: _objectSpread(_objectSpread({
|
|
118
122
|
reason: reason,
|
|
119
123
|
external: false
|
|
120
|
-
}
|
|
124
|
+
}, nestedUnder && (0, _expValEquals.expValEquals)('platform_synced_block', 'isEnabled', true) && (0, _platformFeatureFlags.fg)('platform_synced_block_patch_5') ? {
|
|
125
|
+
nestedUnder: nestedUnder
|
|
126
|
+
} : {}), rendererContext !== null && rendererContext !== void 0 && rendererContext.nestedRendererType && (0, _expValEquals.expValEquals)('platform_synced_block', 'isEnabled', true) && (0, _platformFeatureFlags.fg)('platform_synced_block_patch_5') ? {
|
|
127
|
+
nestedRendererType: rendererContext.nestedRendererType
|
|
128
|
+
} : {})
|
|
121
129
|
});
|
|
122
130
|
});
|
|
123
131
|
(0, _defineProperty2.default)(_this, "renderLoadingCard", function () {
|
|
@@ -153,11 +161,11 @@ var MediaCardView = exports.MediaCardView = /*#__PURE__*/function (_Component) {
|
|
|
153
161
|
key: "componentDidMount",
|
|
154
162
|
value: function () {
|
|
155
163
|
var _componentDidMount = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
156
|
-
var _this$
|
|
164
|
+
var _this$props4, rendererContext, contextIdentifierProvider, id, url, collectionName, nodeIsInCache;
|
|
157
165
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
158
166
|
while (1) switch (_context2.prev = _context2.next) {
|
|
159
167
|
case 0:
|
|
160
|
-
_this$
|
|
168
|
+
_this$props4 = this.props, rendererContext = _this$props4.rendererContext, contextIdentifierProvider = _this$props4.contextIdentifierProvider, id = _this$props4.id, url = _this$props4.url, collectionName = _this$props4.collection;
|
|
161
169
|
if (!contextIdentifierProvider) {
|
|
162
170
|
_context2.next = 8;
|
|
163
171
|
break;
|
|
@@ -209,9 +217,9 @@ var MediaCardView = exports.MediaCardView = /*#__PURE__*/function (_Component) {
|
|
|
209
217
|
}, {
|
|
210
218
|
key: "componentWillUnmount",
|
|
211
219
|
value: function componentWillUnmount() {
|
|
212
|
-
var _this$
|
|
213
|
-
id = _this$
|
|
214
|
-
dataURI = _this$
|
|
220
|
+
var _this$props5 = this.props,
|
|
221
|
+
id = _this$props5.id,
|
|
222
|
+
dataURI = _this$props5.url;
|
|
215
223
|
if (id) {
|
|
216
224
|
mediaIdentifierMap.delete(id);
|
|
217
225
|
} else if (dataURI) {
|
|
@@ -221,20 +229,20 @@ var MediaCardView = exports.MediaCardView = /*#__PURE__*/function (_Component) {
|
|
|
221
229
|
}, {
|
|
222
230
|
key: "renderExternal",
|
|
223
231
|
value: function renderExternal(shouldOpenMediaViewer) {
|
|
224
|
-
var _this$
|
|
225
|
-
cardDimensions = _this$
|
|
226
|
-
resizeMode = _this$
|
|
227
|
-
appearance = _this$
|
|
228
|
-
url = _this$
|
|
229
|
-
imageStatus = _this$
|
|
230
|
-
disableOverlay = _this$
|
|
231
|
-
alt = _this$
|
|
232
|
-
featureFlags = _this$
|
|
233
|
-
ssr = _this$
|
|
234
|
-
mediaClient = _this$
|
|
235
|
-
dataAttributes = _this$
|
|
236
|
-
enableSyncMediaCard = _this$
|
|
237
|
-
localId = _this$
|
|
232
|
+
var _this$props6 = this.props,
|
|
233
|
+
cardDimensions = _this$props6.cardDimensions,
|
|
234
|
+
resizeMode = _this$props6.resizeMode,
|
|
235
|
+
appearance = _this$props6.appearance,
|
|
236
|
+
url = _this$props6.url,
|
|
237
|
+
imageStatus = _this$props6.imageStatus,
|
|
238
|
+
disableOverlay = _this$props6.disableOverlay,
|
|
239
|
+
alt = _this$props6.alt,
|
|
240
|
+
featureFlags = _this$props6.featureFlags,
|
|
241
|
+
ssr = _this$props6.ssr,
|
|
242
|
+
mediaClient = _this$props6.mediaClient,
|
|
243
|
+
dataAttributes = _this$props6.dataAttributes,
|
|
244
|
+
enableSyncMediaCard = _this$props6.enableSyncMediaCard,
|
|
245
|
+
localId = _this$props6.localId;
|
|
238
246
|
if (imageStatus === 'loading' || !url) {
|
|
239
247
|
return this.renderLoadingCard();
|
|
240
248
|
}
|
|
@@ -282,25 +290,25 @@ var MediaCardView = exports.MediaCardView = /*#__PURE__*/function (_Component) {
|
|
|
282
290
|
var _this$state = this.state,
|
|
283
291
|
contextIdentifierProvider = _this$state.contextIdentifierProvider,
|
|
284
292
|
fileState = _this$state.fileState;
|
|
285
|
-
var _this$
|
|
286
|
-
id = _this$
|
|
287
|
-
alt = _this$
|
|
288
|
-
type = _this$
|
|
289
|
-
collection = _this$
|
|
290
|
-
occurrenceKey = _this$
|
|
291
|
-
cardDimensions = _this$
|
|
292
|
-
resizeMode = _this$
|
|
293
|
-
disableOverlay = _this$
|
|
294
|
-
useInlinePlayer = _this$
|
|
295
|
-
originalDimensions = _this$
|
|
296
|
-
forceOpenMediaViewer = _this$
|
|
297
|
-
featureFlags = _this$
|
|
298
|
-
shouldEnableDownloadButton = _this$
|
|
299
|
-
ssr = _this$
|
|
300
|
-
mediaClient = _this$
|
|
301
|
-
dataAttributes = _this$
|
|
302
|
-
enableSyncMediaCard = _this$
|
|
303
|
-
localId = _this$
|
|
293
|
+
var _this$props7 = this.props,
|
|
294
|
+
id = _this$props7.id,
|
|
295
|
+
alt = _this$props7.alt,
|
|
296
|
+
type = _this$props7.type,
|
|
297
|
+
collection = _this$props7.collection,
|
|
298
|
+
occurrenceKey = _this$props7.occurrenceKey,
|
|
299
|
+
cardDimensions = _this$props7.cardDimensions,
|
|
300
|
+
resizeMode = _this$props7.resizeMode,
|
|
301
|
+
disableOverlay = _this$props7.disableOverlay,
|
|
302
|
+
useInlinePlayer = _this$props7.useInlinePlayer,
|
|
303
|
+
originalDimensions = _this$props7.originalDimensions,
|
|
304
|
+
forceOpenMediaViewer = _this$props7.shouldOpenMediaViewer,
|
|
305
|
+
featureFlags = _this$props7.featureFlags,
|
|
306
|
+
shouldEnableDownloadButton = _this$props7.shouldEnableDownloadButton,
|
|
307
|
+
ssr = _this$props7.ssr,
|
|
308
|
+
mediaClient = _this$props7.mediaClient,
|
|
309
|
+
dataAttributes = _this$props7.dataAttributes,
|
|
310
|
+
enableSyncMediaCard = _this$props7.enableSyncMediaCard,
|
|
311
|
+
localId = _this$props7.localId;
|
|
304
312
|
var isMobile = false;
|
|
305
313
|
var shouldPlayInline = useInlinePlayer !== undefined ? useInlinePlayer : true;
|
|
306
314
|
var isInlinePlayer = isMobile ? false : shouldPlayInline;
|
|
@@ -71,7 +71,7 @@ var DEGRADED_SEVERITY_THRESHOLD = exports.DEGRADED_SEVERITY_THRESHOLD = 3000;
|
|
|
71
71
|
var TABLE_INFO_TIMEOUT = 10000;
|
|
72
72
|
var RENDER_EVENT_SAMPLE_RATE = 0.2;
|
|
73
73
|
var packageName = "@atlaskit/renderer";
|
|
74
|
-
var packageVersion = "126.13.
|
|
74
|
+
var packageVersion = "126.13.6";
|
|
75
75
|
var setAsQueryContainerStyles = (0, _react2.css)({
|
|
76
76
|
containerName: 'ak-renderer-wrapper',
|
|
77
77
|
containerType: 'inline-size'
|
|
@@ -232,10 +232,12 @@ var RendererFunctionalComponent = exports.RendererFunctionalComponent = function
|
|
|
232
232
|
eventHandlers: props.eventHandlers,
|
|
233
233
|
extensionHandlers: props.extensionHandlers,
|
|
234
234
|
portal: props.portal,
|
|
235
|
-
objectContext: _objectSpread({
|
|
235
|
+
objectContext: _objectSpread(_objectSpread({
|
|
236
236
|
adDoc: props.shouldRemoveEmptySpaceAroundContent ? (0, _rendererHelper.removeEmptySpaceAroundContent)(props.document) : props.document,
|
|
237
237
|
schema: props.schema
|
|
238
|
-
}, props.rendererContext),
|
|
238
|
+
}, props.rendererContext), {}, {
|
|
239
|
+
nestedRendererType: nestedRendererType
|
|
240
|
+
}),
|
|
239
241
|
appearance: props.appearance,
|
|
240
242
|
contentMode: props.contentMode,
|
|
241
243
|
onSetLinkTarget: props.onSetLinkTarget,
|
|
@@ -271,7 +273,7 @@ var RendererFunctionalComponent = exports.RendererFunctionalComponent = function
|
|
|
271
273
|
allowFixedColumnWidthOption: props.allowFixedColumnWidthOption,
|
|
272
274
|
shouldDisplayExtensionAsInline: props.shouldDisplayExtensionAsInline
|
|
273
275
|
};
|
|
274
|
-
}, [createRendererContext, providerFactory, _fireAnalyticsEvent]);
|
|
276
|
+
}, [createRendererContext, providerFactory, _fireAnalyticsEvent, nestedRendererType]);
|
|
275
277
|
var serializer = (0, _useMemoFromPropsDerivative.useMemoFromPropsDerivative)(function (serializerProps) {
|
|
276
278
|
var _props$createSerializ, _props$createSerializ2;
|
|
277
279
|
return (_props$createSerializ = (_props$createSerializ2 = props.createSerializer) === null || _props$createSerializ2 === void 0 ? void 0 : _props$createSerializ2.call(props, serializerProps)) !== null && _props$createSerializ !== void 0 ? _props$createSerializ : new _.ReactSerializer(serializerProps);
|
|
@@ -14,7 +14,7 @@ import { fg } from '@atlaskit/platform-feature-flags';
|
|
|
14
14
|
import { getText } from '../utils';
|
|
15
15
|
import { isAnnotationMark, toReact as markToReact } from './marks';
|
|
16
16
|
import { isCodeMark } from './marks/code';
|
|
17
|
-
import { insideBlockNode, insideBreakoutExpand, insideBreakoutLayout, insideMultiBodiedExtension, insideTable } from './renderer-node';
|
|
17
|
+
import { getNestedUnderNodes, insideBlockNode, insideBreakoutExpand, insideBreakoutLayout, insideMultiBodiedExtension, insideTable } from './renderer-node';
|
|
18
18
|
import { renderTextSegments } from './utils/render-text-segments';
|
|
19
19
|
import { segmentText } from './utils/segment-text';
|
|
20
20
|
import { getStandaloneBackgroundColorMarks } from './utils/getStandaloneBackgroundColorMarks';
|
|
@@ -460,6 +460,8 @@ export default class ReactSerializer {
|
|
|
460
460
|
var _n$type2;
|
|
461
461
|
return ((_n$type2 = n.type) === null || _n$type2 === void 0 ? void 0 : _n$type2.name) === 'mediaSingle';
|
|
462
462
|
});
|
|
463
|
+
// Only check path for bodiedSyncBlock; syncBlock uses RendererContext
|
|
464
|
+
const nestedUnder = expValEquals('platform_synced_block', 'isEnabled', true) && fg('platform_synced_block_patch_5') ? getNestedUnderNodes(path, ['bodiedSyncBlock']) : undefined;
|
|
463
465
|
const isAnnotationMark = mark => mark.type === annotation;
|
|
464
466
|
const isLinkMark = mark => mark.type === link;
|
|
465
467
|
const isBorderMark = mark => isChildOfMediaSingle && mark.type === border;
|
|
@@ -475,7 +477,8 @@ export default class ReactSerializer {
|
|
|
475
477
|
ssr: (_this$media = this.media) === null || _this$media === void 0 ? void 0 : _this$media.ssr,
|
|
476
478
|
// surroundTextNodesWithTextWrapper checks inlineComment.allowDraftMode
|
|
477
479
|
allowAnnotationsDraftMode: this.surroundTextNodesWithTextWrapper,
|
|
478
|
-
enableSyncMediaCard: (_this$media2 = this.media) === null || _this$media2 === void 0 ? void 0 : _this$media2.enableSyncMediaCard
|
|
480
|
+
enableSyncMediaCard: (_this$media2 = this.media) === null || _this$media2 === void 0 ? void 0 : _this$media2.enableSyncMediaCard,
|
|
481
|
+
nestedUnder
|
|
479
482
|
};
|
|
480
483
|
}
|
|
481
484
|
getExtensionProps(node, path = []) {
|
|
@@ -4,15 +4,16 @@ import _extends from "@babel/runtime/helpers/extends";
|
|
|
4
4
|
* @jsx jsx
|
|
5
5
|
*/
|
|
6
6
|
/* eslint-disable jsdoc/check-tag-names */
|
|
7
|
-
import { Fragment, useState, useMemo
|
|
7
|
+
import { Fragment, useState, useMemo } from 'react';
|
|
8
8
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
9
9
|
import { jsx } from '@emotion/react';
|
|
10
10
|
import { useSmartCardContext } from '@atlaskit/link-provider';
|
|
11
11
|
import { Card, getObjectAri, getObjectIconUrl, getObjectName } from '@atlaskit/smart-card';
|
|
12
12
|
import { isWithinPreviewPanelIFrame } from '@atlaskit/linking-common/utils';
|
|
13
|
-
import { useSmartLinkActions
|
|
13
|
+
import { useSmartLinkActions } from '@atlaskit/smart-card/hooks';
|
|
14
14
|
import { CardSSR } from '@atlaskit/smart-card/ssr';
|
|
15
15
|
import { HoverLinkOverlay, UnsupportedInline } from '@atlaskit/editor-common/ui';
|
|
16
|
+
import { useSmartCardReloadAfterCache } from '@atlaskit/editor-common/hooks';
|
|
16
17
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
17
18
|
import { AnalyticsContext } from '@atlaskit/analytics-next';
|
|
18
19
|
import { componentWithCondition } from '@atlaskit/platform-feature-flags-react';
|
|
@@ -124,7 +125,7 @@ const OverlayWithCardContext = ({
|
|
|
124
125
|
}, children);
|
|
125
126
|
};
|
|
126
127
|
const InlineCard = props => {
|
|
127
|
-
var _cardContext$value5
|
|
128
|
+
var _cardContext$value5;
|
|
128
129
|
const {
|
|
129
130
|
url,
|
|
130
131
|
data,
|
|
@@ -147,10 +148,13 @@ const InlineCard = props => {
|
|
|
147
148
|
}
|
|
148
149
|
return card;
|
|
149
150
|
};
|
|
150
|
-
const
|
|
151
|
-
|
|
152
|
-
});
|
|
151
|
+
const {
|
|
152
|
+
getState: getSmartlinkState
|
|
153
|
+
} = (cardContext === null || cardContext === void 0 ? void 0 : (_cardContext$value5 = cardContext.value) === null || _cardContext$value5 === void 0 ? void 0 : _cardContext$value5.store) || {};
|
|
153
154
|
const [isResolvedViewRendered, setIsResolvedViewRendered] = useState(false);
|
|
155
|
+
const cardState = getSmartlinkState === null || getSmartlinkState === void 0 ? void 0 : getSmartlinkState()[url || ''];
|
|
156
|
+
const cardStatus = cardState === null || cardState === void 0 ? void 0 : cardState.status;
|
|
157
|
+
useSmartCardReloadAfterCache(url, cardStatus, (smartLinks === null || smartLinks === void 0 ? void 0 : smartLinks.ssr) || false);
|
|
154
158
|
const onClick = getCardClickHandler(eventHandlers, url);
|
|
155
159
|
const cardProps = {
|
|
156
160
|
url,
|
|
@@ -184,13 +188,6 @@ const InlineCard = props => {
|
|
|
184
188
|
}
|
|
185
189
|
};
|
|
186
190
|
const MaybeOverlay = cardContext !== null && cardContext !== void 0 && cardContext.value ? OverlayWithCardContext : HoverLinkOverlayNoop;
|
|
187
|
-
const cardState = cardContext === null || cardContext === void 0 ? void 0 : (_cardContext$value5 = cardContext.value) === null || _cardContext$value5 === void 0 ? void 0 : (_cardContext$value5$s = _cardContext$value5.store) === null || _cardContext$value5$s === void 0 ? void 0 : _cardContext$value5$s.getState()[url || ''];
|
|
188
|
-
useEffect(() => {
|
|
189
|
-
// if we render from cache, we want to make sure we reload the data in the background
|
|
190
|
-
if (expValEquals('platform_editor_smartlink_local_cache', 'isEnabled', true) && !ssr && url && (cardState === null || cardState === void 0 ? void 0 : cardState.status) === 'resolved') {
|
|
191
|
-
reload();
|
|
192
|
-
}
|
|
193
|
-
});
|
|
194
191
|
if ((ssr || cardState && expValEquals('platform_editor_smartlink_local_cache', 'isEnabled', true)) && url && !editorExperiment('platform_editor_preview_panel_linking_exp', true, {
|
|
195
192
|
exposure: true
|
|
196
193
|
})) {
|
|
@@ -29,4 +29,12 @@ export const insideTable = (path, schema) => {
|
|
|
29
29
|
}
|
|
30
30
|
} = schema;
|
|
31
31
|
return path.some(n => n.type === table);
|
|
32
|
+
};
|
|
33
|
+
export const getNestedUnderNodes = (path, nodeTypeNames) => {
|
|
34
|
+
for (const node of path) {
|
|
35
|
+
if (nodeTypeNames.includes(node.type.name)) {
|
|
36
|
+
return node.type.name;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
return undefined;
|
|
32
40
|
};
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// Entry file in package.json
|
|
3
3
|
|
|
4
4
|
import { defaultSchema } from '@atlaskit/adf-schema/schema-default';
|
|
5
|
-
import { transformMediaLinkMarks, transformNestedTablesIncomingDocument } from '@atlaskit/adf-utils/transforms';
|
|
5
|
+
import { nativeEmbedsFallbackTransform, transformMediaLinkMarks, transformNestedTablesIncomingDocument } from '@atlaskit/adf-utils/transforms';
|
|
6
6
|
import { ACTION, ACTION_SUBJECT, EVENT_TYPE } from '@atlaskit/editor-common/analytics';
|
|
7
7
|
import { findAndTrackUnsupportedContentNodes, validateADFEntity } from '@atlaskit/editor-common/utils';
|
|
8
8
|
import { getValidDocument } from '@atlaskit/editor-common/validator';
|
|
@@ -86,6 +86,20 @@ const _validation = (doc, schema, adfStage, useSpecBasedValidator, dispatchAnaly
|
|
|
86
86
|
}
|
|
87
87
|
});
|
|
88
88
|
}
|
|
89
|
+
if (result && fg('platform_editor_native_embeds_fallback_transform')) {
|
|
90
|
+
const {
|
|
91
|
+
transformedAdf,
|
|
92
|
+
isTransformed
|
|
93
|
+
} = nativeEmbedsFallbackTransform(result);
|
|
94
|
+
if (isTransformed) {
|
|
95
|
+
dispatchAnalyticsEvent === null || dispatchAnalyticsEvent === void 0 ? void 0 : dispatchAnalyticsEvent({
|
|
96
|
+
action: ACTION.NATIVE_EMBEDS_TRANSFORMED,
|
|
97
|
+
actionSubject: ACTION_SUBJECT.RENDERER,
|
|
98
|
+
eventType: EVENT_TYPE.OPERATIONAL
|
|
99
|
+
});
|
|
100
|
+
result = transformedAdf || result;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
89
103
|
return result;
|
|
90
104
|
};
|
|
91
105
|
const memoValidation = memoizeOne(_validation, (newArgs, lastArgs) => {
|
|
@@ -8,6 +8,7 @@ import { withImageLoader } from '@atlaskit/editor-common/utils';
|
|
|
8
8
|
import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
|
|
9
9
|
import AnalyticsContext from '../analytics/analyticsContext';
|
|
10
10
|
import { ACTION, ACTION_SUBJECT, ACTION_SUBJECT_ID, EVENT_TYPE } from '@atlaskit/editor-common/analytics';
|
|
11
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
11
12
|
export const mediaIdentifierMap = new Map();
|
|
12
13
|
export const getListOfIdentifiersFromDoc = doc => {
|
|
13
14
|
if (!doc) {
|
|
@@ -64,6 +65,10 @@ export class MediaCardView extends Component {
|
|
|
64
65
|
});
|
|
65
66
|
_defineProperty(this, "onError", reason => {
|
|
66
67
|
var _this$props$fireAnaly, _this$props;
|
|
68
|
+
const {
|
|
69
|
+
nestedUnder,
|
|
70
|
+
rendererContext
|
|
71
|
+
} = this.props;
|
|
67
72
|
(_this$props$fireAnaly = (_this$props = this.props).fireAnalyticsEvent) === null || _this$props$fireAnaly === void 0 ? void 0 : _this$props$fireAnaly.call(_this$props, {
|
|
68
73
|
action: ACTION.ERRORED,
|
|
69
74
|
actionSubject: ACTION_SUBJECT.RENDERER,
|
|
@@ -71,7 +76,13 @@ export class MediaCardView extends Component {
|
|
|
71
76
|
eventType: EVENT_TYPE.UI,
|
|
72
77
|
attributes: {
|
|
73
78
|
reason,
|
|
74
|
-
external: false
|
|
79
|
+
external: false,
|
|
80
|
+
...(nestedUnder && expValEquals('platform_synced_block', 'isEnabled', true) && fg('platform_synced_block_patch_5') ? {
|
|
81
|
+
nestedUnder
|
|
82
|
+
} : {}),
|
|
83
|
+
...(rendererContext !== null && rendererContext !== void 0 && rendererContext.nestedRendererType && expValEquals('platform_synced_block', 'isEnabled', true) && fg('platform_synced_block_patch_5') ? {
|
|
84
|
+
nestedRendererType: rendererContext.nestedRendererType
|
|
85
|
+
} : {})
|
|
75
86
|
}
|
|
76
87
|
});
|
|
77
88
|
});
|
|
@@ -57,7 +57,7 @@ export const DEGRADED_SEVERITY_THRESHOLD = 3000;
|
|
|
57
57
|
const TABLE_INFO_TIMEOUT = 10000;
|
|
58
58
|
const RENDER_EVENT_SAMPLE_RATE = 0.2;
|
|
59
59
|
const packageName = "@atlaskit/renderer";
|
|
60
|
-
const packageVersion = "126.13.
|
|
60
|
+
const packageVersion = "126.13.6";
|
|
61
61
|
const setAsQueryContainerStyles = css({
|
|
62
62
|
containerName: 'ak-renderer-wrapper',
|
|
63
63
|
containerType: 'inline-size'
|
|
@@ -227,7 +227,8 @@ export const RendererFunctionalComponent = props => {
|
|
|
227
227
|
objectContext: {
|
|
228
228
|
adDoc: props.shouldRemoveEmptySpaceAroundContent ? removeEmptySpaceAroundContent(props.document) : props.document,
|
|
229
229
|
schema: props.schema,
|
|
230
|
-
...props.rendererContext
|
|
230
|
+
...props.rendererContext,
|
|
231
|
+
nestedRendererType
|
|
231
232
|
},
|
|
232
233
|
appearance: props.appearance,
|
|
233
234
|
contentMode: props.contentMode,
|
|
@@ -264,7 +265,7 @@ export const RendererFunctionalComponent = props => {
|
|
|
264
265
|
allowFixedColumnWidthOption: props.allowFixedColumnWidthOption,
|
|
265
266
|
shouldDisplayExtensionAsInline: props.shouldDisplayExtensionAsInline
|
|
266
267
|
};
|
|
267
|
-
}, [createRendererContext, providerFactory, fireAnalyticsEvent]);
|
|
268
|
+
}, [createRendererContext, providerFactory, fireAnalyticsEvent, nestedRendererType]);
|
|
268
269
|
const serializer = useMemoFromPropsDerivative(serializerProps => {
|
|
269
270
|
var _props$createSerializ, _props$createSerializ2;
|
|
270
271
|
return (_props$createSerializ = (_props$createSerializ2 = props.createSerializer) === null || _props$createSerializ2 === void 0 ? void 0 : _props$createSerializ2.call(props, serializerProps)) !== null && _props$createSerializ !== void 0 ? _props$createSerializ : new ReactSerializer(serializerProps);
|
package/dist/esm/react/index.js
CHANGED
|
@@ -21,7 +21,7 @@ import { fg } from '@atlaskit/platform-feature-flags';
|
|
|
21
21
|
import { getText } from '../utils';
|
|
22
22
|
import { isAnnotationMark, toReact as markToReact } from './marks';
|
|
23
23
|
import { isCodeMark } from './marks/code';
|
|
24
|
-
import { insideBlockNode, insideBreakoutExpand, insideBreakoutLayout, insideMultiBodiedExtension, insideTable } from './renderer-node';
|
|
24
|
+
import { getNestedUnderNodes, insideBlockNode, insideBreakoutExpand, insideBreakoutLayout, insideMultiBodiedExtension, insideTable } from './renderer-node';
|
|
25
25
|
import { renderTextSegments } from './utils/render-text-segments';
|
|
26
26
|
import { segmentText } from './utils/segment-text';
|
|
27
27
|
import { getStandaloneBackgroundColorMarks } from './utils/getStandaloneBackgroundColorMarks';
|
|
@@ -494,6 +494,8 @@ var ReactSerializer = /*#__PURE__*/function () {
|
|
|
494
494
|
var _n$type2;
|
|
495
495
|
return ((_n$type2 = n.type) === null || _n$type2 === void 0 ? void 0 : _n$type2.name) === 'mediaSingle';
|
|
496
496
|
});
|
|
497
|
+
// Only check path for bodiedSyncBlock; syncBlock uses RendererContext
|
|
498
|
+
var nestedUnder = expValEquals('platform_synced_block', 'isEnabled', true) && fg('platform_synced_block_patch_5') ? getNestedUnderNodes(path, ['bodiedSyncBlock']) : undefined;
|
|
497
499
|
var isAnnotationMark = function isAnnotationMark(mark) {
|
|
498
500
|
return mark.type === annotation;
|
|
499
501
|
};
|
|
@@ -516,7 +518,8 @@ var ReactSerializer = /*#__PURE__*/function () {
|
|
|
516
518
|
ssr: (_this$media = this.media) === null || _this$media === void 0 ? void 0 : _this$media.ssr,
|
|
517
519
|
// surroundTextNodesWithTextWrapper checks inlineComment.allowDraftMode
|
|
518
520
|
allowAnnotationsDraftMode: this.surroundTextNodesWithTextWrapper,
|
|
519
|
-
enableSyncMediaCard: (_this$media2 = this.media) === null || _this$media2 === void 0 ? void 0 : _this$media2.enableSyncMediaCard
|
|
521
|
+
enableSyncMediaCard: (_this$media2 = this.media) === null || _this$media2 === void 0 ? void 0 : _this$media2.enableSyncMediaCard,
|
|
522
|
+
nestedUnder: nestedUnder
|
|
520
523
|
});
|
|
521
524
|
}
|
|
522
525
|
}, {
|
|
@@ -5,15 +5,16 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
|
5
5
|
* @jsx jsx
|
|
6
6
|
*/
|
|
7
7
|
/* eslint-disable jsdoc/check-tag-names */
|
|
8
|
-
import { Fragment, useState, useMemo
|
|
8
|
+
import { Fragment, useState, useMemo } from 'react';
|
|
9
9
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
10
10
|
import { jsx } from '@emotion/react';
|
|
11
11
|
import { useSmartCardContext } from '@atlaskit/link-provider';
|
|
12
12
|
import { Card, getObjectAri, getObjectIconUrl, getObjectName } from '@atlaskit/smart-card';
|
|
13
13
|
import { isWithinPreviewPanelIFrame } from '@atlaskit/linking-common/utils';
|
|
14
|
-
import { useSmartLinkActions
|
|
14
|
+
import { useSmartLinkActions } from '@atlaskit/smart-card/hooks';
|
|
15
15
|
import { CardSSR } from '@atlaskit/smart-card/ssr';
|
|
16
16
|
import { HoverLinkOverlay, UnsupportedInline } from '@atlaskit/editor-common/ui';
|
|
17
|
+
import { useSmartCardReloadAfterCache } from '@atlaskit/editor-common/hooks';
|
|
17
18
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
18
19
|
import { AnalyticsContext } from '@atlaskit/analytics-next';
|
|
19
20
|
import { componentWithCondition } from '@atlaskit/platform-feature-flags-react';
|
|
@@ -153,13 +154,15 @@ var InlineCard = function InlineCard(props) {
|
|
|
153
154
|
}
|
|
154
155
|
return card;
|
|
155
156
|
};
|
|
156
|
-
var
|
|
157
|
-
|
|
158
|
-
});
|
|
157
|
+
var _ref2 = (cardContext === null || cardContext === void 0 || (_cardContext$value5 = cardContext.value) === null || _cardContext$value5 === void 0 ? void 0 : _cardContext$value5.store) || {},
|
|
158
|
+
getSmartlinkState = _ref2.getState;
|
|
159
159
|
var _useState = useState(false),
|
|
160
160
|
_useState2 = _slicedToArray(_useState, 2),
|
|
161
161
|
isResolvedViewRendered = _useState2[0],
|
|
162
162
|
setIsResolvedViewRendered = _useState2[1];
|
|
163
|
+
var cardState = getSmartlinkState === null || getSmartlinkState === void 0 ? void 0 : getSmartlinkState()[url || ''];
|
|
164
|
+
var cardStatus = cardState === null || cardState === void 0 ? void 0 : cardState.status;
|
|
165
|
+
useSmartCardReloadAfterCache(url, cardStatus, (smartLinks === null || smartLinks === void 0 ? void 0 : smartLinks.ssr) || false);
|
|
163
166
|
var onClick = getCardClickHandler(eventHandlers, url);
|
|
164
167
|
var cardProps = {
|
|
165
168
|
url: url,
|
|
@@ -167,10 +170,10 @@ var InlineCard = function InlineCard(props) {
|
|
|
167
170
|
onClick: onClick,
|
|
168
171
|
container: portal
|
|
169
172
|
};
|
|
170
|
-
var
|
|
171
|
-
hideHoverPreview =
|
|
172
|
-
actionOptions =
|
|
173
|
-
ssr =
|
|
173
|
+
var _ref3 = smartLinks || {},
|
|
174
|
+
hideHoverPreview = _ref3.hideHoverPreview,
|
|
175
|
+
actionOptions = _ref3.actionOptions,
|
|
176
|
+
ssr = _ref3.ssr;
|
|
174
177
|
var analyticsData = {
|
|
175
178
|
attributes: {
|
|
176
179
|
location: 'renderer'
|
|
@@ -184,20 +187,13 @@ var InlineCard = function InlineCard(props) {
|
|
|
184
187
|
sourceUrl: url,
|
|
185
188
|
linkType: "inline"
|
|
186
189
|
}) : null;
|
|
187
|
-
var onError = function onError(
|
|
188
|
-
var err =
|
|
190
|
+
var onError = function onError(_ref4) {
|
|
191
|
+
var err = _ref4.err;
|
|
189
192
|
if (err) {
|
|
190
193
|
throw err;
|
|
191
194
|
}
|
|
192
195
|
};
|
|
193
196
|
var MaybeOverlay = cardContext !== null && cardContext !== void 0 && cardContext.value ? OverlayWithCardContext : HoverLinkOverlayNoop;
|
|
194
|
-
var cardState = cardContext === null || cardContext === void 0 || (_cardContext$value5 = cardContext.value) === null || _cardContext$value5 === void 0 || (_cardContext$value5 = _cardContext$value5.store) === null || _cardContext$value5 === void 0 ? void 0 : _cardContext$value5.getState()[url || ''];
|
|
195
|
-
useEffect(function () {
|
|
196
|
-
// if we render from cache, we want to make sure we reload the data in the background
|
|
197
|
-
if (expValEquals('platform_editor_smartlink_local_cache', 'isEnabled', true) && !ssr && url && (cardState === null || cardState === void 0 ? void 0 : cardState.status) === 'resolved') {
|
|
198
|
-
reload();
|
|
199
|
-
}
|
|
200
|
-
});
|
|
201
197
|
if ((ssr || cardState && expValEquals('platform_editor_smartlink_local_cache', 'isEnabled', true)) && url && !editorExperiment('platform_editor_preview_panel_linking_exp', true, {
|
|
202
198
|
exposure: true
|
|
203
199
|
})) {
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
|
|
2
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
3
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
1
4
|
var isLayoutNode = function isLayoutNode(node) {
|
|
2
5
|
return node.type.name === 'layoutSection';
|
|
3
6
|
};
|
|
@@ -44,4 +47,21 @@ export var insideTable = function insideTable(path, schema) {
|
|
|
44
47
|
return path.some(function (n) {
|
|
45
48
|
return n.type === table;
|
|
46
49
|
});
|
|
50
|
+
};
|
|
51
|
+
export var getNestedUnderNodes = function getNestedUnderNodes(path, nodeTypeNames) {
|
|
52
|
+
var _iterator = _createForOfIteratorHelper(path),
|
|
53
|
+
_step;
|
|
54
|
+
try {
|
|
55
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
56
|
+
var node = _step.value;
|
|
57
|
+
if (nodeTypeNames.includes(node.type.name)) {
|
|
58
|
+
return node.type.name;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
} catch (err) {
|
|
62
|
+
_iterator.e(err);
|
|
63
|
+
} finally {
|
|
64
|
+
_iterator.f();
|
|
65
|
+
}
|
|
66
|
+
return undefined;
|
|
47
67
|
};
|
|
@@ -3,7 +3,7 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
|
3
3
|
// Entry file in package.json
|
|
4
4
|
|
|
5
5
|
import { defaultSchema } from '@atlaskit/adf-schema/schema-default';
|
|
6
|
-
import { transformMediaLinkMarks, transformNestedTablesIncomingDocument } from '@atlaskit/adf-utils/transforms';
|
|
6
|
+
import { nativeEmbedsFallbackTransform, transformMediaLinkMarks, transformNestedTablesIncomingDocument } from '@atlaskit/adf-utils/transforms';
|
|
7
7
|
import { ACTION, ACTION_SUBJECT, EVENT_TYPE } from '@atlaskit/editor-common/analytics';
|
|
8
8
|
import { findAndTrackUnsupportedContentNodes, validateADFEntity } from '@atlaskit/editor-common/utils';
|
|
9
9
|
import { getValidDocument } from '@atlaskit/editor-common/validator';
|
|
@@ -85,6 +85,19 @@ var _validation = function _validation(doc, schema, adfStage, useSpecBasedValida
|
|
|
85
85
|
}
|
|
86
86
|
});
|
|
87
87
|
}
|
|
88
|
+
if (result && fg('platform_editor_native_embeds_fallback_transform')) {
|
|
89
|
+
var _nativeEmbedsFallback = nativeEmbedsFallbackTransform(result),
|
|
90
|
+
_transformedAdf2 = _nativeEmbedsFallback.transformedAdf,
|
|
91
|
+
_isTransformed2 = _nativeEmbedsFallback.isTransformed;
|
|
92
|
+
if (_isTransformed2) {
|
|
93
|
+
dispatchAnalyticsEvent === null || dispatchAnalyticsEvent === void 0 || dispatchAnalyticsEvent({
|
|
94
|
+
action: ACTION.NATIVE_EMBEDS_TRANSFORMED,
|
|
95
|
+
actionSubject: ACTION_SUBJECT.RENDERER,
|
|
96
|
+
eventType: EVENT_TYPE.OPERATIONAL
|
|
97
|
+
});
|
|
98
|
+
result = _transformedAdf2 || result;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
88
101
|
return result;
|
|
89
102
|
};
|
|
90
103
|
var memoValidation = memoizeOne(_validation, function (newArgs, lastArgs) {
|
package/dist/esm/ui/MediaCard.js
CHANGED
|
@@ -19,6 +19,7 @@ import { withImageLoader } from '@atlaskit/editor-common/utils';
|
|
|
19
19
|
import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
|
|
20
20
|
import AnalyticsContext from '../analytics/analyticsContext';
|
|
21
21
|
import { ACTION, ACTION_SUBJECT, ACTION_SUBJECT_ID, EVENT_TYPE } from '@atlaskit/editor-common/analytics';
|
|
22
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
22
23
|
export var mediaIdentifierMap = new Map();
|
|
23
24
|
export var getListOfIdentifiersFromDoc = function getListOfIdentifiersFromDoc(doc) {
|
|
24
25
|
if (!doc) {
|
|
@@ -99,16 +100,23 @@ export var MediaCardView = /*#__PURE__*/function (_Component) {
|
|
|
99
100
|
};
|
|
100
101
|
}());
|
|
101
102
|
_defineProperty(_this, "onError", function (reason) {
|
|
102
|
-
var _this$props$fireAnaly, _this$
|
|
103
|
-
|
|
103
|
+
var _this$props$fireAnaly, _this$props3;
|
|
104
|
+
var _this$props2 = _this.props,
|
|
105
|
+
nestedUnder = _this$props2.nestedUnder,
|
|
106
|
+
rendererContext = _this$props2.rendererContext;
|
|
107
|
+
(_this$props$fireAnaly = (_this$props3 = _this.props).fireAnalyticsEvent) === null || _this$props$fireAnaly === void 0 || _this$props$fireAnaly.call(_this$props3, {
|
|
104
108
|
action: ACTION.ERRORED,
|
|
105
109
|
actionSubject: ACTION_SUBJECT.RENDERER,
|
|
106
110
|
actionSubjectId: ACTION_SUBJECT_ID.MEDIA,
|
|
107
111
|
eventType: EVENT_TYPE.UI,
|
|
108
|
-
attributes: {
|
|
112
|
+
attributes: _objectSpread(_objectSpread({
|
|
109
113
|
reason: reason,
|
|
110
114
|
external: false
|
|
111
|
-
}
|
|
115
|
+
}, nestedUnder && expValEquals('platform_synced_block', 'isEnabled', true) && fg('platform_synced_block_patch_5') ? {
|
|
116
|
+
nestedUnder: nestedUnder
|
|
117
|
+
} : {}), rendererContext !== null && rendererContext !== void 0 && rendererContext.nestedRendererType && expValEquals('platform_synced_block', 'isEnabled', true) && fg('platform_synced_block_patch_5') ? {
|
|
118
|
+
nestedRendererType: rendererContext.nestedRendererType
|
|
119
|
+
} : {})
|
|
112
120
|
});
|
|
113
121
|
});
|
|
114
122
|
_defineProperty(_this, "renderLoadingCard", function () {
|
|
@@ -144,11 +152,11 @@ export var MediaCardView = /*#__PURE__*/function (_Component) {
|
|
|
144
152
|
key: "componentDidMount",
|
|
145
153
|
value: function () {
|
|
146
154
|
var _componentDidMount = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
147
|
-
var _this$
|
|
155
|
+
var _this$props4, rendererContext, contextIdentifierProvider, id, url, collectionName, nodeIsInCache;
|
|
148
156
|
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
149
157
|
while (1) switch (_context2.prev = _context2.next) {
|
|
150
158
|
case 0:
|
|
151
|
-
_this$
|
|
159
|
+
_this$props4 = this.props, rendererContext = _this$props4.rendererContext, contextIdentifierProvider = _this$props4.contextIdentifierProvider, id = _this$props4.id, url = _this$props4.url, collectionName = _this$props4.collection;
|
|
152
160
|
if (!contextIdentifierProvider) {
|
|
153
161
|
_context2.next = 8;
|
|
154
162
|
break;
|
|
@@ -200,9 +208,9 @@ export var MediaCardView = /*#__PURE__*/function (_Component) {
|
|
|
200
208
|
}, {
|
|
201
209
|
key: "componentWillUnmount",
|
|
202
210
|
value: function componentWillUnmount() {
|
|
203
|
-
var _this$
|
|
204
|
-
id = _this$
|
|
205
|
-
dataURI = _this$
|
|
211
|
+
var _this$props5 = this.props,
|
|
212
|
+
id = _this$props5.id,
|
|
213
|
+
dataURI = _this$props5.url;
|
|
206
214
|
if (id) {
|
|
207
215
|
mediaIdentifierMap.delete(id);
|
|
208
216
|
} else if (dataURI) {
|
|
@@ -212,20 +220,20 @@ export var MediaCardView = /*#__PURE__*/function (_Component) {
|
|
|
212
220
|
}, {
|
|
213
221
|
key: "renderExternal",
|
|
214
222
|
value: function renderExternal(shouldOpenMediaViewer) {
|
|
215
|
-
var _this$
|
|
216
|
-
cardDimensions = _this$
|
|
217
|
-
resizeMode = _this$
|
|
218
|
-
appearance = _this$
|
|
219
|
-
url = _this$
|
|
220
|
-
imageStatus = _this$
|
|
221
|
-
disableOverlay = _this$
|
|
222
|
-
alt = _this$
|
|
223
|
-
featureFlags = _this$
|
|
224
|
-
ssr = _this$
|
|
225
|
-
mediaClient = _this$
|
|
226
|
-
dataAttributes = _this$
|
|
227
|
-
enableSyncMediaCard = _this$
|
|
228
|
-
localId = _this$
|
|
223
|
+
var _this$props6 = this.props,
|
|
224
|
+
cardDimensions = _this$props6.cardDimensions,
|
|
225
|
+
resizeMode = _this$props6.resizeMode,
|
|
226
|
+
appearance = _this$props6.appearance,
|
|
227
|
+
url = _this$props6.url,
|
|
228
|
+
imageStatus = _this$props6.imageStatus,
|
|
229
|
+
disableOverlay = _this$props6.disableOverlay,
|
|
230
|
+
alt = _this$props6.alt,
|
|
231
|
+
featureFlags = _this$props6.featureFlags,
|
|
232
|
+
ssr = _this$props6.ssr,
|
|
233
|
+
mediaClient = _this$props6.mediaClient,
|
|
234
|
+
dataAttributes = _this$props6.dataAttributes,
|
|
235
|
+
enableSyncMediaCard = _this$props6.enableSyncMediaCard,
|
|
236
|
+
localId = _this$props6.localId;
|
|
229
237
|
if (imageStatus === 'loading' || !url) {
|
|
230
238
|
return this.renderLoadingCard();
|
|
231
239
|
}
|
|
@@ -273,25 +281,25 @@ export var MediaCardView = /*#__PURE__*/function (_Component) {
|
|
|
273
281
|
var _this$state = this.state,
|
|
274
282
|
contextIdentifierProvider = _this$state.contextIdentifierProvider,
|
|
275
283
|
fileState = _this$state.fileState;
|
|
276
|
-
var _this$
|
|
277
|
-
id = _this$
|
|
278
|
-
alt = _this$
|
|
279
|
-
type = _this$
|
|
280
|
-
collection = _this$
|
|
281
|
-
occurrenceKey = _this$
|
|
282
|
-
cardDimensions = _this$
|
|
283
|
-
resizeMode = _this$
|
|
284
|
-
disableOverlay = _this$
|
|
285
|
-
useInlinePlayer = _this$
|
|
286
|
-
originalDimensions = _this$
|
|
287
|
-
forceOpenMediaViewer = _this$
|
|
288
|
-
featureFlags = _this$
|
|
289
|
-
shouldEnableDownloadButton = _this$
|
|
290
|
-
ssr = _this$
|
|
291
|
-
mediaClient = _this$
|
|
292
|
-
dataAttributes = _this$
|
|
293
|
-
enableSyncMediaCard = _this$
|
|
294
|
-
localId = _this$
|
|
284
|
+
var _this$props7 = this.props,
|
|
285
|
+
id = _this$props7.id,
|
|
286
|
+
alt = _this$props7.alt,
|
|
287
|
+
type = _this$props7.type,
|
|
288
|
+
collection = _this$props7.collection,
|
|
289
|
+
occurrenceKey = _this$props7.occurrenceKey,
|
|
290
|
+
cardDimensions = _this$props7.cardDimensions,
|
|
291
|
+
resizeMode = _this$props7.resizeMode,
|
|
292
|
+
disableOverlay = _this$props7.disableOverlay,
|
|
293
|
+
useInlinePlayer = _this$props7.useInlinePlayer,
|
|
294
|
+
originalDimensions = _this$props7.originalDimensions,
|
|
295
|
+
forceOpenMediaViewer = _this$props7.shouldOpenMediaViewer,
|
|
296
|
+
featureFlags = _this$props7.featureFlags,
|
|
297
|
+
shouldEnableDownloadButton = _this$props7.shouldEnableDownloadButton,
|
|
298
|
+
ssr = _this$props7.ssr,
|
|
299
|
+
mediaClient = _this$props7.mediaClient,
|
|
300
|
+
dataAttributes = _this$props7.dataAttributes,
|
|
301
|
+
enableSyncMediaCard = _this$props7.enableSyncMediaCard,
|
|
302
|
+
localId = _this$props7.localId;
|
|
295
303
|
var isMobile = false;
|
|
296
304
|
var shouldPlayInline = useInlinePlayer !== undefined ? useInlinePlayer : true;
|
|
297
305
|
var isInlinePlayer = isMobile ? false : shouldPlayInline;
|
|
@@ -62,7 +62,7 @@ export var DEGRADED_SEVERITY_THRESHOLD = 3000;
|
|
|
62
62
|
var TABLE_INFO_TIMEOUT = 10000;
|
|
63
63
|
var RENDER_EVENT_SAMPLE_RATE = 0.2;
|
|
64
64
|
var packageName = "@atlaskit/renderer";
|
|
65
|
-
var packageVersion = "126.13.
|
|
65
|
+
var packageVersion = "126.13.6";
|
|
66
66
|
var setAsQueryContainerStyles = css({
|
|
67
67
|
containerName: 'ak-renderer-wrapper',
|
|
68
68
|
containerType: 'inline-size'
|
|
@@ -223,10 +223,12 @@ export var RendererFunctionalComponent = function RendererFunctionalComponent(pr
|
|
|
223
223
|
eventHandlers: props.eventHandlers,
|
|
224
224
|
extensionHandlers: props.extensionHandlers,
|
|
225
225
|
portal: props.portal,
|
|
226
|
-
objectContext: _objectSpread({
|
|
226
|
+
objectContext: _objectSpread(_objectSpread({
|
|
227
227
|
adDoc: props.shouldRemoveEmptySpaceAroundContent ? removeEmptySpaceAroundContent(props.document) : props.document,
|
|
228
228
|
schema: props.schema
|
|
229
|
-
}, props.rendererContext),
|
|
229
|
+
}, props.rendererContext), {}, {
|
|
230
|
+
nestedRendererType: nestedRendererType
|
|
231
|
+
}),
|
|
230
232
|
appearance: props.appearance,
|
|
231
233
|
contentMode: props.contentMode,
|
|
232
234
|
onSetLinkTarget: props.onSetLinkTarget,
|
|
@@ -262,7 +264,7 @@ export var RendererFunctionalComponent = function RendererFunctionalComponent(pr
|
|
|
262
264
|
allowFixedColumnWidthOption: props.allowFixedColumnWidthOption,
|
|
263
265
|
shouldDisplayExtensionAsInline: props.shouldDisplayExtensionAsInline
|
|
264
266
|
};
|
|
265
|
-
}, [createRendererContext, providerFactory, _fireAnalyticsEvent]);
|
|
267
|
+
}, [createRendererContext, providerFactory, _fireAnalyticsEvent, nestedRendererType]);
|
|
266
268
|
var serializer = useMemoFromPropsDerivative(function (serializerProps) {
|
|
267
269
|
var _props$createSerializ, _props$createSerializ2;
|
|
268
270
|
return (_props$createSerializ = (_props$createSerializ2 = props.createSerializer) === null || _props$createSerializ2 === void 0 ? void 0 : _props$createSerializ2.call(props, serializerProps)) !== null && _props$createSerializ !== void 0 ? _props$createSerializ : new ReactSerializer(serializerProps);
|
|
@@ -149,8 +149,10 @@ declare enum RESOLVE_METHOD {
|
|
|
149
149
|
type AnnotationAEP = AEP<AnnotationActionType, ACTION_SUBJECT.ANNOTATION, ACTION_SUBJECT_ID.INLINE_COMMENT, AnnotationAEPAttributes, undefined>;
|
|
150
150
|
type MediaLnkTransformedAEP = AEP<ACTION.MEDIA_LINK_TRANSFORMED, ACTION_SUBJECT.RENDERER, undefined, undefined, EVENT_TYPE.OPERATIONAL>;
|
|
151
151
|
type NestedTableTransformedAEP = OperationalAEP<ACTION.NESTED_TABLE_TRANSFORMED, ACTION_SUBJECT.RENDERER, undefined, undefined>;
|
|
152
|
+
type NativeEmbedsTransformedAEP = OperationalAEP<ACTION.NATIVE_EMBEDS_TRANSFORMED, ACTION_SUBJECT.RENDERER, undefined, undefined>;
|
|
152
153
|
export type MediaRenderErrorEvent = UIAEP<ACTION.ERRORED, ACTION_SUBJECT.RENDERER, ACTION_SUBJECT_ID.MEDIA, {
|
|
153
154
|
external?: boolean;
|
|
155
|
+
nestedUnder?: string;
|
|
154
156
|
reason: string;
|
|
155
157
|
}>;
|
|
156
158
|
type SyncedBlockFetchErrorAEP = OperationalAEP<ACTION.ERROR, ACTION_SUBJECT.SYNCED_BLOCK, ACTION_SUBJECT_ID.SYNCED_BLOCK_FETCH, {
|
|
@@ -170,6 +172,6 @@ type ReferenceSyncedBlockUpdateErrorAEP = OperationalAEP<ACTION.ERROR, ACTION_SU
|
|
|
170
172
|
error: string;
|
|
171
173
|
resourceId?: string;
|
|
172
174
|
}>;
|
|
173
|
-
export type AnalyticsEventPayload<_T = void> = RendererStartAEP | RendererRenderedAEP | RendererRenderedSampledAEP | ComponentCrashErrorAEP | RendererUnsupportedContentLevelsTrackingSucceeded | RendererUnsupportedContentLevelsTrackingErrored | RendererSelectAllCaughtAEP | RendererSelectAllEscapedAEP | CodeBlockCopyAEP | CodeBlockWrapAEP | HeadingAnchorLinkButtonAEP | HoverLabelAEP | AnchorLinkAEP | TableSortColumnNotAllowedAEP | TableSortColumnAEP | TableWidthInfoAEP | TableRendererHeightInfoAEP | VisitLinkAEP | VisitMediaLinkAEP | ExpandAEP | UnsupportedContentPayload | UnsupportedContentTooltipPayload | AnnotationAEP | AnnotationDeleteAEP | MediaLnkTransformedAEP | InvalidProsemirrorDocumentErrorAEP | NestedTableTransformedAEP | MediaRenderErrorEvent | SyncedBlockFetchErrorAEP | SyncedBlockGetSourceInfoErrorAEP | SyncedBlockSSRErrorAEP | ReferenceSyncedBlockUpdateErrorAEP | SyncedBlockFetchSuccessAEP | ExperienceEventPayload;
|
|
175
|
+
export type AnalyticsEventPayload<_T = void> = RendererStartAEP | RendererRenderedAEP | RendererRenderedSampledAEP | ComponentCrashErrorAEP | RendererUnsupportedContentLevelsTrackingSucceeded | RendererUnsupportedContentLevelsTrackingErrored | RendererSelectAllCaughtAEP | RendererSelectAllEscapedAEP | CodeBlockCopyAEP | CodeBlockWrapAEP | HeadingAnchorLinkButtonAEP | HoverLabelAEP | AnchorLinkAEP | TableSortColumnNotAllowedAEP | TableSortColumnAEP | TableWidthInfoAEP | TableRendererHeightInfoAEP | VisitLinkAEP | VisitMediaLinkAEP | ExpandAEP | UnsupportedContentPayload | UnsupportedContentTooltipPayload | AnnotationAEP | AnnotationDeleteAEP | MediaLnkTransformedAEP | InvalidProsemirrorDocumentErrorAEP | NestedTableTransformedAEP | NativeEmbedsTransformedAEP | MediaRenderErrorEvent | SyncedBlockFetchErrorAEP | SyncedBlockGetSourceInfoErrorAEP | SyncedBlockSSRErrorAEP | ReferenceSyncedBlockUpdateErrorAEP | SyncedBlockFetchSuccessAEP | ExperienceEventPayload;
|
|
174
176
|
export type FireAnalyticsCallback = <T = void>(payload: AnalyticsEventPayload<T>) => void | undefined;
|
|
175
177
|
export {};
|
|
@@ -4,3 +4,4 @@ export declare const insideBreakoutExpand: (path: Node[]) => boolean;
|
|
|
4
4
|
export declare const insideBlockNode: (path: Node[], schema: Schema) => boolean;
|
|
5
5
|
export declare const insideMultiBodiedExtension: (path: Node[], schema: Schema) => boolean;
|
|
6
6
|
export declare const insideTable: (path: Node[], schema: Schema) => boolean;
|
|
7
|
+
export declare const getNestedUnderNodes: (path: Node[], nodeTypeNames: string[]) => string | undefined;
|
|
@@ -5,11 +5,12 @@ import type { ProviderFactory } from '@atlaskit/editor-common/provider-factory';
|
|
|
5
5
|
import type { EventHandlers } from '@atlaskit/editor-common/ui';
|
|
6
6
|
import type { AnalyticsEventPayload } from '../analytics/events';
|
|
7
7
|
import type { Serializer } from '../serializer';
|
|
8
|
-
import type { RendererAppearance, HeadingAnchorLinksProps, RendererContentMode } from '../ui/Renderer/types';
|
|
8
|
+
import type { RendererAppearance, HeadingAnchorLinksProps, RendererContentMode, NestedRendererType } from '../ui/Renderer/types';
|
|
9
9
|
import type { AnnotationId, AnnotationTypes } from '@atlaskit/adf-schema';
|
|
10
10
|
export interface RendererContext {
|
|
11
11
|
adDoc?: any;
|
|
12
12
|
containerAri?: string;
|
|
13
|
+
nestedRendererType?: NestedRendererType;
|
|
13
14
|
objectAri?: string;
|
|
14
15
|
schema?: Schema;
|
|
15
16
|
}
|
|
@@ -32,9 +32,17 @@ export interface MediaCardProps {
|
|
|
32
32
|
id?: string;
|
|
33
33
|
imageStatus?: ImageStatus;
|
|
34
34
|
localId?: string;
|
|
35
|
+
/**
|
|
36
|
+
* Indicates if media node is nested under a bodiedSyncBlock
|
|
37
|
+
*/
|
|
38
|
+
nestedUnder?: string;
|
|
35
39
|
occurrenceKey?: string;
|
|
36
40
|
originalDimensions?: NumericalCardDimensions;
|
|
37
41
|
rendererAppearance?: RendererAppearance;
|
|
42
|
+
/**
|
|
43
|
+
* Renderer context that includes nestedRendererType for detecting renderer nesting.
|
|
44
|
+
* When nestedRendererType is 'syncedBlock', it indicates media is inside renderer inside a syncBlock.
|
|
45
|
+
*/
|
|
38
46
|
rendererContext?: RendererContext;
|
|
39
47
|
resizeMode?: ImageResizeMode;
|
|
40
48
|
shouldEnableDownloadButton?: boolean;
|
|
@@ -149,8 +149,10 @@ declare enum RESOLVE_METHOD {
|
|
|
149
149
|
type AnnotationAEP = AEP<AnnotationActionType, ACTION_SUBJECT.ANNOTATION, ACTION_SUBJECT_ID.INLINE_COMMENT, AnnotationAEPAttributes, undefined>;
|
|
150
150
|
type MediaLnkTransformedAEP = AEP<ACTION.MEDIA_LINK_TRANSFORMED, ACTION_SUBJECT.RENDERER, undefined, undefined, EVENT_TYPE.OPERATIONAL>;
|
|
151
151
|
type NestedTableTransformedAEP = OperationalAEP<ACTION.NESTED_TABLE_TRANSFORMED, ACTION_SUBJECT.RENDERER, undefined, undefined>;
|
|
152
|
+
type NativeEmbedsTransformedAEP = OperationalAEP<ACTION.NATIVE_EMBEDS_TRANSFORMED, ACTION_SUBJECT.RENDERER, undefined, undefined>;
|
|
152
153
|
export type MediaRenderErrorEvent = UIAEP<ACTION.ERRORED, ACTION_SUBJECT.RENDERER, ACTION_SUBJECT_ID.MEDIA, {
|
|
153
154
|
external?: boolean;
|
|
155
|
+
nestedUnder?: string;
|
|
154
156
|
reason: string;
|
|
155
157
|
}>;
|
|
156
158
|
type SyncedBlockFetchErrorAEP = OperationalAEP<ACTION.ERROR, ACTION_SUBJECT.SYNCED_BLOCK, ACTION_SUBJECT_ID.SYNCED_BLOCK_FETCH, {
|
|
@@ -170,6 +172,6 @@ type ReferenceSyncedBlockUpdateErrorAEP = OperationalAEP<ACTION.ERROR, ACTION_SU
|
|
|
170
172
|
error: string;
|
|
171
173
|
resourceId?: string;
|
|
172
174
|
}>;
|
|
173
|
-
export type AnalyticsEventPayload<_T = void> = RendererStartAEP | RendererRenderedAEP | RendererRenderedSampledAEP | ComponentCrashErrorAEP | RendererUnsupportedContentLevelsTrackingSucceeded | RendererUnsupportedContentLevelsTrackingErrored | RendererSelectAllCaughtAEP | RendererSelectAllEscapedAEP | CodeBlockCopyAEP | CodeBlockWrapAEP | HeadingAnchorLinkButtonAEP | HoverLabelAEP | AnchorLinkAEP | TableSortColumnNotAllowedAEP | TableSortColumnAEP | TableWidthInfoAEP | TableRendererHeightInfoAEP | VisitLinkAEP | VisitMediaLinkAEP | ExpandAEP | UnsupportedContentPayload | UnsupportedContentTooltipPayload | AnnotationAEP | AnnotationDeleteAEP | MediaLnkTransformedAEP | InvalidProsemirrorDocumentErrorAEP | NestedTableTransformedAEP | MediaRenderErrorEvent | SyncedBlockFetchErrorAEP | SyncedBlockGetSourceInfoErrorAEP | SyncedBlockSSRErrorAEP | ReferenceSyncedBlockUpdateErrorAEP | SyncedBlockFetchSuccessAEP | ExperienceEventPayload;
|
|
175
|
+
export type AnalyticsEventPayload<_T = void> = RendererStartAEP | RendererRenderedAEP | RendererRenderedSampledAEP | ComponentCrashErrorAEP | RendererUnsupportedContentLevelsTrackingSucceeded | RendererUnsupportedContentLevelsTrackingErrored | RendererSelectAllCaughtAEP | RendererSelectAllEscapedAEP | CodeBlockCopyAEP | CodeBlockWrapAEP | HeadingAnchorLinkButtonAEP | HoverLabelAEP | AnchorLinkAEP | TableSortColumnNotAllowedAEP | TableSortColumnAEP | TableWidthInfoAEP | TableRendererHeightInfoAEP | VisitLinkAEP | VisitMediaLinkAEP | ExpandAEP | UnsupportedContentPayload | UnsupportedContentTooltipPayload | AnnotationAEP | AnnotationDeleteAEP | MediaLnkTransformedAEP | InvalidProsemirrorDocumentErrorAEP | NestedTableTransformedAEP | NativeEmbedsTransformedAEP | MediaRenderErrorEvent | SyncedBlockFetchErrorAEP | SyncedBlockGetSourceInfoErrorAEP | SyncedBlockSSRErrorAEP | ReferenceSyncedBlockUpdateErrorAEP | SyncedBlockFetchSuccessAEP | ExperienceEventPayload;
|
|
174
176
|
export type FireAnalyticsCallback = <T = void>(payload: AnalyticsEventPayload<T>) => void | undefined;
|
|
175
177
|
export {};
|
|
@@ -4,3 +4,4 @@ export declare const insideBreakoutExpand: (path: Node[]) => boolean;
|
|
|
4
4
|
export declare const insideBlockNode: (path: Node[], schema: Schema) => boolean;
|
|
5
5
|
export declare const insideMultiBodiedExtension: (path: Node[], schema: Schema) => boolean;
|
|
6
6
|
export declare const insideTable: (path: Node[], schema: Schema) => boolean;
|
|
7
|
+
export declare const getNestedUnderNodes: (path: Node[], nodeTypeNames: string[]) => string | undefined;
|
|
@@ -5,11 +5,12 @@ import type { ProviderFactory } from '@atlaskit/editor-common/provider-factory';
|
|
|
5
5
|
import type { EventHandlers } from '@atlaskit/editor-common/ui';
|
|
6
6
|
import type { AnalyticsEventPayload } from '../analytics/events';
|
|
7
7
|
import type { Serializer } from '../serializer';
|
|
8
|
-
import type { RendererAppearance, HeadingAnchorLinksProps, RendererContentMode } from '../ui/Renderer/types';
|
|
8
|
+
import type { RendererAppearance, HeadingAnchorLinksProps, RendererContentMode, NestedRendererType } from '../ui/Renderer/types';
|
|
9
9
|
import type { AnnotationId, AnnotationTypes } from '@atlaskit/adf-schema';
|
|
10
10
|
export interface RendererContext {
|
|
11
11
|
adDoc?: any;
|
|
12
12
|
containerAri?: string;
|
|
13
|
+
nestedRendererType?: NestedRendererType;
|
|
13
14
|
objectAri?: string;
|
|
14
15
|
schema?: Schema;
|
|
15
16
|
}
|
|
@@ -32,9 +32,17 @@ export interface MediaCardProps {
|
|
|
32
32
|
id?: string;
|
|
33
33
|
imageStatus?: ImageStatus;
|
|
34
34
|
localId?: string;
|
|
35
|
+
/**
|
|
36
|
+
* Indicates if media node is nested under a bodiedSyncBlock
|
|
37
|
+
*/
|
|
38
|
+
nestedUnder?: string;
|
|
35
39
|
occurrenceKey?: string;
|
|
36
40
|
originalDimensions?: NumericalCardDimensions;
|
|
37
41
|
rendererAppearance?: RendererAppearance;
|
|
42
|
+
/**
|
|
43
|
+
* Renderer context that includes nestedRendererType for detecting renderer nesting.
|
|
44
|
+
* When nestedRendererType is 'syncedBlock', it indicates media is inside renderer inside a syncBlock.
|
|
45
|
+
*/
|
|
38
46
|
rendererContext?: RendererContext;
|
|
39
47
|
resizeMode?: ImageResizeMode;
|
|
40
48
|
shouldEnableDownloadButton?: boolean;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/renderer",
|
|
3
|
-
"version": "126.
|
|
3
|
+
"version": "126.14.0",
|
|
4
4
|
"description": "Renderer component",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
}
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@atlaskit/adf-schema": "^52.
|
|
26
|
+
"@atlaskit/adf-schema": "^52.1.0",
|
|
27
27
|
"@atlaskit/adf-utils": "^19.27.0",
|
|
28
28
|
"@atlaskit/afm-i18n-platform-editor-renderer": "2.10.0",
|
|
29
29
|
"@atlaskit/analytics-listeners": "^10.0.0",
|
|
@@ -55,9 +55,9 @@
|
|
|
55
55
|
"@atlaskit/react-ufo": "^5.4.0",
|
|
56
56
|
"@atlaskit/smart-card": "^43.25.0",
|
|
57
57
|
"@atlaskit/status": "^3.1.0",
|
|
58
|
-
"@atlaskit/task-decision": "^19.
|
|
58
|
+
"@atlaskit/task-decision": "^19.3.0",
|
|
59
59
|
"@atlaskit/theme": "^21.0.0",
|
|
60
|
-
"@atlaskit/tmp-editor-statsig": "^32.
|
|
60
|
+
"@atlaskit/tmp-editor-statsig": "^32.5.0",
|
|
61
61
|
"@atlaskit/tokens": "^11.0.0",
|
|
62
62
|
"@atlaskit/tooltip": "^20.14.0",
|
|
63
63
|
"@atlaskit/visually-hidden": "^3.0.0",
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
"uuid": "^3.1.0"
|
|
72
72
|
},
|
|
73
73
|
"peerDependencies": {
|
|
74
|
-
"@atlaskit/editor-common": "^111.
|
|
74
|
+
"@atlaskit/editor-common": "^111.23.0",
|
|
75
75
|
"@atlaskit/link-provider": "^4.2.0",
|
|
76
76
|
"@atlaskit/media-core": "^37.0.0",
|
|
77
77
|
"react": "^18.2.0",
|
|
@@ -90,9 +90,9 @@
|
|
|
90
90
|
"@atlaskit/mention": "^24.5.0",
|
|
91
91
|
"@atlaskit/modal-dialog": "^14.11.0",
|
|
92
92
|
"@atlaskit/navigation-next": "patch:@atlaskit/navigation-next@npm%3A9.0.17#~/.yarn/patches/@atlaskit-navigation-next-npm-9.0.17-958ca0ab9d.patch",
|
|
93
|
-
"@atlaskit/profilecard": "^24.
|
|
93
|
+
"@atlaskit/profilecard": "^24.39.0",
|
|
94
94
|
"@atlaskit/util-data-test": "^18.5.0",
|
|
95
|
-
"@atlassian/a11y-jest-testing": "^0.
|
|
95
|
+
"@atlassian/a11y-jest-testing": "^0.11.0",
|
|
96
96
|
"@atlassian/feature-flags-test-utils": "^1.0.0",
|
|
97
97
|
"@atlassian/testing-library": "^0.4.0",
|
|
98
98
|
"@testing-library/react": "^16.3.0",
|
|
@@ -246,6 +246,12 @@
|
|
|
246
246
|
},
|
|
247
247
|
"confluence_ttvc_inline_extensions": {
|
|
248
248
|
"type": "boolean"
|
|
249
|
+
},
|
|
250
|
+
"platform_editor_native_embeds_fallback_transform": {
|
|
251
|
+
"type": "boolean"
|
|
252
|
+
},
|
|
253
|
+
"platform_synced_block_patch_5": {
|
|
254
|
+
"type": "boolean"
|
|
249
255
|
}
|
|
250
256
|
}
|
|
251
257
|
}
|