@seafile/sdoc-editor 3.0.83 → 3.0.85
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.
|
@@ -275,6 +275,12 @@
|
|
|
275
275
|
.sdoc-code-block-pre {
|
|
276
276
|
background: #FAFAFA;
|
|
277
277
|
border: 1px solid #f0f0f0;
|
|
278
|
+
position: relative;
|
|
279
|
+
overflow-y: hidden !important;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
.sdoc-code-block-pre.hidden {
|
|
283
|
+
padding-bottom: 48px !important;
|
|
278
284
|
}
|
|
279
285
|
|
|
280
286
|
.sdoc-code-block-pre .sdoc-code-no-wrap {
|
|
@@ -285,6 +291,38 @@
|
|
|
285
291
|
white-space: pre;
|
|
286
292
|
}
|
|
287
293
|
|
|
294
|
+
.sdoc-code-block-container .sdoc-code-block-hidden-icon {
|
|
295
|
+
height: 32px;
|
|
296
|
+
display: flex;
|
|
297
|
+
justify-content: center;
|
|
298
|
+
align-items: center;
|
|
299
|
+
position: absolute;
|
|
300
|
+
left: 48%;
|
|
301
|
+
bottom: 8px;
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
.sdoc-code-block-container .sdoc-code-block-hidden-icon .icon-container {
|
|
305
|
+
width: 32px;
|
|
306
|
+
height: 20px;
|
|
307
|
+
background-color: #999;
|
|
308
|
+
border-radius: 30px;
|
|
309
|
+
display: flex;
|
|
310
|
+
align-items: center;
|
|
311
|
+
justify-content: center;
|
|
312
|
+
cursor: pointer;
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
.sdoc-code-block-container .sdoc-code-block-hidden-icon .icon-container .sdocfont {
|
|
316
|
+
color: #fff;
|
|
317
|
+
font-size: 12px;
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
.sdoc-code-block-code.hide-code {
|
|
321
|
+
max-height: 580.2px;
|
|
322
|
+
display: block;
|
|
323
|
+
overflow: hidden;
|
|
324
|
+
}
|
|
325
|
+
|
|
288
326
|
.sdoc-code-block-code .sdoc-code-line {
|
|
289
327
|
position: relative;
|
|
290
328
|
counter-increment: number;
|
|
@@ -11,6 +11,7 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm
|
|
|
11
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
12
12
|
var _slate = require("@seafile/slate");
|
|
13
13
|
var _slateReact = require("@seafile/slate-react");
|
|
14
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
14
15
|
var _constants = require("../../../constants");
|
|
15
16
|
var _useScrollContext = require("../../../hooks/use-scroll-context");
|
|
16
17
|
var _eventBus = _interopRequireDefault(require("../../../utils/event-bus"));
|
|
@@ -41,6 +42,10 @@ var CodeBlock = function CodeBlock(_ref) {
|
|
|
41
42
|
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
42
43
|
showHoverMenu = _useState4[0],
|
|
43
44
|
setShowHoverMenu = _useState4[1];
|
|
45
|
+
var _useState5 = (0, _react.useState)(false),
|
|
46
|
+
_useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
|
|
47
|
+
showAllCode = _useState6[0],
|
|
48
|
+
setShowAllCode = _useState6[1];
|
|
44
49
|
var onChangeLanguage = (0, _react.useCallback)(function (lang) {
|
|
45
50
|
var language = lang.value;
|
|
46
51
|
var path = _slateReact.ReactEditor.findPath(editor, element);
|
|
@@ -133,6 +138,10 @@ var CodeBlock = function CodeBlock(_ref) {
|
|
|
133
138
|
var handleScroll = function handleScroll() {
|
|
134
139
|
_eventBus["default"].getInstance().dispatch(_constants.INTERNAL_EVENT.UPDATE_SEARCH_REPLACE_HIGHLIGHT);
|
|
135
140
|
};
|
|
141
|
+
var isHiddenCodeBlockParts = children.length > 30;
|
|
142
|
+
var toggleHidden = function toggleHidden() {
|
|
143
|
+
setShowAllCode(!showAllCode);
|
|
144
|
+
};
|
|
136
145
|
return /*#__PURE__*/_react["default"].createElement("div", Object.assign({
|
|
137
146
|
"data-id": element.id
|
|
138
147
|
}, attributes, {
|
|
@@ -141,11 +150,24 @@ var CodeBlock = function CodeBlock(_ref) {
|
|
|
141
150
|
onMouseLeave: onMouseLeave
|
|
142
151
|
}), /*#__PURE__*/_react["default"].createElement("pre", {
|
|
143
152
|
onScroll: handleScroll,
|
|
144
|
-
className: 'sdoc-code-block-pre',
|
|
153
|
+
className: (0, _classnames["default"])('sdoc-code-block-pre', {
|
|
154
|
+
'hidden': isHiddenCodeBlockParts
|
|
155
|
+
}),
|
|
145
156
|
ref: codeBlockRef
|
|
146
157
|
}, /*#__PURE__*/_react["default"].createElement("code", {
|
|
147
|
-
className: "sdoc-code-block-code ".concat(white_space === 'nowrap' ? 'sdoc-code-no-wrap' : '')
|
|
148
|
-
}, children)),
|
|
158
|
+
className: "sdoc-code-block-code ".concat(white_space === 'nowrap' ? 'sdoc-code-no-wrap' : '', " ").concat(!showAllCode ? 'hide-code' : '')
|
|
159
|
+
}, children)), children.length > 30 && /*#__PURE__*/_react["default"].createElement("span", {
|
|
160
|
+
className: "sdoc-code-block-hidden-icon",
|
|
161
|
+
onClick: toggleHidden,
|
|
162
|
+
contentEditable: false,
|
|
163
|
+
suppressContentEditableWarning: true
|
|
164
|
+
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
165
|
+
className: "icon-container"
|
|
166
|
+
}, !showAllCode ? /*#__PURE__*/_react["default"].createElement("i", {
|
|
167
|
+
className: "sdocfont sdoc-arrow-down arrow"
|
|
168
|
+
}) : /*#__PURE__*/_react["default"].createElement("i", {
|
|
169
|
+
className: "sdocfont sdoc-arrow-up arrow"
|
|
170
|
+
}))), showHoverMenu && /*#__PURE__*/_react["default"].createElement(_hoverMenu["default"], {
|
|
149
171
|
menuPosition: menuPosition,
|
|
150
172
|
onChangeLanguage: onChangeLanguage,
|
|
151
173
|
language: element.language,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@seafile/sdoc-editor",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.85",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"test": "jest",
|
|
@@ -72,5 +72,5 @@
|
|
|
72
72
|
"publishConfig": {
|
|
73
73
|
"access": "public"
|
|
74
74
|
},
|
|
75
|
-
"gitHead": "
|
|
75
|
+
"gitHead": "17559d80caf39007b3ddec54671e986ba6c9254a"
|
|
76
76
|
}
|