@forestadmin-experimental/datasource-cosmos 1.6.4 → 1.7.1

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.
@@ -13,6 +13,14 @@ export default class CosmosDataSource extends BaseDataSource<CosmosCollection> {
13
13
  });
14
14
  protected createCollections(collectionModels: ModelCosmos[], logger: Logger): Promise<void>;
15
15
  executeNativeQuery(connectionName: string, query: string, contextVariables?: Record<string, unknown>): Promise<Record<string, unknown>[]>;
16
+ /**
17
+ * Cosmos DB NoSQL treats "value", "key", "previous" and "objective" as reserved keywords,
18
+ * so they cannot be used as column aliases (e.g. "AS value" fails).
19
+ * This method allows users to use underscore-prefixed aliases (_value, _key, _previous,
20
+ * _objective) in their queries and automatically renames them to the names expected
21
+ * by Forest Admin charts.
22
+ */
23
+ private renameReservedAliases;
16
24
  /**
17
25
  * Parse the query string and extract container name and build SqlQuerySpec
18
26
  * Expected format: "SELECT * FROM containerName WHERE ..."
@@ -1 +1 @@
1
- {"version":3,"file":"datasource.d.ts","sourceRoot":"","sources":["../src/datasource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAgB,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAEzE,OAAO,gBAAgB,MAAM,cAAc,CAAC;AAC5C,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAOhD,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,cAAc,CAAC,gBAAgB,CAAC;IAC5E;;OAEG;IACH,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;gBAGnC,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAAE,WAAW,EAAE,EAC/B,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE;cAoBzD,iBAAiB,CAAC,gBAAgB,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,MAAM;IAUlE,kBAAkB,CAC/B,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,MAAM,EACb,gBAAgB,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAC7C,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAiBrC;;;OAGG;IACH,OAAO,CAAC,UAAU;IAwBlB;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAyB5B"}
1
+ {"version":3,"file":"datasource.d.ts","sourceRoot":"","sources":["../src/datasource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAgB,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAEzE,OAAO,gBAAgB,MAAM,cAAc,CAAC;AAC5C,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAOhD,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,cAAc,CAAC,gBAAgB,CAAC;IAC5E;;OAEG;IACH,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;gBAGnC,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAAE,WAAW,EAAE,EAC/B,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE;cAoBzD,iBAAiB,CAAC,gBAAgB,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,MAAM;IAUlE,kBAAkB,CAC/B,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,MAAM,EACb,gBAAgB,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAC7C,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAiBrC;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAmB7B;;;OAGG;IACH,OAAO,CAAC,UAAU;IAwBlB;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAyB5B"}
@@ -40,7 +40,29 @@ class CosmosDataSource extends datasource_toolkit_1.BaseDataSource {
40
40
  const database = connection.instance.database(connection.databaseName);
41
41
  const container = database.container(containerName);
42
42
  const { resources } = await container.items.query(querySpec).fetchAll();
43
- return resources;
43
+ return this.renameReservedAliases(resources);
44
+ }
45
+ /**
46
+ * Cosmos DB NoSQL treats "value", "key", "previous" and "objective" as reserved keywords,
47
+ * so they cannot be used as column aliases (e.g. "AS value" fails).
48
+ * This method allows users to use underscore-prefixed aliases (_value, _key, _previous,
49
+ * _objective) in their queries and automatically renames them to the names expected
50
+ * by Forest Admin charts.
51
+ */
52
+ renameReservedAliases(results) {
53
+ const aliasMap = {
54
+ _value: 'value',
55
+ _key: 'key',
56
+ _previous: 'previous',
57
+ _objective: 'objective',
58
+ };
59
+ return results.map(row => {
60
+ const renamed = {};
61
+ for (const [k, v] of Object.entries(row)) {
62
+ renamed[aliasMap[k] ?? k] = v;
63
+ }
64
+ return renamed;
65
+ });
44
66
  }
