@pie-lib/editable-html-tip-tap 1.0.7 → 1.0.8
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.
|
@@ -24,10 +24,21 @@ var log = (0, _debug["default"])('@pie-lib:editable-html:image:insert-image-hand
|
|
|
24
24
|
*/
|
|
25
25
|
|
|
26
26
|
var InsertImageHandler = /*#__PURE__*/function () {
|
|
27
|
-
function InsertImageHandler(editor, onFinish) {
|
|
28
|
-
var
|
|
27
|
+
function InsertImageHandler(editor, node, onFinish) {
|
|
28
|
+
var _this = this;
|
|
29
|
+
|
|
30
|
+
var isPasted = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
29
31
|
(0, _classCallCheck2["default"])(this, InsertImageHandler);
|
|
30
32
|
this.editor = editor;
|
|
33
|
+
this.node = node;
|
|
34
|
+
var nodePos;
|
|
35
|
+
editor.state.doc.descendants(function (node, pos) {
|
|
36
|
+
if (node === _this.node) {
|
|
37
|
+
nodePos = pos;
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
this.nodePos = nodePos;
|
|
31
42
|
this.onFinish = onFinish;
|
|
32
43
|
this.isPasted = isPasted;
|
|
33
44
|
this.chosenFile = null;
|
|
@@ -39,11 +50,31 @@ var InsertImageHandler = /*#__PURE__*/function () {
|
|
|
39
50
|
log('insert cancelled');
|
|
40
51
|
|
|
41
52
|
try {
|
|
42
|
-
this.
|
|
53
|
+
this.deleteNode();
|
|
43
54
|
this.onFinish(false);
|
|
44
55
|
} catch (err) {//
|
|
45
56
|
}
|
|
46
57
|
}
|
|
58
|
+
}, {
|
|
59
|
+
key: "updateNode",
|
|
60
|
+
value: function updateNode(newAttrs) {
|
|
61
|
+
var _this$editor = this.editor,
|
|
62
|
+
state = _this$editor.state,
|
|
63
|
+
view = _this$editor.view;
|
|
64
|
+
var tr = state.tr;
|
|
65
|
+
var transaction = tr.setNodeMarkup(this.nodePos, undefined, newAttrs);
|
|
66
|
+
view.dispatch(transaction);
|
|
67
|
+
}
|
|
68
|
+
}, {
|
|
69
|
+
key: "deleteNode",
|
|
70
|
+
value: function deleteNode() {
|
|
71
|
+
var _this$editor2 = this.editor,
|
|
72
|
+
state = _this$editor2.state,
|
|
73
|
+
view = _this$editor2.view;
|
|
74
|
+
var tr = state.tr;
|
|
75
|
+
var transaction = tr["delete"](this.nodePos, this.nodePos + this.node.nodeSize);
|
|
76
|
+
view.dispatch(transaction);
|
|
77
|
+
}
|
|
47
78
|
}, {
|
|
48
79
|
key: "done",
|
|
49
80
|
value: function done(err, src) {
|
|
@@ -54,7 +85,7 @@ var InsertImageHandler = /*#__PURE__*/function () {
|
|
|
54
85
|
console.log(err);
|
|
55
86
|
this.onFinish(false);
|
|
56
87
|
} else {
|
|
57
|
-
this.
|
|
88
|
+
this.updateNode({
|
|
58
89
|
loaded: true,
|
|
59
90
|
src: src,
|
|
60
91
|
percent: 100
|
|
@@ -71,7 +102,7 @@ var InsertImageHandler = /*#__PURE__*/function () {
|
|
|
71
102
|
}, {
|
|
72
103
|
key: "fileChosen",
|
|
73
104
|
value: function fileChosen(file) {
|
|
74
|
-
var
|
|
105
|
+
var _this2 = this;
|
|
75
106
|
|
|
76
107
|
if (!file) {
|
|
77
108
|
return;
|
|
@@ -85,7 +116,7 @@ var InsertImageHandler = /*#__PURE__*/function () {
|
|
|
85
116
|
reader.onload = function () {
|
|
86
117
|
var dataURL = reader.result;
|
|
87
118
|
|
|
88
|
-
|
|
119
|
+
_this2.updateNode({
|
|
89
120
|
src: dataURL
|
|
90
121
|
});
|
|
91
122
|
};
|
|
@@ -96,7 +127,7 @@ var InsertImageHandler = /*#__PURE__*/function () {
|
|
|
96
127
|
key: "progress",
|
|
97
128
|
value: function progress(percent, bytes, total) {
|
|
98
129
|
log('progress: ', percent, bytes, total);
|
|
99
|
-
this.
|
|
130
|
+
this.updateNode({
|
|
100
131
|
percent: percent
|
|
101
132
|
});
|
|
102
133
|
} // Add a getter method to retrieve the chosen file
|
|
@@ -112,4 +143,4 @@ var InsertImageHandler = /*#__PURE__*/function () {
|
|
|
112
143
|
|
|
113
144
|
var _default = InsertImageHandler;
|
|
114
145
|
exports["default"] = _default;
|
|
115
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
146
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2ltYWdlL0luc2VydEltYWdlSGFuZGxlci5qcyJdLCJuYW1lcyI6WyJsb2ciLCJJbnNlcnRJbWFnZUhhbmRsZXIiLCJlZGl0b3IiLCJub2RlIiwib25GaW5pc2giLCJpc1Bhc3RlZCIsIm5vZGVQb3MiLCJzdGF0ZSIsImRvYyIsImRlc2NlbmRhbnRzIiwicG9zIiwiY2hvc2VuRmlsZSIsImRlbGV0ZU5vZGUiLCJlcnIiLCJuZXdBdHRycyIsInZpZXciLCJ0ciIsInRyYW5zYWN0aW9uIiwic2V0Tm9kZU1hcmt1cCIsInVuZGVmaW5lZCIsImRpc3BhdGNoIiwibm9kZVNpemUiLCJzcmMiLCJjb25zb2xlIiwidXBkYXRlTm9kZSIsImxvYWRlZCIsInBlcmNlbnQiLCJmaWxlIiwicmVhZGVyIiwiRmlsZVJlYWRlciIsIm9ubG9hZCIsImRhdGFVUkwiLCJyZXN1bHQiLCJyZWFkQXNEYXRhVVJMIiwiYnl0ZXMiLCJ0b3RhbCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUFBOztBQUVBLElBQU1BLEdBQUcsR0FBRyx1QkFBTSxtREFBTixDQUFaO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7SUFDTUMsa0I7QUFDSiw4QkFBWUMsTUFBWixFQUFvQkMsSUFBcEIsRUFBMEJDLFFBQTFCLEVBQXNEO0FBQUE7O0FBQUEsUUFBbEJDLFFBQWtCLHVFQUFQLEtBQU87QUFBQTtBQUNwRCxTQUFLSCxNQUFMLEdBQWNBLE1BQWQ7QUFDQSxTQUFLQyxJQUFMLEdBQVlBLElBQVo7QUFFQSxRQUFJRyxPQUFKO0FBRUFKLElBQUFBLE1BQU0sQ0FBQ0ssS0FBUCxDQUFhQyxHQUFiLENBQWlCQyxXQUFqQixDQUE2QixVQUFDTixJQUFELEVBQU9PLEdBQVAsRUFBZTtBQUMxQyxVQUFJUCxJQUFJLEtBQUssS0FBSSxDQUFDQSxJQUFsQixFQUF3QjtBQUN0QkcsUUFBQUEsT0FBTyxHQUFHSSxHQUFWO0FBQ0EsZUFBTyxLQUFQO0FBQ0Q7QUFDRixLQUxEO0FBT0EsU0FBS0osT0FBTCxHQUFlQSxPQUFmO0FBQ0EsU0FBS0YsUUFBTCxHQUFnQkEsUUFBaEI7QUFDQSxTQUFLQyxRQUFMLEdBQWdCQSxRQUFoQjtBQUNBLFNBQUtNLFVBQUwsR0FBa0IsSUFBbEI7QUFDRDs7OztXQUVELGtCQUFTO0FBQ1BYLE1BQUFBLEdBQUcsQ0FBQyxrQkFBRCxDQUFIOztBQUVBLFVBQUk7QUFDRixhQUFLWSxVQUFMO0FBQ0EsYUFBS1IsUUFBTCxDQUFjLEtBQWQ7QUFDRCxPQUhELENBR0UsT0FBT1MsR0FBUCxFQUFZLENBQ1o7QUFDRDtBQUNGOzs7V0FFRCxvQkFBV0MsUUFBWCxFQUFxQjtBQUNuQix5QkFBd0IsS0FBS1osTUFBN0I7QUFBQSxVQUFRSyxLQUFSLGdCQUFRQSxLQUFSO0FBQUEsVUFBZVEsSUFBZixnQkFBZUEsSUFBZjtBQUNBLFVBQVFDLEVBQVIsR0FBZVQsS0FBZixDQUFRUyxFQUFSO0FBRUEsVUFBTUMsV0FBVyxHQUFHRCxFQUFFLENBQUNFLGFBQUgsQ0FBaUIsS0FBS1osT0FBdEIsRUFBK0JhLFNBQS9CLEVBQTBDTCxRQUExQyxDQUFwQjtBQUVBQyxNQUFBQSxJQUFJLENBQUNLLFFBQUwsQ0FBY0gsV0FBZDtBQUNEOzs7V0FFRCxzQkFBYTtBQUNYLDBCQUF3QixLQUFLZixNQUE3QjtBQUFBLFVBQVFLLEtBQVIsaUJBQVFBLEtBQVI7QUFBQSxVQUFlUSxJQUFmLGlCQUFlQSxJQUFmO0FBQ0EsVUFBUUMsRUFBUixHQUFlVCxLQUFmLENBQVFTLEVBQVI7QUFFQSxVQUFNQyxXQUFXLEdBQUdELEVBQUUsVUFBRixDQUFVLEtBQUtWLE9BQWYsRUFBd0IsS0FBS0EsT0FBTCxHQUFlLEtBQUtILElBQUwsQ0FBVWtCLFFBQWpELENBQXBCO0FBRUFOLE1BQUFBLElBQUksQ0FBQ0ssUUFBTCxDQUFjSCxXQUFkO0FBQ0Q7OztXQUVELGNBQUtKLEdBQUwsRUFBVVMsR0FBVixFQUFlO0FBQ2J0QixNQUFBQSxHQUFHLENBQUMsWUFBRCxFQUFlYSxHQUFmLENBQUg7O0FBQ0EsVUFBSUEsR0FBSixFQUFTO0FBQ1A7QUFDQVUsUUFBQUEsT0FBTyxDQUFDdkIsR0FBUixDQUFZYSxHQUFaO0FBQ0EsYUFBS1QsUUFBTCxDQUFjLEtBQWQ7QUFDRCxPQUpELE1BSU87QUFDTCxhQUFLb0IsVUFBTCxDQUFnQjtBQUFFQyxVQUFBQSxNQUFNLEVBQUUsSUFBVjtBQUFnQkgsVUFBQUEsR0FBRyxFQUFIQSxHQUFoQjtBQUFxQkksVUFBQUEsT0FBTyxFQUFFO0FBQTlCLFNBQWhCO0FBQ0EsYUFBS3RCLFFBQUwsQ0FBYyxJQUFkO0FBQ0Q7QUFDRjtBQUVEO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7Ozs7V0FDRSxvQkFBV3VCLElBQVgsRUFBaUI7QUFBQTs7QUFDZixVQUFJLENBQUNBLElBQUwsRUFBVztBQUNUO0FBQ0QsT0FIYyxDQUtmOzs7QUFDQSxXQUFLaEIsVUFBTCxHQUFrQmdCLElBQWxCO0FBRUEzQixNQUFBQSxHQUFHLENBQUMscUJBQUQsRUFBd0IyQixJQUF4QixDQUFIO0FBQ0EsVUFBTUMsTUFBTSxHQUFHLElBQUlDLFVBQUosRUFBZjs7QUFDQUQsTUFBQUEsTUFBTSxDQUFDRSxNQUFQLEdBQWdCLFlBQU07QUFDcEIsWUFBTUMsT0FBTyxHQUFHSCxNQUFNLENBQUNJLE1BQXZCOztBQUVBLFFBQUEsTUFBSSxDQUFDUixVQUFMLENBQWdCO0FBQUVGLFVBQUFBLEdBQUcsRUFBRVM7QUFBUCxTQUFoQjtBQUNELE9BSkQ7O0FBS0FILE1BQUFBLE1BQU0sQ0FBQ0ssYUFBUCxDQUFxQk4sSUFBckI7QUFDRDs7O1dBRUQsa0JBQVNELE9BQVQsRUFBa0JRLEtBQWxCLEVBQXlCQyxLQUF6QixFQUFnQztBQUM5Qm5DLE1BQUFBLEdBQUcsQ0FBQyxZQUFELEVBQWUwQixPQUFmLEVBQXdCUSxLQUF4QixFQUErQkMsS0FBL0IsQ0FBSDtBQUNBLFdBQUtYLFVBQUwsQ0FBZ0I7QUFBRUUsUUFBQUEsT0FBTyxFQUFQQTtBQUFGLE9BQWhCO0FBQ0QsSyxDQUVEOzs7O1dBQ0EseUJBQWdCO0FBQ2QsYUFBTyxLQUFLZixVQUFaO0FBQ0Q7Ozs7O2VBR1lWLGtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRlYnVnIGZyb20gJ2RlYnVnJztcblxuY29uc3QgbG9nID0gZGVidWcoJ0BwaWUtbGliOmVkaXRhYmxlLWh0bWw6aW1hZ2U6aW5zZXJ0LWltYWdlLWhhbmRsZXInKTtcblxuLyoqXG4gKiBIYW5kbGVzIHVzZXIgc2VsZWN0aW9uLCBpbnNlcnRpb24gKG9yIGNhbmNlbGxhdGlvbikgb2YgYW4gaW1hZ2UgaW50byB0aGUgZWRpdG9yLlxuICogQHBhcmFtIHtCbG9ja30gcGxhY2Vob2xkZXJCbG9jayAtIGEgYmxvY2sgdGhhdCBoYXMgYmVlbiBhZGRlZCB0byB0aGUgZWRpdG9yIGFzIGEgcGxhY2UgaG9sZGVyIGZvciB0aGUgaW1hZ2VcbiAqIEBwYXJhbSB7RnVuY3Rpb259IG9uRmluaXNoIC0gYSBmdW5jdGlvbiB0byBjYWxsIGlmIHVwbG9hZGluZyBmYWlscyBvciBzdWNjZWVkc1xuICogQHBhcmFtIHtGdW5jdGlvbn0gZ2V0VmFsdWUgLSBhIGZ1bmN0aW9uIHRvIHJldHVybiB0aGUgdmFsdWUgb2YgdGhlIGVkaXRvclxuICogQHBhcmFtIHtGdW5jdGlvbn0gb25DaGFuZ2UgLSBjYWxsYmFjayB0byBub3RpZnkgY2hhbmdlcyBhcHBsaWVkIGJ5IHRoZSBoYW5kbGVyXG4gKiBAcGFyYW0ge0Jvb2xlYW59IGlzUGFzdGVkIC0gYSBib29sZWFuIHRoYXQga2VlcHMgdHJhY2sgaWYgdGhlIGZpbGUgaXMgcGFzdGVkXG4gKi9cbmNsYXNzIEluc2VydEltYWdlSGFuZGxlciB7XG4gIGNvbnN0cnVjdG9yKGVkaXRvciwgbm9kZSwgb25GaW5pc2gsIGlzUGFzdGVkID0gZmFsc2UpIHtcbiAgICB0aGlzLmVkaXRvciA9IGVkaXRvcjtcbiAgICB0aGlzLm5vZGUgPSBub2RlO1xuXG4gICAgbGV0IG5vZGVQb3M7XG5cbiAgICBlZGl0b3Iuc3RhdGUuZG9jLmRlc2NlbmRhbnRzKChub2RlLCBwb3MpID0+IHtcbiAgICAgIGlmIChub2RlID09PSB0aGlzLm5vZGUpIHtcbiAgICAgICAgbm9kZVBvcyA9IHBvcztcbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLm5vZGVQb3MgPSBub2RlUG9zO1xuICAgIHRoaXMub25GaW5pc2ggPSBvbkZpbmlzaDtcbiAgICB0aGlzLmlzUGFzdGVkID0gaXNQYXN0ZWQ7XG4gICAgdGhpcy5jaG9zZW5GaWxlID0gbnVsbDtcbiAgfVxuXG4gIGNhbmNlbCgpIHtcbiAgICBsb2coJ2luc2VydCBjYW5jZWxsZWQnKTtcblxuICAgIHRyeSB7XG4gICAgICB0aGlzLmRlbGV0ZU5vZGUoKTtcbiAgICAgIHRoaXMub25GaW5pc2goZmFsc2UpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgLy9cbiAgICB9XG4gIH1cblxuICB1cGRhdGVOb2RlKG5ld0F0dHJzKSB7XG4gICAgY29uc3QgeyBzdGF0ZSwgdmlldyB9ID0gdGhpcy5lZGl0b3I7XG4gICAgY29uc3QgeyB0ciB9ID0gc3RhdGU7XG5cbiAgICBjb25zdCB0cmFuc2FjdGlvbiA9IHRyLnNldE5vZGVNYXJrdXAodGhpcy5ub2RlUG9zLCB1bmRlZmluZWQsIG5ld0F0dHJzKTtcblxuICAgIHZpZXcuZGlzcGF0Y2godHJhbnNhY3Rpb24pO1xuICB9XG5cbiAgZGVsZXRlTm9kZSgpIHtcbiAgICBjb25zdCB7IHN0YXRlLCB2aWV3IH0gPSB0aGlzLmVkaXRvcjtcbiAgICBjb25zdCB7IHRyIH0gPSBzdGF0ZTtcblxuICAgIGNvbnN0IHRyYW5zYWN0aW9uID0gdHIuZGVsZXRlKHRoaXMubm9kZVBvcywgdGhpcy5ub2RlUG9zICsgdGhpcy5ub2RlLm5vZGVTaXplKTtcblxuICAgIHZpZXcuZGlzcGF0Y2godHJhbnNhY3Rpb24pO1xuICB9XG5cbiAgZG9uZShlcnIsIHNyYykge1xuICAgIGxvZygnZG9uZTogZXJyOicsIGVycik7XG4gICAgaWYgKGVycikge1xuICAgICAgLy9lc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICB0aGlzLm9uRmluaXNoKGZhbHNlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy51cGRhdGVOb2RlKHsgbG9hZGVkOiB0cnVlLCBzcmMsIHBlcmNlbnQ6IDEwMCB9KTtcbiAgICAgIHRoaXMub25GaW5pc2godHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE5vdGlmeSBoYW5kbGVyIHRoYXQgdGhlIHVzZXIgY2hvc2UgYSBmaWxlIC0gd2lsbCBjcmVhdGUgYSBjaGFuZ2Ugd2l0aCBhIHByZXZpZXcgaW4gdGhlIGVkaXRvci5cbiAgICpcbiAgICogQHBhcmFtIHtGaWxlfSBmaWxlIC0gdGhlIGZpbGUgdGhhdCB0aGUgdXNlciBjaG9zZSB1c2luZyBhIGZpbGUgaW5wdXQuXG4gICAqL1xuICBmaWxlQ2hvc2VuKGZpbGUpIHtcbiAgICBpZiAoIWZpbGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBTYXZlIHRoZSBjaG9zZW4gZmlsZSB0byB0aGlzLmNob3NlbkZpbGVcbiAgICB0aGlzLmNob3NlbkZpbGUgPSBmaWxlO1xuXG4gICAgbG9nKCdbZmlsZUNob3Nlbl0gZmlsZTogJywgZmlsZSk7XG4gICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICByZWFkZXIub25sb2FkID0gKCkgPT4ge1xuICAgICAgY29uc3QgZGF0YVVSTCA9IHJlYWRlci5yZXN1bHQ7XG5cbiAgICAgIHRoaXMudXBkYXRlTm9kZSh7IHNyYzogZGF0YVVSTCB9KTtcbiAgICB9O1xuICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xuICB9XG5cbiAgcHJvZ3Jlc3MocGVyY2VudCwgYnl0ZXMsIHRvdGFsKSB7XG4gICAgbG9nKCdwcm9ncmVzczogJywgcGVyY2VudCwgYnl0ZXMsIHRvdGFsKTtcbiAgICB0aGlzLnVwZGF0ZU5vZGUoeyBwZXJjZW50IH0pO1xuICB9XG5cbiAgLy8gQWRkIGEgZ2V0dGVyIG1ldGhvZCB0byByZXRyaWV2ZSB0aGUgY2hvc2VuIGZpbGVcbiAgZ2V0Q2hvc2VuRmlsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jaG9zZW5GaWxlO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IEluc2VydEltYWdlSGFuZGxlcjtcbiJdfQ==
|
|
@@ -96,7 +96,7 @@ function ImageComponent(props) {
|
|
|
96
96
|
}, [selected]);
|
|
97
97
|
(0, _react.useEffect)(function () {
|
|
98
98
|
options.imageHandling.insertImageRequested(node, function (finish) {
|
|
99
|
-
return new _InsertImageHandler["default"](editor, finish);
|
|
99
|
+
return new _InsertImageHandler["default"](editor, node, finish);
|
|
100
100
|
});
|
|
101
101
|
applySizeData();
|
|
102
102
|
var resizeHandle = resizeRef.current;
|
|
@@ -330,4 +330,4 @@ var _default = (0, _styles.withStyles)(function (theme) {
|
|
|
330
330
|
})(ImageComponent);
|
|
331
331
|
|
|
332
332
|
exports["default"] = _default;
|
|
333
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHRlbnNpb25zL2NvbXBvbmVudC5qc3giXSwibmFtZXMiOlsibG9nIiwic2l6ZVB4IiwicyIsIkltYWdlQ29tcG9uZW50IiwicHJvcHMiLCJub2RlIiwiZWRpdG9yIiwiY2xhc3NlcyIsImF0dHJpYnV0ZXMiLCJvbkZvY3VzIiwic2VsZWN0ZWQiLCJvcHRpb25zIiwibWF4SW1hZ2VXaWR0aCIsIm1heEltYWdlSGVpZ2h0IiwibGF0ZXgiLCJoYW5kbGVDaGFuZ2UiLCJoYW5kbGVEb25lIiwiYWx0IiwiYXR0cnMiLCJzaG93VG9vbGJhciIsInNldFNob3dUb29sYmFyIiwiaW1nUmVmIiwicmVzaXplUmVmIiwidG9vbGJhclJlZiIsImdldFBlcmNlbnRGcm9tV2lkdGgiLCJ3aWR0aCIsImZsb29yZWQiLCJjdXJyZW50IiwibmF0dXJhbFdpZHRoIiwicGFyc2VJbnQiLCJ0b0ZpeGVkIiwiYXBwbHlTaXplRGF0YSIsInVwZGF0ZSIsInJlc2l6ZVBlcmNlbnQiLCJjb21tYW5kcyIsInVwZGF0ZUF0dHJpYnV0ZXMiLCJpbWFnZUhhbmRsaW5nIiwiaW5zZXJ0SW1hZ2VSZXF1ZXN0ZWQiLCJmaW5pc2giLCJJbnNlcnRJbWFnZUhhbmRsZXIiLCJyZXNpemVIYW5kbGUiLCJhZGRFdmVudExpc3RlbmVyIiwiaW5pdFJlc2l6ZSIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJsb2FkSW1hZ2UiLCJib3giLCJzdHlsZSIsInciLCJNYXRoIiwibWluIiwiaCIsIm5hdHVyYWxIZWlnaHQiLCJoZWlnaHQiLCJ1cGRhdGVBc3BlY3QiLCJpbml0aWFsIiwibmV4dCIsImtlZXBBc3BlY3QiLCJyZXNpemVUeXBlIiwicmF0aW8iLCJzdGFydFJlc2l6ZSIsImUiLCJib3VuZHMiLCJ0YXJnZXQiLCJnZXRCb3VuZGluZ0NsaWVudFJlY3QiLCJjbGllbnRYIiwibGVmdCIsImNsaWVudFkiLCJ0b3AiLCJvbkNoYW5nZSIsIm5ld1ZhbHVlcyIsInN0b3BSZXNpemUiLCJ3aW5kb3ciLCJvYmplY3RGaXQiLCJmbGV4QWxpZ24iLCJjZW50ZXIiLCJyaWdodCIsImFsaWdubWVudCIsInJvb3QiLCJsb2FkZWQiLCJsb2FkaW5nIiwiZGVsZXRlU3RhdHVzIiwicGVuZGluZ0RlbGV0ZSIsImp1c3RpZnlDb250ZW50IiwicGVyY2VudCIsInByb2dyZXNzIiwiaGlkZVByb2dyZXNzIiwiaW1hZ2VDb250YWluZXIiLCJzcmMiLCJpbWFnZSIsImFjdGl2ZSIsInJlc2l6ZSIsInBvc2l0aW9uIiwiekluZGV4IiwiYmFja2dyb3VuZCIsImJveFNoYWRvdyIsIm9uRG9uZSIsImZvY3VzIiwiZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9ucyIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsIm9iamVjdCIsImlzUmVxdWlyZWQiLCJmdW5jIiwibnVtYmVyIiwidGhlbWUiLCJwb3J0YWwiLCJvcGFjaXR5IiwidHJhbnNpdGlvbiIsImZsb2F0aW5nQnV0dG9uUm93IiwiYmFja2dyb3VuZENvbG9yIiwicGFsZXR0ZSIsInBhcGVyIiwiYm9yZGVyUmFkaXVzIiwiZGlzcGxheSIsInBhZGRpbmciLCJib3JkZXIiLCJncmV5IiwiY29tbW9uIiwid2hpdGUiLCJhbGlnbkl0ZW1zIiwicHJpbWFyeSIsIm1haW4iLCJjdXJzb3IiLCJtYXJnaW5MZWZ0IiwibWFyZ2luUmlnaHQiLCJkcmF3YWJsZUhlaWdodCIsIm1pbkhlaWdodCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7OztBQUVBLElBQU1BLEdBQUcsR0FBRyx1QkFBTSxnREFBTixDQUFaOztBQUVBLElBQU1DLE1BQU0sR0FBRyxTQUFUQSxNQUFTLENBQUNDLENBQUQ7QUFBQSxTQUFRQSxDQUFDLGFBQU1BLENBQU4sVUFBYyxZQUF2QjtBQUFBLENBQWY7O0FBRUEsU0FBU0MsY0FBVCxDQUF3QkMsS0FBeEIsRUFBK0I7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ZVJlZiwgdXNlRWZmZWN0LCB1c2VDYWxsYmFjayB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tICdjbGFzc25hbWVzJztcbmltcG9ydCBpc0VxdWFsIGZyb20gJ2xvZGFzaC9pc0VxdWFsJztcbmltcG9ydCBkZWJ1ZyBmcm9tICdkZWJ1Zyc7XG5pbXBvcnQgTGluZWFyUHJvZ3Jlc3MgZnJvbSAnQG1hdGVyaWFsLXVpL2NvcmUvTGluZWFyUHJvZ3Jlc3MnO1xuaW1wb3J0IHsgd2l0aFN0eWxlcyB9IGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL3N0eWxlcyc7XG5pbXBvcnQgeyBOb2RlVmlld1dyYXBwZXIgfSBmcm9tICdAdGlwdGFwL3JlYWN0JztcbmltcG9ydCBJbnNlcnRJbWFnZUhhbmRsZXIgZnJvbSAnLi4vY29tcG9uZW50cy9pbWFnZS9JbnNlcnRJbWFnZUhhbmRsZXInO1xuaW1wb3J0IEltYWdlVG9vbGJhciBmcm9tICcuLi9jb21wb25lbnRzL2ltYWdlL0ltYWdlVG9vbGJhcic7XG5pbXBvcnQgQ3VzdG9tVG9vbGJhcldyYXBwZXIgZnJvbSAnLi9jdXN0b20tdG9vbGJhci13cmFwcGVyJztcblxuY29uc3QgbG9nID0gZGVidWcoJ0BwaWUtbGliOmVkaXRhYmxlLWh0bWw6cGx1Z2luczppbWFnZTpjb21wb25lbnQnKTtcblxuY29uc3Qgc2l6ZVB4ID0gKHMpID0+IChzID8gYCR7c31weGAgOiAnY2FsYygyMHB4KScpO1xuXG5mdW5jdGlvbiBJbWFnZUNvbXBvbmVudChwcm9wcykge1xuICBjb25zdCB7XG4gICAgbm9kZSxcbiAgICBlZGl0b3IsXG4gICAgY2xhc3NlcyxcbiAgICBhdHRyaWJ1dGVzLFxuICAgIG9uRm9jdXMsXG4gICAgc2VsZWN0ZWQsXG4gICAgb3B0aW9ucyxcbiAgICBtYXhJbWFnZVdpZHRoID0gNzAwLFxuICAgIG1heEltYWdlSGVpZ2h0ID0gOTAwLFxuICAgIGxhdGV4LFxuICAgIGhhbmRsZUNoYW5nZSxcbiAgICBoYW5kbGVEb25lLFxuICB9ID0gcHJvcHM7XG4gIGNvbnN0IHsgYWx0IH0gPSBub2RlLmF0dHJzO1xuXG4gIGNvbnN0IFtzaG93VG9vbGJhciwgc2V0U2hvd1Rvb2xiYXJdID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gIGNvbnN0IGltZ1JlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgcmVzaXplUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCB0b29sYmFyUmVmID0gdXNlUmVmKG51bGwpO1xuXG4gIGNvbnN0IGdldFBlcmNlbnRGcm9tV2lkdGggPSB1c2VDYWxsYmFjaygod2lkdGgpID0+IHtcbiAgICBjb25zdCBmbG9vcmVkID0gKHdpZHRoIC8gaW1nUmVmLmN1cnJlbnQubmF0dXJhbFdpZHRoKSAqIDQ7XG4gICAgcmV0dXJuIHBhcnNlSW50KGZsb29yZWQudG9GaXhlZCgwKSAqIDI1LCAxMCk7XG4gIH0sIFtdKTtcblxuICBjb25zdCBhcHBseVNpemVEYXRhID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmICghbm9kZS5hdHRycy53aWR0aCB8fCAhaW1nUmVmLmN1cnJlbnQpIHJldHVybjtcblxuICAgIGNvbnN0IHVwZGF0ZSA9IHtcbiAgICAgIC4uLm5vZGUuYXR0cnMsXG4gICAgICByZXNpemVQZXJjZW50OiBnZXRQZXJjZW50RnJvbVdpZHRoKG5vZGUuYXR0cnMud2lkdGgpLFxuICAgIH07XG5cbiAgICBpZiAoIWlzRXF1YWwodXBkYXRlLCBub2RlLmF0dHJzKSkge1xuICAgICAgZWRpdG9yLmNvbW1hbmRzLnVwZGF0ZUF0dHJpYnV0ZXMoJ2ltYWdlVXBsb2FkTm9kZScsIHVwZGF0ZSk7XG4gICAgfVxuICB9LCBbZWRpdG9yLCBub2RlLmF0dHJzLCBnZXRQZXJjZW50RnJvbVdpZHRoXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBzZXRTaG93VG9vbGJhcihzZWxlY3RlZCk7XG4gIH0sIFtzZWxlY3RlZF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgb3B0aW9ucy5pbWFnZUhhbmRsaW5nLmluc2VydEltYWdlUmVxdWVzdGVkKG5vZGUsIChmaW5pc2gpID0+IG5ldyBJbnNlcnRJbWFnZUhhbmRsZXIoZWRpdG9yLCBmaW5pc2gpKTtcbiAgICBhcHBseVNpemVEYXRhKCk7XG5cbiAgICBjb25zdCByZXNpemVIYW5kbGUgPSByZXNpemVSZWYuY3VycmVudDtcbiAgICBpZiAocmVzaXplSGFuZGxlKSB7XG4gICAgICByZXNpemVIYW5kbGUuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgaW5pdFJlc2l6ZSwgZmFsc2UpO1xuICAgIH1cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgaWYgKHJlc2l6ZUhhbmRsZSkgcmVzaXplSGFuZGxlLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIGluaXRSZXNpemUsIGZhbHNlKTtcbiAgICB9O1xuICB9LCBbXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBhcHBseVNpemVEYXRhKCk7XG4gIH0pO1xuXG4gIGNvbnN0IGxvYWRJbWFnZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBjb25zdCBib3ggPSBpbWdSZWYuY3VycmVudDtcbiAgICBpZiAoIWJveCkgcmV0dXJuO1xuXG4gICAgaWYgKCFib3guc3R5bGUud2lkdGggfHwgYm94LnN0eWxlLndpZHRoID09PSAnY2FsYygyMHB4KScpIHtcbiAgICAgIGNvbnN0IHcgPSBNYXRoLm1pbihib3gubmF0dXJhbFdpZHRoLCBtYXhJbWFnZVdpZHRoKTtcbiAgICAgIGNvbnN0IGggPSBNYXRoLm1pbihib3gubmF0dXJhbEhlaWdodCwgbWF4SW1hZ2VIZWlnaHQpO1xuXG4gICAgICBib3guc3R5bGUud2lkdGggPSBgJHt3fXB4YDtcbiAgICAgIGJveC5zdHlsZS5oZWlnaHQgPSBgJHtofXB4YDtcblxuICAgICAgY29uc3QgdXBkYXRlID0geyB3aWR0aDogdywgaGVpZ2h0OiBoIH07XG4gICAgICBpZiAoIWlzRXF1YWwodXBkYXRlLCBub2RlLmF0dHJzKSkge1xuICAgICAgICBlZGl0b3IuY29tbWFuZHMudXBkYXRlQXR0cmlidXRlcygnaW1hZ2VVcGxvYWROb2RlJywgdXBkYXRlKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtlZGl0b3IsIG5vZGUuYXR0cnMsIG1heEltYWdlV2lkdGgsIG1heEltYWdlSGVpZ2h0XSk7XG5cbiAgY29uc3QgdXBkYXRlQXNwZWN0ID0gKGluaXRpYWwsIG5leHQsIGtlZXBBc3BlY3QgPSB0cnVlLCByZXNpemVUeXBlKSA9PiB7XG4gICAgaWYgKGtlZXBBc3BlY3QpIHtcbiAgICAgIGNvbnN0IHJhdGlvID0gaW5pdGlhbC53aWR0aCAvIGluaXRpYWwuaGVpZ2h0O1xuICAgICAgaWYgKHJlc2l6ZVR5cGUgPT09ICdoZWlnaHQnKSByZXR1cm4geyB3aWR0aDogbmV4dC5oZWlnaHQgKiByYXRpbywgaGVpZ2h0OiBuZXh0LmhlaWdodCB9O1xuICAgICAgcmV0dXJuIHsgd2lkdGg6IG5leHQud2lkdGgsIGhlaWdodDogbmV4dC53aWR0aCAvIHJhdGlvIH07XG4gICAgfVxuICAgIHJldHVybiBuZXh0O1xuICB9O1xuXG4gIGNvbnN0IHN0YXJ0UmVzaXplID0gdXNlQ2FsbGJhY2soXG4gICAgKGUpID0+IHtcbiAgICAgIGNvbnN0IGJveCA9IGltZ1JlZi5jdXJyZW50O1xuICAgICAgaWYgKCFib3gpIHJldHVybjtcblxuICAgICAgY29uc3QgYm91bmRzID0gZS50YXJnZXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICBjb25zdCBpbml0aWFsID0geyB3aWR0aDogYm94Lm5hdHVyYWxXaWR0aCwgaGVpZ2h0OiBib3gubmF0dXJhbEhlaWdodCB9O1xuXG4gICAgICBjb25zdCBuZXh0ID0gdXBkYXRlQXNwZWN0KGluaXRpYWwsIHtcbiAgICAgICAgd2lkdGg6IGUuY2xpZW50WCAtIGJvdW5kcy5sZWZ0LFxuICAgICAgICBoZWlnaHQ6IGUuY2xpZW50WSAtIGJvdW5kcy50b3AsXG4gICAgICB9KTtcblxuICAgICAgaWYgKG5leHQud2lkdGggPiA1MCAmJiBuZXh0LmhlaWdodCA+IDUwICYmIG5leHQud2lkdGggPD0gNzAwICYmIG5leHQuaGVpZ2h0IDw9IDkwMCkge1xuICAgICAgICBib3guc3R5bGUud2lkdGggPSBgJHtuZXh0LndpZHRofXB4YDtcbiAgICAgICAgYm94LnN0eWxlLmhlaWdodCA9IGAke25leHQuaGVpZ2h0fXB4YDtcblxuICAgICAgICBjb25zdCB1cGRhdGUgPSB7IHdpZHRoOiBuZXh0LndpZHRoLCBoZWlnaHQ6IG5leHQuaGVpZ2h0IH07XG4gICAgICAgIGlmICghaXNFcXVhbCh1cGRhdGUsIG5vZGUuYXR0cnMpKSB7XG4gICAgICAgICAgZWRpdG9yLmNvbW1hbmRzLnVwZGF0ZUF0dHJpYnV0ZXMoJ2ltYWdlVXBsb2FkTm9kZScsIHVwZGF0ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuICAgIFtlZGl0b3IsIG5vZGUuYXR0cnNdLFxuICApO1xuXG4gIGNvbnN0IG9uQ2hhbmdlID0gdXNlQ2FsbGJhY2soXG4gICAgKG5ld1ZhbHVlcykgPT4ge1xuICAgICAgZWRpdG9yLmNvbW1hbmRzLnVwZGF0ZUF0dHJpYnV0ZXMoJ2ltYWdlVXBsb2FkTm9kZScsIG5ld1ZhbHVlcyk7XG4gICAgfSxcbiAgICBbZWRpdG9yXSxcbiAgKTtcblxuICBjb25zdCBzdG9wUmVzaXplID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCBzdGFydFJlc2l6ZSk7XG4gICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNldXAnLCBzdG9wUmVzaXplKTtcbiAgfSwgW3N0YXJ0UmVzaXplXSk7XG5cbiAgY29uc3QgaW5pdFJlc2l6ZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgc3RhcnRSZXNpemUpO1xuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgc3RvcFJlc2l6ZSk7XG4gIH0sIFtzdGFydFJlc2l6ZSwgc3RvcFJlc2l6ZV0pO1xuXG4gIGNvbnN0IHN0eWxlID0ge1xuICAgIHdpZHRoOiBzaXplUHgobm9kZS5hdHRycy53aWR0aCksXG4gICAgaGVpZ2h0OiBzaXplUHgobm9kZS5hdHRycy5oZWlnaHQpLFxuICAgIG9iamVjdEZpdDogJ2NvbnRhaW4nLFxuICB9O1xuXG4gIGNvbnN0IGZsZXhBbGlnbiA9IHsgbGVmdDogJ2ZsZXgtc3RhcnQnLCBjZW50ZXI6ICdjZW50ZXInLCByaWdodDogJ2ZsZXgtZW5kJyB9W25vZGUuYXR0cnMuYWxpZ25tZW50XSB8fCAnZmxleC1zdGFydCc7XG5cbiAgcmV0dXJuIChcbiAgICA8Tm9kZVZpZXdXcmFwcGVyPlxuICAgICAgPGRpdlxuICAgICAgICBvbkZvY3VzPXtvbkZvY3VzfVxuICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZXMoXG4gICAgICAgICAgY2xhc3Nlcy5yb290LFxuICAgICAgICAgICFub2RlLmF0dHJzLmxvYWRlZCAmJiBjbGFzc2VzLmxvYWRpbmcsXG4gICAgICAgICAgbm9kZS5hdHRycy5kZWxldGVTdGF0dXMgPT09ICdwZW5kaW5nJyAmJiBjbGFzc2VzLnBlbmRpbmdEZWxldGUsXG4gICAgICAgICl9XG4gICAgICAgIHN0eWxlPXt7IGp1c3RpZnlDb250ZW50OiBmbGV4QWxpZ24gfX1cbiAgICAgID5cbiAgICAgICAgPExpbmVhclByb2dyZXNzXG4gICAgICAgICAgbW9kZT1cImRldGVybWluYXRlXCJcbiAgICAgICAgICB2YWx1ZT17bm9kZS5hdHRycy5wZXJjZW50IHx8IDB9XG4gICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWVzKGNsYXNzZXMucHJvZ3Jlc3MsIG5vZGUuYXR0cnMubG9hZGVkICYmIGNsYXNzZXMuaGlkZVByb2dyZXNzKX1cbiAgICAgICAgLz5cblxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3Nlcy5pbWFnZUNvbnRhaW5lcn0+XG4gICAgICAgICAgPGltZ1xuICAgICAgICAgICAgey4uLmF0dHJpYnV0ZXN9XG4gICAgICAgICAgICByZWY9e2ltZ1JlZn1cbiAgICAgICAgICAgIHNyYz17bm9kZS5hdHRycy5zcmN9XG4gICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZXMoY2xhc3Nlcy5pbWFnZSwgc2VsZWN0ZWQgJiYgY2xhc3Nlcy5hY3RpdmUpfVxuICAgICAgICAgICAgc3R5bGU9e3N0eWxlfVxuICAgICAgICAgICAgb25Mb2FkPXtsb2FkSW1hZ2V9XG4gICAgICAgICAgICBhbHQ9e25vZGUuYXR0cnMuYWx0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAgPGRpdiByZWY9e3Jlc2l6ZVJlZn0gY2xhc3NOYW1lPXtjbGFzc05hbWVzKGNsYXNzZXMucmVzaXplLCAncmVzaXplJyl9IC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIHtzaG93VG9vbGJhciAmJiAoXG4gICAgICAgIDxkaXZcbiAgICAgICAgICByZWY9e3Rvb2xiYXJSZWZ9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICAgICAgdG9wOiAnMTAwJScsXG4gICAgICAgICAgICBsZWZ0OiAwLFxuICAgICAgICAgICAgekluZGV4OiAyMCxcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICd2YXIoLS1lZGl0YWJsZS1odG1sLXRvb2xiYXItYmcsICNlZmVmZWYpJyxcbiAgICAgICAgICAgIGJveFNoYWRvdzpcbiAgICAgICAgICAgICAgJzBweCAxcHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAycHggMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggM3B4IDFweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4xMiknLFxuICAgICAgICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgICAgICB9fVxuICAgICAgICA+XG4gICAgICAgICAgPEN1c3RvbVRvb2xiYXJXcmFwcGVyXG4gICAgICAgICAgICBzaG93RG9uZVxuICAgICAgICAgICAgey4uLm9wdGlvbnN9XG4gICAgICAgICAgICBvbkRvbmU9eygpID0+IHtcbiAgICAgICAgICAgICAgc2V0U2hvd1Rvb2xiYXIoZmFsc2UpO1xuICAgICAgICAgICAgICBwcm9wcy5pbWFnZUhhbmRsaW5nPy5vbkRvbmUoKTtcbiAgICAgICAgICAgICAgcHJvcHMuZWRpdG9yLmNvbW1hbmRzLmZvY3VzKCdlbmQnKTtcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPEltYWdlVG9vbGJhclxuICAgICAgICAgICAgICBkaXNhYmxlSW1hZ2VBbGlnbm1lbnRCdXR0b25zPXtvcHRpb25zLmRpc2FibGVJbWFnZUFsaWdubWVudEJ1dHRvbnN9XG4gICAgICAgICAgICAgIGFsdD17bm9kZS5hdHRycy5hbHR9XG4gICAgICAgICAgICAgIGltYWdlTG9hZGVkPXtub2RlLmF0dHJzLmxvYWRlZH1cbiAgICAgICAgICAgICAgYWxpZ25tZW50PXtub2RlLmF0dHJzLmFsaWdubWVudCB8fCAnbGVmdCd9XG4gICAgICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9DdXN0b21Ub29sYmFyV3JhcHBlcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApfVxuICAgIDwvTm9kZVZpZXdXcmFwcGVyPlxuICApO1xufVxuXG5JbWFnZUNvbXBvbmVudC5wcm9wVHlwZXMgPSB7XG4gIG5vZGU6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgZWRpdG9yOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gIGNsYXNzZXM6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgYXR0cmlidXRlczogUHJvcFR5cGVzLm9iamVjdCxcbiAgb25Gb2N1czogUHJvcFR5cGVzLmZ1bmMsXG4gIG1heEltYWdlV2lkdGg6IFByb3BUeXBlcy5udW1iZXIsXG4gIG1heEltYWdlSGVpZ2h0OiBQcm9wVHlwZXMubnVtYmVyLFxufTtcblxuZXhwb3J0IGRlZmF1bHQgd2l0aFN0eWxlcygodGhlbWUpID0+ICh7XG4gIHBvcnRhbDoge1xuICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgIG9wYWNpdHk6IDAsXG4gICAgdHJhbnNpdGlvbjogJ29wYWNpdHkgMjAwbXMgbGluZWFyJyxcbiAgfSxcbiAgZmxvYXRpbmdCdXR0b25Sb3c6IHtcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLnBhbGV0dGUuYmFja2dyb3VuZC5wYXBlcixcbiAgICBib3JkZXJSYWRpdXM6ICcxcHgnLFxuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICBwYWRkaW5nOiAnMTBweCcsXG4gICAgYm9yZGVyOiBgc29saWQgMXB4ICR7dGhlbWUucGFsZXR0ZS5ncmV5WzIwMF19YCxcbiAgICBib3hTaGFkb3c6XG4gICAgICAnMHB4IDFweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMHB4IDJweCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDBweCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjEyKScsXG4gIH0sXG4gIHByb2dyZXNzOiB7XG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgbGVmdDogJzAnLFxuICAgIHdpZHRoOiAnZml0LWNvbnRlbnQnLFxuICAgIHRvcDogJzAlJyxcbiAgICB0cmFuc2l0aW9uOiAnb3BhY2l0eSAyMDBtcyBsaW5lYXInLFxuICB9LFxuICBoaWRlUHJvZ3Jlc3M6IHtcbiAgICBvcGFjaXR5OiAwLFxuICB9LFxuICBsb2FkaW5nOiB7XG4gICAgb3BhY2l0eTogMC4zLFxuICB9LFxuICBwZW5kaW5nRGVsZXRlOiB7XG4gICAgb3BhY2l0eTogMC4zLFxuICB9LFxuICByb290OiB7XG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgYm9yZGVyOiBgc29saWQgMXB4ICR7dGhlbWUucGFsZXR0ZS5jb21tb24ud2hpdGV9YCxcbiAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgdHJhbnNpdGlvbjogJ29wYWNpdHkgMjAwbXMgbGluZWFyJyxcbiAgfSxcbiAgZGVsZXRlOiB7XG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgcmlnaHQ6IDAsXG4gIH0sXG4gIGltYWdlQ29udGFpbmVyOiB7XG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgd2lkdGg6ICdmaXQtY29udGVudCcsXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuXG4gICAgJyYmOmhvdmVyID4gLnJlc2l6ZSc6IHtcbiAgICAgIGRpc3BsYXk6ICdibG9jaycsXG4gICAgfSxcbiAgfSxcbiAgYWN0aXZlOiB7XG4gICAgYm9yZGVyOiBgc29saWQgMXB4ICR7dGhlbWUucGFsZXR0ZS5wcmltYXJ5Lm1haW59YCxcbiAgfSxcbiAgcmVzaXplOiB7XG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5wYWxldHRlLnByaW1hcnkubWFpbixcbiAgICBjdXJzb3I6ICdjb2wtcmVzaXplJyxcbiAgICBoZWlnaHQ6ICczNXB4JyxcbiAgICB3aWR0aDogJzVweCcsXG4gICAgYm9yZGVyUmFkaXVzOiA4LFxuICAgIG1hcmdpbkxlZnQ6ICc1cHgnLFxuICAgIG1hcmdpblJpZ2h0OiAnMTBweCcsXG4gICAgZGlzcGxheTogJ25vbmUnLFxuICB9LFxuICBkcmF3YWJsZUhlaWdodDoge1xuICAgIG1pbkhlaWdodDogMzUwLFxuICB9LFxufSkpKEltYWdlQ29tcG9uZW50KTtcbiJdfQ==
|
|
333
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHRlbnNpb25zL2NvbXBvbmVudC5qc3giXSwibmFtZXMiOlsibG9nIiwic2l6ZVB4IiwicyIsIkltYWdlQ29tcG9uZW50IiwicHJvcHMiLCJub2RlIiwiZWRpdG9yIiwiY2xhc3NlcyIsImF0dHJpYnV0ZXMiLCJvbkZvY3VzIiwic2VsZWN0ZWQiLCJvcHRpb25zIiwibWF4SW1hZ2VXaWR0aCIsIm1heEltYWdlSGVpZ2h0IiwibGF0ZXgiLCJoYW5kbGVDaGFuZ2UiLCJoYW5kbGVEb25lIiwiYWx0IiwiYXR0cnMiLCJzaG93VG9vbGJhciIsInNldFNob3dUb29sYmFyIiwiaW1nUmVmIiwicmVzaXplUmVmIiwidG9vbGJhclJlZiIsImdldFBlcmNlbnRGcm9tV2lkdGgiLCJ3aWR0aCIsImZsb29yZWQiLCJjdXJyZW50IiwibmF0dXJhbFdpZHRoIiwicGFyc2VJbnQiLCJ0b0ZpeGVkIiwiYXBwbHlTaXplRGF0YSIsInVwZGF0ZSIsInJlc2l6ZVBlcmNlbnQiLCJjb21tYW5kcyIsInVwZGF0ZUF0dHJpYnV0ZXMiLCJpbWFnZUhhbmRsaW5nIiwiaW5zZXJ0SW1hZ2VSZXF1ZXN0ZWQiLCJmaW5pc2giLCJJbnNlcnRJbWFnZUhhbmRsZXIiLCJyZXNpemVIYW5kbGUiLCJhZGRFdmVudExpc3RlbmVyIiwiaW5pdFJlc2l6ZSIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJsb2FkSW1hZ2UiLCJib3giLCJzdHlsZSIsInciLCJNYXRoIiwibWluIiwiaCIsIm5hdHVyYWxIZWlnaHQiLCJoZWlnaHQiLCJ1cGRhdGVBc3BlY3QiLCJpbml0aWFsIiwibmV4dCIsImtlZXBBc3BlY3QiLCJyZXNpemVUeXBlIiwicmF0aW8iLCJzdGFydFJlc2l6ZSIsImUiLCJib3VuZHMiLCJ0YXJnZXQiLCJnZXRCb3VuZGluZ0NsaWVudFJlY3QiLCJjbGllbnRYIiwibGVmdCIsImNsaWVudFkiLCJ0b3AiLCJvbkNoYW5nZSIsIm5ld1ZhbHVlcyIsInN0b3BSZXNpemUiLCJ3aW5kb3ciLCJvYmplY3RGaXQiLCJmbGV4QWxpZ24iLCJjZW50ZXIiLCJyaWdodCIsImFsaWdubWVudCIsInJvb3QiLCJsb2FkZWQiLCJsb2FkaW5nIiwiZGVsZXRlU3RhdHVzIiwicGVuZGluZ0RlbGV0ZSIsImp1c3RpZnlDb250ZW50IiwicGVyY2VudCIsInByb2dyZXNzIiwiaGlkZVByb2dyZXNzIiwiaW1hZ2VDb250YWluZXIiLCJzcmMiLCJpbWFnZSIsImFjdGl2ZSIsInJlc2l6ZSIsInBvc2l0aW9uIiwiekluZGV4IiwiYmFja2dyb3VuZCIsImJveFNoYWRvdyIsIm9uRG9uZSIsImZvY3VzIiwiZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9ucyIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsIm9iamVjdCIsImlzUmVxdWlyZWQiLCJmdW5jIiwibnVtYmVyIiwidGhlbWUiLCJwb3J0YWwiLCJvcGFjaXR5IiwidHJhbnNpdGlvbiIsImZsb2F0aW5nQnV0dG9uUm93IiwiYmFja2dyb3VuZENvbG9yIiwicGFsZXR0ZSIsInBhcGVyIiwiYm9yZGVyUmFkaXVzIiwiZGlzcGxheSIsInBhZGRpbmciLCJib3JkZXIiLCJncmV5IiwiY29tbW9uIiwid2hpdGUiLCJhbGlnbkl0ZW1zIiwicHJpbWFyeSIsIm1haW4iLCJjdXJzb3IiLCJtYXJnaW5MZWZ0IiwibWFyZ2luUmlnaHQiLCJkcmF3YWJsZUhlaWdodCIsIm1pbkhlaWdodCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7OztBQUVBLElBQU1BLEdBQUcsR0FBRyx1QkFBTSxnREFBTixDQUFaOztBQUVBLElBQU1DLE1BQU0sR0FBRyxTQUFUQSxNQUFTLENBQUNDLENBQUQ7QUFBQSxTQUFRQSxDQUFDLGFBQU1BLENBQU4sVUFBYyxZQUF2QjtBQUFBLENBQWY7O0FBRUEsU0FBU0MsY0FBVCxDQUF3QkMsS0FBeEIsRUFBK0I7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IHVzZVN0YXRlLCB1c2VSZWYsIHVzZUVmZmVjdCwgdXNlQ2FsbGJhY2sgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IGNsYXNzTmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQgaXNFcXVhbCBmcm9tICdsb2Rhc2gvaXNFcXVhbCc7XG5pbXBvcnQgZGVidWcgZnJvbSAnZGVidWcnO1xuaW1wb3J0IExpbmVhclByb2dyZXNzIGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL0xpbmVhclByb2dyZXNzJztcbmltcG9ydCB7IHdpdGhTdHlsZXMgfSBmcm9tICdAbWF0ZXJpYWwtdWkvY29yZS9zdHlsZXMnO1xuaW1wb3J0IHsgTm9kZVZpZXdXcmFwcGVyIH0gZnJvbSAnQHRpcHRhcC9yZWFjdCc7XG5pbXBvcnQgSW5zZXJ0SW1hZ2VIYW5kbGVyIGZyb20gJy4uL2NvbXBvbmVudHMvaW1hZ2UvSW5zZXJ0SW1hZ2VIYW5kbGVyJztcbmltcG9ydCBJbWFnZVRvb2xiYXIgZnJvbSAnLi4vY29tcG9uZW50cy9pbWFnZS9JbWFnZVRvb2xiYXInO1xuaW1wb3J0IEN1c3RvbVRvb2xiYXJXcmFwcGVyIGZyb20gJy4vY3VzdG9tLXRvb2xiYXItd3JhcHBlcic7XG5cbmNvbnN0IGxvZyA9IGRlYnVnKCdAcGllLWxpYjplZGl0YWJsZS1odG1sOnBsdWdpbnM6aW1hZ2U6Y29tcG9uZW50Jyk7XG5cbmNvbnN0IHNpemVQeCA9IChzKSA9PiAocyA/IGAke3N9cHhgIDogJ2NhbGMoMjBweCknKTtcblxuZnVuY3Rpb24gSW1hZ2VDb21wb25lbnQocHJvcHMpIHtcbiAgY29uc3Qge1xuICAgIG5vZGUsXG4gICAgZWRpdG9yLFxuICAgIGNsYXNzZXMsXG4gICAgYXR0cmlidXRlcyxcbiAgICBvbkZvY3VzLFxuICAgIHNlbGVjdGVkLFxuICAgIG9wdGlvbnMsXG4gICAgbWF4SW1hZ2VXaWR0aCA9IDcwMCxcbiAgICBtYXhJbWFnZUhlaWdodCA9IDkwMCxcbiAgICBsYXRleCxcbiAgICBoYW5kbGVDaGFuZ2UsXG4gICAgaGFuZGxlRG9uZSxcbiAgfSA9IHByb3BzO1xuICBjb25zdCB7IGFsdCB9ID0gbm9kZS5hdHRycztcblxuICBjb25zdCBbc2hvd1Rvb2xiYXIsIHNldFNob3dUb29sYmFyXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICBjb25zdCBpbWdSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IHJlc2l6ZVJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgdG9vbGJhclJlZiA9IHVzZVJlZihudWxsKTtcblxuICBjb25zdCBnZXRQZXJjZW50RnJvbVdpZHRoID0gdXNlQ2FsbGJhY2soKHdpZHRoKSA9PiB7XG4gICAgY29uc3QgZmxvb3JlZCA9ICh3aWR0aCAvIGltZ1JlZi5jdXJyZW50Lm5hdHVyYWxXaWR0aCkgKiA0O1xuICAgIHJldHVybiBwYXJzZUludChmbG9vcmVkLnRvRml4ZWQoMCkgKiAyNSwgMTApO1xuICB9LCBbXSk7XG5cbiAgY29uc3QgYXBwbHlTaXplRGF0YSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAoIW5vZGUuYXR0cnMud2lkdGggfHwgIWltZ1JlZi5jdXJyZW50KSByZXR1cm47XG5cbiAgICBjb25zdCB1cGRhdGUgPSB7XG4gICAgICAuLi5ub2RlLmF0dHJzLFxuICAgICAgcmVzaXplUGVyY2VudDogZ2V0UGVyY2VudEZyb21XaWR0aChub2RlLmF0dHJzLndpZHRoKSxcbiAgICB9O1xuXG4gICAgaWYgKCFpc0VxdWFsKHVwZGF0ZSwgbm9kZS5hdHRycykpIHtcbiAgICAgIGVkaXRvci5jb21tYW5kcy51cGRhdGVBdHRyaWJ1dGVzKCdpbWFnZVVwbG9hZE5vZGUnLCB1cGRhdGUpO1xuICAgIH1cbiAgfSwgW2VkaXRvciwgbm9kZS5hdHRycywgZ2V0UGVyY2VudEZyb21XaWR0aF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0U2hvd1Rvb2xiYXIoc2VsZWN0ZWQpO1xuICB9LCBbc2VsZWN0ZWRdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIG9wdGlvbnMuaW1hZ2VIYW5kbGluZy5pbnNlcnRJbWFnZVJlcXVlc3RlZChub2RlLCAoZmluaXNoKSA9PiBuZXcgSW5zZXJ0SW1hZ2VIYW5kbGVyKGVkaXRvciwgbm9kZSwgZmluaXNoKSk7XG4gICAgYXBwbHlTaXplRGF0YSgpO1xuXG4gICAgY29uc3QgcmVzaXplSGFuZGxlID0gcmVzaXplUmVmLmN1cnJlbnQ7XG4gICAgaWYgKHJlc2l6ZUhhbmRsZSkge1xuICAgICAgcmVzaXplSGFuZGxlLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIGluaXRSZXNpemUsIGZhbHNlKTtcbiAgICB9XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGlmIChyZXNpemVIYW5kbGUpIHJlc2l6ZUhhbmRsZS5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBpbml0UmVzaXplLCBmYWxzZSk7XG4gICAgfTtcbiAgfSwgW10pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgYXBwbHlTaXplRGF0YSgpO1xuICB9KTtcblxuICBjb25zdCBsb2FkSW1hZ2UgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgY29uc3QgYm94ID0gaW1nUmVmLmN1cnJlbnQ7XG4gICAgaWYgKCFib3gpIHJldHVybjtcblxuICAgIGlmICghYm94LnN0eWxlLndpZHRoIHx8IGJveC5zdHlsZS53aWR0aCA9PT0gJ2NhbGMoMjBweCknKSB7XG4gICAgICBjb25zdCB3ID0gTWF0aC5taW4oYm94Lm5hdHVyYWxXaWR0aCwgbWF4SW1hZ2VXaWR0aCk7XG4gICAgICBjb25zdCBoID0gTWF0aC5taW4oYm94Lm5hdHVyYWxIZWlnaHQsIG1heEltYWdlSGVpZ2h0KTtcblxuICAgICAgYm94LnN0eWxlLndpZHRoID0gYCR7d31weGA7XG4gICAgICBib3guc3R5bGUuaGVpZ2h0ID0gYCR7aH1weGA7XG5cbiAgICAgIGNvbnN0IHVwZGF0ZSA9IHsgd2lkdGg6IHcsIGhlaWdodDogaCB9O1xuICAgICAgaWYgKCFpc0VxdWFsKHVwZGF0ZSwgbm9kZS5hdHRycykpIHtcbiAgICAgICAgZWRpdG9yLmNvbW1hbmRzLnVwZGF0ZUF0dHJpYnV0ZXMoJ2ltYWdlVXBsb2FkTm9kZScsIHVwZGF0ZSk7XG4gICAgICB9XG4gICAgfVxuICB9LCBbZWRpdG9yLCBub2RlLmF0dHJzLCBtYXhJbWFnZVdpZHRoLCBtYXhJbWFnZUhlaWdodF0pO1xuXG4gIGNvbnN0IHVwZGF0ZUFzcGVjdCA9IChpbml0aWFsLCBuZXh0LCBrZWVwQXNwZWN0ID0gdHJ1ZSwgcmVzaXplVHlwZSkgPT4ge1xuICAgIGlmIChrZWVwQXNwZWN0KSB7XG4gICAgICBjb25zdCByYXRpbyA9IGluaXRpYWwud2lkdGggLyBpbml0aWFsLmhlaWdodDtcbiAgICAgIGlmIChyZXNpemVUeXBlID09PSAnaGVpZ2h0JykgcmV0dXJuIHsgd2lkdGg6IG5leHQuaGVpZ2h0ICogcmF0aW8sIGhlaWdodDogbmV4dC5oZWlnaHQgfTtcbiAgICAgIHJldHVybiB7IHdpZHRoOiBuZXh0LndpZHRoLCBoZWlnaHQ6IG5leHQud2lkdGggLyByYXRpbyB9O1xuICAgIH1cbiAgICByZXR1cm4gbmV4dDtcbiAgfTtcblxuICBjb25zdCBzdGFydFJlc2l6ZSA9IHVzZUNhbGxiYWNrKFxuICAgIChlKSA9PiB7XG4gICAgICBjb25zdCBib3ggPSBpbWdSZWYuY3VycmVudDtcbiAgICAgIGlmICghYm94KSByZXR1cm47XG5cbiAgICAgIGNvbnN0IGJvdW5kcyA9IGUudGFyZ2V0LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgY29uc3QgaW5pdGlhbCA9IHsgd2lkdGg6IGJveC5uYXR1cmFsV2lkdGgsIGhlaWdodDogYm94Lm5hdHVyYWxIZWlnaHQgfTtcblxuICAgICAgY29uc3QgbmV4dCA9IHVwZGF0ZUFzcGVjdChpbml0aWFsLCB7XG4gICAgICAgIHdpZHRoOiBlLmNsaWVudFggLSBib3VuZHMubGVmdCxcbiAgICAgICAgaGVpZ2h0OiBlLmNsaWVudFkgLSBib3VuZHMudG9wLFxuICAgICAgfSk7XG5cbiAgICAgIGlmIChuZXh0LndpZHRoID4gNTAgJiYgbmV4dC5oZWlnaHQgPiA1MCAmJiBuZXh0LndpZHRoIDw9IDcwMCAmJiBuZXh0LmhlaWdodCA8PSA5MDApIHtcbiAgICAgICAgYm94LnN0eWxlLndpZHRoID0gYCR7bmV4dC53aWR0aH1weGA7XG4gICAgICAgIGJveC5zdHlsZS5oZWlnaHQgPSBgJHtuZXh0LmhlaWdodH1weGA7XG5cbiAgICAgICAgY29uc3QgdXBkYXRlID0geyB3aWR0aDogbmV4dC53aWR0aCwgaGVpZ2h0OiBuZXh0LmhlaWdodCB9O1xuICAgICAgICBpZiAoIWlzRXF1YWwodXBkYXRlLCBub2RlLmF0dHJzKSkge1xuICAgICAgICAgIGVkaXRvci5jb21tYW5kcy51cGRhdGVBdHRyaWJ1dGVzKCdpbWFnZVVwbG9hZE5vZGUnLCB1cGRhdGUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgICBbZWRpdG9yLCBub2RlLmF0dHJzXSxcbiAgKTtcblxuICBjb25zdCBvbkNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgIChuZXdWYWx1ZXMpID0+IHtcbiAgICAgIGVkaXRvci5jb21tYW5kcy51cGRhdGVBdHRyaWJ1dGVzKCdpbWFnZVVwbG9hZE5vZGUnLCBuZXdWYWx1ZXMpO1xuICAgIH0sXG4gICAgW2VkaXRvcl0sXG4gICk7XG5cbiAgY29uc3Qgc3RvcFJlc2l6ZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgc3RhcnRSZXNpemUpO1xuICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgc3RvcFJlc2l6ZSk7XG4gIH0sIFtzdGFydFJlc2l6ZV0pO1xuXG4gIGNvbnN0IGluaXRSZXNpemUgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHN0YXJ0UmVzaXplKTtcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHN0b3BSZXNpemUpO1xuICB9LCBbc3RhcnRSZXNpemUsIHN0b3BSZXNpemVdKTtcblxuICBjb25zdCBzdHlsZSA9IHtcbiAgICB3aWR0aDogc2l6ZVB4KG5vZGUuYXR0cnMud2lkdGgpLFxuICAgIGhlaWdodDogc2l6ZVB4KG5vZGUuYXR0cnMuaGVpZ2h0KSxcbiAgICBvYmplY3RGaXQ6ICdjb250YWluJyxcbiAgfTtcblxuICBjb25zdCBmbGV4QWxpZ24gPSB7IGxlZnQ6ICdmbGV4LXN0YXJ0JywgY2VudGVyOiAnY2VudGVyJywgcmlnaHQ6ICdmbGV4LWVuZCcgfVtub2RlLmF0dHJzLmFsaWdubWVudF0gfHwgJ2ZsZXgtc3RhcnQnO1xuXG4gIHJldHVybiAoXG4gICAgPE5vZGVWaWV3V3JhcHBlcj5cbiAgICAgIDxkaXZcbiAgICAgICAgb25Gb2N1cz17b25Gb2N1c31cbiAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWVzKFxuICAgICAgICAgIGNsYXNzZXMucm9vdCxcbiAgICAgICAgICAhbm9kZS5hdHRycy5sb2FkZWQgJiYgY2xhc3Nlcy5sb2FkaW5nLFxuICAgICAgICAgIG5vZGUuYXR0cnMuZGVsZXRlU3RhdHVzID09PSAncGVuZGluZycgJiYgY2xhc3Nlcy5wZW5kaW5nRGVsZXRlLFxuICAgICAgICApfVxuICAgICAgICBzdHlsZT17eyBqdXN0aWZ5Q29udGVudDogZmxleEFsaWduIH19XG4gICAgICA+XG4gICAgICAgIDxMaW5lYXJQcm9ncmVzc1xuICAgICAgICAgIG1vZGU9XCJkZXRlcm1pbmF0ZVwiXG4gICAgICAgICAgdmFsdWU9e25vZGUuYXR0cnMucGVyY2VudCB8fCAwfVxuICAgICAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lcyhjbGFzc2VzLnByb2dyZXNzLCBub2RlLmF0dHJzLmxvYWRlZCAmJiBjbGFzc2VzLmhpZGVQcm9ncmVzcyl9XG4gICAgICAgIC8+XG5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzZXMuaW1hZ2VDb250YWluZXJ9PlxuICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgIHsuLi5hdHRyaWJ1dGVzfVxuICAgICAgICAgICAgcmVmPXtpbWdSZWZ9XG4gICAgICAgICAgICBzcmM9e25vZGUuYXR0cnMuc3JjfVxuICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWVzKGNsYXNzZXMuaW1hZ2UsIHNlbGVjdGVkICYmIGNsYXNzZXMuYWN0aXZlKX1cbiAgICAgICAgICAgIHN0eWxlPXtzdHlsZX1cbiAgICAgICAgICAgIG9uTG9hZD17bG9hZEltYWdlfVxuICAgICAgICAgICAgYWx0PXtub2RlLmF0dHJzLmFsdH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxkaXYgcmVmPXtyZXNpemVSZWZ9IGNsYXNzTmFtZT17Y2xhc3NOYW1lcyhjbGFzc2VzLnJlc2l6ZSwgJ3Jlc2l6ZScpfSAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICB7c2hvd1Rvb2xiYXIgJiYgKFxuICAgICAgICA8ZGl2XG4gICAgICAgICAgcmVmPXt0b29sYmFyUmVmfVxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgICAgICAgIHRvcDogJzEwMCUnLFxuICAgICAgICAgICAgbGVmdDogMCxcbiAgICAgICAgICAgIHpJbmRleDogMjAsXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAndmFyKC0tZWRpdGFibGUtaHRtbC10b29sYmFyLWJnLCAjZWZlZmVmKScsXG4gICAgICAgICAgICBib3hTaGFkb3c6XG4gICAgICAgICAgICAgICcwcHggMXB4IDVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMnB4IDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDNweCAxcHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMTIpJyxcbiAgICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIDxDdXN0b21Ub29sYmFyV3JhcHBlclxuICAgICAgICAgICAgc2hvd0RvbmVcbiAgICAgICAgICAgIHsuLi5vcHRpb25zfVxuICAgICAgICAgICAgb25Eb25lPXsoKSA9PiB7XG4gICAgICAgICAgICAgIHNldFNob3dUb29sYmFyKGZhbHNlKTtcbiAgICAgICAgICAgICAgcHJvcHMuaW1hZ2VIYW5kbGluZz8ub25Eb25lKCk7XG4gICAgICAgICAgICAgIHByb3BzLmVkaXRvci5jb21tYW5kcy5mb2N1cygnZW5kJyk7XG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxJbWFnZVRvb2xiYXJcbiAgICAgICAgICAgICAgZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9ucz17b3B0aW9ucy5kaXNhYmxlSW1hZ2VBbGlnbm1lbnRCdXR0b25zfVxuICAgICAgICAgICAgICBhbHQ9e25vZGUuYXR0cnMuYWx0fVxuICAgICAgICAgICAgICBpbWFnZUxvYWRlZD17bm9kZS5hdHRycy5sb2FkZWR9XG4gICAgICAgICAgICAgIGFsaWdubWVudD17bm9kZS5hdHRycy5hbGlnbm1lbnQgfHwgJ2xlZnQnfVxuICAgICAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvQ3VzdG9tVG9vbGJhcldyYXBwZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKX1cbiAgICA8L05vZGVWaWV3V3JhcHBlcj5cbiAgKTtcbn1cblxuSW1hZ2VDb21wb25lbnQucHJvcFR5cGVzID0ge1xuICBub2RlOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gIGVkaXRvcjogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICBjbGFzc2VzOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gIGF0dHJpYnV0ZXM6IFByb3BUeXBlcy5vYmplY3QsXG4gIG9uRm9jdXM6IFByb3BUeXBlcy5mdW5jLFxuICBtYXhJbWFnZVdpZHRoOiBQcm9wVHlwZXMubnVtYmVyLFxuICBtYXhJbWFnZUhlaWdodDogUHJvcFR5cGVzLm51bWJlcixcbn07XG5cbmV4cG9ydCBkZWZhdWx0IHdpdGhTdHlsZXMoKHRoZW1lKSA9PiAoe1xuICBwb3J0YWw6IHtcbiAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICBvcGFjaXR5OiAwLFxuICAgIHRyYW5zaXRpb246ICdvcGFjaXR5IDIwMG1zIGxpbmVhcicsXG4gIH0sXG4gIGZsb2F0aW5nQnV0dG9uUm93OiB7XG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5wYWxldHRlLmJhY2tncm91bmQucGFwZXIsXG4gICAgYm9yZGVyUmFkaXVzOiAnMXB4JyxcbiAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgcGFkZGluZzogJzEwcHgnLFxuICAgIGJvcmRlcjogYHNvbGlkIDFweCAke3RoZW1lLnBhbGV0dGUuZ3JleVsyMDBdfWAsXG4gICAgYm94U2hhZG93OlxuICAgICAgJzBweCAxcHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAycHggMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggM3B4IDFweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4xMiknLFxuICB9LFxuICBwcm9ncmVzczoge1xuICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgIGxlZnQ6ICcwJyxcbiAgICB3aWR0aDogJ2ZpdC1jb250ZW50JyxcbiAgICB0b3A6ICcwJScsXG4gICAgdHJhbnNpdGlvbjogJ29wYWNpdHkgMjAwbXMgbGluZWFyJyxcbiAgfSxcbiAgaGlkZVByb2dyZXNzOiB7XG4gICAgb3BhY2l0eTogMCxcbiAgfSxcbiAgbG9hZGluZzoge1xuICAgIG9wYWNpdHk6IDAuMyxcbiAgfSxcbiAgcGVuZGluZ0RlbGV0ZToge1xuICAgIG9wYWNpdHk6IDAuMyxcbiAgfSxcbiAgcm9vdDoge1xuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxuICAgIGJvcmRlcjogYHNvbGlkIDFweCAke3RoZW1lLnBhbGV0dGUuY29tbW9uLndoaXRlfWAsXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgIHRyYW5zaXRpb246ICdvcGFjaXR5IDIwMG1zIGxpbmVhcicsXG4gIH0sXG4gIGRlbGV0ZToge1xuICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgIHJpZ2h0OiAwLFxuICB9LFxuICBpbWFnZUNvbnRhaW5lcjoge1xuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxuICAgIHdpZHRoOiAnZml0LWNvbnRlbnQnLFxuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcblxuICAgICcmJjpob3ZlciA+IC5yZXNpemUnOiB7XG4gICAgICBkaXNwbGF5OiAnYmxvY2snLFxuICAgIH0sXG4gIH0sXG4gIGFjdGl2ZToge1xuICAgIGJvcmRlcjogYHNvbGlkIDFweCAke3RoZW1lLnBhbGV0dGUucHJpbWFyeS5tYWlufWAsXG4gIH0sXG4gIHJlc2l6ZToge1xuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUucGFsZXR0ZS5wcmltYXJ5Lm1haW4sXG4gICAgY3Vyc29yOiAnY29sLXJlc2l6ZScsXG4gICAgaGVpZ2h0OiAnMzVweCcsXG4gICAgd2lkdGg6ICc1cHgnLFxuICAgIGJvcmRlclJhZGl1czogOCxcbiAgICBtYXJnaW5MZWZ0OiAnNXB4JyxcbiAgICBtYXJnaW5SaWdodDogJzEwcHgnLFxuICAgIGRpc3BsYXk6ICdub25lJyxcbiAgfSxcbiAgZHJhd2FibGVIZWlnaHQ6IHtcbiAgICBtaW5IZWlnaHQ6IDM1MCxcbiAgfSxcbn0pKShJbWFnZUNvbXBvbmVudCk7XG4iXX0=
|
package/package.json
CHANGED
|
@@ -11,8 +11,20 @@ const log = debug('@pie-lib:editable-html:image:insert-image-handler');
|
|
|
11
11
|
* @param {Boolean} isPasted - a boolean that keeps track if the file is pasted
|
|
12
12
|
*/
|
|
13
13
|
class InsertImageHandler {
|
|
14
|
-
constructor(editor, onFinish, isPasted = false) {
|
|
14
|
+
constructor(editor, node, onFinish, isPasted = false) {
|
|
15
15
|
this.editor = editor;
|
|
16
|
+
this.node = node;
|
|
17
|
+
|
|
18
|
+
let nodePos;
|
|
19
|
+
|
|
20
|
+
editor.state.doc.descendants((node, pos) => {
|
|
21
|
+
if (node === this.node) {
|
|
22
|
+
nodePos = pos;
|
|
23
|
+
return false
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
this.nodePos = nodePos;
|
|
16
28
|
this.onFinish = onFinish;
|
|
17
29
|
this.isPasted = isPasted;
|
|
18
30
|
this.chosenFile = null;
|
|
@@ -22,13 +34,31 @@ class InsertImageHandler {
|
|
|
22
34
|
log('insert cancelled');
|
|
23
35
|
|
|
24
36
|
try {
|
|
25
|
-
this.
|
|
37
|
+
this.deleteNode();
|
|
26
38
|
this.onFinish(false);
|
|
27
39
|
} catch (err) {
|
|
28
40
|
//
|
|
29
41
|
}
|
|
30
42
|
}
|
|
31
43
|
|
|
44
|
+
updateNode(newAttrs) {
|
|
45
|
+
const { state, view } = this.editor;
|
|
46
|
+
const { tr } = state;
|
|
47
|
+
|
|
48
|
+
const transaction = tr.setNodeMarkup(this.nodePos, undefined, newAttrs);
|
|
49
|
+
|
|
50
|
+
view.dispatch(transaction);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
deleteNode() {
|
|
54
|
+
const { state, view } = this.editor;
|
|
55
|
+
const { tr } = state;
|
|
56
|
+
|
|
57
|
+
const transaction = tr.delete(this.nodePos, this.nodePos + this.node.nodeSize);
|
|
58
|
+
|
|
59
|
+
view.dispatch(transaction);
|
|
60
|
+
}
|
|
61
|
+
|
|
32
62
|
done(err, src) {
|
|
33
63
|
log('done: err:', err);
|
|
34
64
|
if (err) {
|
|
@@ -36,7 +66,7 @@ class InsertImageHandler {
|
|
|
36
66
|
console.log(err);
|
|
37
67
|
this.onFinish(false);
|
|
38
68
|
} else {
|
|
39
|
-
this.
|
|
69
|
+
this.updateNode({ loaded: true, src, percent: 100 });
|
|
40
70
|
this.onFinish(true);
|
|
41
71
|
}
|
|
42
72
|
}
|
|
@@ -59,14 +89,14 @@ class InsertImageHandler {
|
|
|
59
89
|
reader.onload = () => {
|
|
60
90
|
const dataURL = reader.result;
|
|
61
91
|
|
|
62
|
-
this.
|
|
92
|
+
this.updateNode({ src: dataURL });
|
|
63
93
|
};
|
|
64
94
|
reader.readAsDataURL(file);
|
|
65
95
|
}
|
|
66
96
|
|
|
67
97
|
progress(percent, bytes, total) {
|
|
68
98
|
log('progress: ', percent, bytes, total);
|
|
69
|
-
this.
|
|
99
|
+
this.updateNode({ percent });
|
|
70
100
|
}
|
|
71
101
|
|
|
72
102
|
// Add a getter method to retrieve the chosen file
|
|
@@ -60,7 +60,7 @@ function ImageComponent(props) {
|
|
|
60
60
|
}, [selected]);
|
|
61
61
|
|
|
62
62
|
useEffect(() => {
|
|
63
|
-
options.imageHandling.insertImageRequested(node, (finish) => new InsertImageHandler(editor, finish));
|
|
63
|
+
options.imageHandling.insertImageRequested(node, (finish) => new InsertImageHandler(editor, node, finish));
|
|
64
64
|
applySizeData();
|
|
65
65
|
|
|
66
66
|
const resizeHandle = resizeRef.current;
|