Skip to content
Snippets Groups Projects
Commit 592b84f4 authored by Christos's avatar Christos
Browse files

Merge branch 'images-lists' into 'master'

dont track images for now

See merge request !145
parents 8a7783fa 09f22ad1
No related branches found
No related tags found
1 merge request!145dont track images for now
import { SchemaHelpers } from 'wax-prosemirror-utilities';
const image = {
inline: true,
attrs: {
......@@ -15,7 +16,8 @@ const image = {
Object.assign(hook, {
src: hook.dom.getAttribute('src'),
title: hook.dom.getAttribute('title'),
// track: parseTracks(hook.dom.dataset.track),
id: hook.dom.dataset.id,
track: SchemaHelpers.parseTracks(hook.dom.dataset.track),
alt: hook.dom.getAttribute('alt'),
});
next();
......@@ -25,11 +27,15 @@ const image = {
toDOM(hook, next) {
const attrs = {};
let temp = '';
// if (hook.node.attrs.track.length) {
// // attrs["data-track"] = JSON.stringify(hook.node.attrs.track);
// }
const { src, alt, title } = hook.node.attrs;
hook.value = ['img', { src, alt, title }];
if (hook.node.attrs.track.length) {
attrs['data-track'] = JSON.stringify(hook.node.attrs.track);
attrs['data-id'] = hook.node.attrs.id;
}
const { src, alt, title, id, track } = hook.node.attrs;
hook.value = [
'img',
{ src, alt, title, 'data-id': id, 'data-track': track },
];
next();
},
};
......
......@@ -28,7 +28,7 @@ const backSpace = chainCommands(
const backSpaceShortCut = (state, dispatch, view) =>
backSpace(
state,
tr => dispatch(tr.setMeta('inputType', 'deleteContentBackward')),
tr => dispatch(tr.setMeta('inputType', 'backwardsDelete')),
view,
);
......
import { ReplaceStep } from "prosemirror-transform";
import { CellSelection } from "prosemirror-tables";
import { DocumentHelpers } from "wax-prosemirror-utilities";
import { ReplaceStep } from 'prosemirror-transform';
import { CellSelection } from 'prosemirror-tables';
import { DocumentHelpers } from 'wax-prosemirror-utilities';
import markDeletion from "./markDeletion";
import markInsertion from "./markInsertion";
import markDeletion from './markDeletion';
import markInsertion from './markInsertion';
const replaceStep = (state, tr, step, newTr, map, doc, user, date, group) => {
const cellDeleteTr =
["deleteContentBackward", "deleteContentForward"].includes(
tr.getMeta("inputType")
['backwardsDelete', 'deleteContentForward'].includes(
tr.getMeta('inputType'),
) && state.selection instanceof CellSelection;
// if deletion mark move to the end of deletion
......@@ -16,7 +16,7 @@ const replaceStep = (state, tr, step, newTr, map, doc, user, date, group) => {
const deletionMark = DocumentHelpers.findMark(
state,
deletionMarkSchema,
false
false,
);
const positionTo = deletionMark ? deletionMark.to : step.to;
......@@ -25,7 +25,7 @@ const replaceStep = (state, tr, step, newTr, map, doc, user, date, group) => {
positionTo, // We insert all the same steps, but with "from"/"to" both set to "to" in order not to delete content. Mapped as needed.
positionTo,
step.slice,
step.structure
step.structure,
)
: false;
......@@ -43,7 +43,7 @@ const replaceStep = (state, tr, step, newTr, map, doc, user, date, group) => {
const condensedStep = new ReplaceStep(
newStep.from,
newStep.to,
trTemp.doc.slice(newStep.from, mappedNewStepTo)
trTemp.doc.slice(newStep.from, mappedNewStepTo),
);
newTr.step(condensedStep);
......
......@@ -24,6 +24,8 @@ const trackedTransaction = (tr, state, user) => {
}
}
}
// images
if (tr.meta.inputType === 'backwardsDelete' && !tr.steps.lenght) return tr;
if (
!tr.steps.length ||
......@@ -82,7 +84,7 @@ const trackedTransaction = (tr, state, user) => {
if (
tr.selection instanceof TextSelection &&
(tr.selection.from < state.selection.from ||
tr.getMeta('inputType') === 'deleteContentBackward')
tr.getMeta('inputType') === 'backwardsDelete')
) {
const caretPos = map.map(tr.selection.from, -1);
newTr.setSelection(new TextSelection(newTr.doc.resolve(caretPos)));
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment