You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
	
	
		
			
				
					
						
							|  |  |  | "use strict"; | 
					
						
							|  |  |  | Object.defineProperty(exports, "__esModule", { value: true }); | 
					
						
							|  |  |  | exports.CollectionsOperation = void 0; | 
					
						
							|  |  |  | const collection_1 = require("../collection"); | 
					
						
							|  |  |  | const operation_1 = require("./operation"); | 
					
						
							|  |  |  | /** @internal */ | 
					
						
							|  |  |  | class CollectionsOperation extends operation_1.AbstractOperation { | 
					
						
							|  |  |  |     constructor(db, options) { | 
					
						
							|  |  |  |         super(options); | 
					
						
							|  |  |  |         this.options = options; | 
					
						
							|  |  |  |         this.db = db; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |     execute(server, session, callback) { | 
					
						
							|  |  |  |         // Let's get the collection names
 | 
					
						
							|  |  |  |         this.db | 
					
						
							|  |  |  |             .listCollections({}, { ...this.options, nameOnly: true, readPreference: this.readPreference, session }) | 
					
						
							|  |  |  |             .toArray() | 
					
						
							|  |  |  |             .then(documents => { | 
					
						
							|  |  |  |             const collections = []; | 
					
						
							|  |  |  |             for (const { name } of documents) { | 
					
						
							|  |  |  |                 if (!name.includes('$')) { | 
					
						
							|  |  |  |                     // Filter collections removing any illegal ones
 | 
					
						
							|  |  |  |                     collections.push(new collection_1.Collection(this.db, name, this.db.s.options)); | 
					
						
							|  |  |  |                 } | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |             // Return the collection objects
 | 
					
						
							|  |  |  |             callback(undefined, collections); | 
					
						
							|  |  |  |         }, error => callback(error)); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | exports.CollectionsOperation = CollectionsOperation; | 
					
						
							|  |  |  | //# sourceMappingURL=collections.js.map
 |