@manuscripts/body-editor 2.8.63-LEAN-4160.2 → 2.8.63
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.
|
@@ -32,6 +32,7 @@ const react_dnd_1 = require("react-dnd");
|
|
|
32
32
|
const context_menu_1 = require("../../lib/context-menu");
|
|
33
33
|
const dnd_1 = require("../../lib/dnd");
|
|
34
34
|
const track_changes_utils_1 = require("../../lib/track-changes-utils");
|
|
35
|
+
const utils_1 = require("../../lib/utils");
|
|
35
36
|
const node_type_icons_1 = require("../../node-type-icons");
|
|
36
37
|
const Outline_1 = require("./Outline");
|
|
37
38
|
const excludedTypes = [
|
|
@@ -94,6 +95,7 @@ const DraggableTree = ({ tree, view, depth, can, }) => {
|
|
|
94
95
|
const [dropSide, setDropSide] = (0, react_1.useState)();
|
|
95
96
|
const [isOpen, setOpen] = (0, react_1.useState)(depth === 0);
|
|
96
97
|
const ref = (0, react_1.useRef)(null);
|
|
98
|
+
const disableDragAndDrop = view ? (0, utils_1.isBodyLocked)(view.state) : true;
|
|
97
99
|
const { node, items, parent } = tree;
|
|
98
100
|
const itemText = (node) => {
|
|
99
101
|
const text = (0, transform_1.nodeTitle)(node);
|
|
@@ -110,7 +112,7 @@ const DraggableTree = ({ tree, view, depth, can, }) => {
|
|
|
110
112
|
type: 'outline',
|
|
111
113
|
item: tree,
|
|
112
114
|
canDrag: () => {
|
|
113
|
-
return depth !== 0;
|
|
115
|
+
return depth !== 0 && !disableDragAndDrop;
|
|
114
116
|
},
|
|
115
117
|
collect: (monitor) => ({
|
|
116
118
|
isDragging: monitor.isDragging(),
|
|
@@ -119,6 +121,9 @@ const DraggableTree = ({ tree, view, depth, can, }) => {
|
|
|
119
121
|
const [{ isOver }, dropRef] = (0, react_dnd_1.useDrop)({
|
|
120
122
|
accept: 'outline',
|
|
121
123
|
canDrop(item, monitor) {
|
|
124
|
+
if (disableDragAndDrop) {
|
|
125
|
+
return false;
|
|
126
|
+
}
|
|
122
127
|
if (isAbstractOrBackmatter(item) || isAbstractOrBackmatter(tree)) {
|
|
123
128
|
return false;
|
|
124
129
|
}
|
|
@@ -142,20 +147,20 @@ const DraggableTree = ({ tree, view, depth, can, }) => {
|
|
|
142
147
|
return tree.parent.canReplace(index, index, prosemirror_model_1.Fragment.from(item.node));
|
|
143
148
|
},
|
|
144
149
|
hover(item, monitor) {
|
|
145
|
-
if (!ref.current || !monitor.canDrop()) {
|
|
150
|
+
if (disableDragAndDrop || !ref.current || !monitor.canDrop()) {
|
|
146
151
|
return;
|
|
147
152
|
}
|
|
148
153
|
const side = (0, dnd_1.getDropSide)(ref.current, monitor);
|
|
149
154
|
setDropSide(side);
|
|
150
155
|
},
|
|
151
156
|
drop(item, monitor) {
|
|
152
|
-
if (!ref.current || !view) {
|
|
157
|
+
if (disableDragAndDrop || !ref.current || !view) {
|
|
153
158
|
return;
|
|
154
159
|
}
|
|
155
160
|
const side = (0, dnd_1.getDropSide)(ref.current, monitor);
|
|
156
161
|
const pos = side === 'before' ? tree.pos - 1 : tree.endPos - 1;
|
|
157
162
|
let sourcePos = item.pos - 1;
|
|
158
|
-
const node = item.node.type.schema.nodes[item.node.type.name].create(Object.assign({}, item.node.attrs), item.node.content);
|
|
163
|
+
const node = item.node.type.schema.nodes[item.node.type.name].create(Object.assign(Object.assign({}, item.node.attrs), { id: '' }), item.node.content);
|
|
159
164
|
const tr = view.state.tr.insert(pos, node);
|
|
160
165
|
sourcePos = tr.mapping.map(sourcePos);
|
|
161
166
|
tr.delete(sourcePos, sourcePos + item.node.nodeSize);
|
|
@@ -182,7 +187,8 @@ const DraggableTree = ({ tree, view, depth, can, }) => {
|
|
|
182
187
|
dragRef(dropRef(ref));
|
|
183
188
|
const dragClass = isDragging ? 'dragging' : '';
|
|
184
189
|
const dropClass = isOver && dropSide ? `drop-${dropSide}` : '';
|
|
185
|
-
|
|
190
|
+
const deletedClass = isDeletedItem ? 'deleted' : '';
|
|
191
|
+
return (react_1.default.createElement(Outline_1.Outline, { ref: ref, className: `${dragClass} ${dropClass} ${deletedClass}` },
|
|
186
192
|
!isTop && node.type.name != 'manuscript' && (react_1.default.createElement(Outline_1.OutlineItem, { depth: depth, onContextMenu: handleContextMenu },
|
|
187
193
|
items.length ? (react_1.default.createElement(Outline_1.OutlineItemArrow, { onClick: toggleOpen }, isOpen ? react_1.default.createElement(style_guide_1.TriangleExpandedIcon, null) : react_1.default.createElement(style_guide_1.TriangleCollapsedIcon, null))) : (react_1.default.createElement(Outline_1.OutlineItemNoArrow, null)),
|
|
188
194
|
react_1.default.createElement(Outline_1.OutlineItemLink, { to: `#${node.attrs.id}` },
|
package/dist/cjs/versions.js
CHANGED
|
@@ -6,6 +6,7 @@ import { useDrag, useDrop } from 'react-dnd';
|
|
|
6
6
|
import { ContextMenu } from '../../lib/context-menu';
|
|
7
7
|
import { getDropSide } from '../../lib/dnd';
|
|
8
8
|
import { isDeleted } from '../../lib/track-changes-utils';
|
|
9
|
+
import { isBodyLocked } from '../../lib/utils';
|
|
9
10
|
import { nodeTypeIcon } from '../../node-type-icons';
|
|
10
11
|
import { Outline, OutlineItem, OutlineItemArrow, OutlineItemIcon, OutlineItemLink, OutlineItemLinkText, OutlineItemNoArrow, OutlineItemPlaceholder, } from './Outline';
|
|
11
12
|
const excludedTypes = [
|
|
@@ -67,6 +68,7 @@ export const DraggableTree = ({ tree, view, depth, can, }) => {
|
|
|
67
68
|
const [dropSide, setDropSide] = useState();
|
|
68
69
|
const [isOpen, setOpen] = useState(depth === 0);
|
|
69
70
|
const ref = useRef(null);
|
|
71
|
+
const disableDragAndDrop = view ? isBodyLocked(view.state) : true;
|
|
70
72
|
const { node, items, parent } = tree;
|
|
71
73
|
const itemText = (node) => {
|
|
72
74
|
const text = nodeTitle(node);
|
|
@@ -83,7 +85,7 @@ export const DraggableTree = ({ tree, view, depth, can, }) => {
|
|
|
83
85
|
type: 'outline',
|
|
84
86
|
item: tree,
|
|
85
87
|
canDrag: () => {
|
|
86
|
-
return depth !== 0;
|
|
88
|
+
return depth !== 0 && !disableDragAndDrop;
|
|
87
89
|
},
|
|
88
90
|
collect: (monitor) => ({
|
|
89
91
|
isDragging: monitor.isDragging(),
|
|
@@ -92,6 +94,9 @@ export const DraggableTree = ({ tree, view, depth, can, }) => {
|
|
|
92
94
|
const [{ isOver }, dropRef] = useDrop({
|
|
93
95
|
accept: 'outline',
|
|
94
96
|
canDrop(item, monitor) {
|
|
97
|
+
if (disableDragAndDrop) {
|
|
98
|
+
return false;
|
|
99
|
+
}
|
|
95
100
|
if (isAbstractOrBackmatter(item) || isAbstractOrBackmatter(tree)) {
|
|
96
101
|
return false;
|
|
97
102
|
}
|
|
@@ -115,20 +120,20 @@ export const DraggableTree = ({ tree, view, depth, can, }) => {
|
|
|
115
120
|
return tree.parent.canReplace(index, index, Fragment.from(item.node));
|
|
116
121
|
},
|
|
117
122
|
hover(item, monitor) {
|
|
118
|
-
if (!ref.current || !monitor.canDrop()) {
|
|
123
|
+
if (disableDragAndDrop || !ref.current || !monitor.canDrop()) {
|
|
119
124
|
return;
|
|
120
125
|
}
|
|
121
126
|
const side = getDropSide(ref.current, monitor);
|
|
122
127
|
setDropSide(side);
|
|
123
128
|
},
|
|
124
129
|
drop(item, monitor) {
|
|
125
|
-
if (!ref.current || !view) {
|
|
130
|
+
if (disableDragAndDrop || !ref.current || !view) {
|
|
126
131
|
return;
|
|
127
132
|
}
|
|
128
133
|
const side = getDropSide(ref.current, monitor);
|
|
129
134
|
const pos = side === 'before' ? tree.pos - 1 : tree.endPos - 1;
|
|
130
135
|
let sourcePos = item.pos - 1;
|
|
131
|
-
const node = item.node.type.schema.nodes[item.node.type.name].create(Object.assign({}, item.node.attrs), item.node.content);
|
|
136
|
+
const node = item.node.type.schema.nodes[item.node.type.name].create(Object.assign(Object.assign({}, item.node.attrs), { id: '' }), item.node.content);
|
|
132
137
|
const tr = view.state.tr.insert(pos, node);
|
|
133
138
|
sourcePos = tr.mapping.map(sourcePos);
|
|
134
139
|
tr.delete(sourcePos, sourcePos + item.node.nodeSize);
|
|
@@ -155,7 +160,8 @@ export const DraggableTree = ({ tree, view, depth, can, }) => {
|
|
|
155
160
|
dragRef(dropRef(ref));
|
|
156
161
|
const dragClass = isDragging ? 'dragging' : '';
|
|
157
162
|
const dropClass = isOver && dropSide ? `drop-${dropSide}` : '';
|
|
158
|
-
|
|
163
|
+
const deletedClass = isDeletedItem ? 'deleted' : '';
|
|
164
|
+
return (React.createElement(Outline, { ref: ref, className: `${dragClass} ${dropClass} ${deletedClass}` },
|
|
159
165
|
!isTop && node.type.name != 'manuscript' && (React.createElement(OutlineItem, { depth: depth, onContextMenu: handleContextMenu },
|
|
160
166
|
items.length ? (React.createElement(OutlineItemArrow, { onClick: toggleOpen }, isOpen ? React.createElement(TriangleExpandedIcon, null) : React.createElement(TriangleCollapsedIcon, null))) : (React.createElement(OutlineItemNoArrow, null)),
|
|
161
167
|
React.createElement(OutlineItemLink, { to: `#${node.attrs.id}` },
|
package/dist/es/versions.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VERSION = '2.8.63
|
|
1
|
+
export const VERSION = '2.8.63';
|
|
2
2
|
export const MATHJAX_VERSION = '3.2.2';
|
package/dist/types/versions.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "2.8.63
|
|
1
|
+
export declare const VERSION = "2.8.63";
|
|
2
2
|
export declare const MATHJAX_VERSION = "3.2.2";
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@manuscripts/body-editor",
|
|
3
3
|
"description": "Prosemirror components for editing and viewing manuscripts",
|
|
4
|
-
"version": "2.8.63
|
|
4
|
+
"version": "2.8.63",
|
|
5
5
|
"repository": "github:Atypon-OpenSource/manuscripts-body-editor",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
7
|
"main": "dist/cjs",
|
|
@@ -22,8 +22,8 @@
|
|
|
22
22
|
"dependencies-versions": "node versions.mjs > src/versions.ts",
|
|
23
23
|
"prettier": "prettier --write 'src/**/*.{ts,tsx}'",
|
|
24
24
|
"prepare": "husky install",
|
|
25
|
-
"preversion": "concurrently 'yarn:typecheck' 'yarn:lint' 'yarn:test'",
|
|
26
25
|
"pretest": "yarn prebuild",
|
|
26
|
+
"preversion": "concurrently 'yarn:typecheck' 'yarn:lint' 'yarn:test'",
|
|
27
27
|
"test": "jest --runInBand",
|
|
28
28
|
"typecheck": "tsc --noEmit",
|
|
29
29
|
"version": "yarn build"
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"@manuscripts/json-schema": "2.2.11",
|
|
34
34
|
"@manuscripts/library": "1.3.14",
|
|
35
35
|
"@manuscripts/style-guide": "2.1.10",
|
|
36
|
-
"@manuscripts/track-changes-plugin": "1.10.
|
|
36
|
+
"@manuscripts/track-changes-plugin": "1.10.4",
|
|
37
37
|
"@manuscripts/transform": "3.0.62",
|
|
38
38
|
"@popperjs/core": "^2.11.8",
|
|
39
39
|
"astrocite-eutils": "^0.16.4",
|
|
@@ -759,8 +759,6 @@ figure.block:has(.equation.selected-suggestion) {
|
|
|
759
759
|
.block,
|
|
760
760
|
.tracking-visible
|
|
761
761
|
.selected-suggestion[data-track-op='wrap_with_node'][data-track-status='pending']
|
|
762
|
-
.block, .tracking-visible
|
|
763
|
-
.selected-suggestion[data-track-op='move'][data-track-status='pending']
|
|
764
762
|
.block {
|
|
765
763
|
box-shadow: inset 6px 0 0 var(--inserted-pending-color),
|
|
766
764
|
inset 9px 0 0 var(--inserted-pending-bg-color) !important;
|