@nextage/era-lib 1.0.185 → 1.0.186

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.
@@ -44,8 +44,21 @@ export declare abstract class Listener<T extends Event> {
44
44
  code?: string;
45
45
  }, method?: string): void;
46
46
  /**
47
- * Standardized "denormalization result" log, shared by every listener. Reports
48
- * whether the guarded update applied and how many items it touched.
47
+ * Standardized "mutation result" log, shared by every listener. Reports how many
48
+ * items a denormalization touched, split by action (created / updated / deleted),
49
+ * plus any extra structured fields (tenantId, assetId, ...) so aggregators can
50
+ * query them instead of parsing the message. Only the actions actually provided
51
+ * in `counts` appear in the human-readable line; a run that touched nothing logs
52
+ * a single "no <model> changed" line.
53
+ */
54
+ protected logMutationResult(modelName: string, dataId: string | undefined, counts: {
55
+ created?: number;
56
+ updated?: number;
57
+ deleted?: number;
58
+ }, method?: string, extra?: Record<string, unknown>): void;
59
+ /**
60
+ * Update-only sugar over `logMutationResult`, kept because the guarded "mirror"
61
+ * denormalization (`syncRefArray`) and most listeners only ever update copies.
49
62
  */
50
63
  protected logUpdateResult(modelName: string, dataId: string | undefined, updateCount: number, method?: string): void;
51
64
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"base-listener.d.ts","sourceRoot":"","sources":["../../src/events/base-listener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,SAAS,EAAE,MAAmB,sBAAsB,CAAC;AAChF,OAAO,EAAE,KAAK,EAAE,MAA0C,cAAc,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAiB,mCAAmC,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAW,4BAA4B,CAAC;AAEvF;;;;;;;;;;;;;GAaG;AACH,8BAAsB,QAAQ,CAAC,CAAC,SAAS,KAAK;IAE5C,QAAQ,CAAC,OAAO,EAAS,CAAC,CAAC,SAAS,CAAC,CAAC;IACtC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAKhC,SAAS,CAAC,SAAS,EAAM,gBAAgB,GAAG,SAAS,CAAC;IAEtD;;;OAGG;IACH,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAKvC;;;OAGG;IACH,SAAS,CAAC,gBAAgB,IAAI,MAAM,GAAG,SAAS;IAKhD;;;OAGG;IACH,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAKjG;;;OAGG;IACH,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAiBlF;;;OAGG;IACH,SAAS,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAkBpH;;;;;OAKG;cACa,YAAY,CAAC,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IAmBjG;;;;;OAKG;IACH,SAAS,CAAC,WAAW,CAAC,IAAI,GAAE,SAAc,GAAG,YAAY;CAI1D"}
1
+ {"version":3,"file":"base-listener.d.ts","sourceRoot":"","sources":["../../src/events/base-listener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,SAAS,EAAE,MAAmB,sBAAsB,CAAC;AAChF,OAAO,EAAE,KAAK,EAAE,MAA0C,cAAc,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAiB,mCAAmC,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAW,4BAA4B,CAAC;AAEvF;;;;;;;;;;;;;GAaG;AACH,8BAAsB,QAAQ,CAAC,CAAC,SAAS,KAAK;IAE5C,QAAQ,CAAC,OAAO,EAAS,CAAC,CAAC,SAAS,CAAC,CAAC;IACtC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAKhC,SAAS,CAAC,SAAS,EAAM,gBAAgB,GAAG,SAAS,CAAC;IAEtD;;;OAGG;IACH,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAKvC;;;OAGG;IACH,SAAS,CAAC,gBAAgB,IAAI,MAAM,GAAG,SAAS;IAKhD;;;OAGG;IACH,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAKjG;;;OAGG;IACH,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAiBlF;;;;;;;OAOG;IACH,SAAS,CAAC,iBAAiB,CACzB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAK,MAAM,GAAG,SAAS,EAC7B,MAAM,EAAK;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,EACnE,MAAM,CAAC,EAAI,MAAM,EACjB,KAAK,GAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACtC,IAAI;IA8BP;;;OAGG;IACH,SAAS,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAKpH;;;;;OAKG;cACa,YAAY,CAAC,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IAmBjG;;;;;OAKG;IACH,SAAS,CAAC,WAAW,CAAC,IAAI,GAAE,SAAc,GAAG,YAAY;CAI1D"}
@@ -54,24 +54,48 @@ class Listener {
54
54
  }));
