@kids-reporter/draft-renderer 1.0.4 → 1.0.6
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/lib/draft-renderer.js +31 -16
- package/lib/entity-decorators/anchor.js +5 -12
- package/lib/entity-decorators/annotation-decorator.js +6 -11
- package/lib/entity-decorators/index.js +2 -13
- package/lib/entity-decorators/link-decorator.js +28 -16
- package/lib/entity-decorators/toc-anchor.js +25 -0
- package/lib/index.js +11 -10
- package/lib/utils/entity.js +22 -0
- package/package.json +1 -1
package/lib/draft-renderer.js
CHANGED
|
@@ -3,11 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.ArticleBodyDraftRenderer = void 0;
|
|
7
|
-
|
|
8
|
-
exports.DraftRenderer = DraftRenderer;
|
|
9
|
-
exports.ProjectContentDraftRenderer = ProjectContentDraftRenderer;
|
|
10
|
-
var _react = _interopRequireDefault(require("react"));
|
|
6
|
+
exports.ProjectContentDraftRenderer = exports.DraftRenderer = exports.ArticleIntroductionDraftRenderer = exports.ArticleBodyDraftRenderer = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
8
|
var _index = _interopRequireDefault(require("./block-render-maps/index"));
|
|
12
9
|
var _draftJs = require("draft-js");
|
|
13
10
|
var _index2 = require("./utils/index");
|
|
@@ -16,6 +13,8 @@ var _blockRendererFn = require("./block-renderer-fn");
|
|
|
16
13
|
var _customStyleFn = require("./custom-style-fn");
|
|
17
14
|
var _entityDecorators = require("./entity-decorators");
|
|
18
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
16
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
17
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
19
18
|
const blockRendererFn = block => {
|
|
20
19
|
const atomicBlockObj = (0, _blockRendererFn.atomicBlockRenderer)(block);
|
|
21
20
|
return atomicBlockObj;
|
|
@@ -25,17 +24,30 @@ var FontSizeLevel = /*#__PURE__*/function (FontSizeLevel) {
|
|
|
25
24
|
FontSizeLevel["LARGE"] = "large";
|
|
26
25
|
return FontSizeLevel;
|
|
27
26
|
}(FontSizeLevel || {});
|
|
28
|
-
|
|
27
|
+
const DraftRenderer = ({
|
|
29
28
|
rawContentState,
|
|
30
29
|
themeColor = _index2.ThemeColorEnum.RED,
|
|
31
|
-
fontSizeLevel = FontSizeLevel.NORMAL
|
|
32
|
-
|
|
30
|
+
fontSizeLevel = FontSizeLevel.NORMAL,
|
|
31
|
+
initiallyScrollTo = '',
|
|
32
|
+
offsetTop = 0
|
|
33
|
+
}) => {
|
|
33
34
|
const contentState = (0, _draftJs.convertFromRaw)(rawContentState);
|
|
34
35
|
const editorState = _draftJs.EditorState.createWithContent(contentState, _entityDecorators.decorator);
|
|
36
|
+
const scrollToElement = hash => {
|
|
37
|
+
const anchor = document.querySelector(hash);
|
|
38
|
+
anchor && window.scrollTo({
|
|
39
|
+
top: anchor.offsetTop - offsetTop,
|
|
40
|
+
behavior: 'instant'
|
|
41
|
+
});
|
|
42
|
+
};
|
|
43
|
+
(0, _react.useEffect)(() => {
|
|
44
|
+
initiallyScrollTo && scrollToElement(initiallyScrollTo);
|
|
45
|
+
}, []);
|
|
35
46
|
return /*#__PURE__*/_react.default.createElement(_styledComponents.ThemeProvider, {
|
|
36
47
|
theme: {
|
|
37
48
|
themeColor,
|
|
38
|
-
fontSizeLevel
|
|
49
|
+
fontSizeLevel,
|
|
50
|
+
offsetTop
|
|
39
51
|
}
|
|
40
52
|
}, /*#__PURE__*/_react.default.createElement(_draftJs.Editor, {
|
|
41
53
|
editorState: editorState,
|
|
@@ -47,13 +59,14 @@ function DraftRenderer({
|
|
|
47
59
|
,
|
|
48
60
|
onChange: () => {}
|
|
49
61
|
}));
|
|
50
|
-
}
|
|
62
|
+
};
|
|
63
|
+
exports.DraftRenderer = DraftRenderer;
|
|
51
64
|
const ArticleBodyDraftRenderer = exports.ArticleBodyDraftRenderer = DraftRenderer;
|
|
52
|
-
|
|
65
|
+
const ArticleIntroductionDraftRenderer = ({
|
|
53
66
|
rawContentState,
|
|
54
67
|
themeColor = _index2.ThemeColorEnum.RED,
|
|
55
68
|
fontSizeLevel = FontSizeLevel.NORMAL
|
|
56
|
-
}) {
|
|
69
|
+
}) => {
|
|
57
70
|
const contentState = (0, _draftJs.convertFromRaw)(rawContentState);
|
|
58
71
|
const editorState = _draftJs.EditorState.createWithContent(contentState, _entityDecorators.decorator);
|
|
59
72
|
return /*#__PURE__*/_react.default.createElement(_styledComponents.ThemeProvider, {
|
|
@@ -70,12 +83,13 @@ function ArticleIntroductionDraftRenderer({
|
|
|
70
83
|
,
|
|
71
84
|
onChange: () => {}
|
|
72
85
|
}));
|
|
73
|
-
}
|
|
74
|
-
|
|
86
|
+
};
|
|
87
|
+
exports.ArticleIntroductionDraftRenderer = ArticleIntroductionDraftRenderer;
|
|
88
|
+
const ProjectContentDraftRenderer = ({
|
|
75
89
|
rawContentState,
|
|
76
90
|
themeColor = _index2.ThemeColorEnum.BLUE,
|
|
77
91
|
fontSizeLevel = FontSizeLevel.NORMAL
|
|
78
|
-
}) {
|
|
92
|
+
}) => {
|
|
79
93
|
const contentState = (0, _draftJs.convertFromRaw)(rawContentState);
|
|
80
94
|
const editorState = _draftJs.EditorState.createWithContent(contentState, _entityDecorators.decorator);
|
|
81
95
|
return /*#__PURE__*/_react.default.createElement(_styledComponents.ThemeProvider, {
|
|
@@ -93,4 +107,5 @@ function ProjectContentDraftRenderer({
|
|
|
93
107
|
,
|
|
94
108
|
onChange: () => {}
|
|
95
109
|
}));
|
|
96
|
-
}
|
|
110
|
+
};
|
|
111
|
+
exports.ProjectContentDraftRenderer = ProjectContentDraftRenderer;
|
|
@@ -3,17 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.anchorDecorator = void 0;
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _entity = require("../utils/entity");
|
|
8
9
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
9
|
-
const ANCHOR_ENTITY_TYPE = exports.ANCHOR_ENTITY_TYPE = 'TOC_ANCHOR';
|
|
10
|
-
const findAnchorEntities = (contentBlock, callback, contentState) => {
|
|
11
|
-
contentBlock.findEntityRanges(character => {
|
|
12
|
-
const entityKey = character.getEntity();
|
|
13
|
-
return entityKey !== null && contentState.getEntity(entityKey).getType() === ANCHOR_ENTITY_TYPE;
|
|
14
|
-
}, callback);
|
|
15
|
-
};
|
|
16
|
-
exports.findAnchorEntities = findAnchorEntities;
|
|
17
10
|
const Anchor = props => {
|
|
18
11
|
var _contentState$getEnti;
|
|
19
12
|
const {
|
|
@@ -21,12 +14,12 @@ const Anchor = props => {
|
|
|
21
14
|
contentState,
|
|
22
15
|
entityKey
|
|
23
16
|
} = props;
|
|
24
|
-
const
|
|
17
|
+
const id = contentState === null || contentState === void 0 || (_contentState$getEnti = contentState.getEntity(entityKey)) === null || _contentState$getEnti === void 0 || (_contentState$getEnti = _contentState$getEnti.getData()) === null || _contentState$getEnti === void 0 ? void 0 : _contentState$getEnti.anchorID;
|
|
25
18
|
return /*#__PURE__*/_react.default.createElement("span", {
|
|
26
|
-
id:
|
|
19
|
+
id: id
|
|
27
20
|
}, children);
|
|
28
21
|
};
|
|
29
22
|
const anchorDecorator = exports.anchorDecorator = {
|
|
30
|
-
strategy:
|
|
23
|
+
strategy: (0, _entity.findEntitiesByType)(_entity.ENTITY.Anchor),
|
|
31
24
|
component: Anchor
|
|
32
25
|
};
|
|
@@ -7,8 +7,9 @@ exports.annotationDecorator = void 0;
|
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
9
9
|
var _draftJs = require("draft-js");
|
|
10
|
-
var
|
|
11
|
-
var
|
|
10
|
+
var _blockRenderMaps = _interopRequireDefault(require("../block-render-maps"));
|
|
11
|
+
var _entityDecorators = require("../entity-decorators");
|
|
12
|
+
var _entity = require("../utils/entity");
|
|
12
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
14
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
14
15
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -71,7 +72,7 @@ function AnnotationBlock(props) {
|
|
|
71
72
|
rawContentState
|
|
72
73
|
} = props.contentState.getEntity(props.entityKey).getData();
|
|
73
74
|
const contentState = (0, _draftJs.convertFromRaw)(rawContentState);
|
|
74
|
-
const editorState = _draftJs.EditorState.createWithContent(contentState,
|
|
75
|
+
const editorState = _draftJs.EditorState.createWithContent(contentState, _entityDecorators.decorator);
|
|
75
76
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(AnnotationWrapper, {
|
|
76
77
|
onClick: e => {
|
|
77
78
|
e.preventDefault();
|
|
@@ -81,20 +82,14 @@ function AnnotationBlock(props) {
|
|
|
81
82
|
$showContent: showContent
|
|
82
83
|
})), showContent ? /*#__PURE__*/_react.default.createElement(AnnotationBody, null, /*#__PURE__*/_react.default.createElement(_draftJs.Editor, {
|
|
83
84
|
editorState: editorState,
|
|
84
|
-
blockRenderMap:
|
|
85
|
+
blockRenderMap: _blockRenderMaps.default.annotation,
|
|
85
86
|
readOnly: true
|
|
86
87
|
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
87
88
|
,
|
|
88
89
|
onChange: () => {}
|
|
89
90
|
})) : null);
|
|
90
91
|
}
|
|
91
|
-
function findAnnotationEntities(contentBlock, callback, contentState) {
|
|
92
|
-
contentBlock.findEntityRanges(character => {
|
|
93
|
-
const entityKey = character.getEntity();
|
|
94
|
-
return entityKey !== null && contentState.getEntity(entityKey).getType() === 'ANNOTATION';
|
|
95
|
-
}, callback);
|
|
96
|
-
}
|
|
97
92
|
const annotationDecorator = exports.annotationDecorator = {
|
|
98
|
-
strategy:
|
|
93
|
+
strategy: (0, _entity.findEntitiesByType)(_entity.ENTITY.Annotation),
|
|
99
94
|
component: AnnotationBlock
|
|
100
95
|
};
|
|
@@ -3,12 +3,6 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
Object.defineProperty(exports, "ANCHOR_ENTITY_TYPE", {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: function () {
|
|
9
|
-
return _anchor.ANCHOR_ENTITY_TYPE;
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
6
|
Object.defineProperty(exports, "annotationDecorator", {
|
|
13
7
|
enumerable: true,
|
|
14
8
|
get: function () {
|
|
@@ -16,12 +10,6 @@ Object.defineProperty(exports, "annotationDecorator", {
|
|
|
16
10
|
}
|
|
17
11
|
});
|
|
18
12
|
exports.decorator = void 0;
|
|
19
|
-
Object.defineProperty(exports, "findAnchorEntities", {
|
|
20
|
-
enumerable: true,
|
|
21
|
-
get: function () {
|
|
22
|
-
return _anchor.findAnchorEntities;
|
|
23
|
-
}
|
|
24
|
-
});
|
|
25
13
|
Object.defineProperty(exports, "linkDecorator", {
|
|
26
14
|
enumerable: true,
|
|
27
15
|
get: function () {
|
|
@@ -31,5 +19,6 @@ Object.defineProperty(exports, "linkDecorator", {
|
|
|
31
19
|
var _draftJs = require("draft-js");
|
|
32
20
|
var _annotationDecorator = require("./annotation-decorator");
|
|
33
21
|
var _linkDecorator = require("./link-decorator");
|
|
22
|
+
var _tocAnchor = require("./toc-anchor");
|
|
34
23
|
var _anchor = require("./anchor");
|
|
35
|
-
const decorator = exports.decorator = new _draftJs.CompositeDecorator([_annotationDecorator.annotationDecorator, _linkDecorator.linkDecorator, _anchor.anchorDecorator]);
|
|
24
|
+
const decorator = exports.decorator = new _draftJs.CompositeDecorator([_annotationDecorator.annotationDecorator, _linkDecorator.linkDecorator, _tocAnchor.tocAnchorDecorator, _anchor.anchorDecorator]);
|
|
@@ -5,33 +5,45 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.linkDecorator = void 0;
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
|
-
var _styledComponents =
|
|
8
|
+
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
9
|
+
var _entity = require("../utils/entity");
|
|
10
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
11
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
9
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
13
|
const LinkWrapper = _styledComponents.default.a`
|
|
11
14
|
text-decoration: underline;
|
|
12
15
|
color: #27b5f7;
|
|
13
16
|
transition: color 0.1s ease-in;
|
|
17
|
+
cursor: pointer;
|
|
14
18
|
|
|
15
19
|
&:hover {
|
|
16
20
|
color: #232323;
|
|
17
21
|
}
|
|
18
22
|
`;
|
|
19
|
-
|
|
20
|
-
contentBlock.findEntityRanges(character => {
|
|
21
|
-
const entityKey = character.getEntity();
|
|
22
|
-
return entityKey !== null && contentState.getEntity(entityKey).getType() === 'LINK';
|
|
23
|
-
}, callback);
|
|
24
|
-
}
|
|
25
|
-
const linkDecorator = exports.linkDecorator = {
|
|
26
|
-
strategy: findLinkEntities,
|
|
27
|
-
component: Link
|
|
28
|
-
};
|
|
29
|
-
function Link(props) {
|
|
23
|
+
const Link = props => {
|
|
30
24
|
const {
|
|
31
25
|
url
|
|
32
26
|
} = props.contentState.getEntity(props.entityKey).getData();
|
|
33
|
-
|
|
27
|
+
const theme = (0, _styledComponents.useTheme)();
|
|
28
|
+
|
|
29
|
+
// Handling for internal/external links, internal links start with '#'
|
|
30
|
+
const linkProps = url.match(/^#/) ? {
|
|
31
|
+
onClick: () => {
|
|
32
|
+
const anchor = document.querySelector(url);
|
|
33
|
+
if (anchor) {
|
|
34
|
+
window.scrollTo({
|
|
35
|
+
top: anchor.offsetTop - (theme === null || theme === void 0 ? void 0 : theme.offsetTop),
|
|
36
|
+
behavior: 'smooth'
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
} : {
|
|
34
41
|
href: url,
|
|
35
|
-
target:
|
|
36
|
-
}
|
|
37
|
-
|
|
42
|
+
target: '_blank'
|
|
43
|
+
};
|
|
44
|
+
return /*#__PURE__*/_react.default.createElement(LinkWrapper, linkProps, props.children);
|
|
45
|
+
};
|
|
46
|
+
const linkDecorator = exports.linkDecorator = {
|
|
47
|
+
strategy: (0, _entity.findEntitiesByType)(_entity.ENTITY.Link),
|
|
48
|
+
component: Link
|
|
49
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.tocAnchorDecorator = void 0;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _entity = require("../utils/entity");
|
|
9
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
+
const TOCAnchor = props => {
|
|
11
|
+
var _contentState$getEnti;
|
|
12
|
+
const {
|
|
13
|
+
children,
|
|
14
|
+
contentState,
|
|
15
|
+
entityKey
|
|
16
|
+
} = props;
|
|
17
|
+
const key = contentState === null || contentState === void 0 || (_contentState$getEnti = contentState.getEntity(entityKey)) === null || _contentState$getEnti === void 0 || (_contentState$getEnti = _contentState$getEnti.getData()) === null || _contentState$getEnti === void 0 ? void 0 : _contentState$getEnti.anchorKey;
|
|
18
|
+
return /*#__PURE__*/_react.default.createElement("span", {
|
|
19
|
+
id: `toc-anchor-${key}`
|
|
20
|
+
}, children);
|
|
21
|
+
};
|
|
22
|
+
const tocAnchorDecorator = exports.tocAnchorDecorator = {
|
|
23
|
+
strategy: (0, _entity.findEntitiesByType)(_entity.ENTITY.TOCAnchor),
|
|
24
|
+
component: TOCAnchor
|
|
25
|
+
};
|
package/lib/index.js
CHANGED
|
@@ -3,12 +3,6 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
Object.defineProperty(exports, "ANCHOR_ENTITY_TYPE", {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: function () {
|
|
9
|
-
return _entityDecorators.ANCHOR_ENTITY_TYPE;
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
6
|
Object.defineProperty(exports, "ArticleBodyDraftRenderer", {
|
|
13
7
|
enumerable: true,
|
|
14
8
|
get: function () {
|
|
@@ -27,6 +21,12 @@ Object.defineProperty(exports, "DraftRenderer", {
|
|
|
27
21
|
return _draftRenderer.DraftRenderer;
|
|
28
22
|
}
|
|
29
23
|
});
|
|
24
|
+
Object.defineProperty(exports, "ENTITY", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function () {
|
|
27
|
+
return _entity.ENTITY;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
30
|
Object.defineProperty(exports, "ProjectContentDraftRenderer", {
|
|
31
31
|
enumerable: true,
|
|
32
32
|
get: function () {
|
|
@@ -59,10 +59,10 @@ Object.defineProperty(exports, "customStyleFn", {
|
|
|
59
59
|
}
|
|
60
60
|
});
|
|
61
61
|
exports.default = void 0;
|
|
62
|
-
Object.defineProperty(exports, "
|
|
62
|
+
Object.defineProperty(exports, "findEntitiesByType", {
|
|
63
63
|
enumerable: true,
|
|
64
64
|
get: function () {
|
|
65
|
-
return
|
|
65
|
+
return _entity.findEntitiesByType;
|
|
66
66
|
}
|
|
67
67
|
});
|
|
68
68
|
Object.defineProperty(exports, "linkDecorator", {
|
|
@@ -76,6 +76,7 @@ var _draftRenderer = require("./draft-renderer");
|
|
|
76
76
|
var _blockRendererFn = require("./block-renderer-fn");
|
|
77
77
|
var _blockRenderers = require("./block-renderers");
|
|
78
78
|
var _entityDecorators = require("./entity-decorators");
|
|
79
|
+
var _entity = require("./utils/entity");
|
|
79
80
|
var _customStyleFn = require("./custom-style-fn");
|
|
80
81
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
81
82
|
const blockRenderMap = exports.blockRenderMap = _index.default.content;
|
|
@@ -90,6 +91,6 @@ var _default = exports.default = {
|
|
|
90
91
|
customStyleFn: _customStyleFn.customStyleFn,
|
|
91
92
|
annotationDecorator: _entityDecorators.annotationDecorator,
|
|
92
93
|
linkDecorator: _entityDecorators.linkDecorator,
|
|
93
|
-
|
|
94
|
-
|
|
94
|
+
ENTITY: _entity.ENTITY,
|
|
95
|
+
findEntitiesByType: _entity.findEntitiesByType
|
|
95
96
|
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.findEntitiesByType = exports.ENTITY = void 0;
|
|
7
|
+
let ENTITY = exports.ENTITY = /*#__PURE__*/function (ENTITY) {
|
|
8
|
+
ENTITY["Link"] = "LINK";
|
|
9
|
+
ENTITY["Annotation"] = "ANNOTATION";
|
|
10
|
+
ENTITY["Anchor"] = "ANCHOR";
|
|
11
|
+
ENTITY["TOCAnchor"] = "TOC_ANCHOR";
|
|
12
|
+
return ENTITY;
|
|
13
|
+
}({});
|
|
14
|
+
const findEntitiesByType = type => {
|
|
15
|
+
return (contentBlock, callback, contentState) => {
|
|
16
|
+
contentBlock.findEntityRanges(character => {
|
|
17
|
+
const entityKey = character.getEntity();
|
|
18
|
+
return entityKey !== null && contentState.getEntity(entityKey).getType() === type;
|
|
19
|
+
}, callback);
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
exports.findEntitiesByType = findEntitiesByType;
|