@mongosh/shell-api 2.1.1 → 2.1.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 (59) hide show
  1. package/AUTHORS +1 -0
  2. package/lib/abstract-cursor.js +176 -132
  3. package/lib/abstract-cursor.js.map +1 -1
  4. package/lib/aggregate-or-find-cursor.js +102 -51
  5. package/lib/aggregate-or-find-cursor.js.map +1 -1
  6. package/lib/aggregation-cursor.js +59 -13
  7. package/lib/aggregation-cursor.js.map +1 -1
  8. package/lib/bulk.js +248 -197
  9. package/lib/bulk.js.map +1 -1
  10. package/lib/change-stream-cursor.js +145 -101
  11. package/lib/change-stream-cursor.js.map +1 -1
  12. package/lib/collection.d.ts +2 -1
  13. package/lib/collection.js +1185 -1245
  14. package/lib/collection.js.map +1 -1
  15. package/lib/cursor.js +238 -203
  16. package/lib/cursor.js.map +1 -1
  17. package/lib/database.js +1189 -1206
  18. package/lib/database.js.map +1 -1
  19. package/lib/dbquery.js +68 -22
  20. package/lib/dbquery.js.map +1 -1
  21. package/lib/decorators.d.ts +39 -13
  22. package/lib/decorators.js +34 -34
  23. package/lib/decorators.js.map +1 -1
  24. package/lib/explainable-cursor.js +66 -20
  25. package/lib/explainable-cursor.js.map +1 -1
  26. package/lib/explainable.js +214 -179
  27. package/lib/explainable.js.map +1 -1
  28. package/lib/field-level-encryption.js +286 -235
  29. package/lib/field-level-encryption.js.map +1 -1
  30. package/lib/helpers.d.ts +9 -1
  31. package/lib/helpers.js +24 -17
  32. package/lib/helpers.js.map +1 -1
  33. package/lib/interruptor.js.map +1 -1
  34. package/lib/log-entry.js.map +1 -1
  35. package/lib/mongo-errors.js +3 -1
  36. package/lib/mongo-errors.js.map +1 -1
  37. package/lib/mongo.js +581 -547
  38. package/lib/mongo.js.map +1 -1
  39. package/lib/plan-cache.js +108 -64
  40. package/lib/plan-cache.js.map +1 -1
  41. package/lib/replica-set.js +290 -277
  42. package/lib/replica-set.js.map +1 -1
  43. package/lib/result.js +228 -91
  44. package/lib/result.js.map +1 -1
  45. package/lib/run-command-cursor.js +59 -13
  46. package/lib/run-command-cursor.js.map +1 -1
  47. package/lib/session.js +123 -76
  48. package/lib/session.js.map +1 -1
  49. package/lib/shard.js +507 -514
  50. package/lib/shard.js.map +1 -1
  51. package/lib/shell-api.js +313 -268
  52. package/lib/shell-api.js.map +1 -1
  53. package/lib/shell-bson.js.map +1 -1
  54. package/lib/shell-instance-state.js.map +1 -1
  55. package/lib/stream-processor.js +139 -92
  56. package/lib/stream-processor.js.map +1 -1
  57. package/lib/streams.js +158 -110
  58. package/lib/streams.js.map +1 -1
  59. package/package.json +10 -10
@@ -1,9 +1,41 @@
1
1
  "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
2
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
3
+ var useValue = arguments.length > 2;
4
+ for (var i = 0; i < initializers.length; i++) {
5
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
6
+ }
7
+ return useValue ? value : void 0;
8
+ };
9
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
10
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
11
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
12
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
13
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
14
+ var _, done = false;
15
+ for (var i = decorators.length - 1; i >= 0; i--) {
16
+ var context = {};
17
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
18
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
19
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
20
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
21
+ if (kind === "accessor") {
22
+ if (result === void 0) continue;
23
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
24
+ if (_ = accept(result.get)) descriptor.get = _;
25
+ if (_ = accept(result.set)) descriptor.set = _;
26
+ if (_ = accept(result.init)) initializers.unshift(_);
27
+ }
28
+ else if (_ = accept(result)) {
29
+ if (kind === "field") initializers.unshift(_);
30
+ else descriptor[key] = _;
31
+ }
32
+ }
33
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
34
+ done = true;
35
+ };
36
+ var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) {
37
+ if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
38
+ return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
7
39
  };
8
40
  var __importDefault = (this && this.__importDefault) || function (mod) {
9
41
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -28,254 +60,273 @@ const isMasterKey = (options) => {
28
60
  typeof options === 'object' &&
29
61
  !isDataKeyEncryptionKeyOptions(options));
30
62
  };
