@decaf-ts/for-fabric 0.3.25 → 0.3.27

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.
Files changed (59) hide show
  1. package/dist/for-fabric.cjs +1 -1
  2. package/dist/for-fabric.cjs.map +1 -1
  3. package/dist/for-fabric.js +1 -1
  4. package/dist/for-fabric.js.map +1 -1
  5. package/lib/client/FabricClientAdapter.cjs +5 -1
  6. package/lib/client/FabricClientAdapter.js.map +1 -1
  7. package/lib/contract/models/History.cjs +75 -0
  8. package/lib/contract/models/History.d.ts +9 -0
  9. package/lib/contract/models/History.js.map +1 -0
  10. package/lib/contract/models/OtherBatchShared.cjs +2 -0
  11. package/lib/contract/models/OtherBatchShared.js.map +1 -1
  12. package/lib/contract/models/OtherMarket.cjs +6 -0
  13. package/lib/contract/models/OtherMarket.d.ts +1 -0
  14. package/lib/contract/models/OtherMarket.js.map +1 -1
  15. package/lib/contract/models/OtherProduct.cjs +2 -0
  16. package/lib/contract/models/OtherProduct.js.map +1 -1
  17. package/lib/contract/models/OtherProductShared.cjs +2 -0
  18. package/lib/contract/models/OtherProductShared.js.map +1 -1
  19. package/lib/contract/models/OtherProductStrength.cjs +6 -0
  20. package/lib/contract/models/OtherProductStrength.d.ts +1 -0
  21. package/lib/contract/models/OtherProductStrength.js.map +1 -1
  22. package/lib/contract/models/decorators-private.cjs +54 -7
  23. package/lib/contract/models/decorators-private.js.map +1 -1
  24. package/lib/contract/models/decorators.cjs +63 -5
  25. package/lib/contract/models/decorators.d.ts +5 -0
  26. package/lib/contract/models/decorators.js.map +1 -1
  27. package/lib/contract/models/history-dec.cjs +83 -0
  28. package/lib/contract/models/history-dec.d.ts +6 -0
  29. package/lib/contract/models/history-dec.js.map +1 -0
  30. package/lib/esm/client/FabricClientAdapter.js +5 -1
  31. package/lib/esm/client/FabricClientAdapter.js.map +1 -1
  32. package/lib/esm/contract/models/History.d.ts +9 -0
  33. package/lib/esm/contract/models/History.js +72 -0
  34. package/lib/esm/contract/models/History.js.map +1 -0
  35. package/lib/esm/contract/models/OtherBatchShared.js +2 -0
  36. package/lib/esm/contract/models/OtherBatchShared.js.map +1 -1
  37. package/lib/esm/contract/models/OtherMarket.d.ts +1 -0
  38. package/lib/esm/contract/models/OtherMarket.js +7 -1
  39. package/lib/esm/contract/models/OtherMarket.js.map +1 -1
  40. package/lib/esm/contract/models/OtherProduct.js +2 -0
  41. package/lib/esm/contract/models/OtherProduct.js.map +1 -1
  42. package/lib/esm/contract/models/OtherProductShared.js +2 -0
  43. package/lib/esm/contract/models/OtherProductShared.js.map +1 -1
  44. package/lib/esm/contract/models/OtherProductStrength.d.ts +1 -0
  45. package/lib/esm/contract/models/OtherProductStrength.js +7 -1
  46. package/lib/esm/contract/models/OtherProductStrength.js.map +1 -1
  47. package/lib/esm/contract/models/decorators-private.js +55 -8
  48. package/lib/esm/contract/models/decorators-private.js.map +1 -1
  49. package/lib/esm/contract/models/decorators.d.ts +5 -0
  50. package/lib/esm/contract/models/decorators.js +63 -6
  51. package/lib/esm/contract/models/decorators.js.map +1 -1
  52. package/lib/esm/contract/models/history-dec.d.ts +6 -0
  53. package/lib/esm/contract/models/history-dec.js +78 -0
  54. package/lib/esm/contract/models/history-dec.js.map +1 -0
  55. package/lib/esm/version.d.ts +1 -1
  56. package/lib/esm/version.js +1 -1
  57. package/lib/version.cjs +1 -1
  58. package/lib/version.d.ts +1 -1
  59. package/package.json +1 -1
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.rebuildForMatchingCollection = rebuildForMatchingCollection;
4
+ exports.populateRelations = populateRelations;
4
5
  exports.createAuditHandler = createAuditHandler;
