@atlaskit/editor-synced-block-renderer 4.0.7 → 4.0.8

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,16 @@
1
1
  # @atlaskit/editor-synced-block-renderer
2
2
 
3
+ ## 4.0.8
4
+
5
+ ### Patch Changes
6
+
7
+ - [`79172823f4e47`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/79172823f4e47) -
8
+ [ux] EDITOR-3961 strip breakout mark from renderer sync block html
9
+ - [`a4ed9f55162ae`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/a4ed9f55162ae) -
10
+ EDITOR-3960 Refactor Synced Blocks initialization to remove multiple re-renders and duplicated
11
+ fetches
12
+ - Updated dependencies
13
+
3
14
  ## 4.0.7
4
15
 
5
16
  ### Patch Changes
package/dist/cjs/index.js CHANGED
@@ -3,10 +3,10 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- Object.defineProperty(exports, "getSyncedBlockNodeComponent", {
6
+ Object.defineProperty(exports, "getSyncBlockNodesFromDoc", {
7
7
  enumerable: true,
8
8
  get: function get() {
9
- return _getSyncedBlockNodeComponent.getSyncedBlockNodeComponent;
9
+ return _useSyncedBlockNodeComponent.getSyncBlockNodesFromDoc;
10
10
  }
11
11
  });
12
12
  Object.defineProperty(exports, "getSyncedBlockRenderer", {
@@ -15,5 +15,11 @@ Object.defineProperty(exports, "getSyncedBlockRenderer", {
15
15
  return _getSyncedBlockRenderer.getSyncedBlockRenderer;
16
16
  }
17
17
  });
18
- var _getSyncedBlockNodeComponent = require("./getSyncedBlockNodeComponent");
18
+ Object.defineProperty(exports, "useMemoizedSyncedBlockNodeComponent", {
19
+ enumerable: true,
20
+ get: function get() {
21
+ return _useSyncedBlockNodeComponent.useMemoizedSyncedBlockNodeComponent;
22
+ }
23
+ });
24
+ var _useSyncedBlockNodeComponent = require("./useSyncedBlockNodeComponent");
19
25
  var _getSyncedBlockRenderer = require("./getSyncedBlockRenderer");
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.SyncedBlockNodeComponentRenderer = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
8
10
  var _react = _interopRequireDefault(require("react"));
9
11
  var _syncBlock = require("@atlaskit/editor-common/sync-block");
10
12
  var _editorSyncedBlockProvider = require("@atlaskit/editor-synced-block-provider");
@@ -42,16 +44,13 @@ var SyncedBlockNodeComponentRenderer = exports.SyncedBlockNodeComponentRenderer
42
44
  version: 1,
43
45
  type: 'doc'
44
46
  };
45
- return (
46
- /*#__PURE__*/
47
+ return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
47
48
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
48
- _react.default.createElement("div", {
49
- className: _syncBlock.SyncBlockSharedCssClassName.renderer,
50
- "data-sync-block-renderer": true
51
- }, /*#__PURE__*/_react.default.createElement(_AKRendererWrapper.AKRendererWrapper, {
52
- doc: syncBlockDoc,
53
- dataProviders: providerFactory,
54
- options: rendererOptions
55
- }))
56
- );
49
+ className: _syncBlock.SyncBlockSharedCssClassName.renderer
50
+ // eslint-disable-next-line react/jsx-props-no-spreading
51
+ }, (0, _defineProperty2.default)({}, _syncBlock.SyncBlockRendererDataAttributeName, true)), /*#__PURE__*/_react.default.createElement(_AKRendererWrapper.AKRendererWrapper, {
52
+ doc: syncBlockDoc,
53
+ dataProviders: providerFactory,
54
+ options: rendererOptions
55
+ }));
57
56
  };
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.useMemoizedSyncedBlockNodeComponent = exports.getSyncBlockNodesFromDoc = void 0;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _editorSyncedBlockProvider = require("@atlaskit/editor-synced-block-provider");
10
+ var _SyncedBlockNodeComponentRenderer = require("./ui/SyncedBlockNodeComponentRenderer");
11
+ 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); }
12
+ var getSyncBlockNodesFromDoc = exports.getSyncBlockNodesFromDoc = function getSyncBlockNodesFromDoc(doc) {
13
+ var content = doc.content;
14
+ var isEmpty = !content || !Array.isArray(content) || content.length === 0;
15
+ var syncBlockNodes = isEmpty ? [] : content.map(function (node) {
16
+ return (0, _editorSyncedBlockProvider.convertSyncBlockJSONNodeToSyncBlockNode)(node);
17
+ }).filter(function (node) {
18
+ return node !== undefined;
19
+ });
20
+ return syncBlockNodes;
21
+ };
22
+ var useMemoizedSyncedBlockNodeComponent = exports.useMemoizedSyncedBlockNodeComponent = function useMemoizedSyncedBlockNodeComponent(_ref) {
23
+ var syncBlockNodes = _ref.syncBlockNodes,
24
+ syncBlockProvider = _ref.syncBlockProvider,
25
+ syncBlockRendererOptions = _ref.syncBlockRendererOptions,
26
+ fireAnalyticsEvent = _ref.fireAnalyticsEvent;
27
+ var syncBlockStoreManager = (0, _editorSyncedBlockProvider.useMemoizedSyncBlockStoreManager)(syncBlockProvider, fireAnalyticsEvent);
28
+
29
+ // Initial fetch sync block data
30
+ (0, _react.useEffect)(function () {
31
+ syncBlockStoreManager.referenceManager.fetchSyncBlocksData(syncBlockNodes);
32
+ }, [syncBlockNodes, syncBlockStoreManager.referenceManager]);
33
+ return (0, _react.useCallback)(function (props) {
34
+ return /*#__PURE__*/_react.default.createElement(_SyncedBlockNodeComponentRenderer.SyncedBlockNodeComponentRenderer, {
35
+ key: props.localId,
36
+ nodeProps: props,
37
+ syncBlockStoreManager: syncBlockStoreManager,
38
+ rendererOptions: syncBlockRendererOptions
39
+ });
40
+ }, [syncBlockStoreManager, syncBlockRendererOptions]);
41
+ };
@@ -1,3 +1,3 @@
1
1
  /* eslint-disable @atlaskit/editor/no-re-export */