45
67
  /**
46
68
  * Parse the query string and extract container name and build SqlQuerySpec
@@ -83,4 +105,4 @@ class CosmosDataSource extends datasource_toolkit_1.BaseDataSource {
83
105
  }
84
106
  }
85
107
  exports.default = CosmosDataSource;
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kYXRhc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0Esd0VBQXlFO0FBRXpFLDhEQUE0QztBQVE1QyxNQUFxQixnQkFBaUIsU0FBUSxtQ0FBZ0M7SUFNNUUsWUFDRSxZQUEwQixFQUMxQixnQkFBK0IsRUFDL0IsTUFBYyxFQUNkLE9BQXVFO1FBRXZFLEtBQUssRUFBRSxDQUFDO1FBRVIsSUFBSSxDQUFDLFlBQVk7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHVDQUF1QyxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFFakMsdUJBQXVCO1FBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUVqRCxJQUFJLE9BQU8sRUFBRSxvQkFBb0IsSUFBSSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQztZQUNoRSxJQUFJLENBQUMsd0JBQXdCLENBQUMsT0FBTyxDQUFDLG9CQUFvQixFQUFFO2dCQUMxRCxRQUFRLEVBQUUsSUFBSSxDQUFDLFlBQVk7Z0JBQzNCLFlBQVksRUFBRSxPQUFPLENBQUMsaUJBQWlCO2FBQ3hDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRCxNQUFNLEVBQUUsQ0FBQyxNQUFNLEVBQUUsMEJBQTBCLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRVMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLGdCQUErQixFQUFFLE1BQWM7UUFDL0UsZ0JBQWdCO1lBQ2QsMEJBQTBCO2FBQ3pCLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDOUQsT0FBTyxDQUFD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
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kYXRhc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0Esd0VBQXlFO0FBRXpFLDhEQUE0QztBQVE1QyxNQUFxQixnQkFBaUIsU0FBUSxtQ0FBZ0M7SUFNNUUsWUFDRSxZQUEwQixFQUMxQixnQkFBK0IsRUFDL0IsTUFBYyxFQUNkLE9BQXVFO1FBRXZFLEtBQUssRUFBRSxDQUFDO1FBRVIsSUFBSSxDQUFDLFlBQVk7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHVDQUF1QyxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFFakMsdUJBQXVCO1FBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUVqRCxJQUFJLE9BQU8sRUFBRSxvQkFBb0IsSUFBSSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQztZQUNoRSxJQUFJLENBQUMsd0JBQXdCLENBQUMsT0FBTyxDQUFDLG9CQUFvQixFQUFFO2dCQUMxRCxRQUFRLEVBQUUsSUFBSSxDQUFDLFlBQVk7Z0JBQzNCLFlBQVksRUFBRSxPQUFPLENBQUMsaUJBQWlCO2FBQ3hDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRCxNQUFNLEVBQUUsQ0FBQyxNQUFNLEVBQUUsMEJBQTBCLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRVMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLGdCQUErQixFQUFFLE1BQWM7UUFDL0UsZ0JBQWdCO1lBQ2QsMEJBQTBCO2FBQ3pCLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDOUQsT0FBTyxDQUFD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
package/dist/index.d.ts CHANGED
@@ -51,6 +51,7 @@ export { default as TypeConverter } from './utils/type-converter';
51
51
  export { default as ModelCosmos } from './model-builder/model';
52
52
  export { configurePaginationCache, getSharedPaginationCache } from './model-builder/model';
53
53
  export { configureRetryOptions, getSharedRetryOptions } from './model-builder/model';
54
+ export { configureRuLogging, isRuLoggingEnabled } from './model-builder/model';
54
55
  export { default as PaginationCache } from './utils/pagination-cache';
55
56
  export { withRetry, createRetryWrapper, isRateLimitError, isTransientError, } from './utils/retry-handler';
56
57
  export { default as QueryValidator, QueryValidationError, QueryValidationErrorCode, } from './utils/query-validator';
@@ -117,6 +118,12 @@ export declare function createCosmosDataSource(endpoint: string, key: string, da
117
118
  * Allows you to define collections and their fields explicitly
118
119
  */
119
120
  schema?: ManualSchemaConfig;
121
+ /**
122
+ * Enable logging of Request Unit (RU) consumption for each Cosmos DB operation
123
+ * Useful for monitoring and optimizing database costs
124
+ * Default: false
125
+ */
126
+ logRuConsumption?: boolean;
120
127
  }): DataSourceFactory;
121
128
  /**
122
129
  * Create a Cosmos DB datasource for the local emulator
@@ -140,5 +147,11 @@ export declare function createCosmosDataSourceForEmulator(databaseName?: string,
140
147
  introspectionConfig?: IntrospectionConfig;
141
148
  disableIntrospection?: boolean;
142
149
  schema?: ManualSchemaConfig;
150
+ /**
151
+ * Enable logging of Request Unit (RU) consumption for each Cosmos DB operation
152
+ * Useful for monitoring and optimizing database costs
153
+ * Default: false
154
+ */
155
+ logRuConsumption?: boolean;
143
156
  }): DataSourceFactory;
144
157
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAU,MAAM,iCAAiC,CAAC;AAG5E,OAAO,EAAE,oBAAoB,EAA2B,MAAM,yBAAyB,CAAC;AACxF,OAAqB,EAAE,4BAA4B,EAAE,MAAM,8BAA8B,CAAC;AAC1F,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAI3D,MAAM,WAAW,mBAAmB;IAClC;;;;;;;;;;;;;;;OAeG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;;;;;;;;;OAaG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CACjC;AAED,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EACL,SAAS,EACT,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,OAAO,IAAI,cAAc,EACzB,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,YAAY,EAAE,4BAA4B,EAAE,MAAM,8BAA8B,CAAC;AACjF,YAAY,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,YAAY,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrE,YAAY,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,YAAY,EACV,oBAAoB,EACpB,eAAe,EACf,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAE/B;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,wCAAwC,CACtD,MAAM,EAAE,YAAY,EACpB,YAAY,CAAC,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,iBAAiB,CAqBnB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,YAAY,CAAC,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE;IACR,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,uBAAuB,CAAC,EAAE,4BAA4B,EAAE,CAAC;IACzD,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;OAIG;IACH,MAAM,CAAC,EAAE,kBAAkB,CAAC;CAC7B,GACA,iBAAiB,CAqFnB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iCAAiC,CAC/C,YAAY,CAAC,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE;IACR,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,MAAM,CAAC,EAAE,kBAAkB,CAAC;CAC7B,GACA,iBAAiB,CAOnB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -3,11 +3,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.createCosmosDataSourceForEmulator = exports.createCosmosDataSource = exports.createCosmosDataSourceWithExistingClient = exports.QueryValidationErrorCode = exports.QueryValidationError = exports.QueryValidator = exports.isTransientError = exports.isRateLimitError = exports.createRetryWrapper = exports.withRetry = exports.PaginationCache = exports.getSharedRetryOptions = exports.configureRetryOptions = exports.getSharedPaginationCache = exports.configurePaginationCache = exports.ModelCosmos = exports.TypeConverter = exports.ArrayCollection = exports.CosmosDataSource = exports.CosmosCollection = void 0;
6
+ exports.createCosmosDataSourceForEmulator = exports.createCosmosDataSource = exports.createCosmosDataSourceWithExistingClient = exports.QueryValidationErrorCode = exports.QueryValidationError = exports.QueryValidator = exports.isTransientError = exports.isRateLimitError = exports.createRetryWrapper = exports.withRetry = exports.PaginationCache = exports.isRuLoggingEnabled = exports.configureRuLogging = exports.getSharedRetryOptions = exports.configureRetryOptions = exports.getSharedPaginationCache = exports.configurePaginationCache = exports.ModelCosmos = exports.TypeConverter = exports.ArrayCollection = exports.CosmosDataSource = exports.CosmosCollection = void 0;
7
7
  const cosmos_1 = require("@azure/cosmos");
