@kids-reporter/draft-editor 1.0.21 → 1.0.22
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.
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.EditableEmbeddedCode = EditableEmbeddedCode;
|
|
7
7
|
var _fields = require("@keystone-ui/fields");
|
|
8
|
+
var _mediaQuery = require("@kids-reporter/draft-renderer/lib/utils/media-query");
|
|
8
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
10
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
10
11
|
var _embeddedCode = require("../buttons/embedded-code");
|
|
@@ -28,9 +29,17 @@ function EmbeddedCode({
|
|
|
28
29
|
});
|
|
29
30
|
}
|
|
30
31
|
const StyledEmbeddedCode = (0, _styledComponents.default)(EmbeddedCode)`
|
|
31
|
-
max-width:
|
|
32
|
+
max-width: 584px;
|
|
32
33
|
margin: 0 auto 30px auto;
|
|
33
34
|
background-color: #fafbfc;
|
|
35
|
+
|
|
36
|
+
${_mediaQuery.mediaQuery.desktopAbove} {
|
|
37
|
+
max-width: 608px;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
${_mediaQuery.mediaQuery.largeOnly} {
|
|
41
|
+
max-width: 680px;
|
|
42
|
+
}
|
|
34
43
|
`;
|
|
35
44
|
const EditableBlock = (0, _styledComponents.default)(_styled.EditableBlock)`
|
|
36
45
|
&:hover {
|
|
@@ -38,6 +47,7 @@ const EditableBlock = (0, _styledComponents.default)(_styled.EditableBlock)`
|
|
|
38
47
|
background-color: #f0f0f0;
|
|
39
48
|
opacity: 0.3;
|
|
40
49
|
}
|
|
50
|
+
}
|
|
41
51
|
`;
|
|
42
52
|
function EditableEmbeddedCode(props) {
|
|
43
53
|
const [isInputOpen, setIsInputOpen] = (0, _react.useState)(false);
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.EditableBlock = void 0;
|
|
6
|
+
exports.FontStyler = exports.EditableBlock = void 0;
|
|
7
7
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
8
8
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
9
9
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -25,6 +25,74 @@ const _EditableBlock = _styledComponents.default.div`
|
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
`;
|
|
28
|
+
const FontStyler = exports.FontStyler = _styledComponents.default.div`
|
|
29
|
+
font-size: 18px;
|
|
30
|
+
font-weight: 500;
|
|
31
|
+
line-height: 2.1;
|
|
32
|
+
letter-spacing: 1.08px;
|
|
33
|
+
|
|
34
|
+
& h2 {
|
|
35
|
+
font-size: 28px;
|
|
36
|
+
font-weight: 700;
|
|
37
|
+
line-height: 1.6;
|
|
38
|
+
letter-spacing: 1.4px;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
& h3 {
|
|
42
|
+
font-size: 24px;
|
|
43
|
+
font-weight: 700;
|
|
44
|
+
line-height: 1.6;
|
|
45
|
+
letter-spacing: 1.2px;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
& h4 {
|
|
49
|
+
font-size: 22px;
|
|
50
|
+
font-weight: 700;
|
|
51
|
+
line-height: 1.6;
|
|
52
|
+
letter-spacing: 1.1px;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
& h5 {
|
|
56
|
+
font-size: 20px;
|
|
57
|
+
font-weight: 700;
|
|
58
|
+
line-height: 1.6;
|
|
59
|
+
letter-spacing: 1px;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
& h6 {
|
|
63
|
+
font-size: 18px;
|
|
64
|
+
font-weight: 700;
|
|
65
|
+
line-height: 1.6;
|
|
66
|
+
letter-spacing: 0.9px;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
@media (min-width: 1024px) {
|
|
70
|
+
& h2 {
|
|
71
|
+
font-size: 40px;
|
|
72
|
+
letter-spacing: 2px;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
& h3 {
|
|
76
|
+
font-size: 32px;
|
|
77
|
+
letter-spacing: 1.6px;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
& h4 {
|
|
81
|
+
font-size: 28px;
|
|
82
|
+
letter-spacing: 1.4px;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
& h5 {
|
|
86
|
+
font-size: 22px;
|
|
87
|
+
letter-spacing: 1.1px;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
& h6 {
|
|
91
|
+
font-size: 18px;
|
|
92
|
+
letter-spacing: 0.9px;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
`;
|
|
28
96
|
const EditableBlock = props => {
|
|
29
97
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_EditableBlock, {
|
|
30
98
|
className: props.className,
|
|
@@ -31,10 +31,6 @@ const ImageAlignOptions = exports.ImageAlignOptions = [{
|
|
|
31
31
|
value: ImageAlignment.PARAGRAPH,
|
|
32
32
|
label: '與文章段落等寬',
|
|
33
33
|
isDisabled: false
|
|
34
|
-
}, {
|
|
35
|
-
value: ImageAlignment.LEFT,
|
|
36
|
-
label: '靠左',
|
|
37
|
-
isDisabled: false
|
|
38
34
|
}, {
|
|
39
35
|
value: ImageAlignment.RIGHT,
|
|
40
36
|
label: '靠右',
|
package/lib/index.js
CHANGED
|
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "buttonNames", {
|
|
|
12
12
|
});
|
|
13
13
|
exports.default = void 0;
|
|
14
14
|
var _react = _interopRequireDefault(require("react"));
|
|
15
|
+
var _styled = require("./block-renderers/styled");
|
|
15
16
|
var _btNames = _interopRequireDefault(require("./buttons/bt-names"));
|
|
16
17
|
var _anchor = require("./entity-decorators/anchor");
|
|
17
18
|
var _annotation = require("./entity-decorators/annotation");
|
|
@@ -21,9 +22,11 @@ var _richTextEditor = require("./rich-text-editor");
|
|
|
21
22
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
22
23
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
23
24
|
const RichTextEditor = props => {
|
|
24
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_styled.FontStyler, {
|
|
26
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_richTextEditor.RichTextEditor, {
|
|
27
|
+
decorators: [_annotation.editableAnnotationDecorator, _link.editableLinkDecorator, _tocAnchor.editableTOCAnchorDecorator, _anchor.editableAnchorDecorator],
|
|
28
|
+
...props
|
|
29
|
+
})
|
|
27
30
|
});
|
|
28
31
|
};
|
|
29
32
|
exports.RichTextEditor = RichTextEditor;
|
package/lib/rich-text-editor.js
CHANGED
|
@@ -8,12 +8,13 @@ var _draftRenderer = require("@kids-reporter/draft-renderer");
|
|
|
8
8
|
var _draftJs = require("draft-js");
|
|
9
9
|
var _react = _interopRequireDefault(require("react"));
|
|
10
10
|
var _blockRendererFn = require("./block-renderer-fn");
|
|
11
|
+
var _styled = require("./block-renderers/styled");
|
|
11
12
|
var _buttons = require("./buttons");
|
|
12
13
|
var _bgColor = require("./buttons/bg-color");
|
|
13
14
|
var _btNames = _interopRequireDefault(require("./buttons/bt-names"));
|
|
14
15
|
var _fontColor = require("./buttons/font-color");
|
|
15
16
|
var _imageSelector = require("./buttons/selector/image-selector");
|
|
16
|
-
var
|
|
17
|
+
var _styled2 = require("./styled");
|
|
17
18
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
18
19
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
19
20
|
const styleSource = ['https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css'].map((src, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)("link", {
|
|
@@ -175,11 +176,11 @@ class RichTextEditor extends _react.default.Component {
|
|
|
175
176
|
onChange: this.onChange,
|
|
176
177
|
readOnly: readOnly
|
|
177
178
|
};
|
|
178
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
179
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_styled2.DraftEditorContainer, {
|
|
179
180
|
isEnlarged: isEnlarged,
|
|
180
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
181
|
-
children: [styleSource, /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
182
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
181
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_styled2.DraftEditorWrapper, {
|
|
182
|
+
children: [styleSource, /*#__PURE__*/(0, _jsxRuntime.jsx)(_styled2.DraftEditorControls, {
|
|
183
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_styled2.DraftEditorControlsWrapper, {
|
|
183
184
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_buttons.BlockStyleControls, {
|
|
184
185
|
disabledButtons: disabledButtons,
|
|
185
186
|
editorState: editorState,
|
|
@@ -190,7 +191,7 @@ class RichTextEditor extends _react.default.Component {
|
|
|
190
191
|
editorState: editorState,
|
|
191
192
|
onToggle: this.toggleInlineStyle,
|
|
192
193
|
readOnly: readOnly
|
|
193
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
194
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_styled2.EnlargeButtonWrapper, {
|
|
194
195
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_buttons.CustomEnlargeButton, {
|
|
195
196
|
onToggle: this.toggleEnlarge,
|
|
196
197
|
isEnlarged: isEnlarged
|
|
@@ -252,26 +253,28 @@ class RichTextEditor extends _react.default.Component {
|
|
|
252
253
|
...commonProps
|
|
253
254
|
})]
|
|
254
255
|
})
|
|
255
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
256
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_styled2.TextEditorWrapper, {
|
|
256
257
|
onClick: () => {
|
|
257
258
|
if (this.editorRef) {
|
|
258
259
|
;
|
|
259
260
|
this.editorRef?.focus();
|
|
260
261
|
}
|
|
261
262
|
},
|
|
262
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
263
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_styled.FontStyler, {
|
|
264
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_draftJs.Editor, {
|
|
265
|
+
blockRenderMap: _draftRenderer.blockRenderMap,
|
|
266
|
+
blockRendererFn: this.blockRendererFn,
|
|
267
|
+
customStyleFn: _draftRenderer.customStyleFn,
|
|
268
|
+
editorState: editorState,
|
|
269
|
+
handleKeyCommand: this.handleKeyCommand,
|
|
270
|
+
handleReturn: this.handleReturn,
|
|
271
|
+
keyBindingFn: this.mapKeyToEditorCommand,
|
|
272
|
+
onChange: this.onChange,
|
|
273
|
+
placeholder: "Tell a story...",
|
|
274
|
+
ref: this.editorRef,
|
|
275
|
+
spellCheck: true,
|
|
276
|
+
readOnly: readOnly
|
|
277
|
+
})
|
|
275
278
|
})
|
|
276
279
|
})]
|
|
277
280
|
})
|
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.22",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"@keystone-ui/button": "^7.0.2",
|
|
30
30
|
"@keystone-ui/fields": "^7.2.0",
|
|
31
31
|
"@keystone-ui/modals": "^6.0.3",
|
|
32
|
-
"@kids-reporter/draft-renderer": "^1.0.
|
|
32
|
+
"@kids-reporter/draft-renderer": "^1.0.18",
|
|
33
33
|
"@twreporter/errors": "^1.1.2",
|
|
34
34
|
"axios": "^1.12.2",
|
|
35
35
|
"draft-js": "^0.11.7"
|