2
- export { getSyncedBlockNodeComponent } from './getSyncedBlockNodeComponent';
2
+ export { useMemoizedSyncedBlockNodeComponent, getSyncBlockNodesFromDoc } from './useSyncedBlockNodeComponent';
3
3
  export { getSyncedBlockRenderer } from './getSyncedBlockRenderer';
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { SyncBlockSharedCssClassName } from '@atlaskit/editor-common/sync-block';
2
+ import { SyncBlockSharedCssClassName, SyncBlockRendererDataAttributeName } from '@atlaskit/editor-common/sync-block';
3
3
  import { SyncBlockError, useFetchSyncBlockData } from '@atlaskit/editor-synced-block-provider';
4
4
  import { AKRendererWrapper } from './AKRendererWrapper';
5
5
  import { SyncedBlockErrorComponent } from './SyncedBlockErrorComponent';
@@ -39,16 +39,15 @@ export const SyncedBlockNodeComponentRenderer = ({
39
39
  version: 1,
40
40
  type: 'doc'
41
41
  };
42
- return (
43
- /*#__PURE__*/
42
+ return /*#__PURE__*/React.createElement("div", {
44
43
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
45
- React.createElement("div", {
46
- className: SyncBlockSharedCssClassName.renderer,
47
- "data-sync-block-renderer": true
48
- }, /*#__PURE__*/React.createElement(AKRendererWrapper, {
49
- doc: syncBlockDoc,
50
- dataProviders: providerFactory,
51
- options: rendererOptions
52
- }))
53
- );
44
+ className: SyncBlockSharedCssClassName.renderer
45
+ // eslint-disable-next-line react/jsx-props-no-spreading
46
+ ,
47
+ [SyncBlockRendererDataAttributeName]: true
48
+ }, /*#__PURE__*/React.createElement(AKRendererWrapper, {
49
+ doc: syncBlockDoc,
50
+ dataProviders: providerFactory,
51
+ options: rendererOptions
52
+ }));
54
53
  };
