@kids-reporter/draft-editor 1.0.3 → 1.0.5
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/block-renderers/blockquote.js +2 -2
- package/lib/block-renderers/embedded-code.js +2 -2
- package/lib/block-renderers/image.js +2 -2
- package/lib/block-renderers/info-box.js +2 -2
- package/lib/block-renderers/slideshow.js +2 -2
- package/lib/buttons/anchor.js +4 -5
- package/lib/buttons/annotation.js +5 -4
- package/lib/buttons/bg-color.js +3 -4
- package/lib/buttons/blockquote.js +2 -2
- package/lib/buttons/bt-names.js +3 -3
- package/lib/buttons/control-buttons.js +3 -4
- package/lib/buttons/embedded-code.js +45 -3
- package/lib/buttons/font-color.js +3 -4
- package/lib/buttons/image.js +2 -2
- package/lib/buttons/index.js +16 -27
- package/lib/buttons/info-box.js +3 -3
- package/lib/buttons/link.js +10 -8
- package/lib/buttons/news-reading.js +2 -2
- package/lib/buttons/selector/align-selector.js +2 -2
- package/lib/buttons/selector/image-selector.js +2 -2
- package/lib/buttons/selector/search-box.js +2 -2
- package/lib/buttons/slideshow.js +2 -2
- package/lib/buttons/{inner-anchor.js → toc-anchor.js} +9 -11
- package/lib/draft-editor.js +20 -21
- package/lib/entity-decorators/anchor.js +20 -20
- package/lib/entity-decorators/{inner-anchor.js → toc-anchor.js} +20 -19
- package/lib/index.js +2 -3
- package/lib/styled.js +9 -15
- package/package.json +2 -2
|
@@ -10,8 +10,8 @@ var _blockquote = require("../buttons/blockquote");
|
|
|
10
10
|
var _styled = require("./styled");
|
|
11
11
|
var _draftRenderer = require("@kids-reporter/draft-renderer");
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
function _getRequireWildcardCache(
|
|
14
|
-
function _interopRequireWildcard(
|
|
13
|
+
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
|
+
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; }
|
|
15
15
|
const {
|
|
16
16
|
BlockquoteInArticleBody
|
|
17
17
|
} = _draftRenderer.blockRenderers;
|
|
@@ -10,8 +10,8 @@ var _embeddedCode = require("../buttons/embedded-code");
|
|
|
10
10
|
var _styled = require("./styled");
|
|
11
11
|
var _fields = require("@keystone-ui/fields");
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
function _getRequireWildcardCache(
|
|
14
|
-
function _interopRequireWildcard(
|
|
13
|
+
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
|
+
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; }
|
|
15
15
|
function EmbeddedCode({
|
|
16
16
|
className,
|
|
17
17
|
embeddedCode
|
|
@@ -10,8 +10,8 @@ var _imageSelector = require("../buttons/selector/image-selector");
|
|
|
10
10
|
var _styled = require("./styled");
|
|
11
11
|
var _draftRenderer = require("@kids-reporter/draft-renderer");
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
function _getRequireWildcardCache(
|
|
14
|
-
function _interopRequireWildcard(
|
|
13
|
+
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
|
+
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; }
|
|
15
15
|
const {
|
|
16
16
|
ImageInArticleBody
|
|
17
17
|
} = _draftRenderer.blockRenderers;
|
|
@@ -10,8 +10,8 @@ var _styled = require("./styled");
|
|
|
10
10
|
var _infoBox = require("../buttons/info-box");
|
|
11
11
|
var _draftRenderer = require("@kids-reporter/draft-renderer");
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
function _getRequireWildcardCache(
|
|
14
|
-
function _interopRequireWildcard(
|
|
13
|
+
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
|
+
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; }
|
|
15
15
|
const {
|
|
16
16
|
InfoBoxInArticleBody
|
|
17
17
|
} = _draftRenderer.blockRenderers;
|
|
@@ -10,8 +10,8 @@ var _imageSelector = require("../buttons/selector/image-selector");
|
|
|
10
10
|
var _styled = require("./styled");
|
|
11
11
|
var _draftRenderer = require("@kids-reporter/draft-renderer");
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
function _getRequireWildcardCache(
|
|
14
|
-
function _interopRequireWildcard(
|
|
13
|
+
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
|
+
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; }
|
|
15
15
|
const {
|
|
16
16
|
SlideshowInArticleBody
|
|
17
17
|
} = _draftRenderer.blockRenderers;
|
package/lib/buttons/anchor.js
CHANGED
|
@@ -25,9 +25,8 @@ const AnchorButton = props => {
|
|
|
25
25
|
const start = selection.getStartOffset();
|
|
26
26
|
const end = selection.getEndOffset();
|
|
27
27
|
const selectedText = block.getText().slice(start, end);
|
|
28
|
-
const contentStateWithEntity = contentState.createEntity(_draftRenderer.
|
|
29
|
-
|
|
30
|
-
anchorLabel: selectedText
|
|
28
|
+
const contentStateWithEntity = contentState.createEntity(_draftRenderer.ENTITY.Anchor, 'MUTABLE', {
|
|
29
|
+
anchorID: selectedText
|
|
31
30
|
});
|
|
32
31
|
const entityKey = contentStateWithEntity.getLastCreatedEntityKey();
|
|
33
32
|
const newEditorState = _draftJs.EditorState.set(editorState, {
|
|
@@ -45,7 +44,7 @@ const AnchorButton = props => {
|
|
|
45
44
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
46
45
|
className: props.className,
|
|
47
46
|
onMouseDown: isActive ? removeAnchor : promptForAnchor,
|
|
48
|
-
title: "\
|
|
49
|
-
}, /*#__PURE__*/_react.default.createElement("span", null, "\
|
|
47
|
+
title: "\u9328\u9EDE"
|
|
48
|
+
}, /*#__PURE__*/_react.default.createElement("span", null, "\u9328"));
|
|
50
49
|
};
|
|
51
50
|
exports.AnchorButton = AnchorButton;
|
|
@@ -8,10 +8,11 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
8
8
|
var _btNames = _interopRequireDefault(require("./bt-names"));
|
|
9
9
|
var _draftJs = require("draft-js");
|
|
10
10
|
var _modals = require("@keystone-ui/modals");
|
|
11
|
+
var _draftRenderer = require("@kids-reporter/draft-renderer");
|
|
11
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
|
-
function _getRequireWildcardCache(
|
|
13
|
-
function _interopRequireWildcard(
|
|
14
|
-
const disabledButtons = [_btNames.default.h2, _btNames.default.h3, _btNames.default.code, _btNames.default.codeBlock, _btNames.default.blockquote, _btNames.default.annotation, _btNames.default.embed, _btNames.default.image, _btNames.default.infoBox, _btNames.default.slideshow, _btNames.default.newsReading, _btNames.default.anchor];
|
|
13
|
+
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
|
+
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; }
|
|
15
|
+
const disabledButtons = [_btNames.default.h2, _btNames.default.h3, _btNames.default.code, _btNames.default.codeBlock, _btNames.default.blockquote, _btNames.default.annotation, _btNames.default.embed, _btNames.default.image, _btNames.default.infoBox, _btNames.default.slideshow, _btNames.default.newsReading, _btNames.default.tocAnchor, _btNames.default.anchor];
|
|
15
16
|
function createAnnotationButton({
|
|
16
17
|
InnerEditor,
|
|
17
18
|
decorator
|
|
@@ -38,7 +39,7 @@ function createAnnotationButton({
|
|
|
38
39
|
const confirmAnnotation = () => {
|
|
39
40
|
const contentState = editorStateOfOuterEditor.getCurrentContent();
|
|
40
41
|
const rawContentState = (0, _draftJs.convertToRaw)(inputValue.editorStateOfInnerEditor.getCurrentContent());
|
|
41
|
-
const contentStateWithEntity = contentState.createEntity(
|
|
42
|
+
const contentStateWithEntity = contentState.createEntity(_draftRenderer.ENTITY.Annotation, 'MUTABLE', {
|
|
42
43
|
rawContentState
|
|
43
44
|
});
|
|
44
45
|
const entityKey = contentStateWithEntity.getLastCreatedEntityKey();
|
package/lib/buttons/bg-color.js
CHANGED
|
@@ -11,10 +11,9 @@ var _draftJs = require("draft-js");
|
|
|
11
11
|
var _fields = require("@keystone-ui/fields");
|
|
12
12
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
13
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
|
-
function _getRequireWildcardCache(
|
|
15
|
-
function _interopRequireWildcard(
|
|
16
|
-
const customStylePrefix = 'BACKGROUND_COLOR_';
|
|
17
|
-
exports.customStylePrefix = customStylePrefix;
|
|
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); }
|
|
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; }
|
|
16
|
+
const customStylePrefix = exports.customStylePrefix = 'BACKGROUND_COLOR_';
|
|
18
17
|
const ColorHexInput = (0, _styledComponents.default)(_fields.TextInput)`
|
|
19
18
|
margin-right: 10px;
|
|
20
19
|
padding: 10px;
|
|
@@ -10,8 +10,8 @@ var _draftJs = require("draft-js");
|
|
|
10
10
|
var _modals = require("@keystone-ui/modals");
|
|
11
11
|
var _select = require("./form/select");
|
|
12
12
|
var _fields = require("@keystone-ui/fields");
|
|
13
|
-
function _getRequireWildcardCache(
|
|
14
|
-
function _interopRequireWildcard(
|
|
13
|
+
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
|
+
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; }
|
|
15
15
|
var BlockquoteTypeEnum = /*#__PURE__*/function (BlockquoteTypeEnum) {
|
|
16
16
|
BlockquoteTypeEnum["borderLeft"] = "border_left";
|
|
17
17
|
BlockquoteTypeEnum["quoteLeft"] = "quote_left";
|
package/lib/buttons/bt-names.js
CHANGED
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
var _default = {
|
|
7
|
+
var _default = exports.default = {
|
|
8
8
|
// inline styles
|
|
9
9
|
bold: 'bold',
|
|
10
10
|
italic: 'italic',
|
|
@@ -31,6 +31,6 @@ var _default = {
|
|
|
31
31
|
slideshow: 'slideshow',
|
|
32
32
|
newsReading: 'news-reading',
|
|
33
33
|
divider: 'divider',
|
|
34
|
+
tocAnchor: 'toc-anchor',
|
|
34
35
|
anchor: 'anchor'
|
|
35
|
-
};
|
|
36
|
-
exports.default = _default;
|
|
36
|
+
};
|
|
@@ -6,10 +6,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.buttonStyle = exports.InlineStyleControls = exports.BlockStyleControls = void 0;
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
8
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
9
|
-
function _getRequireWildcardCache(
|
|
10
|
-
function _interopRequireWildcard(
|
|
9
|
+
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); }
|
|
10
|
+
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; }
|
|
11
11
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
|
-
const buttonStyle = (0, _styledComponents.css)`
|
|
12
|
+
const buttonStyle = exports.buttonStyle = (0, _styledComponents.css)`
|
|
13
13
|
cursor: pointer;
|
|
14
14
|
border-radius: 6px;
|
|
15
15
|
text-align: center;
|
|
@@ -59,7 +59,6 @@ const buttonStyle = (0, _styledComponents.css)`
|
|
|
59
59
|
return 'inline-flex';
|
|
60
60
|
}};
|
|
61
61
|
`;
|
|
62
|
-
exports.buttonStyle = buttonStyle;
|
|
63
62
|
const CustomButton = _styledComponents.default.div`
|
|
64
63
|
${buttonStyle}
|
|
65
64
|
`;
|
|
@@ -7,10 +7,29 @@ exports.EmbeddedCodeButton = EmbeddedCodeButton;
|
|
|
7
7
|
exports.EmbeddedCodeInput = EmbeddedCodeInput;
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
9
|
var _draftJs = require("draft-js");
|
|
10
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
10
11
|
var _modals = require("@keystone-ui/modals");
|
|
11
12
|
var _fields = require("@keystone-ui/fields");
|
|
12
|
-
|
|
13
|
-
function
|
|
13
|
+
var _alignSelector = require("./selector/align-selector");
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
+
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); }
|
|
16
|
+
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; }
|
|
17
|
+
var AlignOption = /*#__PURE__*/function (AlignOption) {
|
|
18
|
+
AlignOption["Paragraph"] = "paragraph-width";
|
|
19
|
+
AlignOption["Image"] = "image-width";
|
|
20
|
+
return AlignOption;
|
|
21
|
+
}(AlignOption || {});
|
|
22
|
+
const options = [{
|
|
23
|
+
value: AlignOption.Paragraph,
|
|
24
|
+
label: '與文章段落等寬'
|
|
25
|
+
}, {
|
|
26
|
+
value: AlignOption.Image,
|
|
27
|
+
label: '寬版(與圖片預設等寬)'
|
|
28
|
+
}];
|
|
29
|
+
const Container = _styledComponents.default.div`
|
|
30
|
+
margin-top: 20px;
|
|
31
|
+
margin-bottom: 20px;
|
|
32
|
+
`;
|
|
14
33
|
function EmbeddedCodeInput({
|
|
15
34
|
isOpen,
|
|
16
35
|
onConfirm,
|
|
@@ -18,9 +37,17 @@ function EmbeddedCodeInput({
|
|
|
18
37
|
inputValue
|
|
19
38
|
}) {
|
|
20
39
|
const [inputValueState, setInputValue] = (0, _react.useState)(inputValue);
|
|
40
|
+
const contentWrapperRef = (0, _react.useRef)(null);
|
|
21
41
|
const confirmInput = () => {
|
|
22
42
|
onConfirm(inputValueState);
|
|
23
43
|
};
|
|
44
|
+
const onAlignSelectOpen = () => {
|
|
45
|
+
var _contentWrapperRef$cu;
|
|
46
|
+
const scrollWrapper = (_contentWrapperRef$cu = contentWrapperRef.current) === null || _contentWrapperRef$cu === void 0 ? void 0 : _contentWrapperRef$cu.parentElement;
|
|
47
|
+
if (scrollWrapper) {
|
|
48
|
+
scrollWrapper.scrollTop = scrollWrapper === null || scrollWrapper === void 0 ? void 0 : scrollWrapper.scrollHeight;
|
|
49
|
+
}
|
|
50
|
+
};
|
|
24
51
|
return /*#__PURE__*/_react.default.createElement(_modals.DrawerController, {
|
|
25
52
|
isOpen: isOpen
|
|
26
53
|
}, /*#__PURE__*/_react.default.createElement(_modals.Drawer, {
|
|
@@ -37,9 +64,12 @@ function EmbeddedCodeInput({
|
|
|
37
64
|
action: confirmInput
|
|
38
65
|
}
|
|
39
66
|
}
|
|
67
|
+
}, /*#__PURE__*/_react.default.createElement(Container, {
|
|
68
|
+
ref: contentWrapperRef
|
|
40
69
|
}, /*#__PURE__*/_react.default.createElement(_fields.TextArea, {
|
|
41
70
|
onChange: e => setInputValue({
|
|
42
71
|
caption: inputValueState.caption,
|
|
72
|
+
align: inputValueState.align,
|
|
43
73
|
embeddedCode: e.target.value
|
|
44
74
|
}),
|
|
45
75
|
placeholder: "Embedded Code",
|
|
@@ -51,6 +81,7 @@ function EmbeddedCodeInput({
|
|
|
51
81
|
}), /*#__PURE__*/_react.default.createElement(_fields.TextInput, {
|
|
52
82
|
onChange: e => setInputValue({
|
|
53
83
|
caption: e.target.value,
|
|
84
|
+
align: inputValueState.align,
|
|
54
85
|
embeddedCode: inputValueState.embeddedCode
|
|
55
86
|
}),
|
|
56
87
|
type: "text",
|
|
@@ -60,7 +91,18 @@ function EmbeddedCodeInput({
|
|
|
60
91
|
marginBottom: '10px',
|
|
61
92
|
marginTop: '30px'
|
|
62
93
|
}
|
|
63
|
-
})
|
|
94
|
+
}), /*#__PURE__*/_react.default.createElement(_alignSelector.AlignSelector, {
|
|
95
|
+
align: inputValueState.align,
|
|
96
|
+
options: options,
|
|
97
|
+
onChange: align => {
|
|
98
|
+
setInputValue({
|
|
99
|
+
caption: inputValueState.caption,
|
|
100
|
+
align: align,
|
|
101
|
+
embeddedCode: inputValueState.embeddedCode
|
|
102
|
+
});
|
|
103
|
+
},
|
|
104
|
+
onOpen: onAlignSelectOpen
|
|
105
|
+
}))));
|
|
64
106
|
}
|
|
65
107
|
function EmbeddedCodeButton(props) {
|
|
66
108
|
const {
|
|
@@ -11,10 +11,9 @@ var _draftJs = require("draft-js");
|
|
|
11
11
|
var _fields = require("@keystone-ui/fields");
|
|
12
12
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
13
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
|
-
function _getRequireWildcardCache(
|
|
15
|
-
function _interopRequireWildcard(
|
|
16
|
-
const customStylePrefix = 'FONT_COLOR_';
|
|
17
|
-
exports.customStylePrefix = customStylePrefix;
|
|
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); }
|
|
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; }
|
|
16
|
+
const customStylePrefix = exports.customStylePrefix = 'FONT_COLOR_';
|
|
18
17
|
const ColorHexInput = (0, _styledComponents.default)(_fields.TextInput)`
|
|
19
18
|
margin-right: 10px;
|
|
20
19
|
padding: 10px;
|
package/lib/buttons/image.js
CHANGED
|
@@ -7,8 +7,8 @@ exports.ImageButton = ImageButton;
|
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _draftJs = require("draft-js");
|
|
9
9
|
var _imageSelector = require("./selector/image-selector");
|
|
10
|
-
function _getRequireWildcardCache(
|
|
11
|
-
function _interopRequireWildcard(
|
|
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; }
|
|
12
12
|
function ImageButton(props) {
|
|
13
13
|
const {
|
|
14
14
|
editorState,
|
package/lib/buttons/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.withStyle = exports.InlineStyleControls = exports.CustomSlideshowButton = exports.CustomNewsReadingButton = exports.CustomLinkButton = exports.CustomImageButton = exports.CustomFontColorButton = exports.CustomEnlargeButton = exports.CustomEmbeddedCodeButton = exports.CustomDividerButton = exports.CustomBlockquoteButton = exports.CustomBackgroundColorButton = exports.CustomAnchorButton = exports.BlockStyleControls = void 0;
|
|
6
|
+
exports.withStyle = exports.InlineStyleControls = exports.CustomTOCAnchorButton = exports.CustomSlideshowButton = exports.CustomNewsReadingButton = exports.CustomLinkButton = exports.CustomImageButton = exports.CustomFontColorButton = exports.CustomEnlargeButton = exports.CustomEmbeddedCodeButton = exports.CustomDividerButton = exports.CustomBlockquoteButton = exports.CustomBackgroundColorButton = exports.CustomAnchorButton = exports.BlockStyleControls = void 0;
|
|
7
7
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
8
8
|
var _controlButtons = require("./control-buttons");
|
|
9
9
|
var _bgColor = require("./bg-color");
|
|
@@ -13,6 +13,7 @@ var _embeddedCode = require("./embedded-code");
|
|
|
13
13
|
var _enlarge = require("./enlarge");
|
|
14
14
|
var _fontColor = require("./font-color");
|
|
15
15
|
var _image = require("./image");
|
|
16
|
+
var _tocAnchor = require("./toc-anchor");
|
|
16
17
|
var _anchor = require("./anchor");
|
|
17
18
|
var _link = require("./link");
|
|
18
19
|
var _slideshow = require("./slideshow");
|
|
@@ -24,31 +25,19 @@ const withStyle = Button => {
|
|
|
24
25
|
`;
|
|
25
26
|
};
|
|
26
27
|
exports.withStyle = withStyle;
|
|
27
|
-
const BlockStyleControls = _controlButtons.BlockStyleControls;
|
|
28
|
-
exports.
|
|
29
|
-
const
|
|
30
|
-
exports.
|
|
31
|
-
const
|
|
32
|
-
exports.
|
|
33
|
-
const
|
|
34
|
-
exports.CustomAnchorButton = CustomAnchorButton;
|
|
35
|
-
const CustomLinkButton = withStyle(_link.LinkButton);
|
|
36
|
-
exports.CustomLinkButton = CustomLinkButton;
|
|
37
|
-
const CustomEnlargeButton = (0, _styledComponents.default)(withStyle(_enlarge.EnlargeButton))`
|
|
28
|
+
const BlockStyleControls = exports.BlockStyleControls = _controlButtons.BlockStyleControls;
|
|
29
|
+
const InlineStyleControls = exports.InlineStyleControls = _controlButtons.InlineStyleControls;
|
|
30
|
+
const CustomBlockquoteButton = exports.CustomBlockquoteButton = withStyle(_blockquote.BlockquoteButton);
|
|
31
|
+
const CustomTOCAnchorButton = exports.CustomTOCAnchorButton = withStyle(_tocAnchor.TOCAnchorButton);
|
|
32
|
+
const CustomAnchorButton = exports.CustomAnchorButton = withStyle(_anchor.AnchorButton);
|
|
33
|
+
const CustomLinkButton = exports.CustomLinkButton = withStyle(_link.LinkButton);
|
|
34
|
+
const CustomEnlargeButton = exports.CustomEnlargeButton = (0, _styledComponents.default)(withStyle(_enlarge.EnlargeButton))`
|
|
38
35
|
color: #999;
|
|
39
36
|
`;
|
|
40
|
-
exports.
|
|
41
|
-
const
|
|
42
|
-
exports.
|
|
43
|
-
const
|
|
44
|
-
exports.
|
|
45
|
-
const
|
|
46
|
-
exports.
|
|
47
|
-
const CustomNewsReadingButton = withStyle(_newsReading.NewsReadingButton);
|
|
48
|
-
exports.CustomNewsReadingButton = CustomNewsReadingButton;
|
|
49
|
-
const CustomBackgroundColorButton = withStyle(_bgColor.BackgroundColorButton);
|
|
50
|
-
exports.CustomBackgroundColorButton = CustomBackgroundColorButton;
|
|
51
|
-
const CustomFontColorButton = withStyle(_fontColor.FontColorButton);
|
|
52
|
-
exports.CustomFontColorButton = CustomFontColorButton;
|
|
53
|
-
const CustomDividerButton = withStyle(_divider.DividerButton);
|
|
54
|
-
exports.CustomDividerButton = CustomDividerButton;
|
|
37
|
+
const CustomImageButton = exports.CustomImageButton = withStyle(_image.ImageButton);
|
|
38
|
+
const CustomSlideshowButton = exports.CustomSlideshowButton = withStyle(_slideshow.SlideshowButton);
|
|
39
|
+
const CustomEmbeddedCodeButton = exports.CustomEmbeddedCodeButton = withStyle(_embeddedCode.EmbeddedCodeButton);
|
|
40
|
+
const CustomNewsReadingButton = exports.CustomNewsReadingButton = withStyle(_newsReading.NewsReadingButton);
|
|
41
|
+
const CustomBackgroundColorButton = exports.CustomBackgroundColorButton = withStyle(_bgColor.BackgroundColorButton);
|
|
42
|
+
const CustomFontColorButton = exports.CustomFontColorButton = withStyle(_fontColor.FontColorButton);
|
|
43
|
+
const CustomDividerButton = exports.CustomDividerButton = withStyle(_divider.DividerButton);
|
package/lib/buttons/info-box.js
CHANGED
|
@@ -11,9 +11,9 @@ var _draftJs = require("draft-js");
|
|
|
11
11
|
var _modals = require("@keystone-ui/modals");
|
|
12
12
|
var _select = require("./form/select");
|
|
13
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
|
-
function _getRequireWildcardCache(
|
|
15
|
-
function _interopRequireWildcard(
|
|
16
|
-
const disabledButtons = [_btNames.default.h2, _btNames.default.h3, _btNames.default.code, _btNames.default.codeBlock, _btNames.default.blockquote, _btNames.default.infoBox, _btNames.default.slideshow, _btNames.default.newsReading, _btNames.default.anchor];
|
|
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); }
|
|
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; }
|
|
16
|
+
const disabledButtons = [_btNames.default.h2, _btNames.default.h3, _btNames.default.code, _btNames.default.codeBlock, _btNames.default.blockquote, _btNames.default.infoBox, _btNames.default.slideshow, _btNames.default.newsReading, _btNames.default.tocAnchor, _btNames.default.anchor];
|
|
17
17
|
var InfoBoxTypeEnum = /*#__PURE__*/function (InfoBoxTypeEnum) {
|
|
18
18
|
InfoBoxTypeEnum["newsChargeStation"] = "news-charge-station";
|
|
19
19
|
InfoBoxTypeEnum["headerBorder"] = "header-border";
|
package/lib/buttons/link.js
CHANGED
|
@@ -3,13 +3,14 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.LinkButton =
|
|
6
|
+
exports.LinkButton = void 0;
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _modals = require("@keystone-ui/modals");
|
|
9
9
|
var _draftJs = require("draft-js");
|
|
10
10
|
var _fields = require("@keystone-ui/fields");
|
|
11
|
-
|
|
12
|
-
function
|
|
11
|
+
var _draftRenderer = require("@kids-reporter/draft-renderer");
|
|
12
|
+
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); }
|
|
13
|
+
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; }
|
|
13
14
|
const styles = {
|
|
14
15
|
urlInput: {
|
|
15
16
|
fontFamily: "'Georgia', serif",
|
|
@@ -17,7 +18,7 @@ const styles = {
|
|
|
17
18
|
padding: 10
|
|
18
19
|
}
|
|
19
20
|
};
|
|
20
|
-
|
|
21
|
+
const LinkButton = props => {
|
|
21
22
|
const {
|
|
22
23
|
isActive,
|
|
23
24
|
editorState,
|
|
@@ -35,7 +36,7 @@ function LinkButton(props) {
|
|
|
35
36
|
};
|
|
36
37
|
const confirmLink = () => {
|
|
37
38
|
const contentState = editorState.getCurrentContent();
|
|
38
|
-
const contentStateWithEntity = contentState.createEntity(
|
|
39
|
+
const contentStateWithEntity = contentState.createEntity(_draftRenderer.ENTITY.Link, 'MUTABLE', {
|
|
39
40
|
url: urlValue
|
|
40
41
|
});
|
|
41
42
|
const entityKey = contentStateWithEntity.getLastCreatedEntityKey();
|
|
@@ -63,7 +64,7 @@ function LinkButton(props) {
|
|
|
63
64
|
props.onEditFinish();
|
|
64
65
|
};
|
|
65
66
|
const urlInput = /*#__PURE__*/_react.default.createElement(_modals.AlertDialog, {
|
|
66
|
-
title: "
|
|
67
|
+
title: "\u7DE8\u8F2F\u5916\u90E8\u9023\u7D50\u6216\u5167\u90E8\u9328\u9EDE(ID)",
|
|
67
68
|
isOpen: toShowUrlInput,
|
|
68
69
|
actions: {
|
|
69
70
|
cancel: {
|
|
@@ -75,7 +76,7 @@ function LinkButton(props) {
|
|
|
75
76
|
action: confirmLink
|
|
76
77
|
}
|
|
77
78
|
}
|
|
78
|
-
}, /*#__PURE__*/_react.default.createElement(_fields.TextInput, {
|
|
79
|
+
}, /*#__PURE__*/_react.default.createElement("p", null, /*#__PURE__*/_react.default.createElement("br", null), "\u5916\u90E8\u9023\u7D50\u7BC4\u4F8B:", /*#__PURE__*/_react.default.createElement("br", null), "https://kids.twreporter.org/article/article1#part1", /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement("br", null), "\u5167\u90E8\u9328\u9EDE\u7BC4\u4F8B:", /*#__PURE__*/_react.default.createElement("br", null), "#part1"), /*#__PURE__*/_react.default.createElement(_fields.TextInput, {
|
|
79
80
|
onChange: e => setUrlValue(e.target.value),
|
|
80
81
|
style: styles.urlInput,
|
|
81
82
|
type: "text",
|
|
@@ -88,4 +89,5 @@ function LinkButton(props) {
|
|
|
88
89
|
}, /*#__PURE__*/_react.default.createElement("i", {
|
|
89
90
|
className: "fas fa-link"
|
|
90
91
|
})));
|
|
91
|
-
}
|
|
92
|
+
};
|
|
93
|
+
exports.LinkButton = LinkButton;
|
|
@@ -12,8 +12,8 @@ var _draftJs = require("draft-js");
|
|
|
12
12
|
var _modals = require("@keystone-ui/modals");
|
|
13
13
|
var _fields = require("@keystone-ui/fields");
|
|
14
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
function _getRequireWildcardCache(
|
|
16
|
-
function _interopRequireWildcard(
|
|
15
|
+
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); }
|
|
16
|
+
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; }
|
|
17
17
|
// @ts-ignore pkg does not have definition
|
|
18
18
|
|
|
19
19
|
async function fetchNewsReadingGroup(itemId) {
|
|
@@ -8,8 +8,8 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
8
8
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
9
9
|
var _fields = require("@keystone-ui/fields");
|
|
10
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
function _getRequireWildcardCache(
|
|
12
|
-
function _interopRequireWildcard(
|
|
11
|
+
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); }
|
|
12
|
+
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; }
|
|
13
13
|
const Label = _styledComponents.default.label`
|
|
14
14
|
display: block;
|
|
15
15
|
margin: 10px 0;
|
|
@@ -13,8 +13,8 @@ var _alignSelector = require("./align-selector");
|
|
|
13
13
|
var _searchBox = require("./search-box");
|
|
14
14
|
var _pagination = require("./pagination");
|
|
15
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
16
|
-
function _getRequireWildcardCache(
|
|
17
|
-
function _interopRequireWildcard(
|
|
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; }
|
|
18
18
|
const _ = {
|
|
19
19
|
debounce: _debounce.default
|
|
20
20
|
};
|
|
@@ -9,8 +9,8 @@ var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
|
9
9
|
var _button = require("@keystone-ui/button");
|
|
10
10
|
var _fields = require("@keystone-ui/fields");
|
|
11
11
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
|
-
function _getRequireWildcardCache(
|
|
13
|
-
function _interopRequireWildcard(
|
|
12
|
+
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); }
|
|
13
|
+
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; }
|
|
14
14
|
const SearchBoxWrapper = _styledComponents.default.div`
|
|
15
15
|
display: flex;
|
|
16
16
|
`;
|
package/lib/buttons/slideshow.js
CHANGED
|
@@ -7,8 +7,8 @@ exports.SlideshowButton = SlideshowButton;
|
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _imageSelector = require("./selector/image-selector");
|
|
9
9
|
var _draftJs = require("draft-js");
|
|
10
|
-
function _getRequireWildcardCache(
|
|
11
|
-
function _interopRequireWildcard(
|
|
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; }
|
|
12
12
|
function SlideshowButton(props) {
|
|
13
13
|
const {
|
|
14
14
|
editorState,
|
|
@@ -3,13 +3,12 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.TOCAnchorButton = void 0;
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
8
|
var _draftJs = require("draft-js");
|
|
9
|
+
var _draftRenderer = require("@kids-reporter/draft-renderer");
|
|
9
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
const InnerAnchorButton = props => {
|
|
11
|
+
const TOCAnchorButton = props => {
|
|
13
12
|
const toggleEntity = _draftJs.RichUtils.toggleLink;
|
|
14
13
|
const {
|
|
15
14
|
isActive,
|
|
@@ -26,10 +25,9 @@ const InnerAnchorButton = props => {
|
|
|
26
25
|
const start = selection.getStartOffset();
|
|
27
26
|
const end = selection.getEndOffset();
|
|
28
27
|
const selectedText = block.getText().slice(start, end);
|
|
29
|
-
const contentStateWithEntity = contentState.createEntity('
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
anchorID: selectedText
|
|
28
|
+
const contentStateWithEntity = contentState.createEntity(_draftRenderer.ENTITY.TOCAnchor, 'IMMUTABLE', {
|
|
29
|
+
anchorKey: `createdAt-${Date.now()}`,
|
|
30
|
+
anchorLabel: selectedText
|
|
33
31
|
});
|
|
34
32
|
const entityKey = contentStateWithEntity.getLastCreatedEntityKey();
|
|
35
33
|
const newEditorState = _draftJs.EditorState.set(editorState, {
|
|
@@ -47,7 +45,7 @@ const InnerAnchorButton = props => {
|
|
|
47
45
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
48
46
|
className: props.className,
|
|
49
47
|
onMouseDown: isActive ? removeAnchor : promptForAnchor,
|
|
50
|
-
title: "\
|
|
51
|
-
}, /*#__PURE__*/_react.default.createElement("span", null, "\
|
|
48
|
+
title: "\u7D22\u5F15"
|
|
49
|
+
}, /*#__PURE__*/_react.default.createElement("span", null, "\u7D22"));
|
|
52
50
|
};
|
|
53
|
-
exports.
|
|
51
|
+
exports.TOCAnchorButton = TOCAnchorButton;
|
package/lib/draft-editor.js
CHANGED
|
@@ -16,24 +16,17 @@ var _annotation = require("./buttons/annotation");
|
|
|
16
16
|
var _infoBox = require("./buttons/info-box");
|
|
17
17
|
var _bgColor = require("./buttons/bg-color");
|
|
18
18
|
var _fontColor = require("./buttons/font-color");
|
|
19
|
+
var _tocAnchor = require("./entity-decorators/toc-anchor");
|
|
19
20
|
var _anchor = require("./entity-decorators/anchor");
|
|
20
21
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
22
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
22
|
-
const styleSource =
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
type: "text/css"
|
|
26
|
-
}), /*#__PURE__*/_react.default.createElement("link", {
|
|
27
|
-
href: "https://storage.googleapis.com/static-readr-tw-dev/cdn/draft-js/rich-editor.css",
|
|
28
|
-
rel: "stylesheet",
|
|
29
|
-
type: "text/css"
|
|
30
|
-
}), /*#__PURE__*/_react.default.createElement("link", {
|
|
31
|
-
href: "https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.1/normalize.min.css",
|
|
23
|
+
const styleSource = ['https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css', 'https://storage.googleapis.com/static-readr-tw-dev/cdn/draft-js/rich-editor.css', 'https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.1/normalize.min.css'].map((src, index) => /*#__PURE__*/_react.default.createElement("link", {
|
|
24
|
+
key: `style-src-${index}`,
|
|
25
|
+
href: src,
|
|
32
26
|
rel: "stylesheet",
|
|
33
27
|
type: "text/css"
|
|
34
28
|
}));
|
|
35
|
-
const decorator = new _draftJs.CompositeDecorator([_draftRenderer.annotationDecorator, _draftRenderer.linkDecorator]);
|
|
36
|
-
exports.decorator = decorator;
|
|
29
|
+
const decorator = exports.decorator = new _draftJs.CompositeDecorator([_draftRenderer.annotationDecorator, _draftRenderer.linkDecorator]);
|
|
37
30
|
class RichTextEditor extends _react.default.Component {
|
|
38
31
|
editorRef = null;
|
|
39
32
|
constructor(props) {
|
|
@@ -43,6 +36,11 @@ class RichTextEditor extends _react.default.Component {
|
|
|
43
36
|
readOnly: false
|
|
44
37
|
};
|
|
45
38
|
this.editorDecorator = new _draftJs.CompositeDecorator([_draftRenderer.annotationDecorator, _draftRenderer.linkDecorator, {
|
|
39
|
+
..._tocAnchor.editableTOCAnchorDecorator,
|
|
40
|
+
props: {
|
|
41
|
+
...this.customEditProps
|
|
42
|
+
}
|
|
43
|
+
}, {
|
|
46
44
|
..._anchor.editableAnchorDecorator,
|
|
47
45
|
props: {
|
|
48
46
|
...this.customEditProps
|
|
@@ -74,7 +72,6 @@ class RichTextEditor extends _react.default.Component {
|
|
|
74
72
|
mapKeyToEditorCommand = e => {
|
|
75
73
|
if (e.keyCode === 9 /* TAB */) {
|
|
76
74
|
const newEditorState = _draftJs.RichUtils.onTab(e, this.props.editorState, 4 /* maxDepth */);
|
|
77
|
-
|
|
78
75
|
if (newEditorState !== this.props.editorState) {
|
|
79
76
|
this.onChange(newEditorState);
|
|
80
77
|
}
|
|
@@ -207,12 +204,15 @@ class RichTextEditor extends _react.default.Component {
|
|
|
207
204
|
}), /*#__PURE__*/_react.default.createElement(_styled.EnlargeButtonWrapper, null, /*#__PURE__*/_react.default.createElement(_buttons.CustomEnlargeButton, {
|
|
208
205
|
onToggle: this.toggleEnlarge,
|
|
209
206
|
isEnlarged: isEnlarged
|
|
210
|
-
})), /*#__PURE__*/_react.default.createElement(_buttons.
|
|
207
|
+
})), /*#__PURE__*/_react.default.createElement(_buttons.CustomTOCAnchorButton, _extends({
|
|
208
|
+
isDisabled: disabledButtons.includes(_btNames.default.tocAnchor),
|
|
209
|
+
isActive: entityType === _draftRenderer.ENTITY.TOCAnchor
|
|
210
|
+
}, commonProps)), /*#__PURE__*/_react.default.createElement(_buttons.CustomAnchorButton, _extends({
|
|
211
211
|
isDisabled: disabledButtons.includes(_btNames.default.anchor),
|
|
212
|
-
isActive: entityType === _draftRenderer.
|
|
212
|
+
isActive: entityType === _draftRenderer.ENTITY.Anchor
|
|
213
213
|
}, commonProps)), /*#__PURE__*/_react.default.createElement(_buttons.CustomLinkButton, _extends({
|
|
214
214
|
isDisabled: disabledButtons.includes(_btNames.default.link),
|
|
215
|
-
isActive: entityType ===
|
|
215
|
+
isActive: entityType === _draftRenderer.ENTITY.Link
|
|
216
216
|
}, commonProps, this.commonEditProps)), /*#__PURE__*/_react.default.createElement(_buttons.CustomBackgroundColorButton, _extends({
|
|
217
217
|
isDisabled: disabledButtons.includes(_btNames.default.backgroundColor),
|
|
218
218
|
isActive: editorState.getCurrentInlineStyle().find(styleName => typeof styleName === 'string' && styleName.startsWith(_bgColor.customStylePrefix)) !== undefined
|
|
@@ -223,7 +223,7 @@ class RichTextEditor extends _react.default.Component {
|
|
|
223
223
|
isDisabled: disabledButtons.includes(_btNames.default.blockquote)
|
|
224
224
|
}, commonProps)), /*#__PURE__*/_react.default.createElement(CustomAnnotationButton, _extends({
|
|
225
225
|
isDisabled: disabledButtons.includes(_btNames.default.annotation),
|
|
226
|
-
isActive: entityType ===
|
|
226
|
+
isActive: entityType === _draftRenderer.ENTITY.Annotation
|
|
227
227
|
}, commonProps, this.commonEditProps)), /*#__PURE__*/_react.default.createElement(_buttons.CustomImageButton, _extends({
|
|
228
228
|
isDisabled: disabledButtons.includes(_btNames.default.image),
|
|
229
229
|
ImageSelector: _imageSelector.ImageSelector
|
|
@@ -243,7 +243,7 @@ class RichTextEditor extends _react.default.Component {
|
|
|
243
243
|
if (this.editorRef) {
|
|
244
244
|
var _this$editorRef;
|
|
245
245
|
// eslint-disable-next-line prettier/prettier
|
|
246
|
-
(_this$editorRef = this.editorRef) === null || _this$editorRef === void 0
|
|
246
|
+
(_this$editorRef = this.editorRef) === null || _this$editorRef === void 0 || _this$editorRef.focus();
|
|
247
247
|
}
|
|
248
248
|
}
|
|
249
249
|
}, /*#__PURE__*/_react.default.createElement(_draftJs.Editor, {
|
|
@@ -273,8 +273,7 @@ const InfoBoxButton = (0, _infoBox.createInfoBoxButton)({
|
|
|
273
273
|
});
|
|
274
274
|
const CustomAnnotationButton = (0, _buttons.withStyle)(AnnotationButton);
|
|
275
275
|
const CustomInfoBoxButton = (0, _buttons.withStyle)(InfoBoxButton);
|
|
276
|
-
var _default = {
|
|
276
|
+
var _default = exports.default = {
|
|
277
277
|
RichTextEditor,
|
|
278
278
|
decorator
|
|
279
|
-
};
|
|
280
|
-
exports.default = _default;
|
|
279
|
+
};
|
|
@@ -10,8 +10,8 @@ var _modals = require("@keystone-ui/modals");
|
|
|
10
10
|
var _fields = require("@keystone-ui/fields");
|
|
11
11
|
var _draftRenderer = require("@kids-reporter/draft-renderer");
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
function _getRequireWildcardCache(
|
|
14
|
-
function _interopRequireWildcard(
|
|
13
|
+
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
|
+
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; }
|
|
15
15
|
const AnchorWrapper = _styledComponents.default.span`
|
|
16
16
|
display: inline;
|
|
17
17
|
color: #8e8e8e;
|
|
@@ -26,9 +26,12 @@ const AnchorEditButton = _styledComponents.default.div`
|
|
|
26
26
|
display: inline;
|
|
27
27
|
cursor: pointer;
|
|
28
28
|
&::before {
|
|
29
|
-
content: '
|
|
29
|
+
content: '錨點:${props => props.anchorLabel !== undefined ? `(${props.anchorLabel}) ` : ''}';
|
|
30
30
|
}
|
|
31
31
|
`;
|
|
32
|
+
const Warning = _styledComponents.default.p`
|
|
33
|
+
color: red;
|
|
34
|
+
`;
|
|
32
35
|
const StyledTextInput = (0, _styledComponents.default)(_fields.TextInput)`
|
|
33
36
|
margin: 10px;
|
|
34
37
|
`;
|
|
@@ -41,7 +44,7 @@ const AnchorLabelEditor = props => {
|
|
|
41
44
|
} = props;
|
|
42
45
|
const [anchorLabel, setTOCLabel] = (0, _react.useState)(anchorLabelValue);
|
|
43
46
|
return /*#__PURE__*/_react.default.createElement(_modals.AlertDialog, {
|
|
44
|
-
title: "\u7DE8\u8F2F\
|
|
47
|
+
title: "\u7DE8\u8F2F\u9328\u9EDE\u6587\u5B57(ID)",
|
|
45
48
|
isOpen: isOpen,
|
|
46
49
|
actions: {
|
|
47
50
|
cancel: {
|
|
@@ -53,8 +56,8 @@ const AnchorLabelEditor = props => {
|
|
|
53
56
|
action: () => onConfirm(anchorLabel)
|
|
54
57
|
}
|
|
55
58
|
}
|
|
56
|
-
}, /*#__PURE__*/_react.default.createElement(StyledTextInput, {
|
|
57
|
-
placeholder: "\
|
|
59
|
+
}, /*#__PURE__*/_react.default.createElement(Warning, null, "\u6CE8\u610F\uFF01\u540C\u7BC7\u6587\u7AE0ID\u4E0D\u53EF\u91CD\u8907\uFF01"), /*#__PURE__*/_react.default.createElement(StyledTextInput, {
|
|
60
|
+
placeholder: "\u9328\u9EDE\u6587\u5B57(ID)",
|
|
58
61
|
type: "text",
|
|
59
62
|
value: anchorLabel,
|
|
60
63
|
onChange: e => setTOCLabel(e.target.value)
|
|
@@ -69,33 +72,31 @@ const EditableAnchor = props => {
|
|
|
69
72
|
} = props;
|
|
70
73
|
const tocContent = props.decoratedText;
|
|
71
74
|
const [isModalOpen, setIsModalOpen] = (0, _react.useState)(false);
|
|
72
|
-
const [
|
|
75
|
+
const [anchorID, setAnchorID] = (0, _react.useState)(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);
|
|
73
76
|
(0, _react.useEffect)(() => {
|
|
74
77
|
var _contentState$getEnti2;
|
|
75
|
-
|
|
78
|
+
setAnchorID((_contentState$getEnti2 = contentState.getEntity(entityKey).getData()) === null || _contentState$getEnti2 === void 0 ? void 0 : _contentState$getEnti2.anchorID);
|
|
76
79
|
});
|
|
77
|
-
const
|
|
78
|
-
var _contentState$getEnti3;
|
|
80
|
+
const onAnchorIDChange = anchorID => {
|
|
79
81
|
setIsModalOpen(false);
|
|
80
|
-
|
|
82
|
+
setAnchorID(anchorID);
|
|
81
83
|
props.onEditFinish({
|
|
82
84
|
entityKey,
|
|
83
85
|
entityData: {
|
|
84
|
-
|
|
85
|
-
anchorLabel: labelValue
|
|
86
|
+
anchorID: anchorID
|
|
86
87
|
}
|
|
87
88
|
});
|
|
88
89
|
};
|
|
89
90
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, isModalOpen && /*#__PURE__*/_react.default.createElement(AnchorLabelEditor, {
|
|
90
91
|
isOpen: isModalOpen,
|
|
91
|
-
anchorLabelValue:
|
|
92
|
-
onConfirm:
|
|
92
|
+
anchorLabelValue: anchorID,
|
|
93
|
+
onConfirm: onAnchorIDChange,
|
|
93
94
|
onCancel: () => {
|
|
94
95
|
setIsModalOpen(false);
|
|
95
96
|
props.onEditFinish();
|
|
96
97
|
}
|
|
97
98
|
}), /*#__PURE__*/_react.default.createElement(AnchorWrapper, null, /*#__PURE__*/_react.default.createElement(AnchorEditButton, {
|
|
98
|
-
anchorLabel:
|
|
99
|
+
anchorLabel: anchorID !== tocContent ? anchorID : undefined,
|
|
99
100
|
onClick: e => {
|
|
100
101
|
e.preventDefault();
|
|
101
102
|
setIsModalOpen(true);
|
|
@@ -105,8 +106,7 @@ const EditableAnchor = props => {
|
|
|
105
106
|
className: "fas fa-pen"
|
|
106
107
|
})), /*#__PURE__*/_react.default.createElement("span", null, children)));
|
|
107
108
|
};
|
|
108
|
-
const editableAnchorDecorator = {
|
|
109
|
-
strategy: _draftRenderer.
|
|
109
|
+
const editableAnchorDecorator = exports.editableAnchorDecorator = {
|
|
110
|
+
strategy: (0, _draftRenderer.findEntitiesByType)(_draftRenderer.ENTITY.Anchor),
|
|
110
111
|
component: EditableAnchor
|
|
111
|
-
};
|
|
112
|
-
exports.editableAnchorDecorator = editableAnchorDecorator;
|
|
112
|
+
};
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.editableTOCAnchorDecorator = void 0;
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
9
9
|
var _modals = require("@keystone-ui/modals");
|
|
10
10
|
var _fields = require("@keystone-ui/fields");
|
|
11
11
|
var _draftRenderer = require("@kids-reporter/draft-renderer");
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
function _getRequireWildcardCache(
|
|
14
|
-
function _interopRequireWildcard(
|
|
13
|
+
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
|
+
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; }
|
|
15
15
|
const AnchorWrapper = _styledComponents.default.span`
|
|
16
16
|
display: inline;
|
|
17
17
|
color: #8e8e8e;
|
|
@@ -41,7 +41,7 @@ const AnchorLabelEditor = props => {
|
|
|
41
41
|
} = props;
|
|
42
42
|
const [anchorLabel, setTOCLabel] = (0, _react.useState)(anchorLabelValue);
|
|
43
43
|
return /*#__PURE__*/_react.default.createElement(_modals.AlertDialog, {
|
|
44
|
-
title: "\u7DE8\u8F2F\
|
|
44
|
+
title: "\u7DE8\u8F2F\u7D22\u5F15\u986F\u793A\u6587\u5B57",
|
|
45
45
|
isOpen: isOpen,
|
|
46
46
|
actions: {
|
|
47
47
|
cancel: {
|
|
@@ -54,13 +54,13 @@ const AnchorLabelEditor = props => {
|
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
56
|
}, /*#__PURE__*/_react.default.createElement(StyledTextInput, {
|
|
57
|
-
placeholder: "\
|
|
57
|
+
placeholder: "\u7D22\u5F15\u5728\u76EE\u9304\u5167\u986F\u793A\u6587\u5B57",
|
|
58
58
|
type: "text",
|
|
59
59
|
value: anchorLabel,
|
|
60
60
|
onChange: e => setTOCLabel(e.target.value)
|
|
61
61
|
}));
|
|
62
62
|
};
|
|
63
|
-
const
|
|
63
|
+
const EditableTOCAnchor = props => {
|
|
64
64
|
var _contentState$getEnti;
|
|
65
65
|
const {
|
|
66
66
|
children,
|
|
@@ -69,31 +69,33 @@ const EditableAnchor = props => {
|
|
|
69
69
|
} = props;
|
|
70
70
|
const tocContent = props.decoratedText;
|
|
71
71
|
const [isModalOpen, setIsModalOpen] = (0, _react.useState)(false);
|
|
72
|
-
const [
|
|
72
|
+
const [anchorLabel, setTOCLabel] = (0, _react.useState)(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.anchorLabel);
|
|
73
73
|
(0, _react.useEffect)(() => {
|
|
74
74
|
var _contentState$getEnti2;
|
|
75
|
-
|
|
75
|
+
setTOCLabel((_contentState$getEnti2 = contentState.getEntity(entityKey).getData()) === null || _contentState$getEnti2 === void 0 ? void 0 : _contentState$getEnti2.anchorLabel);
|
|
76
76
|
});
|
|
77
|
-
const
|
|
77
|
+
const onTOCLabelChange = labelValue => {
|
|
78
|
+
var _contentState$getEnti3;
|
|
78
79
|
setIsModalOpen(false);
|
|
79
|
-
|
|
80
|
+
setTOCLabel(labelValue);
|
|
80
81
|
props.onEditFinish({
|
|
81
82
|
entityKey,
|
|
82
83
|
entityData: {
|
|
83
|
-
|
|
84
|
+
anchorKey: contentState === null || contentState === void 0 || (_contentState$getEnti3 = contentState.getEntity(entityKey)) === null || _contentState$getEnti3 === void 0 || (_contentState$getEnti3 = _contentState$getEnti3.getData()) === null || _contentState$getEnti3 === void 0 ? void 0 : _contentState$getEnti3.anchorKey,
|
|
85
|
+
anchorLabel: labelValue
|
|
84
86
|
}
|
|
85
87
|
});
|
|
86
88
|
};
|
|
87
89
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, isModalOpen && /*#__PURE__*/_react.default.createElement(AnchorLabelEditor, {
|
|
88
90
|
isOpen: isModalOpen,
|
|
89
|
-
anchorLabelValue:
|
|
90
|
-
onConfirm:
|
|
91
|
+
anchorLabelValue: anchorLabel,
|
|
92
|
+
onConfirm: onTOCLabelChange,
|
|
91
93
|
onCancel: () => {
|
|
92
94
|
setIsModalOpen(false);
|
|
93
95
|
props.onEditFinish();
|
|
94
96
|
}
|
|
95
97
|
}), /*#__PURE__*/_react.default.createElement(AnchorWrapper, null, /*#__PURE__*/_react.default.createElement(AnchorEditButton, {
|
|
96
|
-
anchorLabel:
|
|
98
|
+
anchorLabel: anchorLabel !== tocContent ? anchorLabel : undefined,
|
|
97
99
|
onClick: e => {
|
|
98
100
|
e.preventDefault();
|
|
99
101
|
setIsModalOpen(true);
|
|
@@ -103,8 +105,7 @@ const EditableAnchor = props => {
|
|
|
103
105
|
className: "fas fa-pen"
|
|
104
106
|
})), /*#__PURE__*/_react.default.createElement("span", null, children)));
|
|
105
107
|
};
|
|
106
|
-
const
|
|
107
|
-
strategy: _draftRenderer.
|
|
108
|
-
component:
|
|
109
|
-
};
|
|
110
|
-
exports.editableInnerAnchorDecorator = editableInnerAnchorDecorator;
|
|
108
|
+
const editableTOCAnchorDecorator = exports.editableTOCAnchorDecorator = {
|
|
109
|
+
strategy: (0, _draftRenderer.findEntitiesByType)(_draftRenderer.ENTITY.TOCAnchor),
|
|
110
|
+
component: EditableTOCAnchor
|
|
111
|
+
};
|
package/lib/index.js
CHANGED
|
@@ -25,9 +25,8 @@ exports.default = void 0;
|
|
|
25
25
|
var _draftEditor = require("./draft-editor");
|
|
26
26
|
var _btNames = _interopRequireDefault(require("./buttons/bt-names"));
|
|
27
27
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
28
|
-
var _default = {
|
|
28
|
+
var _default = exports.default = {
|
|
29
29
|
RichTextEditor: _draftEditor.RichTextEditor,
|
|
30
30
|
buttonNames: _btNames.default,
|
|
31
31
|
decorator: _draftEditor.decorator
|
|
32
|
-
};
|
|
33
|
-
exports.default = _default;
|
|
32
|
+
};
|
package/lib/styled.js
CHANGED
|
@@ -5,9 +5,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.TextEditorWrapper = exports.EnlargeButtonWrapper = exports.DraftEditorWrapper = exports.DraftEditorControlsWrapper = exports.DraftEditorControls = exports.DraftEditorContainer = void 0;
|
|
7
7
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
8
|
-
function _getRequireWildcardCache(
|
|
9
|
-
function _interopRequireWildcard(
|
|
10
|
-
const DraftEditorWrapper = _styledComponents.default.div`
|
|
8
|
+
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); }
|
|
9
|
+
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; }
|
|
10
|
+
const DraftEditorWrapper = exports.DraftEditorWrapper = _styledComponents.default.div`
|
|
11
11
|
/* Rich-editor default setting (.RichEditor-root)*/
|
|
12
12
|
background: #fff;
|
|
13
13
|
border: 1px solid #ddd;
|
|
@@ -25,14 +25,12 @@ const DraftEditorWrapper = _styledComponents.default.div`
|
|
|
25
25
|
border-radius: 6px;
|
|
26
26
|
padding: 0 1rem 1rem;
|
|
27
27
|
`;
|
|
28
|
-
exports.
|
|
29
|
-
const DraftEditorControls = _styledComponents.default.div`
|
|
28
|
+
const DraftEditorControls = exports.DraftEditorControls = _styledComponents.default.div`
|
|
30
29
|
padding-top: 1rem;
|
|
31
30
|
width: 100%;
|
|
32
31
|
background: rgb(255, 255, 255);
|
|
33
32
|
`;
|
|
34
|
-
exports.
|
|
35
|
-
const DraftEditorControlsWrapper = _styledComponents.default.div`
|
|
33
|
+
const DraftEditorControlsWrapper = exports.DraftEditorControlsWrapper = _styledComponents.default.div`
|
|
36
34
|
width: 100%;
|
|
37
35
|
position: relative;
|
|
38
36
|
display: flex;
|
|
@@ -41,16 +39,14 @@ const DraftEditorControlsWrapper = _styledComponents.default.div`
|
|
|
41
39
|
padding-right: 45px;
|
|
42
40
|
gap: 2px;
|
|
43
41
|
`;
|
|
44
|
-
exports.
|
|
45
|
-
const TextEditorWrapper = _styledComponents.default.div`
|
|
42
|
+
const TextEditorWrapper = exports.TextEditorWrapper = _styledComponents.default.div`
|
|
46
43
|
/* Rich-editor default setting (.RichEditor-editor)*/
|
|
47
44
|
border-top: 1px solid #ddd;
|
|
48
45
|
cursor: text;
|
|
49
46
|
font-size: 16px;
|
|
50
47
|
margin-top: 10px;
|
|
51
48
|
`;
|
|
52
|
-
exports.
|
|
53
|
-
const DraftEditorContainer = _styledComponents.default.div`
|
|
49
|
+
const DraftEditorContainer = exports.DraftEditorContainer = _styledComponents.default.div`
|
|
54
50
|
overflow-x: hidden;
|
|
55
51
|
position: relative;
|
|
56
52
|
margin-top: 4px;
|
|
@@ -94,11 +90,9 @@ const DraftEditorContainer = _styledComponents.default.div`
|
|
|
94
90
|
` : ''}
|
|
95
91
|
}
|
|
96
92
|
`;
|
|
97
|
-
exports.
|
|
98
|
-
const EnlargeButtonWrapper = _styledComponents.default.div`
|
|
93
|
+
const EnlargeButtonWrapper = exports.EnlargeButtonWrapper = _styledComponents.default.div`
|
|
99
94
|
position: absolute;
|
|
100
95
|
top: 0;
|
|
101
96
|
right: 0;
|
|
102
97
|
margin: 0;
|
|
103
|
-
`;
|
|
104
|
-
exports.EnlargeButtonWrapper = EnlargeButtonWrapper;
|
|
98
|
+
`;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kids-reporter/draft-editor",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.5",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
],
|
|
24
24
|
"license": "MIT",
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@kids-reporter/draft-renderer": "1.0.
|
|
26
|
+
"@kids-reporter/draft-renderer": "1.0.5",
|
|
27
27
|
"@twreporter/errors": "^1.1.2",
|
|
28
28
|
"draft-js": "^0.11.7"
|
|
29
29
|
},
|