@atlaskit/editor-synced-block-renderer 2.2.0 → 2.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -0
- package/{afm-dev-agents → afm-products}/tsconfig.json +5 -5
- package/dist/cjs/syncedBlockRenderer.js +38 -11
- package/dist/cjs/ui/SyncedBlockErrorComponent.js +21 -0
- package/dist/cjs/ui/SyncedBlockLoadingState.js +11 -0
- package/dist/es2019/syncedBlockRenderer.js +39 -12
- package/dist/es2019/ui/SyncedBlockErrorComponent.js +15 -0
- package/dist/es2019/ui/SyncedBlockLoadingState.js +4 -0
- package/dist/esm/syncedBlockRenderer.js +39 -12
- package/dist/esm/ui/SyncedBlockErrorComponent.js +14 -0
- package/dist/esm/ui/SyncedBlockLoadingState.js +4 -0
- package/dist/types/syncedBlockRenderer.d.ts +3 -3
- package/dist/types/ui/SyncedBlockErrorComponent.d.ts +5 -0
- package/dist/types/ui/SyncedBlockLoadingState.d.ts +2 -0
- package/dist/types-ts4.5/syncedBlockRenderer.d.ts +3 -3
- package/dist/types-ts4.5/ui/SyncedBlockErrorComponent.d.ts +5 -0
- package/dist/types-ts4.5/ui/SyncedBlockLoadingState.d.ts +2 -0
- package/package.json +4 -4
- package/afm-passionfruit/tsconfig.json +0 -35
- package/afm-rovo-extension/tsconfig.json +0 -35
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# @atlaskit/editor-synced-block-renderer
|
|
2
2
|
|
|
3
|
+
## 2.2.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`62d0954696c7e`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/62d0954696c7e) -
|
|
8
|
+
[ux] EDITOR-1648 handle permission denied, not found and any generic error for sync block
|
|
9
|
+
- Updated dependencies
|
|
10
|
+
|
|
11
|
+
## 2.2.1
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- [`2261b8ade339b`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/2261b8ade339b) -
|
|
16
|
+
[ux] EDITOR-2255 integrate data provider for renderer sync block node
|
|
17
|
+
- [`c28cd65d12c24`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/c28cd65d12c24) -
|
|
18
|
+
EDITOR-2447 Bump adf-schema to 51.3.1
|
|
19
|
+
- Updated dependencies
|
|
20
|
+
|
|
3
21
|
## 2.2.0
|
|
4
22
|
|
|
5
23
|
### Minor Changes
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
"extends": "../../../../tsconfig.entry-points.
|
|
2
|
+
"extends": "../../../../tsconfig.entry-points.products.json",
|
|
3
3
|
"compilerOptions": {
|
|
4
4
|
"target": "es5",
|
|
5
|
-
"outDir": "../../../../../
|
|
5
|
+
"outDir": "../../../../../tsDist/@atlaskit__editor-synced-block-renderer/app",
|
|
6
6
|
"rootDir": "../",
|
|
7
7
|
"composite": true
|
|
8
8
|
},
|
|
@@ -23,13 +23,13 @@
|
|
|
23
23
|
],
|
|
24
24
|
"references": [
|
|
25
25
|
{
|
|
26
|
-
"path": "../../editor-synced-block-provider/afm-
|
|
26
|
+
"path": "../../editor-synced-block-provider/afm-products/tsconfig.json"
|
|
27
27
|
},
|
|
28
28
|
{
|
|
29
|
-
"path": "../../renderer/afm-
|
|
29
|
+
"path": "../../renderer/afm-products/tsconfig.json"
|
|
30
30
|
},
|
|
31
31
|
{
|
|
32
|
-
"path": "../../editor-common/afm-
|
|
32
|
+
"path": "../../editor-common/afm-products/tsconfig.json"
|
|
33
33
|
}
|
|
34
34
|
]
|
|
35
35
|
}
|
|
@@ -12,27 +12,43 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
12
12
|
var _editorSyncedBlockProvider = require("@atlaskit/editor-synced-block-provider");
|
|
13
13
|
var _renderer = require("@atlaskit/renderer");
|
|
14
14
|
var _actions = require("@atlaskit/renderer/actions");
|
|
15
|
+
var _SyncedBlockErrorComponent = require("./ui/SyncedBlockErrorComponent");
|
|
16
|
+
var _SyncedBlockLoadingState = require("./ui/SyncedBlockLoadingState");
|
|
15
17
|
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); }
|
|
16
18
|
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; }
|
|
17
19
|
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; }
|
|
18
20
|
var SyncedBlockRenderer = function SyncedBlockRenderer(_ref) {
|
|
19
|
-
var
|
|
21
|
+
var useFetchSyncBlockData = _ref.useFetchSyncBlockData,
|
|
20
22
|
dataProviders = _ref.dataProviders;
|
|
21
|
-
var
|
|
23
|
+
var fetchResult = useFetchSyncBlockData();
|
|
24
|
+
if (!fetchResult) {
|
|
25
|
+
return /*#__PURE__*/_react.default.createElement(_SyncedBlockLoadingState.SyncedBlockLoadingState, null);
|
|
26
|
+
}
|
|
27
|
+
if ('status' in fetchResult) {
|
|
28
|
+
return /*#__PURE__*/_react.default.createElement(_SyncedBlockErrorComponent.SyncedBlockErrorComponent, {
|
|
29
|
+
status: fetchResult.status
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
var syncBlockData = fetchResult;
|
|
33
|
+
var syncBlockDoc = {
|
|
34
|
+
content: syncBlockData.content,
|
|
35
|
+
version: 1,
|
|
36
|
+
type: 'doc'
|
|
37
|
+
};
|
|
22
38
|
return /*#__PURE__*/_react.default.createElement(_actions.RendererActionsContext, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
23
39
|
"data-testid": "sync-block-renderer-wrapper"
|
|
24
40
|
}, /*#__PURE__*/_react.default.createElement(_renderer.ReactRenderer, {
|
|
25
41
|
appearance: "full-width",
|
|
26
42
|
adfStage: "stage0",
|
|
27
43
|
schema: (0, _editorSyncedBlockProvider.getDefaultSyncBlockSchema)(),
|
|
28
|
-
document:
|
|
44
|
+
document: syncBlockDoc,
|
|
29
45
|
disableHeadingIDs: true,
|
|
30
46
|
dataProviders: dataProviders
|
|
31
47
|
})));
|
|
32
48
|
};
|
|
33
49
|
var getSyncedBlockRenderer = exports.getSyncedBlockRenderer = function getSyncedBlockRenderer(props) {
|
|
34
50
|
return /*#__PURE__*/_react.default.createElement(SyncedBlockRenderer, {
|
|
35
|
-
|
|
51
|
+
useFetchSyncBlockData: props.useFetchSyncBlockData
|
|
36
52
|
});
|
|
37
53
|
};
|
|
38
54
|
|
|
@@ -63,21 +79,32 @@ var SyncBlockNodeComponent = function SyncBlockNodeComponent(props) {
|
|
|
63
79
|
});
|
|
64
80
|
}, [props.dataPromise, data]);
|
|
65
81
|
if (!data) {
|
|
66
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
82
|
+
return /*#__PURE__*/_react.default.createElement(_SyncedBlockLoadingState.SyncedBlockLoadingState, null);
|
|
67
83
|
}
|
|
68
|
-
var
|
|
84
|
+
var fetchResult = data.find(function (item) {
|
|
69
85
|
return item.resourceId === props.resourceId;
|
|
70
86
|
});
|
|
71
|
-
if (!
|
|
72
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
87
|
+
if (!fetchResult) {
|
|
88
|
+
return /*#__PURE__*/_react.default.createElement(_SyncedBlockErrorComponent.SyncedBlockErrorComponent, {
|
|
89
|
+
status: _editorSyncedBlockProvider.SyncBlockStatus.Errored
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
if ('status' in fetchResult) {
|
|
93
|
+
return /*#__PURE__*/_react.default.createElement(_SyncedBlockErrorComponent.SyncedBlockErrorComponent, {
|
|
94
|
+
status: fetchResult.status
|
|
95
|
+
});
|
|
73
96
|
}
|
|
97
|
+
var syncBlockData = fetchResult;
|
|
74
98
|
var syncBlockDoc = {
|
|
75
99
|
content: syncBlockData.content,
|
|
76
100
|
version: 1,
|
|
77
101
|
type: 'doc'
|
|
78
102
|
};
|
|
79
|
-
return /*#__PURE__*/_react.default.createElement("div", {
|
|
80
|
-
"data-
|
|
103
|
+
return /*#__PURE__*/_react.default.createElement(_actions.RendererActionsContext, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
104
|
+
"data-sync-block": true,
|
|
105
|
+
"data-testid": "sync-block-renderer-wrapper",
|
|
106
|
+
"data-resource-id": props.resourceId,
|
|
107
|
+
"data-local-id": props.localId
|
|
81
108
|
}, /*#__PURE__*/_react.default.createElement(_renderer.ReactRenderer, {
|
|
82
109
|
appearance: "full-width",
|
|
83
110
|
adfStage: "stage0",
|
|
@@ -85,7 +112,7 @@ var SyncBlockNodeComponent = function SyncBlockNodeComponent(props) {
|
|
|
85
112
|
document: syncBlockDoc,
|
|
86
113
|
disableHeadingIDs: true,
|
|
87
114
|
dataProviders: props.providers
|
|
88
|
-
}));
|
|
115
|
+
})));
|
|
89
116
|
};
|
|
90
117
|
var getSyncBlockNodeComponent = exports.getSyncBlockNodeComponent = function getSyncBlockNodeComponent(dataProvider, doc) {
|
|
91
118
|
var content = doc.content;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.SyncedBlockErrorComponent = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _editorSyncedBlockProvider = require("@atlaskit/editor-synced-block-provider");
|
|
10
|
+
var SyncedBlockErrorComponent = exports.SyncedBlockErrorComponent = function SyncedBlockErrorComponent(_ref) {
|
|
11
|
+
var status = _ref.status;
|
|
12
|
+
switch (status) {
|
|
13
|
+
case _editorSyncedBlockProvider.SyncBlockStatus.Unauthorized:
|
|
14
|
+
return /*#__PURE__*/_react.default.createElement("div", null, "You don't have permission to view this sync block");
|
|
15
|
+
case _editorSyncedBlockProvider.SyncBlockStatus.NotFound:
|
|
16
|
+
return /*#__PURE__*/_react.default.createElement("div", null, "Sync Block Not Found");
|
|
17
|
+
case _editorSyncedBlockProvider.SyncBlockStatus.Errored:
|
|
18
|
+
default:
|
|
19
|
+
return /*#__PURE__*/_react.default.createElement("div", null, "Something went wrong");
|
|
20
|
+
}
|
|
21
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.SyncedBlockLoadingState = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var SyncedBlockLoadingState = exports.SyncedBlockLoadingState = function SyncedBlockLoadingState() {
|
|
10
|
+
return /*#__PURE__*/_react.default.createElement("div", null, "Loading...");
|
|
11
|
+
};
|
|
@@ -1,26 +1,42 @@
|
|
|
1
1
|
import React, { useEffect, useState } from 'react';
|
|
2
|
-
import { getDefaultSyncBlockSchema } from '@atlaskit/editor-synced-block-provider';
|
|
2
|
+
import { getDefaultSyncBlockSchema, SyncBlockStatus } from '@atlaskit/editor-synced-block-provider';
|
|
3
3
|
import { ReactRenderer } from '@atlaskit/renderer';
|
|
4
4
|
import { RendererActionsContext } from '@atlaskit/renderer/actions';
|
|
5
|
+
import { SyncedBlockErrorComponent } from './ui/SyncedBlockErrorComponent';
|
|
6
|
+
import { SyncedBlockLoadingState } from './ui/SyncedBlockLoadingState';
|
|
5
7
|
const SyncedBlockRenderer = ({
|
|
6
|
-
|
|
8
|
+
useFetchSyncBlockData,
|
|
7
9
|
dataProviders
|
|
8
10
|
}) => {
|
|
9
|
-
const
|
|
11
|
+
const fetchResult = useFetchSyncBlockData();
|
|
12
|
+
if (!fetchResult) {
|
|
13
|
+
return /*#__PURE__*/React.createElement(SyncedBlockLoadingState, null);
|
|
14
|
+
}
|
|
15
|
+
if ('status' in fetchResult) {
|
|
16
|
+
return /*#__PURE__*/React.createElement(SyncedBlockErrorComponent, {
|
|
17
|
+
status: fetchResult.status
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
const syncBlockData = fetchResult;
|
|
21
|
+
const syncBlockDoc = {
|
|
22
|
+
content: syncBlockData.content,
|
|
23
|
+
version: 1,
|
|
24
|
+
type: 'doc'
|
|
25
|
+
};
|
|
10
26
|
return /*#__PURE__*/React.createElement(RendererActionsContext, null, /*#__PURE__*/React.createElement("div", {
|
|
11
27
|
"data-testid": "sync-block-renderer-wrapper"
|
|
12
28
|
}, /*#__PURE__*/React.createElement(ReactRenderer, {
|
|
13
29
|
appearance: "full-width",
|
|
14
30
|
adfStage: "stage0",
|
|
15
31
|
schema: getDefaultSyncBlockSchema(),
|
|
16
|
-
document:
|
|
32
|
+
document: syncBlockDoc,
|
|
17
33
|
disableHeadingIDs: true,
|
|
18
34
|
dataProviders: dataProviders
|
|
19
35
|
})));
|
|
20
36
|
};
|
|
21
37
|
export const getSyncedBlockRenderer = props => {
|
|
22
38
|
return /*#__PURE__*/React.createElement(SyncedBlockRenderer, {
|
|
23
|
-
|
|
39
|
+
useFetchSyncBlockData: props.useFetchSyncBlockData
|
|
24
40
|
});
|
|
25
41
|
};
|
|
26
42
|
|
|
@@ -48,19 +64,30 @@ const SyncBlockNodeComponent = props => {
|
|
|
48
64
|
});
|
|
49
65
|
}, [props.dataPromise, data]);
|
|
50
66
|
if (!data) {
|
|
51
|
-
return /*#__PURE__*/React.createElement(
|
|
67
|
+
return /*#__PURE__*/React.createElement(SyncedBlockLoadingState, null);
|
|
68
|
+
}
|
|
69
|
+
const fetchResult = data.find(item => item.resourceId === props.resourceId);
|
|
70
|
+
if (!fetchResult) {
|
|
71
|
+
return /*#__PURE__*/React.createElement(SyncedBlockErrorComponent, {
|
|
72
|
+
status: SyncBlockStatus.Errored
|
|
73
|
+
});
|
|
52
74
|
}
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
75
|
+
if ('status' in fetchResult) {
|
|
76
|
+
return /*#__PURE__*/React.createElement(SyncedBlockErrorComponent, {
|
|
77
|
+
status: fetchResult.status
|
|
78
|
+
});
|
|
56
79
|
}
|
|
80
|
+
const syncBlockData = fetchResult;
|
|
57
81
|
const syncBlockDoc = {
|
|
58
82
|
content: syncBlockData.content,
|
|
59
83
|
version: 1,
|
|
60
84
|
type: 'doc'
|
|
61
85
|
};
|
|
62
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
63
|
-
"data-
|
|
86
|
+
return /*#__PURE__*/React.createElement(RendererActionsContext, null, /*#__PURE__*/React.createElement("div", {
|
|
87
|
+
"data-sync-block": true,
|
|
88
|
+
"data-testid": "sync-block-renderer-wrapper",
|
|
89
|
+
"data-resource-id": props.resourceId,
|
|
90
|
+
"data-local-id": props.localId
|
|
64
91
|
}, /*#__PURE__*/React.createElement(ReactRenderer, {
|
|
65
92
|
appearance: "full-width",
|
|
66
93
|
adfStage: "stage0",
|
|
@@ -68,7 +95,7 @@ const SyncBlockNodeComponent = props => {
|
|
|
68
95
|
document: syncBlockDoc,
|
|
69
96
|
disableHeadingIDs: true,
|
|
70
97
|
dataProviders: props.providers
|
|
71
|
-
}));
|
|
98
|
+
})));
|
|
72
99
|
};
|
|
73
100
|
export const getSyncBlockNodeComponent = (dataProvider, doc) => {
|
|
74
101
|
const {
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { SyncBlockStatus } from '@atlaskit/editor-synced-block-provider';
|
|
3
|
+
export const SyncedBlockErrorComponent = ({
|
|
4
|
+
status
|
|
5
|
+
}) => {
|
|
6
|
+
switch (status) {
|
|
7
|
+
case SyncBlockStatus.Unauthorized:
|
|
8
|
+
return /*#__PURE__*/React.createElement("div", null, "You don't have permission to view this sync block");
|
|
9
|
+
case SyncBlockStatus.NotFound:
|
|
10
|
+
return /*#__PURE__*/React.createElement("div", null, "Sync Block Not Found");
|
|
11
|
+
case SyncBlockStatus.Errored:
|
|
12
|
+
default:
|
|
13
|
+
return /*#__PURE__*/React.createElement("div", null, "Something went wrong");
|
|
14
|
+
}
|
|
15
|
+
};
|
|
@@ -3,27 +3,43 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
|
3
3
|
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; }
|
|
4
4
|
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; }
|
|
5
5
|
import React, { useEffect, useState } from 'react';
|
|
6
|
-
import { getDefaultSyncBlockSchema } from '@atlaskit/editor-synced-block-provider';
|
|
6
|
+
import { getDefaultSyncBlockSchema, SyncBlockStatus } from '@atlaskit/editor-synced-block-provider';
|
|
7
7
|
import { ReactRenderer } from '@atlaskit/renderer';
|
|
8
8
|
import { RendererActionsContext } from '@atlaskit/renderer/actions';
|
|
9
|
+
import { SyncedBlockErrorComponent } from './ui/SyncedBlockErrorComponent';
|
|
10
|
+
import { SyncedBlockLoadingState } from './ui/SyncedBlockLoadingState';
|
|
9
11
|
var SyncedBlockRenderer = function SyncedBlockRenderer(_ref) {
|
|
10
|
-
var
|
|
12
|
+
var useFetchSyncBlockData = _ref.useFetchSyncBlockData,
|
|
11
13
|
dataProviders = _ref.dataProviders;
|
|
12
|
-
var
|
|
14
|
+
var fetchResult = useFetchSyncBlockData();
|
|
15
|
+
if (!fetchResult) {
|
|
16
|
+
return /*#__PURE__*/React.createElement(SyncedBlockLoadingState, null);
|
|
17
|
+
}
|
|
18
|
+
if ('status' in fetchResult) {
|
|
19
|
+
return /*#__PURE__*/React.createElement(SyncedBlockErrorComponent, {
|
|
20
|
+
status: fetchResult.status
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
var syncBlockData = fetchResult;
|
|
24
|
+
var syncBlockDoc = {
|
|
25
|
+
content: syncBlockData.content,
|
|
26
|
+
version: 1,
|
|
27
|
+
type: 'doc'
|
|
28
|
+
};
|
|
13
29
|
return /*#__PURE__*/React.createElement(RendererActionsContext, null, /*#__PURE__*/React.createElement("div", {
|
|
14
30
|
"data-testid": "sync-block-renderer-wrapper"
|
|
15
31
|
}, /*#__PURE__*/React.createElement(ReactRenderer, {
|
|
16
32
|
appearance: "full-width",
|
|
17
33
|
adfStage: "stage0",
|
|
18
34
|
schema: getDefaultSyncBlockSchema(),
|
|
19
|
-
document:
|
|
35
|
+
document: syncBlockDoc,
|
|
20
36
|
disableHeadingIDs: true,
|
|
21
37
|
dataProviders: dataProviders
|
|
22
38
|
})));
|
|
23
39
|
};
|
|
24
40
|
export var getSyncedBlockRenderer = function getSyncedBlockRenderer(props) {
|
|
25
41
|
return /*#__PURE__*/React.createElement(SyncedBlockRenderer, {
|
|
26
|
-
|
|
42
|
+
useFetchSyncBlockData: props.useFetchSyncBlockData
|
|
27
43
|
});
|
|
28
44
|
};
|
|
29
45
|
|
|
@@ -54,21 +70,32 @@ var SyncBlockNodeComponent = function SyncBlockNodeComponent(props) {
|
|
|
54
70
|
});
|
|
55
71
|
}, [props.dataPromise, data]);
|
|
56
72
|
if (!data) {
|
|
57
|
-
return /*#__PURE__*/React.createElement(
|
|
73
|
+
return /*#__PURE__*/React.createElement(SyncedBlockLoadingState, null);
|
|
58
74
|
}
|
|
59
|
-
var
|
|
75
|
+
var fetchResult = data.find(function (item) {
|
|
60
76
|
return item.resourceId === props.resourceId;
|
|
61
77
|
});
|
|
62
|
-
if (!
|
|
63
|
-
return /*#__PURE__*/React.createElement(
|
|
78
|
+
if (!fetchResult) {
|
|
79
|
+
return /*#__PURE__*/React.createElement(SyncedBlockErrorComponent, {
|
|
80
|
+
status: SyncBlockStatus.Errored
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
if ('status' in fetchResult) {
|
|
84
|
+
return /*#__PURE__*/React.createElement(SyncedBlockErrorComponent, {
|
|
85
|
+
status: fetchResult.status
|
|
86
|
+
});
|
|
64
87
|
}
|
|
88
|
+
var syncBlockData = fetchResult;
|
|
65
89
|
var syncBlockDoc = {
|
|
66
90
|
content: syncBlockData.content,
|
|
67
91
|
version: 1,
|
|
68
92
|
type: 'doc'
|
|
69
93
|
};
|
|
70
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
71
|
-
"data-
|
|
94
|
+
return /*#__PURE__*/React.createElement(RendererActionsContext, null, /*#__PURE__*/React.createElement("div", {
|
|
95
|
+
"data-sync-block": true,
|
|
96
|
+
"data-testid": "sync-block-renderer-wrapper",
|
|
97
|
+
"data-resource-id": props.resourceId,
|
|
98
|
+
"data-local-id": props.localId
|
|
72
99
|
}, /*#__PURE__*/React.createElement(ReactRenderer, {
|
|
73
100
|
appearance: "full-width",
|
|
74
101
|
adfStage: "stage0",
|
|
@@ -76,7 +103,7 @@ var SyncBlockNodeComponent = function SyncBlockNodeComponent(props) {
|
|
|
76
103
|
document: syncBlockDoc,
|
|
77
104
|
disableHeadingIDs: true,
|
|
78
105
|
dataProviders: props.providers
|
|
79
|
-
}));
|
|
106
|
+
})));
|
|
80
107
|
};
|
|
81
108
|
export var getSyncBlockNodeComponent = function getSyncBlockNodeComponent(dataProvider, doc) {
|
|
82
109
|
var content = doc.content;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { SyncBlockStatus } from '@atlaskit/editor-synced-block-provider';
|
|
3
|
+
export var SyncedBlockErrorComponent = function SyncedBlockErrorComponent(_ref) {
|
|
4
|
+
var status = _ref.status;
|
|
5
|
+
switch (status) {
|
|
6
|
+
case SyncBlockStatus.Unauthorized:
|
|
7
|
+
return /*#__PURE__*/React.createElement("div", null, "You don't have permission to view this sync block");
|
|
8
|
+
case SyncBlockStatus.NotFound:
|
|
9
|
+
return /*#__PURE__*/React.createElement("div", null, "Sync Block Not Found");
|
|
10
|
+
case SyncBlockStatus.Errored:
|
|
11
|
+
default:
|
|
12
|
+
return /*#__PURE__*/React.createElement("div", null, "Something went wrong");
|
|
13
|
+
}
|
|
14
|
+
};
|
|
@@ -2,11 +2,11 @@ import React from 'react';
|
|
|
2
2
|
import type { DocNode } from '@atlaskit/adf-schema';
|
|
3
3
|
import type { ProviderFactory } from '@atlaskit/editor-common/provider-factory';
|
|
4
4
|
import type { NodeType, Node as PMNode, Schema } from '@atlaskit/editor-prosemirror/model';
|
|
5
|
-
import { type
|
|
5
|
+
import { type SyncBlockNode, type FetchSyncBlockDataResult } from '@atlaskit/editor-synced-block-provider';
|
|
6
6
|
import type { NodeDataProvider } from '@atlaskit/node-data-provider';
|
|
7
7
|
export type SyncedBlockRendererProps = {
|
|
8
8
|
dataProviders?: ProviderFactory;
|
|
9
|
-
|
|
9
|
+
useFetchSyncBlockData: () => FetchSyncBlockDataResult | null;
|
|
10
10
|
};
|
|
11
11
|
export declare const getSyncedBlockRenderer: (props: SyncedBlockRendererProps) => React.JSX.Element;
|
|
12
12
|
/**
|
|
@@ -35,4 +35,4 @@ export interface NodeMeta {
|
|
|
35
35
|
rendererContext?: RendererContext;
|
|
36
36
|
resourceId?: string;
|
|
37
37
|
}
|
|
38
|
-
export declare const getSyncBlockNodeComponent: (dataProvider: NodeDataProvider<SyncBlockNode,
|
|
38
|
+
export declare const getSyncBlockNodeComponent: (dataProvider: NodeDataProvider<SyncBlockNode, FetchSyncBlockDataResult>, doc: DocNode) => (props: NodeMeta) => React.JSX.Element;
|
|
@@ -2,11 +2,11 @@ import React from 'react';
|
|
|
2
2
|
import type { DocNode } from '@atlaskit/adf-schema';
|
|
3
3
|
import type { ProviderFactory } from '@atlaskit/editor-common/provider-factory';
|
|
4
4
|
import type { NodeType, Node as PMNode, Schema } from '@atlaskit/editor-prosemirror/model';
|
|
5
|
-
import { type
|
|
5
|
+
import { type SyncBlockNode, type FetchSyncBlockDataResult } from '@atlaskit/editor-synced-block-provider';
|
|
6
6
|
import type { NodeDataProvider } from '@atlaskit/node-data-provider';
|
|
7
7
|
export type SyncedBlockRendererProps = {
|
|
8
8
|
dataProviders?: ProviderFactory;
|
|
9
|
-
|
|
9
|
+
useFetchSyncBlockData: () => FetchSyncBlockDataResult | null;
|
|
10
10
|
};
|
|
11
11
|
export declare const getSyncedBlockRenderer: (props: SyncedBlockRendererProps) => React.JSX.Element;
|
|
12
12
|
/**
|
|
@@ -35,4 +35,4 @@ export interface NodeMeta {
|
|
|
35
35
|
rendererContext?: RendererContext;
|
|
36
36
|
resourceId?: string;
|
|
37
37
|
}
|
|
38
|
-
export declare const getSyncBlockNodeComponent: (dataProvider: NodeDataProvider<SyncBlockNode,
|
|
38
|
+
export declare const getSyncBlockNodeComponent: (dataProvider: NodeDataProvider<SyncBlockNode, FetchSyncBlockDataResult>, doc: DocNode) => (props: NodeMeta) => React.JSX.Element;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/editor-synced-block-renderer",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.2",
|
|
4
4
|
"description": "SyncedBlockRenderer for @atlaskit/editor-plugin-synced-block",
|
|
5
5
|
"author": "Atlassian Pty Ltd",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -29,12 +29,12 @@
|
|
|
29
29
|
"atlaskit:src": "src/index.ts",
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"@atlaskit/editor-prosemirror": "7.0.0",
|
|
32
|
-
"@atlaskit/editor-synced-block-provider": "^2.
|
|
33
|
-
"@atlaskit/renderer": "^124.
|
|
32
|
+
"@atlaskit/editor-synced-block-provider": "^2.1.0",
|
|
33
|
+
"@atlaskit/renderer": "^124.9.0",
|
|
34
34
|
"@babel/runtime": "^7.0.0"
|
|
35
35
|
},
|
|
36
36
|
"peerDependencies": {
|
|
37
|
-
"@atlaskit/editor-common": "^110.
|
|
37
|
+
"@atlaskit/editor-common": "^110.18.0",
|
|
38
38
|
"react": "^18.2.0"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"extends": "../../../../tsconfig.entry-points.passionfruit.json",
|
|
3
|
-
"compilerOptions": {
|
|
4
|
-
"target": "es5",
|
|
5
|
-
"outDir": "../../../../../passionfruit/tsDist/@atlaskit__editor-synced-block-renderer/app",
|
|
6
|
-
"rootDir": "../",
|
|
7
|
-
"composite": true
|
|
8
|
-
},
|
|
9
|
-
"include": [
|
|
10
|
-
"../src/**/*.ts",
|
|
11
|
-
"../src/**/*.tsx"
|
|
12
|
-
],
|
|
13
|
-
"exclude": [
|
|
14
|
-
"../src/**/__tests__/*",
|
|
15
|
-
"../src/**/*.test.*",
|
|
16
|
-
"../src/**/test.*",
|
|
17
|
-
"../src/**/examples.*",
|
|
18
|
-
"../src/**/examples/*",
|
|
19
|
-
"../src/**/examples/**/*",
|
|
20
|
-
"../src/**/*.stories.*",
|
|
21
|
-
"../src/**/stories/*",
|
|
22
|
-
"../src/**/stories/**/*"
|
|
23
|
-
],
|
|
24
|
-
"references": [
|
|
25
|
-
{
|
|
26
|
-
"path": "../../editor-synced-block-provider/afm-passionfruit/tsconfig.json"
|
|
27
|
-
},
|
|
28
|
-
{
|
|
29
|
-
"path": "../../renderer/afm-passionfruit/tsconfig.json"
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
"path": "../../editor-common/afm-passionfruit/tsconfig.json"
|
|
33
|
-
}
|
|
34
|
-
]
|
|
35
|
-
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"extends": "../../../../tsconfig.entry-points.rovo-extension.json",
|
|
3
|
-
"compilerOptions": {
|
|
4
|
-
"target": "es5",
|
|
5
|
-
"outDir": "../../../../../rovo-extension/tsDist/@atlaskit__editor-synced-block-renderer/app",
|
|
6
|
-
"rootDir": "../",
|
|
7
|
-
"composite": true
|
|
8
|
-
},
|
|
9
|
-
"include": [
|
|
10
|
-
"../src/**/*.ts",
|
|
11
|
-
"../src/**/*.tsx"
|
|
12
|
-
],
|
|
13
|
-
"exclude": [
|
|
14
|
-
"../src/**/__tests__/*",
|
|
15
|
-
"../src/**/*.test.*",
|
|
16
|
-
"../src/**/test.*",
|
|
17
|
-
"../src/**/examples.*",
|
|
18
|
-
"../src/**/examples/*",
|
|
19
|
-
"../src/**/examples/**/*",
|
|
20
|
-
"../src/**/*.stories.*",
|
|
21
|
-
"../src/**/stories/*",
|
|
22
|
-
"../src/**/stories/**/*"
|
|
23
|
-
],
|
|
24
|
-
"references": [
|
|
25
|
-
{
|
|
26
|
-
"path": "../../editor-synced-block-provider/afm-rovo-extension/tsconfig.json"
|
|
27
|
-
},
|
|
28
|
-
{
|
|
29
|
-
"path": "../../renderer/afm-rovo-extension/tsconfig.json"
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
"path": "../../editor-common/afm-rovo-extension/tsconfig.json"
|
|
33
|
-
}
|
|
34
|
-
]
|
|
35
|
-
}
|