@@ -0,0 +1,30 @@
1
+ import React, { useCallback, useEffect } from 'react';
2
+ import { convertSyncBlockJSONNodeToSyncBlockNode, useMemoizedSyncBlockStoreManager } from '@atlaskit/editor-synced-block-provider';
3
+ import { SyncedBlockNodeComponentRenderer } from './ui/SyncedBlockNodeComponentRenderer';
4
+ export const getSyncBlockNodesFromDoc = doc => {
5
+ const {
6
+ content
7
+ } = doc;
8
+ const isEmpty = !content || !Array.isArray(content) || content.length === 0;
9
+ const syncBlockNodes = isEmpty ? [] : content.map(node => convertSyncBlockJSONNodeToSyncBlockNode(node)).filter(node => node !== undefined);
10
+ return syncBlockNodes;
11
+ };
12
+ export const useMemoizedSyncedBlockNodeComponent = ({
13
+ syncBlockNodes,
14
+ syncBlockProvider,
15
+ syncBlockRendererOptions,
16
+ fireAnalyticsEvent
17
+ }) => {
18
+ const syncBlockStoreManager = useMemoizedSyncBlockStoreManager(syncBlockProvider, fireAnalyticsEvent);
19
+
20
+ // Initial fetch sync block data
21
+ useEffect(() => {
22
+ syncBlockStoreManager.referenceManager.fetchSyncBlocksData(syncBlockNodes);
23
+ }, [syncBlockNodes, syncBlockStoreManager.referenceManager]);
24
+ return useCallback(props => /*#__PURE__*/React.createElement(SyncedBlockNodeComponentRenderer, {
25
+ key: props.localId,
26
+ nodeProps: props,
27
+ syncBlockStoreManager: syncBlockStoreManager,
28
+ rendererOptions: syncBlockRendererOptions
29
+ }), [syncBlockStoreManager, syncBlockRendererOptions]);
30
+ };
package/dist/esm/index.js CHANGED
@@ -1,3 +1,3 @@
1
1
  /* eslint-disable @atlaskit/editor/no-re-export */
2
- export { getSyncedBlockNodeComponent } from './getSyncedBlockNodeComponent';
2
+ export { useMemoizedSyncedBlockNodeComponent, getSyncBlockNodesFromDoc } from './useSyncedBlockNodeComponent';
3
3
  export { getSyncedBlockRenderer } from './getSyncedBlockRenderer';
@@ -1,5 +1,7 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
1
3
  import React from 'react';
2
- import { SyncBlockSharedCssClassName } from '@atlaskit/editor-common/sync-block';
4
+ import { SyncBlockSharedCssClassName, SyncBlockRendererDataAttributeName } from '@atlaskit/editor-common/sync-block';
3
5
  import { SyncBlockError, useFetchSyncBlockData } from '@atlaskit/editor-synced-block-provider';
4
6
  import { AKRendererWrapper } from './AKRendererWrapper';
5
7
  import { SyncedBlockErrorComponent } from './SyncedBlockErrorComponent';
@@ -35,16 +37,13 @@ export var SyncedBlockNodeComponentRenderer = function SyncedBlockNodeComponentR
35
37
  version: 1,
36
38
  type: 'doc'
37
39
  };
38
- return (
39
- /*#__PURE__*/
40
+ return /*#__PURE__*/React.createElement("div", _extends({
40
41
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
41
- React.createElement("div", {
42
- className: SyncBlockSharedCssClassName.renderer,
43
- "data-sync-block-renderer": true
44
- }, /*#__PURE__*/React.createElement(AKRendererWrapper, {
45
- doc: syncBlockDoc,
46
- dataProviders: providerFactory,
47
- options: rendererOptions
48
- }))
49
- );
42
+ className: SyncBlockSharedCssClassName.renderer
43
+ // eslint-disable-next-line react/jsx-props-no-spreading
44
+ }, _defineProperty({}, SyncBlockRendererDataAttributeName, true)), /*#__PURE__*/React.createElement(AKRendererWrapper, {
45
+ doc: syncBlockDoc,
46
+ dataProviders: providerFactory,
47
+ options: rendererOptions
48
+ }));
50
49
  };
