mcp-creatio 0.6.3 → 0.6.4

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 (62) hide show
  1. package/README.md +55 -0
  2. package/dist/cli.js +6 -1
  3. package/dist/cli.js.map +1 -1
  4. package/dist/creatio/engines/engine-manager.d.ts +3 -0
  5. package/dist/creatio/engines/engine-manager.d.ts.map +1 -1
  6. package/dist/creatio/engines/engine-manager.js +5 -0
  7. package/dist/creatio/engines/engine-manager.js.map +1 -1
  8. package/dist/creatio/provider-context.d.ts +3 -0
  9. package/dist/creatio/provider-context.d.ts.map +1 -1
  10. package/dist/creatio/services/client-cache-hash-client.d.ts +22 -0
  11. package/dist/creatio/services/client-cache-hash-client.d.ts.map +1 -0
  12. package/dist/creatio/services/client-cache-hash-client.js +56 -0
  13. package/dist/creatio/services/client-cache-hash-client.js.map +1 -0
  14. package/dist/creatio/services/creatio-service-context.d.ts +5 -0
  15. package/dist/creatio/services/creatio-service-context.d.ts.map +1 -1
  16. package/dist/creatio/services/creatio-service-context.js +15 -1
  17. package/dist/creatio/services/creatio-service-context.js.map +1 -1
  18. package/dist/creatio/services/crud-provider-factory.d.ts +4 -0
  19. package/dist/creatio/services/crud-provider-factory.d.ts.map +1 -1
  20. package/dist/creatio/services/crud-provider-factory.js +1 -1
  21. package/dist/creatio/services/crud-provider-factory.js.map +1 -1
  22. package/dist/creatio/services/dataservice/data-service-crud-provider.d.ts +2 -0
  23. package/dist/creatio/services/dataservice/data-service-crud-provider.d.ts.map +1 -1
  24. package/dist/creatio/services/dataservice/data-service-crud-provider.js +3 -1
  25. package/dist/creatio/services/dataservice/data-service-crud-provider.js.map +1 -1
  26. package/dist/creatio/services/dataservice/data-service-schema.d.ts +3 -1
  27. package/dist/creatio/services/dataservice/data-service-schema.d.ts.map +1 -1
  28. package/dist/creatio/services/dataservice/data-service-schema.js +13 -4
  29. package/dist/creatio/services/dataservice/data-service-schema.js.map +1 -1
  30. package/dist/creatio/services/dataservice/data-service-transport.d.ts +3 -0
  31. package/dist/creatio/services/dataservice/data-service-transport.d.ts.map +1 -1
  32. package/dist/creatio/services/dataservice/data-service-transport.js +5 -0
  33. package/dist/creatio/services/dataservice/data-service-transport.js.map +1 -1
  34. package/dist/creatio/services/index.d.ts +2 -0
  35. package/dist/creatio/services/index.d.ts.map +1 -1
  36. package/dist/creatio/services/index.js +2 -0
  37. package/dist/creatio/services/index.js.map +1 -1
  38. package/dist/creatio/services/odata/metadata-store.d.ts +10 -1
  39. package/dist/creatio/services/odata/metadata-store.d.ts.map +1 -1
  40. package/dist/creatio/services/odata/metadata-store.js +35 -4
  41. package/dist/creatio/services/odata/metadata-store.js.map +1 -1
  42. package/dist/creatio/services/schema-freshness-gate.d.ts +26 -0
  43. package/dist/creatio/services/schema-freshness-gate.d.ts.map +1 -0
  44. package/dist/creatio/services/schema-freshness-gate.js +58 -0
  45. package/dist/creatio/services/schema-freshness-gate.js.map +1 -0
  46. package/dist/index.js +6 -1
  47. package/dist/index.js.map +1 -1
  48. package/dist/log.d.ts.map +1 -1
  49. package/dist/log.js +4 -1
  50. package/dist/log.js.map +1 -1
  51. package/dist/server/mcp/server.d.ts.map +1 -1
  52. package/dist/server/mcp/server.js +10 -2
  53. package/dist/server/mcp/server.js.map +1 -1
  54. package/dist/utils/index.d.ts +1 -0
  55. package/dist/utils/index.d.ts.map +1 -1
  56. package/dist/utils/index.js +1 -0
  57. package/dist/utils/index.js.map +1 -1
  58. package/dist/utils/redact.d.ts +25 -0
  59. package/dist/utils/redact.d.ts.map +1 -0
  60. package/dist/utils/redact.js +64 -0
  61. package/dist/utils/redact.js.map +1 -0
  62. package/package.json +1 -1
package/README.md CHANGED
@@ -175,6 +175,29 @@ the client logs in directly against Creatio. Needs no server-side credentials. T
175
175
  through unverified (Creatio is the authority) — a **trusted-environment** mode (see the trust note
176
176
  above).
177
177
 
178
+ **What the client sends.** The MCP **client** attaches the Creatio access token as a Bearer header
179
+ on every `/mcp` request. In a client that supports static headers:
180
+
181
+ ```jsonc
182
+ {
183
+ "creatio": {
184
+ "type": "http",
185
+ "url": "http://localhost:3000/mcp",
186
+ "headers": { "Authorization": "Bearer <CREATIO_ACCESS_TOKEN>" },
187
+ },
188
+ }
189
+ ```
190
+
191
+ Server side, just select the mode (no credentials needed):
192
+
193
+ ```bash
194
+ CREATIO_MCP_AUTH_MODE=delegated
195
+ CREATIO_BASE_URL=https://your-creatio.com
196
+ ```
197
+
198
+ A request with **no** `Authorization` header gets `401` with a `WWW-Authenticate` challenge pointing
199
+ at Creatio Identity (RFC 9728), so a compliant client knows where to log in.
200
+
178
201
  ### `gateway`
179
202
 
180
203
  A trusted fronting service (Creatio.ai Control-Plane) injects the Bearer; the MCP trusts and uses