31
- let ClientEncryption = exports.ClientEncryption = class ClientEncryption extends decorators_1.ShellApiWithMongoClass {
32
- constructor(mongo) {
33
- super();
34
- this._mongo = mongo;
35
- const fleOptions = { ...this._mongo._fleOptions };
36
- delete fleOptions.schemaMap;
37
- delete fleOptions.encryptedFieldsMap;
38
- if (!mongo._serviceProvider.createClientEncryption) {
39
- throw new errors_1.MongoshRuntimeError('FLE API is not available');
40
- }
41
- this._libmongocrypt = mongo._serviceProvider.createClientEncryption(fleOptions);
42
- }
43
- [enums_1.asPrintable]() {
44
- return `ClientEncryption class for ${(0, history_1.redactURICredentials)(this._mongo._uri)}`;
45
- }
46
- async encrypt(keyId, value, algorithmOrEncryptionOptions) {
47
- let encryptionOptions;
48
- if (typeof algorithmOrEncryptionOptions === 'object') {
49
- encryptionOptions = {
50
- keyId,
51
- ...algorithmOrEncryptionOptions,
52
- };
53
- }
54
- else {
55
- encryptionOptions = {
56
- keyId,
57
- algorithm: algorithmOrEncryptionOptions,
58
- };
59
- }
60
- (0, helpers_1.assertArgsDefinedType)([keyId, value, encryptionOptions], [true, true, true], 'ClientEncryption.encrypt');
61
- return await this._libmongocrypt.encrypt(value, encryptionOptions);
62
- }
63
- async decrypt(encryptedValue) {
64
- (0, helpers_1.assertArgsDefinedType)([encryptedValue], [true], 'ClientEncryption.decrypt');
65
- return await this._libmongocrypt.decrypt(encryptedValue);
66
- }
67
- async encryptExpression(keyId, value, options) {
68
- (0, helpers_1.assertArgsDefinedType)([keyId, value, options], [true, true, true], 'ClientEncryption.encryptExpression');
69
- return await this._libmongocrypt.encryptExpression(value, {
70
- keyId,
71
- ...options,
72
- });
73
- }
74
- async createEncryptedCollection(dbName, collName, options) {
75
- (0, helpers_1.assertArgsDefinedType)([dbName], ['string'], 'ClientEncryption.createEncryptedCollection');
76
- (0, helpers_1.assertArgsDefinedType)([collName], ['string'], 'ClientEncryption.createEncryptedCollection');
77
- (0, helpers_1.assertArgsDefinedType)([options], ['object'], 'ClientEncryption.createEncryptedCollection');
78
- (0, helpers_1.assertKeysDefined)(options, ['provider', 'createCollectionOptions']);
79
- if (!this._mongo._serviceProvider.createEncryptedCollection) {
80
- throw new errors_1.MongoshRuntimeError('Runtime does not support createEncryptedCollection yet');
81
- }
82
- const { encryptedFields } = await this._mongo._serviceProvider.createEncryptedCollection(dbName, collName, options, this._libmongocrypt);
83
- return {
84
- collection: this._mongo.getDB(dbName).getCollection(collName),
85
- encryptedFields,
86
- };
87
- }
88
- };
89
- __decorate([
90
- decorators_1.returnsPromise
91
- ], ClientEncryption.prototype, "encrypt", null);
92
- __decorate([
93
- decorators_1.returnsPromise
94
- ], ClientEncryption.prototype, "decrypt", null);
95
- __decorate([
96
- decorators_1.returnsPromise
97
- ], ClientEncryption.prototype, "encryptExpression", null);
98
- __decorate([
99
- decorators_1.returnsPromise,
100
- (0, decorators_1.apiVersions)([1])
101
- ], ClientEncryption.prototype, "createEncryptedCollection", null);
102
- exports.ClientEncryption = ClientEncryption = __decorate([
103
- decorators_1.shellApiClassDefault,
104
- (0, decorators_1.classPlatforms)(['CLI'])
105
- ], ClientEncryption);
106
- let KeyVault = exports.KeyVault = class KeyVault extends decorators_1.ShellApiWithMongoClass {
107
- constructor(clientEncryption) {
108
- var _a, _b, _c;
109
- super();
110
- this._mongo = clientEncryption._mongo;
111
- this._clientEncryption = clientEncryption;
112
- const keyVaultNamespace = (_b = (_a = this._mongo) === null || _a === void 0 ? void 0 : _a._fleOptions) === null || _b === void 0 ? void 0 : _b.keyVaultNamespace;
113
- if (!keyVaultNamespace) {
114
- throw new errors_1.MongoshInvalidInputError('FLE options must be passed to the Mongo object');
63
+ let ClientEncryption = (() => {
64
+ let _classDecorators = [decorators_1.shellApiClassDefault, (0, decorators_1.classPlatforms)(['CLI'])];
65
+ let _classDescriptor;
66
+ let _classExtraInitializers = [];
67
+ let _classThis;
68
+ let _classSuper = decorators_1.ShellApiWithMongoClass;
69
+ let _instanceExtraInitializers = [];
70
+ let _encrypt_decorators;
71
+ let _decrypt_decorators;
72
+ let _encryptExpression_decorators;
73
+ let _createEncryptedCollection_decorators;
74
+ var ClientEncryption = _classThis = class extends _classSuper {
75
+ constructor(mongo) {
76
+ super();
77
+ this._mongo = (__runInitializers(this, _instanceExtraInitializers), void 0);
78
+ this._mongo = mongo;
79
+ const fleOptions = { ...this._mongo._fleOptions };
80
+ delete fleOptions.schemaMap;
81
+ delete fleOptions.encryptedFieldsMap;
82
+ if (!mongo._serviceProvider.createClientEncryption) {
83
+ throw new errors_1.MongoshRuntimeError('FLE API is not available');
84
+ }
85
+ this._libmongocrypt = mongo._serviceProvider.createClientEncryption(fleOptions);
115
86
  }
116
- const parsedNamespace = (_c = keyVaultNamespace.match(/^(?<db>[^.]+)\.(?<coll>.+)$/)) === null || _c === void 0 ? void 0 : _c.groups;
117
- if (!parsedNamespace) {
118
- throw new errors_1.MongoshInvalidInputError(`Invalid keyVaultNamespace '${keyVaultNamespace}'`);
87
+ [enums_1.asPrintable]() {
88
+ return `ClientEncryption class for ${(0, history_1.redactURICredentials)(this._mongo._uri)}`;
119
89
  }
120
- const { db, coll } = parsedNamespace;
121
- this._keyColl = this._mongo.getDB(db).getCollection(coll);
122
- }
123
- async _init() {
124
- try {
125
- const existingIndexKeys = await this._keyColl.getIndexKeys();
126
- if (existingIndexKeys.some((key) => key.keyAltNames)) {
127
- return;
90
+ async encrypt(keyId, value, algorithmOrEncryptionOptions) {
91
+ let encryptionOptions;
92
+ if (typeof algorithmOrEncryptionOptions === 'object') {
93
+ encryptionOptions = {
94
+ keyId,
95
+ ...algorithmOrEncryptionOptions,
96
+ };
97
+ }
98
+ else {
99
+ encryptionOptions = {
100
+ keyId,
101
+ algorithm: algorithmOrEncryptionOptions,
102
+ };
128
103
  }
104
+ (0, helpers_1.assertArgsDefinedType)([keyId, value, encryptionOptions], [true, true, true], 'ClientEncryption.encrypt');
105
+ return await this._libmongocrypt.encrypt(value, encryptionOptions);
129
106
  }
130
- catch (_a) {
107
+ async decrypt(encryptedValue) {
108
+ (0, helpers_1.assertArgsDefinedType)([encryptedValue], [true], 'ClientEncryption.decrypt');
109
+ return await this._libmongocrypt.decrypt(encryptedValue);
131
110
  }
132
- try {
133
- await this._keyColl.updateMany({ keyAltNames: { $size: 0 } }, { $unset: { keyAltNames: '' }, $currentDate: { updateDate: true } });
134
- await this._keyColl.createIndex({ keyAltNames: 1 }, {
135
- unique: true,
136
- partialFilterExpression: { keyAltNames: { $exists: true } },
111
+ async encryptExpression(keyId, value, options) {
112
+ (0, helpers_1.assertArgsDefinedType)([keyId, value, options], [true, true, true], 'ClientEncryption.encryptExpression');
113
+ return await this._libmongocrypt.encryptExpression(value, {
114
+ keyId,
115
+ ...options,
137
116
  });
138
117
  }
139
- catch (err) {
140
- await this._instanceState.printWarning(`Creating 'keyAltNames' index on '${this._keyColl.getFullName()}' failed: ${err.message}`);
118
+ async createEncryptedCollection(dbName, collName, options) {
119
+ (0, helpers_1.assertArgsDefinedType)([dbName], ['string'], 'ClientEncryption.createEncryptedCollection');
120
+ (0, helpers_1.assertArgsDefinedType)([collName], ['string'], 'ClientEncryption.createEncryptedCollection');
121
+ (0, helpers_1.assertArgsDefinedType)([options], ['object'], 'ClientEncryption.createEncryptedCollection');
122
+ (0, helpers_1.assertKeysDefined)(options, ['provider', 'createCollectionOptions']);
123
+ if (!this._mongo._serviceProvider.createEncryptedCollection) {
124
+ throw new errors_1.MongoshRuntimeError('Runtime does not support createEncryptedCollection yet');
125
+ }
126
+ const { encryptedFields } = await this._mongo._serviceProvider.createEncryptedCollection(dbName, collName, options, this._libmongocrypt);
127
+ return {
128
+ collection: this._mongo.getDB(dbName).getCollection(collName),
129
+ encryptedFields,
130
+ };
141
131
  }
142
- }
143
- [enums_1.asPrintable]() {
144
- return `KeyVault class for ${(0, history_1.redactURICredentials)(this._mongo._uri)}`;
145
- }
146
- async createKey(kms, masterKeyOrAltNamesOrDataKeyOptions, legacyKeyAltNames) {
147
- let masterKey;
148
- let keyAltNames;
149
- let keyMaterial;
150
- if (isDataKeyEncryptionKeyOptions(masterKeyOrAltNamesOrDataKeyOptions)) {
151
- masterKey = masterKeyOrAltNamesOrDataKeyOptions === null || masterKeyOrAltNamesOrDataKeyOptions === void 0 ? void 0 : masterKeyOrAltNamesOrDataKeyOptions.masterKey;
152
- keyAltNames = masterKeyOrAltNamesOrDataKeyOptions === null || masterKeyOrAltNamesOrDataKeyOptions === void 0 ? void 0 : masterKeyOrAltNamesOrDataKeyOptions.keyAltNames;
153
- keyMaterial = masterKeyOrAltNamesOrDataKeyOptions === null || masterKeyOrAltNamesOrDataKeyOptions === void 0 ? void 0 : masterKeyOrAltNamesOrDataKeyOptions.keyMaterial;
132
+ };
133
+ __setFunctionName(_classThis, "ClientEncryption");
134
+ (() => {
135
+ var _a;
136
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create((_a = _classSuper[Symbol.metadata]) !== null && _a !== void 0 ? _a : null) : void 0;
137
+ _encrypt_decorators = [decorators_1.returnsPromise];
138
+ _decrypt_decorators = [decorators_1.returnsPromise];
139
+ _encryptExpression_decorators = [decorators_1.returnsPromise];
140
+ _createEncryptedCollection_decorators = [decorators_1.returnsPromise, (0, decorators_1.apiVersions)([1])];
141
+ __esDecorate(_classThis, null, _encrypt_decorators, { kind: "method", name: "encrypt", static: false, private: false, access: { has: obj => "encrypt" in obj, get: obj => obj.encrypt }, metadata: _metadata }, null, _instanceExtraInitializers);
142
+ __esDecorate(_classThis, null, _decrypt_decorators, { kind: "method", name: "decrypt", static: false, private: false, access: { has: obj => "decrypt" in obj, get: obj => obj.decrypt }, metadata: _metadata }, null, _instanceExtraInitializers);
143
+ __esDecorate(_classThis, null, _encryptExpression_decorators, { kind: "method", name: "encryptExpression", static: false, private: false, access: { has: obj => "encryptExpression" in obj, get: obj => obj.encryptExpression }, metadata: _metadata }, null, _instanceExtraInitializers);
144
+ __esDecorate(_classThis, null, _createEncryptedCollection_decorators, { kind: "method", name: "createEncryptedCollection", static: false, private: false, access: { has: obj => "createEncryptedCollection" in obj, get: obj => obj.createEncryptedCollection }, metadata: _metadata }, null, _instanceExtraInitializers);
145
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
146
+ ClientEncryption = _classThis = _classDescriptor.value;
147
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
148
+ __runInitializers(_classThis, _classExtraInitializers);
149
+ })();
150
+ return ClientEncryption = _classThis;
151
+ })();
152
+ exports.ClientEncryption = ClientEncryption;
153
+ let KeyVault = (() => {
154
+ let _classDecorators = [decorators_1.shellApiClassDefault, (0, decorators_1.classPlatforms)(['CLI'])];
155
+ let _classDescriptor;
156
+ let _classExtraInitializers = [];
157
+ let _classThis;
158
+ let _classSuper = decorators_1.ShellApiWithMongoClass;
159
+ let _instanceExtraInitializers = [];
160
+ let _createKey_decorators;
161
+ let _getKey_decorators;
162
+ let _getKeyByAltName_decorators;
163
+ let _getKeys_decorators;
164
+ let _deleteKey_decorators;
165
+ let _addKeyAlternateName_decorators;
166
+ let _removeKeyAlternateName_decorators;
167
+ let _rewrapManyDataKey_decorators;
168
+ let _createDataKey_decorators;
169
+ let _removeKeyAltName_decorators;
170
+ let _addKeyAltName_decorators;
171
+ var KeyVault = _classThis = class extends _classSuper {
172
+ constructor(clientEncryption) {
173
+ var _a, _b, _c;
174
+ super();
175
+ this._mongo = (__runInitializers(this, _instanceExtraInitializers), void 0);
176
+ this._mongo = clientEncryption._mongo;
177
+ this._clientEncryption = clientEncryption;
178
+ const keyVaultNamespace = (_b = (_a = this._mongo) === null || _a === void 0 ? void 0 : _a._fleOptions) === null || _b === void 0 ? void 0 : _b.keyVaultNamespace;
179
+ if (!keyVaultNamespace) {
180
+ throw new errors_1.MongoshInvalidInputError('FLE options must be passed to the Mongo object');
181
+ }
182
+ const parsedNamespace = (_c = keyVaultNamespace.match(/^(?<db>[^.]+)\.(?<coll>.+)$/)) === null || _c === void 0 ? void 0 : _c.groups;
183
+ if (!parsedNamespace) {
184
+ throw new errors_1.MongoshInvalidInputError(`Invalid keyVaultNamespace '${keyVaultNamespace}'`);
185
+ }
186
+ const { db, coll } = parsedNamespace;
187
+ this._keyColl = this._mongo.getDB(db).getCollection(coll);
154
188
  }
155
- else if (isMasterKey(masterKeyOrAltNamesOrDataKeyOptions)) {
156
- masterKey = masterKeyOrAltNamesOrDataKeyOptions;
189
+ async _init() {
190
+ try {
191
+ const existingIndexKeys = await this._keyColl.getIndexKeys();
192
+ if (existingIndexKeys.some((key) => key.keyAltNames)) {
193
+ return;
194
+ }
195
+ }
196
+ catch (_a) {
197
+ }
198
+ try {
199
+ await this._keyColl.updateMany({ keyAltNames: { $size: 0 } }, { $unset: { keyAltNames: '' }, $currentDate: { updateDate: true } });
200
+ await this._keyColl.createIndex({ keyAltNames: 1 }, {
201
+ unique: true,
202
+ partialFilterExpression: { keyAltNames: { $exists: true } },
203
+ });
204
+ }
205
+ catch (err) {
206
+ await this._instanceState.printWarning(`Creating 'keyAltNames' index on '${this._keyColl.getFullName()}' failed: ${err.message}`);
207
+ }
157
208
  }
158
- if (legacyKeyAltNames) {
159
- keyAltNames = legacyKeyAltNames;
209
+ [enums_1.asPrintable]() {
210
+ return `KeyVault class for ${(0, history_1.redactURICredentials)(this._mongo._uri)}`;
160
211
  }
161
- (0, helpers_1.assertArgsDefinedType)([kms], [true], 'KeyVault.createKey');
162
- if (typeof masterKeyOrAltNamesOrDataKeyOptions === 'string') {
163
- if (kms === 'local' && masterKeyOrAltNamesOrDataKeyOptions === '') {
164
- masterKey = undefined;
212
+ async createKey(kms, masterKeyOrAltNamesOrDataKeyOptions, legacyKeyAltNames) {
213
+ let masterKey;
214
+ let keyAltNames;
215
+ let keyMaterial;
216
+ if (isDataKeyEncryptionKeyOptions(masterKeyOrAltNamesOrDataKeyOptions)) {
217
+ masterKey = masterKeyOrAltNamesOrDataKeyOptions === null || masterKeyOrAltNamesOrDataKeyOptions === void 0 ? void 0 : masterKeyOrAltNamesOrDataKeyOptions.masterKey;
218
+ keyAltNames = masterKeyOrAltNamesOrDataKeyOptions === null || masterKeyOrAltNamesOrDataKeyOptions === void 0 ? void 0 : masterKeyOrAltNamesOrDataKeyOptions.keyAltNames;
219
+ keyMaterial = masterKeyOrAltNamesOrDataKeyOptions === null || masterKeyOrAltNamesOrDataKeyOptions === void 0 ? void 0 : masterKeyOrAltNamesOrDataKeyOptions.keyMaterial;
165
220
  }
166
- else {
167
- throw new errors_1.MongoshInvalidInputError('KeyVault.createKey does not support providing masterKey as string anymore. For AWS please use createKey("aws", { region: ..., key: ... })', errors_1.CommonErrors.Deprecated);
221
+ else if (isMasterKey(masterKeyOrAltNamesOrDataKeyOptions)) {
222
+ masterKey = masterKeyOrAltNamesOrDataKeyOptions;
168
223
  }
169
- }
170
- else if (Array.isArray(masterKeyOrAltNamesOrDataKeyOptions)) {
171
- if (kms !== 'local') {
172
- throw new errors_1.MongoshInvalidInputError('KeyVault.createKey requires masterKey to be given as second argument if KMS is not local', errors_1.CommonErrors.InvalidArgument);
224
+ if (legacyKeyAltNames) {
225
+ keyAltNames = legacyKeyAltNames;
173
226
  }
174
- else {
175
- if (keyAltNames) {
176
- throw new errors_1.MongoshInvalidInputError('KeyVault.createKey was supplied with an array for the masterKey and keyAltNames - either specify keyAltNames as second argument or set undefined for masterKey', errors_1.CommonErrors.InvalidArgument);
227
+ (0, helpers_1.assertArgsDefinedType)([kms], [true], 'KeyVault.createKey');
228
+ if (typeof masterKeyOrAltNamesOrDataKeyOptions === 'string') {
229
+ if (kms === 'local' && masterKeyOrAltNamesOrDataKeyOptions === '') {
230
+ masterKey = undefined;
231
+ }
232
+ else {
233
+ throw new errors_1.MongoshInvalidInputError('KeyVault.createKey does not support providing masterKey as string anymore. For AWS please use createKey("aws", { region: ..., key: ... })', errors_1.CommonErrors.Deprecated);
177
234
  }
178
- keyAltNames = masterKeyOrAltNamesOrDataKeyOptions;
179
- masterKey = undefined;
180
235
  }
236
+ else if (Array.isArray(masterKeyOrAltNamesOrDataKeyOptions)) {
237
+ if (kms !== 'local') {
238
+ throw new errors_1.MongoshInvalidInputError('KeyVault.createKey requires masterKey to be given as second argument if KMS is not local', errors_1.CommonErrors.InvalidArgument);
239
+ }
240
+ else {
241
+ if (keyAltNames) {
242
+ throw new errors_1.MongoshInvalidInputError('KeyVault.createKey was supplied with an array for the masterKey and keyAltNames - either specify keyAltNames as second argument or set undefined for masterKey', errors_1.CommonErrors.InvalidArgument);
243
+ }
244
+ keyAltNames = masterKeyOrAltNamesOrDataKeyOptions;
245
+ masterKey = undefined;
246
+ }
247
+ }
248
+ let options;
249
+ if (masterKey) {
250
+ options = { ...(options !== null && options !== void 0 ? options : {}), masterKey };
251
+ }
252
+ if (keyAltNames) {
253
+ options = { ...(options !== null && options !== void 0 ? options : {}), keyAltNames };
254
+ }
255
+ if (keyMaterial) {
256
+ options = { ...(options !== null && options !== void 0 ? options : {}), keyMaterial };
257
+ }
258
+ return await this._clientEncryption._libmongocrypt.createDataKey(kms, options);
181
259
  }
182
- let options;
183
- if (masterKey) {
184
- options = { ...(options !== null && options !== void 0 ? options : {}), masterKey };
260
+ async getKey(keyId) {
261
+ (0, helpers_1.assertArgsDefinedType)([keyId], [true], 'KeyVault.getKey');
262
+ const cursor = await this._keyColl.find({ _id: keyId });
263
+ return await cursor.limit(1).next();
185
264
  }
186
- if (keyAltNames) {
187
- options = { ...(options !== null && options !== void 0 ? options : {}), keyAltNames };
265
+ async getKeyByAltName(keyAltName) {
266
+ (0, helpers_1.assertArgsDefinedType)([keyAltName], ['string'], 'KeyVault.getKeyByAltName');
267
+ const cursor = await this._keyColl.find({ keyAltNames: keyAltName });
268
+ return await cursor.limit(1).next();
188
269
  }
189
- if (keyMaterial) {
190
- options = { ...(options !== null && options !== void 0 ? options : {}), keyMaterial };
270
+ async getKeys() {
271
+ return new cursor_1.default(this._mongo, this._clientEncryption._libmongocrypt.getKeys());
191
272
  }
192
- return await this._clientEncryption._libmongocrypt.createDataKey(kms, options);
193
- }
194
- async getKey(keyId) {
195
- (0, helpers_1.assertArgsDefinedType)([keyId], [true], 'KeyVault.getKey');
196
- const cursor = await this._keyColl.find({ _id: keyId });
197
- return await cursor.limit(1).next();
198
- }
199
- async getKeyByAltName(keyAltName) {
200
- (0, helpers_1.assertArgsDefinedType)([keyAltName], ['string'], 'KeyVault.getKeyByAltName');
201
- const cursor = await this._keyColl.find({ keyAltNames: keyAltName });
202
- return await cursor.limit(1).next();
203
- }
204
- async getKeys() {
205
- return new cursor_1.default(this._mongo, this._clientEncryption._libmongocrypt.getKeys());
206
- }
207
- async deleteKey(keyId) {
208
- (0, helpers_1.assertArgsDefinedType)([keyId], [true], 'KeyVault.deleteKey');
209
- return await this._clientEncryption._libmongocrypt.deleteKey(keyId);
210
- }
211
- async addKeyAlternateName(keyId, keyAltName) {
212
- (0, helpers_1.assertArgsDefinedType)([keyId, keyAltName], [true, 'string'], 'KeyVault.addKeyAlternateName');
213
- return await this._clientEncryption._libmongocrypt.addKeyAltName(keyId, keyAltName);
214
- }
215
- async removeKeyAlternateName(keyId, keyAltName) {
216
- (0, helpers_1.assertArgsDefinedType)([keyId, keyAltName], [true, 'string'], 'KeyVault.removeKeyAlternateName');
217
- return await this._clientEncryption._libmongocrypt.removeKeyAltName(keyId, keyAltName);
218
- }
219
- async rewrapManyDataKey(filter, options) {
220
- return await this._clientEncryption._libmongocrypt.rewrapManyDataKey(filter, options);
221
- }
222
- async createDataKey(...args) {
223
- return await this.createKey(...args);
224
- }
225
- async removeKeyAltName(...args) {
226
- return await this.removeKeyAlternateName(...args);
227
- }
228
- async addKeyAltName(...args) {
229
- return await this.addKeyAlternateName(...args);
230
- }
231
- };
232
- __decorate([
233
- decorators_1.returnsPromise,
234
- (0, decorators_1.apiVersions)([1])
235
- ], KeyVault.prototype, "createKey", null);
236
- __decorate([
237
- (0, decorators_1.apiVersions)([1]),
238
- decorators_1.returnsPromise
239
- ], KeyVault.prototype, "getKey", null);
240
- __decorate([
241
- (0, decorators_1.apiVersions)([1]),
242
- decorators_1.returnsPromise
243
- ], KeyVault.prototype, "getKeyByAltName", null);
244
- __decorate([
245
- (0, decorators_1.returnType)('Cursor'),
246
- (0, decorators_1.apiVersions)([1]),
247
- decorators_1.returnsPromise
248
- ], KeyVault.prototype, "getKeys", null);
249
- __decorate([
250
- decorators_1.returnsPromise,
251
- (0, decorators_1.apiVersions)([1])
252
- ], KeyVault.prototype, "deleteKey", null);
253
- __decorate([
254
- decorators_1.returnsPromise,
255
- (0, decorators_1.apiVersions)([1])
256
- ], KeyVault.prototype, "addKeyAlternateName", null);
257
- __decorate([
258
- decorators_1.returnsPromise,
259
- (0, decorators_1.apiVersions)([1])
260
- ], KeyVault.prototype, "removeKeyAlternateName", null);
261
- __decorate([
262
- decorators_1.returnsPromise,
263
- (0, decorators_1.apiVersions)([1])
264
- ], KeyVault.prototype, "rewrapManyDataKey", null);
265
- __decorate([
266
- decorators_1.returnsPromise,
267
- (0, decorators_1.apiVersions)([1])
268
- ], KeyVault.prototype, "createDataKey", null);
269
- __decorate([
270
- decorators_1.returnsPromise,
271
- (0, decorators_1.apiVersions)([1])
272
- ], KeyVault.prototype, "removeKeyAltName", null);
273
- __decorate([
274
- decorators_1.returnsPromise,
275
- (0, decorators_1.apiVersions)([1])
276
- ], KeyVault.prototype, "addKeyAltName", null);
277
- exports.KeyVault = KeyVault = __decorate([
278
- decorators_1.shellApiClassDefault,
279
- (0, decorators_1.classPlatforms)(['CLI'])
280
- ], KeyVault);
273
+ async deleteKey(keyId) {
274
+ (0, helpers_1.assertArgsDefinedType)([keyId], [true], 'KeyVault.deleteKey');
275
+ return await this._clientEncryption._libmongocrypt.deleteKey(keyId);
276
+ }
277
+ async addKeyAlternateName(keyId, keyAltName) {
278
+ (0, helpers_1.assertArgsDefinedType)([keyId, keyAltName], [true, 'string'], 'KeyVault.addKeyAlternateName');
279
+ return await this._clientEncryption._libmongocrypt.addKeyAltName(keyId, keyAltName);
280
+ }
281
+ async removeKeyAlternateName(keyId, keyAltName) {
282
+ (0, helpers_1.assertArgsDefinedType)([keyId, keyAltName], [true, 'string'], 'KeyVault.removeKeyAlternateName');
283
+ return await this._clientEncryption._libmongocrypt.removeKeyAltName(keyId, keyAltName);
284
+ }
285
+ async rewrapManyDataKey(filter, options) {
286
+ return await this._clientEncryption._libmongocrypt.rewrapManyDataKey(filter, options);
287
+ }
288
+ async createDataKey(...args) {
289
+ return await this.createKey(...args);
290
+ }
291
+ async removeKeyAltName(...args) {
292
+ return await this.removeKeyAlternateName(...args);
293
+ }
294
+ async addKeyAltName(...args) {
295
+ return await this.addKeyAlternateName(...args);
296
+ }
297
+ };
298
+ __setFunctionName(_classThis, "KeyVault");
299
+ (() => {
300
+ var _a;
301
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create((_a = _classSuper[Symbol.metadata]) !== null && _a !== void 0 ? _a : null) : void 0;
302
+ _createKey_decorators = [decorators_1.returnsPromise, (0, decorators_1.apiVersions)([1])];
303
+ _getKey_decorators = [(0, decorators_1.apiVersions)([1]), decorators_1.returnsPromise];
304
+ _getKeyByAltName_decorators = [(0, decorators_1.apiVersions)([1]), decorators_1.returnsPromise];
305
+ _getKeys_decorators = [(0, decorators_1.returnType)('Cursor'), (0, decorators_1.apiVersions)([1]), decorators_1.returnsPromise];
306
+ _deleteKey_decorators = [decorators_1.returnsPromise, (0, decorators_1.apiVersions)([1])];
307
+ _addKeyAlternateName_decorators = [decorators_1.returnsPromise, (0, decorators_1.apiVersions)([1])];
308
+ _removeKeyAlternateName_decorators = [decorators_1.returnsPromise, (0, decorators_1.apiVersions)([1])];
309
+ _rewrapManyDataKey_decorators = [decorators_1.returnsPromise, (0, decorators_1.apiVersions)([1])];
310
+ _createDataKey_decorators = [decorators_1.returnsPromise, (0, decorators_1.apiVersions)([1])];
311
+ _removeKeyAltName_decorators = [decorators_1.returnsPromise, (0, decorators_1.apiVersions)([1])];
312
+ _addKeyAltName_decorators = [decorators_1.returnsPromise, (0, decorators_1.apiVersions)([1])];
313
+ __esDecorate(_classThis, null, _createKey_decorators, { kind: "method", name: "createKey", static: false, private: false, access: { has: obj => "createKey" in obj, get: obj => obj.createKey }, metadata: _metadata }, null, _instanceExtraInitializers);
314
+ __esDecorate(_classThis, null, _getKey_decorators, { kind: "method", name: "getKey", static: false, private: false, access: { has: obj => "getKey" in obj, get: obj => obj.getKey }, metadata: _metadata }, null, _instanceExtraInitializers);
315
+ __esDecorate(_classThis, null, _getKeyByAltName_decorators, { kind: "method", name: "getKeyByAltName", static: false, private: false, access: { has: obj => "getKeyByAltName" in obj, get: obj => obj.getKeyByAltName }, metadata: _metadata }, null, _instanceExtraInitializers);
316
+ __esDecorate(_classThis, null, _getKeys_decorators, { kind: "method", name: "getKeys", static: false, private: false, access: { has: obj => "getKeys" in obj, get: obj => obj.getKeys }, metadata: _metadata }, null, _instanceExtraInitializers);
317
+ __esDecorate(_classThis, null, _deleteKey_decorators, { kind: "method", name: "deleteKey", static: false, private: false, access: { has: obj => "deleteKey" in obj, get: obj => obj.deleteKey }, metadata: _metadata }, null, _instanceExtraInitializers);
318
+ __esDecorate(_classThis, null, _addKeyAlternateName_decorators, { kind: "method", name: "addKeyAlternateName", static: false, private: false, access: { has: obj => "addKeyAlternateName" in obj, get: obj => obj.addKeyAlternateName }, metadata: _metadata }, null, _instanceExtraInitializers);
319
+ __esDecorate(_classThis, null, _removeKeyAlternateName_decorators, { kind: "method", name: "removeKeyAlternateName", static: false, private: false, access: { has: obj => "removeKeyAlternateName" in obj, get: obj => obj.removeKeyAlternateName }, metadata: _metadata }, null, _instanceExtraInitializers);
320
+ __esDecorate(_classThis, null, _rewrapManyDataKey_decorators, { kind: "method", name: "rewrapManyDataKey", static: false, private: false, access: { has: obj => "rewrapManyDataKey" in obj, get: obj => obj.rewrapManyDataKey }, metadata: _metadata }, null, _instanceExtraInitializers);
321
+ __esDecorate(_classThis, null, _createDataKey_decorators, { kind: "method", name: "createDataKey", static: false, private: false, access: { has: obj => "createDataKey" in obj, get: obj => obj.createDataKey }, metadata: _metadata }, null, _instanceExtraInitializers);
322
+ __esDecorate(_classThis, null, _removeKeyAltName_decorators, { kind: "method", name: "removeKeyAltName", static: false, private: false, access: { has: obj => "removeKeyAltName" in obj, get: obj => obj.removeKeyAltName }, metadata: _metadata }, null, _instanceExtraInitializers);
323
+ __esDecorate(_classThis, null, _addKeyAltName_decorators, { kind: "method", name: "addKeyAltName", static: false, private: false, access: { has: obj => "addKeyAltName" in obj, get: obj => obj.addKeyAltName }, metadata: _metadata }, null, _instanceExtraInitializers);
324
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
325
+ KeyVault = _classThis = _classDescriptor.value;
326
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
327
+ __runInitializers(_classThis, _classExtraInitializers);
328
+ })();
329
+ return KeyVault = _classThis;
330
+ })();
331
+ exports.KeyVault = KeyVault;
281
332
  //# sourceMappingURL=field-level-encryption.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"field-level-encryption.js","sourceRoot":"","sources":["../src/field-level-encryption.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"field-level-encryption.js","sourceRoot":"","sources":["../src/field-level-encryption.ts"],"names":[],"mappings":"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"}