@@ -0,0 +1,33 @@
1
+ import React, { useCallback, useEffect } from 'react';
2
+ import { convertSyncBlockJSONNodeToSyncBlockNode, useMemoizedSyncBlockStoreManager } from '@atlaskit/editor-synced-block-provider';
3
+ import { SyncedBlockNodeComponentRenderer } from './ui/SyncedBlockNodeComponentRenderer';
4
+ export var getSyncBlockNodesFromDoc = function getSyncBlockNodesFromDoc(doc) {
5
+ var content = doc.content;
6
+ var isEmpty = !content || !Array.isArray(content) || content.length === 0;
7
+ var syncBlockNodes = isEmpty ? [] : content.map(function (node) {
8
+ return convertSyncBlockJSONNodeToSyncBlockNode(node);
9
+ }).filter(function (node) {
10
+ return node !== undefined;
11
+ });
12
+ return syncBlockNodes;
13
+ };
14
+ export var useMemoizedSyncedBlockNodeComponent = function useMemoizedSyncedBlockNodeComponent(_ref) {
15
+ var syncBlockNodes = _ref.syncBlockNodes,
16
+ syncBlockProvider = _ref.syncBlockProvider,
17
+ syncBlockRendererOptions = _ref.syncBlockRendererOptions,
18
+ fireAnalyticsEvent = _ref.fireAnalyticsEvent;
19
+ var syncBlockStoreManager = useMemoizedSyncBlockStoreManager(syncBlockProvider, fireAnalyticsEvent);
20
+
21
+ // Initial fetch sync block data
22
+ useEffect(function () {
23
+ syncBlockStoreManager.referenceManager.fetchSyncBlocksData(syncBlockNodes);
24
+ }, [syncBlockNodes, syncBlockStoreManager.referenceManager]);
25
+ return useCallback(function (props) {
26
+ return /*#__PURE__*/React.createElement(SyncedBlockNodeComponentRenderer, {
27
+ key: props.localId,
28
+ nodeProps: props,
29
+ syncBlockStoreManager: syncBlockStoreManager,
30
+ rendererOptions: syncBlockRendererOptions
31
+ });
32
+ }, [syncBlockStoreManager, syncBlockRendererOptions]);
33
+ };
@@ -1,2 +1,3 @@
1
- export { getSyncedBlockNodeComponent } from './getSyncedBlockNodeComponent';
1
+ export { useMemoizedSyncedBlockNodeComponent, getSyncBlockNodesFromDoc, } from './useSyncedBlockNodeComponent';
2
2
  export { getSyncedBlockRenderer } from './getSyncedBlockRenderer';
3
+ export type { SyncedBlockNodeProps } from './ui/SyncedBlockNodeComponentRenderer';
@@ -1,14 +1,16 @@
1
- import type React from 'react';
1
+ import React from 'react';
2
2
  import type { DocNode } from '@atlaskit/adf-schema';
3
3
  import type { SyncBlockEventPayload } from '@atlaskit/editor-common/analytics';
4
+ import { type SyncBlockNode } from '@atlaskit/editor-synced-block-provider';
4
5
  import type { SyncedBlockProvider } from '@atlaskit/editor-synced-block-provider';
5
6
  import type { SyncedBlockRendererOptions } from './types';
6
7
  import { type SyncedBlockNodeProps } from './ui/SyncedBlockNodeComponentRenderer';
7
8
  type GetSyncedBlockNodeComponentProps = {
8
- doc: DocNode;
9
9
  fireAnalyticsEvent?: (payload: SyncBlockEventPayload) => void;
10
+ syncBlockNodes: SyncBlockNode[];
10
11
  syncBlockProvider: SyncedBlockProvider;
11
12
  syncBlockRendererOptions: SyncedBlockRendererOptions | undefined;
12
13
  };
13
- export declare const getSyncedBlockNodeComponent: ({ doc, syncBlockProvider, syncBlockRendererOptions, fireAnalyticsEvent, }: GetSyncedBlockNodeComponentProps) => ((props: SyncedBlockNodeProps) => React.JSX.Element);
14
+ export declare const getSyncBlockNodesFromDoc: (doc: DocNode) => SyncBlockNode[];
15
+ export declare const useMemoizedSyncedBlockNodeComponent: ({ syncBlockNodes, syncBlockProvider, syncBlockRendererOptions, fireAnalyticsEvent, }: GetSyncedBlockNodeComponentProps) => ((props: SyncedBlockNodeProps) => React.JSX.Element);
14
16
  export {};
