@fiduswriter/editor 0.2.6 → 0.2.9
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/css/figure.css +88 -0
- package/css/tracking.css +45 -0
- package/dist/copyright_dialog/templates.d.ts.map +1 -1
- package/dist/copyright_dialog/templates.js +11 -31
- package/dist/copyright_dialog/templates.js.map +1 -1
- package/dist/dialogs/epub_export.d.ts +15 -0
- package/dist/dialogs/epub_export.d.ts.map +1 -0
- package/dist/dialogs/epub_export.js +43 -0
- package/dist/dialogs/epub_export.js.map +1 -0
- package/dist/dialogs/html_export.d.ts +3 -0
- package/dist/dialogs/html_export.d.ts.map +1 -1
- package/dist/dialogs/html_export.js +4 -3
- package/dist/dialogs/html_export.js.map +1 -1
- package/dist/dialogs/index.d.ts +2 -0
- package/dist/dialogs/index.d.ts.map +1 -1
- package/dist/dialogs/index.js +2 -0
- package/dist/dialogs/index.js.map +1 -1
- package/dist/dialogs/template_export.d.ts +13 -0
- package/dist/dialogs/template_export.d.ts.map +1 -0
- package/dist/dialogs/template_export.js +46 -0
- package/dist/dialogs/template_export.js.map +1 -0
- package/dist/dialogs/templates.d.ts +9 -0
- package/dist/dialogs/templates.d.ts.map +1 -1
- package/dist/dialogs/templates.js +54 -12
- package/dist/dialogs/templates.js.map +1 -1
- package/dist/document_template/index.d.ts.map +1 -1
- package/dist/document_template/index.js +23 -4
- package/dist/document_template/index.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -3
- package/dist/index.js.map +1 -1
- package/dist/menus/headerbar/model.d.ts.map +1 -1
- package/dist/menus/headerbar/model.js +31 -10
- package/dist/menus/headerbar/model.js.map +1 -1
- package/dist/state_plugins/clipboard.d.ts.map +1 -1
- package/dist/state_plugins/clipboard.js +67 -3
- package/dist/state_plugins/clipboard.js.map +1 -1
- package/dist/track/accept.d.ts.map +1 -1
- package/dist/track/accept.js +21 -4
- package/dist/track/accept.js.map +1 -1
- package/dist/track/reject.d.ts.map +1 -1
- package/dist/track/reject.js +17 -5
- package/dist/track/reject.js.map +1 -1
- package/dist/types.d.ts +0 -1
- package/dist/types.d.ts.map +1 -1
- package/locale/en/messages.json +18 -1
- package/locale/en_US/messages.json +18 -1
- package/package.json +6 -6
- package/src/copyright_dialog/templates.ts +35 -31
- package/src/dialogs/epub_export.ts +66 -0
- package/src/dialogs/html_export.ts +11 -3
- package/src/dialogs/index.ts +2 -0
- package/src/dialogs/template_export.ts +66 -0
- package/src/dialogs/templates.ts +117 -14
- package/src/document_template/index.ts +23 -4
- package/src/index.ts +1 -3
- package/src/menus/headerbar/model.ts +39 -10
- package/src/state_plugins/clipboard.ts +89 -5
- package/src/track/accept.ts +29 -4
- package/src/track/reject.ts +23 -5
- package/src/types.ts +0 -1
- package/src/images/edit_dialog/model.ts +0 -5
package/src/track/reject.ts
CHANGED
|
@@ -19,7 +19,12 @@ export const reject = (
|
|
|
19
19
|
return
|
|
20
20
|
}
|
|
21
21
|
const trackMark = nodeAtPos.marks.find(mark => mark.type.name === type)
|
|
22
|
-
|
|
22
|
+
// Block level track changes are stored in the node's track attribute
|
|
23
|
+
// rather than in marks (figures, tables, text blocks).
|
|
24
|
+
const blockTrack = (
|
|
25
|
+
nodeAtPos.attrs.track as Array<{type: string}> | undefined
|
|
26
|
+
)?.find(track => track.type === type)
|
|
27
|
+
if (!trackMark && !blockTrack) {
|
|
23
28
|
return
|
|
24
29
|
}
|
|
25
30
|
view.state.doc.nodesBetween(
|
|
@@ -38,10 +43,17 @@ export const reject = (
|
|
|
38
43
|
// Change has already affected inline node. Don't apply to block level.
|
|
39
44
|
return false
|
|
40
45
|
}
|
|
41
|
-
} else if (!trackMark.isInSet(node.marks)) {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
46
|
+
} else if (trackMark && !trackMark.isInSet(node.marks)) {
|
|
47
|
+
if (
|
|
48
|
+
!(
|
|
49
|
+
node.attrs.track as Array<{type: string}> | undefined
|
|
50
|
+
)?.some(track => track.type === type)
|
|
51
|
+
) {
|
|
52
|
+
reachedEnd = true
|
|
53
|
+
return false
|
|
54
|
+
}
|
|
55
|
+
inlineChange = true
|
|
56
|
+
} else if (trackMark) {
|
|
45
57
|
inlineChange = true
|
|
46
58
|
}
|
|
47
59
|
if (type === "insertion") {
|
|
@@ -66,6 +78,12 @@ export const reject = (
|
|
|
66
78
|
)
|
|
67
79
|
}
|
|
68
80
|
} else if (type === "format_change") {
|
|
81
|
+
// format_change only exists as a mark, so trackMark is
|
|
82
|
+
// guaranteed to be set here (the guard above would have
|
|
83
|
+
// returned otherwise).
|
|
84
|
+
if (!trackMark) {
|
|
85
|
+
return
|
|
86
|
+
}
|
|
69
87
|
;(trackMark.attrs.before as string[]).forEach(oldMark =>
|
|
70
88
|
tr.step(
|
|
71
89
|
new AddMarkStep(
|
package/src/types.ts
CHANGED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
// TODO: image editing was originally part of the usermedia Django app.
|
|
2
|
-
// This stub keeps the editor package buildable until a decision is made on
|
|
3
|
-
// whether image editing belongs in @fiduswriter/editor, @fiduswriter/frontend,
|
|
4
|
-
// or a separate package.
|
|
5
|
-
export const imageEditModel = (): {content: unknown[]} => ({content: []})
|