@creative-introvert/tons-of-tests 0.4.0
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/README.md +273 -0
- package/dist/cjs/Classify.js +36 -0
- package/dist/cjs/Classify.js.map +1 -0
- package/dist/cjs/DisplayConfig.js +34 -0
- package/dist/cjs/DisplayConfig.js.map +1 -0
- package/dist/cjs/Error.js +35 -0
- package/dist/cjs/Error.js.map +1 -0
- package/dist/cjs/Show.js +27 -0
- package/dist/cjs/Show.js.map +1 -0
- package/dist/cjs/Test.js +36 -0
- package/dist/cjs/Test.js.map +1 -0
- package/dist/cjs/Test.repository.js +37 -0
- package/dist/cjs/Test.repository.js.map +1 -0
- package/dist/cjs/index.js +51 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/internal/Classify.js +123 -0
- package/dist/cjs/internal/Classify.js.map +1 -0
- package/dist/cjs/internal/DisplayConfig.js +23 -0
- package/dist/cjs/internal/DisplayConfig.js.map +1 -0
- package/dist/cjs/internal/Test.js +178 -0
- package/dist/cjs/internal/Test.js.map +1 -0
- package/dist/cjs/internal/Test.repository.sqlite.js +230 -0
- package/dist/cjs/internal/Test.repository.sqlite.js.map +1 -0
- package/dist/cjs/internal/Test.repository.sqlite.spec.js +96 -0
- package/dist/cjs/internal/Test.repository.sqlite.spec.js.map +1 -0
- package/dist/cjs/internal/common.js +70 -0
- package/dist/cjs/internal/common.js.map +1 -0
- package/dist/cjs/internal/diff.js +86 -0
- package/dist/cjs/internal/diff.js.map +1 -0
- package/dist/cjs/internal/format-diff.js +162 -0
- package/dist/cjs/internal/format-diff.js.map +1 -0
- package/dist/cjs/internal/format-diff.spec.js +102 -0
- package/dist/cjs/internal/format-diff.spec.js.map +1 -0
- package/dist/cjs/internal/lib/Schema.js +39 -0
- package/dist/cjs/internal/lib/Schema.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/clone.js +35 -0
- package/dist/cjs/internal/lib/jsondiffpatch/clone.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/contexts/context.js +47 -0
- package/dist/cjs/internal/lib/jsondiffpatch/contexts/context.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/contexts/diff.js +42 -0
- package/dist/cjs/internal/lib/jsondiffpatch/contexts/diff.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/contexts/patch.js +26 -0
- package/dist/cjs/internal/lib/jsondiffpatch/contexts/patch.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/contexts/reverse.js +25 -0
- package/dist/cjs/internal/lib/jsondiffpatch/contexts/reverse.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/date-reviver.js +18 -0
- package/dist/cjs/internal/lib/jsondiffpatch/date-reviver.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/diffpatcher.js +76 -0
- package/dist/cjs/internal/lib/jsondiffpatch/diffpatcher.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/filters/arrays.js +388 -0
- package/dist/cjs/internal/lib/jsondiffpatch/filters/arrays.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/filters/dates.js +24 -0
- package/dist/cjs/internal/lib/jsondiffpatch/filters/dates.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/filters/lcs.js +78 -0
- package/dist/cjs/internal/lib/jsondiffpatch/filters/lcs.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/filters/nested.js +157 -0
- package/dist/cjs/internal/lib/jsondiffpatch/filters/nested.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/filters/texts.js +123 -0
- package/dist/cjs/internal/lib/jsondiffpatch/filters/texts.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/filters/trivial.js +108 -0
- package/dist/cjs/internal/lib/jsondiffpatch/filters/trivial.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/formatters/annotated.js +169 -0
- package/dist/cjs/internal/lib/jsondiffpatch/formatters/annotated.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/formatters/base.js +198 -0
- package/dist/cjs/internal/lib/jsondiffpatch/formatters/base.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/formatters/html.js +243 -0
- package/dist/cjs/internal/lib/jsondiffpatch/formatters/html.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/formatters/jsonpatch.js +178 -0
- package/dist/cjs/internal/lib/jsondiffpatch/formatters/jsonpatch.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/index.js +65 -0
- package/dist/cjs/internal/lib/jsondiffpatch/index.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/pipe.js +110 -0
- package/dist/cjs/internal/lib/jsondiffpatch/pipe.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/processor.js +71 -0
- package/dist/cjs/internal/lib/jsondiffpatch/processor.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/types.js +6 -0
- package/dist/cjs/internal/lib/jsondiffpatch/types.js.map +1 -0
- package/dist/cjs/internal/lib/jsondiffpatch/with-text-diffs.js +92 -0
- package/dist/cjs/internal/lib/jsondiffpatch/with-text-diffs.js.map +1 -0
- package/dist/cjs/internal/pack.js +81 -0
- package/dist/cjs/internal/pack.js.map +1 -0
- package/dist/cjs/internal/stats.js +144 -0
- package/dist/cjs/internal/stats.js.map +1 -0
- package/dist/cjs/internal/summarize.js +173 -0
- package/dist/cjs/internal/summarize.js.map +1 -0
- package/dist/cjs/pack.js +33 -0
- package/dist/cjs/pack.js.map +1 -0
- package/dist/cjs/prelude.js +95 -0
- package/dist/cjs/prelude.js.map +1 -0
- package/dist/dts/Classify.d.ts +20 -0
- package/dist/dts/Classify.d.ts.map +1 -0
- package/dist/dts/DisplayConfig.d.ts +19 -0
- package/dist/dts/DisplayConfig.d.ts.map +1 -0
- package/dist/dts/Error.d.ts +10 -0
- package/dist/dts/Error.d.ts.map +1 -0
- package/dist/dts/Show.d.ts +37 -0
- package/dist/dts/Show.d.ts.map +1 -0
- package/dist/dts/Test.d.ts +48 -0
- package/dist/dts/Test.d.ts.map +1 -0
- package/dist/dts/Test.repository.d.ts +40 -0
- package/dist/dts/Test.repository.d.ts.map +1 -0
- package/dist/dts/index.d.ts +8 -0
- package/dist/dts/index.d.ts.map +1 -0
- package/dist/dts/internal/Classify.d.ts +34 -0
- package/dist/dts/internal/Classify.d.ts.map +1 -0
- package/dist/dts/internal/DisplayConfig.d.ts +3 -0
- package/dist/dts/internal/DisplayConfig.d.ts.map +1 -0
- package/dist/dts/internal/Test.d.ts +39 -0
- package/dist/dts/internal/Test.d.ts.map +1 -0
- package/dist/dts/internal/Test.repository.sqlite.d.ts +10 -0
- package/dist/dts/internal/Test.repository.sqlite.d.ts.map +1 -0
- package/dist/dts/internal/Test.repository.sqlite.spec.d.ts +2 -0
- package/dist/dts/internal/Test.repository.sqlite.spec.d.ts.map +1 -0
- package/dist/dts/internal/common.d.ts +11 -0
- package/dist/dts/internal/common.d.ts.map +1 -0
- package/dist/dts/internal/diff.d.ts +9 -0
- package/dist/dts/internal/diff.d.ts.map +1 -0
- package/dist/dts/internal/format-diff.d.ts +3 -0
- package/dist/dts/internal/format-diff.d.ts.map +1 -0
- package/dist/dts/internal/format-diff.spec.d.ts +2 -0
- package/dist/dts/internal/format-diff.spec.d.ts.map +1 -0
- package/dist/dts/internal/lib/Schema.d.ts +4 -0
- package/dist/dts/internal/lib/Schema.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/clone.d.ts +2 -0
- package/dist/dts/internal/lib/jsondiffpatch/clone.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/contexts/context.d.ts +18 -0
- package/dist/dts/internal/lib/jsondiffpatch/contexts/context.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/contexts/diff.d.ts +15 -0
- package/dist/dts/internal/lib/jsondiffpatch/contexts/diff.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/contexts/patch.d.ts +11 -0
- package/dist/dts/internal/lib/jsondiffpatch/contexts/patch.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/contexts/reverse.d.ts +11 -0
- package/dist/dts/internal/lib/jsondiffpatch/contexts/reverse.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/date-reviver.d.ts +2 -0
- package/dist/dts/internal/lib/jsondiffpatch/date-reviver.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/diffpatcher.d.ts +14 -0
- package/dist/dts/internal/lib/jsondiffpatch/diffpatcher.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/filters/arrays.d.ts +16 -0
- package/dist/dts/internal/lib/jsondiffpatch/filters/arrays.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/filters/dates.d.ts +4 -0
- package/dist/dts/internal/lib/jsondiffpatch/filters/dates.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/filters/lcs.d.ts +11 -0
- package/dist/dts/internal/lib/jsondiffpatch/filters/lcs.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/filters/nested.d.ts +11 -0
- package/dist/dts/internal/lib/jsondiffpatch/filters/nested.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/filters/texts.d.ts +8 -0
- package/dist/dts/internal/lib/jsondiffpatch/filters/texts.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/filters/trivial.d.ts +8 -0
- package/dist/dts/internal/lib/jsondiffpatch/filters/trivial.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/formatters/annotated.d.ts +30 -0
- package/dist/dts/internal/lib/jsondiffpatch/formatters/annotated.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/formatters/base.d.ts +60 -0
- package/dist/dts/internal/lib/jsondiffpatch/formatters/base.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/formatters/html.d.ts +28 -0
- package/dist/dts/internal/lib/jsondiffpatch/formatters/html.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/formatters/jsonpatch.d.ts +62 -0
- package/dist/dts/internal/lib/jsondiffpatch/formatters/jsonpatch.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/index.d.ts +17 -0
- package/dist/dts/internal/lib/jsondiffpatch/index.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/pipe.d.ts +25 -0
- package/dist/dts/internal/lib/jsondiffpatch/pipe.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/processor.d.ts +20 -0
- package/dist/dts/internal/lib/jsondiffpatch/processor.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/types.d.ts +36 -0
- package/dist/dts/internal/lib/jsondiffpatch/types.d.ts.map +1 -0
- package/dist/dts/internal/lib/jsondiffpatch/with-text-diffs.d.ts +19 -0
- package/dist/dts/internal/lib/jsondiffpatch/with-text-diffs.d.ts.map +1 -0
- package/dist/dts/internal/pack.d.ts +2 -0
- package/dist/dts/internal/pack.d.ts.map +1 -0
- package/dist/dts/internal/stats.d.ts +9 -0
- package/dist/dts/internal/stats.d.ts.map +1 -0
- package/dist/dts/internal/summarize.d.ts +11 -0
- package/dist/dts/internal/summarize.d.ts.map +1 -0
- package/dist/dts/pack.d.ts +2 -0
- package/dist/dts/pack.d.ts.map +1 -0
- package/dist/dts/prelude.d.ts +24 -0
- package/dist/dts/prelude.d.ts.map +1 -0
- package/dist/esm/Classify.js +13 -0
- package/dist/esm/Classify.js.map +1 -0
- package/dist/esm/DisplayConfig.js +11 -0
- package/dist/esm/DisplayConfig.js.map +1 -0
- package/dist/esm/Error.js +12 -0
- package/dist/esm/Error.js.map +1 -0
- package/dist/esm/Show.js +27 -0
- package/dist/esm/Show.js.map +1 -0
- package/dist/esm/Test.js +13 -0
- package/dist/esm/Test.js.map +1 -0
- package/dist/esm/Test.repository.js +14 -0
- package/dist/esm/Test.repository.js.map +1 -0
- package/dist/esm/index.js +28 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/internal/Classify.js +100 -0
- package/dist/esm/internal/Classify.js.map +1 -0
- package/dist/esm/internal/DisplayConfig.js +23 -0
- package/dist/esm/internal/DisplayConfig.js.map +1 -0
- package/dist/esm/internal/Test.js +155 -0
- package/dist/esm/internal/Test.js.map +1 -0
- package/dist/esm/internal/Test.repository.sqlite.js +207 -0
- package/dist/esm/internal/Test.repository.sqlite.js.map +1 -0
- package/dist/esm/internal/Test.repository.sqlite.spec.js +73 -0
- package/dist/esm/internal/Test.repository.sqlite.spec.js.map +1 -0
- package/dist/esm/internal/common.js +66 -0
- package/dist/esm/internal/common.js.map +1 -0
- package/dist/esm/internal/diff.js +82 -0
- package/dist/esm/internal/diff.js.map +1 -0
- package/dist/esm/internal/format-diff.js +158 -0
- package/dist/esm/internal/format-diff.js.map +1 -0
- package/dist/esm/internal/format-diff.spec.js +79 -0
- package/dist/esm/internal/format-diff.spec.js.map +1 -0
- package/dist/esm/internal/lib/Schema.js +16 -0
- package/dist/esm/internal/lib/Schema.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/clone.js +35 -0
- package/dist/esm/internal/lib/jsondiffpatch/clone.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/contexts/context.js +47 -0
- package/dist/esm/internal/lib/jsondiffpatch/contexts/context.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/contexts/diff.js +38 -0
- package/dist/esm/internal/lib/jsondiffpatch/contexts/diff.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/contexts/patch.js +22 -0
- package/dist/esm/internal/lib/jsondiffpatch/contexts/patch.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/contexts/reverse.js +21 -0
- package/dist/esm/internal/lib/jsondiffpatch/contexts/reverse.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/date-reviver.js +18 -0
- package/dist/esm/internal/lib/jsondiffpatch/date-reviver.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/diffpatcher.js +49 -0
- package/dist/esm/internal/lib/jsondiffpatch/diffpatcher.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/filters/arrays.js +384 -0
- package/dist/esm/internal/lib/jsondiffpatch/filters/arrays.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/filters/dates.js +24 -0
- package/dist/esm/internal/lib/jsondiffpatch/filters/dates.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/filters/lcs.js +78 -0
- package/dist/esm/internal/lib/jsondiffpatch/filters/lcs.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/filters/nested.js +153 -0
- package/dist/esm/internal/lib/jsondiffpatch/filters/nested.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/filters/texts.js +123 -0
- package/dist/esm/internal/lib/jsondiffpatch/filters/texts.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/filters/trivial.js +108 -0
- package/dist/esm/internal/lib/jsondiffpatch/filters/trivial.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/formatters/annotated.js +165 -0
- package/dist/esm/internal/lib/jsondiffpatch/formatters/annotated.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/formatters/base.js +198 -0
- package/dist/esm/internal/lib/jsondiffpatch/formatters/base.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/formatters/html.js +239 -0
- package/dist/esm/internal/lib/jsondiffpatch/formatters/html.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/formatters/jsonpatch.js +174 -0
- package/dist/esm/internal/lib/jsondiffpatch/formatters/jsonpatch.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/index.js +61 -0
- package/dist/esm/internal/lib/jsondiffpatch/index.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/pipe.js +110 -0
- package/dist/esm/internal/lib/jsondiffpatch/pipe.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/processor.js +71 -0
- package/dist/esm/internal/lib/jsondiffpatch/processor.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/types.js +6 -0
- package/dist/esm/internal/lib/jsondiffpatch/types.js.map +1 -0
- package/dist/esm/internal/lib/jsondiffpatch/with-text-diffs.js +88 -0
- package/dist/esm/internal/lib/jsondiffpatch/with-text-diffs.js.map +1 -0
- package/dist/esm/internal/pack.js +58 -0
- package/dist/esm/internal/pack.js.map +1 -0
- package/dist/esm/internal/stats.js +117 -0
- package/dist/esm/internal/stats.js.map +1 -0
- package/dist/esm/internal/summarize.js +146 -0
- package/dist/esm/internal/summarize.js.map +1 -0
- package/dist/esm/pack.js +10 -0
- package/dist/esm/pack.js.map +1 -0
- package/dist/esm/prelude.js +72 -0
- package/dist/esm/prelude.js.map +1 -0
- package/package.json +45 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diffpatcher.js","names":["_processor","_interopRequireDefault","require","_pipe","_diff","_patch","_reverse","_clone","trivial","_interopRequireWildcard","nested","arrays","dates","texts","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","obj","DiffPatcher","processor","constructor","options","Processor","pipe","Pipe","append","collectChildrenDiffFilter","diffFilter","objectsDiffFilter","shouldHaveResult","collectChildrenPatchFilter","patchFilter","collectChildrenReverseFilter","reverseFilter","diff","left","right","process","DiffContext","patch","delta","PatchContext","reverse","ReverseContext","unpatch","clone","value","_default","exports"],"sources":["../../../../../src/internal/lib/jsondiffpatch/diffpatcher.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,384 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.reverseFilter = exports.patchFilter = exports.diffFilter = exports.collectChildrenReverseFilter = exports.collectChildrenPatchFilter = void 0;
|
|
7
|
+
var _diff = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("../contexts/diff.js"));
|
|
8
|
+
var _patch = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("../contexts/patch.js"));
|
|
9
|
+
var _reverse = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("../contexts/reverse.js"));
|
|
10
|
+
var _lcs = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("./lcs.js"));
|
|
11
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
|
+
const ARRAY_MOVE = 3;
|
|
13
|
+
function arraysHaveMatchByRef(array1, array2, len1, len2) {
|
|
14
|
+
for (let index1 = 0; index1 < len1; index1++) {
|
|
15
|
+
const val1 = array1[index1];
|
|
16
|
+
for (let index2 = 0; index2 < len2; index2++) {
|
|
17
|
+
const val2 = array2[index2];
|
|
18
|
+
if (index1 !== index2 && val1 === val2) {
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
function matchItems(array1, array2, index1, index2, context) {
|
|
25
|
+
const value1 = array1[index1];
|
|
26
|
+
const value2 = array2[index2];
|
|
27
|
+
if (value1 === value2) {
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
if (typeof value1 !== 'object' || typeof value2 !== 'object') {
|
|
31
|
+
return false;
|
|
32
|
+
}
|
|
33
|
+
const objectHash = context.objectHash;
|
|
34
|
+
if (!objectHash) {
|
|
35
|
+
// no way to match objects was provided, try match by position
|
|
36
|
+
return context.matchByPosition && index1 === index2;
|
|
37
|
+
}
|
|
38
|
+
context.hashCache1 = context.hashCache1 || [];
|
|
39
|
+
let hash1 = context.hashCache1[index1];
|
|
40
|
+
if (typeof hash1 === 'undefined') {
|
|
41
|
+
context.hashCache1[index1] = hash1 = objectHash(value1, index1);
|
|
42
|
+
}
|
|
43
|
+
if (typeof hash1 === 'undefined') {
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
context.hashCache2 = context.hashCache2 || [];
|
|
47
|
+
let hash2 = context.hashCache2[index2];
|
|
48
|
+
if (typeof hash2 === 'undefined') {
|
|
49
|
+
context.hashCache2[index2] = hash2 = objectHash(value2, index2);
|
|
50
|
+
}
|
|
51
|
+
if (typeof hash2 === 'undefined') {
|
|
52
|
+
return false;
|
|
53
|
+
}
|
|
54
|
+
return hash1 === hash2;
|
|
55
|
+
}
|
|
56
|
+
const diffFilter = exports.diffFilter = function arraysDiffFilter(context) {
|
|
57
|
+
if (!context.leftIsArray) {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
const matchContext = {
|
|
61
|
+
objectHash: context.options && context.options.objectHash,
|
|
62
|
+
matchByPosition: context.options && context.options.matchByPosition
|
|
63
|
+
};
|
|
64
|
+
let commonHead = 0;
|
|
65
|
+
let commonTail = 0;
|
|
66
|
+
let index;
|
|
67
|
+
let index1;
|
|
68
|
+
let index2;
|
|
69
|
+
const array1 = context.left;
|
|
70
|
+
const array2 = context.right;
|
|
71
|
+
const len1 = array1.length;
|
|
72
|
+
const len2 = array2.length;
|
|
73
|
+
let child;
|
|
74
|
+
if (len1 > 0 && len2 > 0 && !matchContext.objectHash && typeof matchContext.matchByPosition !== 'boolean') {
|
|
75
|
+
matchContext.matchByPosition = !arraysHaveMatchByRef(array1, array2, len1, len2);
|
|
76
|
+
}
|
|
77
|
+
// separate common head
|
|
78
|
+
while (commonHead < len1 && commonHead < len2 && matchItems(array1, array2, commonHead, commonHead, matchContext)) {
|
|
79
|
+
index = commonHead;
|
|
80
|
+
child = new _diff.default(array1[index], array2[index]);
|
|
81
|
+
context.push(child, index);
|
|
82
|
+
commonHead++;
|
|
83
|
+
}
|
|
84
|
+
// separate common tail
|
|
85
|
+
while (commonTail + commonHead < len1 && commonTail + commonHead < len2 && matchItems(array1, array2, len1 - 1 - commonTail, len2 - 1 - commonTail, matchContext)) {
|
|
86
|
+
index1 = len1 - 1 - commonTail;
|
|
87
|
+
index2 = len2 - 1 - commonTail;
|
|
88
|
+
child = new _diff.default(array1[index1], array2[index2]);
|
|
89
|
+
context.push(child, index2);
|
|
90
|
+
commonTail++;
|
|
91
|
+
}
|
|
92
|
+
let result;
|
|
93
|
+
if (commonHead + commonTail === len1) {
|
|
94
|
+
if (len1 === len2) {
|
|
95
|
+
// arrays are identical
|
|
96
|
+
context.setResult(undefined).exit();
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
// trivial case, a block (1 or more consecutive items) was added
|
|
100
|
+
result = result || {
|
|
101
|
+
_t: 'a'
|
|
102
|
+
};
|
|
103
|
+
for (index = commonHead; index < len2 - commonTail; index++) {
|
|
104
|
+
result[index] = [array2[index]];
|
|
105
|
+
}
|
|
106
|
+
context.setResult(result).exit();
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
if (commonHead + commonTail === len2) {
|
|
110
|
+
// trivial case, a block (1 or more consecutive items) was removed
|
|
111
|
+
result = result || {
|
|
112
|
+
_t: 'a'
|
|
113
|
+
};
|
|
114
|
+
for (index = commonHead; index < len1 - commonTail; index++) {
|
|
115
|
+
result[`_${index}`] = [array1[index], 0, 0];
|
|
116
|
+
}
|
|
117
|
+
context.setResult(result).exit();
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
// reset hash cache
|
|
121
|
+
delete matchContext.hashCache1;
|
|
122
|
+
delete matchContext.hashCache2;
|
|
123
|
+
// diff is not trivial, find the LCS (Longest Common Subsequence)
|
|
124
|
+
const trimmed1 = array1.slice(commonHead, len1 - commonTail);
|
|
125
|
+
const trimmed2 = array2.slice(commonHead, len2 - commonTail);
|
|
126
|
+
const seq = _lcs.default.get(trimmed1, trimmed2, matchItems, matchContext);
|
|
127
|
+
const removedItems = [];
|
|
128
|
+
result = result || {
|
|
129
|
+
_t: 'a'
|
|
130
|
+
};
|
|
131
|
+
for (index = commonHead; index < len1 - commonTail; index++) {
|
|
132
|
+
if (seq.indices1.indexOf(index - commonHead) < 0) {
|
|
133
|
+
// removed
|
|
134
|
+
result[`_${index}`] = [array1[index], 0, 0];
|
|
135
|
+
removedItems.push(index);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
let detectMove = true;
|
|
139
|
+
if (context.options && context.options.arrays && context.options.arrays.detectMove === false) {
|
|
140
|
+
detectMove = false;
|
|
141
|
+
}
|
|
142
|
+
let includeValueOnMove = false;
|
|
143
|
+
if (context.options && context.options.arrays && context.options.arrays.includeValueOnMove) {
|
|
144
|
+
includeValueOnMove = true;
|
|
145
|
+
}
|
|
146
|
+
const removedItemsLength = removedItems.length;
|
|
147
|
+
for (index = commonHead; index < len2 - commonTail; index++) {
|
|
148
|
+
const indexOnArray2 = seq.indices2.indexOf(index - commonHead);
|
|
149
|
+
if (indexOnArray2 < 0) {
|
|
150
|
+
// added, try to match with a removed item and register as position move
|
|
151
|
+
let isMove = false;
|
|
152
|
+
if (detectMove && removedItemsLength > 0) {
|
|
153
|
+
for (let removeItemIndex1 = 0; removeItemIndex1 < removedItemsLength; removeItemIndex1++) {
|
|
154
|
+
index1 = removedItems[removeItemIndex1];
|
|
155
|
+
if (matchItems(trimmed1, trimmed2, index1 - commonHead, index - commonHead, matchContext)) {
|
|
156
|
+
// store position move as: [originalValue, newPosition, ARRAY_MOVE]
|
|
157
|
+
result[`_${index1}`].splice(1, 2, index, ARRAY_MOVE);
|
|
158
|
+
if (!includeValueOnMove) {
|
|
159
|
+
// don't include moved value on diff, to save bytes
|
|
160
|
+
result[`_${index1}`][0] = '';
|
|
161
|
+
}
|
|
162
|
+
index2 = index;
|
|
163
|
+
child = new _diff.default(array1[index1], array2[index2]);
|
|
164
|
+
context.push(child, index2);
|
|
165
|
+
removedItems.splice(removeItemIndex1, 1);
|
|
166
|
+
isMove = true;
|
|
167
|
+
break;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
if (!isMove) {
|
|
172
|
+
// added
|
|
173
|
+
result[index] = [array2[index]];
|
|
174
|
+
}
|
|
175
|
+
} else {
|
|
176
|
+
// match, do inner diff
|
|
177
|
+
index1 = seq.indices1[indexOnArray2] + commonHead;
|
|
178
|
+
index2 = seq.indices2[indexOnArray2] + commonHead;
|
|
179
|
+
child = new _diff.default(array1[index1], array2[index2]);
|
|
180
|
+
context.push(child, index2);
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
context.setResult(result).exit();
|
|
184
|
+
};
|
|
185
|
+
diffFilter.filterName = 'arrays';
|
|
186
|
+
const compare = {
|
|
187
|
+
numerically(a, b) {
|
|
188
|
+
return a - b;
|
|
189
|
+
},
|
|
190
|
+
numericallyBy(name) {
|
|
191
|
+
return (a, b) => a[name] - b[name];
|
|
192
|
+
}
|
|
193
|
+
};
|
|
194
|
+
const patchFilter = exports.patchFilter = function nestedPatchFilter(context) {
|
|
195
|
+
if (!context.nested) {
|
|
196
|
+
return;
|
|
197
|
+
}
|
|
198
|
+
const nestedDelta = context.delta;
|
|
199
|
+
if (nestedDelta._t !== 'a') {
|
|
200
|
+
return;
|
|
201
|
+
}
|
|
202
|
+
let index;
|
|
203
|
+
let index1;
|
|
204
|
+
const delta = nestedDelta;
|
|
205
|
+
const array = context.left;
|
|
206
|
+
// first, separate removals, insertions and modifications
|
|
207
|
+
let toRemove = [];
|
|
208
|
+
let toInsert = [];
|
|
209
|
+
const toModify = [];
|
|
210
|
+
for (index in delta) {
|
|
211
|
+
if (index !== '_t') {
|
|
212
|
+
if (index[0] === '_') {
|
|
213
|
+
const removedOrMovedIndex = index;
|
|
214
|
+
// removed item from original array
|
|
215
|
+
if (delta[removedOrMovedIndex][2] === 0 || delta[removedOrMovedIndex][2] === ARRAY_MOVE) {
|
|
216
|
+
toRemove.push(parseInt(index.slice(1), 10));
|
|
217
|
+
} else {
|
|
218
|
+
throw new Error('only removal or move can be applied at original array indices,' + ` invalid diff type: ${delta[removedOrMovedIndex][2]}`);
|
|
219
|
+
}
|
|
220
|
+
} else {
|
|
221
|
+
const numberIndex = index;
|
|
222
|
+
if (delta[numberIndex].length === 1) {
|
|
223
|
+
// added item at new array
|
|
224
|
+
toInsert.push({
|
|
225
|
+
index: parseInt(numberIndex, 10),
|
|
226
|
+
value: delta[numberIndex][0]
|
|
227
|
+
});
|
|
228
|
+
} else {
|
|
229
|
+
// modified item at new array
|
|
230
|
+
toModify.push({
|
|
231
|
+
index: parseInt(numberIndex, 10),
|
|
232
|
+
delta: delta[numberIndex]
|
|
233
|
+
});
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
// remove items, in reverse order to avoid sawing our own floor
|
|
239
|
+
toRemove = toRemove.sort(compare.numerically);
|
|
240
|
+
for (index = toRemove.length - 1; index >= 0; index--) {
|
|
241
|
+
index1 = toRemove[index];
|
|
242
|
+
const indexDiff = delta[`_${index1}`];
|
|
243
|
+
const removedValue = array.splice(index1, 1)[0];
|
|
244
|
+
if (indexDiff[2] === ARRAY_MOVE) {
|
|
245
|
+
// reinsert later
|
|
246
|
+
toInsert.push({
|
|
247
|
+
index: indexDiff[1],
|
|
248
|
+
value: removedValue
|
|
249
|
+
});
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
// insert items, in reverse order to avoid moving our own floor
|
|
253
|
+
toInsert = toInsert.sort(compare.numericallyBy('index'));
|
|
254
|
+
const toInsertLength = toInsert.length;
|
|
255
|
+
for (index = 0; index < toInsertLength; index++) {
|
|
256
|
+
const insertion = toInsert[index];
|
|
257
|
+
array.splice(insertion.index, 0, insertion.value);
|
|
258
|
+
}
|
|
259
|
+
// apply modifications
|
|
260
|
+
const toModifyLength = toModify.length;
|
|
261
|
+
let child;
|
|
262
|
+
if (toModifyLength > 0) {
|
|
263
|
+
for (index = 0; index < toModifyLength; index++) {
|
|
264
|
+
const modification = toModify[index];
|
|
265
|
+
child = new _patch.default(array[modification.index], modification.delta);
|
|
266
|
+
context.push(child, modification.index);
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
if (!context.children) {
|
|
270
|
+
context.setResult(array).exit();
|
|
271
|
+
return;
|
|
272
|
+
}
|
|
273
|
+
context.exit();
|
|
274
|
+
};
|
|
275
|
+
patchFilter.filterName = 'arrays';
|
|
276
|
+
const collectChildrenPatchFilter = exports.collectChildrenPatchFilter = function collectChildrenPatchFilter(context) {
|
|
277
|
+
if (!context || !context.children) {
|
|
278
|
+
return;
|
|
279
|
+
}
|
|
280
|
+
const deltaWithChildren = context.delta;
|
|
281
|
+
if (deltaWithChildren._t !== 'a') {
|
|
282
|
+
return;
|
|
283
|
+
}
|
|
284
|
+
const array = context.left;
|
|
285
|
+
const length = context.children.length;
|
|
286
|
+
let child;
|
|
287
|
+
for (let index = 0; index < length; index++) {
|
|
288
|
+
child = context.children[index];
|
|
289
|
+
const arrayIndex = child.childName;
|
|
290
|
+
array[arrayIndex] = child.result;
|
|
291
|
+
}
|
|
292
|
+
context.setResult(array).exit();
|
|
293
|
+
};
|
|
294
|
+
collectChildrenPatchFilter.filterName = 'arraysCollectChildren';
|
|
295
|
+
const reverseFilter = exports.reverseFilter = function arraysReverseFilter(context) {
|
|
296
|
+
if (!context.nested) {
|
|
297
|
+
const nonNestedDelta = context.delta;
|
|
298
|
+
if (nonNestedDelta[2] === ARRAY_MOVE) {
|
|
299
|
+
const arrayMoveDelta = nonNestedDelta;
|
|
300
|
+
context.newName = `_${arrayMoveDelta[1]}`;
|
|
301
|
+
context.setResult([arrayMoveDelta[0], parseInt(context.childName.substring(1), 10), ARRAY_MOVE]).exit();
|
|
302
|
+
}
|
|
303
|
+
return;
|
|
304
|
+
}
|
|
305
|
+
const nestedDelta = context.delta;
|
|
306
|
+
if (nestedDelta._t !== 'a') {
|
|
307
|
+
return;
|
|
308
|
+
}
|
|
309
|
+
const arrayDelta = nestedDelta;
|
|
310
|
+
let name;
|
|
311
|
+
let child;
|
|
312
|
+
for (name in arrayDelta) {
|
|
313
|
+
if (name === '_t') {
|
|
314
|
+
continue;
|
|
315
|
+
}
|
|
316
|
+
child = new _reverse.default(arrayDelta[name]);
|
|
317
|
+
context.push(child, name);
|
|
318
|
+
}
|
|
319
|
+
context.exit();
|
|
320
|
+
};
|
|
321
|
+
reverseFilter.filterName = 'arrays';
|
|
322
|
+
const reverseArrayDeltaIndex = (delta, index, itemDelta) => {
|
|
323
|
+
if (typeof index === 'string' && index[0] === '_') {
|
|
324
|
+
return parseInt(index.substring(1), 10);
|
|
325
|
+
} else if (Array.isArray(itemDelta) && itemDelta[2] === 0) {
|
|
326
|
+
return `_${index}`;
|
|
327
|
+
}
|
|
328
|
+
let reverseIndex = +index;
|
|
329
|
+
for (const deltaIndex in delta) {
|
|
330
|
+
const deltaItem = delta[deltaIndex];
|
|
331
|
+
if (Array.isArray(deltaItem)) {
|
|
332
|
+
if (deltaItem[2] === ARRAY_MOVE) {
|
|
333
|
+
const moveFromIndex = parseInt(deltaIndex.substring(1), 10);
|
|
334
|
+
const moveToIndex = deltaItem[1];
|
|
335
|
+
if (moveToIndex === +index) {
|
|
336
|
+
return moveFromIndex;
|
|
337
|
+
}
|
|
338
|
+
if (moveFromIndex <= reverseIndex && moveToIndex > reverseIndex) {
|
|
339
|
+
reverseIndex++;
|
|
340
|
+
} else if (moveFromIndex >= reverseIndex && moveToIndex < reverseIndex) {
|
|
341
|
+
reverseIndex--;
|
|
342
|
+
}
|
|
343
|
+
} else if (deltaItem[2] === 0) {
|
|
344
|
+
const deleteIndex = parseInt(deltaIndex.substring(1), 10);
|
|
345
|
+
if (deleteIndex <= reverseIndex) {
|
|
346
|
+
reverseIndex++;
|
|
347
|
+
}
|
|
348
|
+
} else if (deltaItem.length === 1 && parseInt(deltaIndex, 10) <= reverseIndex) {
|
|
349
|
+
reverseIndex--;
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
return reverseIndex;
|
|
354
|
+
};
|
|
355
|
+
const collectChildrenReverseFilter = context => {
|
|
356
|
+
if (!context || !context.children) {
|
|
357
|
+
return;
|
|
358
|
+
}
|
|
359
|
+
const deltaWithChildren = context.delta;
|
|
360
|
+
if (deltaWithChildren._t !== 'a') {
|
|
361
|
+
return;
|
|
362
|
+
}
|
|
363
|
+
const arrayDelta = deltaWithChildren;
|
|
364
|
+
const length = context.children.length;
|
|
365
|
+
let child;
|
|
366
|
+
const delta = {
|
|
367
|
+
_t: 'a'
|
|
368
|
+
};
|
|
369
|
+
for (let index = 0; index < length; index++) {
|
|
370
|
+
child = context.children[index];
|
|
371
|
+
let name = child.newName;
|
|
372
|
+
if (typeof name === 'undefined') {
|
|
373
|
+
name = reverseArrayDeltaIndex(arrayDelta, child.childName, child.result);
|
|
374
|
+
}
|
|
375
|
+
if (delta[name] !== child.result) {
|
|
376
|
+
// There's no way to type this well.
|
|
377
|
+
delta[name] = child.result;
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
context.setResult(delta).exit();
|
|
381
|
+
};
|
|
382
|
+
exports.collectChildrenReverseFilter = collectChildrenReverseFilter;
|
|
383
|
+
collectChildrenReverseFilter.filterName = 'arraysCollectChildren';
|
|
384
|
+
//# sourceMappingURL=arrays.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"arrays.js","names":["_diff","_interopRequireDefault","require","_patch","_reverse","_lcs","obj","__esModule","default","ARRAY_MOVE","arraysHaveMatchByRef","array1","array2","len1","len2","index1","val1","index2","val2","matchItems","context","value1","value2","objectHash","matchByPosition","hashCache1","hash1","hashCache2","hash2","diffFilter","exports","arraysDiffFilter","leftIsArray","matchContext","options","commonHead","commonTail","index","left","right","length","child","DiffContext","push","result","setResult","undefined","exit","_t","trimmed1","slice","trimmed2","seq","lcs","get","removedItems","indices1","indexOf","detectMove","arrays","includeValueOnMove","removedItemsLength","indexOnArray2","indices2","isMove","removeItemIndex1","splice","filterName","compare","numerically","a","b","numericallyBy","name","patchFilter","nestedPatchFilter","nested","nestedDelta","delta","array","toRemove","toInsert","toModify","removedOrMovedIndex","parseInt","Error","numberIndex","value","sort","indexDiff","removedValue","toInsertLength","insertion","toModifyLength","modification","PatchContext","children","collectChildrenPatchFilter","deltaWithChildren","arrayIndex","childName","reverseFilter","arraysReverseFilter","nonNestedDelta","arrayMoveDelta","newName","substring","arrayDelta","ReverseContext","reverseArrayDeltaIndex","itemDelta","Array","isArray","reverseIndex","deltaIndex","deltaItem","moveFromIndex","moveToIndex","deleteIndex","collectChildrenReverseFilter"],"sources":["../../../../../../src/internal/lib/jsondiffpatch/filters/arrays.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.diffFilter = void 0;
|
|
7
|
+
const diffFilter = exports.diffFilter = function datesDiffFilter(context) {
|
|
8
|
+
if (context.left instanceof Date) {
|
|
9
|
+
if (context.right instanceof Date) {
|
|
10
|
+
if (context.left.getTime() !== context.right.getTime()) {
|
|
11
|
+
context.setResult([context.left, context.right]);
|
|
12
|
+
} else {
|
|
13
|
+
context.setResult(undefined);
|
|
14
|
+
}
|
|
15
|
+
} else {
|
|
16
|
+
context.setResult([context.left, context.right]);
|
|
17
|
+
}
|
|
18
|
+
context.exit();
|
|
19
|
+
} else if (context.right instanceof Date) {
|
|
20
|
+
context.setResult([context.left, context.right]).exit();
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
diffFilter.filterName = 'dates';
|
|
24
|
+
//# sourceMappingURL=dates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dates.js","names":["diffFilter","exports","datesDiffFilter","context","left","Date","right","getTime","setResult","undefined","exit","filterName"],"sources":["../../../../../../src/internal/lib/jsondiffpatch/filters/dates.ts"],"sourcesContent":[null],"mappings":";;;;;;AAGO,MAAMA,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAwB,SAASE,eAAeA,CACrEC,OAAO;EAEP,IAAIA,OAAO,CAACC,IAAI,YAAYC,IAAI,EAAE;IAChC,IAAIF,OAAO,CAACG,KAAK,YAAYD,IAAI,EAAE;MACjC,IAAIF,OAAO,CAACC,IAAI,CAACG,OAAO,EAAE,KAAKJ,OAAO,CAACG,KAAK,CAACC,OAAO,EAAE,EAAE;QACtDJ,OAAO,CAACK,SAAS,CAAC,CAACL,OAAO,CAACC,IAAI,EAAED,OAAO,CAACG,KAAK,CAAC,CAAC;MAClD,CAAC,MAAM;QACLH,OAAO,CAACK,SAAS,CAACC,SAAS,CAAC;MAC9B;IACF,CAAC,MAAM;MACLN,OAAO,CAACK,SAAS,CAAC,CAACL,OAAO,CAACC,IAAI,EAAED,OAAO,CAACG,KAAK,CAAC,CAAC;IAClD;IACAH,OAAO,CAACO,IAAI,EAAE;EAChB,CAAC,MAAM,IAAIP,OAAO,CAACG,KAAK,YAAYD,IAAI,EAAE;IACxCF,OAAO,CAACK,SAAS,CAAC,CAACL,OAAO,CAACC,IAAI,EAAED,OAAO,CAACG,KAAK,CAAC,CAAC,CAACI,IAAI,EAAE;EACzD;AACF,CAAC;AACDV,UAAU,CAACW,UAAU,GAAG,OAAO","ignoreList":[]}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
/*
|
|
8
|
+
|
|
9
|
+
LCS implementation that supports arrays or strings
|
|
10
|
+
|
|
11
|
+
reference: http://en.wikipedia.org/wiki/Longest_common_subsequence_problem
|
|
12
|
+
|
|
13
|
+
*/
|
|
14
|
+
const defaultMatch = function (array1, array2, index1, index2) {
|
|
15
|
+
return array1[index1] === array2[index2];
|
|
16
|
+
};
|
|
17
|
+
const lengthMatrix = function (array1, array2, match, context) {
|
|
18
|
+
const len1 = array1.length;
|
|
19
|
+
const len2 = array2.length;
|
|
20
|
+
let x, y;
|
|
21
|
+
// initialize empty matrix of len1+1 x len2+1
|
|
22
|
+
const matrix = new Array(len1 + 1);
|
|
23
|
+
for (x = 0; x < len1 + 1; x++) {
|
|
24
|
+
matrix[x] = new Array(len2 + 1);
|
|
25
|
+
for (y = 0; y < len2 + 1; y++) {
|
|
26
|
+
matrix[x][y] = 0;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
matrix.match = match;
|
|
30
|
+
// save sequence lengths for each coordinate
|
|
31
|
+
for (x = 1; x < len1 + 1; x++) {
|
|
32
|
+
for (y = 1; y < len2 + 1; y++) {
|
|
33
|
+
if (match(array1, array2, x - 1, y - 1, context)) {
|
|
34
|
+
matrix[x][y] = matrix[x - 1][y - 1] + 1;
|
|
35
|
+
} else {
|
|
36
|
+
matrix[x][y] = Math.max(matrix[x - 1][y], matrix[x][y - 1]);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return matrix;
|
|
41
|
+
};
|
|
42
|
+
const backtrack = function (matrix, array1, array2, context) {
|
|
43
|
+
let index1 = array1.length;
|
|
44
|
+
let index2 = array2.length;
|
|
45
|
+
const subsequence = {
|
|
46
|
+
sequence: [],
|
|
47
|
+
indices1: [],
|
|
48
|
+
indices2: []
|
|
49
|
+
};
|
|
50
|
+
while (index1 !== 0 && index2 !== 0) {
|
|
51
|
+
const sameLetter = matrix.match(array1, array2, index1 - 1, index2 - 1, context);
|
|
52
|
+
if (sameLetter) {
|
|
53
|
+
subsequence.sequence.unshift(array1[index1 - 1]);
|
|
54
|
+
subsequence.indices1.unshift(index1 - 1);
|
|
55
|
+
subsequence.indices2.unshift(index2 - 1);
|
|
56
|
+
--index1;
|
|
57
|
+
--index2;
|
|
58
|
+
} else {
|
|
59
|
+
const valueAtMatrixAbove = matrix[index1][index2 - 1];
|
|
60
|
+
const valueAtMatrixLeft = matrix[index1 - 1][index2];
|
|
61
|
+
if (valueAtMatrixAbove > valueAtMatrixLeft) {
|
|
62
|
+
--index2;
|
|
63
|
+
} else {
|
|
64
|
+
--index1;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return subsequence;
|
|
69
|
+
};
|
|
70
|
+
const get = function (array1, array2, match, context) {
|
|
71
|
+
const innerContext = context || {};
|
|
72
|
+
const matrix = lengthMatrix(array1, array2, match || defaultMatch, innerContext);
|
|
73
|
+
return backtrack(matrix, array1, array2, innerContext);
|
|
74
|
+
};
|
|
75
|
+
var _default = exports.default = {
|
|
76
|
+
get
|
|
77
|
+
};
|
|
78
|
+
//# sourceMappingURL=lcs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lcs.js","names":["defaultMatch","array1","array2","index1","index2","lengthMatrix","match","context","len1","length","len2","x","y","matrix","Array","Math","max","backtrack","subsequence","sequence","indices1","indices2","sameLetter","unshift","valueAtMatrixAbove","valueAtMatrixLeft","get","innerContext","_default","exports","default"],"sources":["../../../../../../src/internal/lib/jsondiffpatch/filters/lcs.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|