@@ -1,2 +1,3 @@
1
- export { getSyncedBlockNodeComponent } from './getSyncedBlockNodeComponent';
1
+ export { useMemoizedSyncedBlockNodeComponent, getSyncBlockNodesFromDoc, } from './useSyncedBlockNodeComponent';
2
2
  export { getSyncedBlockRenderer } from './getSyncedBlockRenderer';
3
+ export type { SyncedBlockNodeProps } from './ui/SyncedBlockNodeComponentRenderer';
@@ -1,14 +1,16 @@
1
- import type React from 'react';
1
+ import React from 'react';
2
2
  import type { DocNode } from '@atlaskit/adf-schema';
3
3
  import type { SyncBlockEventPayload } from '@atlaskit/editor-common/analytics';
4
+ import { type SyncBlockNode } from '@atlaskit/editor-synced-block-provider';
4
5
  import type { SyncedBlockProvider } from '@atlaskit/editor-synced-block-provider';
5
6
  import type { SyncedBlockRendererOptions } from './types';
6
7
  import { type SyncedBlockNodeProps } from './ui/SyncedBlockNodeComponentRenderer';
7
8
  type GetSyncedBlockNodeComponentProps = {
8
- doc: DocNode;
9
9
  fireAnalyticsEvent?: (payload: SyncBlockEventPayload) => void;
10
+ syncBlockNodes: SyncBlockNode[];
10
11
  syncBlockProvider: SyncedBlockProvider;
11
12
  syncBlockRendererOptions: SyncedBlockRendererOptions | undefined;
12
13
  };
13
- export declare const getSyncedBlockNodeComponent: ({ doc, syncBlockProvider, syncBlockRendererOptions, fireAnalyticsEvent, }: GetSyncedBlockNodeComponentProps) => ((props: SyncedBlockNodeProps) => React.JSX.Element);
14
+ export declare const getSyncBlockNodesFromDoc: (doc: DocNode) => SyncBlockNode[];
15
+ export declare const useMemoizedSyncedBlockNodeComponent: ({ syncBlockNodes, syncBlockProvider, syncBlockRendererOptions, fireAnalyticsEvent, }: GetSyncedBlockNodeComponentProps) => ((props: SyncedBlockNodeProps) => React.JSX.Element);
14
16
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-synced-block-renderer",
3
- "version": "4.0.7",
3
+ "version": "4.0.8",
4
4
  "description": "SyncedBlockRenderer for @atlaskit/editor-plugin-synced-block",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "license": "Apache-2.0",
@@ -28,7 +28,7 @@
28
28
  "sideEffects": false,
29
29
  "atlaskit:src": "src/index.ts",
