decidim 0.27.3 → 0.27.4
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of decidim might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/Rakefile +16 -2
- data/babel.config.json +1 -4
- data/lib/decidim/release_manager.rb.new +43 -0
- data/lib/decidim/version.rb +1 -1
- data/package-lock.json +343 -255
- data/packages/browserslist-config/package.json +1 -1
- data/packages/core/node_modules/diff/CONTRIBUTING.md +39 -0
- data/packages/core/node_modules/diff/LICENSE +31 -0
- data/packages/core/node_modules/diff/README.md +211 -0
- data/packages/core/node_modules/diff/dist/diff.js +1627 -0
- data/packages/core/node_modules/diff/dist/diff.min.js +38 -0
- data/packages/core/node_modules/diff/lib/convert/dmp.js +32 -0
- data/packages/core/node_modules/diff/lib/convert/xml.js +42 -0
- data/packages/core/node_modules/diff/lib/diff/array.js +45 -0
- data/packages/core/node_modules/diff/lib/diff/base.js +307 -0
- data/packages/core/node_modules/diff/lib/diff/character.js +37 -0
- data/packages/core/node_modules/diff/lib/diff/css.js +41 -0
- data/packages/core/node_modules/diff/lib/diff/json.js +163 -0
- data/packages/core/node_modules/diff/lib/diff/line.js +89 -0
- data/packages/core/node_modules/diff/lib/diff/sentence.js +41 -0
- data/packages/core/node_modules/diff/lib/diff/word.js +108 -0
- data/packages/core/node_modules/diff/lib/index.es6.js +1561 -0
- data/packages/core/node_modules/diff/lib/index.js +216 -0
- data/packages/core/node_modules/diff/lib/index.mjs +1561 -0
- data/packages/core/node_modules/diff/lib/patch/apply.js +238 -0
- data/packages/core/node_modules/diff/lib/patch/create.js +272 -0
- data/packages/core/node_modules/diff/lib/patch/merge.js +613 -0
- data/packages/core/node_modules/diff/lib/patch/parse.js +167 -0
- data/packages/core/node_modules/diff/lib/util/array.js +32 -0
- data/packages/core/node_modules/diff/lib/util/distance-iterator.js +57 -0
- data/packages/core/node_modules/diff/lib/util/params.js +24 -0
- data/packages/core/node_modules/diff/package.json +87 -0
- data/packages/core/node_modules/diff/release-notes.md +309 -0
- data/packages/core/node_modules/diff/runtime.js +3 -0
- data/packages/core/package-lock.json +4889 -0
- data/packages/core/package.json +1 -1
- data/packages/dev/package.json +1 -1
- data/packages/elections/package.json +1 -1
- data/packages/eslint-config/package.json +1 -1
- data/packages/stylelint-config/package.json +1 -1
- data/packages/webpacker/node_modules/argparse/CHANGELOG.md +216 -0
- data/packages/webpacker/node_modules/argparse/LICENSE +254 -0
- data/packages/webpacker/node_modules/argparse/README.md +84 -0
- data/packages/webpacker/node_modules/argparse/argparse.js +3707 -0
- data/packages/webpacker/node_modules/argparse/lib/sub.js +67 -0
- data/packages/webpacker/node_modules/argparse/lib/textwrap.js +440 -0
- data/packages/webpacker/node_modules/argparse/package.json +31 -0
- data/packages/{core/node_modules/uuid/LICENSE.md → webpacker/node_modules/brace-expansion/LICENSE} +2 -2
- data/packages/webpacker/node_modules/brace-expansion/README.md +135 -0
- data/packages/webpacker/node_modules/brace-expansion/index.js +203 -0
- data/packages/webpacker/node_modules/brace-expansion/package.json +46 -0
- data/packages/webpacker/node_modules/glob/LICENSE +15 -0
- data/packages/webpacker/node_modules/glob/README.md +1214 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/package.json +4 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/bin.d.ts +3 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/bin.d.ts.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/bin.js +270 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/bin.js.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/glob.d.ts +344 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/glob.d.ts.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/glob.js +238 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/glob.js.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/has-magic.d.ts +14 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/has-magic.d.ts.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/has-magic.js +27 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/has-magic.js.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/ignore.d.ts +20 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/ignore.d.ts.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/ignore.js +103 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/ignore.js.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/index.d.ts +95 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/index.d.ts.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/index.js +68 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/index.js.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/pattern.d.ts +77 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/pattern.d.ts.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/pattern.js +219 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/pattern.js.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/processor.d.ts +59 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/processor.d.ts.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/processor.js +309 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/processor.js.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/walker.d.ts +96 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/walker.d.ts.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/walker.js +358 -0
- data/packages/webpacker/node_modules/glob/dist/cjs/src/walker.js.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/glob.d.ts +344 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/glob.d.ts.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/glob.js +234 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/glob.js.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/has-magic.d.ts +14 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/has-magic.d.ts.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/has-magic.js +23 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/has-magic.js.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/ignore.d.ts +20 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/ignore.d.ts.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/ignore.js +99 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/ignore.js.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/index.d.ts +95 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/index.d.ts.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/index.js +56 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/index.js.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/package.json +4 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/pattern.d.ts +77 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/pattern.d.ts.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/pattern.js +215 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/pattern.js.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/processor.d.ts +59 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/processor.d.ts.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/processor.js +302 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/processor.js.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/walker.d.ts +96 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/walker.d.ts.map +1 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/walker.js +352 -0
- data/packages/webpacker/node_modules/glob/dist/mjs/walker.js.map +1 -0
- data/packages/webpacker/node_modules/glob/package.json +98 -0
- data/packages/webpacker/node_modules/js-yaml/CHANGELOG.md +616 -0
- data/packages/webpacker/node_modules/js-yaml/LICENSE +21 -0
- data/packages/webpacker/node_modules/js-yaml/README.md +246 -0
- data/packages/webpacker/node_modules/js-yaml/bin/js-yaml.js +126 -0
- data/packages/webpacker/node_modules/js-yaml/dist/js-yaml.js +3874 -0
- data/packages/webpacker/node_modules/js-yaml/dist/js-yaml.min.js +2 -0
- data/packages/webpacker/node_modules/js-yaml/dist/js-yaml.mjs +3851 -0
- data/packages/webpacker/node_modules/js-yaml/index.js +47 -0
- data/packages/webpacker/node_modules/js-yaml/lib/common.js +59 -0
- data/packages/webpacker/node_modules/js-yaml/lib/dumper.js +965 -0
- data/packages/webpacker/node_modules/js-yaml/lib/exception.js +55 -0
- data/packages/webpacker/node_modules/js-yaml/lib/loader.js +1727 -0
- data/packages/webpacker/node_modules/js-yaml/lib/schema/core.js +11 -0
- data/packages/webpacker/node_modules/js-yaml/lib/schema/default.js +22 -0
- data/packages/webpacker/node_modules/js-yaml/lib/schema/failsafe.js +17 -0
- data/packages/webpacker/node_modules/js-yaml/lib/schema/json.js +19 -0
- data/packages/webpacker/node_modules/js-yaml/lib/schema.js +121 -0
- data/packages/webpacker/node_modules/js-yaml/lib/snippet.js +101 -0
- data/packages/webpacker/node_modules/js-yaml/lib/type/binary.js +125 -0
- data/packages/webpacker/node_modules/js-yaml/lib/type/bool.js +35 -0
- data/packages/webpacker/node_modules/js-yaml/lib/type/float.js +97 -0
- data/packages/webpacker/node_modules/js-yaml/lib/type/int.js +156 -0
- data/packages/webpacker/node_modules/js-yaml/lib/type/map.js +8 -0
- data/packages/webpacker/node_modules/js-yaml/lib/type/merge.js +12 -0
- data/packages/webpacker/node_modules/js-yaml/lib/type/null.js +35 -0
- data/packages/webpacker/node_modules/js-yaml/lib/type/omap.js +44 -0
- data/packages/webpacker/node_modules/js-yaml/lib/type/pairs.js +53 -0
- data/packages/webpacker/node_modules/js-yaml/lib/type/seq.js +8 -0
- data/packages/webpacker/node_modules/js-yaml/lib/type/set.js +29 -0
- data/packages/webpacker/node_modules/js-yaml/lib/type/str.js +8 -0
- data/packages/webpacker/node_modules/js-yaml/lib/type/timestamp.js +88 -0
- data/packages/webpacker/node_modules/js-yaml/lib/type.js +66 -0
- data/packages/webpacker/node_modules/js-yaml/package.json +66 -0
- data/packages/webpacker/node_modules/minimatch/LICENSE +15 -0
- data/packages/webpacker/node_modules/minimatch/README.md +454 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/assert-valid-pattern.d.ts +2 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/assert-valid-pattern.d.ts.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/assert-valid-pattern.js +14 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/assert-valid-pattern.js.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/ast.d.ts +19 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/ast.d.ts.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/ast.js +589 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/ast.js.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/brace-expressions.d.ts +8 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/brace-expressions.d.ts.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/brace-expressions.js +152 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/brace-expressions.js.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/escape.d.ts +12 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/escape.d.ts.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/escape.js +22 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/escape.js.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/index.d.ts +94 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/index.d.ts.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/index.js +1011 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/index.js.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/package.json +3 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/unescape.d.ts +17 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/unescape.d.ts.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/unescape.js +24 -0
- data/packages/webpacker/node_modules/minimatch/dist/cjs/unescape.js.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/assert-valid-pattern.d.ts +2 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/assert-valid-pattern.d.ts.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/assert-valid-pattern.js +10 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/assert-valid-pattern.js.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/ast.d.ts +19 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/ast.d.ts.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/ast.js +585 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/ast.js.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/brace-expressions.d.ts +8 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/brace-expressions.d.ts.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/brace-expressions.js +148 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/brace-expressions.js.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/escape.d.ts +12 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/escape.d.ts.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/escape.js +18 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/escape.js.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/index.d.ts +94 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/index.d.ts.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/index.js +995 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/index.js.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/package.json +3 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/unescape.d.ts +17 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/unescape.d.ts.map +1 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/unescape.js +20 -0
- data/packages/webpacker/node_modules/minimatch/dist/mjs/unescape.js.map +1 -0
- data/packages/webpacker/node_modules/minimatch/package.json +86 -0
- data/packages/webpacker/package.json +2 -2
- metadata +237 -64
- data/packages/core/node_modules/uuid/AUTHORS +0 -5
- data/packages/core/node_modules/uuid/CHANGELOG.md +0 -119
- data/packages/core/node_modules/uuid/README.md +0 -276
- data/packages/core/node_modules/uuid/bin/uuid +0 -65
- data/packages/core/node_modules/uuid/index.js +0 -8
- data/packages/core/node_modules/uuid/lib/bytesToUuid.js +0 -26
- data/packages/core/node_modules/uuid/lib/md5-browser.js +0 -216
- data/packages/core/node_modules/uuid/lib/md5.js +0 -25
- data/packages/core/node_modules/uuid/lib/rng-browser.js +0 -34
- data/packages/core/node_modules/uuid/lib/rng.js +0 -8
- data/packages/core/node_modules/uuid/lib/sha1-browser.js +0 -89
- data/packages/core/node_modules/uuid/lib/sha1.js +0 -25
- data/packages/core/node_modules/uuid/lib/v35.js +0 -57
- data/packages/core/node_modules/uuid/package.json +0 -49
- data/packages/core/node_modules/uuid/v1.js +0 -109
- data/packages/core/node_modules/uuid/v3.js +0 -4
- data/packages/core/node_modules/uuid/v4.js +0 -29
- data/packages/core/node_modules/uuid/v5.js +0 -3
@@ -0,0 +1,163 @@
|
|
1
|
+
/*istanbul ignore start*/
|
2
|
+
"use strict";
|
3
|
+
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
5
|
+
value: true
|
6
|
+
});
|
7
|
+
exports.diffJson = diffJson;
|
8
|
+
exports.canonicalize = canonicalize;
|
9
|
+
exports.jsonDiff = void 0;
|
10
|
+
|
11
|
+
/*istanbul ignore end*/
|
12
|
+
var
|
13
|
+
/*istanbul ignore start*/
|
14
|
+
_base = _interopRequireDefault(require("./base"))
|
15
|
+
/*istanbul ignore end*/
|
16
|
+
;
|
17
|
+
|
18
|
+
var
|
19
|
+
/*istanbul ignore start*/
|
20
|
+
_line = require("./line")
|
21
|
+
/*istanbul ignore end*/
|
22
|
+
;
|
23
|
+
|
24
|
+
/*istanbul ignore start*/ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
25
|
+
|
26
|
+
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
27
|
+
|
28
|
+
/*istanbul ignore end*/
|
29
|
+
var objectPrototypeToString = Object.prototype.toString;
|
30
|
+
var jsonDiff = new
|
31
|
+
/*istanbul ignore start*/
|
32
|
+
_base
|
33
|
+
/*istanbul ignore end*/
|
34
|
+
[
|
35
|
+
/*istanbul ignore start*/
|
36
|
+
"default"
|
37
|
+
/*istanbul ignore end*/
|
38
|
+
](); // Discriminate between two lines of pretty-printed, serialized JSON where one of them has a
|
39
|
+
// dangling comma and the other doesn't. Turns out including the dangling comma yields the nicest output:
|
40
|
+
|
41
|
+
/*istanbul ignore start*/
|
42
|
+
exports.jsonDiff = jsonDiff;
|
43
|
+
|
44
|
+
/*istanbul ignore end*/
|
45
|
+
jsonDiff.useLongestToken = true;
|
46
|
+
jsonDiff.tokenize =
|
47
|
+
/*istanbul ignore start*/
|
48
|
+
_line
|
49
|
+
/*istanbul ignore end*/
|
50
|
+
.
|
51
|
+
/*istanbul ignore start*/
|
52
|
+
lineDiff
|
53
|
+
/*istanbul ignore end*/
|
54
|
+
.tokenize;
|
55
|
+
|
56
|
+
jsonDiff.castInput = function (value) {
|
57
|
+
/*istanbul ignore start*/
|
58
|
+
var _this$options =
|
59
|
+
/*istanbul ignore end*/
|
60
|
+
this.options,
|
61
|
+
undefinedReplacement = _this$options.undefinedReplacement,
|
62
|
+
_this$options$stringi = _this$options.stringifyReplacer,
|
63
|
+
stringifyReplacer = _this$options$stringi === void 0 ? function (k, v)
|
64
|
+
/*istanbul ignore start*/
|
65
|
+
{
|
66
|
+
return (
|
67
|
+
/*istanbul ignore end*/
|
68
|
+
typeof v === 'undefined' ? undefinedReplacement : v
|
69
|
+
);
|
70
|
+
} : _this$options$stringi;
|
71
|
+
return typeof value === 'string' ? value : JSON.stringify(canonicalize(value, null, null, stringifyReplacer), stringifyReplacer, ' ');
|
72
|
+
};
|
73
|
+
|
74
|
+
jsonDiff.equals = function (left, right) {
|
75
|
+
return (
|
76
|
+
/*istanbul ignore start*/
|
77
|
+
_base
|
78
|
+
/*istanbul ignore end*/
|
79
|
+
[
|
80
|
+
/*istanbul ignore start*/
|
81
|
+
"default"
|
82
|
+
/*istanbul ignore end*/
|
83
|
+
].prototype.equals.call(jsonDiff, left.replace(/,([\r\n])/g, '$1'), right.replace(/,([\r\n])/g, '$1'))
|
84
|
+
);
|
85
|
+
};
|
86
|
+
|
87
|
+
function diffJson(oldObj, newObj, options) {
|
88
|
+
return jsonDiff.diff(oldObj, newObj, options);
|
89
|
+
} // This function handles the presence of circular references by bailing out when encountering an
|
90
|
+
// object that is already on the "stack" of items being processed. Accepts an optional replacer
|
91
|
+
|
92
|
+
|
93
|
+
function canonicalize(obj, stack, replacementStack, replacer, key) {
|
94
|
+
stack = stack || [];
|
95
|
+
replacementStack = replacementStack || [];
|
96
|
+
|
97
|
+
if (replacer) {
|
98
|
+
obj = replacer(key, obj);
|
99
|
+
}
|
100
|
+
|
101
|
+
var i;
|
102
|
+
|
103
|
+
for (i = 0; i < stack.length; i += 1) {
|
104
|
+
if (stack[i] === obj) {
|
105
|
+
return replacementStack[i];
|
106
|
+
}
|
107
|
+
}
|
108
|
+
|
109
|
+
var canonicalizedObj;
|
110
|
+
|
111
|
+
if ('[object Array]' === objectPrototypeToString.call(obj)) {
|
112
|
+
stack.push(obj);
|
113
|
+
canonicalizedObj = new Array(obj.length);
|
114
|
+
replacementStack.push(canonicalizedObj);
|
115
|
+
|
116
|
+
for (i = 0; i < obj.length; i += 1) {
|
117
|
+
canonicalizedObj[i] = canonicalize(obj[i], stack, replacementStack, replacer, key);
|
118
|
+
}
|
119
|
+
|
120
|
+
stack.pop();
|
121
|
+
replacementStack.pop();
|
122
|
+
return canonicalizedObj;
|
123
|
+
}
|
124
|
+
|
125
|
+
if (obj && obj.toJSON) {
|
126
|
+
obj = obj.toJSON();
|
127
|
+
}
|
128
|
+
|
129
|
+
if (
|
130
|
+
/*istanbul ignore start*/
|
131
|
+
_typeof(
|
132
|
+
/*istanbul ignore end*/
|
133
|
+
obj) === 'object' && obj !== null) {
|
134
|
+
stack.push(obj);
|
135
|
+
canonicalizedObj = {};
|
136
|
+
replacementStack.push(canonicalizedObj);
|
137
|
+
|
138
|
+
var sortedKeys = [],
|
139
|
+
_key;
|
140
|
+
|
141
|
+
for (_key in obj) {
|
142
|
+
/* istanbul ignore else */
|
143
|
+
if (obj.hasOwnProperty(_key)) {
|
144
|
+
sortedKeys.push(_key);
|
145
|
+
}
|
146
|
+
}
|
147
|
+
|
148
|
+
sortedKeys.sort();
|
149
|
+
|
150
|
+
for (i = 0; i < sortedKeys.length; i += 1) {
|
151
|
+
_key = sortedKeys[i];
|
152
|
+
canonicalizedObj[_key] = canonicalize(obj[_key], stack, replacementStack, replacer, _key);
|
153
|
+
}
|
154
|
+
|
155
|
+
stack.pop();
|
156
|
+
replacementStack.pop();
|
157
|
+
} else {
|
158
|
+
canonicalizedObj = obj;
|
159
|
+
}
|
160
|
+
|
161
|
+
return canonicalizedObj;
|
162
|
+
}
|
163
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaWZmL2pzb24uanMiXSwibmFtZXMiOlsib2JqZWN0UHJvdG90eXBlVG9TdHJpbmciLCJPYmplY3QiLCJwcm90b3R5cGUiLCJ0b1N0cmluZyIsImpzb25EaWZmIiwiRGlmZiIsInVzZUxvbmdlc3RUb2tlbiIsInRva2VuaXplIiwibGluZURpZmYiLCJjYXN0SW5wdXQiLCJ2YWx1ZSIsIm9wdGlvbnMiLCJ1bmRlZmluZWRSZXBsYWNlbWVudCIsInN0cmluZ2lmeVJlcGxhY2VyIiwiayIsInYiLCJKU09OIiwic3RyaW5naWZ5IiwiY2Fub25pY2FsaXplIiwiZXF1YWxzIiwibGVmdCIsInJpZ2h0IiwiY2FsbCIsInJlcGxhY2UiLCJkaWZmSnNvbiIsIm9sZE9iaiIsIm5ld09iaiIsImRpZmYiLCJvYmoiLCJzdGFjayIsInJlcGxhY2VtZW50U3RhY2siLCJyZXBsYWNlciIsImtleSIsImkiLCJsZW5ndGgiLCJjYW5vbmljYWxpemVkT2JqIiwicHVzaCIsIkFycmF5IiwicG9wIiwidG9KU09OIiwic29ydGVkS2V5cyIsImhhc093blByb3BlcnR5Iiwic29ydCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7Ozs7QUFFQSxJQUFNQSx1QkFBdUIsR0FBR0MsTUFBTSxDQUFDQyxTQUFQLENBQWlCQyxRQUFqRDtBQUdPLElBQU1DLFFBQVEsR0FBRztBQUFJQztBQUFBQTtBQUFBQTtBQUFBQTtBQUFBQTtBQUFBQTtBQUFBQTtBQUFBQSxDQUFKLEVBQWpCLEMsQ0FDUDtBQUNBOzs7Ozs7QUFDQUQsUUFBUSxDQUFDRSxlQUFULEdBQTJCLElBQTNCO0FBRUFGLFFBQVEsQ0FBQ0csUUFBVDtBQUFvQkM7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQTtBQUFBLENBQVNELFFBQTdCOztBQUNBSCxRQUFRLENBQUNLLFNBQVQsR0FBcUIsVUFBU0MsS0FB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Z0IsR0FBR1AsR0FBbkI7QUFDRDs7QUFDRCxTQUFPTyxnQkFBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IERpZmYgZnJvbSAnLi9iYXNlJztcbmltcG9ydCB7bGluZURpZmZ9IGZyb20gJy4vbGluZSc7XG5cbmNvbnN0IG9iamVjdFByb3RvdHlwZVRvU3RyaW5nID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZztcblxuXG5leHBvcnQgY29uc3QganNvbkRpZmYgPSBuZXcgRGlmZigpO1xuLy8gRGlzY3JpbWluYXRlIGJldHdlZW4gdHdvIGxpbmVzIG9mIHByZXR0eS1wcmludGVkLCBzZXJpYWxpemVkIEpTT04gd2hlcmUgb25lIG9mIHRoZW0gaGFzIGFcbi8vIGRhbmdsaW5nIGNvbW1hIGFuZCB0aGUgb3RoZXIgZG9lc24ndC4gVHVybnMgb3V0IGluY2x1ZGluZyB0aGUgZGFuZ2xpbmcgY29tbWEgeWllbGRzIHRoZSBuaWNlc3Qgb3V0cHV0OlxuanNvbkRpZmYudXNlTG9uZ2VzdFRva2VuID0gdHJ1ZTtcblxuanNvbkRpZmYudG9rZW5pemUgPSBsaW5lRGlmZi50b2tlbml6ZTtcbmpzb25EaWZmLmNhc3RJbnB1dCA9IGZ1bmN0aW9uKHZhbHVlKSB7XG4gIGNvbnN0IHt1bmRlZmluZWRSZXBsYWNlbWVudCwgc3RyaW5naWZ5UmVwbGFjZXIgPSAoaywgdikgPT4gdHlwZW9mIHYgPT09ICd1bmRlZmluZWQnID8gdW5kZWZpbmVkUmVwbGFjZW1lbnQgOiB2fSA9IHRoaXMub3B0aW9ucztcblxuICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyA/IHZhbHVlIDogSlNPTi5zdHJpbmdpZnkoY2Fub25pY2FsaXplKHZhbHVlLCBudWxsLCBudWxsLCBzdHJpbmdpZnlSZXBsYWNlciksIHN0cmluZ2lmeVJlcGxhY2VyLCAnICAnKTtcbn07XG5qc29uRGlmZi5lcXVhbHMgPSBmdW5jdGlvbihsZWZ0LCByaWdodCkge1xuICByZXR1cm4gRGlmZi5wcm90b3R5cGUuZXF1YWxzLmNhbGwoanNvbkRpZmYsIGxlZnQucmVwbGFjZSgvLChbXFxyXFxuXSkvZywgJyQxJyksIHJpZ2h0LnJlcGxhY2UoLywoW1xcclxcbl0pL2csICckMScpKTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBkaWZmSnNvbihvbGRPYmosIG5ld09iaiwgb3B0aW9ucykgeyByZXR1cm4ganNvbkRpZmYuZGlmZihvbGRPYmosIG5ld09iaiwgb3B0aW9ucyk7IH1cblxuLy8gVGhpcyBmdW5jdGlvbiBoYW5kbGVzIHRoZSBwcmVzZW5jZSBvZiBjaXJjdWxhciByZWZlcmVuY2VzIGJ5IGJhaWxpbmcgb3V0IHdoZW4gZW5jb3VudGVyaW5nIGFuXG4vLyBvYmplY3QgdGhhdCBpcyBhbHJlYWR5IG9uIHRoZSBcInN0YWNrXCIgb2YgaXRlbXMgYmVpbmcgcHJvY2Vzc2VkLiBBY2NlcHRzIGFuIG9wdGlvbmFsIHJlcGxhY2VyXG5leHBvcnQgZnVuY3Rpb24gY2Fub25pY2FsaXplKG9iaiwgc3RhY2ssIHJlcGxhY2VtZW50U3RhY2ssIHJlcGxhY2VyLCBrZXkpIHtcbiAgc3RhY2sgPSBzdGFjayB8fCBbXTtcbiAgcmVwbGFjZW1lbnRTdGFjayA9IHJlcGxhY2VtZW50U3RhY2sgfHwgW107XG5cbiAgaWYgKHJlcGxhY2VyKSB7XG4gICAgb2JqID0gcmVwbGFjZXIoa2V5LCBvYmopO1xuICB9XG5cbiAgbGV0IGk7XG5cbiAgZm9yIChpID0gMDsgaSA8IHN0YWNrLmxlbmd0aDsgaSArPSAxKSB7XG4gICAgaWYgKHN0YWNrW2ldID09PSBvYmopIHtcbiAgICAgIHJldHVybiByZXBsYWNlbWVudFN0YWNrW2ldO1xuICAgIH1cbiAgfVxuXG4gIGxldCBjYW5vbmljYWxpemVkT2JqO1xuXG4gIGlmICgnW29iamVjdCBBcnJheV0nID09PSBvYmplY3RQcm90b3R5cGVUb1N0cmluZy5jYWxsKG9iaikpIHtcbiAgICBzdGFjay5wdXNoKG9iaik7XG4gICAgY2Fub25pY2FsaXplZE9iaiA9IG5ldyBBcnJheShvYmoubGVuZ3RoKTtcbiAgICByZXBsYWNlbWVudFN0YWNrLnB1c2goY2Fub25pY2FsaXplZE9iaik7XG4gICAgZm9yIChpID0gMDsgaSA8IG9iai5sZW5ndGg7IGkgKz0gMSkge1xuICAgICAgY2Fub25pY2FsaXplZE9ialtpXSA9IGNhbm9uaWNhbGl6ZShvYmpbaV0sIHN0YWNrLCByZXBsYWNlbWVudFN0YWNrLCByZXBsYWNlciwga2V5KTtcbiAgICB9XG4gICAgc3RhY2sucG9wKCk7XG4gICAgcmVwbGFjZW1lbnRTdGFjay5wb3AoKTtcbiAgICByZXR1cm4gY2Fub25pY2FsaXplZE9iajtcbiAgfVxuXG4gIGlmIChvYmogJiYgb2JqLnRvSlNPTikge1xuICAgIG9iaiA9IG9iai50b0pTT04oKTtcbiAgfVxuXG4gIGlmICh0eXBlb2Ygb2JqID09PSAnb2JqZWN0JyAmJiBvYmogIT09IG51bGwpIHtcbiAgICBzdGFjay5wdXNoKG9iaik7XG4gICAgY2Fub25pY2FsaXplZE9iaiA9IHt9O1xuICAgIHJlcGxhY2VtZW50U3RhY2sucHVzaChjYW5vbmljYWxpemVkT2JqKTtcbiAgICBsZXQgc29ydGVkS2V5cyA9IFtdLFxuICAgICAgICBrZXk7XG4gICAgZm9yIChrZXkgaW4gb2JqKSB7XG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgaWYgKG9iai5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7XG4gICAgICAgIHNvcnRlZEtleXMucHVzaChrZXkpO1xuICAgICAgfVxuICAgIH1cbiAgICBzb3J0ZWRLZXlzLnNvcnQoKTtcbiAgICBmb3IgKGkgPSAwOyBpIDwgc29ydGVkS2V5cy5sZW5ndGg7IGkgKz0gMSkge1xuICAgICAga2V5ID0gc29ydGVkS2V5c1tpXTtcbiAgICAgIGNhbm9uaWNhbGl6ZWRPYmpba2V5XSA9IGNhbm9uaWNhbGl6ZShvYmpba2V5XSwgc3RhY2ssIHJlcGxhY2VtZW50U3RhY2ssIHJlcGxhY2VyLCBrZXkpO1xuICAgIH1cbiAgICBzdGFjay5wb3AoKTtcbiAgICByZXBsYWNlbWVudFN0YWNrLnBvcCgpO1xuICB9IGVsc2Uge1xuICAgIGNhbm9uaWNhbGl6ZWRPYmogPSBvYmo7XG4gIH1cbiAgcmV0dXJuIGNhbm9uaWNhbGl6ZWRPYmo7XG59XG4iXX0=
|
@@ -0,0 +1,89 @@
|
|
1
|
+
/*istanbul ignore start*/
|
2
|
+
"use strict";
|
3
|
+
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
5
|
+
value: true
|
6
|
+
});
|
7
|
+
exports.diffLines = diffLines;
|
8
|
+
exports.diffTrimmedLines = diffTrimmedLines;
|
9
|
+
exports.lineDiff = void 0;
|
10
|
+
|
11
|
+
/*istanbul ignore end*/
|
12
|
+
var
|
13
|
+
/*istanbul ignore start*/
|
14
|
+
_base = _interopRequireDefault(require("./base"))
|
15
|
+
/*istanbul ignore end*/
|
16
|
+
;
|
17
|
+
|
18
|
+
var
|
19
|
+
/*istanbul ignore start*/
|
20
|
+
_params = require("../util/params")
|
21
|
+
/*istanbul ignore end*/
|
22
|
+
;
|
23
|
+
|
24
|
+
/*istanbul ignore start*/ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
25
|
+
|
26
|
+
/*istanbul ignore end*/
|
27
|
+
var lineDiff = new
|
28
|
+
/*istanbul ignore start*/
|
29
|
+
_base
|
30
|
+
/*istanbul ignore end*/
|
31
|
+
[
|
32
|
+
/*istanbul ignore start*/
|
33
|
+
"default"
|
34
|
+
/*istanbul ignore end*/
|
35
|
+
]();
|
36
|
+
|
37
|
+
/*istanbul ignore start*/
|
38
|
+
exports.lineDiff = lineDiff;
|
39
|
+
|
40
|
+
/*istanbul ignore end*/
|
41
|
+
lineDiff.tokenize = function (value) {
|
42
|
+
var retLines = [],
|
43
|
+
linesAndNewlines = value.split(/(\n|\r\n)/); // Ignore the final empty token that occurs if the string ends with a new line
|
44
|
+
|
45
|
+
if (!linesAndNewlines[linesAndNewlines.length - 1]) {
|
46
|
+
linesAndNewlines.pop();
|
47
|
+
} // Merge the content and line separators into single tokens
|
48
|
+
|
49
|
+
|
50
|
+
for (var i = 0; i < linesAndNewlines.length; i++) {
|
51
|
+
var line = linesAndNewlines[i];
|
52
|
+
|
53
|
+
if (i % 2 && !this.options.newlineIsToken) {
|
54
|
+
retLines[retLines.length - 1] += line;
|
55
|
+
} else {
|
56
|
+
if (this.options.ignoreWhitespace) {
|
57
|
+
line = line.trim();
|
58
|
+
}
|
59
|
+
|
60
|
+
retLines.push(line);
|
61
|
+
}
|
62
|
+
}
|
63
|
+
|
64
|
+
return retLines;
|
65
|
+
};
|
66
|
+
|
67
|
+
function diffLines(oldStr, newStr, callback) {
|
68
|
+
return lineDiff.diff(oldStr, newStr, callback);
|
69
|
+
}
|
70
|
+
|
71
|
+
function diffTrimmedLines(oldStr, newStr, callback) {
|
72
|
+
var options =
|
73
|
+
/*istanbul ignore start*/
|
74
|
+
(0,
|
75
|
+
/*istanbul ignore end*/
|
76
|
+
|
77
|
+
/*istanbul ignore start*/
|
78
|
+
_params
|
79
|
+
/*istanbul ignore end*/
|
80
|
+
.
|
81
|
+
/*istanbul ignore start*/
|
82
|
+
generateOptions)
|
83
|
+
/*istanbul ignore end*/
|
84
|
+
(callback, {
|
85
|
+
ignoreWhitespace: true
|
86
|
+
});
|
87
|
+
return lineDiff.diff(oldStr, newStr, options);
|
88
|
+
}
|
89
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaWZmL2xpbmUuanMiXSwibmFtZXMiOlsibGluZURpZmYiLCJEaWZmIiwidG9rZW5pemUiLCJ2YWx1ZSIsInJldExpbmVzIiwibGluZXNBbmROZXdsaW5lcyIsInNwbGl0IiwibGVuZ3RoIiwicG9wIiwiaSIsImxpbmUiLCJvcHRpb25zIiwibmV3bGluZUlzVG9rZW4iLCJpZ25vcmVXaGl0ZXNwYWNlIiwidHJpbSIsInB1c2giLCJkaWZmTGluZXMiLCJvbGRTdHIiLCJuZXdTdHIiLCJjYWxsYmFjayIsImRpZmYiLCJkaWZmVHJpbW1lZExpbmVzIiwiZ2VuZXJhdGVPcHRpb25zIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTs7Ozs7QUFFTyxJQUFNQSxRQUFRLEdBQUc7QUFBSUM7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUEsQ0FBSixFQUFqQjs7Ozs7O0FBQ1BELFFBQVEsQ0FBQ0UsUUFBVCxHQUFvQixVQUFTQyxLQUFULEVBQWdCO0FBQ2xDLE1BQUlDLFFBQVEsR0FBRyxFQUFmO0FBQUEsTUFDSUMsZ0JBQWdCLEdBQUdGLEtBQUssQ0FBQ0csS0FBTixDQUFZLFdBQVosQ0FEdkIsQ0FEa0MsQ0FJbEM7O0FBQ0EsTUFBSSxDQUFDRCxnQkFBZ0IsQ0FBQ0EsZ0JBQWdCLENBQUNFLE1BQWpCLEdBQTBCLENBQTNCLENBQXJCLEVBQW9EO0FBQ2xERixJQUFBQSxnQkFBZ0IsQ0FBQ0csR0FBakI7QUFDRCxHQVBpQyxDQVNsQzs7O0FBQ0EsT0FBSyxJQUFJQyxDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHSixnQkFBZ0IsQ0FBQ0UsTUFBckMsRUFBNkNFLENBQUMsRUFBOUMsRUFBa0Q7QUFDaEQsUUFBSUMsSUFBSSxHQUFHTCxnQkFBZ0IsQ0FBQ0ksQ0FBRCxDQUEzQjs7QUFFQSxRQUFJQSxDQUFDLEdBQUcsQ0FBSixJQUFTLENBQUMsS0FBS0UsT0FBTCxDQUFhQyxjQUEzQixFQUEyQztBQUN6Q1IsTUFBQUEsUUFBUSxDQUFDQSxRQUFRLENBQUNHLE1BQVQsR0FBa0IsQ0FBbkIsQ0FBUixJQUFpQ0csSUFBakM7QUFDRCxLQUZELE1BRU87QUFDTCxVQUFJLEtBQUtDLE9BQUwsQ0FBYUUsZ0JBQWpCLEVBQW1DO0FBQ2pDSCxRQUFBQSxJQUFJLEdBQUdBLElBQUksQ0FBQ0ksSUFBTCxFQUFQO0FBQ0Q7O0FBQ0RWLE1BQUFBLFFBQVEsQ0FBQ1csSUFBVCxDQUFjTCxJQUFkO0FBQ0Q7QUFDRjs7QUFFRCxTQUFPTixRQUFQO0FBQ0QsQ0F4QkQ7O0FBMEJPLFNBQVNZLFNBQVQsQ0FBbUJDLE1BQW5CLEVBQTJCQyxNQUEzQixFQUFtQ0MsUUFBbkMsRUFBNkM7QUFBRSxTQUFPbkIsUUFBUSxDQUFDb0IsSUFBVCxDQUFjSCxNQUFkLEVBQXNCQyxNQUF0QixFQUE4QkMsUUFBOUIsQ0FBUDtBQUFpRDs7QUFDaEcsU0FBU0UsZ0JBQVQsQ0FBMEJKLE1BQTFCLEVBQWtDQyxNQUFsQyxFQUEwQ0MsUUFBMUMsRUFBb0Q7QUFDekQsTUFBSVIsT0FBTztBQUFHO0FBQUE7QUFBQTs7QUFBQVc7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQTtBQUFBLEdBQWdCSCxRQUFoQixFQUEwQjtBQUFDTixJQUFBQSxnQkFBZ0IsRUFBRTtBQUFuQixHQUExQixDQUFkO0FBQ0EsU0FBT2IsUUFBUSxDQUFDb0IsSUFBVCxDQUFjSCxNQUFkLEVBQXNCQyxNQUF0QixFQUE4QlAsT0FBOUIsQ0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IERpZmYgZnJvbSAnLi9iYXNlJztcbmltcG9ydCB7Z2VuZXJhdGVPcHRpb25zfSBmcm9tICcuLi91dGlsL3BhcmFtcyc7XG5cbmV4cG9ydCBjb25zdCBsaW5lRGlmZiA9IG5ldyBEaWZmKCk7XG5saW5lRGlmZi50b2tlbml6ZSA9IGZ1bmN0aW9uKHZhbHVlKSB7XG4gIGxldCByZXRMaW5lcyA9IFtdLFxuICAgICAgbGluZXNBbmROZXdsaW5lcyA9IHZhbHVlLnNwbGl0KC8oXFxufFxcclxcbikvKTtcblxuICAvLyBJZ25vcmUgdGhlIGZpbmFsIGVtcHR5IHRva2VuIHRoYXQgb2NjdXJzIGlmIHRoZSBzdHJpbmcgZW5kcyB3aXRoIGEgbmV3IGxpbmVcbiAgaWYgKCFsaW5lc0FuZE5ld2xpbmVzW2xpbmVzQW5kTmV3bGluZXMubGVuZ3RoIC0gMV0pIHtcbiAgICBsaW5lc0FuZE5ld2xpbmVzLnBvcCgpO1xuICB9XG5cbiAgLy8gTWVyZ2UgdGhlIGNvbnRlbnQgYW5kIGxpbmUgc2VwYXJhdG9ycyBpbnRvIHNpbmdsZSB0b2tlbnNcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaW5lc0FuZE5ld2xpbmVzLmxlbmd0aDsgaSsrKSB7XG4gICAgbGV0IGxpbmUgPSBsaW5lc0FuZE5ld2xpbmVzW2ldO1xuXG4gICAgaWYgKGkgJSAyICYmICF0aGlzLm9wdGlvbnMubmV3bGluZUlzVG9rZW4pIHtcbiAgICAgIHJldExpbmVzW3JldExpbmVzLmxlbmd0aCAtIDFdICs9IGxpbmU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLm9wdGlvbnMuaWdub3JlV2hpdGVzcGFjZSkge1xuICAgICAgICBsaW5lID0gbGluZS50cmltKCk7XG4gICAgICB9XG4gICAgICByZXRMaW5lcy5wdXNoKGxpbmUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiByZXRMaW5lcztcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBkaWZmTGluZXMob2xkU3RyLCBuZXdTdHIsIGNhbGxiYWNrKSB7IHJldHVybiBsaW5lRGlmZi5kaWZmKG9sZFN0ciwgbmV3U3RyLCBjYWxsYmFjayk7IH1cbmV4cG9ydCBmdW5jdGlvbiBkaWZmVHJpbW1lZExpbmVzKG9sZFN0ciwgbmV3U3RyLCBjYWxsYmFjaykge1xuICBsZXQgb3B0aW9ucyA9IGdlbmVyYXRlT3B0aW9ucyhjYWxsYmFjaywge2lnbm9yZVdoaXRlc3BhY2U6IHRydWV9KTtcbiAgcmV0dXJuIGxpbmVEaWZmLmRpZmYob2xkU3RyLCBuZXdTdHIsIG9wdGlvbnMpO1xufVxuIl19
|
@@ -0,0 +1,41 @@
|
|
1
|
+
/*istanbul ignore start*/
|
2
|
+
"use strict";
|
3
|
+
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
5
|
+
value: true
|
6
|
+
});
|
7
|
+
exports.diffSentences = diffSentences;
|
8
|
+
exports.sentenceDiff = void 0;
|
9
|
+
|
10
|
+
/*istanbul ignore end*/
|
11
|
+
var
|
12
|
+
/*istanbul ignore start*/
|
13
|
+
_base = _interopRequireDefault(require("./base"))
|
14
|
+
/*istanbul ignore end*/
|
15
|
+
;
|
16
|
+
|
17
|
+
/*istanbul ignore start*/ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
18
|
+
|
19
|
+
/*istanbul ignore end*/
|
20
|
+
var sentenceDiff = new
|
21
|
+
/*istanbul ignore start*/
|
22
|
+
_base
|
23
|
+
/*istanbul ignore end*/
|
24
|
+
[
|
25
|
+
/*istanbul ignore start*/
|
26
|
+
"default"
|
27
|
+
/*istanbul ignore end*/
|
28
|
+
]();
|
29
|
+
|
30
|
+
/*istanbul ignore start*/
|
31
|
+
exports.sentenceDiff = sentenceDiff;
|
32
|
+
|
33
|
+
/*istanbul ignore end*/
|
34
|
+
sentenceDiff.tokenize = function (value) {
|
35
|
+
return value.split(/(\S.+?[.!?])(?=\s+|$)/);
|
36
|
+
};
|
37
|
+
|
38
|
+
function diffSentences(oldStr, newStr, callback) {
|
39
|
+
return sentenceDiff.diff(oldStr, newStr, callback);
|
40
|
+
}
|
41
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaWZmL3NlbnRlbmNlLmpzIl0sIm5hbWVzIjpbInNlbnRlbmNlRGlmZiIsIkRpZmYiLCJ0b2tlbml6ZSIsInZhbHVlIiwic3BsaXQiLCJkaWZmU2VudGVuY2VzIiwib2xkU3RyIiwibmV3U3RyIiwiY2FsbGJhY2siLCJkaWZmIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7Ozs7QUFHTyxJQUFNQSxZQUFZLEdBQUc7QUFBSUM7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUEsQ0FBSixFQUFyQjs7Ozs7O0FBQ1BELFlBQVksQ0FBQ0UsUUFBYixHQUF3QixVQUFTQyxLQUFULEVBQWdCO0FBQ3RDLFNBQU9BLEtBQUssQ0FBQ0MsS0FBTixDQUFZLHVCQUFaLENBQVA7QUFDRCxDQUZEOztBQUlPLFNBQVNDLGFBQVQsQ0FBdUJDLE1BQXZCLEVBQStCQyxNQUEvQixFQUF1Q0MsUUFBdkMsRUFBaUQ7QUFBRSxTQUFPUixZQUFZLENBQUNTLElBQWIsQ0FBa0JILE1BQWxCLEVBQTBCQyxNQUExQixFQUFrQ0MsUUFBbEMsQ0FBUDtBQUFxRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBEaWZmIGZyb20gJy4vYmFzZSc7XG5cblxuZXhwb3J0IGNvbnN0IHNlbnRlbmNlRGlmZiA9IG5ldyBEaWZmKCk7XG5zZW50ZW5jZURpZmYudG9rZW5pemUgPSBmdW5jdGlvbih2YWx1ZSkge1xuICByZXR1cm4gdmFsdWUuc3BsaXQoLyhcXFMuKz9bLiE/XSkoPz1cXHMrfCQpLyk7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gZGlmZlNlbnRlbmNlcyhvbGRTdHIsIG5ld1N0ciwgY2FsbGJhY2spIHsgcmV0dXJuIHNlbnRlbmNlRGlmZi5kaWZmKG9sZFN0ciwgbmV3U3RyLCBjYWxsYmFjayk7IH1cbiJdfQ==
|
@@ -0,0 +1,108 @@
|
|
1
|
+
/*istanbul ignore start*/
|
2
|
+
"use strict";
|
3
|
+
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
5
|
+
value: true
|
6
|
+
});
|
7
|
+
exports.diffWords = diffWords;
|
8
|
+
exports.diffWordsWithSpace = diffWordsWithSpace;
|
9
|
+
exports.wordDiff = void 0;
|
10
|
+
|
11
|
+
/*istanbul ignore end*/
|
12
|
+
var
|
13
|
+
/*istanbul ignore start*/
|
14
|
+
_base = _interopRequireDefault(require("./base"))
|
15
|
+
/*istanbul ignore end*/
|
16
|
+
;
|
17
|
+
|
18
|
+
var
|
19
|
+
/*istanbul ignore start*/
|
20
|
+
_params = require("../util/params")
|
21
|
+
/*istanbul ignore end*/
|
22
|
+
;
|
23
|
+
|
24
|
+
/*istanbul ignore start*/ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
25
|
+
|
26
|
+
/*istanbul ignore end*/
|
27
|
+
// Based on https://en.wikipedia.org/wiki/Latin_script_in_Unicode
|
28
|
+
//
|
29
|
+
// Ranges and exceptions:
|
30
|
+
// Latin-1 Supplement, 0080–00FF
|
31
|
+
// - U+00D7 × Multiplication sign
|
32
|
+
// - U+00F7 ÷ Division sign
|
33
|
+
// Latin Extended-A, 0100–017F
|
34
|
+
// Latin Extended-B, 0180–024F
|
35
|
+
// IPA Extensions, 0250–02AF
|
36
|
+
// Spacing Modifier Letters, 02B0–02FF
|
37
|
+
// - U+02C7 ˇ ˇ Caron
|
38
|
+
// - U+02D8 ˘ ˘ Breve
|
39
|
+
// - U+02D9 ˙ ˙ Dot Above
|
40
|
+
// - U+02DA ˚ ˚ Ring Above
|
41
|
+
// - U+02DB ˛ ˛ Ogonek
|
42
|
+
// - U+02DC ˜ ˜ Small Tilde
|
43
|
+
// - U+02DD ˝ ˝ Double Acute Accent
|
44
|
+
// Latin Extended Additional, 1E00–1EFF
|
45
|
+
var extendedWordChars = /^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/;
|
46
|
+
var reWhitespace = /\S/;
|
47
|
+
var wordDiff = new
|
48
|
+
/*istanbul ignore start*/
|
49
|
+
_base
|
50
|
+
/*istanbul ignore end*/
|
51
|
+
[
|
52
|
+
/*istanbul ignore start*/
|
53
|
+
"default"
|
54
|
+
/*istanbul ignore end*/
|
55
|
+
]();
|
56
|
+
|
57
|
+
/*istanbul ignore start*/
|
58
|
+
exports.wordDiff = wordDiff;
|
59
|
+
|
60
|
+
/*istanbul ignore end*/
|
61
|
+
wordDiff.equals = function (left, right) {
|
62
|
+
if (this.options.ignoreCase) {
|
63
|
+
left = left.toLowerCase();
|
64
|
+
right = right.toLowerCase();
|
65
|
+
}
|
66
|
+
|
67
|
+
return left === right || this.options.ignoreWhitespace && !reWhitespace.test(left) && !reWhitespace.test(right);
|
68
|
+
};
|
69
|
+
|
70
|
+
wordDiff.tokenize = function (value) {
|
71
|
+
// All whitespace symbols except newline group into one token, each newline - in separate token
|
72
|
+
var tokens = value.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/); // Join the boundary splits that we do not consider to be boundaries. This is primarily the extended Latin character set.
|
73
|
+
|
74
|
+
for (var i = 0; i < tokens.length - 1; i++) {
|
75
|
+
// If we have an empty string in the next field and we have only word chars before and after, merge
|
76
|
+
if (!tokens[i + 1] && tokens[i + 2] && extendedWordChars.test(tokens[i]) && extendedWordChars.test(tokens[i + 2])) {
|
77
|
+
tokens[i] += tokens[i + 2];
|
78
|
+
tokens.splice(i + 1, 2);
|
79
|
+
i--;
|
80
|
+
}
|
81
|
+
}
|
82
|
+
|
83
|
+
return tokens;
|
84
|
+
};
|
85
|
+
|
86
|
+
function diffWords(oldStr, newStr, options) {
|
87
|
+
options =
|
88
|
+
/*istanbul ignore start*/
|
89
|
+
(0,
|
90
|
+
/*istanbul ignore end*/
|
91
|
+
|
92
|
+
/*istanbul ignore start*/
|
93
|
+
_params
|
94
|
+
/*istanbul ignore end*/
|
95
|
+
.
|
96
|
+
/*istanbul ignore start*/
|
97
|
+
generateOptions)
|
98
|
+
/*istanbul ignore end*/
|
99
|
+
(options, {
|
100
|
+
ignoreWhitespace: true
|
101
|
+
});
|
102
|
+
return wordDiff.diff(oldStr, newStr, options);
|
103
|
+
}
|
104
|
+
|
105
|
+
function diffWordsWithSpace(oldStr, newStr, options) {
|
106
|
+
return wordDiff.diff(oldStr, newStr, options);
|
107
|
+
}
|
108
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaWZmL3dvcmQuanMiXSwibmFtZXMiOlsiZXh0ZW5kZWRXb3JkQ2hhcnMiLCJyZVdoaXRlc3BhY2UiLCJ3b3JkRGlmZiIsIkRpZmYiLCJlcXVhbHMiLCJsZWZ0IiwicmlnaHQiLCJvcHRpb25zIiwiaWdub3JlQ2FzZSIsInRvTG93ZXJDYXNlIiwiaWdub3JlV2hpdGVzcGFjZSIsInRlc3QiLCJ0b2tlbml6ZSIsInZhbHVlIiwidG9rZW5zIiwic3BsaXQiLCJpIiwibGVuZ3RoIiwic3BsaWNlIiwiZGlmZldvcmRzIiwib2xkU3RyIiwibmV3U3RyIiwiZ2VuZXJhdGVPcHRpb25zIiwiZGlmZiIsImRpZmZXb3Jkc1dpdGhTcGFjZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBTUEsaUJBQWlCLEdBQUcsK0RBQTFCO0FBRUEsSUFBTUMsWUFBWSxHQUFHLElBQXJCO0FBRU8sSUFBTUMsUUFBUSxHQUFHO0FBQUlDO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBLENBQUosRUFBakI7Ozs7OztBQUNQRCxRQUFRLENBQUNFLE1BQVQsR0FBa0IsVUFBU0MsSUFBVCxFQUFlQyxLQUFmLEVBQXNCO0FBQ3RDLE1BQUksS0FBS0MsT0FBTCxDQUFhQyxVQUFqQixFQUE2QjtBQUMzQkgsSUFBQUEsSUFBSSxHQUFHQSxJQUFJLENBQUNJLFdBQUwsRUFBUDtBQUNBSCxJQUFBQSxLQUFLLEdBQUdBLEtBQUssQ0FBQ0csV0FBTixFQUFSO0FBQ0Q7O0FBQ0QsU0FBT0osSUFBSSxLQUFLQyxLQUFULElBQW1CLEtBQUtDLE9BQUwsQ0FBYUcsZ0JBQWIsSUFBaUMsQ0FBQ1QsWUFBWSxDQUFDVSxJQUFiLENBQWtCTixJQUFsQixDQUFsQyxJQUE2RCxDQUFDSixZQUFZLENBQUNVLElBQWIsQ0FBa0JMLEtBQWxCLENBQXhGO0FBQ0QsQ0FORDs7QUFPQUosUUFBUSxDQUFDVSxRQUFULEdBQW9CLFVBQVNDLEtBQVQsRUFBZ0I7QUFDbEM7QUFDQSxNQUFJQyxNQUFNLEdBQUdELEtBQUssQ0FBQ0UsS0FBTixDQUFZLGlDQUFaLENBQWIsQ0FGa0MsQ0FJbEM7O0FBQ0EsT0FBSyxJQUFJQyxDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHRixNQUFNLENBQUNHLE1BQVAsR0FBZ0IsQ0FBcEMsRUFBdUNELENBQUMsRUFBeEMsRUFBNEM7QUFDMUM7QUFDQSxRQUFJLENBQUNGLE1BQU0sQ0FBQ0UsQ0FBQyxHQUFHLENBQUwsQ0FBUCxJQUFrQkYsTUFBTSxDQUFDRSxDQUFDLEdBQUcsQ0FBTCxDQUF4QixJQUNLaEIsaUJBQWlCLENBQUNXLElBQWxCLENBQXVCRyxNQUFNLENBQUNFLENBQUQsQ0FBN0IsQ0FETCxJQUVLaEIsaUJBQWlCLENBQUNXLElBQWxCLENBQXVCRyxNQUFNLENBQUNFLENBQUMsR0FBRyxDQUFMLENBQTdCLENBRlQsRUFFZ0Q7QUFDOUNGLE1BQUFBLE1BQU0sQ0FBQ0UsQ0FBRCxDQUFOLElBQWFGLE1BQU0sQ0FBQ0UsQ0FBQyxHQUFHLENBQUwsQ0FBbkI7QUFDQUYsTUFBQUEsTUFBTSxDQUFDSSxNQUFQLENBQWNGLENBQUMsR0FBRyxDQUFsQixFQUFxQixDQUFyQjtBQUNBQSxNQUFBQSxDQUFDO0FBQ0Y7QUFDRjs7QUFFRCxTQUFPRixNQUFQO0FBQ0QsQ0FqQkQ7O0FBbUJPLFNBQVNLLFNBQVQsQ0FBbUJDLE1BQW5CLEVBQTJCQyxNQUEzQixFQUFtQ2QsT0FBbkMsRUFBNEM7QUFDakRBLEVBQUFBLE9BQU87QUFBRztBQUFBO0FBQUE7O0FBQUFlO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUFBO0FBQUE7QUFBQSxHQUFnQmYsT0FBaEIsRUFBeUI7QUFBQ0csSUFBQUEsZ0JBQWdCLEVBQUU7QUFBbkIsR0FBekIsQ0FBVjtBQUNBLFNBQU9SLFFBQVEsQ0FBQ3FCLElBQVQsQ0FBY0gsTUFBZCxFQUFzQkMsTUFBdEIsRUFBOEJkLE9BQTlCLENBQVA7QUFDRDs7QUFFTSxTQUFTaUIsa0JBQVQsQ0FBNEJKLE1BQTVCLEVBQW9DQyxNQUFwQyxFQUE0Q2QsT0FBNUMsRUFBcUQ7QUFDMUQsU0FBT0wsUUFBUSxDQUFDcUIsSUFBVCxDQUFjSCxNQUFkLEVBQXNCQyxNQUF0QixFQUE4QmQsT0FBOUIsQ0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IERpZmYgZnJvbSAnLi9iYXNlJztcbmltcG9ydCB7Z2VuZXJhdGVPcHRpb25zfSBmcm9tICcuLi91dGlsL3BhcmFtcyc7XG5cbi8vIEJhc2VkIG9uIGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0xhdGluX3NjcmlwdF9pbl9Vbmljb2RlXG4vL1xuLy8gUmFuZ2VzIGFuZCBleGNlcHRpb25zOlxuLy8gTGF0aW4tMSBTdXBwbGVtZW50LCAwMDgw4oCTMDBGRlxuLy8gIC0gVSswMEQ3ICDDlyBNdWx0aXBsaWNhdGlvbiBzaWduXG4vLyAgLSBVKzAwRjcgIMO3IERpdmlzaW9uIHNpZ25cbi8vIExhdGluIEV4dGVuZGVkLUEsIDAxMDDigJMwMTdGXG4vLyBMYXRpbiBFeHRlbmRlZC1CLCAwMTgw4oCTMDI0RlxuLy8gSVBBIEV4dGVuc2lvbnMsIDAyNTDigJMwMkFGXG4vLyBTcGFjaW5nIE1vZGlmaWVyIExldHRlcnMsIDAyQjDigJMwMkZGXG4vLyAgLSBVKzAyQzcgIMuHICYjNzExOyAgQ2Fyb25cbi8vICAtIFUrMDJEOCAgy5ggJiM3Mjg7ICBCcmV2ZVxuLy8gIC0gVSswMkQ5ICDLmSAmIzcyOTsgIERvdCBBYm92ZVxuLy8gIC0gVSswMkRBICDLmiAmIzczMDsgIFJpbmcgQWJvdmVcbi8vICAtIFUrMDJEQiAgy5sgJiM3MzE7ICBPZ29uZWtcbi8vICAtIFUrMDJEQyAgy5wgJiM3MzI7ICBTbWFsbCBUaWxkZVxuLy8gIC0gVSswMkREICDLnSAmIzczMzsgIERvdWJsZSBBY3V0ZSBBY2NlbnRcbi8vIExhdGluIEV4dGVuZGVkIEFkZGl0aW9uYWwsIDFFMDDigJMxRUZGXG5jb25zdCBleHRlbmRlZFdvcmRDaGFycyA9IC9eW2EtekEtWlxcdXtDMH0tXFx1e0ZGfVxcdXtEOH0tXFx1e0Y2fVxcdXtGOH0tXFx1ezJDNn1cXHV7MkM4fS1cXHV7MkQ3fVxcdXsyREV9LVxcdXsyRkZ9XFx1ezFFMDB9LVxcdXsxRUZGfV0rJC91O1xuXG5jb25zdCByZVdoaXRlc3BhY2UgPSAvXFxTLztcblxuZXhwb3J0IGNvbnN0IHdvcmREaWZmID0gbmV3IERpZmYoKTtcbndvcmREaWZmLmVxdWFscyA9IGZ1bmN0aW9uKGxlZnQsIHJpZ2h0KSB7XG4gIGlmICh0aGlzLm9wdGlvbnMuaWdub3JlQ2FzZSkge1xuICAgIGxlZnQgPSBsZWZ0LnRvTG93ZXJDYXNlKCk7XG4gICAgcmlnaHQgPSByaWdodC50b0xvd2VyQ2FzZSgpO1xuICB9XG4gIHJldHVybiBsZWZ0ID09PSByaWdodCB8fCAodGhpcy5vcHRpb25zLmlnbm9yZVdoaXRlc3BhY2UgJiYgIXJlV2hpdGVzcGFjZS50ZXN0KGxlZnQpICYmICFyZVdoaXRlc3BhY2UudGVzdChyaWdodCkpO1xufTtcbndvcmREaWZmLnRva2VuaXplID0gZnVuY3Rpb24odmFsdWUpIHtcbiAgLy8gQWxsIHdoaXRlc3BhY2Ugc3ltYm9scyBleGNlcHQgbmV3bGluZSBncm91cCBpbnRvIG9uZSB0b2tlbiwgZWFjaCBuZXdsaW5lIC0gaW4gc2VwYXJhdGUgdG9rZW5cbiAgbGV0IHRva2VucyA9IHZhbHVlLnNwbGl0KC8oW15cXFNcXHJcXG5dK3xbKClbXFxde30nXCJcXHJcXG5dfFxcYikvKTtcblxuICAvLyBKb2luIHRoZSBib3VuZGFyeSBzcGxpdHMgdGhhdCB3ZSBkbyBub3QgY29uc2lkZXIgdG8gYmUgYm91bmRhcmllcy4gVGhpcyBpcyBwcmltYXJpbHkgdGhlIGV4dGVuZGVkIExhdGluIGNoYXJhY3RlciBzZXQuXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgdG9rZW5zLmxlbmd0aCAtIDE7IGkrKykge1xuICAgIC8vIElmIHdlIGhhdmUgYW4gZW1wdHkgc3RyaW5nIGluIHRoZSBuZXh0IGZpZWxkIGFuZCB3ZSBoYXZlIG9ubHkgd29yZCBjaGFycyBiZWZvcmUgYW5kIGFmdGVyLCBtZXJnZVxuICAgIGlmICghdG9rZW5zW2kgKyAxXSAmJiB0b2tlbnNbaSArIDJdXG4gICAgICAgICAgJiYgZXh0ZW5kZWRXb3JkQ2hhcnMudGVzdCh0b2tlbnNbaV0pXG4gICAgICAgICAgJiYgZXh0ZW5kZWRXb3JkQ2hhcnMudGVzdCh0b2tlbnNbaSArIDJdKSkge1xuICAgICAgdG9rZW5zW2ldICs9IHRva2Vuc1tpICsgMl07XG4gICAgICB0b2tlbnMuc3BsaWNlKGkgKyAxLCAyKTtcbiAgICAgIGktLTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdG9rZW5zO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGRpZmZXb3JkcyhvbGRTdHIsIG5ld1N0ciwgb3B0aW9ucykge1xuICBvcHRpb25zID0gZ2VuZXJhdGVPcHRpb25zKG9wdGlvbnMsIHtpZ25vcmVXaGl0ZXNwYWNlOiB0cnVlfSk7XG4gIHJldHVybiB3b3JkRGlmZi5kaWZmKG9sZFN0ciwgbmV3U3RyLCBvcHRpb25zKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRpZmZXb3Jkc1dpdGhTcGFjZShvbGRTdHIsIG5ld1N0ciwgb3B0aW9ucykge1xuICByZXR1cm4gd29yZERpZmYuZGlmZihvbGRTdHIsIG5ld1N0ciwgb3B0aW9ucyk7XG59XG4iXX0=
|