easy-richtextarea 3.0.154 → 4.0.1

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/lib/browser.js CHANGED
@@ -9,6 +9,30 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
+ EmptyOperation: function() {
13
+ return _empty.default;
14
+ },
15
+ InsertOperation: function() {
16
+ return _insert.default;
17
+ },
18
+ DeleteOperation: function() {
19
+ return _delete.default;
20
+ },
21
+ transformContent: function() {
22
+ return _transform.default;
23
+ },
24
+ operationsToJSON: function() {
25
+ return _toJSON.default;
26
+ },
27
+ operationsFromJSON: function() {
28
+ return _fromJSON.default;
29
+ },
30
+ generateOperations: function() {
31
+ return _generate.default;
32
+ },
33
+ transformOperations: function() {
34
+ return _transform1.default;
35
+ },
12
36
  Selection: function() {
13
37
  return _selection.default;
14
38
  },
@@ -16,6 +40,14 @@ _export(exports, {
16
40
  return _richTextarea.default;
17
41
  }
18
42
  });
43
+ var _empty = /*#__PURE__*/ _interopRequireDefault(require("./operation/empty"));
44
+ var _insert = /*#__PURE__*/ _interopRequireDefault(require("./operation/insert"));
45
+ var _delete = /*#__PURE__*/ _interopRequireDefault(require("./operation/delete"));
46
+ var _transform = /*#__PURE__*/ _interopRequireDefault(require("./content/transform"));
47
+ var _toJSON = /*#__PURE__*/ _interopRequireDefault(require("./operations/toJSON"));
48
+ var _fromJSON = /*#__PURE__*/ _interopRequireDefault(require("./operations/fromJSON"));
49
+ var _generate = /*#__PURE__*/ _interopRequireDefault(require("./operations/generate"));
50
+ var _transform1 = /*#__PURE__*/ _interopRequireDefault(require("./operations/transform"));
19
51
  var _selection = /*#__PURE__*/ _interopRequireDefault(require("./selection"));
20
52
  var _richTextarea = /*#__PURE__*/ _interopRequireDefault(require("./richTextarea"));
21
53
  function _interopRequireDefault(obj) {
@@ -24,4 +56,4 @@ function _interopRequireDefault(obj) {
24
56
  };
25
57
  }