30
30
  "dependencies": {
31
- "@atlaskit/button": "^23.8.0",
31
+ "@atlaskit/button": "^23.9.0",
32
32
  "@atlaskit/css": "^0.18.0",
33
33
  "@atlaskit/editor-plugin-synced-block": "^4.6.0",
34
34
  "@atlaskit/editor-synced-block-provider": "^2.15.0",
@@ -1,37 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getSyncedBlockNodeComponent = void 0;
7
- var _editorSyncedBlockProvider = require("@atlaskit/editor-synced-block-provider");
8
- var _SyncedBlockNodeComponentRenderer = require("./ui/SyncedBlockNodeComponentRenderer");
9
- var getSyncBlockNodesFromContent = function getSyncBlockNodesFromContent(content) {
10
- return content.map(function (node) {
11
- return (0, _editorSyncedBlockProvider.convertSyncBlockJSONNodeToSyncBlockNode)(node);
12
- }).filter(function (node) {
13
- return node !== undefined;
14
- });
15
- };
16
-
17
- // For rendering reference synced block nodes in Renderer
18
- var getSyncedBlockNodeComponent = exports.getSyncedBlockNodeComponent = function getSyncedBlockNodeComponent(_ref) {
19
- var doc = _ref.doc,
20
- syncBlockProvider = _ref.syncBlockProvider,
21
- syncBlockRendererOptions = _ref.syncBlockRendererOptions,
22
- fireAnalyticsEvent = _ref.fireAnalyticsEvent;
23
- var content = doc.content;
24
- var isEmpty = !content || !Array.isArray(content) || content.length === 0;
25
- var syncBlockNodes = isEmpty ? [] : getSyncBlockNodesFromContent(content);
26
- var syncBlockStoreManager = new _editorSyncedBlockProvider.SyncBlockStoreManager(syncBlockProvider, fireAnalyticsEvent);
27
-
28
- // Pre-fetch sync block data
29
- syncBlockStoreManager.referenceManager.fetchSyncBlocksData(syncBlockNodes);
30
- return function (props) {
31
- return (0, _SyncedBlockNodeComponentRenderer.SyncedBlockNodeComponentRenderer)({
32
- nodeProps: props,
33
- syncBlockStoreManager: syncBlockStoreManager,
34
- rendererOptions: syncBlockRendererOptions
35
- });
36
- };
37
- };
@@ -1,28 +0,0 @@
1
- import { convertSyncBlockJSONNodeToSyncBlockNode, SyncBlockStoreManager } from '@atlaskit/editor-synced-block-provider';
2
- import { SyncedBlockNodeComponentRenderer } from './ui/SyncedBlockNodeComponentRenderer';
3
- const getSyncBlockNodesFromContent = content => {
4
- return content.map(node => convertSyncBlockJSONNodeToSyncBlockNode(node)).filter(node => node !== undefined);
5
- };
6
-
7
- // For rendering reference synced block nodes in Renderer
8
- export const getSyncedBlockNodeComponent = ({
9
- doc,
10
- syncBlockProvider,
11
- syncBlockRendererOptions,
12
- fireAnalyticsEvent
13
- }) => {
14
- const {
15
- content
16
- } = doc;
17
- const isEmpty = !content || !Array.isArray(content) || content.length === 0;
18
- const syncBlockNodes = isEmpty ? [] : getSyncBlockNodesFromContent(content);
19
- const syncBlockStoreManager = new SyncBlockStoreManager(syncBlockProvider, fireAnalyticsEvent);
20
-
21
- // Pre-fetch sync block data
22
- syncBlockStoreManager.referenceManager.fetchSyncBlocksData(syncBlockNodes);
23
- return props => SyncedBlockNodeComponentRenderer({
24
- nodeProps: props,
25
- syncBlockStoreManager,
26
- rendererOptions: syncBlockRendererOptions
27
- });
28
- };
@@ -1,31 +0,0 @@
1
- import { convertSyncBlockJSONNodeToSyncBlockNode, SyncBlockStoreManager } from '@atlaskit/editor-synced-block-provider';
2
- import { SyncedBlockNodeComponentRenderer } from './ui/SyncedBlockNodeComponentRenderer';
3
- var getSyncBlockNodesFromContent = function getSyncBlockNodesFromContent(content) {
4
- return content.map(function (node) {
5
- return convertSyncBlockJSONNodeToSyncBlockNode(node);
6
- }).filter(function (node) {
7
- return node !== undefined;
8
- });
9
- };
10
-
11
- // For rendering reference synced block nodes in Renderer
12
- export var getSyncedBlockNodeComponent = function getSyncedBlockNodeComponent(_ref) {
13
- var doc = _ref.doc,
14
- syncBlockProvider = _ref.syncBlockProvider,
15
- syncBlockRendererOptions = _ref.syncBlockRendererOptions,
16
- fireAnalyticsEvent = _ref.fireAnalyticsEvent;
17
- var content = doc.content;
18
- var isEmpty = !content || !Array.isArray(content) || content.length === 0;
19
- var syncBlockNodes = isEmpty ? [] : getSyncBlockNodesFromContent(content);
20
- var syncBlockStoreManager = new SyncBlockStoreManager(syncBlockProvider, fireAnalyticsEvent);
21
-
22
- // Pre-fetch sync block data
23
- syncBlockStoreManager.referenceManager.fetchSyncBlocksData(syncBlockNodes);
24
- return function (props) {
25
- return SyncedBlockNodeComponentRenderer({
26
- nodeProps: props,
27
- syncBlockStoreManager: syncBlockStoreManager,
28
- rendererOptions: syncBlockRendererOptions
29
- });
30
- };
31
- };