5
6
  exports.updateAuditHandler = updateAuditHandler;
6
7
  exports.deleteAuditHandler = deleteAuditHandler;
@@ -28,19 +29,73 @@ async function rebuildForMatchingCollection(model, context, collections) {
28
29
  ];
29
30
  const pk = decorator_validation_1.Model.pk(model);
30
31
  cols.forEach((col) => {
31
- const segData = context.get("segregatedData");
32
+ let segData;
33
+ try {
34
+ segData = context.get("segregatedData");
35
+ }
36
+ catch {
37
+ return; // segregatedData not present in this context (e.g. cascade child)
38
+ }
39
+ if (!segData || !segData[col] || !(model[pk] in segData[col]))
40
+ return;
32
41
  Object.assign(model, segData[col][model[pk]]);
33
42
  });
34
43
  }
35
44
  return model;
36
45
  }
46
+ /**
47
+ * Returns a shallow-cloned copy of the model with relation properties resolved
48
+ * to their full instances. The original model is NOT mutated.
49
+ */
50
+ async function populateRelations(model, context, overrides) {
51
+ // Create a shallow copy preserving the prototype so compare() etc. still work
52
+ const copy = Object.assign(Object.create(Object.getPrototypeOf(model)), model);
53
+ const relProps = decorator_validation_1.Model.relations(model);
54
+ if (!relProps || !relProps.length)
55
+ return copy;
56
+ for (const propKey of relProps) {
57
+ const meta = decorator_validation_1.Model.relations(model, propKey);
58
+ const clazzOrFn = meta.class;
59
+ const clazz = typeof clazzOrFn === "function" && clazzOrFn.name
60
+ ? clazzOrFn
61
+ : clazzOrFn();
62
+ const value = copy[propKey];
63
+ if (value === null || value === undefined)
64
+ continue;
65
+ const repo = core_1.Repository.forModel(clazz).override(overrides || {});
66
+ if (Array.isArray(value)) {
67
+ const resolved = [];
68
+ for (const item of value) {
69
+ if (typeof item === "string" || typeof item === "number") {
70
+ try {
71
+ resolved.push(await repo.read(String(item), context));
72
+ }
73
+ catch {
74
+ resolved.push(item);
75
+ }
76
+ }
77
+ else {
78
+ resolved.push(item);
79
+ }
80
+ }
81
+ copy[propKey] = resolved;
82
+ }
83
+ else if (typeof value === "string" || typeof value === "number") {
84
+ try {
85
+ copy[propKey] = await repo.read(String(value), context);
86
+ }
87
+ catch {
88
+ // keep original value if read fails
89
+ }
90
+ }
91
+ }
92
+ return copy;
93
+ }
37
94
  async function createAuditHandler(context, data, key, model) {
38
95
  const repo = core_1.Repository.forModel(Audit_1.Audit);
39
- const collections = decorator_validation_1.Model.collectionsFor(Audit_1.Audit);
40
- //
41
- // model = await rebuildForMatchingCollection(model, context, collections);
42
96
  if (!context.identity || !context.identity.getID)
43
97
  throw new db_decorators_1.InternalError(`Lost context apparently for audit`);
98
+ model = await populateRelations(model, context, this._overrides);
44
99
  const toCreate = new Audit_1.Audit({
45
100
  userGroup: context.identity.getID(),
46
101
  userId: context.identity.getID(),
@@ -59,13 +114,15 @@ async function updateAuditHandler(context, data, key, model, oldModel) {
59
114
  // model = await rebuildForMatchingCollection(model, context, collections);
60
115
  if (!context.identity || !context.identity.getID)
61
116
  throw new db_decorators_1.InternalError(`Lost context apparently for audit`);
117
+ const populatedModel = await populateRelations(model, context, this._overrides);
118
+ const populatedOldModel = await populateRelations(oldModel, context, this._overrides);
62
119
  const toCreate = new Audit_1.Audit({
63
120
  userGroup: context.identity.getID(),
64
121
  userId: context.identity.getID(),
65
122
  model: decorator_validation_1.Model.tableName(data.class),
66
123
  transaction: context.stub.getTxID(),
67
124
  action: db_decorators_1.OperationKeys.UPDATE,
68
- diffs: model.compare(oldModel),
125
+ diffs: populatedModel.compare(populatedOldModel),
69
126
  });
70
127
  const audit = await repo.override(this._overrides).create(toCreate, context);
71
128
  context.logger.info(`Audit log for ${db_decorators_1.OperationKeys.UPDATE} of ${decorator_validation_1.Model.tableName(this.class)} created: ${JSON.stringify(audit, undefined, 2)}`);
@@ -73,6 +130,7 @@ async function updateAuditHandler(context, data, key, model, oldModel) {
73
130
  async function deleteAuditHandler(context, data, key, model) {
74
131
  if (!context.identity || !context.identity.getID)
75
132
  throw new db_decorators_1.InternalError(`Lost context apprently. no getId in identity`);
133
+ model = await populateRelations(model, context, this._overrides);
76
134
  const toCreate = new Audit_1.Audit({
77
135
  userGroup: context.identity.getID(),
78
136
  userId: context.identity.getID(),
@@ -7,6 +7,11 @@ export declare function rebuildForMatchingCollection<M extends Model>(model: M,
7
7
  privateCols: (string | CollectionResolver)[];
8
8
  sharedCols: (string | CollectionResolver)[];
9
9
  }): Promise<M>;
10
+ /**
11
+ * Returns a shallow-cloned copy of the model with relation properties resolved
12
+ * to their full instances. The original model is NOT mutated.
13
+ */
14
+ export declare function populateRelations<M extends Model>(model: M, context: FabricContractContext, overrides?: Record<string, any>): Promise<M>;
10
15
  export declare function createAuditHandler<M extends Model, R extends Repository<M, any>>(this: R, context: FabricContractContext, data: AuditMetadata, key: keyof M, model: M): Promise<void>;
11
16
  export declare function updateAuditHandler<M extends Model, R extends Repository<M, any>>(this: R, context: FabricContractContext, data: AuditMetadata, key: keyof M, model: M, oldModel: M): Promise<void>;
12
17
  export declare function deleteAuditHandler<M extends Model, R extends Repository<M, any>>(this: R, context: FabricContractContext, data: AuditMetadata, key: keyof M, model: M): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../src/contract/models/decorators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../src/contract/models/decorators.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateHistoryHandler = updateHistoryHandler;
4
+ exports.deleteHistoryHandler = deleteHistoryHandler;
5
+ exports.historyDec = historyDec;
6
+ const decorator_validation_1 = require("@decaf-ts/decorator-validation");
7
+ const core_1 = require("@decaf-ts/core");
8
+ const decoration_1 = require("@decaf-ts/decoration");
9
+ const db_decorators_1 = require("@decaf-ts/db-decorators");
10
+ const decorators_1 = require("./decorators.cjs");
11
+ const History_1 = require("./History.cjs");
12
+ /**
13
+ * Correctly extracts the version number from a model by inspecting
14
+ * the property decorated with `@version()`.
15
+ *
16
+ * `Model.versionProp()` has a bug where it returns `Object.keys(meta)[0]`
17
+ * (the first metadata key overall) instead of the actual version property name.
18
+ * This helper uses `Metadata.get()` correctly to find the `DBKeys.VERSION`
19
+ * entry and then reads the first property name from it.
20
+ *
21
+ * @returns the version number (>= 1), or undefined if none found.
22
+ */
23
+ function getVersionOf(model) {
24
+ const meta = decoration_1.Metadata.get(model.constructor);
25
+ if (!meta)
26
+ return undefined;
27
+ const versionMeta = meta[db_decorators_1.DBKeys.VERSION];
28
+ if (!versionMeta || typeof versionMeta !== "object")
29
+ return undefined;
30
+ const versionProp = Object.keys(versionMeta)[0];
31
+ if (!versionProp)
32
+ return undefined;
33
+ const value = model[versionProp];
34
+ return typeof value === "number" && value >= 1 ? value : undefined;
35
+ }
36
+ async function updateHistoryHandler(context, data, key, model, oldModel) {
37
+ if (!context.identity || !context.identity.getID)
38
+ throw new db_decorators_1.InternalError(`Lost context apparently for history`);
39
+ const table = decorator_validation_1.Model.tableName(oldModel);
40
+ const pk = decorator_validation_1.Model.pk(oldModel, true);
41
+ const version = getVersionOf(oldModel);
42
+ if (version === undefined)
43
+ return; // model has no @version field — skip history
44
+ // Populate relations on a non-mutating copy of oldModel, then convert to a
45
+ // plain object so no model-anchor (__model) keys appear in the stored JSON.
46
+ const populated = await (0, decorators_1.populateRelations)(oldModel, context, this._overrides);
47
+ const record = JSON.parse(JSON.stringify(populated));
48
+ const repo = core_1.Repository.forModel(History_1.History).override(this._overrides);
49
+ const toCreate = new History_1.History({
50
+ table,
51
+ key: pk,
52
+ version,
53
+ record,
54
+ });
55
+ await repo.create(toCreate, context);
56
+ context.logger.info(`History for ${table}'s ${pk.toString()} version ${version} stored`);
57
+ }
58
+ async function deleteHistoryHandler(context, data, key, model) {
59
+ if (!context.identity || !context.identity.getID)
60
+ throw new db_decorators_1.InternalError(`Lost context apparently for history`);
61
+ const table = decorator_validation_1.Model.tableName(model);
62
+ const pk = decorator_validation_1.Model.pk(model, true);
63
+ const version = getVersionOf(model);
64
+ if (version === undefined)
65
+ return; // model has no @version field — skip history
66
+ // Populate relations on a non-mutating copy of model, then convert to a
67
+ // plain object so no model-anchor (__model) keys appear in the stored JSON.
68
+ const populated = await (0, decorators_1.populateRelations)(model, context, this._overrides);
69
+ const record = JSON.parse(JSON.stringify(populated));
70
+ const repo = core_1.Repository.forModel(History_1.History).override(this._overrides);
71
+ const toCreate = new History_1.History({
72
+ table,
73
+ key: pk,
74
+ version,
75
+ record,
76
+ });
77
+ await repo.create(toCreate, context);
78
+ context.logger.info(`History for ${table}'s ${pk.toString()} version ${version} stored`);
79
+ }
80
+ function historyDec() {
81
+ return (0, decoration_1.apply)((0, db_decorators_1.onUpdate)(updateHistoryHandler, {}, { priority: 99 }), (0, db_decorators_1.afterDelete)(deleteHistoryHandler, {}, { priority: 99 }), (0, decoration_1.metadata)("history", true));
82
+ }
83
+ //# sourceMappingURL=history-dec.js.map
@@ -0,0 +1,6 @@
1
+ import { Model } from "@decaf-ts/decorator-validation";
2
+ import { Repository } from "@decaf-ts/core";
3
+ import { type FabricContractContext } from "../../contracts/index";
4
+ export declare function updateHistoryHandler<M extends Model, R extends Repository<M, any>>(this: R, context: FabricContractContext, data: any, key: keyof M, model: M, oldModel: M): Promise<void>;
5
+ export declare function deleteHistoryHandler<M extends Model, R extends Repository<M, any>>(this: R, context: FabricContractContext, data: any, key: keyof M, model: M): Promise<void>;
6
+ export declare function historyDec(): (target: object, propertyKey?: string | symbol | unknown, descriptor?: PropertyDescriptor | number) => void;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history-dec.js","sourceRoot":"","sources":["../../../src/contract/models/history-dec.ts"],"names":[],"mappings":"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"}
@@ -783,7 +783,11 @@ export class FabricClientAdapter extends Adapter {
783
783
  tlsCert: this.config.tlsCert,
784
784
  },
785
785
  ];
786
- const endorsers = this.getEndorsingOrganizations(ctx)?.filter((org) => Boolean(org)) || [];
786
+ let endorsingOrgs = this.getEndorsingOrganizations(ctx) || [];
787
+ endorsingOrgs = Array.isArray(endorsingOrgs)
788
+ ? endorsingOrgs
789
+ : [endorsingOrgs];
790
+ const endorsers = endorsingOrgs.filter((org) => Boolean(org)) || [];
787
791
  const extras = endorsers.filter((org) => org !== this.config.mspId);
788
792
  if (!extras.length)
789
793
  return peers;
@@ -1 +1 @@
1
- {"version":3,"file":"FabricClientAdapter.js","sourceRoot":"","sources":["../../../src/client/FabricClientAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FabricClientAdapter.js","sourceRoot":"","sources":["../../../src/client/FabricClientAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { Model, type ModelArg } from "@decaf-ts/decorator-validation";
2
+ export declare class History extends Model {
3
+ id: string;
4
+ table: string;
5
+ key: string;
6
+ version: number;
7
+ record?: Record<string, any>;
8
+ constructor(model?: ModelArg<History>);
9
+ }
@@ -0,0 +1,72 @@
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 __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { Model, model, required, } from "@decaf-ts/decorator-validation";
11
+ import { column, index, OrderDirection, pk, table } from "@decaf-ts/core";
12
+ import { BlockOperations, composed, OperationKeys, readonly, } from "@decaf-ts/db-decorators";
13
+ import { description, uses } from "@decaf-ts/decoration";
14
+ import { FabricFlavour, mirror, NamespaceCollection, sharedData, } from "./../../shared/index.js";
15
+ let History = class History extends Model {
16
+ constructor(model) {
17
+ super(model);
18
+ }
19
+ };
20
+ __decorate([
21
+ pk(),
22
+ mirror("ptp-history-mirror", "PharmaledgerassocMSP"),
23
+ composed(["table", "key", "version"], ":"),
24
+ description("Unique identifier of the history record."),
25
+ __metadata("design:type", String)
26
+ ], History.prototype, "id", void 0);
27
+ __decorate([
28
+ column(),
29
+ readonly(),
30
+ readonly(),
31
+ index([OrderDirection.ASC, OrderDirection.DSC]),
32
+ description("table this history object refers to"),
33
+ __metadata("design:type", String)
34
+ ], History.prototype, "table", void 0);
35
+ __decorate([
36
+ column(),
37
+ required(),
38
+ readonly(),
39
+ index([OrderDirection.ASC, OrderDirection.DSC]),
40
+ description("id of the original object"),
41
+ __metadata("design:type", String)
42
+ ], History.prototype, "key", void 0);
43
+ __decorate([
44
+ column(),
45
+ required(),
46
+ readonly(),
47
+ index([OrderDirection.ASC, OrderDirection.DSC]),
48
+ description("the version of the original object"),
49
+ __metadata("design:type", Number)
50
+ ], History.prototype, "version", void 0);
51
+ __decorate([
52
+ column(),
53
+ required(),
54
+ readonly(),
55
+ description("the object to keep history of"),
56
+ __metadata("design:type", Object)
57
+ ], History.prototype, "record", void 0);
58
+ History = __decorate([
59
+ description("Logs user activity for auditing purposes."),
60
+ uses(FabricFlavour),
61
+ BlockOperations([
62
+ OperationKeys.CREATE,
63
+ OperationKeys.UPDATE,
64
+ OperationKeys.DELETE,
65
+ ]),
66
+ table("history"),
67
+ sharedData(NamespaceCollection("ptp-history")),
68
+ model(),
69
+ __metadata("design:paramtypes", [Object])
70
+ ], History);
71
+ export { History };
72
+ //# sourceMappingURL=History.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"History.js","sourceRoot":"","sources":["../../../../src/contract/models/History.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EACL,KAAK,EACL,KAAK,EAEL,QAAQ,GACT,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EACL,eAAe,EACf,QAAQ,EACR,aAAa,EACb,QAAQ,GACT,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EACL,aAAa,EACb,MAAM,EACN,mBAAmB,EACnB,UAAU,GACX,gCAAqB;AAYf,IAAM,OAAO,GAAb,MAAM,OAAQ,SAAQ,KAAK;IAkChC,YAAY,KAAyB;QACnC,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;CACF,CAAA;AAhCC;IAJC,EAAE,EAAE;IACJ,MAAM,CAAC,oBAAoB,EAAE,sBAAsB,CAAC;IACpD,QAAQ,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,GAAG,CAAC;IAC1C,WAAW,CAAC,0CAA0C,CAAC;;mCAC5C;AAOZ;IALC,MAAM,EAAE;IACR,QAAQ,EAAE;IACV,QAAQ,EAAE;IACV,KAAK,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC;IAC/C,WAAW,CAAC,qCAAqC,CAAC;;sCACpC;AAOf;IALC,MAAM,EAAE;IACR,QAAQ,EAAE;IACV,QAAQ,EAAE;IACV,KAAK,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC;IAC/C,WAAW,CAAC,2BAA2B,CAAC;;oCAC5B;AAOb;IALC,MAAM,EAAE;IACR,QAAQ,EAAE;IACV,QAAQ,EAAE;IACV,KAAK,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC;IAC/C,WAAW,CAAC,oCAAoC,CAAC;;wCACjC;AAMjB;IAJC,MAAM,EAAE;IACR,QAAQ,EAAE;IACV,QAAQ,EAAE;IACV,WAAW,CAAC,+BAA+B,CAAC;;uCAChB;AAhClB,OAAO;IAVnB,WAAW,CAAC,2CAA2C,CAAC;IACxD,IAAI,CAAC,aAAa,CAAC;IACnB,eAAe,CAAC;QACf,aAAa,CAAC,MAAM;QACpB,aAAa,CAAC,MAAM;QACpB,aAAa,CAAC,MAAM;KACrB,CAAC;IACD,KAAK,CAAC,SAAS,CAAC;IAChB,UAAU,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAC9C,KAAK,EAAE;;GACK,OAAO,CAqCnB"}
@@ -16,6 +16,7 @@ import { BaseIdentifiedModel } from "./BaseIdentifiedModel.js";
16
16
  import { audit } from "./decorators.js";
17
17
  import { gtin } from "./gtin.js";
18
18
  import { FabricFlavour, mirror, NamespaceCollection, sharedData, } from "./../../shared/index.js";
19
+ import { historyDec } from "./history-dec.js";
19
20
  let OtherBatchShared = class OtherBatchShared extends BaseIdentifiedModel {
20
21
  constructor(model) {
21
22
  super(model);
@@ -24,6 +25,7 @@ let OtherBatchShared = class OtherBatchShared extends BaseIdentifiedModel {
24
25
  };
25
26
  __decorate([
26
27
  pk(),
28
+ historyDec(),
27
29
  audit(OtherBatchShared),
28
30
  mirror("mirror-collection", "org-b"),
29
31
  composed(["productCode", "batchNumber"], ":"),
@@ -1 +1 @@
1
- {"version":3,"file":"OtherBatchShared.js","sourceRoot":"","sources":["../../../../src/contract/models/OtherBatchShared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OtherBatchShared.js","sourceRoot":"","sources":["../../../../src/contract/models/OtherBatchShared.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,WAAW,EAAc,uBAAoB;AACpE,OAAO,EACL,eAAe,EACf,QAAQ,EACR,aAAa,EACb,QAAQ,GACT,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,iCAA8B;AAC5D,OAAO,EAAE,KAAK,EAAE,wBAAqB;AACrC,OAAO,EAAE,IAAI,EAAE,kBAAe;AAC9B,OAAO,EACL,aAAa,EACb,MAAM,EACN,mBAAmB,EACnB,UAAU,GACX,gCAA2B;AAC5B,OAAO,EAAE,UAAU,EAAE,yBAAsB;AAQpC,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,mBAAmB;IAyEvD,YAAY,KAAkC;QAC5C,KAAK,CAAC,KAAK,CAAC,CAAC;QAHf,gBAAW,GAAY,KAAK,CAAC;IAI7B,CAAC;CACF,CAAA;AArEC;IANC,EAAE,EAAE;IACJ,UAAU,EAAE;IACZ,KAAK,CAAC,gBAAgB,CAAC;IACvB,MAAM,CAAC,mBAAmB,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,CAAC,aAAa,EAAE,aAAa,CAAC,EAAE,GAAG,CAAC;IAC7C,WAAW,CAAC,8DAA8D,CAAC;;4CAChE;AAWZ;IATC,IAAI,EAAE;IACN,QAAQ,EAAE;IACX,cAAc;IACd,mBAAmB;IACnB,oDAAoD;IACpD,UAAU;IACV,IAAI;;IACH,KAAK,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC;IAC/C,WAAW,CAAC,iDAAiD,CAAC;;qDAC1C;AAOrB;IALC,MAAM,EAAE;IACR,QAAQ,EAAE;IACV,OAAO,CAAC,YAAY,CAAC;IACrB,KAAK,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC;IAC/C,WAAW,CAAC,uCAAuC,CAAC;;qDAChC;AAOrB;IALC,QAAQ,EAAE;IACV,IAAI,CAAC,WAAW,CAAC;IACjB,MAAM,EAAE;IACR,KAAK,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC;IAC/C,WAAW,CAAC,8BAA8B,CAAC;8BAC/B,IAAI;oDAAC;AAIlB;IAFC,MAAM,EAAE;IACR,WAAW,CAAC,uCAAuC,CAAC;;6DACxB;AAK7B;IAHC,MAAM,EAAE;IACR,IAAI,CAAC,WAAW,CAAC;IACjB,WAAW,CAAC,uCAAuC,CAAC;;6DACxB;AAK7B;IAHC,MAAM,EAAE;IACR,KAAK,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC;IAC/C,WAAW,CAAC,mCAAmC,CAAC;;0DACvB;AAI1B;IAFC,MAAM,EAAE;IACR,WAAW,CAAC,8BAA8B,CAAC;;8DACd;AAI9B;IAFC,MAAM,EAAE;IACR,WAAW,CAAC,8BAA8B,CAAC;;8DACd;AAI9B;IAFC,MAAM,EAAE;IACR,WAAW,CAAC,8BAA8B,CAAC;;8DACd;AAI9B;IAFC,MAAM,EAAE;IACR,WAAW,CAAC,8BAA8B,CAAC;;8DACd;AAI9B;IAFC,MAAM,EAAE;IACR,WAAW,CAAC,8BAA8B,CAAC;;8DACd;AAK9B;IAHC,MAAM,EAAE;IACR,KAAK,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC;IAC/C,WAAW,CAAC,iDAAiD,CAAC;;qDAClC;AAvElB,gBAAgB;IAN5B,UAAU,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;IAClD,WAAW,CAAC,4BAA4B,CAAC;IACzC,IAAI,CAAC,aAAa,CAAC;IACnB,eAAe,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,KAAK,CAAC,oBAAoB,CAAC;IAC3B,KAAK,EAAE;;GACK,gBAAgB,CA4E5B"}
@@ -8,5 +8,6 @@ export declare class OtherMarket extends BaseIdentifiedModel {
8
8
  mahName?: string;
9
9
  legalEntityName?: string;
10
10
  mahAddress?: string;
11
+ counter?: number;
11
12
  constructor(model?: ModelArg<OtherMarket>);
12
13
  }