8
8
  const datasource_1 = __importDefault(require("./datasource"));
9
9
  const builder_1 = require("./introspection/builder");
10
10
  const introspector_1 = __importDefault(require("./introspection/introspector"));
11
+ const model_1 = require("./model-builder/model");
11
12
  const manual_schema_converter_1 = require("./utils/manual-schema-converter");
12
13
  const virtual_collection_manager_1 = __importDefault(require("./virtual-collection-manager"));
13
14
  var collection_1 = require("./collection");
@@ -18,14 +19,17 @@ var array_collection_1 = require("./array-collection");
18
19
  Object.defineProperty(exports, "ArrayCollection", { enumerable: true, get: function () { return __importDefault(array_collection_1).default; } });
19
20
  var type_converter_1 = require("./utils/type-converter");
20
21
  Object.defineProperty(exports, "TypeConverter", { enumerable: true, get: function () { return __importDefault(type_converter_1).default; } });
21
- var model_1 = require("./model-builder/model");
22
- Object.defineProperty(exports, "ModelCosmos", { enumerable: true, get: function () { return __importDefault(model_1).default; } });
23
22
  var model_2 = require("./model-builder/model");
24
- Object.defineProperty(exports, "configurePaginationCache", { enumerable: true, get: function () { return model_2.configurePaginationCache; } });
25
- Object.defineProperty(exports, "getSharedPaginationCache", { enumerable: true, get: function () { return model_2.getSharedPaginationCache; } });
23
+ Object.defineProperty(exports, "ModelCosmos", { enumerable: true, get: function () { return __importDefault(model_2).default; } });
26
24
  var model_3 = require("./model-builder/model");
27
- Object.defineProperty(exports, "configureRetryOptions", { enumerable: true, get: function () { return model_3.configureRetryOptions; } });
28
- Object.defineProperty(exports, "getSharedRetryOptions", { enumerable: true, get: function () { return model_3.getSharedRetryOptions; } });
25
+ Object.defineProperty(exports, "configurePaginationCache", { enumerable: true, get: function () { return model_3.configurePaginationCache; } });
26
+ Object.defineProperty(exports, "getSharedPaginationCache", { enumerable: true, get: function () { return model_3.getSharedPaginationCache; } });
27
+ var model_4 = require("./model-builder/model");
28
+ Object.defineProperty(exports, "configureRetryOptions", { enumerable: true, get: function () { return model_4.configureRetryOptions; } });
29
+ Object.defineProperty(exports, "getSharedRetryOptions", { enumerable: true, get: function () { return model_4.getSharedRetryOptions; } });
30
+ var model_5 = require("./model-builder/model");
31
+ Object.defineProperty(exports, "configureRuLogging", { enumerable: true, get: function () { return model_5.configureRuLogging; } });
32
+ Object.defineProperty(exports, "isRuLoggingEnabled", { enumerable: true, get: function () { return model_5.isRuLoggingEnabled; } });
29
33
  var pagination_cache_1 = require("./utils/pagination-cache");
30
34
  Object.defineProperty(exports, "PaginationCache", { enumerable: true, get: function () { return __importDefault(pagination_cache_1).default; } });
31
35
  var retry_handler_1 = require("./utils/retry-handler");
@@ -102,7 +106,11 @@ function createCosmosDataSource(endpoint, key, databaseName, options) {
102
106
  key,
103
107
  ...options?.clientOptions,
104
108
  });
105
- const { liveQueryConnections, liveQueryDatabase, builder, virtualArrayCollections, introspectionConfig, disableIntrospection, schema, } = options || {};
109
+ const { liveQueryConnections, liveQueryDatabase, builder, virtualArrayCollections, introspectionConfig, disableIntrospection, schema, logRuConsumption, } = options || {};
110
+ // Configure RU logging if enabled
111
+ if (logRuConsumption) {
112
+ (0, model_1.configureRuLogging)(true, logger);
113
+ }
106
114
  // Apply introspection config defaults
