@skokenes/slate-yjs
Version:
Yjs bindings for Slate.
21 lines • 1.4 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const path_1 = require("../../path");
/**
* Applies a setNode operation to a SharedType
*
* @param doc
* @param op
*/
function setNode(doc, op) {
const node = path_1.getTarget(doc, op.path);
Object.entries(op.newProperties).forEach(([key, value]) => {
if (key === 'children' || key === 'text') {
throw new Error(`Cannot set the "${key}" property of nodes!`);
}
node.set(key, value);
});
return doc;
}
exports.default = setNode;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0Tm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hcHBseVRvWWpzL25vZGUvc2V0Tm9kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUVBLHFDQUF1QztBQUV2Qzs7Ozs7R0FLRztBQUNILFNBQXdCLE9BQU8sQ0FDN0IsR0FBZSxFQUNmLEVBQW9CO0lBRXBCLE1BQU0sSUFBSSxHQUFHLGdCQUFTLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQWdCLENBQUM7SUFFcEQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtRQUN4RCxJQUFJLEdBQUcsS0FBSyxVQUFVLElBQUksR0FBRyxLQUFLLE1BQU0sRUFBRTtZQUN4QyxNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixHQUFHLHNCQUFzQixDQUFDLENBQUM7U0FDL0Q7UUFFRCxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN2QixDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQWZELDBCQWVDIn0=