@mongosh/shell-api 3.22.0 → 3.23.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/lib/api-raw.d.ts CHANGED
@@ -3,26 +3,20 @@
3
3
  import type { Agent } from 'https';
4
4
  import type { AgentConnectOpts } from 'agent-base';
5
5
  import { Binary } from 'bson';
6
+ import type { BSON } from '@mongosh/shell-bson';
6
7
  import { BSONRegExp } from 'bson';
7
- import { BSONSymbol } from 'bson';
8
8
  import { BSONType } from 'bson';
9
- import { calculateObjectSize } from 'bson';
10
9
  import type { ClientRequest } from 'http';
11
- import { Code } from 'bson';
12
10
  import type { ConnectionOptions } from 'tls';
13
- import { DBRef } from 'bson';
14
11
  import { Decimal128 } from 'bson';
15
12
  import type { DeserializeOptions } from 'bson';
16
13
  import { Document as Document_2 } from 'bson';
17
14
  import { Double } from 'bson';
18
15
  import type { Duplex } from 'stream';
19
- import { EJSONOptions } from 'bson';
20
16
  import { EventEmitter } from 'events';
21
17
  import type { IncomingMessage } from 'http';
22
18
  import { Int32 } from 'bson';
23
19
  import { Long } from 'bson';
24
- import { MaxKey } from 'bson';
25
- import { MinKey } from 'bson';
26
20
  import { ObjectId } from 'bson';
27
21
  import type { ObjectIdLike } from 'bson';
28
22
  import { Readable } from 'stream';
@@ -30,6 +24,7 @@ import type { RequestOptions } from 'https';
30
24
  import type { SecureContextOptions } from 'tls';
31
25
  import type { SerializeOptions } from 'bson';
32
26
  import type { ServerResponse } from 'http';
27
+ import { ShellBson } from '@mongosh/shell-bson';
33
28
  import type { SrvRecord } from 'dns';
34
29
  import type { TcpNetConnectOpts } from 'net';
35
30
  import { Timestamp } from 'bson';
@@ -254,33 +249,6 @@ declare abstract class AbstractCursor<TSchema = any, CursorEvents extends Abstra
254
249
  /* Excluded from this release type: throwIfInitialized */
255
250
  }
256
251
 
257
- declare abstract class AbstractCursor_2<CursorType extends ServiceProviderAggregationCursor | ServiceProviderFindCursor | ServiceProviderRunCommandCursor> extends ShellApiWithMongoClass {
258
- _mongo: Mongo;
259
- _cursor: CursorType;
260
- _transform: ((doc: any) => any) | null;
261
- _currentIterationResult: CursorIterationResult | null;
262
- constructor(mongo: Mongo, cursor: CursorType);
263
- [asPrintable](): Promise<CursorIterationResult>;
264
- _it(): Promise<CursorIterationResult>;
265
- batchSize(size: number): this;
266
- close(): Promise<void>;
267
- forEach(f: (doc: Document_2) => void | boolean | Promise<void> | Promise<boolean>): Promise<void>;
268
- hasNext(): Promise<boolean>;
269
- tryNext(): Promise<Document_2 | null>;
270
- _tryNext(): Promise<Document_2 | null>;
271
- _canDelegateIterationToUnderlyingCursor(): boolean;
272
- [Symbol.asyncIterator](): AsyncGenerator<Document_2, void, void>;
273
- isClosed(): boolean;
274
- isExhausted(): boolean;
275
- itcount(): Promise<number>;
276
- toArray(): Promise<Document_2[]>;
277
- pretty(): this;
278
- map(f: (doc: Document_2) => Document_2): this;
279
- maxTimeMS(value: number): this;
280
- next(): Promise<Document_2 | null>;
281
- objsLeftInBatch(): number;
282
- }
283
-
284
252
  /** @public */