107
115
  const finalIntrospectionConfig = {
108
116
  sampleSize: introspectionConfig?.sampleSize ?? 100,
@@ -167,4 +175,4 @@ function createCosmosDataSourceForEmulator(databaseName, options) {
167
175
  return createCosmosDataSource(endpoint, key, databaseName, options);
168
176
  }
169
177
  exports.createCosmosDataSourceForEmulator = createCosmosDataSourceForEmulator;
170
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsMENBQWtFO0FBR2xFLDhEQUE0QztBQUM1QyxxREFBd0Y7QUFDeEYsZ0ZBQTBGO0FBRTFGLDZFQUE4RTtBQUM5RSw4RkFBb0U7QUE4Q3BFLDJDQUEyRDtBQUFsRCwrSEFBQSxPQUFPLE9BQW9CO0FBQ3BDLDJDQUEyRDtBQUFsRCwrSEFBQSxPQUFPLE9BQW9CO0FBQ3BDLHVEQUFnRTtBQUF2RCxvSUFBQSxPQUFPLE9BQW1CO0FBQ25DLHlEQUFrRTtBQUF6RCxnSUFBQSxPQUFPLE9BQWlCO0FBQ2pDLCtDQUErRDtBQUF0RCxxSEFBQSxPQUFPLE9BQWU7QUFDL0IsK0NBQTJGO0FBQWxGLGlIQUFBLHdCQUF3QixPQUFBO0FBQUUsaUhBQUEsd0JBQXdCLE9BQUE7QUFDM0QsK0NBQXFGO0FBQTVFLDhHQUFBLHFCQUFxQixPQUFBO0FBQUUsOEdBQUEscUJBQXFCLE9BQUE7QUFDckQsNkRBQXNFO0FBQTdELG9JQUFBLE9BQU8sT0FBbUI7QUFDbkMsdURBSytCO0FBSjdCLDBHQUFBLFNBQVMsT0FBQTtBQUNULG1IQUFBLGtCQUFrQixPQUFBO0FBQ2xCLGlIQUFBLGdCQUFnQixPQUFBO0FBQ2hCLGlIQUFBLGdCQUFnQixPQUFBO0FBRWxCLDJEQUlpQztBQUgvQixrSUFBQSxPQUFPLE9BQWtCO0FBQ3pCLHVIQUFBLG9CQUFvQixPQUFBO0FBQ3BCLDJIQUFBLHdCQUF3QixPQUFBO0FBYTFCOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUNILFNBQWdCLHdDQUF3QyxDQUN0RCxNQUFvQixFQUNwQixZQUFxQixFQUNyQixPQUE4QjtJQUU5QixPQUFPLEtBQUssRUFBRSxNQUFjLEVBQUUsRUFBRTtRQUM5QixJQUFJLGdCQUFnQixDQUFDO1FBRXJCLElBQUksT0FBTyxFQUFFLENBQUM7WUFDWixNQUFNLE9BQU8sR0FBRyxPQUFPLENB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
178
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsMENBQWtFO0FBR2xFLDhEQUE0QztBQUM1QyxxREFBd0Y7QUFDeEYsZ0ZBQTBGO0FBQzFGLGlEQUEyRDtBQUUzRCw2RUFBOEU7QUFDOUUsOEZBQW9FO0FBOENwRSwyQ0FBMkQ7QUFBbEQsK0hBQUEsT0FBTyxPQUFvQjtBQUNwQywyQ0FBMkQ7QUFBbEQsK0hBQUEsT0FBTyxPQUFvQjtBQUNwQyx1REFBZ0U7QUFBdkQsb0lBQUEsT0FBTyxPQUFtQjtBQUNuQyx5REFBa0U7QUFBekQsZ0lBQUEsT0FBTyxPQUFpQjtBQUNqQywrQ0FBK0Q7QUFBdEQscUhBQUEsT0FBTyxPQUFlO0FBQy9CLCtDQUEyRjtBQUFsRixpSEFBQSx3QkFBd0IsT0FBQTtBQUFFLGlIQUFBLHdCQUF3QixPQUFBO0FBQzNELCtDQUFxRjtBQUE1RSw4R0FBQSxxQkFBcUIsT0FBQTtBQUFFLDhHQUFBLHFCQUFxQixPQUFBO0FBQ3JELCtDQUErRTtBQUF0RSwyR0FBQSxrQkFBa0IsT0FBQTtBQUFFLDJHQUFBLGtCQUFrQixPQUFBO0FBQy9DLDZEQUFzRTtBQUE3RCxvSUFBQSxPQUFPLE9BQW1CO0FBQ25DLHVEQUsrQjtBQUo3QiwwR0FBQSxTQUFTLE9BQUE7QUFDVCxtSEFBQSxrQkFBa0IsT0FBQTtBQUNsQixpSEFBQSxnQkFBZ0IsT0FBQTtBQUNoQixpSEFBQSxnQkFBZ0IsT0FBQTtBQUVsQiwyREFJaUM7QUFIL0Isa0lBQUEsT0FBTyxPQUFrQjtBQUN6Qix1SEFBQSxvQkFBb0IsT0FBQTtBQUNwQiwySEFBQSx3QkFBd0IsT0FBQTtBQWExQjs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFDSCxTQUFnQix3Q0FBd0MsQ0FDdEQsTUFBb0IsRUFDcEIsWUFBcUIsRUFDckIsT0FBOEI7SUFFOUIsT0FBTyxLQUFLLEVBQUUsTUFBYyxFQUFFLEVBQUU7UUFDOUIsSUFBSSxnQkFBZ0IsQ0FBQztRQUVyQixJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLElBQUksaUNBQXVCLENBQUMsTUFBTSxDQUFDLENBQTRCLENBQUM7WUFDeEYsZ0JBQWdCLEdBQUcsTUFBTSxPQUFPLENBQUMsa0NBQWtDLEVBQUUsQ0FBQztRQUN4RSxDQUFDO2FBQU0sSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUN4QixnQkFBZ0IsR0FBRyxNQUFNLHNCQUFZLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDakYsQ0FBQzthQUFNLENBQUM7WUFDTixnQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDeEIsQ0FBQztRQUVELElBQUksZ0JBQWdCLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzlDLE1BQU0sT0FBTyxHQUNYLHFGQUFxRixDQUFDO1lBQ3hGLE1BQU0sRUFBRSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM1QixDQUFDO1FBRUQsT0FBTyxJQUFJLG9CQUFnQixDQUFDLE1BQU0sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoRSxDQUFDLENBQUM7QUFDSixDQUFDO0FBekJELDRGQXlCQztBQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRztBQUNILFNBQWdCLHNCQUFzQixDQUNwQyxRQUFnQixFQUNoQixHQUFXLEVBQ1gsWUFBcUIsRUFDckIsT0F5QkM7SUFFRCxPQUFPLEtBQUssRUFBRSxNQUFjLEVBQUUsRUFBRTtRQUM5QixNQUFNLE1BQU0sR0FBRyxJQUFJLHFCQUFZLENBQUM7WUFDOUIsUUFBUTtZQUNSLEdBQUc7WUFDSCxHQUFHLE9BQU8sRUFBRSxhQUFhO1NBQzFCLENBQUMsQ0FBQztRQUVILE1BQU0sRUFDSixvQkFBb0IsRUFDcEIsaUJBQWlCLEVBQ2pCLE9BQU8sRUFDUCx1QkFBdUIsRUFDdkIsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixNQUFNLEVBQ04sZ0JBQWdCLEdBQ2pCLEdBQUcsT0FBTyxJQUFJLEVBQUUsQ0FBQztRQUVsQixrQ0FBa0M7UUFDbEMsSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3JCLElBQUEsMEJBQWtCLEVBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLENBQUM7UUFFRCxzQ0FBc0M7UUFDdEMsTUFBTSx3QkFBd0IsR0FBd0I7WUFDcEQsVUFBVSxFQUFFLG1CQUFtQixFQUFFLFVBQVUsSUFBSSxHQUFHO1lBQ2xELFlBQVksRUFBRSxtQkFBbUIsRUFBRSxZQUFZO1lBQy9DLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxjQUFjLElBQUksTUFBTTtTQUM5RCxDQUFDO1FBRUYsSUFBSSxnQkFBZ0IsQ0FBQztRQUVyQixxQ0FBcUM7UUFDckMsSUFBSSxvQkFBb0IsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDWixNQUFNLElBQUksS0FBSyxDQUNiLDZFQUE2RTtvQkFDM0UsNkJBQTZCLENBQ2hDLENBQUM7WUFDSixDQUFDO1lBRUQsTUFBTSxFQUFFLENBQUMsTUFBTSxFQUFFLDREQUE0RCxDQUFDLENBQUM7WUFDL0UsZ0JBQWdCLEdBQUcsTUFBTSxJQUFBLHFEQUEyQixFQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQzdGLENBQUM7YUFBTSxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ25CLE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUMvQixJQUFJLGlDQUF1QixDQUFDLE1BQU0sQ0FBQyxDQUNULENBQUM7WUFFN0IsZ0JBQWdCLEdBQUcsTUFBTSxpQkFBaUIsQ0FBQyxrQ0FBa0MsRUFBRSxDQUFDO1FBQ2xGLENBQUM7YUFBTSxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ3hCLGdCQUFnQixHQUFHLE1BQU0sc0JBQVksQ0FBQyxVQUFVLENBQzlDLE1BQU0sRUFDTixZQUFZLEVBQ1osTUFBTSxFQUNOLHdCQUF3QixDQUFDLFVBQVUsRUFDbkMsd0JBQXdCLENBQUMsWUFBWSxFQUNyQyx3QkFBd0IsQ0FBQyxjQUFjLENBQ3hDLENBQUM7UUFDSixDQUFDO2FBQU0sQ0FBQztZQUNOLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUN4QixDQUFDO1FBRUQsSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUN2RSxNQUFNLE9BQU8sR0FDWCxxRkFBcUYsQ0FBQztZQUN4RixNQUFNLEVBQUUsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDNUIsQ0FBQztRQUVELE1BQU0sVUFBVSxHQUFHLElBQUksb0JBQWdCLENBQUMsTUFBTSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRTtZQUN4RSxvQkFBb0I7WUFDcEIsaUJBQWlCO1NBQ2xCLENBQUMsQ0FBQztRQUVILDZDQUE2QztRQUM3QyxJQUFJLHVCQUF1QixJQUFJLHVCQUF1QixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNsRSxNQUFNLHdCQUF3QixHQUFHLElBQUksb0NBQXdCLENBQzNELFVBQVUsRUFDVixNQUFNLEVBQ04sWUFBWSxFQUNaLE1BQU0sQ0FDUCxDQUFDO1lBRUYsTUFBTSx3QkFBd0IsQ0FBQyx3QkFBd0IsQ0FDckQsdUJBQXVCLEVBQ3ZCLHdCQUF3QixDQUFDLFVBQVUsSUFBSSxHQUFHLENBQzNDLENBQUM7UUFDSixDQUFDO1FBRUQsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQXpIRCx3REF5SEM7QUFFRDs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsU0FBZ0IsaUNBQWlDLENBQy9DLFlBQXFCLEVBQ3JCLE9BY0M7SUFFRCxzQ0FBc0M7SUFDdEMsTUFBTSxRQUFRLEdBQUcsd0JBQXdCLENBQUM7SUFDMUMsTUFBTSxHQUFHLEdBQ1AsMEZBQTBGLENBQUM7SUFFN0YsT0FBTyxzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxPQUFPLENBQUMsQ0FBQztBQUN0RSxDQUFDO0FBeEJELDhFQXdCQyJ9
@@ -1,9 +1,19 @@
1
1
  import { Container, CosmosClient, SqlQuerySpec } from '@azure/cosmos';
2
- import { RecordData } from '@forestadmin/datasource-toolkit';
2
+ import { Logger, RecordData } from '@forestadmin/datasource-toolkit';
3
3
  import { OverrideTypeConverter } from '../introspection/builder';
4
4
  import PaginationCache, { PaginationCacheOptions } from '../utils/pagination-cache';
5
5
  import { RetryOptions, configureRetryOptions, getSharedRetryOptions } from '../utils/retry-handler';
6
6
  export { RetryOptions, configureRetryOptions, getSharedRetryOptions };
7
+ /**
8
+ * Configure RU logging for all Cosmos DB operations
9
+ * @param enabled Whether to enable RU consumption logging
10
+ * @param logger The Forest Admin logger to use for RU logging
11
+ */
12
+ export declare function configureRuLogging(enabled: boolean, logger?: Logger): void;
13
+ /**
14
+ * Check if RU logging is enabled
15
+ */
16
+ export declare function isRuLoggingEnabled(): boolean;
7
17
  export interface CosmosSchema {
8
18
  [key: string]: {
9
19
  type: string;
@@ -99,5 +109,9 @@ export default class ModelCosmos {
99
109
  * Get container name
100
110
  */
101
111
  getContainerName(): string;
112
+ /**
113
+ * Log RU consumption if enabled
114
+ */
115
+ private logRuConsumption;
102
116
  }
103
117
  //# sourceMappingURL=model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/model-builder/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/model-builder/model.ts"],"names":[],"mappings":"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"}
@@ -3,13 +3,35 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.configurePaginationCache = exports.getSharedPaginationCache = exports.getSharedRetryOptions = exports.configureRetryOptions = void 0;
6
+ exports.configurePaginationCache = exports.getSharedPaginationCache = exports.isRuLoggingEnabled = exports.configureRuLogging = exports.getSharedRetryOptions = exports.configureRetryOptions = void 0;
7
7
  const crypto_1 = require("crypto");
8
8
  const pagination_cache_1 = __importDefault(require("../utils/pagination-cache"));
9
9
  const retry_handler_1 = require("../utils/retry-handler");
10
10
  Object.defineProperty(exports, "configureRetryOptions", { enumerable: true, get: function () { return retry_handler_1.configureRetryOptions; } });
11
11
  Object.defineProperty(exports, "getSharedRetryOptions", { enumerable: true, get: function () { return retry_handler_1.getSharedRetryOptions; } });
12
12
  const serializer_1 = __importDefault(require("../utils/serializer"));
13
+ /**
14
+ * Shared RU logging configuration
15
+ */
16
+ let sharedRuLoggingEnabled = false;
17
+ let sharedRuLogger = null;
18
+ /**
19
+ * Configure RU logging for all Cosmos DB operations
20
+ * @param enabled Whether to enable RU consumption logging
21
+ * @param logger The Forest Admin logger to use for RU logging
22
+ */
23
+ function configureRuLogging(enabled, logger) {
24
+ sharedRuLoggingEnabled = enabled;
25
+ sharedRuLogger = logger ?? null;
26
+ }
27
+ exports.configureRuLogging = configureRuLogging;
28
+ /**
29
+ * Check if RU logging is enabled
30
+ */
31
+ function isRuLoggingEnabled() {
32
+ return sharedRuLoggingEnabled;
33
+ }
34
+ exports.isRuLoggingEnabled = isRuLoggingEnabled;
13
35
  /**
14
36
  * Shared pagination cache instance for all models
15
37
  * This is shared to allow cache reuse across collections and reduce memory usage
@@ -73,9 +95,10 @@ class ModelCosmos {
73
95
  ...unflattenedRecord,
74
96
  };
75
97
  // eslint-disable-next-line no-await-in-loop -- Sequential execution maintains order
76
- const { resource } = await (0, retry_handler_1.withRetry)(() => this.container.items.create(itemToCreate), this.retryOptions);
98
+ const response = await (0, retry_handler_1.withRetry)(() => this.container.items.create(itemToCreate), this.retryOptions);
99
+ this.logRuConsumption('create', response.requestCharge);
77
100
  // Flatten and serialize the response
78
- createdRecords.push(serializer_1.default.serialize(resource));
101
+ createdRecords.push(serializer_1.default.serialize(response.resource));
79
102
  }
80
103
  return createdRecords;
81
104
  }
@@ -87,13 +110,15 @@ class ModelCosmos {
87
110
  for (const { id, partitionKey } of items) {
88
111
  // Point read: directly fetch item using id + partition key (1 RU)
89
112
  // eslint-disable-next-line no-await-in-loop -- Sequential maintains consistency
90
- const { resource: existingItem } = await (0, retry_handler_1.withRetry)(() => this.container.item(id, partitionKey).read(), this.retryOptions);
91
- if (existingItem) {
113
+ const readResponse = await (0, retry_handler_1.withRetry)(() => this.container.item(id, partitionKey).read(), this.retryOptions);
114
+ this.logRuConsumption('update.read', readResponse.requestCharge);
115
+ if (readResponse.resource) {
92
116
  // Deep merge the unflattened patch with the existing item
93
- const updatedItem = serializer_1.default.deepMerge(existingItem, unflattenedPatch);
117
+ const updatedItem = serializer_1.default.deepMerge(readResponse.resource, unflattenedPatch);
94
118
  // Point update: directly update using id + partition key
95
119
  // eslint-disable-next-line no-await-in-loop -- Sequential maintains consistency
96
- await (0, retry_handler_1.withRetry)(() => this.container.item(id, partitionKey).replace(updatedItem), this.retryOptions);
120
+ const replaceResponse = await (0, retry_handler_1.withRetry)(() => this.container.item(id, partitionKey).replace(updatedItem), this.retryOptions);
121
+ this.logRuConsumption('update.replace', replaceResponse.requestCharge);
97
122
  }
98
123
  }
99
124
  }
@@ -102,7 +127,8 @@ class ModelCosmos {
102
127
  for (const { id, partitionKey } of items) {
103
128
  // Point delete: directly delete using id + partition key
104
129
  // eslint-disable-next-line no-await-in-loop -- Sequential maintains consistency
105
- await (0, retry_handler_1.withRetry)(() => this.container.item(id, partitionKey).delete(), this.retryOptions);
130
+ const response = await (0, retry_handler_1.withRetry)(() => this.container.item(id, partitionKey).delete(), this.retryOptions);
131
+ this.logRuConsumption('delete', response.requestCharge);
106
132
  }
107
133
  }
108
134
  async query(querySpec, offset, limit, partitionKey) {
@@ -114,8 +140,9 @@ class ModelCosmos {
114
140
  }
115
141
  // If no pagination parameters, fetch all (backward compatibility)
116
142
  if (offset === undefined && limit === undefined) {
117
- const { resources } = await (0, retry_handler_1.withRetry)(() => this.container.items.query(querySpec, queryOptions).fetchAll(), this.retryOptions);
118
- return resources.map(item => serializer_1.default.serialize(item));
143
+ const response = await (0, retry_handler_1.withRetry)(() => this.container.items.query(querySpec, queryOptions).fetchAll(), this.retryOptions);
144
+ this.logRuConsumption('query.fetchAll', response.requestCharge);
145
+ return response.resources.map(item => serializer_1.default.serialize(item));
119
146
  }
120
147
  const effectiveOffset = offset || 0;
121
148
  const effectiveLimit = limit || 100; // Default limit if not specified
@@ -151,7 +178,8 @@ class ModelCosmos {
151
178
  // Iterate through pages until we have enough items
152
179
  // eslint-disable-next-line no-restricted-syntax
153
180
  for await (const response of queryIterator.getAsyncIterator()) {
154
- const { resources: page, continuationToken } = response;
181
+ const { resources: page, continuationToken, requestCharge } = response;
182
+ this.logRuConsumption('query.page', requestCharge);
155
183
  // Store continuation token for future use at regular intervals
156
184
  const cacheInterval = this.paginationCache.getCacheInterval();
157
185
  if (continuationToken && currentOffset > 0 && currentOffset % cacheInterval < pageSize) {
@@ -190,8 +218,9 @@ class ModelCosmos {
190
218
  if (partitionKey !== undefined) {
191
219
  queryOptions.partitionKey = partitionKey;
192
220
  }
193
- const { resources } = await (0, retry_handler_1.withRetry)(() => this.container.items.query(querySpec, queryOptions).fetchAll(), this.retryOptions);
194
- return resources.map(item => serializer_1.default.serialize(item));
221
+ const response = await (0, retry_handler_1.withRetry)(() => this.container.items.query(querySpec, queryOptions).fetchAll(), this.retryOptions);
222
+ this.logRuConsumption('aggregate', response.requestCharge);
223
+ return response.resources.map(item => serializer_1.default.serialize(item));
195
224
  }
196
225
  async count(querySpec, partitionKey) {
197
226
  // Build query options with partition key if provided
@@ -204,13 +233,15 @@ class ModelCosmos {
204
233
  const countQuery = {
205
234
  query: 'SELECT VALUE COUNT(1) FROM c',
206
235
  };
207
- const { resources } = await (0, retry_handler_1.withRetry)(() => this.container.items.query(countQuery, queryOptions).fetchAll(), this.retryOptions);
208
- return resources[0] || 0;
236
+ const response = await (0, retry_handler_1.withRetry)(() => this.container.items.query(countQuery, queryOptions).fetchAll(), this.retryOptions);
237
+ this.logRuConsumption('count', response.requestCharge);
238
+ return response.resources[0] || 0;
209
239
  }
210
240
  // Convert the query to a COUNT query to avoid fetching all records
211
241
  const countQuery = this.convertToCountQuery(querySpec);
212
- const { resources } = await (0, retry_handler_1.withRetry)(() => this.container.items.query(countQuery, queryOptions).fetchAll(), this.retryOptions);
213
- return resources[0] || 0;
242
+ const response = await (0, retry_handler_1.withRetry)(() => this.container.items.query(countQuery, queryOptions).fetchAll(), this.retryOptions);
243
+ this.logRuConsumption('count', response.requestCharge);
244
+ return response.resources[0] || 0;
214
245
  }
215
246
  /**
216
247
  * Convert a SELECT query to a COUNT query
@@ -267,6 +298,16 @@ class ModelCosmos {
267
298
  getContainerName() {
268
299
  return this.containerName;
269
300
  }
301
+ /**
302
+ * Log RU consumption if enabled
303
+ */
304
+ logRuConsumption(operation, requestCharge) {
305
+ if (!sharedRuLoggingEnabled || requestCharge === undefined) {
306
+ return;
307
+ }
308
+ const message = `[Cosmos RU] ${this.name}.${operation}: ${requestCharge} RUs`;
309
+ sharedRuLogger?.('Info', message);
310
+ }
270
311
  }
271
312
  exports.default = ModelCosmos;
272
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9kZWwtYnVpbGRlci9tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFFQSxtQ0FBb0M7QUFHcEMsaUZBQW9GO0FBQ3BGLDBEQUtnQztBQUdULHNHQU5yQixxQ0FBcUIsT0FNcUI7QUFBRSxzR0FMNUMscUNBQXFCLE9BSzRDO0FBRm5FLHFFQUE2QztBQWlCN0M7OztHQUdHO0FBQ0gsSUFBSSxxQkFBcUIsR0FBMkIsSUFBSSxDQUFDO0FBRXpEOzs7R0FHRztBQUNILFNBQWdCLHdCQUF3QixDQUFDLE9BQWdDO0lBQ3ZFLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzNCLHFCQUFxQixHQUFHLElBQUksMEJBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsT0FBTyxxQkFBcUIsQ0FBQztBQUMvQixDQUFDO0FBTkQsNERBTUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0Isd0JBQXdCLENBQUMsT0FBK0I7SUFDdEUscUJBQXFCLEdBQUcsSUFBSSwwQkFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQ3ZELENBQUM7QUFGRCw0REFFQztBQUVELE1BQXFCLFdBQVc7SUErQzlCLFlBQ0UsWUFBMEIsRUFDMUIsSUFBWSxFQUNaLFlBQW9CLEVBQ3BCLGFBQXFCLEVBQ3JCLGdCQUF3QixFQUN4QixNQUFvQixFQUNwQixxQkFBNkMsRUFDN0MsV0FBcUI7UUFFckIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFDbkMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDO1FBQ3pDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxxQkFBcUIs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
313
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9kZWwtYnVpbGRlci9tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFFQSxtQ0FBb0M7QUFHcEMsaUZBQW9GO0FBQ3BGLDBEQUtnQztBQUdULHNHQU5yQixxQ0FBcUIsT0FNcUI7QUFBRSxzR0FMNUMscUNBQXFCLE9BSzRDO0FBRm5FLHFFQUE2QztBQUk3Qzs7R0FFRztBQUNILElBQUksc0JBQXNCLEdBQUcsS0FBSyxDQUFDO0FBQ25DLElBQUksY0FBYyxHQUFrQixJQUFJLENBQUM7QUFFekM7Ozs7R0FJRztBQUNILFNBQWdCLGtCQUFrQixDQUFDLE9BQWdCLEVBQUUsTUFBZTtJQUNsRSxzQkFBc0IsR0FBRyxPQUFPLENBQUM7SUFDakMsY0FBYyxHQUFHLE1BQU0sSUFBSSxJQUFJLENBQUM7QUFDbEMsQ0FBQztBQUhELGdEQUdDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixrQkFBa0I7SUFDaEMsT0FBTyxzQkFBc0IsQ0FBQztBQUNoQyxDQUFDO0FBRkQsZ0RBRUM7QUFlRDs7O0dBR0c7QUFDSCxJQUFJLHFCQUFxQixHQUEyQixJQUFJLENBQUM7QUFFekQ7OztHQUdHO0FBQ0gsU0FBZ0Isd0JBQXdCLENBQUMsT0FBZ0M7SUFDdkUsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDM0IscUJBQXFCLEdBQUcsSUFBSSwwQkFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxPQUFPLHFCQUFxQixDQUFDO0FBQy9CLENBQUM7QUFORCw0REFNQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQix3QkFBd0IsQ0FBQyxPQUErQjtJQUN0RSxxQkFBcUIsR0FBRyxJQUFJLDBCQUFlLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDdkQsQ0FBQztBQUZELDREQUVDO0FBRUQsTUFBcUIsV0FBVztJQStDOUIsWUFDRSxZQUEwQixFQUMxQixJQUFZLEVBQ1os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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forestadmin-experimental/datasource-cosmos",
3
- "version": "1.6.4",
3
+ "version": "1.7.1",
4
4
  "main": "dist/index.js",
5
5
  "license": "GPL-3.0",
6
6
  "publishConfig": {