@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,153 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.reverseFilter = exports.patchFilter = exports.objectsDiffFilter = exports.collectChildrenReverseFilter = exports.collectChildrenPatchFilter = exports.collectChildrenDiffFilter = 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
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
const collectChildrenDiffFilter = context => {
|
|
12
|
+
if (!context || !context.children) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
const length = context.children.length;
|
|
16
|
+
let child;
|
|
17
|
+
let result = context.result;
|
|
18
|
+
for (let index = 0; index < length; index++) {
|
|
19
|
+
child = context.children[index];
|
|
20
|
+
if (typeof child.result === 'undefined') {
|
|
21
|
+
continue;
|
|
22
|
+
}
|
|
23
|
+
result = result || {};
|
|
24
|
+
result[child.childName] = child.result;
|
|
25
|
+
}
|
|
26
|
+
if (result && context.leftIsArray) {
|
|
27
|
+
result._t = 'a';
|
|
28
|
+
}
|
|
29
|
+
context.setResult(result).exit();
|
|
30
|
+
};
|
|
31
|
+
exports.collectChildrenDiffFilter = collectChildrenDiffFilter;
|
|
32
|
+
collectChildrenDiffFilter.filterName = 'collectChildren';
|
|
33
|
+
const objectsDiffFilter = context => {
|
|
34
|
+
if (context.leftIsArray || context.leftType !== 'object') {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
const left = context.left;
|
|
38
|
+
const right = context.right;
|
|
39
|
+
let name;
|
|
40
|
+
let child;
|
|
41
|
+
const propertyFilter = context.options.propertyFilter;
|
|
42
|
+
for (name in left) {
|
|
43
|
+
if (!Object.prototype.hasOwnProperty.call(left, name)) {
|
|
44
|
+
continue;
|
|
45
|
+
}
|
|
46
|
+
if (propertyFilter && !propertyFilter(name, context)) {
|
|
47
|
+
continue;
|
|
48
|
+
}
|
|
49
|
+
child = new _diff.default(left[name], right[name]);
|
|
50
|
+
context.push(child, name);
|
|
51
|
+
}
|
|
52
|
+
for (name in right) {
|
|
53
|
+
if (!Object.prototype.hasOwnProperty.call(right, name)) {
|
|
54
|
+
continue;
|
|
55
|
+
}
|
|
56
|
+
if (propertyFilter && !propertyFilter(name, context)) {
|
|
57
|
+
continue;
|
|
58
|
+
}
|
|
59
|
+
if (typeof left[name] === 'undefined') {
|
|
60
|
+
child = new _diff.default(undefined, right[name]);
|
|
61
|
+
context.push(child, name);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
if (!context.children || context.children.length === 0) {
|
|
65
|
+
context.setResult(undefined).exit();
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
context.exit();
|
|
69
|
+
};
|
|
70
|
+
exports.objectsDiffFilter = objectsDiffFilter;
|
|
71
|
+
objectsDiffFilter.filterName = 'objects';
|
|
72
|
+
const patchFilter = exports.patchFilter = function nestedPatchFilter(context) {
|
|
73
|
+
if (!context.nested) {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
const nestedDelta = context.delta;
|
|
77
|
+
if (nestedDelta._t) {
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
const objectDelta = nestedDelta;
|
|
81
|
+
let name;
|
|
82
|
+
let child;
|
|
83
|
+
for (name in objectDelta) {
|
|
84
|
+
child = new _patch.default(context.left[name], objectDelta[name]);
|
|
85
|
+
context.push(child, name);
|
|
86
|
+
}
|
|
87
|
+
context.exit();
|
|
88
|
+
};
|
|
89
|
+
patchFilter.filterName = 'objects';
|
|
90
|
+
const collectChildrenPatchFilter = exports.collectChildrenPatchFilter = function collectChildrenPatchFilter(context) {
|
|
91
|
+
if (!context || !context.children) {
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
const deltaWithChildren = context.delta;
|
|
95
|
+
if (deltaWithChildren._t) {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
const object = context.left;
|
|
99
|
+
const length = context.children.length;
|
|
100
|
+
let child;
|
|
101
|
+
for (let index = 0; index < length; index++) {
|
|
102
|
+
child = context.children[index];
|
|
103
|
+
const property = child.childName;
|
|
104
|
+
if (Object.prototype.hasOwnProperty.call(context.left, property) && child.result === undefined) {
|
|
105
|
+
delete object[property];
|
|
106
|
+
} else if (object[property] !== child.result) {
|
|
107
|
+
object[property] = child.result;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
context.setResult(object).exit();
|
|
111
|
+
};
|
|
112
|
+
collectChildrenPatchFilter.filterName = 'collectChildren';
|
|
113
|
+
const reverseFilter = exports.reverseFilter = function nestedReverseFilter(context) {
|
|
114
|
+
if (!context.nested) {
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
const nestedDelta = context.delta;
|
|
118
|
+
if (nestedDelta._t) {
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
const objectDelta = context.delta;
|
|
122
|
+
let name;
|
|
123
|
+
let child;
|
|
124
|
+
for (name in objectDelta) {
|
|
125
|
+
child = new _reverse.default(objectDelta[name]);
|
|
126
|
+
context.push(child, name);
|
|
127
|
+
}
|
|
128
|
+
context.exit();
|
|
129
|
+
};
|
|
130
|
+
reverseFilter.filterName = 'objects';
|
|
131
|
+
const collectChildrenReverseFilter = context => {
|
|
132
|
+
if (!context || !context.children) {
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
const deltaWithChildren = context.delta;
|
|
136
|
+
if (deltaWithChildren._t) {
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
const length = context.children.length;
|
|
140
|
+
let child;
|
|
141
|
+
const delta = {};
|
|
142
|
+
for (let index = 0; index < length; index++) {
|
|
143
|
+
child = context.children[index];
|
|
144
|
+
const property = child.childName;
|
|
145
|
+
if (delta[property] !== child.result) {
|
|
146
|
+
delta[property] = child.result;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
context.setResult(delta).exit();
|
|
150
|
+
};
|
|
151
|
+
exports.collectChildrenReverseFilter = collectChildrenReverseFilter;
|
|
152
|
+
collectChildrenReverseFilter.filterName = 'collectChildren';
|
|
153
|
+
//# sourceMappingURL=nested.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nested.js","names":["_diff","_interopRequireDefault","require","_patch","_reverse","obj","__esModule","default","collectChildrenDiffFilter","context","children","length","child","result","index","childName","leftIsArray","_t","setResult","exit","exports","filterName","objectsDiffFilter","leftType","left","right","name","propertyFilter","options","Object","prototype","hasOwnProperty","call","DiffContext","push","undefined","patchFilter","nestedPatchFilter","nested","nestedDelta","delta","objectDelta","PatchContext","collectChildrenPatchFilter","deltaWithChildren","object","property","reverseFilter","nestedReverseFilter","ReverseContext","collectChildrenReverseFilter"],"sources":["../../../../../../src/internal/lib/jsondiffpatch/filters/nested.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.reverseFilter = exports.patchFilter = exports.diffFilter = void 0;
|
|
7
|
+
const TEXT_DIFF = 2;
|
|
8
|
+
const DEFAULT_MIN_LENGTH = 60;
|
|
9
|
+
let cachedDiffPatch = null;
|
|
10
|
+
function getDiffMatchPatch(options, required) {
|
|
11
|
+
if (!cachedDiffPatch) {
|
|
12
|
+
let instance;
|
|
13
|
+
if (options?.textDiff?.diffMatchPatch) {
|
|
14
|
+
instance = new options.textDiff.diffMatchPatch();
|
|
15
|
+
} else {
|
|
16
|
+
if (!required) {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
const error = new Error('The diff-match-patch library was not provided. Pass the library in through the options or use the `jsondiffpatch/with-text-diffs` entry-point.');
|
|
20
|
+
// eslint-disable-next-line camelcase
|
|
21
|
+
error.diff_match_patch_not_found = true;
|
|
22
|
+
throw error;
|
|
23
|
+
}
|
|
24
|
+
cachedDiffPatch = {
|
|
25
|
+
diff: function (txt1, txt2) {
|
|
26
|
+
return instance.patch_toText(instance.patch_make(txt1, txt2));
|
|
27
|
+
},
|
|
28
|
+
patch: function (txt1, patch) {
|
|
29
|
+
const results = instance.patch_apply(instance.patch_fromText(patch), txt1);
|
|
30
|
+
for (let i = 0; i < results[1].length; i++) {
|
|
31
|
+
if (!results[1][i]) {
|
|
32
|
+
const error = new Error('text patch failed');
|
|
33
|
+
error.textPatchFailed = true;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
return results[0];
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
return cachedDiffPatch;
|
|
41
|
+
}
|
|
42
|
+
const diffFilter = exports.diffFilter = function textsDiffFilter(context) {
|
|
43
|
+
if (context.leftType !== 'string') {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
const left = context.left;
|
|
47
|
+
const right = context.right;
|
|
48
|
+
const minLength = context.options && context.options.textDiff && context.options.textDiff.minLength || DEFAULT_MIN_LENGTH;
|
|
49
|
+
if (left.length < minLength || right.length < minLength) {
|
|
50
|
+
context.setResult([left, right]).exit();
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
// large text, try to use a text-diff algorithm
|
|
54
|
+
const diffMatchPatch = getDiffMatchPatch(context.options);
|
|
55
|
+
if (!diffMatchPatch) {
|
|
56
|
+
// diff-match-patch library not available,
|
|
57
|
+
// fallback to regular string replace
|
|
58
|
+
context.setResult([left, right]).exit();
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
const diff = diffMatchPatch.diff;
|
|
62
|
+
context.setResult([diff(left, right), 0, TEXT_DIFF]).exit();
|
|
63
|
+
};
|
|
64
|
+
diffFilter.filterName = 'texts';
|
|
65
|
+
const patchFilter = exports.patchFilter = function textsPatchFilter(context) {
|
|
66
|
+
if (context.nested) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
const nonNestedDelta = context.delta;
|
|
70
|
+
if (nonNestedDelta[2] !== TEXT_DIFF) {
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
const textDiffDelta = nonNestedDelta;
|
|
74
|
+
// text-diff, use a text-patch algorithm
|
|
75
|
+
const patch = getDiffMatchPatch(context.options, true).patch;
|
|
76
|
+
context.setResult(patch(context.left, textDiffDelta[0])).exit();
|
|
77
|
+
};
|
|
78
|
+
patchFilter.filterName = 'texts';
|
|
79
|
+
const textDeltaReverse = function (delta) {
|
|
80
|
+
let i;
|
|
81
|
+
let l;
|
|
82
|
+
let line;
|
|
83
|
+
let lineTmp;
|
|
84
|
+
let header = null;
|
|
85
|
+
const headerRegex = /^@@ +-(\d+),(\d+) +\+(\d+),(\d+) +@@$/;
|
|
86
|
+
let lineHeader;
|
|
87
|
+
const lines = delta.split('\n');
|
|
88
|
+
for (i = 0, l = lines.length; i < l; i++) {
|
|
89
|
+
line = lines[i];
|
|
90
|
+
const lineStart = line.slice(0, 1);
|
|
91
|
+
if (lineStart === '@') {
|
|
92
|
+
header = headerRegex.exec(line);
|
|
93
|
+
lineHeader = i;
|
|
94
|
+
// fix header
|
|
95
|
+
lines[lineHeader] = '@@ -' + header[3] + ',' + header[4] + ' +' + header[1] + ',' + header[2] + ' @@';
|
|
96
|
+
} else if (lineStart === '+') {
|
|
97
|
+
lines[i] = '-' + lines[i].slice(1);
|
|
98
|
+
if (lines[i - 1].slice(0, 1) === '+') {
|
|
99
|
+
// swap lines to keep default order (-+)
|
|
100
|
+
lineTmp = lines[i];
|
|
101
|
+
lines[i] = lines[i - 1];
|
|
102
|
+
lines[i - 1] = lineTmp;
|
|
103
|
+
}
|
|
104
|
+
} else if (lineStart === '-') {
|
|
105
|
+
lines[i] = '+' + lines[i].slice(1);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
return lines.join('\n');
|
|
109
|
+
};
|
|
110
|
+
const reverseFilter = exports.reverseFilter = function textsReverseFilter(context) {
|
|
111
|
+
if (context.nested) {
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
const nonNestedDelta = context.delta;
|
|
115
|
+
if (nonNestedDelta[2] !== TEXT_DIFF) {
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
const textDiffDelta = nonNestedDelta;
|
|
119
|
+
// text-diff, use a text-diff algorithm
|
|
120
|
+
context.setResult([textDeltaReverse(textDiffDelta[0]), 0, TEXT_DIFF]).exit();
|
|
121
|
+
};
|
|
122
|
+
reverseFilter.filterName = 'texts';
|
|
123
|
+
//# sourceMappingURL=texts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"texts.js","names":["TEXT_DIFF","DEFAULT_MIN_LENGTH","cachedDiffPatch","getDiffMatchPatch","options","required","instance","textDiff","diffMatchPatch","error","Error","diff_match_patch_not_found","diff","txt1","txt2","patch_toText","patch_make","patch","results","patch_apply","patch_fromText","i","length","textPatchFailed","diffFilter","exports","textsDiffFilter","context","leftType","left","right","minLength","setResult","exit","filterName","patchFilter","textsPatchFilter","nested","nonNestedDelta","delta","textDiffDelta","textDeltaReverse","l","line","lineTmp","header","headerRegex","lineHeader","lines","split","lineStart","slice","exec","join","reverseFilter","textsReverseFilter"],"sources":["../../../../../../src/internal/lib/jsondiffpatch/filters/texts.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.reverseFilter = exports.patchFilter = exports.diffFilter = void 0;
|
|
7
|
+
const diffFilter = exports.diffFilter = function trivialMatchesDiffFilter(context) {
|
|
8
|
+
if (context.left === context.right) {
|
|
9
|
+
context.setResult(undefined).exit();
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
if (typeof context.left === 'undefined') {
|
|
13
|
+
if (typeof context.right === 'function') {
|
|
14
|
+
throw new Error('functions are not supported');
|
|
15
|
+
}
|
|
16
|
+
context.setResult([context.right]).exit();
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
if (typeof context.right === 'undefined') {
|
|
20
|
+
context.setResult([context.left, 0, 0]).exit();
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
if (typeof context.left === 'function' || typeof context.right === 'function') {
|
|
24
|
+
throw new Error('functions are not supported');
|
|
25
|
+
}
|
|
26
|
+
context.leftType = context.left === null ? 'null' : typeof context.left;
|
|
27
|
+
context.rightType = context.right === null ? 'null' : typeof context.right;
|
|
28
|
+
if (context.leftType !== context.rightType) {
|
|
29
|
+
context.setResult([context.left, context.right]).exit();
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
if (context.leftType === 'boolean' || context.leftType === 'number') {
|
|
33
|
+
context.setResult([context.left, context.right]).exit();
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
if (context.leftType === 'object') {
|
|
37
|
+
context.leftIsArray = Array.isArray(context.left);
|
|
38
|
+
}
|
|
39
|
+
if (context.rightType === 'object') {
|
|
40
|
+
context.rightIsArray = Array.isArray(context.right);
|
|
41
|
+
}
|
|
42
|
+
if (context.leftIsArray !== context.rightIsArray) {
|
|
43
|
+
context.setResult([context.left, context.right]).exit();
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
if (context.left instanceof RegExp) {
|
|
47
|
+
if (context.right instanceof RegExp) {
|
|
48
|
+
context.setResult([context.left.toString(), context.right.toString()]).exit();
|
|
49
|
+
} else {
|
|
50
|
+
context.setResult([context.left, context.right]).exit();
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
diffFilter.filterName = 'trivial';
|
|
55
|
+
const patchFilter = exports.patchFilter = function trivialMatchesPatchFilter(context) {
|
|
56
|
+
if (typeof context.delta === 'undefined') {
|
|
57
|
+
context.setResult(context.left).exit();
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
context.nested = !Array.isArray(context.delta);
|
|
61
|
+
if (context.nested) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
const nonNestedDelta = context.delta;
|
|
65
|
+
if (nonNestedDelta.length === 1) {
|
|
66
|
+
context.setResult(nonNestedDelta[0]).exit();
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
if (nonNestedDelta.length === 2) {
|
|
70
|
+
if (context.left instanceof RegExp) {
|
|
71
|
+
const regexArgs = /^\/(.*)\/([gimyu]+)$/.exec(nonNestedDelta[1]);
|
|
72
|
+
if (regexArgs) {
|
|
73
|
+
context.setResult(new RegExp(regexArgs[1], regexArgs[2])).exit();
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
context.setResult(nonNestedDelta[1]).exit();
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
if (nonNestedDelta.length === 3 && nonNestedDelta[2] === 0) {
|
|
81
|
+
context.setResult(undefined).exit();
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
patchFilter.filterName = 'trivial';
|
|
85
|
+
const reverseFilter = exports.reverseFilter = function trivialReferseFilter(context) {
|
|
86
|
+
if (typeof context.delta === 'undefined') {
|
|
87
|
+
context.setResult(context.delta).exit();
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
context.nested = !Array.isArray(context.delta);
|
|
91
|
+
if (context.nested) {
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
const nonNestedDelta = context.delta;
|
|
95
|
+
if (nonNestedDelta.length === 1) {
|
|
96
|
+
context.setResult([nonNestedDelta[0], 0, 0]).exit();
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
if (nonNestedDelta.length === 2) {
|
|
100
|
+
context.setResult([nonNestedDelta[1], nonNestedDelta[0]]).exit();
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
if (nonNestedDelta.length === 3 && nonNestedDelta[2] === 0) {
|
|
104
|
+
context.setResult([nonNestedDelta[0]]).exit();
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
reverseFilter.filterName = 'trivial';
|
|
108
|
+
//# sourceMappingURL=trivial.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trivial.js","names":["diffFilter","exports","trivialMatchesDiffFilter","context","left","right","setResult","undefined","exit","Error","leftType","rightType","leftIsArray","Array","isArray","rightIsArray","RegExp","toString","filterName","patchFilter","trivialMatchesPatchFilter","delta","nested","nonNestedDelta","length","regexArgs","exec","reverseFilter","trivialReferseFilter"],"sources":["../../../../../../src/internal/lib/jsondiffpatch/filters/trivial.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
exports.format = format;
|
|
8
|
+
var _base = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("./base.js"));
|
|
9
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
+
class AnnotatedFormatter extends _base.default {
|
|
11
|
+
constructor() {
|
|
12
|
+
super();
|
|
13
|
+
this.includeMoveDestinations = false;
|
|
14
|
+
}
|
|
15
|
+
prepareContext(context) {
|
|
16
|
+
super.prepareContext(context);
|
|
17
|
+
context.indent = function (levels) {
|
|
18
|
+
this.indentLevel = (this.indentLevel || 0) + (typeof levels === 'undefined' ? 1 : levels);
|
|
19
|
+
this.indentPad = new Array(this.indentLevel + 1).join(' ');
|
|
20
|
+
};
|
|
21
|
+
context.row = (json, htmlNote) => {
|
|
22
|
+
context.out('<tr><td style="white-space: nowrap;">' + '<pre class="jsondiffpatch-annotated-indent"' + ' style="display: inline-block">');
|
|
23
|
+
if (context.indentPad != null) context.out(context.indentPad);
|
|
24
|
+
context.out('</pre><pre style="display: inline-block">');
|
|
25
|
+
context.out(json);
|
|
26
|
+
context.out('</pre></td><td class="jsondiffpatch-delta-note"><div>');
|
|
27
|
+
if (htmlNote != null) context.out(htmlNote);
|
|
28
|
+
context.out('</div></td></tr>');
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
typeFormattterErrorFormatter(context, err) {
|
|
32
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
33
|
+
context.row('', `<pre class="jsondiffpatch-error">${err}</pre>`);
|
|
34
|
+
}
|
|
35
|
+
formatTextDiffString(context, value) {
|
|
36
|
+
const lines = this.parseTextDiff(value);
|
|
37
|
+
context.out('<ul class="jsondiffpatch-textdiff">');
|
|
38
|
+
for (let i = 0, l = lines.length; i < l; i++) {
|
|
39
|
+
const line = lines[i];
|
|
40
|
+
context.out('<li><div class="jsondiffpatch-textdiff-location">' + `<span class="jsondiffpatch-textdiff-line-number">${line.location.line}</span><span class="jsondiffpatch-textdiff-char">${line.location.chr}</span></div><div class="jsondiffpatch-textdiff-line">`);
|
|
41
|
+
const pieces = line.pieces;
|
|
42
|
+
for (let pieceIndex = 0, piecesLength = pieces.length; pieceIndex < piecesLength; pieceIndex++) {
|
|
43
|
+
const piece = pieces[pieceIndex];
|
|
44
|
+
context.out(`<span class="jsondiffpatch-textdiff-${piece.type}">${piece.text}</span>`);
|
|
45
|
+
}
|
|
46
|
+
context.out('</div></li>');
|
|
47
|
+
}
|
|
48
|
+
context.out('</ul>');
|
|
49
|
+
}
|
|
50
|
+
rootBegin(context, type, nodeType) {
|
|
51
|
+
context.out('<table class="jsondiffpatch-annotated-delta">');
|
|
52
|
+
if (type === 'node') {
|
|
53
|
+
context.row('{');
|
|
54
|
+
context.indent();
|
|
55
|
+
}
|
|
56
|
+
if (nodeType === 'array') {
|
|
57
|
+
context.row('"_t": "a",', 'Array delta (member names indicate array indices)');
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
rootEnd(context, type) {
|
|
61
|
+
if (type === 'node') {
|
|
62
|
+
context.indent(-1);
|
|
63
|
+
context.row('}');
|
|
64
|
+
}
|
|
65
|
+
context.out('</table>');
|
|
66
|
+
}
|
|
67
|
+
nodeBegin(context, key, leftKey, type, nodeType) {
|
|
68
|
+
context.row(`"${key}": {`);
|
|
69
|
+
if (type === 'node') {
|
|
70
|
+
context.indent();
|
|
71
|
+
}
|
|
72
|
+
if (nodeType === 'array') {
|
|
73
|
+
context.row('"_t": "a",', 'Array delta (member names indicate array indices)');
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
nodeEnd(context, key, leftKey, type, nodeType, isLast) {
|
|
77
|
+
if (type === 'node') {
|
|
78
|
+
context.indent(-1);
|
|
79
|
+
}
|
|
80
|
+
context.row(`}${isLast ? '' : ','}`);
|
|
81
|
+
}
|
|
82
|
+
format_unchanged() {}
|
|
83
|
+
format_movedestination() {}
|
|
84
|
+
format_node(context, delta, left) {
|
|
85
|
+
// recurse
|
|
86
|
+
this.formatDeltaChildren(context, delta, left);
|
|
87
|
+
}
|
|
88
|
+
format_added(context, delta, left, key, leftKey) {
|
|
89
|
+
formatAnyChange.call(this, context, delta, left, key, leftKey);
|
|
90
|
+
}
|
|
91
|
+
format_modified(context, delta, left, key, leftKey) {
|
|
92
|
+
formatAnyChange.call(this, context, delta, left, key, leftKey);
|
|
93
|
+
}
|
|
94
|
+
format_deleted(context, delta, left, key, leftKey) {
|
|
95
|
+
formatAnyChange.call(this, context, delta, left, key, leftKey);
|
|
96
|
+
}
|
|
97
|
+
format_moved(context, delta, left, key, leftKey) {
|
|
98
|
+
formatAnyChange.call(this, context, delta, left, key, leftKey);
|
|
99
|
+
}
|
|
100
|
+
format_textdiff(context, delta, left, key, leftKey) {
|
|
101
|
+
formatAnyChange.call(this, context, delta, left, key, leftKey);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
const wrapPropertyName = name => `<pre style="display:inline-block">"${name}"</pre>`;
|
|
105
|
+
const deltaAnnotations = {
|
|
106
|
+
added(delta, left, key, leftKey) {
|
|
107
|
+
const formatLegend = ' <pre>([newValue])</pre>';
|
|
108
|
+
if (typeof leftKey === 'undefined') {
|
|
109
|
+
return `new value${formatLegend}`;
|
|
110
|
+
}
|
|
111
|
+
if (typeof leftKey === 'number') {
|
|
112
|
+
return `insert at index ${leftKey}${formatLegend}`;
|
|
113
|
+
}
|
|
114
|
+
return `add property ${wrapPropertyName(leftKey)}${formatLegend}`;
|
|
115
|
+
},
|
|
116
|
+
modified(delta, left, key, leftKey) {
|
|
117
|
+
const formatLegend = ' <pre>([previousValue, newValue])</pre>';
|
|
118
|
+
if (typeof leftKey === 'undefined') {
|
|
119
|
+
return `modify value${formatLegend}`;
|
|
120
|
+
}
|
|
121
|
+
if (typeof leftKey === 'number') {
|
|
122
|
+
return `modify at index ${leftKey}${formatLegend}`;
|
|
123
|
+
}
|
|
124
|
+
return `modify property ${wrapPropertyName(leftKey)}${formatLegend}`;
|
|
125
|
+
},
|
|
126
|
+
deleted(delta, left, key, leftKey) {
|
|
127
|
+
const formatLegend = ' <pre>([previousValue, 0, 0])</pre>';
|
|
128
|
+
if (typeof leftKey === 'undefined') {
|
|
129
|
+
return `delete value${formatLegend}`;
|
|
130
|
+
}
|
|
131
|
+
if (typeof leftKey === 'number') {
|
|
132
|
+
return `remove index ${leftKey}${formatLegend}`;
|
|
133
|
+
}
|
|
134
|
+
return `delete property ${wrapPropertyName(leftKey)}${formatLegend}`;
|
|
135
|
+
},
|
|
136
|
+
moved(delta, left, key, leftKey) {
|
|
137
|
+
return 'move from <span title="(position to remove at original state)">' + `index ${leftKey}</span> to <span title="(position to insert at final` + ` state)">index ${delta[1]}</span>`;
|
|
138
|
+
},
|
|
139
|
+
textdiff(delta, left, key, leftKey) {
|
|
140
|
+
const location = typeof leftKey === 'undefined' ? '' : typeof leftKey === 'number' ? ` at index ${leftKey}` : ` at property ${wrapPropertyName(leftKey)}`;
|
|
141
|
+
return `text diff${location}, format is <a href="https://code.google.com/` + 'p/google-diff-match-patch/wiki/Unidiff">a variation of Unidiff</a>';
|
|
142
|
+
}
|
|
143
|
+
};
|
|
144
|
+
const formatAnyChange = function (context, delta, left, key, leftKey) {
|
|
145
|
+
const deltaType = this.getDeltaType(delta);
|
|
146
|
+
const annotator = deltaAnnotations[deltaType];
|
|
147
|
+
const htmlNote = annotator && annotator(delta, left, key, leftKey);
|
|
148
|
+
let json = JSON.stringify(delta, null, 2);
|
|
149
|
+
if (deltaType === 'textdiff') {
|
|
150
|
+
// split text diffs lines
|
|
151
|
+
json = json.split('\\n').join('\\n"+\n "');
|
|
152
|
+
}
|
|
153
|
+
context.indent();
|
|
154
|
+
context.row(json, htmlNote);
|
|
155
|
+
context.indent(-1);
|
|
156
|
+
};
|
|
157
|
+
var _default = exports.default = AnnotatedFormatter;
|
|
158
|
+
let defaultInstance;
|
|
159
|
+
function format(delta, left) {
|
|
160
|
+
if (!defaultInstance) {
|
|
161
|
+
defaultInstance = new AnnotatedFormatter();
|
|
162
|
+
}
|
|
163
|
+
return defaultInstance.format(delta, left);
|
|
164
|
+
}
|
|
165
|
+
//# sourceMappingURL=annotated.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"annotated.js","names":["_base","_interopRequireDefault","require","obj","__esModule","default","AnnotatedFormatter","BaseFormatter","constructor","includeMoveDestinations","prepareContext","context","indent","levels","indentLevel","indentPad","Array","join","row","json","htmlNote","out","typeFormattterErrorFormatter","err","formatTextDiffString","value","lines","parseTextDiff","i","l","length","line","location","chr","pieces","pieceIndex","piecesLength","piece","type","text","rootBegin","nodeType","rootEnd","nodeBegin","key","leftKey","nodeEnd","isLast","format_unchanged","format_movedestination","format_node","delta","left","formatDeltaChildren","format_added","formatAnyChange","call","format_modified","format_deleted","format_moved","format_textdiff","wrapPropertyName","name","deltaAnnotations","added","formatLegend","modified","deleted","moved","textdiff","deltaType","getDeltaType","annotator","JSON","stringify","split","_default","exports","defaultInstance","format"],"sources":["../../../../../../src/internal/lib/jsondiffpatch/formatters/annotated.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|