UNPKG

@slate-sheikah/bridge

Version:

slate-sheikah bridge: Bridge components for slate-sheikah. Slate + Automerge + Sockets

26 lines (19 loc) 2.54 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _utils = require("../../utils"); var _path = require("../../path"); const moveNode = (doc, op) => { const [from, fromIndex] = (0, _path.getParent)(doc, op.path); const [to, toIndex] = (0, _path.getParent)(doc, op.newPath); if (from.text || to.text) { throw new TypeError("Can't move node as child of a text node"); } (0, _path.getChildren)(to).splice(toIndex, 0, ...(0, _path.getChildren)(from).splice(fromIndex, 1).map(_utils.cloneNode)); return doc; }; var _default = moveNode; exports.default = _default; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcHBseS9ub2RlL21vdmVOb2RlLnRzIl0sIm5hbWVzIjpbIm1vdmVOb2RlIiwiZG9jIiwib3AiLCJmcm9tIiwiZnJvbUluZGV4IiwicGF0aCIsInRvIiwidG9JbmRleCIsIm5ld1BhdGgiLCJ0ZXh0IiwiVHlwZUVycm9yIiwic3BsaWNlIiwibWFwIiwiY2xvbmVOb2RlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBRUE7O0FBRUE7O0FBRUEsTUFBTUEsUUFBUSxHQUFHLENBQUNDLEdBQUQsRUFBaUJDLEVBQWpCLEtBQXNEO0FBQ3JFLFFBQU0sQ0FBQ0MsSUFBRCxFQUFPQyxTQUFQLElBQW9CLHFCQUFVSCxHQUFWLEVBQWVDLEVBQUUsQ0FBQ0csSUFBbEIsQ0FBMUI7QUFDQSxRQUFNLENBQUNDLEVBQUQsRUFBS0MsT0FBTCxJQUFnQixxQkFBVU4sR0FBVixFQUFlQyxFQUFFLENBQUNNLE9BQWxCLENBQXRCOztBQUVBLE1BQUlMLElBQUksQ0FBQ00sSUFBTCxJQUFhSCxFQUFFLENBQUNHLElBQXBCLEVBQTBCO0FBQ3hCLFVBQU0sSUFBSUMsU0FBSixDQUFjLHlDQUFkLENBQU47QUFDRDs7QUFFRCx5QkFBWUosRUFBWixFQUFnQkssTUFBaEIsQ0FDRUosT0FERixFQUVFLENBRkYsRUFHRSxHQUFHLHVCQUFZSixJQUFaLEVBQ0FRLE1BREEsQ0FDT1AsU0FEUCxFQUNrQixDQURsQixFQUVBUSxHQUZBLENBRUlDLGdCQUZKLENBSEw7QUFRQSxTQUFPWixHQUFQO0FBQ0QsQ0FqQkQ7O2VBbUJlRCxRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW92ZU5vZGVPcGVyYXRpb24gfSBmcm9tICdzbGF0ZSdcblxuaW1wb3J0IHsgY2xvbmVOb2RlIH0gZnJvbSAnLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBTeW5jVmFsdWUgfSBmcm9tICcuLi8uLi9tb2RlbCdcbmltcG9ydCB7IGdldFBhcmVudCwgZ2V0Q2hpbGRyZW4gfSBmcm9tICcuLi8uLi9wYXRoJ1xuXG5jb25zdCBtb3ZlTm9kZSA9IChkb2M6IFN5bmNWYWx1ZSwgb3A6IE1vdmVOb2RlT3BlcmF0aW9uKTogU3luY1ZhbHVlID0+IHtcbiAgY29uc3QgW2Zyb20sIGZyb21JbmRleF0gPSBnZXRQYXJlbnQoZG9jLCBvcC5wYXRoKVxuICBjb25zdCBbdG8sIHRvSW5kZXhdID0gZ2V0UGFyZW50KGRvYywgb3AubmV3UGF0aClcblxuICBpZiAoZnJvbS50ZXh0IHx8IHRvLnRleHQpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2FuJ3QgbW92ZSBub2RlIGFzIGNoaWxkIG9mIGEgdGV4dCBub2RlXCIpXG4gIH1cblxuICBnZXRDaGlsZHJlbih0bykuc3BsaWNlKFxuICAgIHRvSW5kZXgsXG4gICAgMCxcbiAgICAuLi5nZXRDaGlsZHJlbihmcm9tKVxuICAgICAgLnNwbGljZShmcm9tSW5kZXgsIDEpXG4gICAgICAubWFwKGNsb25lTm9kZSlcbiAgKVxuXG4gIHJldHVybiBkb2Ncbn1cblxuZXhwb3J0IGRlZmF1bHQgbW92ZU5vZGVcbiJdfQ==