@xyo-network/diviner-jsonpatch-memory 3.0.8 → 3.0.9
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.
|
@@ -2,7 +2,7 @@ import { AbstractDiviner } from '@xyo-network/diviner-abstract';
|
|
|
2
2
|
import type { JsonPatchDivinerParams } from '@xyo-network/diviner-jsonpatch-model';
|
|
3
3
|
import type { DivinerInstance, DivinerModuleEventData } from '@xyo-network/diviner-model';
|
|
4
4
|
import type { Payload, Schema } from '@xyo-network/payload-model';
|
|
5
|
-
import type { Operation } from '
|
|
5
|
+
import type { Operation } from 'fast-json-patch';
|
|
6
6
|
export declare class JsonPatchDiviner<TParams extends JsonPatchDivinerParams = JsonPatchDivinerParams, TIn extends Payload = Payload, TOut extends Payload = Payload, TEventData extends DivinerModuleEventData<DivinerInstance<TParams, TIn, TOut>, TIn, TOut> = DivinerModuleEventData<DivinerInstance<TParams, TIn, TOut>, TIn, TOut>> extends AbstractDiviner<TParams, TIn, TOut, TEventData> {
|
|
7
7
|
static readonly configSchemas: Schema[];
|
|
8
8
|
static readonly defaultConfigSchema: Schema;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../src/Diviner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAA;AAElF,OAAO,KAAK,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AACzF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../src/Diviner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAA;AAElF,OAAO,KAAK,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AACzF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAGhD,qBAAa,gBAAgB,CAC3B,OAAO,SAAS,sBAAsB,GAAG,sBAAsB,EAC/D,GAAG,SAAS,OAAO,GAAG,OAAO,EAC7B,IAAI,SAAS,OAAO,GAAG,OAAO,EAC9B,UAAU,SAAS,sBAAsB,CAAC,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,sBAAsB,CAChH,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,EACnC,GAAG,EACH,IAAI,CACL,CACD,SAAQ,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,CAAC;IACvD,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAyD;IACzG,gBAAyB,mBAAmB,EAAE,MAAM,CAA+B;IAEnF,SAAS,KAAK,UAAU,IAAI,SAAS,SAAS,EAAE,CAE/C;cAEwB,aAAa,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;CAa1E"}
|
package/dist/neutral/index.mjs
CHANGED
|
@@ -6,7 +6,7 @@ import { assertEx } from "@xylabs/assert";
|
|
|
6
6
|
import { exists } from "@xylabs/exists";
|
|
7
7
|
import { AbstractDiviner } from "@xyo-network/diviner-abstract";
|
|
8
8
|
import { JsonPatchDivinerConfigSchema } from "@xyo-network/diviner-jsonpatch-model";
|
|
9
|
-
import { applyPatch } from "
|
|
9
|
+
import { applyPatch } from "fast-json-patch";
|
|
10
10
|
var JsonPatchDiviner = class extends AbstractDiviner {
|
|
11
11
|
static {
|
|
12
12
|
__name(this, "JsonPatchDiviner");
|
|
@@ -22,10 +22,8 @@ var JsonPatchDiviner = class extends AbstractDiviner {
|
|
|
22
22
|
async divineHandler(payloads) {
|
|
23
23
|
const results = payloads?.map((payload) => {
|
|
24
24
|
try {
|
|
25
|
-
const result = applyPatch(payload, this.operations,
|
|
26
|
-
|
|
27
|
-
});
|
|
28
|
-
return result.res?.[0]?.doc;
|
|
25
|
+
const result = applyPatch(payload, this.operations, false, false);
|
|
26
|
+
return result[0].newDocument;
|
|
29
27
|
} catch {
|
|
30
28
|
return;
|
|
31
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/Diviner.ts"],"sourcesContent":["import { assertEx } from '@xylabs/assert'\nimport { exists } from '@xylabs/exists'\nimport { AbstractDiviner } from '@xyo-network/diviner-abstract'\nimport type { JsonPatchDivinerParams } from '@xyo-network/diviner-jsonpatch-model'\nimport { JsonPatchDivinerConfigSchema } from '@xyo-network/diviner-jsonpatch-model'\nimport type { DivinerInstance, DivinerModuleEventData } from '@xyo-network/diviner-model'\nimport type { Payload, Schema } from '@xyo-network/payload-model'\
|
|
1
|
+
{"version":3,"sources":["../../src/Diviner.ts"],"sourcesContent":["import { assertEx } from '@xylabs/assert'\nimport { exists } from '@xylabs/exists'\nimport { AbstractDiviner } from '@xyo-network/diviner-abstract'\nimport type { JsonPatchDivinerParams } from '@xyo-network/diviner-jsonpatch-model'\nimport { JsonPatchDivinerConfigSchema } from '@xyo-network/diviner-jsonpatch-model'\nimport type { DivinerInstance, DivinerModuleEventData } from '@xyo-network/diviner-model'\nimport type { Payload, Schema } from '@xyo-network/payload-model'\nimport type { Operation } from 'fast-json-patch'\nimport { applyPatch } from 'fast-json-patch'\n\nexport class JsonPatchDiviner<\n TParams extends JsonPatchDivinerParams = JsonPatchDivinerParams,\n TIn extends Payload = Payload,\n TOut extends Payload = Payload,\n TEventData extends DivinerModuleEventData<DivinerInstance<TParams, TIn, TOut>, TIn, TOut> = DivinerModuleEventData<\n DivinerInstance<TParams, TIn, TOut>,\n TIn,\n TOut\n >,\n> extends AbstractDiviner<TParams, TIn, TOut, TEventData> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, JsonPatchDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = JsonPatchDivinerConfigSchema\n\n protected get operations(): readonly Operation[] {\n return assertEx(this.config?.operations, () => 'JsonPatchDiviner: invalid operations')\n }\n\n protected override async divineHandler(payloads?: TIn[]): Promise<TOut[]> {\n const results = payloads\n ?.map((payload) => {\n try {\n const result = applyPatch(payload, this.operations, false, false)\n return result[0].newDocument as unknown as TOut\n } catch {\n return\n }\n })\n .filter(exists)\n return await Promise.resolve(results ?? [])\n }\n}\n"],"mappings":";;;;AAAA,SAASA,gBAAgB;AACzB,SAASC,cAAc;AACvB,SAASC,uBAAuB;AAEhC,SAASC,oCAAoC;AAI7C,SAASC,kBAAkB;AAEpB,IAAMC,mBAAN,cASGC,gBAAAA;EAnBV,OAmBUA;;;EACR,OAAyBC,gBAA0B;OAAI,MAAMA;IAAeC;;EAC5E,OAAyBC,sBAA8BD;EAEvD,IAAcE,aAAmC;AAC/C,WAAOC,SAAS,KAAKC,QAAQF,YAAY,MAAM,sCAAA;EACjD;EAEA,MAAyBG,cAAcC,UAAmC;AACxE,UAAMC,UAAUD,UACZE,IAAI,CAACC,YAAAA;AACL,UAAI;AACF,cAAMC,SAASC,WAAWF,SAAS,KAAKP,YAAY,OAAO,KAAA;AAC3D,eAAOQ,OAAO,CAAA,EAAGE;MACnB,QAAQ;AACN;MACF;IACF,CAAA,EACCC,OAAOC,MAAAA;AACV,WAAO,MAAMC,QAAQC,QAAQT,WAAW,CAAA,CAAE;EAC5C;AACF;","names":["assertEx","exists","AbstractDiviner","JsonPatchDivinerConfigSchema","applyPatch","JsonPatchDiviner","AbstractDiviner","configSchemas","JsonPatchDivinerConfigSchema","defaultConfigSchema","operations","assertEx","config","divineHandler","payloads","results","map","payload","result","applyPatch","newDocument","filter","exists","Promise","resolve"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/diviner-jsonpatch-memory",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.9",
|
|
4
4
|
"description": "Primary SDK for using XYO Protocol 2.0",
|
|
5
5
|
"homepage": "https://xyo.network",
|
|
6
6
|
"bugs": {
|
|
@@ -31,17 +31,17 @@
|
|
|
31
31
|
"dependencies": {
|
|
32
32
|
"@xylabs/assert": "^4.0.3",
|
|
33
33
|
"@xylabs/exists": "^4.0.3",
|
|
34
|
-
"@xyo-network/diviner-abstract": "^3.0.
|
|
35
|
-
"@xyo-network/diviner-jsonpatch-model": "^3.0.
|
|
36
|
-
"@xyo-network/diviner-model": "^3.0.
|
|
37
|
-
"@xyo-network/payload-model": "^3.0.
|
|
38
|
-
"json-
|
|
34
|
+
"@xyo-network/diviner-abstract": "^3.0.9",
|
|
35
|
+
"@xyo-network/diviner-jsonpatch-model": "^3.0.9",
|
|
36
|
+
"@xyo-network/diviner-model": "^3.0.9",
|
|
37
|
+
"@xyo-network/payload-model": "^3.0.9",
|
|
38
|
+
"fast-json-patch": "^3.1.1",
|
|
39
39
|
"tslib": "^2.7.0"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
42
|
"@xylabs/ts-scripts-yarn3": "^4.0.7",
|
|
43
43
|
"@xylabs/tsconfig": "^4.0.7",
|
|
44
|
-
"@xyo-network/account": "^3.0.
|
|
44
|
+
"@xyo-network/account": "^3.0.9",
|
|
45
45
|
"typescript": "^5.5.4"
|
|
46
46
|
},
|
|
47
47
|
"publishConfig": {
|
package/src/Diviner.ts
CHANGED
|
@@ -5,10 +5,8 @@ import type { JsonPatchDivinerParams } from '@xyo-network/diviner-jsonpatch-mode
|
|
|
5
5
|
import { JsonPatchDivinerConfigSchema } from '@xyo-network/diviner-jsonpatch-model'
|
|
6
6
|
import type { DivinerInstance, DivinerModuleEventData } from '@xyo-network/diviner-model'
|
|
7
7
|
import type { Payload, Schema } from '@xyo-network/payload-model'
|
|
8
|
-
|
|
9
|
-
import
|
|
10
|
-
// eslint-disable-next-line import-x/no-internal-modules
|
|
11
|
-
import { applyPatch } from 'json-joy-16-19-0/lib/json-patch'
|
|
8
|
+
import type { Operation } from 'fast-json-patch'
|
|
9
|
+
import { applyPatch } from 'fast-json-patch'
|
|
12
10
|
|
|
13
11
|
export class JsonPatchDiviner<
|
|
14
12
|
TParams extends JsonPatchDivinerParams = JsonPatchDivinerParams,
|
|
@@ -31,8 +29,8 @@ export class JsonPatchDiviner<
|
|
|
31
29
|
const results = payloads
|
|
32
30
|
?.map((payload) => {
|
|
33
31
|
try {
|
|
34
|
-
const result = applyPatch(payload, this.operations,
|
|
35
|
-
return result
|
|
32
|
+
const result = applyPatch(payload, this.operations, false, false)
|
|
33
|
+
return result[0].newDocument as unknown as TOut
|
|
36
34
|
} catch {
|
|
37
35
|
return
|
|
38
36
|
}
|