26
58
 
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9icm93c2VyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIFNlbGVjdGlvbiB9IGZyb20gXCIuL3NlbGVjdGlvblwiO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIFJpY2hUZXh0YXJlYSB9IGZyb20gXCIuL3JpY2hUZXh0YXJlYVwiO1xuIl0sIm5hbWVzIjpbIlNlbGVjdGlvbiIsIlJpY2hUZXh0YXJlYSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBRW9CQSxTQUFTO2VBQVRBLGtCQUFTOztJQUVUQyxZQUFZO2VBQVpBLHFCQUFZOzs7OERBRks7aUVBRUcifQ==
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9icm93c2VyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIEVtcHR5T3BlcmF0aW9uIH0gZnJvbSBcIi4vb3BlcmF0aW9uL2VtcHR5XCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIEluc2VydE9wZXJhdGlvbiB9IGZyb20gXCIuL29wZXJhdGlvbi9pbnNlcnRcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRGVsZXRlT3BlcmF0aW9uIH0gZnJvbSBcIi4vb3BlcmF0aW9uL2RlbGV0ZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyB0cmFuc2Zvcm1Db250ZW50IH0gZnJvbSBcIi4vY29udGVudC90cmFuc2Zvcm1cIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgb3BlcmF0aW9uc1RvSlNPTiB9IGZyb20gXCIuL29wZXJhdGlvbnMvdG9KU09OXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIG9wZXJhdGlvbnNGcm9tSlNPTiB9IGZyb20gXCIuL29wZXJhdGlvbnMvZnJvbUpTT05cIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZ2VuZXJhdGVPcGVyYXRpb25zIH0gZnJvbSBcIi4vb3BlcmF0aW9ucy9nZW5lcmF0ZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyB0cmFuc2Zvcm1PcGVyYXRpb25zIH0gZnJvbSBcIi4vb3BlcmF0aW9ucy90cmFuc2Zvcm1cIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBTZWxlY3Rpb24gfSBmcm9tIFwiLi9zZWxlY3Rpb25cIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBSaWNoVGV4dGFyZWEgfSBmcm9tIFwiLi9yaWNoVGV4dGFyZWFcIjtcbiJdLCJuYW1lcyI6WyJFbXB0eU9wZXJhdGlvbiIsIkluc2VydE9wZXJhdGlvbiIsIkRlbGV0ZU9wZXJhdGlvbiIsInRyYW5zZm9ybUNvbnRlbnQiLCJvcGVyYXRpb25zVG9KU09OIiwib3BlcmF0aW9uc0Zyb21KU09OIiwiZ2VuZXJhdGVPcGVyYXRpb25zIiwidHJhbnNmb3JtT3BlcmF0aW9ucyIsIlNlbGVjdGlvbiIsIlJpY2hUZXh0YXJlYSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBRW9CQSxjQUFjO2VBQWRBLGNBQWM7O0lBQ2RDLGVBQWU7ZUFBZkEsZUFBZTs7SUFDZkMsZUFBZTtlQUFmQSxlQUFlOztJQUNmQyxnQkFBZ0I7ZUFBaEJBLGtCQUFnQjs7SUFDaEJDLGdCQUFnQjtlQUFoQkEsZUFBZ0I7O0lBQ2hCQyxrQkFBa0I7ZUFBbEJBLGlCQUFrQjs7SUFDbEJDLGtCQUFrQjtlQUFsQkEsaUJBQWtCOztJQUNsQkMsbUJBQW1CO2VBQW5CQSxtQkFBbUI7O0lBRW5CQyxTQUFTO2VBQVRBLGtCQUFTOztJQUVUQyxZQUFZO2VBQVpBLHFCQUFZOzs7MERBWFU7MkRBQ0M7MkRBQ0E7OERBQ0M7MkRBQ0E7NkRBQ0U7NkRBQ0E7K0RBQ0M7OERBRVY7aUVBRUcifQ==
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "EMPTY_STRING", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return EMPTY_STRING;
9
+ }
10
+ });
11
+ var EMPTY_STRING = "";
12
+
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25zdGFudHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBjb25zdCBFTVBUWV9TVFJJTkcgPSBcIlwiO1xuIl0sIm5hbWVzIjpbIkVNUFRZX1NUUklORyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBRWFBOzs7ZUFBQUE7OztBQUFOLElBQU1BLGVBQWUifQ==
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return transformContent;
9
+ }
10
+ });
11
+ function transformContent(content, operations) {
12
+ return operations.reduce(function(content, operation) {
13
+ return operation.transformContent(content);
14
+ }, content);
15
+ }
16
+
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZW50L3RyYW5zZm9ybS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcclxuXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHRyYW5zZm9ybUNvbnRlbnQoY29udGVudCwgb3BlcmF0aW9ucykge1xyXG4gIHJldHVybiBvcGVyYXRpb25zLnJlZHVjZSgoY29udGVudCwgb3BlcmF0aW9uKSA9PiBvcGVyYXRpb24udHJhbnNmb3JtQ29udGVudChjb250ZW50KSwgY29udGVudCk7XHJcbn1cclxuIl0sIm5hbWVzIjpbInRyYW5zZm9ybUNvbnRlbnQiLCJjb250ZW50Iiwib3BlcmF0aW9ucyIsInJlZHVjZSIsIm9wZXJhdGlvbiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBRUE7OztlQUF3QkE7OztBQUFULFNBQVNBLGlCQUFpQkMsT0FBTyxFQUFFQyxVQUFVLEVBQUU7SUFDNUQsT0FBT0EsV0FBV0MsTUFBTSxDQUFDLFNBQUNGLFNBQVNHO2VBQWNBLFVBQVVKLGdCQUFnQixDQUFDQztPQUFVQTtBQUN4RiJ9
package/lib/main.js CHANGED
@@ -2,17 +2,58 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- Object.defineProperty(exports, "Selection", {
6
- enumerable: true,
7
- get: function() {
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ types: function() {
13
+ return _types.default;
14
+ },
15
+ Selection: function() {
8
16
  return _selection.default;
17
+ },
18
+ EmptyOperation: function() {
19
+ return _empty.default;
20
+ },
21
+ InsertOperation: function() {
22
+ return _insert.default;
23
+ },
24
+ DeleteOperation: function() {
25
+ return _delete.default;
26
+ },
27
+ transformContent: function() {
28
+ return _transform.default;
29
+ },
30
+ operationsToJSON: function() {
31
+ return _toJSON.default;
32
+ },
33
+ operationsFromJSON: function() {
34
+ return _fromJSON.default;
35
+ },
36
+ generateOperations: function() {
37
+ return _generate.default;
38
+ },
39
+ transformOperations: function() {
40
+ return _transform1.default;
9
41
  }
10
42
  });
43
+ var _types = /*#__PURE__*/ _interopRequireDefault(require("./types"));
11
44
  var _selection = /*#__PURE__*/ _interopRequireDefault(require("./selection"));
45
+ var _empty = /*#__PURE__*/ _interopRequireDefault(require("./operation/empty"));
46
+ var _insert = /*#__PURE__*/ _interopRequireDefault(require("./operation/insert"));
47
+ var _delete = /*#__PURE__*/ _interopRequireDefault(require("./operation/delete"));
48
+ var _transform = /*#__PURE__*/ _interopRequireDefault(require("./content/transform"));
49
+ var _toJSON = /*#__PURE__*/ _interopRequireDefault(require("./operations/toJSON"));
50
+ var _fromJSON = /*#__PURE__*/ _interopRequireDefault(require("./operations/fromJSON"));
51
+ var _generate = /*#__PURE__*/ _interopRequireDefault(require("./operations/generate"));
52
+ var _transform1 = /*#__PURE__*/ _interopRequireDefault(require("./operations/transform"));
12
53
  function _interopRequireDefault(obj) {
13
54
  return obj && obj.__esModule ? obj : {
14
55
  default: obj
15
56
  };
16
57
  }
17
58
 
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tYWluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIFNlbGVjdGlvbiB9IGZyb20gXCIuL3NlbGVjdGlvblwiO1xuIl0sIm5hbWVzIjpbIlNlbGVjdGlvbiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBRW9CQTs7O2VBQUFBLGtCQUFTOzs7OERBQVEifQ==
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tYWluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIHR5cGVzIH0gZnJvbSBcIi4vdHlwZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgU2VsZWN0aW9uIH0gZnJvbSBcIi4vc2VsZWN0aW9uXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIEVtcHR5T3BlcmF0aW9uIH0gZnJvbSBcIi4vb3BlcmF0aW9uL2VtcHR5XCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIEluc2VydE9wZXJhdGlvbiB9IGZyb20gXCIuL29wZXJhdGlvbi9pbnNlcnRcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRGVsZXRlT3BlcmF0aW9uIH0gZnJvbSBcIi4vb3BlcmF0aW9uL2RlbGV0ZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyB0cmFuc2Zvcm1Db250ZW50IH0gZnJvbSBcIi4vY29udGVudC90cmFuc2Zvcm1cIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgb3BlcmF0aW9uc1RvSlNPTiB9IGZyb20gXCIuL29wZXJhdGlvbnMvdG9KU09OXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIG9wZXJhdGlvbnNGcm9tSlNPTiB9IGZyb20gXCIuL29wZXJhdGlvbnMvZnJvbUpTT05cIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZ2VuZXJhdGVPcGVyYXRpb25zIH0gZnJvbSBcIi4vb3BlcmF0aW9ucy9nZW5lcmF0ZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyB0cmFuc2Zvcm1PcGVyYXRpb25zIH0gZnJvbSBcIi4vb3BlcmF0aW9ucy90cmFuc2Zvcm1cIjtcbiJdLCJuYW1lcyI6WyJ0eXBlcyIsIlNlbGVjdGlvbiIsIkVtcHR5T3BlcmF0aW9uIiwiSW5zZXJ0T3BlcmF0aW9uIiwiRGVsZXRlT3BlcmF0aW9uIiwidHJhbnNmb3JtQ29udGVudCIsIm9wZXJhdGlvbnNUb0pTT04iLCJvcGVyYXRpb25zRnJvbUpTT04iLCJnZW5lcmF0ZU9wZXJhdGlvbnMiLCJ0cmFuc2Zvcm1PcGVyYXRpb25zIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFFb0JBLEtBQUs7ZUFBTEEsY0FBSzs7SUFDTEMsU0FBUztlQUFUQSxrQkFBUzs7SUFDVEMsY0FBYztlQUFkQSxjQUFjOztJQUNkQyxlQUFlO2VBQWZBLGVBQWU7O0lBQ2ZDLGVBQWU7ZUFBZkEsZUFBZTs7SUFDZkMsZ0JBQWdCO2VBQWhCQSxrQkFBZ0I7O0lBQ2hCQyxnQkFBZ0I7ZUFBaEJBLGVBQWdCOztJQUNoQkMsa0JBQWtCO2VBQWxCQSxpQkFBa0I7O0lBQ2xCQyxrQkFBa0I7ZUFBbEJBLGlCQUFrQjs7SUFDbEJDLG1CQUFtQjtlQUFuQkEsbUJBQW1COzs7MERBVE47OERBQ0k7MERBQ0s7MkRBQ0M7MkRBQ0E7OERBQ0M7MkRBQ0E7NkRBQ0U7NkRBQ0E7K0RBQ0MifQ==
@@ -0,0 +1,240 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return DeleteOperation;
9
+ }
10
+ });
11
+ var _empty = /*#__PURE__*/ _interopRequireDefault(require("../operation/empty"));
12
+ var _types = require("../types");
13
+ function _classCallCheck(instance, Constructor) {
14
+ if (!(instance instanceof Constructor)) {
15
+ throw new TypeError("Cannot call a class as a function");
16
+ }
17
+ }
18
+ function _defineProperties(target, props) {
19
+ for(var i = 0; i < props.length; i++){
20
+ var descriptor = props[i];
21
+ descriptor.enumerable = descriptor.enumerable || false;
22
+ descriptor.configurable = true;
23
+ if ("value" in descriptor) descriptor.writable = true;
24
+ Object.defineProperty(target, descriptor.key, descriptor);
25
+ }
26
+ }
27
+ function _createClass(Constructor, protoProps, staticProps) {
28
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
29
+ if (staticProps) _defineProperties(Constructor, staticProps);
30
+ return Constructor;
31
+ }
32
+ function _interopRequireDefault(obj) {
33
+ return obj && obj.__esModule ? obj : {
34
+ default: obj
35
+ };
36
+ }
37
+ var DeleteOperation = /*#__PURE__*/ function() {
38
+ function DeleteOperation(type, length, position) {
39
+ _classCallCheck(this, DeleteOperation);
40
+ this.type = type;
41
+ this.length = length;
42
+ this.position = position;
43
+ }
44
+ _createClass(DeleteOperation, [
45
+ {
46
+ key: "clone",
47
+ value: function clone() {
48
+ return DeleteOperation.fromLengthAndPosition(this.length, this.position);
49
+ }
50
+ },
51
+ {
52
+ key: "transformOperation",
53
+ value: function transformOperation(operation) {
54
+ switch(operation.type){
55
+ case _types.insertType:
56
+ return function(tau, rho) {
57
+ if (tau.position <= rho.position) {
58
+ return [
59
+ tau.clone()
60
+ ];
61
+ }
62
+ if (tau.position > rho.position) {
63
+ if (tau.position < rho.length + rho.position) {
64
+ return [
65
+ tau.left(rho).shift(tau)
66
+ ];
67
+ }
68
+ if (tau.position >= rho.length + rho.position) {
69
+ return [
70
+ rho.shift(tau)
71
+ ];
72
+ }
73
+ }
74
+ }(operation, this);
75
+ case _types.deleteType:
76
+ return function(tau, rho) {
77
+ if (tau.position < rho.position) {
78
+ if (tau.length + tau.position <= rho.position) {
79
+ return [
80
+ tau.clone()
81
+ ];
82
+ }
83
+ if (tau.length + tau.position <= rho.length + rho.position) {
84
+ return [
85
+ rho.takenFrom(tau)
86
+ ];
87
+ }
88
+ if (tau.length + tau.position > rho.length + rho.position) {
89
+ return [
90
+ rho.split(tau)
91
+ ];
92
+ }
93
+ }
94
+ if (tau.position === rho.position) {
95
+ if (tau.length + tau.position <= rho.length + rho.position) {
96
+ return [
97
+ _empty.default.fromNothing()
98
+ ];
99
+ }
100
+ if (tau.length + tau.position > rho.length + rho.position) {
101
+ return [
102
+ rho.shift(rho.takenFrom(tau))
103
+ ];
104
+ }
105
+ }
106
+ if (tau.position >= rho.length + rho.position) {
107
+ return [
108
+ rho.shift(tau)
109
+ ];
110
+ }
111
+ if (tau.position > rho.position) {
112
+ if (tau.length + tau.position <= rho.length + rho.position) {
113
+ return [
114
+ _empty.default.fromNothing()
115
+ ];
116
+ }
117
+ if (tau.length + tau.position > rho.length + rho.position) {
118
+ return [
119
+ rho.shift(rho.takenFrom(tau))
120
+ ];
121
+ }
122
+ }
123
+ }(operation, this);
124
+ case _types.emptyType:
125
+ return function(tau, rho) {
126
+ return [
127
+ tau.clone()
128
+ ];
129
+ }(operation, this);
130
+ }
131
+ }
132
+ },
133
+ {
134
+ key: "transformContent",
135
+ value: function transformContent(content) {
136
+ return content.substring(0, this.position) + content.substring(this.length + this.position);
137
+ }
138
+ },
139
+ {
140
+ key: "transformSelection",
141
+ value: function transformSelection(selection) {
142
+ var transformedSelection;
143
+ var length = this.length, startPosition = this.position, endPosition = startPosition + length, selectionStartPosition = selection.getStartPosition(), selectionEndPosition = selection.getEndPosition();
144
+ var offset, endOffset;
145
+ if (false) {
146
+ ///
147
+ } else if (selectionStartPosition >= endPosition) {
148
+ offset = -length;
149
+ transformedSelection = selection.shifted(offset);
150
+ } else if (selectionStartPosition >= startPosition) {
151
+ if (selectionEndPosition > endPosition) {
152
+ offset = startPosition - selectionStartPosition;
153
+ endOffset = selectionStartPosition - endPosition;
154
+ transformedSelection = selection.shifted(offset).endPositionShifted(endOffset);
155
+ } else {
156
+ var Selection = selection.constructor; ///
157
+ transformedSelection = new Selection(startPosition, startPosition);
158
+ }
159
+ } else if (selectionEndPosition > endPosition) {
160
+ endOffset = -length;
161
+ transformedSelection = selection.endPositionShifted(endOffset);
162
+ } else if (selectionEndPosition > startPosition) {
163
+ endOffset = startPosition - selectionEndPosition;
164
+ transformedSelection = selection.endPositionShifted(endOffset);
165
+ } else {
166
+ transformedSelection = selection.clone();
167
+ }
168
+ return transformedSelection;
169
+ }
170
+ },
171
+ {
172
+ key: "shifted",
173
+ value: function shifted(offset) {
174
+ var length = this.length, position = this.position + offset, deleteOperation = DeleteOperation.fromLengthAndPosition(length, position);
175
+ return deleteOperation;
176
+ }
177
+ },
178
+ {
179
+ key: "shift",
180
+ value: function shift(operation) {
181
+ var offset = -this.length, shiftedOperation = operation.shifted(offset);
182
+ return shiftedOperation;
183
+ }
184
+ },
185
+ {
186
+ key: "takenFrom",
187
+ value: function takenFrom(deleteOperation) {
188
+ var length = deleteOperation.length, position = deleteOperation.position;
189
+ if (this.position > position && this.length + this.position >= length + position) {
190
+ length = this.position - position;
191
+ deleteOperation = DeleteOperation.fromLengthAndPosition(length, position);
192
+ }
193
+ if (this.position <= position && this.length + this.position < length + position) {
194
+ length = length + position - this.position - this.length;
195
+ position = this.length + this.position;
196
+ deleteOperation = DeleteOperation.fromLengthAndPosition(length, position);
197
+ }
198
+ return deleteOperation;
199
+ }
200
+ },
201
+ {
202
+ key: "split",
203
+ value: function split(deleteOperation) {
204
+ var length = deleteOperation.length, position = deleteOperation.position;
205
+ length = length - this.length;
206
+ deleteOperation = DeleteOperation.fromLengthAndPosition(length, position);
207
+ return deleteOperation;
208
+ }
209
+ },
210
+ {
211
+ key: "toJSON",
212
+ value: function toJSON() {
213
+ var type = this.type, length = this.length, position = this.position, json = {
214
+ type: type,
215
+ length: length,
216
+ position: position
217
+ };
218
+ return json;
219
+ }
220
+ }
221
+ ], [
222
+ {
223
+ key: "fromJSON",
224
+ value: function fromJSON(json) {
225
+ var type = json.type, length = json.length, position = json.position, deleteOperation = new DeleteOperation(type, length, position);
226
+ return deleteOperation;
227
+ }
228
+ },
229
+ {
230
+ key: "fromLengthAndPosition",
231
+ value: function fromLengthAndPosition(length, position) {
232
+ var type = _types.deleteType, deleteOperation = new DeleteOperation(type, length, position);
233
+ return deleteOperation;
234
+ }
235
+ }
236
+ ]);
237
+ return DeleteOperation;
238
+ }();
239
+
240
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVyYXRpb24vZGVsZXRlLmpzIiwiPDxqc3gtY29uZmlnLXByYWdtYS5qcz4+Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xyXG5cclxuaW1wb3J0IEVtcHR5T3BlcmF0aW9uIGZyb20gXCIuLi9vcGVyYXRpb24vZW1wdHlcIjtcclxuXHJcbmltcG9ydCB7IGluc2VydFR5cGUsIGRlbGV0ZVR5cGUsIGVtcHR5VHlwZSB9IGZyb20gXCIuLi90eXBlc1wiO1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRGVsZXRlT3BlcmF0aW9uIHtcclxuICBjb25zdHJ1Y3Rvcih0eXBlLCBsZW5ndGgsIHBvc2l0aW9uKSB7XHJcblx0ICB0aGlzLnR5cGUgPSB0eXBlO1xyXG4gICAgdGhpcy5sZW5ndGggPSBsZW5ndGg7XHJcbiAgICB0aGlzLnBvc2l0aW9uID0gcG9zaXRpb247XHJcbiAgfVxyXG5cclxuICBjbG9uZSgpIHtcclxuICAgIHJldHVybiBEZWxldGVPcGVyYXRpb24uZnJvbUxlbmd0aEFuZFBvc2l0aW9uKHRoaXMubGVuZ3RoLCB0aGlzLnBvc2l0aW9uKTtcclxuICB9XHJcblxyXG4gIHRyYW5zZm9ybU9wZXJhdGlvbihvcGVyYXRpb24pIHtcclxuICAgIHN3aXRjaCAob3BlcmF0aW9uLnR5cGUpIHtcclxuICAgICAgY2FzZSBpbnNlcnRUeXBlOlxyXG4gICAgICAgIHJldHVybiAoKHRhdSwgcmhvKSA9PiB7XHJcblxyXG4gICAgICAgICAgaWYgKHRhdS5wb3NpdGlvbiA8PSByaG8ucG9zaXRpb24pIHtcclxuICAgICAgICAgICAgcmV0dXJuIFt0YXUuY2xvbmUoKV07XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgaWYgKHRhdS5wb3NpdGlvbiA+IHJoby5wb3NpdGlvbikge1xyXG4gICAgICAgICAgICBpZiAodGF1LnBvc2l0aW9uIDwgcmhvLmxlbmd0aCArIHJoby5wb3NpdGlvbikge1xyXG4gICAgICAgICAgICAgIHJldHVybiBbdGF1LmxlZnQocmhvKS5zaGlmdCh0YXUpXTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAodGF1LnBvc2l0aW9uID49IHJoby5sZW5ndGggKyByaG8ucG9zaXRpb24pIHtcclxuICAgICAgICAgICAgICByZXR1cm4gW3Joby5zaGlmdCh0YXUpXTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICB9KShvcGVyYXRpb24sIHRoaXMpO1xyXG5cclxuICAgICAgY2FzZSBkZWxldGVUeXBlOlxyXG4gICAgICAgIHJldHVybiAoKHRhdSwgcmhvKSA9PiB7XHJcblxyXG4gICAgICAgICAgaWYgKHRhdS5wb3NpdGlvbiA8IHJoby5wb3NpdGlvbikge1xyXG4gICAgICAgICAgICBpZiAodGF1Lmxlbmd0aCArIHRhdS5wb3NpdGlvbiA8PSByaG8ucG9zaXRpb24pIHtcclxuICAgICAgICAgICAgICByZXR1cm4gW3RhdS5jbG9uZSgpXTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAodGF1Lmxlbmd0aCArIHRhdS5wb3NpdGlvbiA8PSByaG8ubGVuZ3RoICsgcmhvLnBvc2l0aW9uKSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIFtyaG8udGFrZW5Gcm9tKHRhdSldO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmICh0YXUubGVuZ3RoICsgdGF1LnBvc2l0aW9uID4gcmhvLmxlbmd0aCArIHJoby5wb3NpdGlvbikge1xyXG4gICAgICAgICAgICAgIHJldHVybiBbcmhvLnNwbGl0KHRhdSldO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgaWYgKHRhdS5wb3NpdGlvbiA9PT0gcmhvLnBvc2l0aW9uKSB7XHJcbiAgICAgICAgICAgIGlmICh0YXUubGVuZ3RoICsgdGF1LnBvc2l0aW9uIDw9IHJoby5sZW5ndGggKyByaG8ucG9zaXRpb24pIHtcclxuICAgICAgICAgICAgICByZXR1cm4gW0VtcHR5T3BlcmF0aW9uLmZyb21Ob3RoaW5nKCldO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmICh0YXUubGVuZ3RoICsgdGF1LnBvc2l0aW9uID4gcmhvLmxlbmd0aCArIHJoby5wb3NpdGlvbikge1xyXG4gICAgICAgICAgICAgIHJldHVybiBbcmhvLnNoaWZ0KHJoby50YWtlbkZyb20odGF1KSldO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgaWYgKHRhdS5wb3NpdGlvbiA+PSByaG8ubGVuZ3RoICsgcmhvLnBvc2l0aW9uKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBbcmhvLnNoaWZ0KHRhdSldO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGlmICh0YXUucG9zaXRpb24gPiByaG8ucG9zaXRpb24pIHtcclxuICAgICAgICAgICAgaWYgKHRhdS5sZW5ndGggKyB0YXUucG9zaXRpb24gPD0gcmhvLmxlbmd0aCArIHJoby5wb3NpdGlvbikge1xyXG4gICAgICAgICAgICAgIHJldHVybiBbRW1wdHlPcGVyYXRpb24uZnJvbU5vdGhpbmcoKV07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYgKHRhdS5sZW5ndGggKyB0YXUucG9zaXRpb24gPiByaG8ubGVuZ3RoICsgcmhvLnBvc2l0aW9uKSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIFtyaG8uc2hpZnQocmhvLnRha2VuRnJvbSh0YXUpKV07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfSkob3BlcmF0aW9uLCB0aGlzKTtcclxuXHJcbiAgICAgIGNhc2UgZW1wdHlUeXBlOlxyXG4gICAgICAgIHJldHVybiAoKHRhdSwgcmhvKSA9PiB7XHJcblxyXG4gICAgICAgICAgcmV0dXJuIFt0YXUuY2xvbmUoKV07XHJcblxyXG4gICAgICAgIH0pKG9wZXJhdGlvbiwgdGhpcyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0cmFuc2Zvcm1Db250ZW50KGNvbnRlbnQpIHtcclxuICAgIHJldHVybiBjb250ZW50LnN1YnN0cmluZygwLCB0aGlzLnBvc2l0aW9uKSArIGNvbnRlbnQuc3Vic3RyaW5nKHRoaXMubGVuZ3RoICsgdGhpcy5wb3NpdGlvbik7XHJcbiAgfVxyXG5cclxuICB0cmFuc2Zvcm1TZWxlY3Rpb24oc2VsZWN0aW9uKSB7XHJcbiAgICBsZXQgdHJhbnNmb3JtZWRTZWxlY3Rpb247XHJcblxyXG4gICAgY29uc3QgbGVuZ3RoID0gdGhpcy5sZW5ndGgsICAvLy9cclxuICAgICAgICAgIHN0YXJ0UG9zaXRpb24gPSB0aGlzLnBvc2l0aW9uLCAvLy9cclxuICAgICAgICAgIGVuZFBvc2l0aW9uID0gc3RhcnRQb3NpdGlvbiArIGxlbmd0aCxcclxuICAgICAgICAgIHNlbGVjdGlvblN0YXJ0UG9zaXRpb24gPSBzZWxlY3Rpb24uZ2V0U3RhcnRQb3NpdGlvbigpLFxyXG4gICAgICAgICAgc2VsZWN0aW9uRW5kUG9zaXRpb24gPSBzZWxlY3Rpb24uZ2V0RW5kUG9zaXRpb24oKTtcclxuXHJcbiAgICBsZXQgb2Zmc2V0LFxyXG4gICAgICAgIGVuZE9mZnNldDtcclxuXHJcbiAgICBpZiAoZmFsc2UpIHtcclxuICAgICAgLy8vXHJcbiAgICB9IGVsc2UgaWYgKHNlbGVjdGlvblN0YXJ0UG9zaXRpb24gPj0gZW5kUG9zaXRpb24pIHtcclxuICAgICAgb2Zmc2V0ID0gLWxlbmd0aDtcclxuXHJcbiAgICAgIHRyYW5zZm9ybWVkU2VsZWN0aW9uID0gc2VsZWN0aW9uLnNoaWZ0ZWQob2Zmc2V0KTtcclxuICAgIH0gZWxzZSBpZiAoc2VsZWN0aW9uU3RhcnRQb3NpdGlvbiA+PSBzdGFydFBvc2l0aW9uKSB7XHJcbiAgICAgIGlmIChzZWxlY3Rpb25FbmRQb3NpdGlvbiA+IGVuZFBvc2l0aW9uKSB7XHJcbiAgICAgICAgb2Zmc2V0ID0gc3RhcnRQb3NpdGlvbiAtIHNlbGVjdGlvblN0YXJ0UG9zaXRpb247XHJcbiAgICAgICAgZW5kT2Zmc2V0ID0gc2VsZWN0aW9uU3RhcnRQb3NpdGlvbiAtIGVuZFBvc2l0aW9uO1xyXG5cclxuICAgICAgICB0cmFuc2Zvcm1lZFNlbGVjdGlvbiA9IHNlbGVjdGlvbi5zaGlmdGVkKG9mZnNldCkuZW5kUG9zaXRpb25TaGlmdGVkKGVuZE9mZnNldCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29uc3QgU2VsZWN0aW9uID0gc2VsZWN0aW9uLmNvbnN0cnVjdG9yOyAgLy8vXHJcblxyXG4gICAgICAgIHRyYW5zZm9ybWVkU2VsZWN0aW9uID0gbmV3IFNlbGVjdGlvbihzdGFydFBvc2l0aW9uLCBzdGFydFBvc2l0aW9uKTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmIChzZWxlY3Rpb25FbmRQb3NpdGlvbiA+IGVuZFBvc2l0aW9uKSB7XHJcbiAgICAgIGVuZE9mZnNldCA9IC1sZW5ndGg7XHJcblxyXG4gICAgICB0cmFuc2Zvcm1lZFNlbGVjdGlvbiA9IHNlbGVjdGlvbi5lbmRQb3NpdGlvblNoaWZ0ZWQoZW5kT2Zmc2V0KTtcclxuICAgIH0gZWxzZSBpZiAoc2VsZWN0aW9uRW5kUG9zaXRpb24gPiBzdGFydFBvc2l0aW9uKSB7XHJcbiAgICAgIGVuZE9mZnNldCA9IHN0YXJ0UG9zaXRpb24gLSBzZWxlY3Rpb25FbmRQb3NpdGlvbjtcclxuXHJcbiAgICAgIHRyYW5zZm9ybWVkU2VsZWN0aW9uID0gc2VsZWN0aW9uLmVuZFBvc2l0aW9uU2hpZnRlZChlbmRPZmZzZXQpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdHJhbnNmb3JtZWRTZWxlY3Rpb24gPSBzZWxlY3Rpb24uY2xvbmUoKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdHJhbnNmb3JtZWRTZWxlY3Rpb247XHJcbiAgfVxyXG5cclxuICBzaGlmdGVkKG9mZnNldCkge1xyXG4gICAgY29uc3QgbGVuZ3RoID0gdGhpcy5sZW5ndGgsXHJcbiAgICAgICAgICBwb3NpdGlvbiA9IHRoaXMucG9zaXRpb24gKyBvZmZzZXQsXHJcbiAgICAgICAgICBkZWxldGVPcGVyYXRpb24gPSBEZWxldGVPcGVyYXRpb24uZnJvbUxlbmd0aEFuZFBvc2l0aW9uKGxlbmd0aCwgcG9zaXRpb24pO1xyXG5cclxuICAgIHJldHVybiBkZWxldGVPcGVyYXRpb247XHJcbiAgfVxyXG5cclxuICBzaGlmdChvcGVyYXRpb24pIHtcclxuICAgIGNvbnN0IG9mZnNldCA9IC10aGlzLmxlbmd0aCxcclxuICAgICAgICAgIHNoaWZ0ZWRPcGVyYXRpb24gPSBvcGVyYXRpb24uc2hpZnRlZChvZmZzZXQpO1xyXG5cclxuICAgIHJldHVybiBzaGlmdGVkT3BlcmF0aW9uXHJcbiAgfVxyXG5cclxuICB0YWtlbkZyb20oZGVsZXRlT3BlcmF0aW9uKSB7XHJcbiAgICBsZXQgbGVuZ3RoID0gZGVsZXRlT3BlcmF0aW9uLmxlbmd0aCxcclxuICAgICAgICBwb3NpdGlvbiA9IGRlbGV0ZU9wZXJhdGlvbi5wb3NpdGlvbjtcclxuXHJcbiAgICBpZiAodGhpcy5wb3NpdGlvbiA+IHBvc2l0aW9uICYmIHRoaXMubGVuZ3RoICsgdGhpcy5wb3NpdGlvbiA+PSBsZW5ndGggKyBwb3NpdGlvbikge1xyXG4gICAgICBsZW5ndGggPSB0aGlzLnBvc2l0aW9uIC0gcG9zaXRpb247XHJcblxyXG4gICAgICBkZWxldGVPcGVyYXRpb24gPSBEZWxldGVPcGVyYXRpb24uZnJvbUxlbmd0aEFuZFBvc2l0aW9uKGxlbmd0aCwgcG9zaXRpb24pO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLnBvc2l0aW9uIDw9IHBvc2l0aW9uICYmIHRoaXMubGVuZ3RoICsgdGhpcy5wb3NpdGlvbiA8IGxlbmd0aCArIHBvc2l0aW9uKSB7XHJcbiAgICAgIGxlbmd0aCA9IGxlbmd0aCArIHBvc2l0aW9uIC0gdGhpcy5wb3NpdGlvbiAtIHRoaXMubGVuZ3RoO1xyXG4gICAgICBwb3NpdGlvbiA9IHRoaXMubGVuZ3RoICsgdGhpcy5wb3NpdGlvbjtcclxuXHJcbiAgICAgIGRlbGV0ZU9wZXJhdGlvbiA9IERlbGV0ZU9wZXJhdGlvbi5mcm9tTGVuZ3RoQW5kUG9zaXRpb24obGVuZ3RoLCBwb3NpdGlvbik7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGRlbGV0ZU9wZXJhdGlvbjtcclxuICB9XHJcblxyXG4gIHNwbGl0KGRlbGV0ZU9wZXJhdGlvbikge1xyXG4gICAgbGV0IGxlbmd0aCA9IGRlbGV0ZU9wZXJhdGlvbi5sZW5ndGgsXHJcbiAgICAgICAgcG9zaXRpb24gPSBkZWxldGVPcGVyYXRpb24ucG9zaXRpb247XHJcblxyXG4gICAgbGVuZ3RoID0gbGVuZ3RoIC0gdGhpcy5sZW5ndGg7XHJcblxyXG4gICAgZGVsZXRlT3BlcmF0aW9uID0gRGVsZXRlT3BlcmF0aW9uLmZyb21MZW5ndGhBbmRQb3NpdGlvbihsZW5ndGgsIHBvc2l0aW9uKTtcclxuXHJcbiAgICByZXR1cm4gZGVsZXRlT3BlcmF0aW9uO1xyXG4gIH1cclxuXHJcbiAgdG9KU09OKCkge1xyXG4gICAgY29uc3QgdHlwZSA9IHRoaXMudHlwZSxcclxuICAgICAgICAgIGxlbmd0aCA9IHRoaXMubGVuZ3RoLFxyXG4gICAgICAgICAgcG9zaXRpb24gPSB0aGlzLnBvc2l0aW9uLFxyXG4gICAgICAgICAganNvbiA9IHtcclxuICAgICAgICAgICAgdHlwZSxcclxuICAgICAgICAgICAgbGVuZ3RoLFxyXG4gICAgICAgICAgICBwb3NpdGlvbixcclxuICAgICAgICAgIH07XHJcblxyXG4gICAgcmV0dXJuIGpzb247XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZnJvbUpTT04oanNvbikge1xyXG4gICAgY29uc3QgeyB0eXBlLCBsZW5ndGgsIHBvc2l0aW9uIH0gPSBqc29uLFxyXG4gICAgICAgICAgZGVsZXRlT3BlcmF0aW9uID0gbmV3IERlbGV0ZU9wZXJhdGlvbih0eXBlLCBsZW5ndGgsIHBvc2l0aW9uKTtcclxuXHJcbiAgICByZXR1cm4gZGVsZXRlT3BlcmF0aW9uO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGZyb21MZW5ndGhBbmRQb3NpdGlvbihsZW5ndGgsIHBvc2l0aW9uKSB7XHJcbiAgICBjb25zdCB0eXBlID0gZGVsZXRlVHlwZSwgLy8vXHJcbiAgICAgICAgICBkZWxldGVPcGVyYXRpb24gPSBuZXcgRGVsZXRlT3BlcmF0aW9uKHR5cGUsIGxlbmd0aCwgcG9zaXRpb24pO1xyXG5cclxuICAgIHJldHVybiBkZWxldGVPcGVyYXRpb247XHJcbiAgfVxyXG59XHJcbiIsIlJlYWN0LmNyZWF0ZUVsZW1lbnQiXSwibmFtZXMiOlsiRGVsZXRlT3BlcmF0aW9uIiwidHlwZSIsImxlbmd0aCIsInBvc2l0aW9uIiwiY2xvbmUiLCJmcm9tTGVuZ3RoQW5kUG9zaXRpb24iLCJ0cmFuc2Zvcm1PcGVyYXRpb24iLCJvcGVyYXRpb24iLCJpbnNlcnRUeXBlIiwidGF1IiwicmhvIiwibGVmdCIsInNoaWZ0IiwiZGVsZXRlVHlwZSIsInRha2VuRnJvbSIsInNwbGl0IiwiRW1wdHlPcGVyYXRpb24iLCJmcm9tTm90aGluZyIsImVtcHR5VHlwZSIsInRyYW5zZm9ybUNvbnRlbnQiLCJjb250ZW50Iiwic3Vic3RyaW5nIiwidHJhbnNmb3JtU2VsZWN0aW9uIiwic2VsZWN0aW9uIiwidHJhbnNmb3JtZWRTZWxlY3Rpb24iLCJzdGFydFBvc2l0aW9uIiwiZW5kUG9zaXRpb24iLCJzZWxlY3Rpb25TdGFydFBvc2l0aW9uIiwiZ2V0U3RhcnRQb3NpdGlvbiIsInNlbGVjdGlvbkVuZFBvc2l0aW9uIiwiZ2V0RW5kUG9zaXRpb24iLCJvZmZzZXQiLCJlbmRPZmZzZXQiLCJzaGlmdGVkIiwiZW5kUG9zaXRpb25TaGlmdGVkIiwiU2VsZWN0aW9uIiwiY29uc3RydWN0b3IiLCJkZWxldGVPcGVyYXRpb24iLCJzaGlmdGVkT3BlcmF0aW9uIiwidG9KU09OIiwianNvbiIsImZyb21KU09OIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQU1xQkE7OzswREFKTTtxQkFFdUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFbkMs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
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return EmptyOperation;
9
+ }
10
+ });
11
+ var _types = require("../types");
12
+ function _classCallCheck(instance, Constructor) {
13
+ if (!(instance instanceof Constructor)) {
14
+ throw new TypeError("Cannot call a class as a function");
15
+ }
16
+ }
17
+ function _defineProperties(target, props) {
18
+ for(var i = 0; i < props.length; i++){
19
+ var descriptor = props[i];
20
+ descriptor.enumerable = descriptor.enumerable || false;
21
+ descriptor.configurable = true;
22
+ if ("value" in descriptor) descriptor.writable = true;
23
+ Object.defineProperty(target, descriptor.key, descriptor);
24
+ }
25
+ }
26
+ function _createClass(Constructor, protoProps, staticProps) {
27
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
28
+ if (staticProps) _defineProperties(Constructor, staticProps);
29
+ return Constructor;
30
+ }
31
+ var EmptyOperation = /*#__PURE__*/ function() {
32
+ function EmptyOperation(type) {
33
+ _classCallCheck(this, EmptyOperation);
34
+ this.type = type;
35
+ }
36
+ _createClass(EmptyOperation, [
37
+ {
38
+ key: "clone",
39
+ value: function clone() {
40
+ return EmptyOperation.fromNothing();
41
+ }
42
+ },
43
+ {
44
+ key: "transformOperation",
45
+ value: function transformOperation(operation) {
46
+ return function(tau, rho) {
47
+ return [
48
+ tau.clone()
49
+ ];
50
+ }(operation, this);
51
+ }
52
+ },
53
+ {
54
+ key: "transformContent",
55
+ value: function transformContent(content) {
56
+ return content;
57
+ }
58
+ },
59
+ {
60
+ key: "transformSelection",
61
+ value: function transformSelection(selection) {
62
+ var transformedSelection = selection.clone();
63
+ return transformedSelection;
64
+ }
65
+ },
66
+ {
67
+ key: "shift",
68
+ value: function shift(operation) {
69
+ var offset = 0, shiftedOperation = operation.shifted(offset);
70
+ return shiftedOperation;
71
+ }
72
+ },
73
+ {
74
+ key: "toJSON",
75
+ value: function toJSON() {
76
+ var type = this.type, json = {
77
+ type: type
78
+ };
79
+ return json;
80
+ }
81
+ }
82
+ ], [
83
+ {
84
+ key: "fromJSON",
85
+ value: function fromJSON(json) {
86
+ var type = json.type, emptyOperation = new EmptyOperation(type);
87
+ return emptyOperation;
88
+ }
89
+ },
90
+ {
91
+ key: "fromNothing",
92
+ value: function fromNothing() {
93
+ var type = _types.emptyType, emptyOperation = new EmptyOperation(type);
94
+ return emptyOperation;
95
+ }
96
+ }
97
+ ]);
98
+ return EmptyOperation;
99
+ }();
100
+
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVyYXRpb24vZW1wdHkuanMiLCI8PGpzeC1jb25maWctcHJhZ21hLmpzPj4iXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XHJcblxyXG5pbXBvcnQgeyBlbXB0eVR5cGUgfSBmcm9tIFwiLi4vdHlwZXNcIjtcclxuXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEVtcHR5T3BlcmF0aW9uIHtcclxuICBjb25zdHJ1Y3Rvcih0eXBlKSB7XHJcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xyXG5cclxuXHJcbiAgfVxyXG5cclxuICBjbG9uZSgpIHtcclxuICAgIHJldHVybiBFbXB0eU9wZXJhdGlvbi5mcm9tTm90aGluZygpO1xyXG4gIH1cclxuXHJcbiAgdHJhbnNmb3JtT3BlcmF0aW9uKG9wZXJhdGlvbikge1xyXG4gICAgcmV0dXJuICgodGF1LCByaG8pID0+IHtcclxuXHJcbiAgICAgIHJldHVybiBbdGF1LmNsb25lKCldO1xyXG5cclxuICAgIH0pKG9wZXJhdGlvbiwgdGhpcyk7XHJcbiAgfVxyXG5cclxuICB0cmFuc2Zvcm1Db250ZW50KGNvbnRlbnQpIHtcclxuICAgIHJldHVybiBjb250ZW50O1xyXG4gIH1cclxuXHJcbiAgdHJhbnNmb3JtU2VsZWN0aW9uKHNlbGVjdGlvbikge1xyXG4gICAgY29uc3QgdHJhbnNmb3JtZWRTZWxlY3Rpb24gPSBzZWxlY3Rpb24uY2xvbmUoKTtcclxuXHJcbiAgICByZXR1cm4gdHJhbnNmb3JtZWRTZWxlY3Rpb247XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIHNoaWZ0KG9wZXJhdGlvbikge1xyXG4gIFx0Y29uc3Qgb2Zmc2V0ID0gMCxcclxuICAgICAgICAgIHNoaWZ0ZWRPcGVyYXRpb24gPSBvcGVyYXRpb24uc2hpZnRlZChvZmZzZXQpO1xyXG5cclxuICBcdHJldHVybiBzaGlmdGVkT3BlcmF0aW9uO1xyXG4gIH1cclxuXHJcblxyXG5cclxuXHJcblxyXG4gIHRvSlNPTigpIHtcclxuICAgIGNvbnN0IHR5cGUgPSB0aGlzLnR5cGUsXHJcbiAgICAgICAgICAgIGpzb24gPSB7XHJcbiAgICAgICAgICAgICAgdHlwZVxyXG4gICAgICAgICAgICB9O1xyXG5cclxuXHJcblxyXG4gICAgcmV0dXJuIGpzb247XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZnJvbUpTT04oanNvbikge1xyXG4gICAgY29uc3QgeyB0eXBlIH0gPSBqc29uLFxyXG4gICAgICAgICAgZW1wdHlPcGVyYXRpb24gPSBuZXcgRW1wdHlPcGVyYXRpb24odHlwZSk7XHJcblxyXG4gICAgcmV0dXJuIGVtcHR5T3BlcmF0aW9uO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGZyb21Ob3RoaW5nKCkge1xyXG4gICAgY29uc3QgdHlwZSA9IGVtcHR5VHlwZSwgLy8vXHJcbiAgICAgICAgICBlbXB0eU9wZXJhdGlvbiA9IG5ldyBFbXB0eU9wZXJhdGlvbih0eXBlKTtcclxuXHJcbiAgICByZXR1cm4gZW1wdHlPcGVyYXRpb247XHJcbiAgfVxyXG59XHJcbiIsIlJlYWN0LmNyZWF0ZUVsZW1lbnQiXSwibmFtZXMiOlsiRW1wdHlPcGVyYXRpb24iLCJ0eXBlIiwiY2xvbmUiLCJmcm9tTm90aGluZyIsInRyYW5zZm9ybU9wZXJhdGlvbiIsIm9wZXJhdGlvbiIsInRhdSIsInJobyIsInRyYW5zZm9ybUNvbnRlbnQiLCJjb250ZW50IiwidHJhbnNmb3JtU2VsZWN0aW9uIiwic2VsZWN0aW9uIiwidHJhbnNmb3JtZWRTZWxlY3Rpb24iLCJzaGlmdCIsIm9mZnNldCIsInNoaWZ0ZWRPcGVyYXRpb24iLCJzaGlmdGVkIiwidG9KU09OIiwianNvbiIsImZyb21KU09OIiwiZW1wdHlPcGVyYXRpb24iLCJlbXB0eVR5cGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBSXFCQTs7O3FCQUZLOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVYLElBQUEsQUFBTUEsK0JBQU47YUFBTUEsZUFDUEMsSUFBSTs4QkFER0Q7UUFFakIsSUFBSSxDQUFDQyxJQUFJLEdBQUdBOztpQkFGS0Q7O1lBT25CRSxLQUFBQTttQkFBQUEsU0FBQUEsUUFBUTtnQkFDTixPQUFPRixBQVJVQSxlQVFLRyxXQUFXO1lBQ25DOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLG1CQUFtQkMsU0FBUyxFQUFFO2dCQUM1QixPQUFPLEFBQUMsU0FBQ0MsS0FBS0MsS0FBUTtvQkFFcEIsT0FBTzt3QkFBQ0QsSUFBSUosS0FBSztxQkFBRztnQkFFdEIsRUFBR0csV0FBVyxJQUFJO1lBQ3BCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLGlCQUFpQkMsT0FBTyxFQUFFO2dCQUN4QixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLG1CQUFtQkMsU0FBUyxFQUFFO2dCQUM1QixJQUFNQyx1QkFBdUJELFVBQVVULEtBQUs7Z0JBRTVDLE9BQU9VO1lBQ1Q7OztZQUlBQyxLQUFBQTttQkFBQUEsU0FBQUEsTUFBTVIsU0FBUyxFQUFFO2dCQUNoQixJQUFNUyxTQUFTLEdBQ1JDLG1CQUFtQlYsVUFBVVcsT0FBTyxDQUFDRjtnQkFFNUMsT0FBT0M7WUFDUjs7O1lBTUFFLEtBQUFBO21CQUFBQSxTQUFBQSxTQUFTO2dCQUNQLElBQU1oQixPQUFPLElBQUksQ0FBQ0EsSUFBSSxFQUNkaUIsT0FBTztvQkFDTGpCLE1BQUFBO2dCQUNGO2dCQUlSLE9BQU9pQjtZQUNUOzs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLFNBQVNELElBQUksRUFBRTtnQkFDcEIsSUFBTSxBQUFFakIsT0FBU2lCLEtBQVRqQixNQUNGbUIsaUJBQWlCLElBdkROcEIsZUF1RHlCQztnQkFFMUMsT0FBT21CO1lBQ1Q7OztZQUVPakIsS0FBQUE7bUJBQVAsU0FBT0EsY0FBYztnQkFDbkIsSUFBTUYsT0FBT29CLGdCQUFTLEVBQ2hCRCxpQkFBaUIsSUE5RE5wQixlQThEeUJDO2dCQUUxQyxPQUFPbUI7WUFDVDs7O1dBakVtQnBCIn0=