285
253
  declare type AbstractCursorEvents = {
286
254
  [AbstractCursor.CLOSE](): void;
@@ -364,6 +332,17 @@ declare interface AbstractCursorOptions extends BSONSerializeOptions {
364
332
  /* Excluded from this release type: timeoutContext */
365
333
  }
366
334
 
335
+ declare abstract class AbstractFiniteCursor<CursorType extends ServiceProviderAggregationCursor | ServiceProviderFindCursor | ServiceProviderRunCommandCursor> extends BaseCursor<CursorType> {
336
+ _currentIterationResult: CursorIterationResult | null;
337
+ constructor(mongo: Mongo, cursor: CursorType);
338
+ [asPrintable](): Promise<CursorIterationResult | string>;
339
+ _it(): Promise<CursorIterationResult>;
340
+ batchSize(size: number): this;
341
+ toArray(): Promise<Document_2[]>;
342
+ maxTimeMS(value: number): this;
343
+ objsLeftInBatch(): number;
344
+ }
345
+
367
346
  /** @public */
368
347
  declare type AcceptedFields<TSchema, FieldType, AssignableType> = {
369
348
  readonly [key in KeysOfAType<TSchema, FieldType>]?: AssignableType;
@@ -474,7 +453,7 @@ declare class Admin {
474
453
  declare interface Admin_2 {
475
454
  platform: ReplPlatform;
476
455
  initialDb: string;
477
- bsonLibrary: typeof bson;
456
+ bsonLibrary: BSON;
478
457
  listDatabases(database: string, options?: ListDatabasesOptions): Promise<Document_2>;
479
458
  getNewConnection(uri: string, options: MongoClientOptions): Promise<any>;
480
459
  getURI(): string | undefined;
@@ -538,7 +517,7 @@ declare interface AggregateOptions extends Omit<CommandOperationOptions, 'explai
538
517
  /* Excluded from this release type: timeoutMode */
539
518
  }
540
519
 
541
- declare abstract class AggregateOrFindCursor<CursorType extends ServiceProviderAggregationCursor | ServiceProviderFindCursor> extends AbstractCursor_2<CursorType> {
520
+ declare abstract class AggregateOrFindCursor<CursorType extends ServiceProviderAggregationCursor | ServiceProviderFindCursor> extends AbstractFiniteCursor<CursorType> {
542
521
  projection(spec: Document_2): this;
543
522
  skip(value: number): this;
544
523
  sort(spec: Document_2): this;
@@ -1039,6 +1018,33 @@ declare type AzureKMSProviderConfiguration = {
1039
1018
  accessToken: string;
1040
1019
  };
1041
1020
 
1021
+ declare abstract class BaseCursor<CursorType extends ServiceProviderBaseCursor> extends ShellApiWithMongoClass {
1022
+ _mongo: Mongo;
1023
+ _cursor: CursorType;
1024
+ _transform: ((doc: any) => any) | null;
1025
+ _blockingWarningDisabled: boolean;
1026
+ constructor(mongo: Mongo, cursor: CursorType);
1027
+ close(): Promise<void>;
1028
+ forEach(f: (doc: Document_2) => void | boolean | Promise<void> | Promise<boolean>): Promise<void>;
1029
+ hasNext(): Promise<boolean>;
1030
+ tryNext(): Promise<Document_2 | null>;
1031
+ _tryNext(): Promise<Document_2 | null>;
1032
+ _canDelegateIterationToUnderlyingCursor(): boolean;
1033
+ [Symbol.asyncIterator](): AsyncGenerator<Document_2, void, void>;
1034
+ isClosed(): boolean;
1035
+ isExhausted(): boolean;
1036
+ itcount(): Promise<number>;
1037
+ pretty(): this;
1038
+ map(f: (doc: Document_2) => Document_2): this;
1039
+ next(): Promise<Document_2 | null>;
1040
+ disableBlockWarnings(): this;
1041
+ abstract batchSize(size: number): this;
1042
+ abstract toArray(): Promise<Document_2[]>;
1043
+ abstract maxTimeMS(value: number): this;
1044
+ abstract objsLeftInBatch(): number;
1045
+ abstract _it(): Promise<CursorIterationResult>;
1046
+ }
1047
+
1042
1048
  declare interface BaseSocks5RequestMetadata {
1043
1049
  srcAddr: string;
1044
1050
  srcPort: number;
@@ -1076,29 +1082,6 @@ declare type BatchType = (typeof BatchType)[keyof typeof BatchType];
1076
1082
  /** @public */
1077
1083
  declare type BitwiseFilter = number /** numeric bit mask */ | Binary /** BinData bit mask */ | ReadonlyArray<number>;
1078
1084
 
1079
- declare const bson: {
1080
- ObjectId: typeof ObjectId;
1081
- DBRef: typeof DBRef;
1082
- MaxKey: typeof MaxKey;
1083
- MinKey: typeof MinKey;
1084
- Timestamp: typeof Timestamp;
1085
- BSONSymbol: typeof BSONSymbol;
1086
- Code: typeof Code;
1087
- Decimal128: typeof Decimal128;
1088
- Int32: typeof Int32;
1089
- Long: typeof Long;
1090
- Binary: typeof Binary;
1091
- calculateObjectSize: typeof calculateObjectSize;
1092
- Double: typeof Double;
1093
- EJSON: {
1094
- parse: (text: string, options?: EJSONOptions) => any;
1095
- stringify: (value: any, replacer?: (number | string)[] | ((this: any, key: string, value: any) => any) | EJSONOptions, space?: string | number, options?: EJSONOptions) => string;
1096
- serialize: (value: any, options?: EJSONOptions) => Document_2;
1097
- deserialize: (ejson: Document_2, options?: EJSONOptions) => any;
1098
- };
1099
- BSONRegExp: typeof BSONRegExp;
1100
- };
1101
-
1102
1085
  /**
1103
1086
  * BSON Serialization options.
1104
1087
  * @public
@@ -1486,28 +1469,21 @@ declare interface ChangeStreamCreateIndexDocument extends ChangeStreamDocumentCo
1486
1469
  operationType: 'createIndexes';
1487
1470
  }
1488
1471
 
1489
- declare class ChangeStreamCursor extends ShellApiWithMongoClass {
1490
- _mongo: Mongo;
1491
- _cursor: ServiceProviderChangeStream<Document_2>;
1472
+ declare class ChangeStreamCursor extends BaseCursor<ServiceProviderChangeStream> {
1492
1473
  _currentIterationResult: CursorIterationResult | null;
1493
1474
  _on: string;
1494
- constructor(cursor: ServiceProviderChangeStream<Document_2>, on: string, mongo: Mongo);
1475
+ constructor(cursor: ServiceProviderChangeStream, on: string, mongo: Mongo);
1495
1476
  _it(): Promise<CursorIterationResult>;
1496
- [asPrintable](): string;
1497
- close(): Promise<void>;
1477
+ [asPrintable](): Promise<string>;
1498
1478
  hasNext(): Promise<boolean>;
1499
1479
  tryNext(): Promise<Document_2 | null>;
1500
- [Symbol.asyncIterator](): AsyncGenerator<Document_2, void, unknown>;
1501
- isClosed(): boolean;
1502
1480
  isExhausted(): never;
1503
- itcount(): Promise<number>;
1504
1481
  next(): Promise<Document_2>;
1505
1482
  getResumeToken(): ResumeToken;
1506
- map(): ChangeStreamCursor;
1507
- forEach(): Promise<void>;
1508
- toArray(): Promise<Document_2[]>;
1509
- objsLeftInBatch(): void;
1510
- pretty(): ChangeStreamCursor;
1483
+ toArray(): never;
1484
+ batchSize(): never;
1485
+ objsLeftInBatch(): never;
1486
+ maxTimeMS(): never;
1511
1487
  }
1512
1488
 
1513
1489
  /**
@@ -5688,30 +5664,6 @@ declare interface HedgeOptions {
5688
5664
  enabled?: boolean;
5689
5665
  }
5690
5666
 
5691
- declare class Help {
5692
- private help;
5693
- private docs;
5694
- private attr;
5695
- constructor(properties: HelpProperties, options?: HelpOptions);
5696
- [asPrintable](): HelpProperties;
5697
- get [shellApiType](): string;
5698
- }
5699
-
5700
- declare type HelpOptions = {
5701
- translate(key: string): string | undefined;
5702
- };
5703
-
5704
- declare type HelpProperties = {
5705
- help: string;
5706
- docs?: string;
5707
- attr?: HelpPropertiesAttr[];
5708
- };
5709
-
5710
- declare type HelpPropertiesAttr = {
5711
- name?: string;
5712
- description: string;
5713
- };
5714
-
5715
5667
  /** @public */
5716
5668
  declare type Hint = string | Document_2;
5717
5669
 
@@ -6356,8 +6308,6 @@ declare interface LogComponentSeveritiesClientOptions {
6356
6308
  default?: SeverityLevel;
6357
6309
  }
6358
6310
 
6359
- declare type LongWithoutAccidentallyExposedMethods = Omit<typeof bson.Long, 'fromExtendedJSON'>;
6360
-
6361
6311
  declare type MapReduceShellOptions = Document_2 | string;
6362
6312
 
6363
6313
  declare type MasterKey = AWSEncryptionKeyOptions | AzureEncryptionKeyOptions | GCPEncryptionKeyOptions;
@@ -6403,7 +6353,7 @@ export declare class Mongo<M extends GenericServerSideSchema = GenericServerSide
6403
6353
  _listDatabases(opts?: ListDatabasesOptions): Promise<{
6404
6354
  databases: {
6405
6355
  name: string;
6406
- sizeOnDisk: number | ShellBson['Long'];
6356
+ sizeOnDisk: number | BSON['Long']['prototype'];
6407
6357
  empty: boolean;
6408
6358
  }[];
6409
6359
  ok: 1;
@@ -6412,7 +6362,7 @@ export declare class Mongo<M extends GenericServerSideSchema = GenericServerSide
6412
6362
  getDBs(options?: ListDatabasesOptions): Promise<{
6413
6363
  databases: {
6414
6364
  name: string;
6415
- sizeOnDisk: number | ShellBson['Long'];
6365
+ sizeOnDisk: number | BSON['Long']['prototype'];
6416
6366
  empty: boolean;
6417
6367
  }[];
6418
6368
  ok: 1;
@@ -6442,7 +6392,7 @@ export declare class Mongo<M extends GenericServerSideSchema = GenericServerSide
6442
6392
  watch(pipeline?: MQLPipeline | ChangeStreamOptions, options?: ChangeStreamOptions): Promise<ChangeStreamCursor>;
6443
6393
  getClientEncryption(): ClientEncryption_2;
6444
6394
  getKeyVault(): Promise<KeyVault>;
6445
- convertShardKeyToHashed(value: any): Promise<unknown>;
6395
+ convertShardKeyToHashed(value: any): Promise<ShellBson['Long']['prototype']>;
6446
6396
  }
6447
6397
 
6448
6398
  /** @public */
@@ -7071,7 +7021,7 @@ declare interface MongoDBOIDCLogEventsMap {
7071
7021
  }) => void;
7072
7022
  'mongodb-oidc-plugin:skip-auth-attempt': (event: {
7073
7023
  authStateId: string;
7074
- reason: string;
7024
+ reason: 'not-expired' | 'not-expired-refresh-failed' | 'refresh-succeeded';
7075
7025
  }) => void;
7076
7026
  'mongodb-oidc-plugin:auth-failed': (event: {
7077
7027
  authStateId: string;
@@ -8197,7 +8147,7 @@ declare class RunCommandCursor extends AbstractCursor {
8197
8147
  /* Excluded from this release type: getMore */
8198
8148
  }
8199
8149
 
8200
- declare class RunCommandCursor_2 extends AbstractCursor_2<ServiceProviderRunCommandCursor> {
8150
+ declare class RunCommandCursor_2 extends AbstractFiniteCursor<ServiceProviderRunCommandCursor> {
8201
8151
  constructor(mongo: Mongo, cursor: ServiceProviderRunCommandCursor);
8202
8152
  }
8203
8153
 
@@ -8764,7 +8714,7 @@ export declare class ShellApi extends ShellApiClass {
8764
8714
  api?: ServerApi | ServerApiVersion;
8765
8715
  }): Promise<Mongo>;
8766
8716
  connect(uri: string, user?: string, pwd?: string): Promise<DatabaseWithSchema>;
8767
- it(): Promise<any>;
8717
+ it(): Promise<CursorIterationResult>;
8768
8718
  version(): string;
8769
8719
  load(filename: string): Promise<true>;
8770
8720
  enableTelemetry(): Promise<any>;
@@ -8807,36 +8757,7 @@ declare interface ShellAuthOptions {
8807
8757
  authDb?: string;
8808
8758
  }
8809
8759
 
8810
- export declare type ShellBson = WithHelp<ShellBsonBase>;
8811
-
8812
- declare interface ShellBsonBase {
8813
- DBRef: (namespace: string, oid: any, db?: string, fields?: Document_2) => typeof bson.DBRef.prototype;
8814
- bsonsize: (object: any) => number;
8815
- MaxKey: () => typeof bson.MaxKey.prototype;
8816
- MinKey: () => typeof bson.MinKey.prototype;
8817
- ObjectId: (id?: string | number | typeof bson.ObjectId.prototype | Buffer) => typeof bson.ObjectId.prototype;
8818
- Timestamp: (t?: number | typeof bson.Long.prototype | {
8819
- t: number;
8820
- i: number;
8821
- }, i?: number) => typeof bson.Timestamp.prototype;
8822
- Code: (c?: string | Function, s?: any) => typeof bson.Code.prototype;
8823
- NumberDecimal: (s?: string) => typeof bson.Decimal128.prototype;
8824
- NumberInt: (v?: string) => typeof bson.Int32.prototype;
8825
- NumberLong: (s?: string | number) => typeof bson.Long.prototype;
8826
- ISODate: (input?: string) => Date;
8827
- BinData: (subtype: number, b64string: string) => Binary;
8828
- HexData: (subtype: number, hexstr: string) => Binary;
8829
- UUID: (hexstr?: string) => Binary;
8830
- MD5: (hexstr: string) => Binary;
8831
- Decimal128: typeof bson.Decimal128;
8832
- BSONSymbol: typeof bson.BSONSymbol;
8833
- Int32: typeof bson.Int32;
8834
- Long: LongWithoutAccidentallyExposedMethods;
8835
- Binary: typeof bson.Binary;
8836
- Double: typeof bson.Double;
8837
- EJSON: typeof bson.EJSON;
8838
- BSONRegExp: typeof bson.BSONRegExp;
8839
- }
8760
+ export { ShellBson }
8840
8761
 
8841
8762
  declare interface ShellCliOptions {
8842
8763
  nodb?: boolean;
@@ -8854,7 +8775,7 @@ declare class ShellConfig extends ShellApiClass {
8854
8775
  }
8855
8776
 
8856
8777
  declare class ShellInstanceState {
8857
- currentCursor: Cursor | AggregationCursor_2 | ChangeStreamCursor | RunCommandCursor_2 | null;
8778
+ currentCursor: BaseCursor<ServiceProviderBaseCursor> | null;
8858
8779
  currentDb: DatabaseWithSchema;
8859
8780
  messageBus: MongoshBus;
8860
8781
  initialServiceProvider: ServiceProvider;
@@ -8879,6 +8800,7 @@ declare class ShellInstanceState {
8879
8800
  private alreadyTransformedErrors;
8880
8801
  private preFetchCollectionAndDatabaseNames;
8881
8802
  constructor(initialServiceProvider: ServiceProvider, messageBus?: any, cliOptions?: ShellCliOptions);
8803
+ private constructShellBson;
8882
8804
  fetchConnectionInfo(): Promise<ConnectionInfo_2 | undefined>;
8883
8805
  cachedConnectionInfo(): ConnectionInfo_2 | undefined;
8884
8806
  close(): Promise<void>;
@@ -9579,12 +9501,6 @@ declare interface ValidateCollectionOptions extends CommandOperationOptions {
9579
9501
  /** @public */
9580
9502
  declare type W = number | 'majority';
9581
9503
 
9582
- declare type WithHelp<T> = {
9583
- [prop in keyof T]: T[prop] & {
9584
- help?: () => Help;
9585
- };
9586
- };
9587
-
9588
9504
  /** Add an _id field to an object shaped type @public */
9589
9505
  declare type WithId<TSchema> = EnhancedOmit<TSchema, '_id'> & {
9590
9506
  _id: InferIdType<TSchema>;
package/lib/api.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { CollectionWithSchema } from './collection';
2
- export { ShellBson } from './shell-bson';
2
+ export { ShellBson } from '@mongosh/shell-bson';
3
3
  export { Streams } from './streams';
4
4
  export { DatabaseWithSchema } from './database';
5
5
  import Shard from './shard';
@@ -1,28 +1,21 @@
1
- import { ShellApiWithMongoClass } from './decorators';
2
1
  import type { ServiceProviderChangeStream, Document, ResumeToken } from '@mongosh/service-provider-core';
3
2
  import { CursorIterationResult } from './result';
4
3
  import { asPrintable } from './enums';
5
4
  import type Mongo from './mongo';
6
- export default class ChangeStreamCursor extends ShellApiWithMongoClass {
7
- _mongo: Mongo;
8
- _cursor: ServiceProviderChangeStream<Document>;
5
+ import { BaseCursor } from './abstract-cursor';
6
+ export default class ChangeStreamCursor extends BaseCursor<ServiceProviderChangeStream> {
9
7
  _currentIterationResult: CursorIterationResult | null;
10
8
  _on: string;
11
- constructor(cursor: ServiceProviderChangeStream<Document>, on: string, mongo: Mongo);
9
+ constructor(cursor: ServiceProviderChangeStream, on: string, mongo: Mongo);
12
10
  _it(): Promise<CursorIterationResult>;
13
- [asPrintable](): string;
14
- close(): Promise<void>;
11
+ [asPrintable](): Promise<string>;
15
12
  hasNext(): Promise<boolean>;
16
13
  tryNext(): Promise<Document | null>;
17
- [Symbol.asyncIterator](): AsyncGenerator<Document, void, unknown>;
18
- isClosed(): boolean;
19
14
  isExhausted(): never;
20
- itcount(): Promise<number>;
21
15
  next(): Promise<Document>;
22
16
  getResumeToken(): ResumeToken;
23
- map(): ChangeStreamCursor;
24
- forEach(): Promise<void>;
25
- toArray(): Promise<Document[]>;
26
- objsLeftInBatch(): void;
27
- pretty(): ChangeStreamCursor;
17
+ toArray(): never;
18
+ batchSize(): never;
19
+ objsLeftInBatch(): never;
20
+ maxTimeMS(): never;
28
21
  }
@@ -43,27 +43,22 @@ const result_1 = require("./result");
43
43
  const enums_1 = require("./enums");
44
44
  const errors_1 = require("@mongosh/errors");
45
45
  const helpers_1 = require("./helpers");
46
+ const abstract_cursor_1 = require("./abstract-cursor");
46
47
  let ChangeStreamCursor = (() => {
47
48
  let _classDecorators = [decorators_1.shellApiClassDefault];
48
49
  let _classDescriptor;
49
50
  let _classExtraInitializers = [];
50
51
  let _classThis;
51
- let _classSuper = decorators_1.ShellApiWithMongoClass;
52
+ let _classSuper = abstract_cursor_1.BaseCursor;
52
53
  let _instanceExtraInitializers = [];
53
- let _close_decorators;
54
54
  let _hasNext_decorators;
55
55
  let _tryNext_decorators;
56
- let _itcount_decorators;
57
56
  let _next_decorators;
58
- let _pretty_decorators;
59
57
  var ChangeStreamCursor = _classThis = class extends _classSuper {
60
58
  constructor(cursor, on, mongo) {
61
- super();
62
- this._mongo = __runInitializers(this, _instanceExtraInitializers);
63
- this._currentIterationResult = null;
64
- this._cursor = cursor;
59
+ super(mongo, cursor);
60
+ this._currentIterationResult = (__runInitializers(this, _instanceExtraInitializers), null);
65
61
  this._on = on;
66
- this._mongo = mongo;
67
62
  }
68
63
  async _it() {
69
64
  if (this._cursor.closed) {
@@ -73,81 +68,57 @@ let ChangeStreamCursor = (() => {
73
68
  return (0, helpers_1.iterate)(result, this, await this._mongo._displayBatchSize());
74
69
  }
75
70
  [enums_1.asPrintable]() {
76
- return `ChangeStreamCursor on ${this._on}`;
77
- }
78
- async close() {
79
- await this._cursor.close();
71
+ return Promise.resolve(`ChangeStreamCursor on ${this._on}`);
80
72
  }
81
73
  async hasNext() {
82
- await this._instanceState.printWarning('If there are no documents in the batch, hasNext will block. Use tryNext if you want to check if there ' +
83
- 'are any documents without waiting.');
84
- return this._cursor.hasNext();
74
+ if (!this._blockingWarningDisabled) {
75
+ await this._instanceState.printWarning('If there are no documents in the batch, hasNext will block. Use tryNext if you want to check if there ' +
76
+ 'are any documents without waiting, or cursor.disableBlockWarnings() if you want to disable this warning.');
77
+ }
78
+ return super.hasNext();
85
79
  }
86
80
  async tryNext() {
87
81
  if (this._cursor.closed) {
88
82
  throw new errors_1.MongoshRuntimeError('Cannot call tryNext on closed cursor');
89
83
  }
90
- return this._cursor.tryNext();
91
- }
92
- get [(_close_decorators = [decorators_1.returnsPromise], _hasNext_decorators = [decorators_1.returnsPromise, decorators_1.deprecated], _tryNext_decorators = [decorators_1.returnsPromise], Symbol.for('@@mongosh.syntheticAsyncIterable'))]() {
93
- return true;
94
- }
95
- async *[Symbol.asyncIterator]() {
96
- let doc;
97
- while ((doc = await this.tryNext()) !== null) {
98
- yield doc;
99
- }
100
- }
101
- isClosed() {
102
- return this._cursor.closed;
84
+ return super.tryNext();
103
85
  }
104
86
  isExhausted() {
105
87
  throw new errors_1.MongoshInvalidInputError('isExhausted is not implemented for ChangeStreams because after closing a cursor, the remaining documents in the batch are no longer accessible. If you want to see if the cursor is closed use isClosed. If you want to see if there are documents left in the batch, use tryNext.');
106
88
  }
107
- async itcount() {
108
- let count = 0;
109
- while (await this.tryNext()) {
110
- count++;
111
- }
112
- return count;
113
- }
114
89
  async next() {
115
- await this._instanceState.printWarning('If there are no documents in the batch, next will block. Use tryNext if you want to check if there are ' +
116
- 'any documents without waiting.');
117
- return this._cursor.next();
90
+ if (!this._blockingWarningDisabled) {
91
+ await this._instanceState.printWarning('If there are no documents in the batch, next will block. Use tryNext if you want to check if there are ' +
92
+ 'any documents without waiting, or cursor.disableBlockWarnings() if you want to disable this warning.');
93
+ }
94
+ return (await super.next());
118
95
  }
119
96
  getResumeToken() {
120
97
  return this._cursor.resumeToken;
121
98
  }
122
- map() {
123
- throw new errors_1.MongoshUnimplementedError('Cannot call map on a change stream cursor');
124
- }
125
- forEach() {
126
- throw new errors_1.MongoshUnimplementedError('Cannot call forEach on a change stream cursor');
127
- }
128
99
  toArray() {
129
100
  throw new errors_1.MongoshUnimplementedError('Cannot call toArray on a change stream cursor');
130
101
  }
102
+ batchSize() {
103
+ throw new errors_1.MongoshUnimplementedError('Cannot call batchSize on a change stream cursor');
104
+ }
131
105
  objsLeftInBatch() {
132
106
  throw new errors_1.MongoshUnimplementedError('Cannot call objsLeftInBatch on a change stream cursor');
133
107
  }
134
- pretty() {
135
- return this;
108
+ maxTimeMS() {
109
+ throw new errors_1.MongoshUnimplementedError('Cannot call maxTimeMS on a change stream cursor');
136
110
  }
137
111
  };
138
112
  __setFunctionName(_classThis, "ChangeStreamCursor");
139
113
  (() => {
140
114
  var _a;
141
115
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create((_a = _classSuper[Symbol.metadata]) !== null && _a !== void 0 ? _a : null) : void 0;
142
- _itcount_decorators = [decorators_1.returnsPromise];
116
+ _hasNext_decorators = [decorators_1.returnsPromise, decorators_1.deprecated];
117
+ _tryNext_decorators = [decorators_1.returnsPromise];
143
118
  _next_decorators = [decorators_1.returnsPromise];
144
- _pretty_decorators = [(0, decorators_1.returnType)('ChangeStreamCursor')];
145
- __esDecorate(_classThis, null, _close_decorators, { kind: "method", name: "close", static: false, private: false, access: { has: obj => "close" in obj, get: obj => obj.close }, metadata: _metadata }, null, _instanceExtraInitializers);
146
119
  __esDecorate(_classThis, null, _hasNext_decorators, { kind: "method", name: "hasNext", static: false, private: false, access: { has: obj => "hasNext" in obj, get: obj => obj.hasNext }, metadata: _metadata }, null, _instanceExtraInitializers);
147
120
  __esDecorate(_classThis, null, _tryNext_decorators, { kind: "method", name: "tryNext", static: false, private: false, access: { has: obj => "tryNext" in obj, get: obj => obj.tryNext }, metadata: _metadata }, null, _instanceExtraInitializers);
148
- __esDecorate(_classThis, null, _itcount_decorators, { kind: "method", name: "itcount", static: false, private: false, access: { has: obj => "itcount" in obj, get: obj => obj.itcount }, metadata: _metadata }, null, _instanceExtraInitializers);
149
121
  __esDecorate(_classThis, null, _next_decorators, { kind: "method", name: "next", static: false, private: false, access: { has: obj => "next" in obj, get: obj => obj.next }, metadata: _metadata }, null, _instanceExtraInitializers);
150
- __esDecorate(_classThis, null, _pretty_decorators, { kind: "method", name: "pretty", static: false, private: false, access: { has: obj => "pretty" in obj, get: obj => obj.pretty }, metadata: _metadata }, null, _instanceExtraInitializers);
151
122
  __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
152
123
  ChangeStreamCursor = _classThis = _classDescriptor.value;
153
124
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
@@ -1 +1 @@
1
- {"version":3,"file":"change-stream-cursor.js","sourceRoot":"","sources":["../src/change-stream-cursor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"change-stream-cursor.js","sourceRoot":"","sources":["../src/change-stream-cursor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAgF;AAMhF,qCAAiD;AACjD,mCAAsC;AACtC,4CAIyB;AACzB,uCAAoC;AAEpC,uDAA+C;;4BAE9C,iCAAoB;;;;sBAC2B,4BAAU;;;;;+CAAlB,SAAQ,WAAuC;QAIrF,YAAY,MAAmC,EAAE,EAAU,EAAE,KAAY;YACvE,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAJvB,4BAAuB,IADJ,mDAAkB,EACmB,IAAI,EAAC;YAK3D,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QAChB,CAAC;QAEQ,KAAK,CAAC,GAAG;YAChB,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBACxB,MAAM,IAAI,4BAAmB,CAAC,8BAA8B,CAAC,CAAC;YAChE,CAAC;YACD,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,uBAAuB,GAAG,IAAI,8BAAqB,EAAE,CAAC,CAAC;YAC5E,OAAO,IAAA,iBAAO,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACtE,CAAC;QAKQ,CAAC,mBAAW,CAAC;YACpB,OAAO,OAAO,CAAC,OAAO,CAAC,yBAAyB,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC9D,CAAC;QAIQ,KAAK,CAAC,OAAO;YACpB,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBACnC,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,CACpC,wGAAwG;oBACtG,0GAA0G,CAC7G,CAAC;YACJ,CAAC;YACD,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC;QACzB,CAAC;QAGQ,KAAK,CAAC,OAAO;YACpB,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBACxB,MAAM,IAAI,4BAAmB,CAAC,sCAAsC,CAAC,CAAC;YACxE,CAAC;YACD,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC;QACzB,CAAC;QAEQ,WAAW;YAClB,MAAM,IAAI,iCAAwB,CAChC,oRAAoR,CACrR,CAAC;QACJ,CAAC;QAGQ,KAAK,CAAC,IAAI;YACjB,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBACnC,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,CACpC,yGAAyG;oBACvG,sGAAsG,CACzG,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAa,CAAC;QAC1C,CAAC;QAED,cAAc;YACZ,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;QAClC,CAAC;QAEQ,OAAO;YACd,MAAM,IAAI,kCAAyB,CACjC,+CAA+C,CAChD,CAAC;QACJ,CAAC;QAEQ,SAAS;YAChB,MAAM,IAAI,kCAAyB,CACjC,iDAAiD,CAClD,CAAC;QACJ,CAAC;QAEQ,eAAe;YACtB,MAAM,IAAI,kCAAyB,CACjC,uDAAuD,CACxD,CAAC;QACJ,CAAC;QAEQ,SAAS;YAChB,MAAM,IAAI,kCAAyB,CACjC,iDAAiD,CAClD,CAAC;QACJ,CAAC;;;;;;+BA/DA,2BAAc,EACd,uBAAU;+BAWV,2BAAc;4BAcd,2BAAc;QAxBf,8KAAe,OAAO,6DAQrB;QAGD,8KAAe,OAAO,6DAKrB;QASD,qKAAe,IAAI,6DAQlB;QA3DH,6KAwFC;;;QAxFoB,uDAAkB"}
package/lib/cursor.js CHANGED
@@ -113,9 +113,10 @@ let Cursor = (() => {
113
113
  return await this._cursor.count();
114
114
  }
115
115
  async hasNext() {
116
- if (this._tailable) {
116
+ if (this._tailable && !this._blockingWarningDisabled) {
117
117
  await this._instanceState.printWarning('If this is a tailable cursor with awaitData, and there are no documents in the batch, this method ' +
118
- 'will will block. Use tryNext if you want to check if there are any documents without waiting.');
118
+ 'will will block. Use tryNext if you want to check if there are any documents without waiting, or ' +
119
+ 'cursor.disableBlockWarnings() if you want to disable this warning.');
119
120
  }
120
121
  return super.hasNext();
121
122
  }
@@ -140,9 +141,10 @@ let Cursor = (() => {
140
141
  return this;
141
142
  }
142
143
  async next() {
143
- if (this._tailable) {
144
+ if (this._tailable && !this._blockingWarningDisabled) {
144
145
  await this._instanceState.printWarning('If this is a tailable cursor with awaitData, and there are no documents in the batch, this' +
145
- ' method will will block. Use tryNext if you want to check if there are any documents without waiting.');
146
+ ' method will will block. Use tryNext if you want to check if there are any documents without waiting,' +
147
+ ' or cursor.disableBlockWarnings() if you want to disable this warning.');
146
148
  }
147
149
  return super.next();
148
150
  }
package/lib/cursor.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cursor.js","sourceRoot":"","sources":["../src/cursor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cursor.js","sourceRoot":"","sources":["../src/cursor.ts"],"names":[],"mappings":"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"}