@@ -184,6 +207,38 @@ is sent, it is validated: set **`CREATIO_MCP_ALLOWED_BASE_URLS`** (comma-separat
184
207
  restrict it to your tenants. When unset, any `http(s)` host is accepted (trusting the gateway) except
185
208
  the cloud-metadata link-local address, which is always blocked (SSRF guard).
186
209
 
210
+ **Who sends what.** Unlike `delegated`, the end client talks to the **gateway**, not to the MCP — so
211
+ the **gateway** is what injects the per-request headers. On each forwarded `/mcp` call it sends:
212
+
213
+ ```http
214
+ POST /mcp HTTP/1.1
215
+ Authorization: Bearer <CREATIO_ACCESS_TOKEN> # required — the tenant's Creatio token
216
+ X-Creatio-Base-Url: https://tenant-a.creatio.com # optional — pick the tenant's instance (multi-tenant)
217
+ ```
218
+
219
+ Server side:
220
+
221
+ ```bash
222
+ CREATIO_MCP_AUTH_MODE=gateway
223
+ CREATIO_BASE_URL=https://default-creatio.com # fallback when no X-Creatio-Base-Url
224
+ CREATIO_MCP_ALLOWED_BASE_URLS=https://tenant-a.creatio.com,https://tenant-b.creatio.com # SSRF allowlist
225
+ ```
226
+
227
+ Smoke-test it directly with `curl` (mint a token out-of-band first):
228
+
229
+ ```bash
230
+ curl -sS http://localhost:3000/mcp \
231
+ -H "Authorization: Bearer $CREATIO_ACCESS_TOKEN" \
232
+ -H "X-Creatio-Base-Url: https://tenant-a.creatio.com" \
233
+ -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
234
+ -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get-current-user-info","arguments":{}}}'
235
+ ```
236
+
237
+ > **Only the Bearer token is injected** — not arbitrary credentials. The gateway owns auth: it should
238
+ > exchange whatever it holds (SSO, cookie, etc.) into a Creatio OAuth access token **before** calling
239
+ > the MCP. (Injecting other credential shapes, e.g. cookie/basic per tenant, is intentionally out of
240
+ > scope for now.)
241
+
187
242
  ### `client_credentials` / `legacy`
188
243
 
189
244
  ```bash
package/dist/cli.js CHANGED
@@ -136,7 +136,12 @@ async function main() {
136
136
  });
137
137
  // Proactive keep-alive applies only to the single-session modes (legacy / client_credentials),
138
138
  // which is exactly what stdio runs; it is opt-in via CREATIO_MCP_KEEPALIVE_SECONDS.
139
- const keepAlive = new server_1.SessionKeepAlive((0, server_1.keepAliveIntervalMs)(), () => engines.user.getCurrentUserInfo());
139
+ const keepAlive = new server_1.SessionKeepAlive((0, server_1.keepAliveIntervalMs)(), async () => {
140
+ await engines.user.getCurrentUserInfo();
141
+ // Reuse the periodic ping to also refresh the schema-freshness snapshot, so it isn't a
142
+ // wasted round-trip — the next schema read starts from a warm, validated cache.
143
+ await engines.warmSchemaCache();
144
+ });
140
145
  keepAlive.start();
141
146
  const state = { server, keepAlive };
142
147
  process.on('SIGINT', () => {
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -44,6 +44,9 @@ export declare class CreatioEngineManager {
44
44
  get process(): ProcessEngine;
45
45
  get sysSettings(): SysSettingsEngine;
46
46
  get user(): UserEngine;
47
+ /** Proactively refresh the schema-freshness snapshot (no-op when the context doesn't support
48
+ * it). Lets the single-session keep-alive tick double as a cache-freshness check. */
49
+ warmSchemaCache(): Promise<void>;
47
50
  constructor(context: CreatioProviderContext, options?: EngineManagerOptions);
48
51
  private _initialize;
49
52
  private _registerEngine;
@@ -1 +1 @@
1
- {"version":3,"file":"engine-manager.d.ts","sourceRoot":"","sources":["../../../src/creatio/engines/engine-manager.ts"],"names":[],"mappings":"AACA,OAAO,EACN,sBAAsB,EACtB,qBAAqB,EACrB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAiB,SAAS,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,cAAc,EAAc,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,MAAM,WAAW,oBAAoB;IACpC,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;IAChD,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,mFAAmF;IACnF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yDAAyD;IACzD,KAAK,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;CAC3B;AAED,qBAAa,oBAAoB;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAyB;IAClD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmC;IAC5D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAwB;IAClD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAY;IAEjC,IAAW,YAAY,sCAEtB;IAED,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,IAAW,QAAQ,IAAI,cAAc,CAEpC;IAED,IAAW,cAAc,IAAI,oBAAoB,CAEhD;IAED,IAAW,aAAa,IAAI,mBAAmB,CAE9C;IAED,IAAW,IAAI,IAAI,UAAU,CAE5B;IAED,IAAW,OAAO,IAAI,aAAa,CAElC;IAED,IAAW,OAAO,IAAI,aAAa,CAElC;IAED,IAAW,WAAW,IAAI,iBAAiB,CAE1C;IAED,IAAW,IAAI,IAAI,UAAU,CAE5B;gBAEW,OAAO,EAAE,sBAAsB,EAAE,OAAO,CAAC,EAAE,oBAAoB;IAU3E,OAAO,CAAC,WAAW;IA0DnB,OAAO,CAAC,eAAe;CAUvB"}
1
+ {"version":3,"file":"engine-manager.d.ts","sourceRoot":"","sources":["../../../src/creatio/engines/engine-manager.ts"],"names":[],"mappings":"AACA,OAAO,EACN,sBAAsB,EACtB,qBAAqB,EACrB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAiB,SAAS,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,cAAc,EAAc,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,MAAM,WAAW,oBAAoB;IACpC,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;IAChD,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,mFAAmF;IACnF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yDAAyD;IACzD,KAAK,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;CAC3B;AAED,qBAAa,oBAAoB;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAyB;IAClD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmC;IAC5D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAwB;IAClD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAY;IAEjC,IAAW,YAAY,sCAEtB;IAED,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,IAAW,QAAQ,IAAI,cAAc,CAEpC;IAED,IAAW,cAAc,IAAI,oBAAoB,CAEhD;IAED,IAAW,aAAa,IAAI,mBAAmB,CAE9C;IAED,IAAW,IAAI,IAAI,UAAU,CAE5B;IAED,IAAW,OAAO,IAAI,aAAa,CAElC;IAED,IAAW,OAAO,IAAI,aAAa,CAElC;IAED,IAAW,WAAW,IAAI,iBAAiB,CAE1C;IAED,IAAW,IAAI,IAAI,UAAU,CAE5B;IAED;0FACsF;IACzE,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;gBAIjC,OAAO,EAAE,sBAAsB,EAAE,OAAO,CAAC,EAAE,oBAAoB;IAU3E,OAAO,CAAC,WAAW;IA0DnB,OAAO,CAAC,eAAe;CAUvB"}
@@ -48,6 +48,11 @@ class CreatioEngineManager {
48
48
  get user() {
49
49
  return this._registry.require(engine_registry_1.EngineType.User);
50
50
  }
51
+ /** Proactively refresh the schema-freshness snapshot (no-op when the context doesn't support
52
+ * it). Lets the single-session keep-alive tick double as a cache-freshness check. */
53
+ async warmSchemaCache() {
54
+ await this._context.warmSchemaCache?.();
55
+ }
51
56
  constructor(context, options) {
52
57
  this._context = context;
53
58
  this._options = options;
@@ -1 +1 @@
1
- {"version":3,"file":"engine-manager.js","sourceRoot":"","sources":["../../../src/creatio/engines/engine-manager.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAY5B,qEAAgE;AAChE,iEAA6D;AAC7D,+CAA2C;AAE3C,uDAA+D;AAC/D,qDAAiD;AACjD,qDAAiD;AACjD,+DAA0D;AAC1D,+CAA2C;AAuB3C,MAAa,oBAAoB;IACf,QAAQ,CAAyB;IACjC,QAAQ,CAAmC;IAC3C,SAAS,GAAG,IAAI,gCAAc,EAAE,CAAC;IACjC,IAAI,CAAY;IAEjC,IAAW,YAAY;QACtB,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;IACnC,CAAC;IAED,IAAW,QAAQ;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC3B,CAAC;IAED,IAAW,QAAQ;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IAED,IAAW,cAAc;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAuB,4BAAU,CAAC,cAAc,CAAC,CAAC;IAChF,CAAC;IAED,IAAW,aAAa;QACvB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAsB,4BAAU,CAAC,aAAa,CAAC,CAAC;IAC9E,CAAC;IAED,IAAW,IAAI;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAa,4BAAU,CAAC,IAAI,CAAC,CAAC;IAC5D,CAAC;IAED,IAAW,OAAO;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAgB,4BAAU,CAAC,OAAO,CAAC,CAAC;IAClE,CAAC;IAED,IAAW,OAAO;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAgB,4BAAU,CAAC,OAAO,CAAC,CAAC;IAClE,CAAC;IAED,IAAW,WAAW;QACrB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAoB,4BAAU,CAAC,WAAW,CAAC,CAAC;IAC1E,CAAC;IAED,IAAW,IAAI;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAa,4BAAU,CAAC,IAAI,CAAC,CAAC;IAC5D,CAAC;IAED,YAAY,OAA+B,EAAE,OAA8B;QAC1E,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG;YACX,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,KAAK;YACpC,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,aAAG,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SAC1E,CAAC;QACF,IAAI,CAAC,WAAW,EAAE,CAAC;IACpB,CAAC;IAEO,WAAW;QAClB,IAAI,CAAC,eAAe,CACnB,4BAAU,CAAC,cAAc,EACzB,GAAG,EAAE,CACJ,IAAI,6CAAoB,CACvB,IAAI,CAAC,QAAQ,EAAE,sBAAsB,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,EACrE,IAAI,CAAC,IAAI,CACT,EACF,IAAI,CAAC,QAAQ,EAAE,oBAAoB,IAAI,IAAI,CAC3C,CAAC;QACF,IAAI,CAAC,eAAe,CACnB,4BAAU,CAAC,aAAa,EACxB,GAAG,EAAE,CACJ,IAAI,0CAAmB,CACtB,IAAI,CAAC,QAAQ,EAAE,qBAAqB,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,EACnE,IAAI,CAAC,IAAI,CACT,EACF,IAAI,CAAC,QAAQ,EAAE,mBAAmB,IAAI,IAAI,CAC1C,CAAC;QACF,IAAI,CAAC,eAAe,CACnB,4BAAU,CAAC,IAAI,EACf,GAAG,EAAE,CAAC,IAAI,wBAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,EAClF,IAAI,CAAC,QAAQ,EAAE,UAAU,IAAI,IAAI,CACjC,CAAC;QACF,IAAI,CAAC,eAAe,CACnB,4BAAU,CAAC,OAAO,EAClB,GAAG,EAAE,CACJ,IAAI,8BAAa,CAChB,IAAI,CAAC,QAAQ,EAAE,eAAe,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EACvD,IAAI,CAAC,IAAI,CACT,EACF,IAAI,CAAC,QAAQ,EAAE,aAAa,IAAI,IAAI,CACpC,CAAC;QACF,IAAI,CAAC,eAAe,CACnB,4BAAU,CAAC,OAAO,EAClB,GAAG,EAAE,CACJ,IAAI,8BAAa,CAChB,IAAI,CAAC,QAAQ,EAAE,eAAe,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EACvD,IAAI,CAAC,IAAI,CACT,EACF,IAAI,CAAC,QAAQ,EAAE,aAAa,IAAI,IAAI,CACpC,CAAC;QACF,IAAI,CAAC,eAAe,CACnB,4BAAU,CAAC,WAAW,EACtB,GAAG,EAAE,CACJ,IAAI,uCAAiB,CACpB,IAAI,CAAC,QAAQ,EAAE,mBAAmB,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,EAC/D,IAAI,CAAC,IAAI,CACT,EACF,IAAI,CAAC,QAAQ,EAAE,iBAAiB,IAAI,IAAI,CACxC,CAAC;QACF,IAAI,CAAC,eAAe,CACnB,4BAAU,CAAC,IAAI,EACf,GAAG,EAAE,CAAC,IAAI,wBAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,EAClF,IAAI,CAAC,QAAQ,EAAE,UAAU,IAAI,IAAI,CACjC,CAAC;IACH,CAAC;IAEO,eAAe,CACtB,IAAgB,EAChB,OAAgB,EAChB,OAAgB;QAEhB,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,OAAO;QACR,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IACpC,CAAC;CACD;AA5HD,oDA4HC"}
1
+ {"version":3,"file":"engine-manager.js","sourceRoot":"","sources":["../../../src/creatio/engines/engine-manager.ts"],"names":[],"mappings":"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"}
@@ -9,5 +9,8 @@ export interface CreatioProviderContext {
9
9
  process: ProcessProvider;
10
10
  sysSettings: SysSettingsProvider;
11
11
  user: UserProvider;
12
+ /** Optional: proactively refresh the schema-freshness snapshot (implemented by
13
+ * {@link CreatioServiceContext}; absent on test fakes). */
14
+ warmSchemaCache?(): Promise<void>;
12
15
  }
13
16
  //# sourceMappingURL=provider-context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider-context.d.ts","sourceRoot":"","sources":["../../src/creatio/provider-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACN,sBAAsB,EACtB,qBAAqB,EACrB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,sBAAsB;IACtC,YAAY,EAAE,oBAAoB,CAAC;IACnC,cAAc,EAAE,sBAAsB,CAAC;IACvC,aAAa,EAAE,qBAAqB,CAAC;IACrC,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,eAAe,CAAC;IACzB,OAAO,EAAE,eAAe,CAAC;IACzB,WAAW,EAAE,mBAAmB,CAAC;IACjC,IAAI,EAAE,YAAY,CAAC;CACnB"}
1
+ {"version":3,"file":"provider-context.d.ts","sourceRoot":"","sources":["../../src/creatio/provider-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACN,sBAAsB,EACtB,qBAAqB,EACrB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,sBAAsB;IACtC,YAAY,EAAE,oBAAoB,CAAC;IACnC,cAAc,EAAE,sBAAsB,CAAC;IACvC,aAAa,EAAE,qBAAqB,CAAC;IACrC,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,eAAe,CAAC;IACzB,OAAO,EAAE,eAAe,CAAC;IACzB,WAAW,EAAE,mBAAmB,CAAC;IACjC,IAAI,EAAE,YAAY,CAAC;IACnB;gEAC4D;IAC5D,eAAe,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAClC"}
@@ -0,0 +1,22 @@
1
+ import { CreatioHttpClient } from './http-client';
2
+ /** Parsed `/api/ClientCache/Hashes` response: the global cache version + a name→hash map. */
3
+ export interface ClientCacheHashes {
4
+ /** SysSetting `ClientCacheVersion` — a manual global bump that force-busts every client cache. */
5
+ cacheVersion: number;
6
+ /** Per-cache content hashes keyed by cache name (e.g. `runtime-entity-schema`). */
7
+ hashes: Record<string, string>;
8
+ }
9
+ /**
10
+ * Thin transport for Creatio's client-cache hash endpoint (`GET /0/api/ClientCache/Hashes`) — the
11
+ * same stamp the Freedom UI polls to learn when its cached schemas/settings went stale (see core
12
+ * `ClientCacheController` + `CacheHashBuilder`). Pure transport: it fetches and shapes the
13
+ * response and NEVER throws (returns `null` on any failure) so the freshness policy can degrade
14
+ * gracefully. It knows nothing about WHAT we cache or WHEN to invalidate — that is the gate's job.
15
+ */
16
+ export declare class ClientCacheHashClient {
17
+ private readonly _client;
18
+ constructor(client: CreatioHttpClient);
19
+ private _url;
20
+ getHashes(): Promise<ClientCacheHashes | null>;
21
+ }
22
+ //# sourceMappingURL=client-cache-hash-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client-cache-hash-client.d.ts","sourceRoot":"","sources":["../../../src/creatio/services/client-cache-hash-client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD,6FAA6F;AAC7F,MAAM,WAAW,iBAAiB;IACjC,kGAAkG;IAClG,YAAY,EAAE,MAAM,CAAC;IACrB,mFAAmF;IACnF,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED;;;;;;GAMG;AACH,qBAAa,qBAAqB;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;gBAEhC,MAAM,EAAE,iBAAiB;IAIrC,OAAO,CAAC,IAAI;IAKC,SAAS,IAAI,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;CA6B3D"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ClientCacheHashClient = void 0;
7
+ const log_1 = __importDefault(require("../../log"));
8
+ /**
9
+ * Thin transport for Creatio's client-cache hash endpoint (`GET /0/api/ClientCache/Hashes`) — the
10
+ * same stamp the Freedom UI polls to learn when its cached schemas/settings went stale (see core
11
+ * `ClientCacheController` + `CacheHashBuilder`). Pure transport: it fetches and shapes the
12
+ * response and NEVER throws (returns `null` on any failure) so the freshness policy can degrade
13
+ * gracefully. It knows nothing about WHAT we cache or WHEN to invalidate — that is the gate's job.
14
+ */
15
+ class ClientCacheHashClient {
16
+ _client;
17
+ constructor(client) {
18
+ this._client = client;
19
+ }
20
+ _url() {
21
+ // `/api/…` (not `/rest/…`), under the same `/0` workspace prefix the rest of our calls use.
22
+ return `${this._client.normalizedBaseUrl}/0/api/ClientCache/Hashes`;
23
+ }
24
+ async getHashes() {
25
+ const url = this._url();
26
+ try {
27
+ const headers = await this._client.getJsonHeaders();
28
+ const response = await this._client.fetchWithAuth(url, async () => ({ headers }));
29
+ if (!response.ok) {
30
+ log_1.default.warn('creatio.client_cache.hashes.not_ok', { url, status: response.status });
31
+ return null;
32
+ }
33
+ const body = await response.json().catch(() => null);
34
+ if (!body || !Array.isArray(body.hashes)) {
35
+ return null;
36
+ }
37
+ const hashes = {};
38
+ for (const entry of body.hashes) {
39
+ if (entry && typeof entry.name === 'string') {
40
+ hashes[entry.name] = String(entry.value ?? '');
41
+ }
42
+ }
43
+ const parsedVersion = Number(body.cacheVersion);
44
+ return {
45
+ cacheVersion: Number.isFinite(parsedVersion) ? parsedVersion : 0,
46
+ hashes,
47
+ };
48
+ }
49
+ catch (err) {
50
+ log_1.default.warn('creatio.client_cache.hashes.failed', { url, error: String(err) });
51
+ return null;
52
+ }
53
+ }
54
+ }
55
+ exports.ClientCacheHashClient = ClientCacheHashClient;
56
+ //# sourceMappingURL=client-cache-hash-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client-cache-hash-client.js","sourceRoot":"","sources":["../../../src/creatio/services/client-cache-hash-client.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAY5B;;;;;;GAMG;AACH,MAAa,qBAAqB;IAChB,OAAO,CAAoB;IAE5C,YAAY,MAAyB;QACpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACvB,CAAC;IAEO,IAAI;QACX,4FAA4F;QAC5F,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,2BAA2B,CAAC;IACrE,CAAC;IAEM,KAAK,CAAC,SAAS;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC;YACJ,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YACpD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;YAClF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAClB,aAAG,CAAC,IAAI,CAAC,oCAAoC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;gBACjF,OAAO,IAAI,CAAC;YACb,CAAC;YACD,MAAM,IAAI,GAAQ,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YAC1D,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1C,OAAO,IAAI,CAAC;YACb,CAAC;YACD,MAAM,MAAM,GAA2B,EAAE,CAAC;YAC1C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjC,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC7C,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;gBAChD,CAAC;YACF,CAAC;YACD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAChD,OAAO;gBACN,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;gBAChE,MAAM;aACN,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,aAAG,CAAC,IAAI,CAAC,oCAAoC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5E,OAAO,IAAI,CAAC;QACb,CAAC;IACF,CAAC;CACD;AAzCD,sDAyCC"}
@@ -6,6 +6,7 @@ export declare class CreatioServiceContext implements CreatioProviderContext {
6
6
  private readonly _config;
7
7
  private readonly _authManager;
8
8
  private readonly _httpClient;
9
+ private readonly _freshness;
9
10
  readonly kind = "creatio-services";
10
11
  readonly adminOperation: AdminOperationProvider;
11
12
  readonly configuration: ConfigurationProvider;
@@ -16,5 +17,9 @@ export declare class CreatioServiceContext implements CreatioProviderContext {
16
17
  readonly user: UserProvider;
17
18
  get authProvider(): ICreatioAuthProvider;
18
19
  constructor(config: CreatioClientConfig);
20
+ /** Proactively refresh the schema-freshness snapshot for the current base URL. Lets the
21
+ * single-session keep-alive tick double as a cache-freshness check, so its periodic ping isn't
22
+ * wasted. Best-effort: the gate already swallows endpoint failures. */
23
+ warmSchemaCache(): Promise<void>;
19
24
  }
20
25
  //# sourceMappingURL=creatio-service-context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"creatio-service-context.d.ts","sourceRoot":"","sources":["../../../src/creatio/services/creatio-service-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,oBAAoB,EAAE,MAAM,SAAS,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EACN,sBAAsB,EACtB,qBAAqB,EACrB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAY7D,qBAAa,qBAAsB,YAAW,sBAAsB;IACnE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;IAC9C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqB;IAClD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAEhD,SAAgB,IAAI,sBAAsB;IAC1C,SAAgB,cAAc,EAAE,sBAAsB,CAAC;IACvD,SAAgB,aAAa,EAAE,qBAAqB,CAAC;IACrD,SAAgB,IAAI,EAAE,YAAY,CAAC;IACnC,SAAgB,OAAO,EAAE,eAAe,CAAC;IACzC,SAAgB,OAAO,EAAE,eAAe,CAAC;IACzC,SAAgB,WAAW,EAAE,mBAAmB,CAAC;IACjD,SAAgB,IAAI,EAAE,YAAY,CAAC;IAEnC,IAAW,YAAY,IAAI,oBAAoB,CAE9C;gBAEW,MAAM,EAAE,mBAAmB;CAgBvC"}
1
+ {"version":3,"file":"creatio-service-context.d.ts","sourceRoot":"","sources":["../../../src/creatio/services/creatio-service-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,oBAAoB,EAAE,MAAM,SAAS,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EACN,sBAAsB,EACtB,qBAAqB,EACrB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAc7D,qBAAa,qBAAsB,YAAW,sBAAsB;IACnE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;IAC9C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqB;IAClD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IAEjD,SAAgB,IAAI,sBAAsB;IAC1C,SAAgB,cAAc,EAAE,sBAAsB,CAAC;IACvD,SAAgB,aAAa,EAAE,qBAAqB,CAAC;IACrD,SAAgB,IAAI,EAAE,YAAY,CAAC;IACnC,SAAgB,OAAO,EAAE,eAAe,CAAC;IACzC,SAAgB,OAAO,EAAE,eAAe,CAAC;IACzC,SAAgB,WAAW,EAAE,mBAAmB,CAAC;IACjD,SAAgB,IAAI,EAAE,YAAY,CAAC;IAEnC,IAAW,YAAY,IAAI,oBAAoB,CAE9C;gBAEW,MAAM,EAAE,mBAAmB;IAsBvC;;4EAEwE;IAC3D,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7C"}
@@ -3,18 +3,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CreatioServiceContext = void 0;
4
4
  const auth_1 = require("../auth");
5
5
  const admin_operation_service_provider_1 = require("./admin-operation-service-provider");
6
+ const client_cache_hash_client_1 = require("./client-cache-hash-client");
6
7
  const configuration_service_provider_1 = require("./configuration-service-provider");
7
8
  const crud_provider_factory_1 = require("./crud-provider-factory");
8
9
  const feature_service_provider_1 = require("./feature-service-provider");
9
10
  const http_client_1 = require("./http-client");
10
11
  const metadata_store_1 = require("./odata/metadata-store");
11
12
  const process_service_provider_1 = require("./process-service-provider");
13
+ const schema_freshness_gate_1 = require("./schema-freshness-gate");
12
14
  const sys_settings_service_provider_1 = require("./sys-settings-service-provider");
13
15
  const user_info_provider_1 = require("./user-info-provider");
14
16
  class CreatioServiceContext {
15
17
  _config;
16
18
  _authManager;
17
19
  _httpClient;
20
+ _freshness;
18
21
  kind = 'creatio-services';
19
22
  adminOperation;
20
23
  configuration;
@@ -30,18 +33,29 @@ class CreatioServiceContext {
30
33
  this._config = config;
31
34
  this._authManager = new auth_1.CreatioAuthManager(this._config);
32
35
  this._httpClient = new http_client_1.CreatioHttpClient(this._config, this._authManager);
33
- const metadataStore = new metadata_store_1.ODataMetadataStore(this._httpClient);
36
+ // Content-validated schema freshness: polls Creatio's own client-cache hash stamp
37
+ // (`/api/ClientCache/Hashes`) so cached schemas/metadata invalidate when the data model
38
+ // changes — the same signal the Freedom UI uses. Shared by both CRUD backends.
39
+ this._freshness = new schema_freshness_gate_1.SchemaFreshnessGate(new client_cache_hash_client_1.ClientCacheHashClient(this._httpClient));
40
+ const metadataStore = new metadata_store_1.ODataMetadataStore(this._httpClient, this._freshness);
34
41
  this.adminOperation = new admin_operation_service_provider_1.AdminOperationServiceProvider(this._httpClient);
35
42
  this.configuration = new configuration_service_provider_1.ConfigurationServiceProvider(this._httpClient);
36
43
  this.crud = (0, crud_provider_factory_1.createCrudProvider)(config.crudBackend, {
37
44
  client: this._httpClient,
38
45
  metadataStore,
46
+ freshness: this._freshness,
39
47
  });
40
48
  this.feature = new feature_service_provider_1.FeatureServiceProvider(this._httpClient);
41
49
  this.process = new process_service_provider_1.ProcessServiceProvider(this._httpClient);
42
50
  this.sysSettings = new sys_settings_service_provider_1.SysSettingsServiceProvider(this._httpClient);
43
51
  this.user = new user_info_provider_1.UserInfoProvider(this._httpClient);
44
52
  }
53
+ /** Proactively refresh the schema-freshness snapshot for the current base URL. Lets the
54
+ * single-session keep-alive tick double as a cache-freshness check, so its periodic ping isn't
55
+ * wasted. Best-effort: the gate already swallows endpoint failures. */
56
+ async warmSchemaCache() {
57
+ await this._freshness.getSchemaVersion(this._httpClient.normalizedBaseUrl);
58
+ }
45
59
  }
46
60
  exports.CreatioServiceContext = CreatioServiceContext;
47
61
  //# sourceMappingURL=creatio-service-context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"creatio-service-context.js","sourceRoot":"","sources":["../../../src/creatio/services/creatio-service-context.ts"],"names":[],"mappings":";;;AAAA,kCAAmE;AAanE,yFAAmF;AACnF,qFAAgF;AAChF,mEAA6D;AAC7D,yEAAoE;AACpE,+CAAkD;AAClD,2DAA4D;AAC5D,yEAAoE;AACpE,mFAA6E;AAC7E,6DAAwD;AAExD,MAAa,qBAAqB;IAChB,OAAO,CAAsB;IAC7B,YAAY,CAAqB;IACjC,WAAW,CAAoB;IAEhC,IAAI,GAAG,kBAAkB,CAAC;IAC1B,cAAc,CAAyB;IACvC,aAAa,CAAwB;IACrC,IAAI,CAAe;IACnB,OAAO,CAAkB;IACzB,OAAO,CAAkB;IACzB,WAAW,CAAsB;IACjC,IAAI,CAAe;IAEnC,IAAW,YAAY;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IACxC,CAAC;IAED,YAAY,MAA2B;QACtC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,IAAI,yBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,CAAC,WAAW,GAAG,IAAI,+BAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1E,MAAM,aAAa,GAAG,IAAI,mCAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/D,IAAI,CAAC,cAAc,GAAG,IAAI,gEAA6B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1E,IAAI,CAAC,aAAa,GAAG,IAAI,6DAA4B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxE,IAAI,CAAC,IAAI,GAAG,IAAA,0CAAkB,EAAC,MAAM,CAAC,WAAW,EAAE;YAClD,MAAM,EAAE,IAAI,CAAC,WAAW;YACxB,aAAa;SACb,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,IAAI,iDAAsB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5D,IAAI,CAAC,OAAO,GAAG,IAAI,iDAAsB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5D,IAAI,CAAC,WAAW,GAAG,IAAI,0DAA0B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpE,IAAI,CAAC,IAAI,GAAG,IAAI,qCAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACpD,CAAC;CACD;AAlCD,sDAkCC"}
1
+ {"version":3,"file":"creatio-service-context.js","sourceRoot":"","sources":["../../../src/creatio/services/creatio-service-context.ts"],"names":[],"mappings":";;;AAAA,kCAAmE;AAanE,yFAAmF;AACnF,yEAAmE;AACnE,qFAAgF;AAChF,mEAA6D;AAC7D,yEAAoE;AACpE,+CAAkD;AAClD,2DAA4D;AAC5D,yEAAoE;AACpE,mEAA8D;AAC9D,mFAA6E;AAC7E,6DAAwD;AAExD,MAAa,qBAAqB;IAChB,OAAO,CAAsB;IAC7B,YAAY,CAAqB;IACjC,WAAW,CAAoB;IAC/B,UAAU,CAAsB;IAEjC,IAAI,GAAG,kBAAkB,CAAC;IAC1B,cAAc,CAAyB;IACvC,aAAa,CAAwB;IACrC,IAAI,CAAe;IACnB,OAAO,CAAkB;IACzB,OAAO,CAAkB;IACzB,WAAW,CAAsB;IACjC,IAAI,CAAe;IAEnC,IAAW,YAAY;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IACxC,CAAC;IAED,YAAY,MAA2B;QACtC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,IAAI,yBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,CAAC,WAAW,GAAG,IAAI,+BAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1E,kFAAkF;QAClF,wFAAwF;QACxF,+EAA+E;QAC/E,IAAI,CAAC,UAAU,GAAG,IAAI,2CAAmB,CAAC,IAAI,gDAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QACvF,MAAM,aAAa,GAAG,IAAI,mCAAkB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAChF,IAAI,CAAC,cAAc,GAAG,IAAI,gEAA6B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1E,IAAI,CAAC,aAAa,GAAG,IAAI,6DAA4B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxE,IAAI,CAAC,IAAI,GAAG,IAAA,0CAAkB,EAAC,MAAM,CAAC,WAAW,EAAE;YAClD,MAAM,EAAE,IAAI,CAAC,WAAW;YACxB,aAAa;YACb,SAAS,EAAE,IAAI,CAAC,UAAU;SAC1B,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,IAAI,iDAAsB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5D,IAAI,CAAC,OAAO,GAAG,IAAI,iDAAsB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5D,IAAI,CAAC,WAAW,GAAG,IAAI,0DAA0B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpE,IAAI,CAAC,IAAI,GAAG,IAAI,qCAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACpD,CAAC;IAED;;4EAEwE;IACjE,KAAK,CAAC,eAAe;QAC3B,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;IAC5E,CAAC;CACD;AA/CD,sDA+CC"}
@@ -2,9 +2,13 @@ import { CrudBackend } from '../client-config';
2
2
  import { CrudProvider } from '../contracts';
3
3
  import { CreatioHttpClient } from './http-client';
4
4
  import { ODataMetadataStore } from './odata/metadata-store';
5
+ import { SchemaFreshnessGate } from './schema-freshness-gate';
5
6
  export interface CrudProviderDeps {
6
7
  client: CreatioHttpClient;
7
8
  metadataStore: ODataMetadataStore;
9
+ /** Shared schema-freshness gate (content-validated cache). Optional: omitted in tests, where
10
+ * schema caches stay purely TTL-driven. */
11
+ freshness?: SchemaFreshnessGate;
8
12
  }
9
13
  /**
10
14
  * Selects the CRUD provider for the configured backend — the same per-deployment,
@@ -1 +1 @@
1
- {"version":3,"file":"crud-provider-factory.d.ts","sourceRoot":"","sources":["../../../src/creatio/services/crud-provider-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAG5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAG5D,MAAM,WAAW,gBAAgB;IAChC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,aAAa,EAAE,kBAAkB,CAAC;CAClC;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CACjC,OAAO,EAAE,WAAW,GAAG,SAAS,EAChC,IAAI,EAAE,gBAAgB,GACpB,YAAY,CASd"}
1
+ {"version":3,"file":"crud-provider-factory.d.ts","sourceRoot":"","sources":["../../../src/creatio/services/crud-provider-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAG5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,MAAM,WAAW,gBAAgB;IAChC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,aAAa,EAAE,kBAAkB,CAAC;IAClC;gDAC4C;IAC5C,SAAS,CAAC,EAAE,mBAAmB,CAAC;CAChC;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CACjC,OAAO,EAAE,WAAW,GAAG,SAAS,EAChC,IAAI,EAAE,gBAAgB,GACpB,YAAY,CAYd"}
@@ -12,7 +12,7 @@ const odata_crud_provider_1 = require("./odata/odata-crud-provider");
12
12
  function createCrudProvider(backend, deps) {
13
13
  switch (backend ?? 'dataservice') {
14
14
  case 'dataservice':
15
- return new data_service_crud_provider_1.DataServiceCrudProvider(deps.client);
15
+ return new data_service_crud_provider_1.DataServiceCrudProvider(deps.client, deps.freshness ? { freshness: deps.freshness } : {});
16
16
  case 'odata':
17
17
  return new odata_crud_provider_1.ODataCrudProvider(deps.client, deps.metadataStore);
18
18
  default:
@@ -1 +1 @@
1
- {"version":3,"file":"crud-provider-factory.js","sourceRoot":"","sources":["../../../src/creatio/services/crud-provider-factory.ts"],"names":[],"mappings":";;AAmBA,gDAYC;AA5BD,yFAAmF;AAGnF,qEAAgE;AAOhE;;;;;GAKG;AACH,SAAgB,kBAAkB,CACjC,OAAgC,EAChC,IAAsB;IAEtB,QAAQ,OAAO,IAAI,aAAa,EAAE,CAAC;QAClC,KAAK,aAAa;YACjB,OAAO,IAAI,oDAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjD,KAAK,OAAO;YACX,OAAO,IAAI,uCAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAC/D;YACC,MAAM,IAAI,KAAK,CAAC,4BAA4B,OAAO,EAAE,CAAC,CAAC;IACzD,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"crud-provider-factory.js","sourceRoot":"","sources":["../../../src/creatio/services/crud-provider-factory.ts"],"names":[],"mappings":";;AAuBA,gDAeC;AAnCD,yFAAmF;AAGnF,qEAAgE;AAWhE;;;;;GAKG;AACH,SAAgB,kBAAkB,CACjC,OAAgC,EAChC,IAAsB;IAEtB,QAAQ,OAAO,IAAI,aAAa,EAAE,CAAC;QAClC,KAAK,aAAa;YACjB,OAAO,IAAI,oDAAuB,CACjC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CACnD,CAAC;QACH,KAAK,OAAO;YACX,OAAO,IAAI,uCAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAC/D;YACC,MAAM,IAAI,KAAK,CAAC,4BAA4B,OAAO,EAAE,CAAC,CAAC;IACzD,CAAC;AACF,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { CrudCapabilities, CrudDeleteParams, CrudProvider, CrudUpdateParams, CrudWriteParams, EntitySchemaDescription, ReadQuery, ReadResult } from '../../contracts';
2
2
  import { CreatioHttpClient } from '../http-client';
3
+ import { SchemaFreshnessGate } from '../schema-freshness-gate';
3
4
  import { DataServiceFilterTranslator } from './data-service-filter-translator';
4
5
  import { DataServiceQueryBuilder } from './data-service-query-builder';
5
6
  import { DataServiceSchemaProvider } from './data-service-schema';
@@ -28,6 +29,7 @@ export declare class DataServiceCrudProvider implements CrudProvider {
28
29
  queryBuilder?: DataServiceQueryBuilder;
29
30
  filters?: DataServiceFilterTranslator;
30
31
  schema?: DataServiceSchemaProvider;
32
+ freshness?: SchemaFreshnessGate;
31
33
  });
32
34
  private _rows;
33
35
  private _extractCount;
@@ -1 +1 @@
1
- {"version":3,"file":"data-service-crud-provider.d.ts","sourceRoot":"","sources":["../../../../src/creatio/services/dataservice/data-service-crud-provider.ts"],"names":[],"mappings":"AACA,OAAO,EACN,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,uBAAuB,EACvB,SAAS,EACT,UAAU,EACV,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGnD,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAsB,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAC3F,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAEN,sBAAsB,EAEtB,MAAM,sBAAsB,CAAC;AAI9B;;;;;;;;;;GAUG;AACH,qBAAa,uBAAwB,YAAW,YAAY;IAC3D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuB;IAClD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0B;IACxD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8B;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B;IAEpD,SAAgB,IAAI,yBAAyB;IAG7C,SAAgB,YAAY,EAAE,gBAAgB,CAAuC;gBAGpF,MAAM,EAAE,iBAAiB,EACzB,IAAI,GAAE;QACL,SAAS,CAAC,EAAE,oBAAoB,CAAC;QACjC,YAAY,CAAC,EAAE,uBAAuB,CAAC;QACvC,OAAO,CAAC,EAAE,2BAA2B,CAAC;QACtC,MAAM,CAAC,EAAE,yBAAyB,CAAC;KAC9B;IAQP,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,aAAa;IAOrB,iGAAiG;IACjG,OAAO,CAAC,WAAW;YAaL,aAAa;IAgB3B;oEACgE;IAChE,OAAO,CAAC,QAAQ;IAehB,qEAAqE;IAC9D,gBAAgB,CAAC,KAAK,EAAE,SAAS,GAAG,sBAAsB;IAI1D,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAI7B,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAInE,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC;IA8B3C,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC;IAWvD,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC;IAgB5D,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC;CAanE"}
1
+ {"version":3,"file":"data-service-crud-provider.d.ts","sourceRoot":"","sources":["../../../../src/creatio/services/dataservice/data-service-crud-provider.ts"],"names":[],"mappings":"AACA,OAAO,EACN,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,uBAAuB,EACvB,SAAS,EACT,UAAU,EACV,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/D,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAsB,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAC3F,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAEN,sBAAsB,EAEtB,MAAM,sBAAsB,CAAC;AAI9B;;;;;;;;;;GAUG;AACH,qBAAa,uBAAwB,YAAW,YAAY;IAC3D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuB;IAClD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0B;IACxD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8B;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B;IAEpD,SAAgB,IAAI,yBAAyB;IAG7C,SAAgB,YAAY,EAAE,gBAAgB,CAAuC;gBAGpF,MAAM,EAAE,iBAAiB,EACzB,IAAI,GAAE;QACL,SAAS,CAAC,EAAE,oBAAoB,CAAC;QACjC,YAAY,CAAC,EAAE,uBAAuB,CAAC;QACvC,OAAO,CAAC,EAAE,2BAA2B,CAAC;QACtC,MAAM,CAAC,EAAE,yBAAyB,CAAC;QACnC,SAAS,CAAC,EAAE,mBAAmB,CAAC;KAC3B;IAUP,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,aAAa;IAOrB,iGAAiG;IACjG,OAAO,CAAC,WAAW;YAaL,aAAa;IAgB3B;oEACgE;IAChE,OAAO,CAAC,QAAQ;IAehB,qEAAqE;IAC9D,gBAAgB,CAAC,KAAK,EAAE,SAAS,GAAG,sBAAsB;IAI1D,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAI7B,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAInE,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC;IA8B3C,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC;IAWvD,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC;IAgB5D,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC;CAanE"}
@@ -37,7 +37,9 @@ class DataServiceCrudProvider {
37
37
  this._transport = deps.transport ?? new data_service_transport_1.DataServiceTransport(client);
38
38
  this._queryBuilder = deps.queryBuilder ?? new data_service_query_builder_1.DataServiceQueryBuilder();
39
39
  this._filters = deps.filters ?? new data_service_filter_translator_1.DataServiceFilterTranslator();
40
- this._schema = deps.schema ?? new data_service_schema_1.DataServiceSchemaProvider(this._transport);
40
+ this._schema =
41
+ deps.schema ??
42
+ new data_service_schema_1.DataServiceSchemaProvider(this._transport, undefined, undefined, deps.freshness);
41
43
  }
42
44
  _rows(body) {
43
45
  return Array.isArray(body?.rows) ? body.rows : [];
@@ -1 +1 @@
1
- {"version":3,"file":"data-service-crud-provider.js","sourceRoot":"","sources":["../../../../src/creatio/services/dataservice/data-service-crud-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-service-crud-provider.js","sourceRoot":"","sources":["../../../../src/creatio/services/dataservice/data-service-crud-provider.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { EntitySchemaDescription } from '../../contracts';
2
+ import { SchemaFreshnessGate } from '../schema-freshness-gate';
2
3
  import { DataServiceFilterTranslator } from './data-service-filter-translator';
3
4
  import { DataServiceQueryBuilder } from './data-service-query-builder';
4
5
  import { DataServiceTransport } from './data-service-transport';
@@ -17,8 +18,9 @@ export declare class DataServiceSchemaProvider {
17
18
  private readonly _transport;
18
19
  private readonly _queryBuilder;
19
20
  private readonly _filters;
21
+ private readonly _freshness;
20
22
  private readonly _schemaCache;
21
- constructor(transport: DataServiceTransport, queryBuilder?: DataServiceQueryBuilder, filters?: DataServiceFilterTranslator);
23
+ constructor(transport: DataServiceTransport, queryBuilder?: DataServiceQueryBuilder, filters?: DataServiceFilterTranslator, freshness?: SchemaFreshnessGate);
22
24
  private _getRuntimeSchema;
23
25
  private _columns;
24
26
  /** Build the entity-list SelectQuery (visible for tests). */
@@ -1 +1 @@
1
- {"version":3,"file":"data-service-schema.d.ts","sourceRoot":"","sources":["../../../../src/creatio/services/dataservice/data-service-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAoB7E;;;;;;;;;GASG;AACH,qBAAa,yBAAyB;IACrC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuB;IAClD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0B;IACxD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8B;IACvD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA4D;gBAGxF,SAAS,EAAE,oBAAoB,EAC/B,YAAY,0BAAgC,EAC5C,OAAO,8BAAoC;YAO9B,iBAAiB;IAkB/B,OAAO,CAAC,QAAQ;IAIhB,6DAA6D;IACtD,cAAc,IAAI,sBAAsB;IAWlC,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAanC,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAgBhF,4FAA4F;IAC/E,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CAS7E"}
1
+ {"version":3,"file":"data-service-schema.d.ts","sourceRoot":"","sources":["../../../../src/creatio/services/dataservice/data-service-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAoB7E;;;;;;;;;GASG;AACH,qBAAa,yBAAyB;IACrC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuB;IAClD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0B;IACxD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8B;IACvD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkC;IAK7D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6E;gBAGzG,SAAS,EAAE,oBAAoB,EAC/B,YAAY,0BAAgC,EAC5C,OAAO,8BAAoC,EAC3C,SAAS,CAAC,EAAE,mBAAmB;YAQlB,iBAAiB;IAqB/B,OAAO,CAAC,QAAQ;IAIhB,6DAA6D;IACtD,cAAc,IAAI,sBAAsB;IAWlC,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAanC,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAgBhF,4FAA4F;IAC/E,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CAS7E"}
@@ -21,15 +21,24 @@ class DataServiceSchemaProvider {
21
21
  _transport;
22
22
  _queryBuilder;
23
23
  _filters;
24
+ _freshness;
25
+ // Keyed by `${baseUrl}::${name}` so a multi-tenant gateway never serves tenant A's schema to B.
26
+ // Each entry is stamped with the freshness version at fetch time; a version mismatch (the data
27
+ // model changed) treats it as a miss. The TTL is a coarse backstop (and the sole freshness gate
28
+ // when no SchemaFreshnessGate is wired — then `version` is constant and behaviour is unchanged).
24
29
  _schemaCache = new Map();
25
- constructor(transport, queryBuilder = new data_service_query_builder_1.DataServiceQueryBuilder(), filters = new data_service_filter_translator_1.DataServiceFilterTranslator()) {
30
+ constructor(transport, queryBuilder = new data_service_query_builder_1.DataServiceQueryBuilder(), filters = new data_service_filter_translator_1.DataServiceFilterTranslator(), freshness) {
26
31
  this._transport = transport;
27
32
  this._queryBuilder = queryBuilder;
28
33
  this._filters = filters;
34
+ this._freshness = freshness;
29
35
  }
30
36
  async _getRuntimeSchema(name) {
31
- const cached = this._schemaCache.get(name);
32
- if (cached && Date.now() - cached.at < CACHE_TTL_MS) {
37
+ const baseUrl = this._transport.baseUrl;
38
+ const version = this._freshness ? await this._freshness.getSchemaVersion(baseUrl) : '';
39
+ const key = `${baseUrl}::${name}`;
40
+ const cached = this._schemaCache.get(key);
41
+ if (cached && cached.version === version && Date.now() - cached.at < CACHE_TTL_MS) {
33
42
  return cached.schema;
34
43
  }
35
44
  const body = await this._transport.post('RuntimeEntitySchemaRequest', { name }, { logContext: { entity: name }, checkSuccess: true });
@@ -37,7 +46,7 @@ class DataServiceSchemaProvider {
37
46
  if (!schema || !schema.name) {
38
47
  throw new Error(`entity_not_found:${name}`);
39
48
  }
40
- this._schemaCache.set(name, { schema, at: Date.now() });
49
+ this._schemaCache.set(key, { schema, version, at: Date.now() });
41
50
  return schema;
42
51
  }
43
52
  _columns(schema) {
@@ -1 +1 @@
1
- {"version":3,"file":"data-service-schema.js","sourceRoot":"","sources":["../../../../src/creatio/services/dataservice/data-service-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-service-schema.js","sourceRoot":"","sources":["../../../../src/creatio/services/dataservice/data-service-schema.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,9 @@ export declare class DataServiceTransport {
12
12
  private readonly _client;
13
13
  constructor(client: CreatioHttpClient);
14
14
  private _assertSuccess;
15
+ /** The Creatio instance base for the current request (honors the gateway per-request override).
16
+ * Used to key schema caches per tenant. */
17
+ get baseUrl(): string;
15
18
  endpoint(operation: string): string;
16
19
  post(operation: string, payload: unknown, opts?: {
17
20
  logContext?: Record<string, unknown>;
@@ -1 +1 @@
1
- {"version":3,"file":"data-service-transport.d.ts","sourceRoot":"","sources":["../../../../src/creatio/services/dataservice/data-service-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD;;;;;;;;GAQG;AACH,qBAAa,oBAAoB;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;gBAEhC,MAAM,EAAE,iBAAiB;IAIrC,OAAO,CAAC,cAAc;IAaf,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAI7B,IAAI,CAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,EAChB,IAAI,GAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,YAAY,CAAC,EAAE,OAAO,CAAA;KAAO,GACzE,OAAO,CAAC,GAAG,CAAC;CA0Bf"}
1
+ {"version":3,"file":"data-service-transport.d.ts","sourceRoot":"","sources":["../../../../src/creatio/services/dataservice/data-service-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD;;;;;;;;GAQG;AACH,qBAAa,oBAAoB;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;gBAEhC,MAAM,EAAE,iBAAiB;IAIrC,OAAO,CAAC,cAAc;IAatB;gDAC4C;IAC5C,IAAW,OAAO,IAAI,MAAM,CAE3B;IAEM,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAI7B,IAAI,CAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,EAChB,IAAI,GAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,YAAY,CAAC,EAAE,OAAO,CAAA;KAAO,GACzE,OAAO,CAAC,GAAG,CAAC;CA0Bf"}
@@ -26,6 +26,11 @@ class DataServiceTransport {
26
26
  throw new Error(`creatio_dataservice_${operation}_error:${message}`);
27
27
  }
28
28
  }
29
+ /** The Creatio instance base for the current request (honors the gateway per-request override).
30
+ * Used to key schema caches per tenant. */
31
+ get baseUrl() {
32
+ return this._client.normalizedBaseUrl;
33
+ }
29
34
  endpoint(operation) {
30
35
  return `${this._client.normalizedBaseUrl}/0/DataService/json/SyncReply/${operation}`;
31
36
  }
@@ -1 +1 @@
1
- {"version":3,"file":"data-service-transport.js","sourceRoot":"","sources":["../../../../src/creatio/services/dataservice/data-service-transport.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;GAQG;AACH,MAAa,oBAAoB;IACf,OAAO,CAAoB;IAE5C,YAAY,MAAyB;QACpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACvB,CAAC;IAEO,cAAc,CAAC,SAAiB,EAAE,IAAS;QAClD,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YACpC,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC;YACrC,MAAM,OAAO,GACZ,EAAE,CAAC,OAAO;gBACV,EAAE,CAAC,OAAO;gBACV,IAAI,CAAC,SAAS,EAAE,OAAO;gBACvB,IAAI,CAAC,SAAS,EAAE,OAAO;gBACvB,eAAe,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,uBAAuB,SAAS,UAAU,OAAO,EAAE,CAAC,CAAC;QACtE,CAAC;IACF,CAAC;IAEM,QAAQ,CAAC,SAAiB;QAChC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,iCAAiC,SAAS,EAAE,CAAC;IACtF,CAAC;IAEM,KAAK,CAAC,IAAI,CAChB,SAAiB,EACjB,OAAgB,EAChB,OAAyE,EAAE;QAE3E,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAC1B,eAAe,SAAS,EAAE,EAC1B,GAAG,EACH,KAAK,IAAI,EAAE;YACV,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAC3D,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC,EACD,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;YAC5B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACrD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACvB,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YACtC,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,UAAU,CACtB,eAAe,SAAS,EAAE,EAC1B,QAAQ,CAAC,MAAM,EACf,QAAQ,EACR,UAAU,CACV,CAAC;YACF,OAAO,IAAI,CAAC;QACb,CAAC,EACD,EAAE,WAAW,EAAE,uBAAuB,SAAS,SAAS,EAAE,UAAU,EAAE,CACtE,CAAC;IACH,CAAC;CACD;AAtDD,oDAsDC"}
1
+ {"version":3,"file":"data-service-transport.js","sourceRoot":"","sources":["../../../../src/creatio/services/dataservice/data-service-transport.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;GAQG;AACH,MAAa,oBAAoB;IACf,OAAO,CAAoB;IAE5C,YAAY,MAAyB;QACpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACvB,CAAC;IAEO,cAAc,CAAC,SAAiB,EAAE,IAAS;QAClD,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YACpC,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC;YACrC,MAAM,OAAO,GACZ,EAAE,CAAC,OAAO;gBACV,EAAE,CAAC,OAAO;gBACV,IAAI,CAAC,SAAS,EAAE,OAAO;gBACvB,IAAI,CAAC,SAAS,EAAE,OAAO;gBACvB,eAAe,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,uBAAuB,SAAS,UAAU,OAAO,EAAE,CAAC,CAAC;QACtE,CAAC;IACF,CAAC;IAED;gDAC4C;IAC5C,IAAW,OAAO;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;IACvC,CAAC;IAEM,QAAQ,CAAC,SAAiB;QAChC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,iCAAiC,SAAS,EAAE,CAAC;IACtF,CAAC;IAEM,KAAK,CAAC,IAAI,CAChB,SAAiB,EACjB,OAAgB,EAChB,OAAyE,EAAE;QAE3E,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAC1B,eAAe,SAAS,EAAE,EAC1B,GAAG,EACH,KAAK,IAAI,EAAE;YACV,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAC3D,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC,EACD,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;YAC5B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACrD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACvB,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YACtC,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,UAAU,CACtB,eAAe,SAAS,EAAE,EAC1B,QAAQ,CAAC,MAAM,EACf,QAAQ,EACR,UAAU,CACV,CAAC;YACF,OAAO,IAAI,CAAC;QACb,CAAC,EACD,EAAE,WAAW,EAAE,uBAAuB,SAAS,SAAS,EAAE,UAAU,EAAE,CACtE,CAAC;IACH,CAAC;CACD;AA5DD,oDA4DC"}