@decaf-ts/for-fabric 0.1.61 → 0.1.62
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/dist/for-fabric.cjs +1 -1
- package/dist/for-fabric.cjs.map +1 -1
- package/dist/for-fabric.js +1 -1
- package/dist/for-fabric.js.map +1 -1
- package/lib/cli-module.cjs +101 -10
- package/lib/cli-module.js.map +1 -1
- package/lib/client/FabricClientDispatch.cjs +1 -0
- package/lib/client/FabricClientDispatch.d.ts +1 -1
- package/lib/client/FabricClientDispatch.js.map +1 -1
- package/lib/client/collections/generation.cjs +75 -107
- package/lib/client/collections/generation.d.ts +24 -5
- package/lib/client/collections/generation.js.map +1 -1
- package/lib/client/indexes/generation.cjs +9 -6
- package/lib/client/indexes/generation.d.ts +1 -1
- package/lib/client/indexes/generation.js.map +1 -1
- package/lib/contract/OtherProductContract.cjs +30 -0
- package/lib/contract/OtherProductContract.d.ts +5 -0
- package/lib/contract/OtherProductContract.js.map +1 -0
- package/lib/contract/OtherProductSharedContract.cjs +30 -0
- package/lib/contract/OtherProductSharedContract.d.ts +5 -0
- package/lib/contract/OtherProductSharedContract.js.map +1 -0
- package/lib/contract/index.cjs +2 -0
- package/lib/contract/index.js.map +1 -1
- package/lib/contract/models/Audit.cjs +20 -2
- package/lib/contract/models/Audit.d.ts +2 -1
- package/lib/contract/models/Audit.js.map +1 -1
- package/lib/contract/models/Batch.cjs +2 -2
- package/lib/contract/models/Batch.js.map +1 -1
- package/lib/contract/models/Leaflet.cjs +2 -2
- package/lib/contract/models/Leaflet.js.map +1 -1
- package/lib/contract/models/OtherProduct.cjs +74 -0
- package/lib/contract/models/OtherProduct.d.ts +12 -0
- package/lib/contract/models/OtherProduct.js.map +1 -0
- package/lib/contract/models/OtherProductShared.cjs +75 -0
- package/lib/contract/models/OtherProductShared.d.ts +12 -0
- package/lib/contract/models/OtherProductShared.js.map +1 -0
- package/lib/contract/models/Product.cjs +4 -4
- package/lib/contract/models/Product.js.map +1 -1
- package/lib/contract/models/decorators.cjs +15 -8
- package/lib/contract/models/decorators.d.ts +8 -5
- package/lib/contract/models/decorators.js.map +1 -1
- package/lib/contracts/FabricConstruction.cjs +1 -1
- package/lib/contracts/FabricConstruction.js.map +1 -1
- package/lib/contracts/FabricContractRepository.d.ts +3 -1
- package/lib/contracts/FabricContractSequence.cjs +4 -4
- package/lib/contracts/FabricContractSequence.js.map +1 -1
- package/lib/contracts/index.cjs +7 -6
- package/lib/contracts/index.d.ts +1 -0
- package/lib/contracts/index.js.map +1 -1
- package/lib/contracts/overrides.cjs +8 -0
- package/lib/contracts/overrides.d.ts +1 -0
- package/lib/contracts/overrides.js.map +1 -0
- package/lib/contracts/types.d.ts +1 -0
- package/lib/contracts/uuid.cjs +75 -0
- package/lib/contracts/uuid.d.ts +2 -0
- package/lib/contracts/uuid.js.map +1 -0
- package/lib/esm/cli-module.js +102 -11
- package/lib/esm/cli-module.js.map +1 -1
- package/lib/esm/client/FabricClientDispatch.d.ts +1 -1
- package/lib/esm/client/FabricClientDispatch.js +1 -0
- package/lib/esm/client/FabricClientDispatch.js.map +1 -1
- package/lib/esm/client/collections/generation.d.ts +24 -5
- package/lib/esm/client/collections/generation.js +70 -103
- package/lib/esm/client/collections/generation.js.map +1 -1
- package/lib/esm/client/indexes/generation.d.ts +1 -1
- package/lib/esm/client/indexes/generation.js +9 -6
- package/lib/esm/client/indexes/generation.js.map +1 -1
- package/lib/esm/contract/OtherProductContract.d.ts +5 -0
- package/lib/esm/contract/OtherProductContract.js +27 -0
- package/lib/esm/contract/OtherProductContract.js.map +1 -0
- package/lib/esm/contract/OtherProductSharedContract.d.ts +5 -0
- package/lib/esm/contract/OtherProductSharedContract.js +27 -0
- package/lib/esm/contract/OtherProductSharedContract.js.map +1 -0
- package/lib/esm/contract/index.js +2 -0
- package/lib/esm/contract/index.js.map +1 -1
- package/lib/esm/contract/models/Audit.d.ts +2 -1
- package/lib/esm/contract/models/Audit.js +22 -4
- package/lib/esm/contract/models/Audit.js.map +1 -1
- package/lib/esm/contract/models/Batch.js +2 -2
- package/lib/esm/contract/models/Batch.js.map +1 -1
- package/lib/esm/contract/models/Leaflet.js +2 -2
- package/lib/esm/contract/models/Leaflet.js.map +1 -1
- package/lib/esm/contract/models/OtherProduct.d.ts +12 -0
- package/lib/esm/contract/models/OtherProduct.js +71 -0
- package/lib/esm/contract/models/OtherProduct.js.map +1 -0
- package/lib/esm/contract/models/OtherProductShared.d.ts +12 -0
- package/lib/esm/contract/models/OtherProductShared.js +72 -0
- package/lib/esm/contract/models/OtherProductShared.js.map +1 -0
- package/lib/esm/contract/models/Product.js +4 -4
- package/lib/esm/contract/models/Product.js.map +1 -1
- package/lib/esm/contract/models/decorators.d.ts +8 -5
- package/lib/esm/contract/models/decorators.js +15 -8
- package/lib/esm/contract/models/decorators.js.map +1 -1
- package/lib/esm/contracts/FabricConstruction.js +1 -1
- package/lib/esm/contracts/FabricConstruction.js.map +1 -1
- package/lib/esm/contracts/FabricContractRepository.d.ts +3 -1
- package/lib/esm/contracts/FabricContractSequence.js +4 -4
- package/lib/esm/contracts/FabricContractSequence.js.map +1 -1
- package/lib/esm/contracts/index.d.ts +1 -0
- package/lib/esm/contracts/index.js +1 -0
- package/lib/esm/contracts/index.js.map +1 -1
- package/lib/esm/contracts/overrides.d.ts +1 -0
- package/lib/esm/contracts/overrides.js +6 -0
- package/lib/esm/contracts/overrides.js.map +1 -0
- package/lib/esm/contracts/types.d.ts +1 -0
- package/lib/esm/contracts/uuid.d.ts +2 -0
- package/lib/esm/contracts/uuid.js +38 -0
- package/lib/esm/contracts/uuid.js.map +1 -0
- package/lib/esm/shared/constants.d.ts +4 -3
- package/lib/esm/shared/constants.js +3 -2
- package/lib/esm/shared/constants.js.map +1 -1
- package/lib/esm/shared/decorators.d.ts +15 -2
- package/lib/esm/shared/decorators.js +114 -69
- package/lib/esm/shared/decorators.js.map +1 -1
- package/lib/esm/shared/overrides/Model.d.ts +7 -0
- package/lib/esm/shared/overrides/overrides.js +28 -15
- package/lib/esm/shared/overrides/overrides.js.map +1 -1
- package/lib/esm/version.d.ts +1 -1
- package/lib/esm/version.js +1 -1
- package/lib/shared/constants.cjs +3 -2
- package/lib/shared/constants.d.ts +4 -3
- package/lib/shared/constants.js.map +1 -1
- package/lib/shared/decorators.cjs +118 -68
- package/lib/shared/decorators.d.ts +15 -2
- package/lib/shared/decorators.js.map +1 -1
- package/lib/shared/overrides/Model.d.ts +7 -0
- package/lib/shared/overrides/overrides.cjs +28 -15
- package/lib/shared/overrides/overrides.js.map +1 -1
- package/lib/version.cjs +1 -1
- package/lib/version.d.ts +1 -1
- package/package.json +2 -1
|
@@ -133,7 +133,7 @@ export async function oneToOneOnUpdate(context, data, key, model) {
|
|
|
133
133
|
model[key] = propertyValue;
|
|
134
134
|
return;
|
|
135
135
|
}
|
|
136
|
-
const updated = await createOrUpdate(model[key], context, this.adapter.alias);
|
|
136
|
+
const updated = await createOrUpdate(model[key], context, this.adapter.alias, this);
|
|
137
137
|
const pk = Model.pk(updated);
|
|
138
138
|
await cacheModelForPopulate(context, model, key, updated[pk], updated);
|
|
139
139
|
model[key] = updated[pk];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FabricConstruction.js","sourceRoot":"","sources":["../../../src/contracts/FabricConstruction.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"FabricConstruction.js","sourceRoot":"","sources":["../../../src/contracts/FabricConstruction.ts"],"names":[],"mappings":"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"}
|
|
@@ -70,7 +70,9 @@ import { FabricContractAdapter } from "./ContractAdapter";
|
|
|
70
70
|
*/
|
|
71
71
|
export declare class FabricContractRepository<M extends Model> extends Repository<M, FabricContractAdapter> {
|
|
72
72
|
protected trackedEvents?: (OperationKeys | BulkCrudOperationKeys | string)[] | undefined;
|
|
73
|
-
protected _overrides: Partial<import("@decaf-ts/db-decorators").ContextFlags<any>
|
|
73
|
+
protected _overrides: Partial<(import("@decaf-ts/db-decorators").ContextFlags<any> & Pick<import("@decaf-ts/db-decorators").RepositoryFlags<any>, "operation" | "correlationId" | "ignoreDevSafeGuards"> & {
|
|
74
|
+
pending?: Record<string, string[]>;
|
|
75
|
+
}) | import("@decaf-ts/core").AdapterFlags> & {
|
|
74
76
|
ignoreValidation: boolean;
|
|
75
77
|
ignoreHandlers: boolean;
|
|
76
78
|
allowRawStatements: boolean;
|
|
@@ -133,7 +133,7 @@ export class FabricContractSequence extends Sequence {
|
|
|
133
133
|
throw e;
|
|
134
134
|
}
|
|
135
135
|
};
|
|
136
|
-
const incrementSerial = (base) => {
|
|
136
|
+
const incrementSerial = async (base) => {
|
|
137
137
|
switch (typeName) {
|
|
138
138
|
case Number.name:
|
|
139
139
|
return this.parse(base) + toIncrementBy;
|
|
@@ -142,14 +142,14 @@ export class FabricContractSequence extends Sequence {
|
|
|
142
142
|
case String.name:
|
|
143
143
|
return this.parse(base);
|
|
144
144
|
case "serial":
|
|
145
|
-
return Serial.instance.generate(base);
|
|
145
|
+
return await Promise.resolve(Serial.instance.generate(base));
|
|
146
146
|
default:
|
|
147
147
|
throw new InternalError("Should never happen");
|
|
148
148
|
}
|
|
149
149
|
};
|
|
150
150
|
if (typeName === "uuid") {
|
|
151
151
|
while (true) {
|
|
152
|
-
const next = UUID.instance.generate(currentValue);
|
|
152
|
+
const next = await UUID.instance.generate(currentValue);
|
|
153
153
|
try {
|
|
154
154
|
const result = await performUpsert(next);
|
|
155
155
|
log.debug(`Sequence uuid increment ${name} current=${currentValue} next=${next}`);
|
|
@@ -162,7 +162,7 @@ export class FabricContractSequence extends Sequence {
|
|
|
162
162
|
}
|
|
163
163
|
}
|
|
164
164
|
}
|
|
165
|
-
const next = incrementSerial(currentValue);
|
|
165
|
+
const next = await incrementSerial(currentValue);
|
|
166
166
|
const seq = await performUpsert(next);
|
|
167
167
|
log.debug(`Sequence.increment ${name} current=${currentValue} next=${next}`);
|
|
168
168
|
return seq.current;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FabricContractSequence.js","sourceRoot":"","sources":["../../../src/contracts/FabricContractSequence.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,aAAa,EACb,aAAa,EACb,aAAa,GACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAIL,QAAQ,EACR,aAAa,EAEb,MAAM,
|
|
1
|
+
{"version":3,"file":"FabricContractSequence.js","sourceRoot":"","sources":["../../../src/contracts/FabricContractSequence.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/contracts/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/contracts/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,+BAA4B,CAAC,uBAAuB;AACpD,gCAAuB;AACvB,iCAAwB;AACxB,qCAAkC;AAClC,qCAAkC;AAClC,6CAA0C;AAC1C,8CAA2C;AAC3C,+DAA4D;AAC5D,6BAA0B;AAC1B,2BAAwB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"overrides.js","sourceRoot":"","sources":["../../../src/contracts/overrides.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,kBAAe;AAEtC,IAAI,CAAC,SAAS,CAAC,QAAQ,GAAG,SAAS,QAAQ,CAAC,IAAY;IACtD,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
const encoder = new TextEncoder();
|
|
2
|
+
export function bytesToUuidV5Style(bytes16) {
|
|
3
|
+
const b = bytes16.slice(0, 16);
|
|
4
|
+
// Set version to 5 (0101xxxx) to signal deterministic hashing
|
|
5
|
+
b[6] = (b[6] & 0x0f) | 0x50;
|
|
6
|
+
// Set variant to RFC 4122 (10xxxxxx)
|
|
7
|
+
b[8] = (b[8] & 0x3f) | 0x80;
|
|
8
|
+
const hex = [...b].map((x) => x.toString(16).padStart(2, "0")).join("");
|
|
9
|
+
return [
|
|
10
|
+
hex.slice(0, 8),
|
|
11
|
+
hex.slice(8, 12),
|
|
12
|
+
hex.slice(12, 16),
|
|
13
|
+
hex.slice(16, 20),
|
|
14
|
+
hex.slice(20, 32),
|
|
15
|
+
].join("-");
|
|
16
|
+
}
|
|
17
|
+
export async function uuidFromSeed(seed) {
|
|
18
|
+
// Browser / any runtime with WebCrypto
|
|
19
|
+
if (globalThis.crypto?.subtle) {
|
|
20
|
+
const data = encoder.encode(seed);
|
|
21
|
+
const digest = await globalThis.crypto.subtle.digest("SHA-256", data);
|
|
22
|
+
return bytesToUuidV5Style(new Uint8Array(digest).slice(0, 16));
|
|
23
|
+
}
|
|
24
|
+
// Node fallback: dynamic import avoids bundling node:crypto into browser
|
|
25
|
+
const nodeCrypto = await import("crypto");
|
|
26
|
+
const { createHash, webcrypto } = nodeCrypto;
|
|
27
|
+
if (webcrypto?.subtle) {
|
|
28
|
+
const data = encoder.encode(seed);
|
|
29
|
+
const digest = await webcrypto.subtle.digest("SHA-256", data);
|
|
30
|
+
return bytesToUuidV5Style(new Uint8Array(digest).slice(0, 16));
|
|
31
|
+
}
|
|
32
|
+
const hex = createHash("sha256").update(seed).digest("hex");
|
|
33
|
+
const bytes = new Uint8Array(16);
|
|
34
|
+
for (let i = 0; i < 16; i++)
|
|
35
|
+
bytes[i] = parseInt(hex.slice(i * 2, i * 2 + 2), 16);
|
|
36
|
+
return bytesToUuidV5Style(bytes);
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=uuid.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uuid.js","sourceRoot":"","sources":["../../../src/contracts/uuid.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;AAElC,MAAM,UAAU,kBAAkB,CAAC,OAAmB;IACpD,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAE/B,8DAA8D;IAC9D,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAE5B,qCAAqC;IACrC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAE5B,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAExE,OAAO;QACL,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QACf,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QAChB,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC;QACjB,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC;QACjB,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC;KAClB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAY;IAC7C,uCAAuC;IACvC,IAAI,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACtE,OAAO,kBAAkB,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,yEAAyE;IACzE,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC;IAE7C,IAAI,SAAS,EAAE,MAAM,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC9D,OAAO,kBAAkB,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;QACzB,KAAK,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACvD,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC"}
|
|
@@ -10,9 +10,10 @@ export declare enum FabricModelKeys {
|
|
|
10
10
|
PRIVATE = "private",
|
|
11
11
|
SHARED = "shared",
|
|
12
12
|
/** Namespace prefix used for Fabric-specific metadata keys */
|
|
13
|
-
FABRIC = "fabric
|
|
14
|
-
|
|
15
|
-
TRANSACTION_ID = "transaction-id"
|
|
13
|
+
FABRIC = "fabric",
|
|
14
|
+
OWNED_BY = "owned-by",
|
|
15
|
+
TRANSACTION_ID = "transaction-id",
|
|
16
|
+
MIRROR = "mirror"
|
|
16
17
|
}
|
|
17
18
|
/**
|
|
18
19
|
* @description Supported identity types for Fabric credentials
|
|
@@ -11,9 +11,10 @@ export var FabricModelKeys;
|
|
|
11
11
|
FabricModelKeys["PRIVATE"] = "private";
|
|
12
12
|
FabricModelKeys["SHARED"] = "shared";
|
|
13
13
|
/** Namespace prefix used for Fabric-specific metadata keys */
|
|
14
|
-
FabricModelKeys["FABRIC"] = "fabric
|
|
15
|
-
FabricModelKeys["
|
|
14
|
+
FabricModelKeys["FABRIC"] = "fabric";
|
|
15
|
+
FabricModelKeys["OWNED_BY"] = "owned-by";
|
|
16
16
|
FabricModelKeys["TRANSACTION_ID"] = "transaction-id";
|
|
17
|
+
FabricModelKeys["MIRROR"] = "mirror";
|
|
17
18
|
})(FabricModelKeys || (FabricModelKeys = {}));
|
|
18
19
|
/**
|
|
19
20
|
* @description Supported identity types for Fabric credentials
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/shared/constants.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/shared/constants.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAN,IAAY,eASX;AATD,WAAY,eAAe;IACzB,0FAA0F;IAC1F,sCAAmB,CAAA;IACnB,oCAAiB,CAAA;IACjB,8DAA8D;IAC9D,oCAAiB,CAAA;IACjB,wCAAqB,CAAA;IACrB,oDAAiC,CAAA;IACjC,oCAAiB,CAAA;AACnB,CAAC,EATW,eAAe,KAAf,eAAe,QAS1B;AACD;;;;;;GAMG;AACH,MAAM,CAAN,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,gEAAgE;IAChE,8BAAc,CAAA;AAChB,CAAC,EAHW,YAAY,KAAZ,YAAY,QAGvB;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,YAAY,CAAC"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { Repo, Context, Repository, ContextOf } from "@decaf-ts/core";
|
|
2
2
|
import { Model } from "@decaf-ts/decorator-validation";
|
|
3
|
+
import { Constructor } from "@decaf-ts/decoration";
|
|
3
4
|
import { FabricFlags } from "./types";
|
|
5
|
+
import { FabricContractFlags } from "../contracts/types";
|
|
6
|
+
import "../shared/overrides";
|
|
4
7
|
/**
|
|
5
8
|
* Decorator for marking methods that require ownership authorization.
|
|
6
9
|
* Checks the owner of the token before allowing the method to be executed.
|
|
@@ -22,8 +25,18 @@ export declare function ownedByOnCreate<M extends Model<boolean>, R extends Repo
|
|
|
22
25
|
export declare function ownedBy(): (target: any, propertyKey?: any, descriptor?: TypedPropertyDescriptor<any>) => any;
|
|
23
26
|
export declare function transactionIdOnCreate<M extends Model<boolean>, R extends Repo<M>, V>(this: R, context: ContextOf<R>, data: V, key: keyof M, model: M): Promise<void>;
|
|
24
27
|
export declare function transactionId(): (target: any, propertyKey?: any, descriptor?: TypedPropertyDescriptor<any>) => any;
|
|
25
|
-
export
|
|
26
|
-
export type
|
|
28
|
+
export type MirrorCondition = (msp: string) => boolean;
|
|
29
|
+
export type MirrorMetadata = {
|
|
30
|
+
condition: MirrorCondition;
|
|
31
|
+
resolver: CollectionResolver | string;
|
|
32
|
+
};
|
|
33
|
+
export declare function evalMirrorMetadata<M extends Model>(model: M, resolver: undefined | string | CollectionResolver, ctx: Context<FabricContractFlags>): Promise<string>;
|
|
34
|
+
export declare function createMirrorHandler<M extends Model, R extends Repository<M, any>>(this: R, context: Context<FabricContractFlags>, data: MirrorMetadata, key: keyof M, model: M): Promise<void>;
|
|
35
|
+
export declare function updateMirrorHandler<M extends Model, R extends Repository<M, any>>(this: R, context: Context<FabricContractFlags>, data: MirrorMetadata, key: keyof M, model: M): Promise<void>;
|
|
36
|
+
export declare function deleteMirrorHandler<M extends Model, R extends Repository<M, any>>(this: R, context: Context<FabricContractFlags>, data: MirrorMetadata, key: keyof M, model: M): Promise<void>;
|
|
37
|
+
export declare function mirror(collection: CollectionResolver | string, condition?: MirrorCondition): (target: any, propertyKey?: any, descriptor?: TypedPropertyDescriptor<any>) => any;
|
|
38
|
+
export type CollectionResolver = <M extends Model>(model: M | Constructor<M>, msp?: string, ...args: any[]) => string;
|
|
39
|
+
export declare const ModelCollection: CollectionResolver;
|
|
27
40
|
export declare const ImplicitPrivateCollection: CollectionResolver;
|
|
28
41
|
export type SegregatedDataMetadata = {
|
|
29
42
|
collections: string | CollectionResolver;
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { AuthorizationError, UnsupportedError, } from "@decaf-ts/core";
|
|
2
|
-
import { InternalError, NotFoundError, onCreate, onDelete, onRead, onUpdate, readonly, transient, } from "@decaf-ts/db-decorators";
|
|
3
|
-
import { required } from "@decaf-ts/decorator-validation";
|
|
2
|
+
import { afterCreate, afterDelete, afterUpdate, InternalError, NotFoundError, onCreate, onDelete, onRead, onUpdate, readonly, transient, ValidationError, } from "@decaf-ts/db-decorators";
|
|
3
|
+
import { Model, required } from "@decaf-ts/decorator-validation";
|
|
4
4
|
import { FabricModelKeys } from "./constants.js";
|
|
5
|
-
import { apply, Decoration, metadata, Metadata, propMetadata, } from "@decaf-ts/decoration";
|
|
5
|
+
import { apply, Decoration, metadata, Metadata, prop, propMetadata, } from "@decaf-ts/decoration";
|
|
6
|
+
import { toPascalCase } from "@decaf-ts/logging";
|
|
7
|
+
import "./overrides/index.js";
|
|
6
8
|
/**
|
|
7
9
|
* Decorator for marking methods that require ownership authorization.
|
|
8
10
|
* Checks the owner of the token before allowing the method to be executed.
|
|
@@ -56,13 +58,12 @@ export async function ownedByOnCreate(context, data, key, model) {
|
|
|
56
58
|
setOwnedByKeyValue(model, key, owner);
|
|
57
59
|
}
|
|
58
60
|
export function ownedBy() {
|
|
59
|
-
const key = getFabricModelKey(FabricModelKeys.OWNEDBY);
|
|
60
61
|
function ownedBy() {
|
|
61
62
|
return function (obj, attribute) {
|
|
62
|
-
return apply(required(), readonly(), onCreate(ownedByOnCreate), propMetadata(
|
|
63
|
+
return apply(required(), readonly(), onCreate(ownedByOnCreate), propMetadata(Metadata.key(FabricModelKeys.FABRIC, FabricModelKeys.OWNED_BY), attribute))(obj, attribute);
|
|
63
64
|
};
|
|
64
65
|
}
|
|
65
|
-
return Decoration.for(
|
|
66
|
+
return Decoration.for(FabricModelKeys.OWNED_BY)
|
|
66
67
|
.define({
|
|
67
68
|
decorator: ownedBy,
|
|
68
69
|
args: [],
|
|
@@ -86,23 +87,94 @@ export function transactionId() {
|
|
|
86
87
|
})
|
|
87
88
|
.apply();
|
|
88
89
|
}
|
|
89
|
-
export function
|
|
90
|
-
|
|
90
|
+
export async function evalMirrorMetadata(model, resolver, ctx) {
|
|
91
|
+
let collection = resolver;
|
|
92
|
+
if (typeof collection !== "string") {
|
|
93
|
+
try {
|
|
94
|
+
const owner = Model.ownerOf(model) || ctx.get("stub").getCreator().toString();
|
|
95
|
+
if (resolver && typeof resolver === "function")
|
|
96
|
+
collection = await resolver(model, owner, ctx);
|
|
97
|
+
}
|
|
98
|
+
catch (e) {
|
|
99
|
+
throw new InternalError(`Failed to resolve collection mirror name: ${e}`);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
if (!collection || typeof collection !== "string")
|
|
103
|
+
throw new InternalError(`No collection found model ${model.constructor.name}`);
|
|
104
|
+
return collection;
|
|
105
|
+
}
|
|
106
|
+
export async function createMirrorHandler(context, data, key, model) {
|
|
107
|
+
const collection = await evalMirrorMetadata(model, data.resolver, context);
|
|
108
|
+
const repo = this.override(Object.assign({}, this._overrides, {
|
|
109
|
+
segregate: collection,
|
|
110
|
+
ignoreValidation: true,
|
|
111
|
+
ignoreHandlers: true,
|
|
112
|
+
}));
|
|
113
|
+
const mirror = await repo.create(model, context);
|
|
114
|
+
context.logger.info(`Mirror for ${Model.tableName(this.class)} created with ${Model.pk(model)}: ${mirror[Model.pk(model)]}`);
|
|
115
|
+
}
|
|
116
|
+
export async function updateMirrorHandler(context, data, key, model) {
|
|
117
|
+
const collection = await evalMirrorMetadata(model, data.resolver, context);
|
|
118
|
+
const repo = this.override(Object.assign({}, this._overrides, {
|
|
119
|
+
segregate: collection,
|
|
120
|
+
ignoreValidation: true,
|
|
121
|
+
ignoreHandlers: true,
|
|
122
|
+
}));
|
|
123
|
+
const mirror = await repo.update(model, context);
|
|
124
|
+
context.logger.info(`Mirror for ${Model.tableName(this.class)} updated with ${Model.pk(model)}: ${mirror[Model.pk(model)]}`);
|
|
125
|
+
}
|
|
126
|
+
export async function deleteMirrorHandler(context, data, key, model) {
|
|
127
|
+
const collection = await evalMirrorMetadata(model, data.resolver, context);
|
|
128
|
+
const repo = this.override(Object.assign({}, this._overrides, {
|
|
129
|
+
segregate: collection,
|
|
130
|
+
ignoreValidation: true,
|
|
131
|
+
ignoreHandlers: true,
|
|
132
|
+
}));
|
|
133
|
+
const mirror = await repo.delete(Model.pk(model), context);
|
|
134
|
+
context.logger.info(`Mirror for ${Model.tableName(this.class)} deleted with ${Model.pk(model)}: ${mirror[Model.pk(model)]}`);
|
|
135
|
+
}
|
|
136
|
+
export function mirror(collection, condition) {
|
|
137
|
+
function mirror(resolver, condition) {
|
|
138
|
+
const meta = {
|
|
139
|
+
condition: condition,
|
|
140
|
+
resolver: resolver,
|
|
141
|
+
};
|
|
142
|
+
return apply(metadata(Metadata.key(FabricModelKeys.FABRIC, FabricModelKeys.MIRROR), meta), privateData(collection), afterCreate(createMirrorHandler, meta, { priority: 95 }), afterUpdate(updateMirrorHandler, meta, { priority: 95 }), afterDelete(deleteMirrorHandler, meta, { priority: 95 }));
|
|
143
|
+
}
|
|
144
|
+
return Decoration.for(FabricModelKeys.MIRROR)
|
|
145
|
+
.define({
|
|
146
|
+
decorator: mirror,
|
|
147
|
+
args: [collection, condition],
|
|
148
|
+
})
|
|
149
|
+
.apply();
|
|
91
150
|
}
|
|
92
|
-
export const
|
|
93
|
-
|
|
151
|
+
export const ModelCollection = (model, mspId) => {
|
|
152
|
+
const orgName = mspId || (typeof model !== "function" ? Model.ownerOf(model) : undefined);
|
|
153
|
+
const constr = typeof model === "function" ? model : model.constructor;
|
|
154
|
+
if (!orgName)
|
|
155
|
+
throw new InternalError(`Model ${constr.name} is not owned by any organization. did you use @ownedBy() (or provide the name)?`);
|
|
156
|
+
return `${toPascalCase(constr.name)}${mspId ? toPascalCase(mspId) : ""}`;
|
|
157
|
+
};
|
|
158
|
+
export const ImplicitPrivateCollection = (model, mspId) => {
|
|
159
|
+
const orgName = mspId || (typeof model !== "function" ? Model.ownerOf(model) : undefined);
|
|
160
|
+
if (!orgName)
|
|
161
|
+
throw new InternalError(`Model ${model.constructor.name} is not owned by any organization. did you use @ownedBy() (or provide the name)?`);
|
|
162
|
+
return `__${toPascalCase(orgName)}PrivateCollection`;
|
|
94
163
|
};
|
|
95
164
|
export async function segregatedDataOnCreate(context, data, keys, model) {
|
|
96
165
|
if (keys.length !== data.length)
|
|
97
166
|
throw new InternalError(`Segregated data keys and metadata length mismatch`);
|
|
167
|
+
const msp = Model.ownerOf(model);
|
|
168
|
+
if (!msp)
|
|
169
|
+
throw new ValidationError(`There's no assigned organization for model ${model.constructor.name}`);
|
|
98
170
|
const collectionResolver = data[0].collections;
|
|
99
171
|
const collection = typeof collectionResolver === "string"
|
|
100
172
|
? collectionResolver
|
|
101
|
-
: collectionResolver(model);
|
|
173
|
+
: collectionResolver(model, msp, context);
|
|
102
174
|
const rebuilt = keys.reduce((acc, k, i) => {
|
|
103
175
|
const c = typeof data[i].collections === "string"
|
|
104
176
|
? data[i].collections
|
|
105
|
-
: data[i].collections(model);
|
|
177
|
+
: data[i].collections(model, msp, context);
|
|
106
178
|
if (c !== collection)
|
|
107
179
|
throw new UnsupportedError(`Segregated data collection mismatch: ${c} vs ${collection}`);
|
|
108
180
|
acc[k] = model[k];
|
|
@@ -110,41 +182,46 @@ export async function segregatedDataOnCreate(context, data, keys, model) {
|
|
|
110
182
|
}, {});
|
|
111
183
|
const toCreate = new this.class(rebuilt);
|
|
112
184
|
// const segregated = Model.segregate(model);
|
|
113
|
-
const created = await this.override({
|
|
185
|
+
const created = await this.override({
|
|
186
|
+
segregated: collection,
|
|
187
|
+
mergeModel: false,
|
|
188
|
+
ignoreHandlers: true,
|
|
189
|
+
ignoreValidation: true,
|
|
190
|
+
}).create(toCreate, context);
|
|
114
191
|
Object.assign(model, created);
|
|
115
192
|
}
|
|
116
193
|
export async function segregatedDataOnRead(context, data, keys, model) {
|
|
117
194
|
if (keys.length !== data.length)
|
|
118
195
|
throw new InternalError(`Segregated data keys and metadata length mismatch`);
|
|
196
|
+
const msp = Model.ownerOf(model);
|
|
197
|
+
if (!msp)
|
|
198
|
+
throw new ValidationError(`There's no assigned organization for model ${model.constructor.name}`);
|
|
119
199
|
const collectionResolver = data[0].collections;
|
|
120
200
|
const collection = typeof collectionResolver === "string"
|
|
121
201
|
? collectionResolver
|
|
122
|
-
: collectionResolver(model);
|
|
202
|
+
: await collectionResolver(model, msp, context);
|
|
123
203
|
const rebuilt = keys.reduce((acc, k, i) => {
|
|
124
204
|
const c = typeof data[i].collections === "string"
|
|
125
205
|
? data[i].collections
|
|
126
|
-
: data[i].collections(model);
|
|
206
|
+
: data[i].collections(model, msp, context);
|
|
127
207
|
if (c !== collection)
|
|
128
|
-
|
|
208
|
+
return acc;
|
|
129
209
|
acc[k] = model[k];
|
|
130
210
|
return acc;
|
|
131
211
|
}, {});
|
|
132
|
-
const toCreate = new this.class(rebuilt);
|
|
133
212
|
// const segregated = Model.segregate(model);
|
|
134
|
-
|
|
135
|
-
|
|
213
|
+
//
|
|
214
|
+
// const created = await this.override({ segregated: collection } as any).readAll(
|
|
215
|
+
// toCreate,
|
|
216
|
+
// context
|
|
217
|
+
// );
|
|
218
|
+
// Object.assign(model, created);
|
|
136
219
|
}
|
|
137
220
|
export async function segregatedDataOnUpdate(context, data, key, model, oldModel) { }
|
|
138
221
|
export async function segregatedDataOnDelete(context, data, key, model) { }
|
|
139
|
-
function segregated(collection, type) {
|
|
222
|
+
function segregated(collection, type, filter) {
|
|
140
223
|
return function innerSegregated(target, propertyKey) {
|
|
141
224
|
function segregatedDec(target, propertyKey) {
|
|
142
|
-
if (!propertyKey) {
|
|
143
|
-
const props = Metadata.properties(target) || [];
|
|
144
|
-
for (const prop of props)
|
|
145
|
-
segregated(collection, type)(target, prop);
|
|
146
|
-
return target;
|
|
147
|
-
}
|
|
148
225
|
const key = Metadata.key(type, propertyKey);
|
|
149
226
|
const constr = target.constructor;
|
|
150
227
|
const meta = Metadata.get(constr, key) || {};
|
|
@@ -152,15 +229,23 @@ function segregated(collection, type) {
|
|
|
152
229
|
collections.add(collection);
|
|
153
230
|
meta.collections = [...collections];
|
|
154
231
|
Metadata.set(constr, key, meta);
|
|
232
|
+
const constrMeta = Metadata.get(constr, type) || {};
|
|
233
|
+
const constrCollections = new Set(constrMeta.collections || []);
|
|
234
|
+
constrCollections.add(collection);
|
|
235
|
+
meta.collections = [...collections];
|
|
236
|
+
Metadata.set(constr, type, meta);
|
|
155
237
|
}
|
|
156
238
|
const decs = [];
|
|
157
239
|
if (!propertyKey) {
|
|
158
240
|
// decorated at the class level
|
|
159
|
-
Metadata.properties(target)?.forEach((p) =>
|
|
160
|
-
|
|
241
|
+
Metadata.properties(target)?.forEach((p) => {
|
|
242
|
+
if (!filter || filter(p)) {
|
|
243
|
+
segregated(collection, type)(target.prototype, p);
|
|
244
|
+
}
|
|
245
|
+
});
|
|
161
246
|
}
|
|
162
247
|
else {
|
|
163
|
-
decs.push(transient(), segregatedDec, onCreate(segregatedDataOnCreate, { collections: collection }, {
|
|
248
|
+
decs.push(prop(), transient(), segregatedDec, onCreate(segregatedDataOnCreate, { collections: collection }, {
|
|
164
249
|
priority: 95,
|
|
165
250
|
group: typeof collection === "string"
|
|
166
251
|
? collection
|
|
@@ -183,7 +268,6 @@ function segregated(collection, type) {
|
|
|
183
268
|
}));
|
|
184
269
|
}
|
|
185
270
|
return apply(...decs)(target, propertyKey);
|
|
186
|
-
// return apply()(target, propertyKey);
|
|
187
271
|
};
|
|
188
272
|
}
|
|
189
273
|
export function privateData(collection = ImplicitPrivateCollection) {
|
|
@@ -208,43 +292,4 @@ export function sharedData(collection) {
|
|
|
208
292
|
})
|
|
209
293
|
.apply();
|
|
210
294
|
}
|
|
211
|
-
//
|
|
212
|
-
// export function privateData(collection?: string) {
|
|
213
|
-
// if (!collection) {
|
|
214
|
-
// throw new Error("Collection name is required");
|
|
215
|
-
// }
|
|
216
|
-
//
|
|
217
|
-
// const key: string = FabricModelKeys.PRIVATE;
|
|
218
|
-
//
|
|
219
|
-
// return function privateData<M extends Model>(
|
|
220
|
-
// model: M | Constructor<M>,
|
|
221
|
-
// attribute?: any
|
|
222
|
-
// ) {
|
|
223
|
-
// const constr =
|
|
224
|
-
// model instanceof Model ? (model.constructor as Constructor) : model;
|
|
225
|
-
//
|
|
226
|
-
// const metaData: any = Metadata.get(constr);
|
|
227
|
-
// const modeldata = metaData?.private?.collections || [];
|
|
228
|
-
//
|
|
229
|
-
// propMetadata(key, {
|
|
230
|
-
// ...(!attribute && {
|
|
231
|
-
// collections: modeldata
|
|
232
|
-
// ? [...new Set([...modeldata, collection])]
|
|
233
|
-
// : [collection],
|
|
234
|
-
// }),
|
|
235
|
-
// isPrivate: !attribute,
|
|
236
|
-
// })(attribute ? constr : model);
|
|
237
|
-
//
|
|
238
|
-
// if (attribute) {
|
|
239
|
-
// const attributeData =
|
|
240
|
-
// (metaData?.private?.[attribute] as any)?.collections || [];
|
|
241
|
-
// propMetadata(Metadata.key(key, attribute), {
|
|
242
|
-
// collections: attributeData
|
|
243
|
-
// ? [...new Set([...attributeData, collection])]
|
|
244
|
-
// : [collection],
|
|
245
|
-
// })(model, attribute);
|
|
246
|
-
// transient()(model, attribute);
|
|
247
|
-
// }
|
|
248
|
-
// };
|
|
249
|
-
// }
|
|
250
295
|
//# sourceMappingURL=decorators.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../src/shared/decorators.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../src/shared/decorators.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { SegregatedModel } from "../types";
|
|
2
2
|
import { Constructor } from "@decaf-ts/decoration";
|
|
3
3
|
import "@decaf-ts/decorator-validation";
|
|
4
|
+
import { CollectionResolver, MirrorMetadata } from "../decorators";
|
|
4
5
|
declare module "@decaf-ts/decorator-validation" {
|
|
5
6
|
interface Model {
|
|
6
7
|
isPrivate<M extends Model>(this: M): boolean;
|
|
@@ -11,5 +12,11 @@ declare module "@decaf-ts/decorator-validation" {
|
|
|
11
12
|
function isPrivate<M extends Model>(model: Constructor<M>): boolean;
|
|
12
13
|
function isShared<M extends Model>(model: Constructor<M>): boolean;
|
|
13
14
|
function segregate<M extends Model>(model: M): SegregatedModel<M>;
|
|
15
|
+
function ownerOf<M extends Model>(model: M): string;
|
|
16
|
+
function mirroredAt<M extends Model>(model: M | Constructor<M>): MirrorMetadata | undefined;
|
|
17
|
+
function collectionsFor<M extends Model>(model: M | Constructor<M>): {
|
|
18
|
+
privateCols: (string | CollectionResolver)[];
|
|
19
|
+
sharedCols: (string | CollectionResolver)[];
|
|
20
|
+
};
|
|
14
21
|
}
|
|
15
22
|
}
|