@diffson/core 1.0.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/.turbo/turbo-build.log +1 -0
- package/.turbo/turbo-test.log +96 -0
- package/.turbo/turbo-typecheck.log +2 -0
- package/dist/contract/constant/DiffConstants.d.ts +9 -0
- package/dist/contract/constant/DiffConstants.d.ts.map +1 -0
- package/dist/contract/constant/DiffConstants.js +9 -0
- package/dist/contract/constant/DiffConstants.js.map +1 -0
- package/dist/contract/constant/PresetName.d.ts +7 -0
- package/dist/contract/constant/PresetName.d.ts.map +1 -0
- package/dist/contract/constant/PresetName.js +8 -0
- package/dist/contract/constant/PresetName.js.map +1 -0
- package/dist/contract/constant/index.d.ts +3 -0
- package/dist/contract/constant/index.d.ts.map +1 -0
- package/dist/contract/constant/index.js +3 -0
- package/dist/contract/constant/index.js.map +1 -0
- package/dist/contract/index.d.ts +3 -0
- package/dist/contract/index.d.ts.map +1 -0
- package/dist/contract/index.js +3 -0
- package/dist/contract/index.js.map +1 -0
- package/dist/contract/type/ArrayComparator.d.ts +9 -0
- package/dist/contract/type/ArrayComparator.d.ts.map +1 -0
- package/dist/contract/type/ArrayComparator.js +3 -0
- package/dist/contract/type/ArrayComparator.js.map +1 -0
- package/dist/contract/type/ComparatorOrchestrator.d.ts +10 -0
- package/dist/contract/type/ComparatorOrchestrator.d.ts.map +1 -0
- package/dist/contract/type/ComparatorOrchestrator.js +3 -0
- package/dist/contract/type/ComparatorOrchestrator.js.map +1 -0
- package/dist/contract/type/DiffService.d.ts +28 -0
- package/dist/contract/type/DiffService.d.ts.map +1 -0
- package/dist/contract/type/DiffService.js +3 -0
- package/dist/contract/type/DiffService.js.map +1 -0
- package/dist/contract/type/JsonTypes.d.ts +6 -0
- package/dist/contract/type/JsonTypes.d.ts.map +1 -0
- package/dist/contract/type/JsonTypes.js +2 -0
- package/dist/contract/type/JsonTypes.js.map +1 -0
- package/dist/contract/type/NullComparator.d.ts +7 -0
- package/dist/contract/type/NullComparator.d.ts.map +1 -0
- package/dist/contract/type/NullComparator.js +3 -0
- package/dist/contract/type/NullComparator.js.map +1 -0
- package/dist/contract/type/ObjectComparator.d.ts +9 -0
- package/dist/contract/type/ObjectComparator.d.ts.map +1 -0
- package/dist/contract/type/ObjectComparator.js +3 -0
- package/dist/contract/type/ObjectComparator.js.map +1 -0
- package/dist/contract/type/OtherComparator.d.ts +8 -0
- package/dist/contract/type/OtherComparator.d.ts.map +1 -0
- package/dist/contract/type/OtherComparator.js +3 -0
- package/dist/contract/type/OtherComparator.js.map +1 -0
- package/dist/contract/type/PrimitiveComparator.d.ts +7 -0
- package/dist/contract/type/PrimitiveComparator.d.ts.map +1 -0
- package/dist/contract/type/PrimitiveComparator.js +3 -0
- package/dist/contract/type/PrimitiveComparator.js.map +1 -0
- package/dist/contract/type/Result.d.ts +8 -0
- package/dist/contract/type/Result.d.ts.map +1 -0
- package/dist/contract/type/Result.js +8 -0
- package/dist/contract/type/Result.js.map +1 -0
- package/dist/contract/type/SingleNodeDifference.d.ts +8 -0
- package/dist/contract/type/SingleNodeDifference.d.ts.map +1 -0
- package/dist/contract/type/SingleNodeDifference.js +13 -0
- package/dist/contract/type/SingleNodeDifference.js.map +1 -0
- package/dist/contract/type/index.d.ts +11 -0
- package/dist/contract/type/index.d.ts.map +1 -0
- package/dist/contract/type/index.js +11 -0
- package/dist/contract/type/index.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -0
- package/dist/service/comparator/ComparatorOrchestrator.d.ts +14 -0
- package/dist/service/comparator/ComparatorOrchestrator.d.ts.map +1 -0
- package/dist/service/comparator/ComparatorOrchestrator.js +56 -0
- package/dist/service/comparator/ComparatorOrchestrator.js.map +1 -0
- package/dist/service/comparator/array/AbstractArray.d.ts +12 -0
- package/dist/service/comparator/array/AbstractArray.d.ts.map +1 -0
- package/dist/service/comparator/array/AbstractArray.js +41 -0
- package/dist/service/comparator/array/AbstractArray.js.map +1 -0
- package/dist/service/comparator/array/SequentialArrayComparator.d.ts +10 -0
- package/dist/service/comparator/array/SequentialArrayComparator.d.ts.map +1 -0
- package/dist/service/comparator/array/SequentialArrayComparator.js +50 -0
- package/dist/service/comparator/array/SequentialArrayComparator.js.map +1 -0
- package/dist/service/comparator/array/SimilarArrayComparator.d.ts +22 -0
- package/dist/service/comparator/array/SimilarArrayComparator.d.ts.map +1 -0
- package/dist/service/comparator/array/SimilarArrayComparator.js +153 -0
- package/dist/service/comparator/array/SimilarArrayComparator.js.map +1 -0
- package/dist/service/comparator/array/index.d.ts +4 -0
- package/dist/service/comparator/array/index.d.ts.map +1 -0
- package/dist/service/comparator/array/index.js +4 -0
- package/dist/service/comparator/array/index.js.map +1 -0
- package/dist/service/comparator/index.d.ts +7 -0
- package/dist/service/comparator/index.d.ts.map +1 -0
- package/dist/service/comparator/index.js +7 -0
- package/dist/service/comparator/index.js.map +1 -0
- package/dist/service/comparator/nulls/DefaultNullComparator.d.ts +7 -0
- package/dist/service/comparator/nulls/DefaultNullComparator.d.ts.map +1 -0
- package/dist/service/comparator/nulls/DefaultNullComparator.js +7 -0
- package/dist/service/comparator/nulls/DefaultNullComparator.js.map +1 -0
- package/dist/service/comparator/nulls/index.d.ts +2 -0
- package/dist/service/comparator/nulls/index.d.ts.map +1 -0
- package/dist/service/comparator/nulls/index.js +2 -0
- package/dist/service/comparator/nulls/index.js.map +1 -0
- package/dist/service/comparator/object/AbstractObject.d.ts +17 -0
- package/dist/service/comparator/object/AbstractObject.d.ts.map +1 -0
- package/dist/service/comparator/object/AbstractObject.js +91 -0
- package/dist/service/comparator/object/AbstractObject.js.map +1 -0
- package/dist/service/comparator/object/LeftJoinObjectComparator.d.ts +9 -0
- package/dist/service/comparator/object/LeftJoinObjectComparator.d.ts.map +1 -0
- package/dist/service/comparator/object/LeftJoinObjectComparator.js +26 -0
- package/dist/service/comparator/object/LeftJoinObjectComparator.js.map +1 -0
- package/dist/service/comparator/object/UnionKeyObjectComparator.d.ts +9 -0
- package/dist/service/comparator/object/UnionKeyObjectComparator.d.ts.map +1 -0
- package/dist/service/comparator/object/UnionKeyObjectComparator.js +27 -0
- package/dist/service/comparator/object/UnionKeyObjectComparator.js.map +1 -0
- package/dist/service/comparator/object/index.d.ts +4 -0
- package/dist/service/comparator/object/index.d.ts.map +1 -0
- package/dist/service/comparator/object/index.js +4 -0
- package/dist/service/comparator/object/index.js.map +1 -0
- package/dist/service/comparator/other/DefaultOtherComparator.d.ts +7 -0
- package/dist/service/comparator/other/DefaultOtherComparator.d.ts.map +1 -0
- package/dist/service/comparator/other/DefaultOtherComparator.js +14 -0
- package/dist/service/comparator/other/DefaultOtherComparator.js.map +1 -0
- package/dist/service/comparator/other/index.d.ts +2 -0
- package/dist/service/comparator/other/index.d.ts.map +1 -0
- package/dist/service/comparator/other/index.js +2 -0
- package/dist/service/comparator/other/index.js.map +1 -0
- package/dist/service/comparator/primitive/DefaultPrimitiveComparator.d.ts +7 -0
- package/dist/service/comparator/primitive/DefaultPrimitiveComparator.d.ts.map +1 -0
- package/dist/service/comparator/primitive/DefaultPrimitiveComparator.js +17 -0
- package/dist/service/comparator/primitive/DefaultPrimitiveComparator.js.map +1 -0
- package/dist/service/comparator/primitive/index.d.ts +2 -0
- package/dist/service/comparator/primitive/index.d.ts.map +1 -0
- package/dist/service/comparator/primitive/index.js +2 -0
- package/dist/service/comparator/primitive/index.js.map +1 -0
- package/dist/service/diff/DiffContext.d.ts +14 -0
- package/dist/service/diff/DiffContext.d.ts.map +1 -0
- package/dist/service/diff/DiffContext.js +30 -0
- package/dist/service/diff/DiffContext.js.map +1 -0
- package/dist/service/diff/DiffService.d.ts +27 -0
- package/dist/service/diff/DiffService.d.ts.map +1 -0
- package/dist/service/diff/DiffService.js +185 -0
- package/dist/service/diff/DiffService.js.map +1 -0
- package/dist/service/diff/PathTracker.d.ts +22 -0
- package/dist/service/diff/PathTracker.d.ts.map +1 -0
- package/dist/service/diff/PathTracker.js +57 -0
- package/dist/service/diff/PathTracker.js.map +1 -0
- package/dist/service/diff/index.d.ts +2 -0
- package/dist/service/diff/index.d.ts.map +1 -0
- package/dist/service/diff/index.js +2 -0
- package/dist/service/diff/index.js.map +1 -0
- package/dist/service/index.d.ts +3 -0
- package/dist/service/index.d.ts.map +1 -0
- package/dist/service/index.js +3 -0
- package/dist/service/index.js.map +1 -0
- package/dist/util/TypeGuards.d.ts +7 -0
- package/dist/util/TypeGuards.d.ts.map +1 -0
- package/dist/util/TypeGuards.js +33 -0
- package/dist/util/TypeGuards.js.map +1 -0
- package/dist/util/index.d.ts +2 -0
- package/dist/util/index.d.ts.map +1 -0
- package/dist/util/index.js +2 -0
- package/dist/util/index.js.map +1 -0
- package/package.json +40 -0
- package/src/contract/constant/DiffConstants.ts +10 -0
- package/src/contract/constant/PresetName.ts +6 -0
- package/src/contract/constant/index.ts +2 -0
- package/src/contract/index.ts +2 -0
- package/src/contract/type/ArrayComparator.ts +15 -0
- package/src/contract/type/ComparatorOrchestrator.ts +16 -0
- package/src/contract/type/DiffService.ts +31 -0
- package/src/contract/type/JsonTypes.ts +3 -0
- package/src/contract/type/NullComparator.ts +9 -0
- package/src/contract/type/ObjectComparator.ts +15 -0
- package/src/contract/type/OtherComparator.ts +14 -0
- package/src/contract/type/PrimitiveComparator.ts +13 -0
- package/src/contract/type/Result.ts +7 -0
- package/src/contract/type/SingleNodeDifference.ts +13 -0
- package/src/contract/type/index.ts +10 -0
- package/src/index.ts +17 -0
- package/src/service/comparator/ComparatorOrchestrator.ts +50 -0
- package/src/service/comparator/array/AbstractArray.ts +34 -0
- package/src/service/comparator/array/SequentialArrayComparator.test.ts +46 -0
- package/src/service/comparator/array/SequentialArrayComparator.ts +48 -0
- package/src/service/comparator/array/SimilarArrayComparator.test.ts +37 -0
- package/src/service/comparator/array/SimilarArrayComparator.ts +211 -0
- package/src/service/comparator/array/index.ts +3 -0
- package/src/service/comparator/index.ts +6 -0
- package/src/service/comparator/nulls/DefaultNullComparator.test.ts +38 -0
- package/src/service/comparator/nulls/DefaultNullComparator.ts +9 -0
- package/src/service/comparator/nulls/index.ts +1 -0
- package/src/service/comparator/object/AbstractObject.ts +102 -0
- package/src/service/comparator/object/LeftJoinObjectComparator.test.ts +71 -0
- package/src/service/comparator/object/LeftJoinObjectComparator.ts +18 -0
- package/src/service/comparator/object/UnionKeyObjectComparator.test.ts +20 -0
- package/src/service/comparator/object/UnionKeyObjectComparator.ts +19 -0
- package/src/service/comparator/object/index.ts +3 -0
- package/src/service/comparator/other/DefaultOtherComparator.test.ts +48 -0
- package/src/service/comparator/other/DefaultOtherComparator.ts +23 -0
- package/src/service/comparator/other/index.ts +1 -0
- package/src/service/comparator/primitive/DefaultPrimitiveComparator.test.ts +50 -0
- package/src/service/comparator/primitive/DefaultPrimitiveComparator.ts +27 -0
- package/src/service/comparator/primitive/index.ts +1 -0
- package/src/service/diff/Diff.test.ts +113 -0
- package/src/service/diff/DiffContext.ts +37 -0
- package/src/service/diff/DiffService.test.ts +292 -0
- package/src/service/diff/DiffService.ts +245 -0
- package/src/service/diff/PathTracker.ts +71 -0
- package/src/service/diff/index.ts +1 -0
- package/src/service/index.ts +2 -0
- package/src/util/TypeGuards.test.ts +90 -0
- package/src/util/TypeGuards.ts +33 -0
- package/src/util/index.ts +1 -0
- package/tsconfig.json +11 -0
- package/tsconfig.tsbuildinfo +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
$ tsc
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
|
|
2
|
+
[0m[2m[35m$[0m [2m[1mbun test[0m
|
|
3
|
+
[0m[1mbun test [0m[2mv1.3.5 (1e86cebd)[0m
|
|
4
|
+
[0m
|
|
5
|
+
src/util/TypeGuards.test.ts:
|
|
6
|
+
[0m[32m✓[0m [0mTypeGuards[2m > [0misJsonObject[2m >[0m[1m should return true for objects[0m [0m[2m[0.92ms[0m[2m][0m
|
|
7
|
+
[0m[32m✓[0m [0mTypeGuards[2m > [0misJsonObject[2m >[0m[1m should return false for non-objects[0m [0m[2m[0.05ms[0m[2m][0m
|
|
8
|
+
[0m[32m✓[0m [0mTypeGuards[2m > [0misJsonArray[2m >[0m[1m should return true for arrays[0m [0m[2m[0.02ms[0m[2m][0m
|
|
9
|
+
[0m[32m✓[0m [0mTypeGuards[2m > [0misJsonArray[2m >[0m[1m should return false for non-arrays[0m [0m[2m[0.02ms[0m[2m][0m
|
|
10
|
+
[0m[32m✓[0m [0mTypeGuards[2m > [0misJsonPrimitive[2m >[0m[1m should return true for primitives[0m [0m[2m[0.01ms[0m[2m][0m
|
|
11
|
+
[0m[32m✓[0m [0mTypeGuards[2m > [0misJsonPrimitive[2m >[0m[1m should return false for non-primitives[0m [0m[2m[0.02ms[0m[2m][0m
|
|
12
|
+
[0m[32m✓[0m [0mTypeGuards[2m > [0misJsonNull[2m >[0m[1m should return true for null[0m [0m[2m[0.02ms[0m[2m][0m
|
|
13
|
+
[0m[32m✓[0m [0mTypeGuards[2m > [0misJsonNull[2m >[0m[1m should return false for non-null[0m [0m[2m[0.01ms[0m[2m][0m
|
|
14
|
+
[0m[32m✓[0m [0mTypeGuards[2m > [0mjsonElement2Str[2m >[0m[1m should convert primitives to strings[0m [0m[2m[0.03ms[0m[2m][0m
|
|
15
|
+
[0m[32m✓[0m [0mTypeGuards[2m > [0mjsonElement2Str[2m >[0m[1m should return null for undefined[0m
|
|
16
|
+
[0m[32m✓[0m [0mTypeGuards[2m > [0mjsonElement2Str[2m >[0m[1m should return 'null' for null[0m
|
|
17
|
+
[0m[32m✓[0m [0mTypeGuards[2m > [0mjsonElement2Str[2m >[0m[1m should return placeholder for objects[0m
|
|
18
|
+
[0m[32m✓[0m [0mTypeGuards[2m > [0mjsonElement2Str[2m >[0m[1m should return placeholder for arrays[0m
|
|
19
|
+
[0m
|
|
20
|
+
src/service/diff/Diff.test.ts:
|
|
21
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mdiffElement[2m >[0m[1m should return empty array for identical objects[0m [0m[2m[1.15ms[0m[2m][0m
|
|
22
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mdiffElement[2m >[0m[1m should detect modified values[0m [0m[2m[0.12ms[0m[2m][0m
|
|
23
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mdiffElement[2m >[0m[1m should detect added fields[0m [0m[2m[0.06ms[0m[2m][0m
|
|
24
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mdiffElement[2m >[0m[1m should detect deleted fields[0m [0m[2m[0.13ms[0m[2m][0m
|
|
25
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mdiffJson[2m >[0m[1m should parse JSON strings and diff them[0m [0m[2m[0.10ms[0m[2m][0m
|
|
26
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mdiffJson[2m >[0m[1m should return empty array for identical JSON strings[0m [0m[2m[0.09ms[0m[2m][0m
|
|
27
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mdiffJson[2m >[0m[1m should throw error for invalid left JSON string[0m [0m[2m[0.31ms[0m[2m][0m
|
|
28
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mdiffJson[2m >[0m[1m should throw error for invalid right JSON string[0m [0m[2m[0.02ms[0m[2m][0m
|
|
29
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mnested objects[2m >[0m[1m should handle nested objects[0m [0m[2m[0.09ms[0m[2m][0m
|
|
30
|
+
[0m
|
|
31
|
+
src/service/diff/DiffService.test.ts:
|
|
32
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mbasic comparison[2m >[0m[1m should return empty array for identical objects[0m [0m[2m[0.10ms[0m[2m][0m
|
|
33
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mbasic comparison[2m >[0m[1m should detect modified values[0m [0m[2m[0.06ms[0m[2m][0m
|
|
34
|
+
[
|
|
35
|
+
Result {
|
|
36
|
+
[0mleftPath[2m:[0m [0m[32m[0m[32m"items.[1]"[0m[0m[0m[2m,[0m
|
|
37
|
+
[0mrightPath[2m:[0m [0m[32m[0m[32m"items.[1]"[0m[0m[0m[2m,[0m
|
|
38
|
+
[0mleft[2m:[0m [0m[32m[0m[32m"2"[0m[0m[0m[2m,[0m
|
|
39
|
+
[0mright[2m:[0m [0m[32m[0m[32m"4"[0m[0m[0m[2m,[0m
|
|
40
|
+
[0mdiffType[2m:[0m [0m[32m[0m[32m"MODIFY"[0m[0m[0m[2m,[0m
|
|
41
|
+
}
|
|
42
|
+
]
|
|
43
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mwithArrayComparator[2m >[0m[1m should use sequential array comparator when configured[0m [0m[2m[0.85ms[0m[2m][0m
|
|
44
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mwithArrayComparator[2m >[0m[1m should reuse injector when configuration changes[0m [0m[2m[0.40ms[0m[2m][0m
|
|
45
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mpreset[2m >[0m[1m should use FullOrdered preset[0m [0m[2m[0.04ms[0m[2m][0m
|
|
46
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mpreset[2m >[0m[1m should use LeftSmart preset[0m [0m[2m[0.03ms[0m[2m][0m
|
|
47
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mpreset[2m >[0m[1m should use LeftOrdered preset[0m [0m[2m[0.05ms[0m[2m][0m
|
|
48
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mcompareWithOptions[2m >[0m[1m should ignore noise paths[0m [0m[2m[0.06ms[0m[2m][0m
|
|
49
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mcompareWithOptions[2m >[0m[1m should handle special paths[0m [0m[2m[0.13ms[0m[2m][0m
|
|
50
|
+
[0m[32m✓[0m [0mDiffService[2m > [0mfluent API[2m >[0m[1m should support method chaining[0m [0m[2m[0.34ms[0m[2m][0m
|
|
51
|
+
[0m[32m✓[0m [0mDiffService - parseNestedJson[2m >[0m[1m should parse nested JSON strings when parseNestedJson option is true[0m [0m[2m[0.61ms[0m[2m][0m
|
|
52
|
+
[0m[32m✓[0m [0mDiffService - parseNestedJson[2m >[0m[1m should not parse nested JSON strings when parseNestedJson option is false or undefined[0m [0m[2m[0.07ms[0m[2m][0m
|
|
53
|
+
[0m[32m✓[0m [0mDiffService - parseNestedJson[2m >[0m[1m should handle deeply nested JSON strings[0m [0m[2m[0.09ms[0m[2m][0m
|
|
54
|
+
[0m[32m✓[0m [0mDiffService - parseNestedJson[2m >[0m[1m should handle arrays containing JSON strings[0m [0m[2m[0.11ms[0m[2m][0m
|
|
55
|
+
[0m[32m✓[0m [0mDiffService - parseNestedJson[2m >[0m[1m should handle mixed content with both JSON strings and regular strings[0m [0m[2m[0.07ms[0m[2m][0m
|
|
56
|
+
[0m[32m✓[0m [0mDiffService - parseNestedJson[2m >[0m[1m should not fail on invalid JSON strings[0m [0m[2m[0.07ms[0m[2m][0m
|
|
57
|
+
[0m
|
|
58
|
+
src/service/comparator/array/SequentialArrayComparator.test.ts:
|
|
59
|
+
[0m[32m✓[0m [0mSequentialArrayComparator[2m >[0m[1m should compare arrays by index[0m [0m[2m[0.13ms[0m[2m][0m
|
|
60
|
+
[0m[32m✓[0m [0mSequentialArrayComparator[2m >[0m[1m should detect added elements[0m [0m[2m[0.03ms[0m[2m][0m
|
|
61
|
+
[0m[32m✓[0m [0mSequentialArrayComparator[2m >[0m[1m should detect deleted elements[0m [0m[2m[0.04ms[0m[2m][0m
|
|
62
|
+
[0m
|
|
63
|
+
src/service/comparator/array/SimilarArrayComparator.test.ts:
|
|
64
|
+
[0m[32m✓[0m [0mSimilarArrayComparator[2m >[0m[1m should match similar elements[0m [0m[2m[0.04ms[0m[2m][0m
|
|
65
|
+
[0m[32m✓[0m [0mSimilarArrayComparator[2m >[0m[1m should detect modifications in matched elements[0m [0m[2m[0.10ms[0m[2m][0m
|
|
66
|
+
[0m[32m✓[0m [0mSimilarArrayComparator[2m >[0m[1m should detect added elements[0m [0m[2m[0.05ms[0m[2m][0m
|
|
67
|
+
[0m
|
|
68
|
+
src/service/comparator/primitive/DefaultPrimitiveComparator.test.ts:
|
|
69
|
+
[0m[32m✓[0m [0mDefaultPrimitiveComparator[2m >[0m[1m should detect string changes[0m
|
|
70
|
+
[0m[32m✓[0m [0mDefaultPrimitiveComparator[2m >[0m[1m should detect number changes[0m [0m[2m[0.12ms[0m[2m][0m
|
|
71
|
+
[0m[32m✓[0m [0mDefaultPrimitiveComparator[2m >[0m[1m should detect boolean changes[0m [0m[2m[0.02ms[0m[2m][0m
|
|
72
|
+
[0m[32m✓[0m [0mDefaultPrimitiveComparator[2m >[0m[1m should not report identical primitives[0m [0m[2m[0.03ms[0m[2m][0m
|
|
73
|
+
[0m
|
|
74
|
+
src/service/comparator/other/DefaultOtherComparator.test.ts:
|
|
75
|
+
[0m[32m✓[0m [0mDefaultOtherComparator[2m >[0m[1m should detect type changes from object to array[0m
|
|
76
|
+
[0m[32m✓[0m [0mDefaultOtherComparator[2m >[0m[1m should detect type changes from array to primitive[0m [0m[2m[0.22ms[0m[2m][0m
|
|
77
|
+
[0m[32m✓[0m [0mDefaultOtherComparator[2m >[0m[1m should detect undefined to value[0m [0m[2m[0.02ms[0m[2m][0m
|
|
78
|
+
[0m[32m✓[0m [0mDefaultOtherComparator[2m >[0m[1m should detect value to undefined[0m [0m[2m[0.04ms[0m[2m][0m
|
|
79
|
+
[0m
|
|
80
|
+
src/service/comparator/nulls/DefaultNullComparator.test.ts:
|
|
81
|
+
[0m[32m✓[0m [0mDefaultNullComparator[2m >[0m[1m should not report differences for null vs null[0m [0m[2m[0.23ms[0m[2m][0m
|
|
82
|
+
[0m[32m✓[0m [0mDefaultNullComparator[2m >[0m[1m should detect null to value changes[0m [0m[2m[0.16ms[0m[2m][0m
|
|
83
|
+
[0m[32m✓[0m [0mDefaultNullComparator[2m >[0m[1m should detect value to null changes[0m [0m[2m[0.03ms[0m[2m][0m
|
|
84
|
+
[0m
|
|
85
|
+
src/service/comparator/object/UnionKeyObjectComparator.test.ts:
|
|
86
|
+
[0m[32m✓[0m [0mUnionKeyObjectComparator[2m >[0m[1m should compare all keys from both objects[0m [0m[2m[0.12ms[0m[2m][0m
|
|
87
|
+
[0m
|
|
88
|
+
src/service/comparator/object/LeftJoinObjectComparator.test.ts:
|
|
89
|
+
[0m[32m✓[0m [0mLeftJoinObjectComparator[2m >[0m[1m should only compare keys from left object[0m [0m[2m[0.15ms[0m[2m][0m
|
|
90
|
+
[0m[32m✓[0m [0mLeftJoinObjectComparator[2m >[0m[1m should detect changes in left keys[0m [0m[2m[0.04ms[0m[2m][0m
|
|
91
|
+
[0m[32m✓[0m [0mLeftJoinObjectComparator[2m >[0m[1m should detect missing keys in right object[0m [0m[2m[0.03ms[0m[2m][0m
|
|
92
|
+
|
|
93
|
+
[0m[32m 59 pass[0m
|
|
94
|
+
[0m[2m 0 fail[0m
|
|
95
|
+
154 expect() calls
|
|
96
|
+
Ran 59 tests across 10 files. [0m[2m[[1m27.00ms[0m[2m][0m
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const DIFFERENT = false;
|
|
2
|
+
export declare const SAME = true;
|
|
3
|
+
export declare const SPLIT_PATH = "\\.";
|
|
4
|
+
export declare const MERGE_PATH = ".";
|
|
5
|
+
export declare const OBJECT_NULL: null;
|
|
6
|
+
export declare const TYPE_MODIFY = "MODIFY";
|
|
7
|
+
export declare const TYPE_ADD = "ADD";
|
|
8
|
+
export declare const TYPE_DELETE = "DELETE";
|
|
9
|
+
//# sourceMappingURL=DiffConstants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DiffConstants.d.ts","sourceRoot":"","sources":["../../../src/contract/constant/DiffConstants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS,QAAQ,CAAC;AAC/B,eAAO,MAAM,IAAI,OAAO,CAAC;AACzB,eAAO,MAAM,UAAU,QAAQ,CAAC;AAChC,eAAO,MAAM,UAAU,MAAM,CAAC;AAE9B,eAAO,MAAM,WAAW,MAAO,CAAC;AAChC,eAAO,MAAM,WAAW,WAAW,CAAC;AACpC,eAAO,MAAM,QAAQ,QAAQ,CAAC;AAC9B,eAAO,MAAM,WAAW,WAAW,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export const DIFFERENT = false;
|
|
2
|
+
export const SAME = true;
|
|
3
|
+
export const SPLIT_PATH = "\\.";
|
|
4
|
+
export const MERGE_PATH = ".";
|
|
5
|
+
export const OBJECT_NULL = null;
|
|
6
|
+
export const TYPE_MODIFY = "MODIFY";
|
|
7
|
+
export const TYPE_ADD = "ADD";
|
|
8
|
+
export const TYPE_DELETE = "DELETE";
|
|
9
|
+
//# sourceMappingURL=DiffConstants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DiffConstants.js","sourceRoot":"","sources":["../../../src/contract/constant/DiffConstants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,CAAC;AAC/B,MAAM,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC;AACzB,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC;AAChC,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,CAAC;AAE9B,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC;AAChC,MAAM,CAAC,MAAM,WAAW,GAAG,QAAQ,CAAC;AACpC,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,CAAC;AAC9B,MAAM,CAAC,MAAM,WAAW,GAAG,QAAQ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PresetName.d.ts","sourceRoot":"","sources":["../../../src/contract/constant/PresetName.ts"],"names":[],"mappings":"AAAA,oBAAY,UAAU;IACpB,SAAS,cAAc;IACvB,WAAW,gBAAgB;IAC3B,SAAS,cAAc;IACvB,WAAW,gBAAgB;CAC5B"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export var PresetName;
|
|
2
|
+
(function (PresetName) {
|
|
3
|
+
PresetName["FullSmart"] = "fullSmart";
|
|
4
|
+
PresetName["FullOrdered"] = "fullOrdered";
|
|
5
|
+
PresetName["LeftSmart"] = "leftSmart";
|
|
6
|
+
PresetName["LeftOrdered"] = "leftOrdered";
|
|
7
|
+
})(PresetName || (PresetName = {}));
|
|
8
|
+
//# sourceMappingURL=PresetName.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PresetName.js","sourceRoot":"","sources":["../../../src/contract/constant/PresetName.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,qCAAuB,CAAA;IACvB,yCAA2B,CAAA;IAC3B,qCAAuB,CAAA;IACvB,yCAA2B,CAAA;AAC7B,CAAC,EALW,UAAU,KAAV,UAAU,QAKrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/contract/constant/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/contract/constant/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/contract/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contract/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { JsonArray, JsonValue } from "./JsonTypes";
|
|
2
|
+
import type { DiffContext } from "../../service/diff/DiffContext";
|
|
3
|
+
import type { PathTracker } from "../../service/diff/PathTracker";
|
|
4
|
+
export interface IArrayComparator {
|
|
5
|
+
diffArray(a: JsonArray, b: JsonArray, pathTracker: PathTracker): DiffContext;
|
|
6
|
+
diffElement(a: JsonValue | undefined, b: JsonValue | undefined, pathTracker: PathTracker): DiffContext;
|
|
7
|
+
}
|
|
8
|
+
export declare const IArrayComparator: import("@wendellhu/redi").IdentifierDecorator<IArrayComparator>;
|
|
9
|
+
//# sourceMappingURL=ArrayComparator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArrayComparator.d.ts","sourceRoot":"","sources":["../../../src/contract/type/ArrayComparator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAElE,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,GAAG,WAAW,CAAC;IAC7E,WAAW,CACT,CAAC,EAAE,SAAS,GAAG,SAAS,EACxB,CAAC,EAAE,SAAS,GAAG,SAAS,EACxB,WAAW,EAAE,WAAW,GACvB,WAAW,CAAC;CAChB;AAED,eAAO,MAAM,gBAAgB,iEAAyD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArrayComparator.js","sourceRoot":"","sources":["../../../src/contract/type/ArrayComparator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAcnD,MAAM,CAAC,MAAM,gBAAgB,GAAG,gBAAgB,CAAmB,kBAAkB,CAAC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { JsonValue } from "./JsonTypes";
|
|
2
|
+
import type { DiffContext } from "../../service/diff/DiffContext";
|
|
3
|
+
import type { PathTracker } from "../../service/diff/PathTracker";
|
|
4
|
+
import type { IArrayComparator } from "./ArrayComparator";
|
|
5
|
+
export interface IComparatorOrchestrator {
|
|
6
|
+
diffElement(a: JsonValue | undefined, b: JsonValue | undefined, pathTracker: PathTracker): DiffContext;
|
|
7
|
+
getArrayComparator(): IArrayComparator;
|
|
8
|
+
}
|
|
9
|
+
export declare const IComparatorOrchestrator: import("@wendellhu/redi").IdentifierDecorator<IComparatorOrchestrator>;
|
|
10
|
+
//# sourceMappingURL=ComparatorOrchestrator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComparatorOrchestrator.d.ts","sourceRoot":"","sources":["../../../src/contract/type/ComparatorOrchestrator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,MAAM,WAAW,uBAAuB;IACtC,WAAW,CACT,CAAC,EAAE,SAAS,GAAG,SAAS,EACxB,CAAC,EAAE,SAAS,GAAG,SAAS,EACxB,WAAW,EAAE,WAAW,GACvB,WAAW,CAAC;IACf,kBAAkB,IAAI,gBAAgB,CAAC;CACxC;AAED,eAAO,MAAM,uBAAuB,wEAAuE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComparatorOrchestrator.js","sourceRoot":"","sources":["../../../src/contract/type/ComparatorOrchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAenD,MAAM,CAAC,MAAM,uBAAuB,GAAG,gBAAgB,CAA0B,yBAAyB,CAAC,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { JsonValue } from "./JsonTypes";
|
|
2
|
+
import type { Result } from "./Result";
|
|
3
|
+
export interface IDiffService {
|
|
4
|
+
/**
|
|
5
|
+
* Diff two JSON strings
|
|
6
|
+
* @param leftJson - Left JSON string
|
|
7
|
+
* @param rightJson - Right JSON string
|
|
8
|
+
* @returns Array of differences
|
|
9
|
+
*/
|
|
10
|
+
diffJson(leftJson: string, rightJson: string, options?: {
|
|
11
|
+
noisePath?: string[];
|
|
12
|
+
specialPath?: string[];
|
|
13
|
+
parseNestedJson?: boolean;
|
|
14
|
+
}): Result[];
|
|
15
|
+
/**
|
|
16
|
+
* Diff two JSON objects directly
|
|
17
|
+
* @param left - Left JSON value
|
|
18
|
+
* @param right - Right JSON value
|
|
19
|
+
* @returns Array of differences
|
|
20
|
+
*/
|
|
21
|
+
diffElement(left: JsonValue, right: JsonValue, options?: {
|
|
22
|
+
noisePath?: string[];
|
|
23
|
+
specialPath?: string[];
|
|
24
|
+
parseNestedJson?: boolean;
|
|
25
|
+
}): Result[];
|
|
26
|
+
}
|
|
27
|
+
export declare const IDiffService: import("@wendellhu/redi").IdentifierDecorator<IDiffService>;
|
|
28
|
+
//# sourceMappingURL=DiffService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DiffService.d.ts","sourceRoot":"","sources":["../../../src/contract/type/DiffService.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QACtD,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,GAAG,MAAM,EAAE,CAAC;IAEb;;;;;OAKG;IACH,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE;QACvD,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,GAAG,MAAM,EAAE,CAAC;CACd;AAED,eAAO,MAAM,YAAY,6DAAiD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DiffService.js","sourceRoot":"","sources":["../../../src/contract/type/DiffService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AA8BnD,MAAM,CAAC,MAAM,YAAY,GAAG,gBAAgB,CAAe,cAAc,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JsonTypes.d.ts","sourceRoot":"","sources":["../../../src/contract/type/JsonTypes.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,UAAU,GAAG,SAAS,CAAC;AAClF,MAAM,MAAM,UAAU,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC;AACtD,MAAM,MAAM,SAAS,GAAG,SAAS,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JsonTypes.js","sourceRoot":"","sources":["../../../src/contract/type/JsonTypes.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { DiffContext } from "../../service/diff/DiffContext";
|
|
2
|
+
import type { PathTracker } from "../../service/diff/PathTracker";
|
|
3
|
+
export interface INullComparator {
|
|
4
|
+
diff(a: null, b: null, pathTracker: PathTracker): DiffContext;
|
|
5
|
+
}
|
|
6
|
+
export declare const INullComparator: import("@wendellhu/redi").IdentifierDecorator<INullComparator>;
|
|
7
|
+
//# sourceMappingURL=NullComparator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NullComparator.d.ts","sourceRoot":"","sources":["../../../src/contract/type/NullComparator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAElE,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,GAAG,WAAW,CAAC;CAC/D;AAED,eAAO,MAAM,eAAe,gEAAuD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NullComparator.js","sourceRoot":"","sources":["../../../src/contract/type/NullComparator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAQnD,MAAM,CAAC,MAAM,eAAe,GAAG,gBAAgB,CAAkB,iBAAiB,CAAC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { JsonObject, JsonValue } from "./JsonTypes";
|
|
2
|
+
import type { DiffContext } from "../../service/diff/DiffContext";
|
|
3
|
+
import type { PathTracker } from "../../service/diff/PathTracker";
|
|
4
|
+
export interface IObjectComparator {
|
|
5
|
+
diff(a: JsonObject, b: JsonObject, pathTracker: PathTracker): DiffContext;
|
|
6
|
+
diffElement(a: JsonValue | undefined, b: JsonValue | undefined, pathTracker: PathTracker): DiffContext;
|
|
7
|
+
}
|
|
8
|
+
export declare const IObjectComparator: import("@wendellhu/redi").IdentifierDecorator<IObjectComparator>;
|
|
9
|
+
//# sourceMappingURL=ObjectComparator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ObjectComparator.d.ts","sourceRoot":"","sources":["../../../src/contract/type/ObjectComparator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAElE,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,GAAG,WAAW,CAAC;IAC1E,WAAW,CACT,CAAC,EAAE,SAAS,GAAG,SAAS,EACxB,CAAC,EAAE,SAAS,GAAG,SAAS,EACxB,WAAW,EAAE,WAAW,GACvB,WAAW,CAAC;CAChB;AAED,eAAO,MAAM,iBAAiB,kEAA2D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ObjectComparator.js","sourceRoot":"","sources":["../../../src/contract/type/ObjectComparator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAcnD,MAAM,CAAC,MAAM,iBAAiB,GAAG,gBAAgB,CAAoB,mBAAmB,CAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { JsonValue } from "./JsonTypes";
|
|
2
|
+
import type { DiffContext } from "../../service/diff/DiffContext";
|
|
3
|
+
import type { PathTracker } from "../../service/diff/PathTracker";
|
|
4
|
+
export interface IOtherComparator {
|
|
5
|
+
diff(a: JsonValue | undefined, b: JsonValue | undefined, pathTracker: PathTracker): DiffContext;
|
|
6
|
+
}
|
|
7
|
+
export declare const IOtherComparator: import("@wendellhu/redi").IdentifierDecorator<IOtherComparator>;
|
|
8
|
+
//# sourceMappingURL=OtherComparator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OtherComparator.d.ts","sourceRoot":"","sources":["../../../src/contract/type/OtherComparator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAElE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CACF,CAAC,EAAE,SAAS,GAAG,SAAS,EACxB,CAAC,EAAE,SAAS,GAAG,SAAS,EACxB,WAAW,EAAE,WAAW,GACvB,WAAW,CAAC;CAChB;AAED,eAAO,MAAM,gBAAgB,iEAAyD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OtherComparator.js","sourceRoot":"","sources":["../../../src/contract/type/OtherComparator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAanD,MAAM,CAAC,MAAM,gBAAgB,GAAG,gBAAgB,CAAmB,kBAAkB,CAAC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { DiffContext } from "../../service/diff/DiffContext";
|
|
2
|
+
import type { PathTracker } from "../../service/diff/PathTracker";
|
|
3
|
+
export interface IPrimitiveComparator {
|
|
4
|
+
diff(a: string | number | boolean, b: string | number | boolean, pathTracker: PathTracker): DiffContext;
|
|
5
|
+
}
|
|
6
|
+
export declare const IPrimitiveComparator: import("@wendellhu/redi").IdentifierDecorator<IPrimitiveComparator>;
|
|
7
|
+
//# sourceMappingURL=PrimitiveComparator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PrimitiveComparator.d.ts","sourceRoot":"","sources":["../../../src/contract/type/PrimitiveComparator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAElE,MAAM,WAAW,oBAAoB;IACnC,IAAI,CACF,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,EAC5B,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,EAC5B,WAAW,EAAE,WAAW,GACvB,WAAW,CAAC;CAChB;AAED,eAAO,MAAM,oBAAoB,qEAAiE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PrimitiveComparator.js","sourceRoot":"","sources":["../../../src/contract/type/PrimitiveComparator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAYnD,MAAM,CAAC,MAAM,oBAAoB,GAAG,gBAAgB,CAAuB,sBAAsB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Result.d.ts","sourceRoot":"","sources":["../../../src/contract/type/Result.ts"],"names":[],"mappings":"AAAA,qBAAa,MAAM;IACjB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC/B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAChC,IAAI,EAAE,OAAO,CAAQ;IACrB,KAAK,EAAE,OAAO,CAAQ;IACtB,QAAQ,EAAE,MAAM,CAAM;CACvB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Result.js","sourceRoot":"","sources":["../../../src/contract/type/Result.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,MAAM;IACjB,QAAQ,GAAkB,IAAI,CAAC;IAC/B,SAAS,GAAkB,IAAI,CAAC;IAChC,IAAI,GAAY,IAAI,CAAC;IACrB,KAAK,GAAY,IAAI,CAAC;IACtB,QAAQ,GAAW,EAAE,CAAC;CACvB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SingleNodeDifference.d.ts","sourceRoot":"","sources":["../../../src/contract/type/SingleNodeDifference.ts"],"names":[],"mappings":"AAAA,qBAAa,oBAAoB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;gBAEH,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO;CAM/E"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export class SingleNodeDifference {
|
|
2
|
+
leftPath;
|
|
3
|
+
rightPath;
|
|
4
|
+
left;
|
|
5
|
+
right;
|
|
6
|
+
constructor(leftPath, rightPath, left, right) {
|
|
7
|
+
this.leftPath = leftPath;
|
|
8
|
+
this.rightPath = rightPath;
|
|
9
|
+
this.left = left;
|
|
10
|
+
this.right = right;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=SingleNodeDifference.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SingleNodeDifference.js","sourceRoot":"","sources":["../../../src/contract/type/SingleNodeDifference.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,oBAAoB;IAC/B,QAAQ,CAAS;IACjB,SAAS,CAAS;IAClB,IAAI,CAAU;IACd,KAAK,CAAU;IAEf,YAAY,QAAgB,EAAE,SAAiB,EAAE,IAAa,EAAE,KAAc;QAC5E,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export * from "./JsonTypes";
|
|
2
|
+
export * from "./Result";
|
|
3
|
+
export * from "./SingleNodeDifference";
|
|
4
|
+
export * from "./ComparatorOrchestrator";
|
|
5
|
+
export * from "./ObjectComparator";
|
|
6
|
+
export * from "./ArrayComparator";
|
|
7
|
+
export * from "./PrimitiveComparator";
|
|
8
|
+
export * from "./NullComparator";
|
|
9
|
+
export * from "./OtherComparator";
|
|
10
|
+
export * from "./DiffService";
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/contract/type/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export * from "./JsonTypes";
|
|
2
|
+
export * from "./Result";
|
|
3
|
+
export * from "./SingleNodeDifference";
|
|
4
|
+
export * from "./ComparatorOrchestrator";
|
|
5
|
+
export * from "./ObjectComparator";
|
|
6
|
+
export * from "./ArrayComparator";
|
|
7
|
+
export * from "./PrimitiveComparator";
|
|
8
|
+
export * from "./NullComparator";
|
|
9
|
+
export * from "./OtherComparator";
|
|
10
|
+
export * from "./DiffService";
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/contract/type/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export type { JsonValue, JsonObject, JsonArray } from "./contract/type/JsonTypes";
|
|
2
|
+
export { Result } from "./contract/type/Result";
|
|
3
|
+
export * from "./contract/type/DiffService";
|
|
4
|
+
export { TYPE_ADD, TYPE_DELETE, TYPE_MODIFY, } from "./contract/constant";
|
|
5
|
+
export { PresetName } from "./contract/constant/PresetName";
|
|
6
|
+
export { DiffService } from "./service";
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAClF,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,cAAc,6BAA6B,CAAC;AAG5C,OAAO,EACL,QAAQ,EACR,WAAW,EACX,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAG5D,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { Result } from "./contract/type/Result";
|
|
2
|
+
export * from "./contract/type/DiffService";
|
|
3
|
+
// Public API - Constants
|
|
4
|
+
export { TYPE_ADD, TYPE_DELETE, TYPE_MODIFY, } from "./contract/constant";
|
|
5
|
+
// Public API - Enums
|
|
6
|
+
export { PresetName } from "./contract/constant/PresetName";
|
|
7
|
+
// Public API - Service
|
|
8
|
+
export { DiffService } from "./service";
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,cAAc,6BAA6B,CAAC;AAE5C,yBAAyB;AACzB,OAAO,EACL,QAAQ,EACR,WAAW,EACX,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAE7B,qBAAqB;AACrB,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAE5D,uBAAuB;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type IComparatorOrchestrator, type IObjectComparator, type IArrayComparator, type IPrimitiveComparator, type INullComparator, type IOtherComparator, type JsonValue } from "../../contract/type";
|
|
2
|
+
import { DiffContext } from "../diff/DiffContext";
|
|
3
|
+
import type { PathTracker } from "../diff/PathTracker";
|
|
4
|
+
export declare class ComparatorOrchestrator implements IComparatorOrchestrator {
|
|
5
|
+
protected objectComparator: IObjectComparator;
|
|
6
|
+
protected arrayComparator: IArrayComparator;
|
|
7
|
+
protected primitiveComparator: IPrimitiveComparator;
|
|
8
|
+
protected nullComparator: INullComparator;
|
|
9
|
+
protected otherComparator: IOtherComparator;
|
|
10
|
+
constructor(objectComparator: IObjectComparator, arrayComparator: IArrayComparator, primitiveComparator: IPrimitiveComparator, nullComparator: INullComparator, otherComparator: IOtherComparator);
|
|
11
|
+
diffElement(a: JsonValue | undefined, b: JsonValue | undefined, pathTracker: PathTracker): DiffContext;
|
|
12
|
+
getArrayComparator(): IArrayComparator;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=ComparatorOrchestrator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComparatorOrchestrator.d.ts","sourceRoot":"","sources":["../../../src/service/comparator/ComparatorOrchestrator.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EAEtB,KAAK,gBAAgB,EAErB,KAAK,oBAAoB,EAEzB,KAAK,eAAe,EAEpB,KAAK,gBAAgB,EAErB,KAAK,SAAS,EACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGvD,qBAAa,sBAAuB,YAAW,uBAAuB;IAElC,SAAS,CAAC,gBAAgB,EAAE,iBAAiB;IAC9C,SAAS,CAAC,eAAe,EAAE,gBAAgB;IACvC,SAAS,CAAC,mBAAmB,EAAE,oBAAoB;IACxD,SAAS,CAAC,cAAc,EAAE,eAAe;IACxC,SAAS,CAAC,eAAe,EAAE,gBAAgB;gBAJhC,gBAAgB,EAAE,iBAAiB,EACpC,eAAe,EAAE,gBAAgB,EAC7B,mBAAmB,EAAE,oBAAoB,EAC9C,cAAc,EAAE,eAAe,EAC9B,eAAe,EAAE,gBAAgB;IAG5E,WAAW,CACT,CAAC,EAAE,SAAS,GAAG,SAAS,EACxB,CAAC,EAAE,SAAS,GAAG,SAAS,EACxB,WAAW,EAAE,WAAW,GACvB,WAAW;IAcd,kBAAkB,IAAI,gBAAgB;CAGvC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
8
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
9
|
+
};
|
|
10
|
+
import { Inject } from "@wendellhu/redi";
|
|
11
|
+
import { IObjectComparator as IObjectComparatorToken, IArrayComparator as IArrayComparatorToken, IPrimitiveComparator as IPrimitiveComparatorToken, INullComparator as INullComparatorToken, IOtherComparator as IOtherComparatorToken, } from "../../contract/type";
|
|
12
|
+
import { DiffContext } from "../diff/DiffContext";
|
|
13
|
+
import { isJsonObject, isJsonArray, isJsonPrimitive, isJsonNull } from "../../util";
|
|
14
|
+
let ComparatorOrchestrator = class ComparatorOrchestrator {
|
|
15
|
+
objectComparator;
|
|
16
|
+
arrayComparator;
|
|
17
|
+
primitiveComparator;
|
|
18
|
+
nullComparator;
|
|
19
|
+
otherComparator;
|
|
20
|
+
constructor(objectComparator, arrayComparator, primitiveComparator, nullComparator, otherComparator) {
|
|
21
|
+
this.objectComparator = objectComparator;
|
|
22
|
+
this.arrayComparator = arrayComparator;
|
|
23
|
+
this.primitiveComparator = primitiveComparator;
|
|
24
|
+
this.nullComparator = nullComparator;
|
|
25
|
+
this.otherComparator = otherComparator;
|
|
26
|
+
}
|
|
27
|
+
diffElement(a, b, pathTracker) {
|
|
28
|
+
if (isJsonObject(a) && isJsonObject(b)) {
|
|
29
|
+
return this.objectComparator.diff(a, b, pathTracker);
|
|
30
|
+
}
|
|
31
|
+
else if (isJsonArray(a) && isJsonArray(b)) {
|
|
32
|
+
return this.arrayComparator.diffArray(a, b, pathTracker);
|
|
33
|
+
}
|
|
34
|
+
else if (isJsonPrimitive(a) && isJsonPrimitive(b)) {
|
|
35
|
+
return this.primitiveComparator.diff(a, b, pathTracker);
|
|
36
|
+
}
|
|
37
|
+
else if (isJsonNull(a) && isJsonNull(b)) {
|
|
38
|
+
return this.nullComparator.diff(a, b, pathTracker);
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
return this.otherComparator.diff(a, b, pathTracker);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
getArrayComparator() {
|
|
45
|
+
return this.arrayComparator;
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
ComparatorOrchestrator = __decorate([
|
|
49
|
+
__param(0, Inject(IObjectComparatorToken)),
|
|
50
|
+
__param(1, Inject(IArrayComparatorToken)),
|
|
51
|
+
__param(2, Inject(IPrimitiveComparatorToken)),
|
|
52
|
+
__param(3, Inject(INullComparatorToken)),
|
|
53
|
+
__param(4, Inject(IOtherComparatorToken))
|
|
54
|
+
], ComparatorOrchestrator);
|
|
55
|
+
export { ComparatorOrchestrator };
|
|
56
|
+
//# sourceMappingURL=ComparatorOrchestrator.js.map
|