55
55
  }
56
56
  /**
57
- * Standardized "denormalization result" log, shared by every listener. Reports
58
- * whether the guarded update applied and how many items it touched.
57
+ * Standardized "mutation result" log, shared by every listener. Reports how many
58
+ * items a denormalization touched, split by action (created / updated / deleted),
59
+ * plus any extra structured fields (tenantId, assetId, ...) so aggregators can
60
+ * query them instead of parsing the message. Only the actions actually provided
61
+ * in `counts` appear in the human-readable line; a run that touched nothing logs
62
+ * a single "no <model> changed" line.
59
63
  */
60
- logUpdateResult(modelName, dataId, updateCount, method) {
61
- const stream = this.streamNameForLog();
62
- const line = updateCount === 0
63
- ? `${this.subject} - no ${modelName} updated (item ${dataId ?? '?'} not found or already up to date)`
64
- : `${this.subject} - updated ${updateCount} ${modelName} item(s)`;
64
+ logMutationResult(modelName, dataId, counts, method, extra = {}) {
65
+ const created = counts.created ?? 0;
66
+ const updated = counts.updated ?? 0;
67
+ const deleted = counts.deleted ?? 0;
68
+ const total = created + updated + deleted;
69
+ const parts = [];
70
+ if (counts.created !== undefined)
71
+ parts.push(`created ${created}`);
72
+ if (counts.updated !== undefined)
73
+ parts.push(`updated ${updated}`);
74
+ if (counts.deleted !== undefined)
75
+ parts.push(`deleted ${deleted}`);
76
+ const line = total === 0
77
+ ? `${this.subject} - no ${modelName} changed (item ${dataId ?? '?'} not found or already up to date)`
78
+ : `${this.subject} - ${parts.join(', ')} ${modelName} item(s)`;
65
79
  nx_frame_be_1.APP.logger.info(line, this.loggerCtx(method, {
66
- event: 'update-result',
80
+ event: 'mutation-result',
67
81
  eventId: dataId,
68
82
  eventSubject: this.subject,
69
83
  queueGroupName: this.queueGroupName,
70
- streamName: stream,
84
+ streamName: this.streamNameForLog(),
71
85
  modelName,
72
- updateCount,
86
+ created,
87
+ updated,
88
+ deleted,
89
+ ...extra,
73
90
  }));
74
91
  }
92
+ /**
93
+ * Update-only sugar over `logMutationResult`, kept because the guarded "mirror"
94
+ * denormalization (`syncRefArray`) and most listeners only ever update copies.
95
+ */
96
+ logUpdateResult(modelName, dataId, updateCount, method) {
97
+ this.logMutationResult(modelName, dataId, { updated: updateCount }, method);
98
+ }
75
99
  /**
76
100
  * Shared "mirror" denormalization strategy: update the copies of an entity that
77
101
  * live embedded in the `arrayPath` array of many documents, guarded by the
@@ -1 +1 @@
1
- {"version":3,"file":"base-listener.js","sourceRoot":"","sources":["../../src/events/base-listener.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-listener.js","sourceRoot":"","sources":["../../src/events/base-listener.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nextage/era-lib",
3
- "version": "1.0.185",
3
+ "version": "1.0.186",
4
4
  "main": "./build/index.js",
5
5
  "types": "./build/index.d.ts",
6
6
  "files": [