@atlaskit/editor-plugin-synced-block 3.5.1 → 3.6.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 +11 -0
- package/dist/cjs/nodeviews/bodiedLazySyncedBlock.js +26 -0
- package/dist/cjs/nodeviews/bodiedSyncedBlock.js +87 -0
- package/dist/cjs/nodeviews/syncedBlock.js +8 -115
- package/dist/cjs/pm-plugins/actions.js +48 -40
- package/dist/cjs/pm-plugins/main.js +8 -2
- package/dist/cjs/pm-plugins/utils/track-sync-blocks.js +8 -0
- package/dist/cjs/pm-plugins/utils/utils.js +12 -2
- package/dist/cjs/syncedBlockPlugin.js +3 -0
- package/dist/cjs/ui/BodiedSyncBlockWrapper.js +25 -0
- package/dist/cjs/ui/CreateSyncedBlockDropdownItem.js +15 -2
- package/dist/cjs/ui/SyncBlockLabel.js +3 -2
- package/dist/cjs/ui/floating-toolbar.js +5 -3
- package/dist/es2019/nodeviews/bodiedLazySyncedBlock.js +16 -0
- package/dist/es2019/nodeviews/bodiedSyncedBlock.js +62 -0
- package/dist/es2019/nodeviews/syncedBlock.js +7 -96
- package/dist/es2019/pm-plugins/actions.js +56 -46
- package/dist/es2019/pm-plugins/main.js +8 -2
- package/dist/es2019/pm-plugins/utils/track-sync-blocks.js +8 -0
- package/dist/es2019/pm-plugins/utils/utils.js +11 -1
- package/dist/es2019/syncedBlockPlugin.js +4 -1
- package/dist/es2019/ui/BodiedSyncBlockWrapper.js +19 -0
- package/dist/es2019/ui/CreateSyncedBlockDropdownItem.js +16 -2
- package/dist/es2019/ui/SyncBlockLabel.js +3 -2
- package/dist/es2019/ui/floating-toolbar.js +12 -4
- package/dist/esm/nodeviews/bodiedLazySyncedBlock.js +15 -0
- package/dist/esm/nodeviews/bodiedSyncedBlock.js +80 -0
- package/dist/esm/nodeviews/syncedBlock.js +9 -116
- package/dist/esm/pm-plugins/actions.js +47 -39
- package/dist/esm/pm-plugins/main.js +8 -2
- package/dist/esm/pm-plugins/utils/track-sync-blocks.js +8 -0
- package/dist/esm/pm-plugins/utils/utils.js +11 -1
- package/dist/esm/syncedBlockPlugin.js +4 -1
- package/dist/esm/ui/BodiedSyncBlockWrapper.js +18 -0
- package/dist/esm/ui/CreateSyncedBlockDropdownItem.js +15 -2
- package/dist/esm/ui/SyncBlockLabel.js +3 -2
- package/dist/esm/ui/floating-toolbar.js +6 -4
- package/dist/types/nodeviews/bodiedLazySyncedBlock.d.ts +3 -0
- package/dist/types/nodeviews/bodiedSyncedBlock.d.ts +25 -0
- package/dist/types/nodeviews/syncedBlock.d.ts +1 -20
- package/dist/types/pm-plugins/utils/utils.d.ts +6 -2
- package/dist/types/syncedBlockPluginType.d.ts +2 -0
- package/dist/types/ui/BodiedSyncBlockWrapper.d.ts +9 -0
- package/dist/types-ts4.5/nodeviews/bodiedLazySyncedBlock.d.ts +3 -0
- package/dist/types-ts4.5/nodeviews/bodiedSyncedBlock.d.ts +25 -0
- package/dist/types-ts4.5/nodeviews/syncedBlock.d.ts +1 -20
- package/dist/types-ts4.5/pm-plugins/utils/utils.d.ts +6 -2
- package/dist/types-ts4.5/syncedBlockPluginType.d.ts +2 -0
- package/dist/types-ts4.5/ui/BodiedSyncBlockWrapper.d.ts +9 -0
- package/package.json +3 -3
- package/dist/cjs/ui/SyncBlockEditorWrapper.js +0 -45
- package/dist/es2019/ui/SyncBlockEditorWrapper.js +0 -29
- package/dist/esm/ui/SyncBlockEditorWrapper.js +0 -36
- package/dist/types/ui/SyncBlockEditorWrapper.d.ts +0 -16
- package/dist/types-ts4.5/ui/SyncBlockEditorWrapper.d.ts +0 -16
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
# @atlaskit/editor-plugin-synced-block
|
|
2
2
|
|
|
3
|
+
## 3.6.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`10882b2fab738`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/10882b2fab738) -
|
|
8
|
+
[ux] Introduced bodiedSyncBlock nodeview
|
|
9
|
+
|
|
10
|
+
### Patch Changes
|
|
11
|
+
|
|
12
|
+
- Updated dependencies
|
|
13
|
+
|
|
3
14
|
## 3.5.1
|
|
4
15
|
|
|
5
16
|
### Patch Changes
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.lazyBodiedSyncBlockView = void 0;
|
|
8
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
9
|
+
var _lazyNodeView = require("@atlaskit/editor-common/lazy-node-view");
|
|
10
|
+
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" != (0, _typeof2.default)(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); }
|
|
11
|
+
var lazyBodiedSyncBlockView = exports.lazyBodiedSyncBlockView = function lazyBodiedSyncBlockView(props) {
|
|
12
|
+
return (0, _lazyNodeView.withLazyLoading)({
|
|
13
|
+
nodeName: 'bodiedSyncBlock',
|
|
14
|
+
getNodeViewOptions: function getNodeViewOptions() {},
|
|
15
|
+
loader: function loader() {
|
|
16
|
+
var result = Promise.resolve().then(function () {
|
|
17
|
+
return _interopRequireWildcard(require( /* webpackChunkName: "@atlaskit-internal_editor-plugin-bodied-synced-block-nodeview" */
|
|
18
|
+
'./bodiedSyncedBlock'));
|
|
19
|
+
}).then(function (_ref) {
|
|
20
|
+
var bodiedSyncBlockNodeView = _ref.bodiedSyncBlockNodeView;
|
|
21
|
+
return bodiedSyncBlockNodeView(props);
|
|
22
|
+
});
|
|
23
|
+
return result;
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
};
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.bodiedSyncBlockNodeView = void 0;
|
|
8
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
9
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
10
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
11
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
12
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
13
|
+
var _react = _interopRequireDefault(require("react"));
|
|
14
|
+
var _reactNodeView = _interopRequireDefault(require("@atlaskit/editor-common/react-node-view"));
|
|
15
|
+
var _syncBlock = require("@atlaskit/editor-common/sync-block");
|
|
16
|
+
var _model = require("@atlaskit/editor-prosemirror/model");
|
|
17
|
+
var _BodiedSyncBlockWrapper = require("../ui/BodiedSyncBlockWrapper");
|
|
18
|
+
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
|
|
19
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
20
|
+
var toDOM = function toDOM() {
|
|
21
|
+
return ['div', {
|
|
22
|
+
class: _syncBlock.BodiedSyncBlockSharedCssClassName.content,
|
|
23
|
+
contenteditable: true
|
|
24
|
+
}, 0];
|
|
25
|
+
};
|
|
26
|
+
var BodiedSyncBlock = /*#__PURE__*/function (_ReactNodeView) {
|
|
27
|
+
function BodiedSyncBlock(props) {
|
|
28
|
+
var _this;
|
|
29
|
+
(0, _classCallCheck2.default)(this, BodiedSyncBlock);
|
|
30
|
+
_this = _callSuper(this, BodiedSyncBlock, [props.node, props.view, props.getPos, props.portalProviderAPI, props.eventDispatcher, props]);
|
|
31
|
+
_this.pluginOptions = props.pluginOptions;
|
|
32
|
+
return _this;
|
|
33
|
+
}
|
|
34
|
+
(0, _inherits2.default)(BodiedSyncBlock, _ReactNodeView);
|
|
35
|
+
return (0, _createClass2.default)(BodiedSyncBlock, [{
|
|
36
|
+
key: "createDomRef",
|
|
37
|
+
value: function createDomRef() {
|
|
38
|
+
var domRef = document.createElement('div');
|
|
39
|
+
domRef.classList.add(_syncBlock.BodiedSyncBlockSharedCssClassName.prefix);
|
|
40
|
+
return domRef;
|
|
41
|
+
}
|
|
42
|
+
}, {
|
|
43
|
+
key: "render",
|
|
44
|
+
value: function render(_props, forwardRef) {
|
|
45
|
+
var _this$pluginOptions;
|
|
46
|
+
return /*#__PURE__*/_react.default.createElement(_BodiedSyncBlockWrapper.BodiedSyncBlockWrapper, {
|
|
47
|
+
ref: forwardRef,
|
|
48
|
+
dataProvider: (_this$pluginOptions = this.pluginOptions) === null || _this$pluginOptions === void 0 ? void 0 : _this$pluginOptions.dataProvider,
|
|
49
|
+
node: this.node
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
}, {
|
|
53
|
+
key: "getContentDOM",
|
|
54
|
+
value: function getContentDOM() {
|
|
55
|
+
var _DOMSerializer$render = _model.DOMSerializer.renderSpec(document, toDOM()),
|
|
56
|
+
dom = _DOMSerializer$render.dom,
|
|
57
|
+
contentDOM = _DOMSerializer$render.contentDOM;
|
|
58
|
+
if (dom instanceof HTMLElement) {
|
|
59
|
+
return {
|
|
60
|
+
dom: dom,
|
|
61
|
+
contentDOM: contentDOM
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
return undefined;
|
|
65
|
+
}
|
|
66
|
+
}]);
|
|
67
|
+
}(_reactNodeView.default);
|
|
68
|
+
var bodiedSyncBlockNodeView = exports.bodiedSyncBlockNodeView = function bodiedSyncBlockNodeView(_ref) {
|
|
69
|
+
var pluginOptions = _ref.pluginOptions,
|
|
70
|
+
pmPluginFactoryParams = _ref.pmPluginFactoryParams,
|
|
71
|
+
api = _ref.api,
|
|
72
|
+
syncBlockStore = _ref.syncBlockStore;
|
|
73
|
+
return function (node, view, getPos) {
|
|
74
|
+
var portalProviderAPI = pmPluginFactoryParams.portalProviderAPI,
|
|
75
|
+
eventDispatcher = pmPluginFactoryParams.eventDispatcher;
|
|
76
|
+
return new BodiedSyncBlock({
|
|
77
|
+
api: api,
|
|
78
|
+
pluginOptions: pluginOptions,
|
|
79
|
+
node: node,
|
|
80
|
+
view: view,
|
|
81
|
+
getPos: getPos,
|
|
82
|
+
portalProviderAPI: portalProviderAPI,
|
|
83
|
+
eventDispatcher: eventDispatcher,
|
|
84
|
+
syncBlockStore: syncBlockStore
|
|
85
|
+
}).init();
|
|
86
|
+
};
|
|
87
|
+
};
|
|
@@ -14,24 +14,11 @@ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits
|
|
|
14
14
|
var _react = _interopRequireDefault(require("react"));
|
|
15
15
|
var _reactNodeView = _interopRequireDefault(require("@atlaskit/editor-common/react-node-view"));
|
|
16
16
|
var _syncBlock = require("@atlaskit/editor-common/sync-block");
|
|
17
|
-
var _state = require("@atlaskit/editor-prosemirror/state");
|
|
18
17
|
var _editorSyncedBlockProvider = require("@atlaskit/editor-synced-block-provider");
|
|
19
|
-
var _SyncBlockEditorWrapper = require("../ui/SyncBlockEditorWrapper");
|
|
20
18
|
var _SyncBlockRendererWrapper = require("../ui/SyncBlockRendererWrapper");
|
|
21
19
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
|
|
22
20
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
23
21
|
function _superPropGet(t, o, e, r) { var p = (0, _get2.default)((0, _getPrototypeOf2.default)(1 & r ? t.prototype : t), o, e); return 2 & r && "function" == typeof p ? function (t) { return p.apply(e, t); } : p; }
|
|
24
|
-
var defaultSyncBlockEditorDocument = {
|
|
25
|
-
version: 1,
|
|
26
|
-
type: 'doc',
|
|
27
|
-
content: [{
|
|
28
|
-
type: 'paragraph',
|
|
29
|
-
content: [{
|
|
30
|
-
type: 'text',
|
|
31
|
-
text: 'This is a source sync block. Edit me to update the content.'
|
|
32
|
-
}]
|
|
33
|
-
}]
|
|
34
|
-
};
|
|
35
22
|
var defaultSyncBlockRendererDocument = {
|
|
36
23
|
version: 1,
|
|
37
24
|
type: 'doc',
|
|
@@ -62,60 +49,12 @@ var SyncBlock = /*#__PURE__*/function (_ReactNodeView) {
|
|
|
62
49
|
return domRef;
|
|
63
50
|
}
|
|
64
51
|
}, {
|
|
65
|
-
key: "
|
|
66
|
-
value: function
|
|
67
|
-
|
|
68
|
-
}
|
|
69
|
-
}, {
|
|
70
|
-
key: "setInnerEditorView",
|
|
71
|
-
value: function setInnerEditorView(editorView) {
|
|
72
|
-
var _this$options;
|
|
73
|
-
// set inner editor view
|
|
74
|
-
this.syncBlockStore.setSyncBlockNestedEditorView(editorView);
|
|
75
|
-
var nodes = [(0, _editorSyncedBlockProvider.convertSyncBlockPMNodeToSyncBlockData)(this.node, false)];
|
|
76
|
-
(_this$options = this.options) === null || _this$options === void 0 || (_this$options = _this$options.dataProvider) === null || _this$options === void 0 || _this$options.fetchNodesData(nodes).then(function (data) {
|
|
77
|
-
var _data$;
|
|
78
|
-
var tr = editorView.state.tr;
|
|
79
|
-
if (data && (_data$ = data[0]) !== null && _data$ !== void 0 && _data$.content) {
|
|
80
|
-
var newNode = editorView.state.schema.nodeFromJSON(data[0].content);
|
|
81
|
-
editorView.dispatch(tr.replaceWith(0, editorView.state.doc.nodeSize - 2, newNode));
|
|
82
|
-
}
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
}, {
|
|
86
|
-
key: "renderEditor",
|
|
87
|
-
value: function renderEditor() {
|
|
88
|
-
var _this$options2,
|
|
52
|
+
key: "render",
|
|
53
|
+
value: function render() {
|
|
54
|
+
var _this$options,
|
|
89
55
|
_this2 = this,
|
|
90
|
-
_this$
|
|
91
|
-
|
|
92
|
-
if (!(fabricEditorPopupScrollParent instanceof HTMLElement)) {
|
|
93
|
-
return null;
|
|
94
|
-
}
|
|
95
|
-
if (!((_this$options2 = this.options) !== null && _this$options2 !== void 0 && _this$options2.getSyncedBlockEditor)) {
|
|
96
|
-
return null;
|
|
97
|
-
}
|
|
98
|
-
return /*#__PURE__*/_react.default.createElement(_SyncBlockEditorWrapper.SyncBlockEditorWrapper, {
|
|
99
|
-
popupsBoundariesElement: fabricEditorPopupScrollParent,
|
|
100
|
-
popupsMountPoint: fabricEditorPopupScrollParent,
|
|
101
|
-
defaultDocument: defaultSyncBlockEditorDocument,
|
|
102
|
-
useHandleContentChanges: function useHandleContentChanges(updatedDoc) {
|
|
103
|
-
var _this2$options;
|
|
104
|
-
return (0, _editorSyncedBlockProvider.useHandleContentChanges)(updatedDoc, _this2.isSource(), _this2.node, (_this2$options = _this2.options) === null || _this2$options === void 0 ? void 0 : _this2$options.dataProvider);
|
|
105
|
-
},
|
|
106
|
-
setInnerEditorView: function setInnerEditorView(editorView) {
|
|
107
|
-
return _this2.setInnerEditorView(editorView);
|
|
108
|
-
},
|
|
109
|
-
getSyncedBlockEditor: (_this$options3 = this.options) === null || _this$options3 === void 0 ? void 0 : _this$options3.getSyncedBlockEditor
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
}, {
|
|
113
|
-
key: "renderRenderer",
|
|
114
|
-
value: function renderRenderer() {
|
|
115
|
-
var _this$options4,
|
|
116
|
-
_this3 = this,
|
|
117
|
-
_this$options5;
|
|
118
|
-
if (!((_this$options4 = this.options) !== null && _this$options4 !== void 0 && _this$options4.getSyncedBlockRenderer)) {
|
|
56
|
+
_this$options2;
|
|
57
|
+
if (!((_this$options = this.options) !== null && _this$options !== void 0 && _this$options.getSyncedBlockRenderer)) {
|
|
119
58
|
return null;
|
|
120
59
|
}
|
|
121
60
|
|
|
@@ -123,40 +62,12 @@ var SyncBlock = /*#__PURE__*/function (_ReactNodeView) {
|
|
|
123
62
|
|
|
124
63
|
return /*#__PURE__*/_react.default.createElement(_SyncBlockRendererWrapper.SyncBlockRendererWrapper, {
|
|
125
64
|
useFetchDocNode: function useFetchDocNode() {
|
|
126
|
-
var
|
|
127
|
-
return (0, _editorSyncedBlockProvider.useFetchDocNode)(
|
|
65
|
+
var _this2$options;
|
|
66
|
+
return (0, _editorSyncedBlockProvider.useFetchDocNode)(_this2.view, _this2.node, defaultSyncBlockRendererDocument, (_this2$options = _this2.options) === null || _this2$options === void 0 ? void 0 : _this2$options.dataProvider);
|
|
128
67
|
},
|
|
129
|
-
getSyncedBlockRenderer: (_this$
|
|
68
|
+
getSyncedBlockRenderer: (_this$options2 = this.options) === null || _this$options2 === void 0 ? void 0 : _this$options2.getSyncedBlockRenderer
|
|
130
69
|
});
|
|
131
70
|
}
|
|
132
|
-
}, {
|
|
133
|
-
key: "render",
|
|
134
|
-
value: function render() {
|
|
135
|
-
if (this.isSource()) {
|
|
136
|
-
return this.renderEditor();
|
|
137
|
-
}
|
|
138
|
-
return this.renderRenderer();
|
|
139
|
-
}
|
|
140
|
-
}, {
|
|
141
|
-
key: "stopEvent",
|
|
142
|
-
value: function stopEvent(event) {
|
|
143
|
-
var _target$closest;
|
|
144
|
-
var target = event.target;
|
|
145
|
-
if (!target) {
|
|
146
|
-
return false;
|
|
147
|
-
}
|
|
148
|
-
var isInNestedEditor = ((_target$closest = target.closest) === null || _target$closest === void 0 ? void 0 : _target$closest.call(target, "[data-testid=\"".concat(_SyncBlockEditorWrapper.SyncBlockEditorWrapperDataId, "\"]"))) != null;
|
|
149
|
-
if (isInNestedEditor) {
|
|
150
|
-
this.selectNode();
|
|
151
|
-
return true;
|
|
152
|
-
}
|
|
153
|
-
return false;
|
|
154
|
-
}
|
|
155
|
-
}, {
|
|
156
|
-
key: "selectNode",
|
|
157
|
-
value: function selectNode() {
|
|
158
|
-
this.selectSyncBlockNode(undefined);
|
|
159
|
-
}
|
|
160
71
|
}, {
|
|
161
72
|
key: "destroy",
|
|
162
73
|
value: function destroy() {
|
|
@@ -164,27 +75,9 @@ var SyncBlock = /*#__PURE__*/function (_ReactNodeView) {
|
|
|
164
75
|
if (this.fetchIntervalId) {
|
|
165
76
|
window.clearInterval(this.fetchIntervalId);
|
|
166
77
|
}
|
|
167
|
-
this.syncBlockStore.setSyncBlockNestedEditorView(undefined);
|
|
168
78
|
(_this$unsubscribe = this.unsubscribe) === null || _this$unsubscribe === void 0 || _this$unsubscribe.call(this);
|
|
169
79
|
_superPropGet(SyncBlock, "destroy", this, 3)([]);
|
|
170
80
|
}
|
|
171
|
-
}, {
|
|
172
|
-
key: "selectSyncBlockNode",
|
|
173
|
-
value: function selectSyncBlockNode(relativeSelectionPos) {
|
|
174
|
-
var _this$reactComponentP;
|
|
175
|
-
var getPos = typeof this.getPos === 'function' ? this.getPos() : 0;
|
|
176
|
-
var selectionAPI = (_this$reactComponentP = this.reactComponentProps.api) === null || _this$reactComponentP === void 0 || (_this$reactComponentP = _this$reactComponentP.selection) === null || _this$reactComponentP === void 0 ? void 0 : _this$reactComponentP.actions;
|
|
177
|
-
if (!selectionAPI) {
|
|
178
|
-
return;
|
|
179
|
-
}
|
|
180
|
-
var tr = selectionAPI.selectNearNode({
|
|
181
|
-
selectionRelativeToNode: relativeSelectionPos,
|
|
182
|
-
selection: _state.NodeSelection.create(this.view.state.doc, getPos !== null && getPos !== void 0 ? getPos : 0)
|
|
183
|
-
})(this.view.state);
|
|
184
|
-
if (tr) {
|
|
185
|
-
this.view.dispatch(tr);
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
81
|
}]);
|
|
189
82
|
}(_reactNodeView.default);
|
|
190
83
|
var syncBlockNodeView = exports.syncBlockNodeView = function syncBlockNodeView(_ref) {
|
|
@@ -7,8 +7,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.removeSyncedBlock = exports.editSyncedBlockSource = exports.createSyncedBlock = exports.copySyncedBlockReferenceToClipboard = void 0;
|
|
8
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
9
|
var _analytics = require("@atlaskit/editor-common/analytics");
|
|
10
|
-
var
|
|
11
|
-
var
|
|
10
|
+
var _copyButton = require("@atlaskit/editor-common/copy-button");
|
|
11
|
+
var _utils = require("./utils/utils");
|
|
12
12
|
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; }
|
|
13
13
|
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; }
|
|
14
14
|
var createSyncedBlock = exports.createSyncedBlock = function createSyncedBlock(_ref) {
|
|
@@ -16,66 +16,74 @@ var createSyncedBlock = exports.createSyncedBlock = function createSyncedBlock(_
|
|
|
16
16
|
syncBlockStore = _ref.syncBlockStore,
|
|
17
17
|
typeAheadInsert = _ref.typeAheadInsert;
|
|
18
18
|
var _tr$doc$type$schema$n = tr.doc.type.schema.nodes,
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
var syncBlockNode = syncBlockStore.createSyncBlockNode();
|
|
22
|
-
var node = syncBlock.createAndFill(_objectSpread({}, syncBlockNode.attrs));
|
|
23
|
-
if (!node) {
|
|
24
|
-
return false;
|
|
25
|
-
}
|
|
19
|
+
bodiedSyncBlock = _tr$doc$type$schema$n.bodiedSyncBlock,
|
|
20
|
+
paragraph = _tr$doc$type$schema$n.paragraph;
|
|
26
21
|
|
|
27
22
|
// If the selection is empty, we want to insert the sync block on a new line
|
|
28
23
|
if (tr.selection.empty) {
|
|
24
|
+
var storeSyncBlockNode = syncBlockStore.createSyncBlockNode();
|
|
25
|
+
var paragraphNode = paragraph.createAndFill({});
|
|
26
|
+
var newBodiedSyncBlockNode = bodiedSyncBlock.createAndFill(_objectSpread({}, storeSyncBlockNode.attrs), paragraphNode ? [paragraphNode] : []);
|
|
27
|
+
if (!newBodiedSyncBlockNode) {
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
29
30
|
if (typeAheadInsert) {
|
|
30
|
-
tr = typeAheadInsert(
|
|
31
|
+
tr = typeAheadInsert(newBodiedSyncBlockNode);
|
|
31
32
|
} else {
|
|
32
|
-
tr = tr.replaceSelectionWith(
|
|
33
|
+
tr = tr.replaceSelectionWith(newBodiedSyncBlockNode).scrollIntoView();
|
|
33
34
|
}
|
|
34
35
|
} else {
|
|
35
|
-
var conversionInfo = (0,
|
|
36
|
-
if (conversionInfo) {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
// TMP solution to wait for the nested editor view to be set
|
|
41
|
-
// this will be removed once we have a proper architecture settled
|
|
42
|
-
setTimeout(function () {
|
|
43
|
-
var editorView = syncBlockStore.getSyncBlockNestedEditorView();
|
|
44
|
-
if (editorView) {
|
|
45
|
-
var innerTr = editorView.state.tr;
|
|
46
|
-
var innerNode = editorView.state.schema.nodeFromJSON(innerNodeJson);
|
|
47
|
-
editorView.dispatch(innerTr.replaceWith(0, editorView.state.doc.nodeSize - 2, innerNode));
|
|
48
|
-
}
|
|
49
|
-
}, 1000);
|
|
36
|
+
var conversionInfo = (0, _utils.canBeConvertedToSyncBlock)(tr.selection);
|
|
37
|
+
if (!conversionInfo) {
|
|
38
|
+
// TODO: EDITOR-1665 - Raise an error analytics event
|
|
39
|
+
return false;
|
|
50
40
|
} else {
|
|
51
|
-
var
|
|
52
|
-
|
|
53
|
-
|
|
41
|
+
var _storeSyncBlockNode = syncBlockStore.createSyncBlockNode();
|
|
42
|
+
var _newBodiedSyncBlockNode = bodiedSyncBlock.createAndFill(_objectSpread({}, _storeSyncBlockNode.attrs), conversionInfo.contentToInclude);
|
|
43
|
+
if (!_newBodiedSyncBlockNode) {
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
tr.replaceWith(conversionInfo.from - 1, conversionInfo.to, _newBodiedSyncBlockNode).scrollIntoView();
|
|
54
47
|
}
|
|
55
48
|
}
|
|
56
49
|
return tr;
|
|
57
50
|
};
|
|
58
51
|
var copySyncedBlockReferenceToClipboard = exports.copySyncedBlockReferenceToClipboard = function copySyncedBlockReferenceToClipboard(api) {
|
|
59
|
-
return function (state,
|
|
60
|
-
if (!(api !== null && api !== void 0 && api.floatingToolbar)
|
|
52
|
+
return function (state, _dispatch, _view) {
|
|
53
|
+
if (!(api !== null && api !== void 0 && api.floatingToolbar)) {
|
|
61
54
|
return false;
|
|
62
55
|
}
|
|
63
|
-
var
|
|
64
|
-
|
|
65
|
-
var newTr = api.floatingToolbar.commands.copyNode(syncBlock, _analytics.INPUT_METHOD.FLOATING_TB)({
|
|
66
|
-
tr: tr
|
|
67
|
-
});
|
|
68
|
-
if (!newTr) {
|
|
56
|
+
var syncBlockFindResult = (0, _utils.findSyncBlockOrBodiedSyncBlock)(state);
|
|
57
|
+
if (!syncBlockFindResult) {
|
|
69
58
|
return false;
|
|
70
59
|
}
|
|
71
|
-
|
|
60
|
+
var isBodiedSyncBlock = (0, _utils.isBodiedSyncBlockNode)(syncBlockFindResult.node, state.schema.nodes.bodiedSyncBlock);
|
|
61
|
+
var referenceSyncBlockNode = null;
|
|
62
|
+
if (isBodiedSyncBlock) {
|
|
63
|
+
var syncBlock = state.tr.doc.type.schema.nodes.syncBlock;
|
|
64
|
+
|
|
65
|
+
// create sync block reference node
|
|
66
|
+
referenceSyncBlockNode = syncBlock.createAndFill({
|
|
67
|
+
resourceId: syncBlockFindResult.node.attrs.resourceId
|
|
68
|
+
});
|
|
69
|
+
if (!referenceSyncBlockNode) {
|
|
70
|
+
return false;
|
|
71
|
+
}
|
|
72
|
+
} else {
|
|
73
|
+
referenceSyncBlockNode = syncBlockFindResult.node;
|
|
74
|
+
}
|
|
75
|
+
if (!referenceSyncBlockNode) {
|
|
76
|
+
return false;
|
|
77
|
+
}
|
|
78
|
+
var domNode = (0, _copyButton.toDOM)(referenceSyncBlockNode, state.tr.doc.type.schema);
|
|
79
|
+
(0, _copyButton.copyDomNode)(domNode, referenceSyncBlockNode.type, state.tr.selection);
|
|
72
80
|
return true;
|
|
73
81
|
};
|
|
74
82
|
};
|
|
75
83
|
var editSyncedBlockSource = exports.editSyncedBlockSource = function editSyncedBlockSource(syncBlockStore, api) {
|
|
76
84
|
return function (state, dispatch, _view) {
|
|
77
85
|
var _syncBlock$node;
|
|
78
|
-
var syncBlock = (0,
|
|
86
|
+
var syncBlock = (0, _utils.findSyncBlock)(state);
|
|
79
87
|
var resourceId = syncBlock === null || syncBlock === void 0 || (_syncBlock$node = syncBlock.node) === null || _syncBlock$node === void 0 || (_syncBlock$node = _syncBlock$node.attrs) === null || _syncBlock$node === void 0 ? void 0 : _syncBlock$node.resourceId;
|
|
80
88
|
if (!resourceId) {
|
|
81
89
|
return false;
|
|
@@ -106,7 +114,7 @@ var removeSyncedBlock = exports.removeSyncedBlock = function removeSyncedBlock(a
|
|
|
106
114
|
from = _state$selection.$from.pos,
|
|
107
115
|
to = _state$selection.$to.pos,
|
|
108
116
|
tr = state.tr;
|
|
109
|
-
var syncBlock = (0,
|
|
117
|
+
var syncBlock = (0, _utils.findSyncBlockOrBodiedSyncBlock)(state);
|
|
110
118
|
if (!syncBlock) {
|
|
111
119
|
return false;
|
|
112
120
|
}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.syncedBlockPluginKey = exports.createPlugin = void 0;
|
|
7
7
|
var _safePlugin = require("@atlaskit/editor-common/safe-plugin");
|
|
8
8
|
var _state = require("@atlaskit/editor-prosemirror/state");
|
|
9
|
+
var _bodiedLazySyncedBlock = require("../nodeviews/bodiedLazySyncedBlock");
|
|
9
10
|
var _lazySyncedBlock = require("../nodeviews/lazySyncedBlock");
|
|
10
11
|
var _trackSyncBlocks2 = require("./utils/track-sync-blocks");
|
|
11
12
|
var syncedBlockPluginKey = exports.syncedBlockPluginKey = new _state.PluginKey('syncedBlockPlugin');
|
|
@@ -34,6 +35,12 @@ var createPlugin = exports.createPlugin = function createPlugin(options, pmPlugi
|
|
|
34
35
|
pmPluginFactoryParams: pmPluginFactoryParams,
|
|
35
36
|
api: api,
|
|
36
37
|
syncBlockStore: syncBlockStore
|
|
38
|
+
}),
|
|
39
|
+
bodiedSyncBlock: (0, _bodiedLazySyncedBlock.lazyBodiedSyncBlockView)({
|
|
40
|
+
pluginOptions: options,
|
|
41
|
+
pmPluginFactoryParams: pmPluginFactoryParams,
|
|
42
|
+
api: api,
|
|
43
|
+
syncBlockStore: syncBlockStore
|
|
37
44
|
})
|
|
38
45
|
}
|
|
39
46
|
},
|
|
@@ -42,7 +49,6 @@ var createPlugin = exports.createPlugin = function createPlugin(options, pmPlugi
|
|
|
42
49
|
return {
|
|
43
50
|
destroy: function destroy() {
|
|
44
51
|
syncBlockStore.setEditorView(undefined);
|
|
45
|
-
syncBlockStore.setSyncBlockNestedEditorView(undefined);
|
|
46
52
|
}
|
|
47
53
|
};
|
|
48
54
|
},
|
|
@@ -66,7 +72,7 @@ var createPlugin = exports.createPlugin = function createPlugin(options, pmPlugi
|
|
|
66
72
|
}
|
|
67
73
|
return true;
|
|
68
74
|
},
|
|
69
|
-
appendTransaction: function appendTransaction(trs,
|
|
75
|
+
appendTransaction: function appendTransaction(trs, _oldState, newState) {
|
|
70
76
|
trs.filter(function (tr) {
|
|
71
77
|
return tr.docChanged;
|
|
72
78
|
}).forEach(function (tr) {
|
|
@@ -6,6 +6,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.trackSyncBlocks = void 0;
|
|
7
7
|
var _transform = require("@atlaskit/editor-prosemirror/transform");
|
|
8
8
|
var trackSyncBlocks = exports.trackSyncBlocks = function trackSyncBlocks(storeManager, tr, state) {
|
|
9
|
+
// TODO: EDITOR-2430 - Disable tracking for now, it will be updated to handle the new bodied sync block
|
|
10
|
+
var dontTrack = true;
|
|
11
|
+
if (dontTrack) {
|
|
12
|
+
return {
|
|
13
|
+
removed: [],
|
|
14
|
+
added: []
|
|
15
|
+
};
|
|
16
|
+
}
|
|
9
17
|
var sourceSyncBlockRemoved = {};
|
|
10
18
|
var sourceSyncBlockAdded = {};
|
|
11
19
|
|
|
@@ -3,14 +3,24 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.findSyncBlock = exports.canBeConvertedToSyncBlock = void 0;
|
|
6
|
+
exports.isBodiedSyncBlockNode = exports.findSyncBlockOrBodiedSyncBlock = exports.findSyncBlock = exports.findBodiedSyncBlock = exports.canBeConvertedToSyncBlock = void 0;
|
|
7
7
|
var _model = require("@atlaskit/editor-prosemirror/model");
|
|
8
8
|
var _utils = require("@atlaskit/editor-prosemirror/utils");
|
|
9
9
|
var _editorSyncedBlockProvider = require("@atlaskit/editor-synced-block-provider");
|
|
10
10
|
var _editorTables = require("@atlaskit/editor-tables");
|
|
11
11
|
var findSyncBlock = exports.findSyncBlock = function findSyncBlock(state, selection) {
|
|
12
12
|
var syncBlock = state.schema.nodes.syncBlock;
|
|
13
|
-
return (0, _utils.findSelectedNodeOfType)(syncBlock)(selection || state.selection)
|
|
13
|
+
return (0, _utils.findSelectedNodeOfType)(syncBlock)(selection || state.selection);
|
|
14
|
+
};
|
|
15
|
+
var findBodiedSyncBlock = exports.findBodiedSyncBlock = function findBodiedSyncBlock(state, selection) {
|
|
16
|
+
var bodiedSyncBlock = state.schema.nodes.bodiedSyncBlock;
|
|
17
|
+
return (0, _utils.findSelectedNodeOfType)(bodiedSyncBlock)(selection || state.selection) || (0, _utils.findParentNodeOfType)(bodiedSyncBlock)(selection || state.selection);
|
|
18
|
+
};
|
|
19
|
+
var findSyncBlockOrBodiedSyncBlock = exports.findSyncBlockOrBodiedSyncBlock = function findSyncBlockOrBodiedSyncBlock(state, selection) {
|
|
20
|
+
return findSyncBlock(state, selection) || findBodiedSyncBlock(state, selection);
|
|
21
|
+
};
|
|
22
|
+
var isBodiedSyncBlockNode = exports.isBodiedSyncBlockNode = function isBodiedSyncBlockNode(node, bodiedSyncBlock) {
|
|
23
|
+
return node.type === bodiedSyncBlock;
|
|
14
24
|
};
|
|
15
25
|
var canBeConvertedToSyncBlock = exports.canBeConvertedToSyncBlock = function canBeConvertedToSyncBlock(selection) {
|
|
16
26
|
var from = selection.from;
|
|
@@ -27,6 +27,9 @@ var syncedBlockPlugin = exports.syncedBlockPlugin = function syncedBlockPlugin(_
|
|
|
27
27
|
return [{
|
|
28
28
|
name: 'syncBlock',
|
|
29
29
|
node: _adfSchema.syncBlock
|
|
30
|
+
}, {
|
|
31
|
+
name: 'bodiedSyncBlock',
|
|
32
|
+
node: _adfSchema.bodiedSyncBlock
|
|
30
33
|
}];
|
|
31
34
|
},
|
|
32
35
|
pmPlugins: function pmPlugins() {
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.BodiedSyncBlockWrapper = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _editorSyncedBlockProvider = require("@atlaskit/editor-synced-block-provider");
|
|
10
|
+
var _SyncBlockLabel = require("./SyncBlockLabel");
|
|
11
|
+
var BodiedSyncBlockWrapper = exports.BodiedSyncBlockWrapper = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
12
|
+
var node = _ref.node,
|
|
13
|
+
dataProvider = _ref.dataProvider;
|
|
14
|
+
// TODO: EDITOR-2429 - this should be debounced (either here or in the data provider) to avoid excessive API writes
|
|
15
|
+
var docJSON = {
|
|
16
|
+
version: 1,
|
|
17
|
+
type: 'doc',
|
|
18
|
+
content: node.content.toJSON()
|
|
19
|
+
};
|
|
20
|
+
(0, _editorSyncedBlockProvider.useHandleContentChanges)(docJSON, true, node, dataProvider);
|
|
21
|
+
return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_SyncBlockLabel.SyncBlockLabel, null), /*#__PURE__*/_react.default.createElement("div", {
|
|
22
|
+
"data-testid": "bodied-sync-block-wrapper",
|
|
23
|
+
ref: ref
|
|
24
|
+
}));
|
|
25
|
+
});
|
|
@@ -21,8 +21,21 @@ var CreateSyncedBlockDropdownItem = exports.CreateSyncedBlockDropdownItem = func
|
|
|
21
21
|
return null;
|
|
22
22
|
}
|
|
23
23
|
var onClick = function onClick() {
|
|
24
|
-
var _api$core;
|
|
25
|
-
api === null || api === void 0 || (_api$core = api.core) === null || _api$core === void 0 || _api$core.actions.execute(
|
|
24
|
+
var _api$core, _api$core2;
|
|
25
|
+
api === null || api === void 0 || (_api$core = api.core) === null || _api$core === void 0 || _api$core.actions.execute(function (_ref2) {
|
|
26
|
+
var _api$blockControls;
|
|
27
|
+
var tr = _ref2.tr;
|
|
28
|
+
api === null || api === void 0 || api.syncedBlock.commands.insertSyncedBlock()({
|
|
29
|
+
tr: tr
|
|
30
|
+
});
|
|
31
|
+
api === null || api === void 0 || (_api$blockControls = api.blockControls) === null || _api$blockControls === void 0 || (_api$blockControls = _api$blockControls.commands) === null || _api$blockControls === void 0 || _api$blockControls.toggleBlockMenu({
|
|
32
|
+
closeMenu: true
|
|
33
|
+
})({
|
|
34
|
+
tr: tr
|
|
35
|
+
});
|
|
36
|
+
return tr;
|
|
37
|
+
});
|
|
38
|
+
api === null || api === void 0 || (_api$core2 = api.core) === null || _api$core2 === void 0 || _api$core2.actions.focus();
|
|
26
39
|
};
|
|
27
40
|
return /*#__PURE__*/_react.default.createElement(_editorToolbar.ToolbarDropdownItem, {
|
|
28
41
|
elemBefore: /*#__PURE__*/_react.default.createElement(_editorToolbar.SyncBlocksIcon, {
|
|
@@ -8,15 +8,16 @@ exports.SyncBlockLabel = void 0;
|
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
var _reactIntlNext = require("react-intl-next");
|
|
10
10
|
var _messages = require("@atlaskit/editor-common/messages");
|
|
11
|
+
var _syncBlock = require("@atlaskit/editor-common/sync-block");
|
|
11
12
|
var SyncBlockLabelDataId = 'sync-block-label';
|
|
12
13
|
var SyncBlockLabelComponent = function SyncBlockLabelComponent() {
|
|
13
14
|
var _useIntl = (0, _reactIntlNext.useIntl)(),
|
|
14
15
|
formatMessage = _useIntl.formatMessage;
|
|
15
16
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
16
|
-
"data-
|
|
17
|
+
"data-testid": SyncBlockLabelDataId
|
|
17
18
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
|
|
18
19
|
,
|
|
19
|
-
className:
|
|
20
|
+
className: _syncBlock.SyncBlockLabelSharedCssClassName.labelClassName
|
|
20
21
|
}, formatMessage(_messages.syncBlockMessages.syncedBlockLabel));
|
|
21
22
|
};
|
|
22
23
|
var SyncBlockLabel = exports.SyncBlockLabel = /*#__PURE__*/_react.default.memo(SyncBlockLabelComponent);
|
|
@@ -25,12 +25,14 @@ var getToolbarConfig = exports.getToolbarConfig = function getToolbarConfig(stat
|
|
|
25
25
|
var _providerFactory = arguments.length > 3 ? arguments[3] : undefined;
|
|
26
26
|
var api = arguments.length > 4 ? arguments[4] : undefined;
|
|
27
27
|
var syncBlockStore = arguments.length > 5 ? arguments[5] : undefined;
|
|
28
|
-
var syncBlockObject = (0, _utils2.
|
|
28
|
+
var syncBlockObject = (0, _utils2.findSyncBlockOrBodiedSyncBlock)(state);
|
|
29
29
|
if (!syncBlockObject) {
|
|
30
30
|
return;
|
|
31
31
|
}
|
|
32
|
+
var bodiedSyncBlock = state.schema.nodes.bodiedSyncBlock;
|
|
33
|
+
var isBodiedSyncBlock = (0, _utils2.isBodiedSyncBlockNode)(syncBlockObject.node, bodiedSyncBlock);
|
|
32
34
|
var formatMessage = intl.formatMessage;
|
|
33
|
-
var nodeType =
|
|
35
|
+
var nodeType = syncBlockObject.node.type;
|
|
34
36
|
var hoverDecoration = api === null || api === void 0 || (_api$decorations = api.decorations) === null || _api$decorations === void 0 ? void 0 : _api$decorations.actions.hoverDecoration;
|
|
35
37
|
var hoverDecorationProps = function hoverDecorationProps(nodeType, className) {
|
|
36
38
|
return {
|
|
@@ -53,7 +55,7 @@ var getToolbarConfig = exports.getToolbarConfig = function getToolbarConfig(stat
|
|
|
53
55
|
}, hoverDecorationProps(nodeType, _consts.akEditorSelectedNodeClassName));
|
|
54
56
|
items.push(copyButton);
|
|
55
57
|
var disabled = !syncBlockStore.getSyncBlockURL(syncBlockObject.node.attrs.resourceId);
|
|
56
|
-
if (!
|
|
58
|
+
if (!isBodiedSyncBlock) {
|
|
57
59
|
var editSourceButton = _objectSpread({
|
|
58
60
|
id: 'editor.syncedBlock.editSource',
|
|
59
61
|
type: 'button',
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { withLazyLoading } from '@atlaskit/editor-common/lazy-node-view';
|
|
2
|
+
export const lazyBodiedSyncBlockView = props => {
|
|
3
|
+
return withLazyLoading({
|
|
4
|
+
nodeName: 'bodiedSyncBlock',
|
|
5
|
+
getNodeViewOptions: () => {},
|
|
6
|
+
loader: () => {
|
|
7
|
+
const result = import( /* webpackChunkName: "@atlaskit-internal_editor-plugin-bodied-synced-block-nodeview" */
|
|
8
|
+
'./bodiedSyncedBlock').then(({
|
|
9
|
+
bodiedSyncBlockNodeView
|
|
10
|
+
}) => {
|
|
11
|
+
return bodiedSyncBlockNodeView(props);
|
|
12
|
+
});
|
|
13
|
+
return result;
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
};
|