@mongosh/types 3.2.0 → 3.5.0

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.
package/AUTHORS CHANGED
@@ -11,3 +11,6 @@ Basit <1305718+mabaasit@users.noreply.github.com>
11
11
  Alena Khineika <alena.khineika@mongodb.com>
12
12
  Gagik Amaryan <me@gagik.co>
13
13
  mongodb-devtools-bot[bot] <189715634+mongodb-devtools-bot[bot]@users.noreply.github.com>
14
+ Ubuntu <ubuntu@ip-10-0-5-160.ec2.internal>
15
+ Nikola Irinchev <irinchev@me.com>
16
+ Ubuntu <ubuntu@ip-10-0-4-95.ec2.internal>
package/lib/index.d.ts CHANGED
@@ -145,9 +145,12 @@ export interface EditorReadVscodeExtensionsFailedEvent {
145
145
  export interface FetchingUpdateMetadataEvent {
146
146
  updateURL: string;
147
147
  localFilePath: string;
148
+ currentVersion: string;
148
149
  }
149
150
  export interface FetchingUpdateMetadataCompleteEvent {
150
151
  latest: string | null;
152
+ currentVersion: string;
153
+ hasGreetingCTA: boolean;
151
154
  }
152
155
  export interface SessionStartedEvent {
153
156
  isInteractive: boolean;
@@ -219,6 +222,7 @@ export interface MongoshBusEventsMap extends ConnectEventMap {
219
222
  'mongosh-editor:read-vscode-extensions-failed': (ev: EditorReadVscodeExtensionsFailedEvent) => void;
220
223
  'mongosh:fetching-update-metadata': (ev: FetchingUpdateMetadataEvent) => void;
221
224
  'mongosh:fetching-update-metadata-complete': (ev: FetchingUpdateMetadataCompleteEvent) => void;
225
+ 'mongosh:log-initialized': () => void;
222
226
  }
223
227
  export interface MongoshBus {
224
228
  on<K extends keyof MongoshBusEventsMap>(event: K, listener: MongoshBusEventsMap[K]): this;
@@ -230,6 +234,7 @@ export declare class ShellUserConfig {
230
234
  maxTimeMS: number | null;
231
235
  enableTelemetry: boolean;
232
236
  editor: string | null;
237
+ logLocation: string | undefined;
233
238
  }
234
239
  export declare class ShellUserConfigValidator {
235
240
  static validate<K extends keyof ShellUserConfig>(key: K, value: ShellUserConfig[K]): Promise<string | null>;
@@ -256,6 +261,12 @@ export declare class CliUserConfig extends SnippetShellUserConfig {
256
261
  oidcTrustedEndpoints: undefined | string[];
257
262
  browser: undefined | false | string;
258
263
  updateURL: string;
264
+ disableLogging: boolean;
265
+ logLocation: string | undefined;
266
+ logRetentionDays: number;
267
+ logMaxFileCount: number;
268
+ logCompressionEnabled: boolean;
269
+ logRetentionGB: number | undefined;
259
270
  }
260
271
  export declare class CliUserConfigValidator extends SnippetShellUserConfigValidator {
261
272
  static validate<K extends keyof CliUserConfig>(key: K, value: CliUserConfig[K]): Promise<string | null>;
package/lib/index.js CHANGED
@@ -1,6 +1,10 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.TimingCategories = exports.CliUserConfigValidator = exports.CliUserConfig = exports.SnippetShellUserConfigValidator = exports.SnippetShellUserConfig = exports.ShellUserConfigValidator = exports.ShellUserConfig = void 0;
7
+ const path_1 = __importDefault(require("path"));
4
8
  class ShellUserConfig {
5
9
  constructor() {
6
10
  this.displayBatchSize = 20;
@@ -89,6 +93,12 @@ class CliUserConfig extends SnippetShellUserConfig {
89
93
  this.oidcTrustedEndpoints = undefined;
90
94
  this.browser = undefined;
91
95
  this.updateURL = 'https://downloads.mongodb.com/compass/mongosh.json';
96
+ this.disableLogging = false;
97
+ this.logLocation = undefined;
98
+ this.logRetentionDays = 30;
99
+ this.logMaxFileCount = 100;
100
+ this.logCompressionEnabled = false;
101
+ this.logRetentionGB = undefined;
92
102
  }
93
103
  }
94
104
  exports.CliUserConfig = CliUserConfig;
@@ -107,12 +117,21 @@ class CliUserConfigValidator extends SnippetShellUserConfigValidator {
107
117
  return null;
108
118
  case 'inspectDepth':
109
119
  case 'historyLength':
120
+ case 'logRetentionDays':
121
+ case 'logMaxFileCount':
110
122
  if (typeof value !== 'number' || value < 0) {
111
123
  return `${key} must be a positive integer`;
112
124
  }
113
125
  return null;
126
+ case 'logRetentionGB':
127
+ if (value !== undefined && (typeof value !== 'number' || value < 0)) {
128
+ return `${key} must be a positive number or undefined`;
129
+ }
130
+ return null;
131
+ case 'disableLogging':
114
132
  case 'forceDisableTelemetry':
115
133
  case 'showStackTraces':
134
+ case 'logCompressionEnabled':
116
135
  if (typeof value !== 'boolean') {
117
136
  return `${key} must be a boolean`;
118
137
  }
@@ -148,6 +167,12 @@ class CliUserConfigValidator extends SnippetShellUserConfigValidator {
148
167
  return `${key} must be a valid URL or empty`;
149
168
  }
150
169
  return null;
170
+ case 'logLocation':
171
+ if (value !== undefined &&
172
+ (typeof value !== 'string' || !path_1.default.isAbsolute(value))) {
173
+ return `${key} must be a valid absolute path or undefined`;
174
+ }
175
+ return null;
151
176
  default:
152
177
  return super.validate(key, value);
153
178
  }
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mongosh/types",
3
- "version": "3.2.0",
3
+ "version": "3.5.0",
4
4
  "description": "Types for mongosh internals",
5
5
  "author": "Anna Henningsen <anna.henningsen@mongodb.com>",
6
6
  "homepage": "https://github.com/mongodb-js/mongosh/tree/main/packages/types#readme",
@@ -46,8 +46,8 @@
46
46
  "@mongodb-js/tsconfig-mongosh": "^1.0.0",
47
47
  "depcheck": "^1.4.7",
48
48
  "eslint": "^7.25.0",
49
- "mongodb": "^6.12.0",
49
+ "mongodb": "^6.13.0",
50
50
  "prettier": "^2.8.8"
51
51
  },
52
- "gitHead": "032d3b89b55f9ddeac19afad76e7c9218a4a83f2"
52
+ "gitHead": "4a09f590a638f320b1809a9a483172b21e222417"
53
53
  }
package/src/index.spec.ts CHANGED
@@ -25,6 +25,33 @@ describe('config validation', function () {
25
25
  expect(await validate('historyLength', 0)).to.equal(null);
26
26
  expect(await validate('historyLength', 1)).to.equal(null);
27
27
  expect(await validate('historyLength', Infinity)).to.equal(null);
28
+ expect(await validate('logRetentionDays', 'foo')).to.equal(
29
+ 'logRetentionDays must be a positive integer'
30
+ );
31
+ expect(await validate('logRetentionDays', -1)).to.equal(
32
+ 'logRetentionDays must be a positive integer'
33
+ );
34
+ expect(await validate('logRetentionGB', 'foo')).to.equal(
35
+ 'logRetentionGB must be a positive number or undefined'
36
+ );
37
+ expect(await validate('logRetentionGB', -1)).to.equal(
38
+ 'logRetentionGB must be a positive number or undefined'
39
+ );
40
+ expect(await validate('logRetentionGB', undefined)).to.equal(null);
41
+ expect(await validate('logRetentionGB', 100)).to.equal(null);
42
+ expect(await validate('logMaxFileCount', 'foo')).to.equal(
43
+ 'logMaxFileCount must be a positive integer'
44
+ );
45
+ expect(await validate('logMaxFileCount', -1)).to.equal(
46
+ 'logMaxFileCount must be a positive integer'
47
+ );
48
+ expect(await validate('logCompressionEnabled', 'foo')).to.equal(
49
+ 'logCompressionEnabled must be a boolean'
50
+ );
51
+ expect(await validate('logCompressionEnabled', -1)).to.equal(
52
+ 'logCompressionEnabled must be a boolean'
53
+ );
54
+ expect(await validate('logCompressionEnabled', false)).to.equal(null);
28
55
  expect(await validate('showStackTraces', 'foo')).to.equal(
29
56
  'showStackTraces must be a boolean'
30
57
  );
package/src/index.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import type { ConnectEventMap } from '@mongodb-js/devtools-connect';
2
+ import path from 'path';
2
3
 
3
4
  export interface ApiEventArguments {
4
5
  pipeline?: any[];
@@ -173,10 +174,13 @@ export interface EditorReadVscodeExtensionsFailedEvent {
173
174
  export interface FetchingUpdateMetadataEvent {
174
175
  updateURL: string;
175
176
  localFilePath: string;
177
+ currentVersion: string;
176
178
  }
177
179
 
178
180
  export interface FetchingUpdateMetadataCompleteEvent {
179
181
  latest: string | null;
182
+ currentVersion: string;
183
+ hasGreetingCTA: boolean;
180
184
  }
181
185
 
182
186
  export interface SessionStartedEvent {
@@ -393,6 +397,8 @@ export interface MongoshBusEventsMap extends ConnectEventMap {
393
397
  'mongosh:fetching-update-metadata-complete': (
394
398
  ev: FetchingUpdateMetadataCompleteEvent
395
399
  ) => void;
400
+ /** Signals that logging has been initialized. */
401
+ 'mongosh:log-initialized': () => void;
396
402
  }
397
403
 
398
404
  export interface MongoshBus {
@@ -418,6 +424,7 @@ export class ShellUserConfig {
418
424
  maxTimeMS: number | null = null;
419
425
  enableTelemetry = false;
420
426
  editor: string | null = null;
427
+ logLocation: string | undefined;
421
428
  }
422
429
 
423
430
  export class ShellUserConfigValidator {
@@ -504,6 +511,12 @@ export class CliUserConfig extends SnippetShellUserConfig {
504
511
  oidcTrustedEndpoints: undefined | string[] = undefined;
505
512
  browser: undefined | false | string = undefined;
506
513
  updateURL = 'https://downloads.mongodb.com/compass/mongosh.json';
514
+ disableLogging = false;
515
+ logLocation: string | undefined = undefined;
516
+ logRetentionDays = 30;
517
+ logMaxFileCount = 100;
518
+ logCompressionEnabled = false;
519
+ logRetentionGB: number | undefined = undefined;
507
520
  }
508
521
 
509
522
  export class CliUserConfigValidator extends SnippetShellUserConfigValidator {
@@ -526,12 +539,21 @@ export class CliUserConfigValidator extends SnippetShellUserConfigValidator {
526
539
  return null;
527
540
  case 'inspectDepth':
528
541
  case 'historyLength':
542
+ case 'logRetentionDays':
543
+ case 'logMaxFileCount':
529
544
  if (typeof value !== 'number' || value < 0) {
530
545
  return `${key} must be a positive integer`;
531
546
  }
532
547
  return null;
548
+ case 'logRetentionGB':
549
+ if (value !== undefined && (typeof value !== 'number' || value < 0)) {
550
+ return `${key} must be a positive number or undefined`;
551
+ }
552
+ return null;
553
+ case 'disableLogging':
533
554
  case 'forceDisableTelemetry':
534
555
  case 'showStackTraces':
556
+ case 'logCompressionEnabled':
535
557
  if (typeof value !== 'boolean') {
536
558
  return `${key} must be a boolean`;
537
559
  }
@@ -575,6 +597,14 @@ export class CliUserConfigValidator extends SnippetShellUserConfigValidator {
575
597
  return `${key} must be a valid URL or empty`;
576
598
  }
577
599
  return null;
600
+ case 'logLocation':
601
+ if (
602
+ value !== undefined &&
603
+ (typeof value !== 'string' || !path.isAbsolute(value))
604
+ ) {
605
+ return `${key} must be a valid absolute path or undefined`;
606
+ }
607
+ return null;
578
608
  default:
579
609
  return super.validate(
580
610
  key as keyof SnippetShellUserConfig,