@atlaskit/editor-plugin-synced-block 13.0.13 → 13.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# @atlaskit/editor-plugin-synced-block
|
|
2
2
|
|
|
3
|
+
## 13.0.14
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`9a3a071d7fcce`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/9a3a071d7fcce) -
|
|
8
|
+
Fix Safari synced block copying when `platform_editor_blocks_patch_9` is enabled.
|
|
9
|
+
`copyDomNodeWithResult` exposes synchronous Patch 9 failures while `copyDomNode` retains its
|
|
10
|
+
existing void API.
|
|
11
|
+
- Updated dependencies
|
|
12
|
+
|
|
3
13
|
## 13.0.13
|
|
4
14
|
|
|
5
15
|
### Patch Changes
|
|
@@ -233,18 +233,33 @@ var copySyncedBlockReferenceToClipboardInternal = function copySyncedBlockRefere
|
|
|
233
233
|
return false;
|
|
234
234
|
}
|
|
235
235
|
var domNode = (0, _copyButton.toDOM)(referenceSyncBlockNode, schema);
|
|
236
|
-
(0, _copyButton.copyDomNode)(domNode, referenceSyncBlockNode.type, selection);
|
|
237
236
|
|
|
238
237
|
// Bare-uuid join key shared with the create/delete events: for a source
|
|
239
238
|
// bodiedSyncBlock its `localId` is the source uuid (copy was page-form only).
|
|
240
239
|
var sourceJoinKey = isBodiedSyncBlock ? syncBlockFindResult.node.attrs.localId : undefined;
|
|
241
240
|
var isSourceContentUnpublished = isBodiedSyncBlock ? syncBlockStore.sourceManager.getStatus(syncBlockFindResult.node.attrs.resourceId) !== 'active' : ((_syncBlockStore$refer = syncBlockStore.referenceManager.getFromCache(referenceSyncBlockNode.attrs.resourceId)) === null || _syncBlockStore$refer === void 0 || (_syncBlockStore$refer = _syncBlockStore$refer.data) === null || _syncBlockStore$refer === void 0 ? void 0 : _syncBlockStore$refer.status) === 'unpublished';
|
|
242
241
|
var sourceProduct = (0, _utils2.getSourceProductFromResourceIdSafe)(referenceSyncBlockNode.attrs.resourceId);
|
|
242
|
+
var copyResult = (0, _copyButton.copyDomNodeWithResult)(domNode, referenceSyncBlockNode.type, selection);
|
|
243
|
+
if (copyResult === false) {
|
|
244
|
+
var _api$analytics4;
|
|
245
|
+
api === null || api === void 0 || (_api$analytics4 = api.analytics) === null || _api$analytics4 === void 0 || (_api$analytics4 = _api$analytics4.actions) === null || _api$analytics4 === void 0 || _api$analytics4.fireAnalyticsEvent({
|
|
246
|
+
eventType: _analytics.EVENT_TYPE.OPERATIONAL,
|
|
247
|
+
action: _analytics.ACTION.ERROR,
|
|
248
|
+
actionSubject: _analytics.ACTION_SUBJECT.SYNCED_BLOCK,
|
|
249
|
+
actionSubjectId: _analytics.ACTION_SUBJECT_ID.SYNCED_BLOCK_COPY,
|
|
250
|
+
attributes: {
|
|
251
|
+
error: 'Failed to copy synced block to clipboard',
|
|
252
|
+
resourceId: referenceSyncBlockNode.attrs.resourceId,
|
|
253
|
+
inputMethod: inputMethod
|
|
254
|
+
}
|
|
255
|
+
});
|
|
256
|
+
return false;
|
|
257
|
+
}
|
|
243
258
|
(0, _utils3.deferDispatch)(function () {
|
|
244
259
|
api === null || api === void 0 || api.core.actions.execute(function (_ref3) {
|
|
245
|
-
var _api$
|
|
260
|
+
var _api$analytics5;
|
|
246
261
|
var tr = _ref3.tr;
|
|
247
|
-
api === null || api === void 0 || (_api$
|
|
262
|
+
api === null || api === void 0 || (_api$analytics5 = api.analytics) === null || _api$analytics5 === void 0 || (_api$analytics5 = _api$analytics5.actions) === null || _api$analytics5 === void 0 || _api$analytics5.fireAnalyticsEvent({
|
|
248
263
|
eventType: _analytics.EVENT_TYPE.OPERATIONAL,
|
|
249
264
|
action: _analytics.ACTION.COPIED,
|
|
250
265
|
actionSubject: _analytics.ACTION_SUBJECT.SYNCED_BLOCK,
|
|
@@ -281,8 +296,8 @@ var editSyncedBlockSource = exports.editSyncedBlockSource = function editSyncedB
|
|
|
281
296
|
var isOnSameDocument = (syncBlockData === null || syncBlockData === void 0 ? void 0 : syncBlockData.onSameDocument) === true;
|
|
282
297
|
var sourceBlock = isOnSameDocument && syncBlockData ? (0, _utils4.findBodiedSyncBlockByLocalId)(state, syncBlockData.blockInstanceId) : undefined;
|
|
283
298
|
if (syncBlockURL) {
|
|
284
|
-
var _api$
|
|
285
|
-
api === null || api === void 0 || (_api$
|
|
299
|
+
var _api$analytics6;
|
|
300
|
+
api === null || api === void 0 || (_api$analytics6 = api.analytics) === null || _api$analytics6 === void 0 || _api$analytics6.actions.fireAnalyticsEvent({
|
|
286
301
|
eventType: _analytics.EVENT_TYPE.OPERATIONAL,
|
|
287
302
|
action: _analytics.ACTION.SYNCED_BLOCK_EDIT_SOURCE,
|
|
288
303
|
actionSubject: _analytics.ACTION_SUBJECT.SYNCED_BLOCK,
|
|
@@ -299,9 +314,9 @@ var editSyncedBlockSource = exports.editSyncedBlockSource = function editSyncedB
|
|
|
299
314
|
}
|
|
300
315
|
window.open(syncBlockURL, '_blank');
|
|
301
316
|
} else {
|
|
302
|
-
var _api$
|
|
317
|
+
var _api$analytics7;
|
|
303
318
|
var _tr = state.tr;
|
|
304
|
-
api === null || api === void 0 || (_api$
|
|
319
|
+
api === null || api === void 0 || (_api$analytics7 = api.analytics) === null || _api$analytics7 === void 0 || (_api$analytics7 = _api$analytics7.actions) === null || _api$analytics7 === void 0 || _api$analytics7.attachAnalyticsEvent({
|
|
305
320
|
eventType: _analytics.EVENT_TYPE.OPERATIONAL,
|
|
306
321
|
action: _analytics.ACTION.ERROR,
|
|
307
322
|
actionSubject: _analytics.ACTION_SUBJECT.SYNCED_BLOCK,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defaultSchema } from '@atlaskit/adf-schema/schema-default';
|
|
2
2
|
import { ACTION, ACTION_SUBJECT, ACTION_SUBJECT_ID, EVENT_TYPE } from '@atlaskit/editor-common/analytics';
|
|
3
|
-
import {
|
|
3
|
+
import { copyDomNodeWithResult, toDOM } from '@atlaskit/editor-common/copy-button';
|
|
4
4
|
import { DOMSerializer, Fragment } from '@atlaskit/editor-prosemirror/model';
|
|
5
5
|
import { NodeSelection, Selection, TextSelection } from '@atlaskit/editor-prosemirror/state';
|
|
6
6
|
import { findSelectedNodeOfType, removeParentNodeOfType, removeSelectedNode, safeInsert } from '@atlaskit/editor-prosemirror/utils';
|
|
@@ -228,19 +228,34 @@ const copySyncedBlockReferenceToClipboardInternal = (schema, selection, syncBloc
|
|
|
228
228
|
return false;
|
|
229
229
|
}
|
|
230
230
|
const domNode = toDOM(referenceSyncBlockNode, schema);
|
|
231
|
-
copyDomNode(domNode, referenceSyncBlockNode.type, selection);
|
|
232
231
|
|
|
233
232
|
// Bare-uuid join key shared with the create/delete events: for a source
|
|
234
233
|
// bodiedSyncBlock its `localId` is the source uuid (copy was page-form only).
|
|
235
234
|
const sourceJoinKey = isBodiedSyncBlock ? syncBlockFindResult.node.attrs.localId : undefined;
|
|
236
235
|
const isSourceContentUnpublished = isBodiedSyncBlock ? syncBlockStore.sourceManager.getStatus(syncBlockFindResult.node.attrs.resourceId) !== 'active' : ((_syncBlockStore$refer = syncBlockStore.referenceManager.getFromCache(referenceSyncBlockNode.attrs.resourceId)) === null || _syncBlockStore$refer === void 0 ? void 0 : (_syncBlockStore$refer2 = _syncBlockStore$refer.data) === null || _syncBlockStore$refer2 === void 0 ? void 0 : _syncBlockStore$refer2.status) === 'unpublished';
|
|
237
236
|
const sourceProduct = getSourceProductFromResourceIdSafe(referenceSyncBlockNode.attrs.resourceId);
|
|
237
|
+
const copyResult = copyDomNodeWithResult(domNode, referenceSyncBlockNode.type, selection);
|
|
238
|
+
if (copyResult === false) {
|
|
239
|
+
var _api$analytics4, _api$analytics4$actio;
|
|
240
|
+
api === null || api === void 0 ? void 0 : (_api$analytics4 = api.analytics) === null || _api$analytics4 === void 0 ? void 0 : (_api$analytics4$actio = _api$analytics4.actions) === null || _api$analytics4$actio === void 0 ? void 0 : _api$analytics4$actio.fireAnalyticsEvent({
|
|
241
|
+
eventType: EVENT_TYPE.OPERATIONAL,
|
|
242
|
+
action: ACTION.ERROR,
|
|
243
|
+
actionSubject: ACTION_SUBJECT.SYNCED_BLOCK,
|
|
244
|
+
actionSubjectId: ACTION_SUBJECT_ID.SYNCED_BLOCK_COPY,
|
|
245
|
+
attributes: {
|
|
246
|
+
error: 'Failed to copy synced block to clipboard',
|
|
247
|
+
resourceId: referenceSyncBlockNode.attrs.resourceId,
|
|
248
|
+
inputMethod
|
|
249
|
+
}
|
|
250
|
+
});
|
|
251
|
+
return false;
|
|
252
|
+
}
|
|
238
253
|
deferDispatch(() => {
|
|
239
254
|
api === null || api === void 0 ? void 0 : api.core.actions.execute(({
|
|
240
255
|
tr
|
|
241
256
|
}) => {
|
|
242
|
-
var _api$
|
|
243
|
-
api === null || api === void 0 ? void 0 : (_api$
|
|
257
|
+
var _api$analytics5, _api$analytics5$actio;
|
|
258
|
+
api === null || api === void 0 ? void 0 : (_api$analytics5 = api.analytics) === null || _api$analytics5 === void 0 ? void 0 : (_api$analytics5$actio = _api$analytics5.actions) === null || _api$analytics5$actio === void 0 ? void 0 : _api$analytics5$actio.fireAnalyticsEvent({
|
|
244
259
|
eventType: EVENT_TYPE.OPERATIONAL,
|
|
245
260
|
action: ACTION.COPIED,
|
|
246
261
|
actionSubject: ACTION_SUBJECT.SYNCED_BLOCK,
|
|
@@ -277,8 +292,8 @@ export const editSyncedBlockSource = (syncBlockStore, api) => (state, dispatch,
|
|
|
277
292
|
const isOnSameDocument = (syncBlockData === null || syncBlockData === void 0 ? void 0 : syncBlockData.onSameDocument) === true;
|
|
278
293
|
const sourceBlock = isOnSameDocument && syncBlockData ? findBodiedSyncBlockByLocalId(state, syncBlockData.blockInstanceId) : undefined;
|
|
279
294
|
if (syncBlockURL) {
|
|
280
|
-
var _api$
|
|
281
|
-
api === null || api === void 0 ? void 0 : (_api$
|
|
295
|
+
var _api$analytics6;
|
|
296
|
+
api === null || api === void 0 ? void 0 : (_api$analytics6 = api.analytics) === null || _api$analytics6 === void 0 ? void 0 : _api$analytics6.actions.fireAnalyticsEvent({
|
|
282
297
|
eventType: EVENT_TYPE.OPERATIONAL,
|
|
283
298
|
action: ACTION.SYNCED_BLOCK_EDIT_SOURCE,
|
|
284
299
|
actionSubject: ACTION_SUBJECT.SYNCED_BLOCK,
|
|
@@ -295,11 +310,11 @@ export const editSyncedBlockSource = (syncBlockStore, api) => (state, dispatch,
|
|
|
295
310
|
}
|
|
296
311
|
window.open(syncBlockURL, '_blank');
|
|
297
312
|
} else {
|
|
298
|
-
var _api$
|
|
313
|
+
var _api$analytics7, _api$analytics7$actio;
|
|
299
314
|
const {
|
|
300
315
|
tr
|
|
301
316
|
} = state;
|
|
302
|
-
api === null || api === void 0 ? void 0 : (_api$
|
|
317
|
+
api === null || api === void 0 ? void 0 : (_api$analytics7 = api.analytics) === null || _api$analytics7 === void 0 ? void 0 : (_api$analytics7$actio = _api$analytics7.actions) === null || _api$analytics7$actio === void 0 ? void 0 : _api$analytics7$actio.attachAnalyticsEvent({
|
|
303
318
|
eventType: EVENT_TYPE.OPERATIONAL,
|
|
304
319
|
action: ACTION.ERROR,
|
|
305
320
|
actionSubject: ACTION_SUBJECT.SYNCED_BLOCK,
|
|
@@ -3,7 +3,7 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
3
3
|
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) { _defineProperty(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; }
|
|
4
4
|
import { defaultSchema } from '@atlaskit/adf-schema/schema-default';
|
|
5
5
|
import { ACTION, ACTION_SUBJECT, ACTION_SUBJECT_ID, EVENT_TYPE } from '@atlaskit/editor-common/analytics';
|
|
6
|
-
import {
|
|
6
|
+
import { copyDomNodeWithResult, toDOM } from '@atlaskit/editor-common/copy-button';
|
|
7
7
|
import { DOMSerializer, Fragment } from '@atlaskit/editor-prosemirror/model';
|
|
8
8
|
import { NodeSelection, Selection, TextSelection } from '@atlaskit/editor-prosemirror/state';
|
|
9
9
|
import { findSelectedNodeOfType, removeParentNodeOfType, removeSelectedNode, safeInsert } from '@atlaskit/editor-prosemirror/utils';
|
|
@@ -226,18 +226,33 @@ var copySyncedBlockReferenceToClipboardInternal = function copySyncedBlockRefere
|
|
|
226
226
|
return false;
|
|
227
227
|
}
|
|
228
228
|
var domNode = toDOM(referenceSyncBlockNode, schema);
|
|
229
|
-
copyDomNode(domNode, referenceSyncBlockNode.type, selection);
|
|
230
229
|
|
|
231
230
|
// Bare-uuid join key shared with the create/delete events: for a source
|
|
232
231
|
// bodiedSyncBlock its `localId` is the source uuid (copy was page-form only).
|
|
233
232
|
var sourceJoinKey = isBodiedSyncBlock ? syncBlockFindResult.node.attrs.localId : undefined;
|
|
234
233
|
var isSourceContentUnpublished = isBodiedSyncBlock ? syncBlockStore.sourceManager.getStatus(syncBlockFindResult.node.attrs.resourceId) !== 'active' : ((_syncBlockStore$refer = syncBlockStore.referenceManager.getFromCache(referenceSyncBlockNode.attrs.resourceId)) === null || _syncBlockStore$refer === void 0 || (_syncBlockStore$refer = _syncBlockStore$refer.data) === null || _syncBlockStore$refer === void 0 ? void 0 : _syncBlockStore$refer.status) === 'unpublished';
|
|
235
234
|
var sourceProduct = getSourceProductFromResourceIdSafe(referenceSyncBlockNode.attrs.resourceId);
|
|
235
|
+
var copyResult = copyDomNodeWithResult(domNode, referenceSyncBlockNode.type, selection);
|
|
236
|
+
if (copyResult === false) {
|
|
237
|
+
var _api$analytics4;
|
|
238
|
+
api === null || api === void 0 || (_api$analytics4 = api.analytics) === null || _api$analytics4 === void 0 || (_api$analytics4 = _api$analytics4.actions) === null || _api$analytics4 === void 0 || _api$analytics4.fireAnalyticsEvent({
|
|
239
|
+
eventType: EVENT_TYPE.OPERATIONAL,
|
|
240
|
+
action: ACTION.ERROR,
|
|
241
|
+
actionSubject: ACTION_SUBJECT.SYNCED_BLOCK,
|
|
242
|
+
actionSubjectId: ACTION_SUBJECT_ID.SYNCED_BLOCK_COPY,
|
|
243
|
+
attributes: {
|
|
244
|
+
error: 'Failed to copy synced block to clipboard',
|
|
245
|
+
resourceId: referenceSyncBlockNode.attrs.resourceId,
|
|
246
|
+
inputMethod: inputMethod
|
|
247
|
+
}
|
|
248
|
+
});
|
|
249
|
+
return false;
|
|
250
|
+
}
|
|
236
251
|
deferDispatch(function () {
|
|
237
252
|
api === null || api === void 0 || api.core.actions.execute(function (_ref3) {
|
|
238
|
-
var _api$
|
|
253
|
+
var _api$analytics5;
|
|
239
254
|
var tr = _ref3.tr;
|
|
240
|
-
api === null || api === void 0 || (_api$
|
|
255
|
+
api === null || api === void 0 || (_api$analytics5 = api.analytics) === null || _api$analytics5 === void 0 || (_api$analytics5 = _api$analytics5.actions) === null || _api$analytics5 === void 0 || _api$analytics5.fireAnalyticsEvent({
|
|
241
256
|
eventType: EVENT_TYPE.OPERATIONAL,
|
|
242
257
|
action: ACTION.COPIED,
|
|
243
258
|
actionSubject: ACTION_SUBJECT.SYNCED_BLOCK,
|
|
@@ -274,8 +289,8 @@ export var editSyncedBlockSource = function editSyncedBlockSource(syncBlockStore
|
|
|
274
289
|
var isOnSameDocument = (syncBlockData === null || syncBlockData === void 0 ? void 0 : syncBlockData.onSameDocument) === true;
|
|
275
290
|
var sourceBlock = isOnSameDocument && syncBlockData ? findBodiedSyncBlockByLocalId(state, syncBlockData.blockInstanceId) : undefined;
|
|
276
291
|
if (syncBlockURL) {
|
|
277
|
-
var _api$
|
|
278
|
-
api === null || api === void 0 || (_api$
|
|
292
|
+
var _api$analytics6;
|
|
293
|
+
api === null || api === void 0 || (_api$analytics6 = api.analytics) === null || _api$analytics6 === void 0 || _api$analytics6.actions.fireAnalyticsEvent({
|
|
279
294
|
eventType: EVENT_TYPE.OPERATIONAL,
|
|
280
295
|
action: ACTION.SYNCED_BLOCK_EDIT_SOURCE,
|
|
281
296
|
actionSubject: ACTION_SUBJECT.SYNCED_BLOCK,
|
|
@@ -292,9 +307,9 @@ export var editSyncedBlockSource = function editSyncedBlockSource(syncBlockStore
|
|
|
292
307
|
}
|
|
293
308
|
window.open(syncBlockURL, '_blank');
|
|
294
309
|
} else {
|
|
295
|
-
var _api$
|
|
310
|
+
var _api$analytics7;
|
|
296
311
|
var _tr = state.tr;
|
|
297
|
-
api === null || api === void 0 || (_api$
|
|
312
|
+
api === null || api === void 0 || (_api$analytics7 = api.analytics) === null || _api$analytics7 === void 0 || (_api$analytics7 = _api$analytics7.actions) === null || _api$analytics7 === void 0 || _api$analytics7.attachAnalyticsEvent({
|
|
298
313
|
eventType: EVENT_TYPE.OPERATIONAL,
|
|
299
314
|
action: ACTION.ERROR,
|
|
300
315
|
actionSubject: ACTION_SUBJECT.SYNCED_BLOCK,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/editor-plugin-synced-block",
|
|
3
|
-
"version": "13.0.
|
|
3
|
+
"version": "13.0.14",
|
|
4
4
|
"description": "SyncedBlock plugin for @atlaskit/editor-core",
|
|
5
5
|
"author": "Atlassian Pty Ltd",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"@atlaskit/adf-schema": "^57.0.0",
|
|
24
24
|
"@atlaskit/button": "25.1.0",
|
|
25
25
|
"@atlaskit/dropdown-menu": "18.1.0",
|
|
26
|
-
"@atlaskit/editor-json-transformer": "^9.
|
|
26
|
+
"@atlaskit/editor-json-transformer": "^9.6.0",
|
|
27
27
|
"@atlaskit/editor-plugin-analytics": "^15.0.0",
|
|
28
28
|
"@atlaskit/editor-plugin-block-menu": "^14.1.0",
|
|
29
29
|
"@atlaskit/editor-plugin-connectivity": "15.0.0",
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
"memoize-one": "^6.0.0"
|
|
61
61
|
},
|
|
62
62
|
"peerDependencies": {
|
|
63
|
-
"@atlaskit/editor-common": "^119.
|
|
63
|
+
"@atlaskit/editor-common": "^119.13.0",
|
|
64
64
|
"react": "^18.2.0 || ^19.2.0",
|
|
65
65
|
"react-intl": "^5.25.1 || ^6.0.0 || ^7.0.0"
|
|
66
66
|
},
|
|
@@ -111,6 +111,9 @@
|
|
|
111
111
|
},
|
|
112
112
|
"platform_editor_blocks_patch_7": {
|
|
113
113
|
"type": "boolean"
|
|
114
|
+
},
|
|
115
|
+
"platform_editor_blocks_patch_9": {
|
|
116
|
+
"type": "boolean"
|
|
114
117
|
}
|
|
115
118
|
}
|
|
116
119
|
}
|