UNPKG

@atlaskit/adf-schema

Version:

Shared package that contains the ADF-schema (json) and ProseMirror node/mark specs

83 lines (82 loc) 2.73 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.SideEffectsHandler = void 0; var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _table = require("./table"); var _rows = require("./rows"); var SideEffectsHandler = /*#__PURE__*/function () { function SideEffectsHandler(sideEffects) { (0, _classCallCheck2.default)(this, SideEffectsHandler); this.table = new _table.TableSideEffectHandler(sideEffects && sideEffects.table); this.rows = new _rows.RowsSideEffectHandler(sideEffects && sideEffects.rows); } (0, _createClass2.default)(SideEffectsHandler, [{ key: "getTableMap", value: function getTableMap(isDelete) { return this.table.getTableMap(isDelete); } }, { key: "map", value: function map(mapping) { var sideEffects = {}; var tableSideEffect = this.table.map(mapping); var rowsSideEffect = this.rows.map(mapping); if (tableSideEffect) { sideEffects.table = tableSideEffect; } if (rowsSideEffect) { sideEffects.rows = rowsSideEffect; } return sideEffects; } }, { key: "invert", value: function invert(originalDoc, isDelete, map) { var sideEffects = {}; var tableSideEffect = this.table.invert(originalDoc); if (tableSideEffect) { sideEffects.table = tableSideEffect; } var rowsSideEffect = this.rows.invert(originalDoc, isDelete, map); if (rowsSideEffect) { sideEffects.rows = rowsSideEffect; } return sideEffects; } }, { key: "toJSON", value: function toJSON() { var tableSideEffectJson = this.table.toJSON(); var rowsSideEffectJson = this.rows.toJSON(); if (!tableSideEffectJson && !rowsSideEffectJson) { return; } var sideEffectsJSON = {}; if (tableSideEffectJson) { sideEffectsJSON.table = tableSideEffectJson; } if (rowsSideEffectJson) { sideEffectsJSON.rows = rowsSideEffectJson; } return sideEffectsJSON; } }], [{ key: "fromJSON", value: function fromJSON(schema, json) { var sideEffects = {}; if (json.table) { sideEffects.table = _table.TableSideEffectHandler.fromJSON(schema, json.table); } if (json.rows) { sideEffects.rows = _rows.RowsSideEffectHandler.fromJSON(schema, json.rows); } return sideEffects; } }]); return SideEffectsHandler; }(); exports.SideEffectsHandler = SideEffectsHandler;