@colyseus/core 0.14.21 → 0.14.25
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/build/Logger.d.ts +9 -0
- package/build/Logger.js +12 -0
- package/build/Logger.js.map +1 -0
- package/build/Logger.mjs +8 -0
- package/build/Logger.mjs.map +1 -0
- package/build/Room.js +2 -0
- package/build/Room.js.map +1 -1
- package/build/Room.mjs +2 -0
- package/build/Room.mjs.map +1 -1
- package/build/Server.js +1 -1
- package/build/Server.js.map +1 -1
- package/build/Server.mjs +1 -1
- package/build/Server.mjs.map +1 -1
- package/build/_virtual/AggregationCursor.js_commonjs-proxy +3 -0
- package/build/_virtual/AggregationCursor.js_commonjs-proxy.map +1 -0
- package/build/_virtual/BufferList.js_commonjs-proxy +3 -0
- package/build/_virtual/BufferList.js_commonjs-proxy.map +1 -0
- package/build/_virtual/ChangeStream.js_commonjs-proxy +3 -0
- package/build/_virtual/ChangeStream.js_commonjs-proxy.map +1 -0
- package/build/_virtual/PopulateOptions.js_commonjs-proxy +3 -0
- package/build/_virtual/PopulateOptions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/QueryCursor.js_commonjs-proxy +3 -0
- package/build/_virtual/QueryCursor.js_commonjs-proxy.map +1 -0
- package/build/_virtual/ReadPreference.js_commonjs-proxy +3 -0
- package/build/_virtual/ReadPreference.js_commonjs-proxy.map +1 -0
- package/build/_virtual/SchemaArrayOptions.js_commonjs-proxy +3 -0
- package/build/_virtual/SchemaArrayOptions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/SchemaBufferOptions.js_commonjs-proxy +3 -0
- package/build/_virtual/SchemaBufferOptions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/SchemaDateOptions.js_commonjs-proxy +3 -0
- package/build/_virtual/SchemaDateOptions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/SchemaDocumentArrayOptions.js_commonjs-proxy +3 -0
- package/build/_virtual/SchemaDocumentArrayOptions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/SchemaMapOptions.js_commonjs-proxy +3 -0
- package/build/_virtual/SchemaMapOptions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/SchemaNumberOptions.js_commonjs-proxy +3 -0
- package/build/_virtual/SchemaNumberOptions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/SchemaObjectIdOptions.js_commonjs-proxy +3 -0
- package/build/_virtual/SchemaObjectIdOptions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/SchemaSingleNestedOptions.js_commonjs-proxy +3 -0
- package/build/_virtual/SchemaSingleNestedOptions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/SchemaStringOptions.js_commonjs-proxy +3 -0
- package/build/_virtual/SchemaStringOptions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/SchemaTypeOptions.js_commonjs-proxy +3 -0
- package/build/_virtual/SchemaTypeOptions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/SingleNestedPath.js_commonjs-proxy +3 -0
- package/build/_virtual/SingleNestedPath.js_commonjs-proxy.map +1 -0
- package/build/_virtual/SkipPopulateValue.js_commonjs-proxy +3 -0
- package/build/_virtual/SkipPopulateValue.js_commonjs-proxy.map +1 -0
- package/build/_virtual/VirtualOptions.js_commonjs-proxy +3 -0
- package/build/_virtual/VirtualOptions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/_commonjsHelpers.js +28 -0
- package/build/_virtual/_commonjsHelpers.js.map +1 -0
- package/build/_virtual/_stream_duplex.js_commonjs-proxy +3 -0
- package/build/_virtual/_stream_duplex.js_commonjs-proxy.map +1 -0
- package/build/_virtual/_stream_passthrough.js_commonjs-proxy +3 -0
- package/build/_virtual/_stream_passthrough.js_commonjs-proxy.map +1 -0
- package/build/_virtual/_stream_readable.js_commonjs-proxy +3 -0
- package/build/_virtual/_stream_readable.js_commonjs-proxy.map +1 -0
- package/build/_virtual/_stream_transform.js_commonjs-proxy +3 -0
- package/build/_virtual/_stream_transform.js_commonjs-proxy.map +1 -0
- package/build/_virtual/_stream_writable.js_commonjs-proxy +3 -0
- package/build/_virtual/_stream_writable.js_commonjs-proxy.map +1 -0
- package/build/_virtual/addAutoId.js_commonjs-proxy +3 -0
- package/build/_virtual/addAutoId.js_commonjs-proxy.map +1 -0
- package/build/_virtual/add_user.js_commonjs-proxy +3 -0
- package/build/_virtual/add_user.js_commonjs-proxy.map +1 -0
- package/build/_virtual/admin.js_commonjs-proxy +3 -0
- package/build/_virtual/admin.js_commonjs-proxy.map +1 -0
- package/build/_virtual/aggregate.js_commonjs-proxy +3 -0
- package/build/_virtual/aggregate.js_commonjs-proxy.map +1 -0
- package/build/_virtual/aggregate2.js_commonjs-proxy +3 -0
- package/build/_virtual/aggregate2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/aggregation_cursor.js_commonjs-proxy +3 -0
- package/build/_virtual/aggregation_cursor.js_commonjs-proxy.map +1 -0
- package/build/_virtual/allServersUnknown.js_commonjs-proxy +3 -0
- package/build/_virtual/allServersUnknown.js_commonjs-proxy.map +1 -0
- package/build/_virtual/any.js_commonjs-proxy +3 -0
- package/build/_virtual/any.js_commonjs-proxy.map +1 -0
- package/build/_virtual/apm.js_commonjs-proxy +3 -0
- package/build/_virtual/apm.js_commonjs-proxy.map +1 -0
- package/build/_virtual/apm2.js_commonjs-proxy +3 -0
- package/build/_virtual/apm2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/applyGlobalMaxTimeMS.js_commonjs-proxy +3 -0
- package/build/_virtual/applyGlobalMaxTimeMS.js_commonjs-proxy.map +1 -0
- package/build/_virtual/applyHooks.js_commonjs-proxy +3 -0
- package/build/_virtual/applyHooks.js_commonjs-proxy.map +1 -0
- package/build/_virtual/applyMethods.js_commonjs-proxy +3 -0
- package/build/_virtual/applyMethods.js_commonjs-proxy.map +1 -0
- package/build/_virtual/applyPlugins.js_commonjs-proxy +3 -0
- package/build/_virtual/applyPlugins.js_commonjs-proxy.map +1 -0
- package/build/_virtual/applyQueryMiddleware.js_commonjs-proxy +3 -0
- package/build/_virtual/applyQueryMiddleware.js_commonjs-proxy.map +1 -0
- package/build/_virtual/applyStaticHooks.js_commonjs-proxy +3 -0
- package/build/_virtual/applyStaticHooks.js_commonjs-proxy.map +1 -0
- package/build/_virtual/applyStatics.js_commonjs-proxy +3 -0
- package/build/_virtual/applyStatics.js_commonjs-proxy.map +1 -0
- package/build/_virtual/applyTimestampsToChildren.js_commonjs-proxy +3 -0
- package/build/_virtual/applyTimestampsToChildren.js_commonjs-proxy.map +1 -0
- package/build/_virtual/applyTimestampsToUpdate.js_commonjs-proxy +3 -0
- package/build/_virtual/applyTimestampsToUpdate.js_commonjs-proxy.map +1 -0
- package/build/_virtual/applyWriteConcern.js_commonjs-proxy +3 -0
- package/build/_virtual/applyWriteConcern.js_commonjs-proxy.map +1 -0
- package/build/_virtual/areDiscriminatorValuesEqual.js_commonjs-proxy +3 -0
- package/build/_virtual/areDiscriminatorValuesEqual.js_commonjs-proxy.map +1 -0
- package/build/_virtual/array.js_commonjs-proxy +3 -0
- package/build/_virtual/array.js_commonjs-proxy.map +1 -0
- package/build/_virtual/array2.js_commonjs-proxy +3 -0
- package/build/_virtual/array2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/arrayDepth.js_commonjs-proxy +3 -0
- package/build/_virtual/arrayDepth.js_commonjs-proxy.map +1 -0
- package/build/_virtual/assignRawDocsToIdStructure.js_commonjs-proxy +3 -0
- package/build/_virtual/assignRawDocsToIdStructure.js_commonjs-proxy.map +1 -0
- package/build/_virtual/assignVals.js_commonjs-proxy +3 -0
- package/build/_virtual/assignVals.js_commonjs-proxy.map +1 -0
- package/build/_virtual/async.js_commonjs-proxy +3 -0
- package/build/_virtual/async.js_commonjs-proxy.map +1 -0
- package/build/_virtual/async_iterator.js_commonjs-proxy +3 -0
- package/build/_virtual/async_iterator.js_commonjs-proxy.map +1 -0
- package/build/_virtual/auth_provider.js_commonjs-proxy +3 -0
- package/build/_virtual/auth_provider.js_commonjs-proxy.map +1 -0
- package/build/_virtual/aws4.js_commonjs-proxy +3 -0
- package/build/_virtual/aws4.js_commonjs-proxy.map +1 -0
- package/build/_virtual/binary.js_commonjs-proxy +3 -0
- package/build/_virtual/binary.js_commonjs-proxy.map +1 -0
- package/build/_virtual/binary2.js_commonjs-proxy +3 -0
- package/build/_virtual/binary2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/bind.js_commonjs-proxy +3 -0
- package/build/_virtual/bind.js_commonjs-proxy.map +1 -0
- package/build/_virtual/bitwise.js_commonjs-proxy +3 -0
- package/build/_virtual/bitwise.js_commonjs-proxy.map +1 -0
- package/build/_virtual/bl.js_commonjs-proxy +3 -0
- package/build/_virtual/bl.js_commonjs-proxy.map +1 -0
- package/build/_virtual/bluebird.js_commonjs-proxy +3 -0
- package/build/_virtual/bluebird.js_commonjs-proxy.map +1 -0
- package/build/_virtual/boolean.js_commonjs-proxy +3 -0
- package/build/_virtual/boolean.js_commonjs-proxy.map +1 -0
- package/build/_virtual/boolean2.js_commonjs-proxy +3 -0
- package/build/_virtual/boolean2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/browserDocument.js_commonjs-proxy +3 -0
- package/build/_virtual/browserDocument.js_commonjs-proxy.map +1 -0
- package/build/_virtual/bson.js_commonjs-proxy +3 -0
- package/build/_virtual/bson.js_commonjs-proxy.map +1 -0
- package/build/_virtual/buffer-util.js_commonjs-proxy +3 -0
- package/build/_virtual/buffer-util.js_commonjs-proxy.map +1 -0
- package/build/_virtual/buffer.js_commonjs-proxy +3 -0
- package/build/_virtual/buffer.js_commonjs-proxy.map +1 -0
- package/build/_virtual/buffer2.js_commonjs-proxy +3 -0
- package/build/_virtual/buffer2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/bulk_write.js_commonjs-proxy +3 -0
- package/build/_virtual/bulk_write.js_commonjs-proxy.map +1 -0
- package/build/_virtual/calculate_size.js_commonjs-proxy +3 -0
- package/build/_virtual/calculate_size.js_commonjs-proxy.map +1 -0
- package/build/_virtual/call_get.js_commonjs-proxy +3 -0
- package/build/_virtual/call_get.js_commonjs-proxy.map +1 -0
- package/build/_virtual/cancel.js_commonjs-proxy +3 -0
- package/build/_virtual/cancel.js_commonjs-proxy.map +1 -0
- package/build/_virtual/cast.js_commonjs-proxy +3 -0
- package/build/_virtual/cast.js_commonjs-proxy.map +1 -0
- package/build/_virtual/cast2.js_commonjs-proxy +3 -0
- package/build/_virtual/cast2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/castArrayFilters.js_commonjs-proxy +3 -0
- package/build/_virtual/castArrayFilters.js_commonjs-proxy.map +1 -0
- package/build/_virtual/castBulkWrite.js_commonjs-proxy +3 -0
- package/build/_virtual/castBulkWrite.js_commonjs-proxy.map +1 -0
- package/build/_virtual/castFilterPath.js_commonjs-proxy +3 -0
- package/build/_virtual/castFilterPath.js_commonjs-proxy.map +1 -0
- package/build/_virtual/castUpdate.js_commonjs-proxy +3 -0
- package/build/_virtual/castUpdate.js_commonjs-proxy.map +1 -0
- package/build/_virtual/catch_filter.js_commonjs-proxy +3 -0
- package/build/_virtual/catch_filter.js_commonjs-proxy.map +1 -0
- package/build/_virtual/change_stream.js_commonjs-proxy +3 -0
- package/build/_virtual/change_stream.js_commonjs-proxy.map +1 -0
- package/build/_virtual/checkEmbeddedDiscriminatorKeyProjection.js_commonjs-proxy +3 -0
- package/build/_virtual/checkEmbeddedDiscriminatorKeyProjection.js_commonjs-proxy.map +1 -0
- package/build/_virtual/chunk.js_commonjs-proxy +3 -0
- package/build/_virtual/chunk.js_commonjs-proxy.map +1 -0
- package/build/_virtual/cleanModifiedSubpaths.js_commonjs-proxy +3 -0
- package/build/_virtual/cleanModifiedSubpaths.js_commonjs-proxy.map +1 -0
- package/build/_virtual/cleanPositionalOperators.js_commonjs-proxy +3 -0
- package/build/_virtual/cleanPositionalOperators.js_commonjs-proxy.map +1 -0
- package/build/_virtual/clone.js_commonjs-proxy +3 -0
- package/build/_virtual/clone.js_commonjs-proxy.map +1 -0
- package/build/_virtual/code.js_commonjs-proxy +3 -0
- package/build/_virtual/code.js_commonjs-proxy.map +1 -0
- package/build/_virtual/collection.js_commonjs-proxy +3 -0
- package/build/_virtual/collection.js_commonjs-proxy.map +1 -0
- package/build/_virtual/collection2.js_commonjs-proxy +3 -0
- package/build/_virtual/collection2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/collection3.js_commonjs-proxy +3 -0
- package/build/_virtual/collection3.js_commonjs-proxy.map +1 -0
- package/build/_virtual/collection4.js_commonjs-proxy +3 -0
- package/build/_virtual/collection4.js_commonjs-proxy.map +1 -0
- package/build/_virtual/collection_ops.js_commonjs-proxy +3 -0
- package/build/_virtual/collection_ops.js_commonjs-proxy.map +1 -0
- package/build/_virtual/collections.js_commonjs-proxy +3 -0
- package/build/_virtual/collections.js_commonjs-proxy.map +1 -0
- package/build/_virtual/command.js_commonjs-proxy +3 -0
- package/build/_virtual/command.js_commonjs-proxy.map +1 -0
- package/build/_virtual/command2.js_commonjs-proxy +3 -0
- package/build/_virtual/command2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/command3.js_commonjs-proxy +3 -0
- package/build/_virtual/command3.js_commonjs-proxy.map +1 -0
- package/build/_virtual/command_cursor.js_commonjs-proxy +3 -0
- package/build/_virtual/command_cursor.js_commonjs-proxy.map +1 -0
- package/build/_virtual/command_result.js_commonjs-proxy +3 -0
- package/build/_virtual/command_result.js_commonjs-proxy.map +1 -0
- package/build/_virtual/command_v2.js_commonjs-proxy +3 -0
- package/build/_virtual/command_v2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/commands.js_commonjs-proxy +3 -0
- package/build/_virtual/commands.js_commonjs-proxy.map +1 -0
- package/build/_virtual/commands2.js_commonjs-proxy +3 -0
- package/build/_virtual/commands2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/common.js_commonjs-proxy +3 -0
- package/build/_virtual/common.js_commonjs-proxy.map +1 -0
- package/build/_virtual/common2.js_commonjs-proxy +3 -0
- package/build/_virtual/common2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/common3.js_commonjs-proxy +3 -0
- package/build/_virtual/common3.js_commonjs-proxy.map +1 -0
- package/build/_virtual/common_functions.js_commonjs-proxy +3 -0
- package/build/_virtual/common_functions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/compile.js_commonjs-proxy +3 -0
- package/build/_virtual/compile.js_commonjs-proxy.map +1 -0
- package/build/_virtual/completeMany.js_commonjs-proxy +3 -0
- package/build/_virtual/completeMany.js_commonjs-proxy.map +1 -0
- package/build/_virtual/compression.js_commonjs-proxy +3 -0
- package/build/_virtual/compression.js_commonjs-proxy.map +1 -0
- package/build/_virtual/connect.js_commonjs-proxy +3 -0
- package/build/_virtual/connect.js_commonjs-proxy.map +1 -0
- package/build/_virtual/connect2.js_commonjs-proxy +3 -0
- package/build/_virtual/connect2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/connection.js_commonjs-proxy +3 -0
- package/build/_virtual/connection.js_commonjs-proxy.map +1 -0
- package/build/_virtual/connection2.js_commonjs-proxy +3 -0
- package/build/_virtual/connection2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/connection3.js_commonjs-proxy +3 -0
- package/build/_virtual/connection3.js_commonjs-proxy.map +1 -0
- package/build/_virtual/connection4.js_commonjs-proxy +3 -0
- package/build/_virtual/connection4.js_commonjs-proxy.map +1 -0
- package/build/_virtual/connection_pool.js_commonjs-proxy +3 -0
- package/build/_virtual/connection_pool.js_commonjs-proxy.map +1 -0
- package/build/_virtual/connectionstate.js_commonjs-proxy +3 -0
- package/build/_virtual/connectionstate.js_commonjs-proxy.map +1 -0
- package/build/_virtual/constants.js_commonjs-proxy +3 -0
- package/build/_virtual/constants.js_commonjs-proxy.map +1 -0
- package/build/_virtual/constants2.js_commonjs-proxy +3 -0
- package/build/_virtual/constants2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/constants3.js_commonjs-proxy +3 -0
- package/build/_virtual/constants3.js_commonjs-proxy.map +1 -0
- package/build/_virtual/context.js_commonjs-proxy +3 -0
- package/build/_virtual/context.js_commonjs-proxy.map +1 -0
- package/build/_virtual/core_array.js_commonjs-proxy +3 -0
- package/build/_virtual/core_array.js_commonjs-proxy.map +1 -0
- package/build/_virtual/count.js_commonjs-proxy +3 -0
- package/build/_virtual/count.js_commonjs-proxy.map +1 -0
- package/build/_virtual/count_documents.js_commonjs-proxy +3 -0
- package/build/_virtual/count_documents.js_commonjs-proxy.map +1 -0
- package/build/_virtual/createClient.js_commonjs-proxy +3 -0
- package/build/_virtual/createClient.js_commonjs-proxy.map +1 -0
- package/build/_virtual/createPopulateQueryFilter.js_commonjs-proxy +3 -0
- package/build/_virtual/createPopulateQueryFilter.js_commonjs-proxy.map +1 -0
- package/build/_virtual/create_collection.js_commonjs-proxy +3 -0
- package/build/_virtual/create_collection.js_commonjs-proxy.map +1 -0
- package/build/_virtual/create_indexes.js_commonjs-proxy +3 -0
- package/build/_virtual/create_indexes.js_commonjs-proxy.map +1 -0
- package/build/_virtual/cursor.js_commonjs-proxy +3 -0
- package/build/_virtual/cursor.js_commonjs-proxy.map +1 -0
- package/build/_virtual/cursor2.js_commonjs-proxy +3 -0
- package/build/_virtual/cursor2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/cursor_ops.js_commonjs-proxy +3 -0
- package/build/_virtual/cursor_ops.js_commonjs-proxy.map +1 -0
- package/build/_virtual/customErrors.js_commonjs-proxy +3 -0
- package/build/_virtual/customErrors.js_commonjs-proxy.map +1 -0
- package/build/_virtual/date.js_commonjs-proxy +3 -0
- package/build/_virtual/date.js_commonjs-proxy.map +1 -0
- package/build/_virtual/date2.js_commonjs-proxy +3 -0
- package/build/_virtual/date2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/db.js_commonjs-proxy +3 -0
- package/build/_virtual/db.js_commonjs-proxy.map +1 -0
- package/build/_virtual/db_ops.js_commonjs-proxy +3 -0
- package/build/_virtual/db_ops.js_commonjs-proxy.map +1 -0
- package/build/_virtual/db_ref.js_commonjs-proxy +3 -0
- package/build/_virtual/db_ref.js_commonjs-proxy.map +1 -0
- package/build/_virtual/debug.js_commonjs-proxy +3 -0
- package/build/_virtual/debug.js_commonjs-proxy.map +1 -0
- package/build/_virtual/debuggability.js_commonjs-proxy +3 -0
- package/build/_virtual/debuggability.js_commonjs-proxy.map +1 -0
- package/build/_virtual/decimal128.js_commonjs-proxy +3 -0
- package/build/_virtual/decimal128.js_commonjs-proxy.map +1 -0
- package/build/_virtual/decimal1282.js_commonjs-proxy +3 -0
- package/build/_virtual/decimal1282.js_commonjs-proxy.map +1 -0
- package/build/_virtual/decimal1283.js_commonjs-proxy +3 -0
- package/build/_virtual/decimal1283.js_commonjs-proxy.map +1 -0
- package/build/_virtual/decimal1284.js_commonjs-proxy +3 -0
- package/build/_virtual/decimal1284.js_commonjs-proxy.map +1 -0
- package/build/_virtual/decimal1285.js_commonjs-proxy +3 -0
- package/build/_virtual/decimal1285.js_commonjs-proxy.map +1 -0
- package/build/_virtual/defaultAuthProviders.js_commonjs-proxy +3 -0
- package/build/_virtual/defaultAuthProviders.js_commonjs-proxy.map +1 -0
- package/build/_virtual/delete_many.js_commonjs-proxy +3 -0
- package/build/_virtual/delete_many.js_commonjs-proxy.map +1 -0
- package/build/_virtual/delete_one.js_commonjs-proxy +3 -0
- package/build/_virtual/delete_one.js_commonjs-proxy.map +1 -0
- package/build/_virtual/deque.js_commonjs-proxy +3 -0
- package/build/_virtual/deque.js_commonjs-proxy.map +1 -0
- package/build/_virtual/deserializer.js_commonjs-proxy +3 -0
- package/build/_virtual/deserializer.js_commonjs-proxy.map +1 -0
- package/build/_virtual/destroy.js_commonjs-proxy +3 -0
- package/build/_virtual/destroy.js_commonjs-proxy.map +1 -0
- package/build/_virtual/direct_resolve.js_commonjs-proxy +3 -0
- package/build/_virtual/direct_resolve.js_commonjs-proxy.map +1 -0
- package/build/_virtual/discriminator.js_commonjs-proxy +3 -0
- package/build/_virtual/discriminator.js_commonjs-proxy.map +1 -0
- package/build/_virtual/distinct.js_commonjs-proxy +3 -0
- package/build/_virtual/distinct.js_commonjs-proxy.map +1 -0
- package/build/_virtual/divergentArray.js_commonjs-proxy +3 -0
- package/build/_virtual/divergentArray.js_commonjs-proxy.map +1 -0
- package/build/_virtual/document.js_commonjs-proxy +3 -0
- package/build/_virtual/document.js_commonjs-proxy.map +1 -0
- package/build/_virtual/document_provider.js_commonjs-proxy +3 -0
- package/build/_virtual/document_provider.js_commonjs-proxy.map +1 -0
- package/build/_virtual/documentarray.js_commonjs-proxy +3 -0
- package/build/_virtual/documentarray.js_commonjs-proxy.map +1 -0
- package/build/_virtual/documentarray2.js_commonjs-proxy +3 -0
- package/build/_virtual/documentarray2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/double.js_commonjs-proxy +3 -0
- package/build/_virtual/double.js_commonjs-proxy.map +1 -0
- package/build/_virtual/download.js_commonjs-proxy +3 -0
- package/build/_virtual/download.js_commonjs-proxy.map +1 -0
- package/build/_virtual/driver.js_commonjs-proxy +3 -0
- package/build/_virtual/driver.js_commonjs-proxy.map +1 -0
- package/build/_virtual/drop.js_commonjs-proxy +3 -0
- package/build/_virtual/drop.js_commonjs-proxy.map +1 -0
- package/build/_virtual/drop_index.js_commonjs-proxy +3 -0
- package/build/_virtual/drop_index.js_commonjs-proxy.map +1 -0
- package/build/_virtual/drop_indexes.js_commonjs-proxy +3 -0
- package/build/_virtual/drop_indexes.js_commonjs-proxy.map +1 -0
- package/build/_virtual/dynamic_loaders.js_commonjs-proxy +3 -0
- package/build/_virtual/dynamic_loaders.js_commonjs-proxy.map +1 -0
- package/build/_virtual/each.js_commonjs-proxy +3 -0
- package/build/_virtual/each.js_commonjs-proxy.map +1 -0
- package/build/_virtual/each2.js_commonjs-proxy +3 -0
- package/build/_virtual/each2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/eachAsync.js_commonjs-proxy +3 -0
- package/build/_virtual/eachAsync.js_commonjs-proxy.map +1 -0
- package/build/_virtual/embedded.js_commonjs-proxy +3 -0
- package/build/_virtual/embedded.js_commonjs-proxy.map +1 -0
- package/build/_virtual/encrypter.js_commonjs-proxy +3 -0
- package/build/_virtual/encrypter.js_commonjs-proxy.map +1 -0
- package/build/_virtual/env.js_commonjs-proxy +3 -0
- package/build/_virtual/env.js_commonjs-proxy.map +1 -0
- package/build/_virtual/error.js_commonjs-proxy +3 -0
- package/build/_virtual/error.js_commonjs-proxy.map +1 -0
- package/build/_virtual/error2.js_commonjs-proxy +3 -0
- package/build/_virtual/error2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/errors.js_commonjs-proxy +3 -0
- package/build/_virtual/errors.js_commonjs-proxy.map +1 -0
- package/build/_virtual/errors2.js_commonjs-proxy +3 -0
- package/build/_virtual/errors2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/es5.js_commonjs-proxy +3 -0
- package/build/_virtual/es5.js_commonjs-proxy.map +1 -0
- package/build/_virtual/estimated_document_count.js_commonjs-proxy +3 -0
- package/build/_virtual/estimated_document_count.js_commonjs-proxy.map +1 -0
- package/build/_virtual/event-target.js_commonjs-proxy +3 -0
- package/build/_virtual/event-target.js_commonjs-proxy.map +1 -0
- package/build/_virtual/events.js_commonjs-proxy +3 -0
- package/build/_virtual/events.js_commonjs-proxy.map +1 -0
- package/build/_virtual/events2.js_commonjs-proxy +3 -0
- package/build/_virtual/events2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/execute_db_admin_command.js_commonjs-proxy +3 -0
- package/build/_virtual/execute_db_admin_command.js_commonjs-proxy.map +1 -0
- package/build/_virtual/execute_operation.js_commonjs-proxy +3 -0
- package/build/_virtual/execute_operation.js_commonjs-proxy.map +1 -0
- package/build/_virtual/exists.js_commonjs-proxy +3 -0
- package/build/_virtual/exists.js_commonjs-proxy.map +1 -0
- package/build/_virtual/explain.js_commonjs-proxy +3 -0
- package/build/_virtual/explain.js_commonjs-proxy.map +1 -0
- package/build/_virtual/extension.js_commonjs-proxy +3 -0
- package/build/_virtual/extension.js_commonjs-proxy.map +1 -0
- package/build/_virtual/filter.js_commonjs-proxy +3 -0
- package/build/_virtual/filter.js_commonjs-proxy.map +1 -0
- package/build/_virtual/finally.js_commonjs-proxy +3 -0
- package/build/_virtual/finally.js_commonjs-proxy.map +1 -0
- package/build/_virtual/find.js_commonjs-proxy +3 -0
- package/build/_virtual/find.js_commonjs-proxy.map +1 -0
- package/build/_virtual/find_and_modify.js_commonjs-proxy +3 -0
- package/build/_virtual/find_and_modify.js_commonjs-proxy.map +1 -0
- package/build/_virtual/find_one.js_commonjs-proxy +3 -0
- package/build/_virtual/find_one.js_commonjs-proxy.map +1 -0
- package/build/_virtual/find_one_and_delete.js_commonjs-proxy +3 -0
- package/build/_virtual/find_one_and_delete.js_commonjs-proxy.map +1 -0
- package/build/_virtual/find_one_and_replace.js_commonjs-proxy +3 -0
- package/build/_virtual/find_one_and_replace.js_commonjs-proxy.map +1 -0
- package/build/_virtual/find_one_and_update.js_commonjs-proxy +3 -0
- package/build/_virtual/find_one_and_update.js_commonjs-proxy.map +1 -0
- package/build/_virtual/float_parser.js_commonjs-proxy +3 -0
- package/build/_virtual/float_parser.js_commonjs-proxy.map +1 -0
- package/build/_virtual/generators.js_commonjs-proxy +3 -0
- package/build/_virtual/generators.js_commonjs-proxy.map +1 -0
- package/build/_virtual/geo_haystack_search.js_commonjs-proxy +3 -0
- package/build/_virtual/geo_haystack_search.js_commonjs-proxy.map +1 -0
- package/build/_virtual/geospatial.js_commonjs-proxy +3 -0
- package/build/_virtual/geospatial.js_commonjs-proxy.map +1 -0
- package/build/_virtual/get.js_commonjs-proxy +3 -0
- package/build/_virtual/get.js_commonjs-proxy.map +1 -0
- package/build/_virtual/getConstructor.js_commonjs-proxy +3 -0
- package/build/_virtual/getConstructor.js_commonjs-proxy.map +1 -0
- package/build/_virtual/getDefaultBulkwriteResult.js_commonjs-proxy +3 -0
- package/build/_virtual/getDefaultBulkwriteResult.js_commonjs-proxy.map +1 -0
- package/build/_virtual/getDiscriminatorByValue.js_commonjs-proxy +3 -0
- package/build/_virtual/getDiscriminatorByValue.js_commonjs-proxy.map +1 -0
- package/build/_virtual/getEmbeddedDiscriminatorPath.js_commonjs-proxy +3 -0
- package/build/_virtual/getEmbeddedDiscriminatorPath.js_commonjs-proxy.map +1 -0
- package/build/_virtual/getEmbeddedDiscriminatorPath2.js_commonjs-proxy +3 -0
- package/build/_virtual/getEmbeddedDiscriminatorPath2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/getFunctionName.js_commonjs-proxy +3 -0
- package/build/_virtual/getFunctionName.js_commonjs-proxy.map +1 -0
- package/build/_virtual/getIndexes.js_commonjs-proxy +3 -0
- package/build/_virtual/getIndexes.js_commonjs-proxy.map +1 -0
- package/build/_virtual/getModelsMapForPopulate.js_commonjs-proxy +3 -0
- package/build/_virtual/getModelsMapForPopulate.js_commonjs-proxy.map +1 -0
- package/build/_virtual/getPath.js_commonjs-proxy +3 -0
- package/build/_virtual/getPath.js_commonjs-proxy.map +1 -0
- package/build/_virtual/getSchemaDiscriminatorByValue.js_commonjs-proxy +3 -0
- package/build/_virtual/getSchemaDiscriminatorByValue.js_commonjs-proxy.map +1 -0
- package/build/_virtual/getSchemaTypes.js_commonjs-proxy +3 -0
- package/build/_virtual/getSchemaTypes.js_commonjs-proxy.map +1 -0
- package/build/_virtual/getVirtual.js_commonjs-proxy +3 -0
- package/build/_virtual/getVirtual.js_commonjs-proxy.map +1 -0
- package/build/_virtual/get_more.js_commonjs-proxy +3 -0
- package/build/_virtual/get_more.js_commonjs-proxy.map +1 -0
- package/build/_virtual/grid_store.js_commonjs-proxy +3 -0
- package/build/_virtual/grid_store.js_commonjs-proxy.map +1 -0
- package/build/_virtual/gssapi.js_commonjs-proxy +3 -0
- package/build/_virtual/gssapi.js_commonjs-proxy.map +1 -0
- package/build/_virtual/handleIdOption.js_commonjs-proxy +3 -0
- package/build/_virtual/handleIdOption.js_commonjs-proxy.map +1 -0
- package/build/_virtual/handleImmutable.js_commonjs-proxy +3 -0
- package/build/_virtual/handleImmutable.js_commonjs-proxy.map +1 -0
- package/build/_virtual/handleImmutable2.js_commonjs-proxy +3 -0
- package/build/_virtual/handleImmutable2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/handleSpreadDoc.js_commonjs-proxy +3 -0
- package/build/_virtual/handleSpreadDoc.js_commonjs-proxy.map +1 -0
- package/build/_virtual/handleTimestampOption.js_commonjs-proxy +3 -0
- package/build/_virtual/handleTimestampOption.js_commonjs-proxy.map +1 -0
- package/build/_virtual/hasDollarKeys.js_commonjs-proxy +3 -0
- package/build/_virtual/hasDollarKeys.js_commonjs-proxy.map +1 -0
- package/build/_virtual/helpers.js_commonjs-proxy +3 -0
- package/build/_virtual/helpers.js_commonjs-proxy.map +1 -0
- package/build/_virtual/hiredis.js_commonjs-proxy +3 -0
- package/build/_virtual/hiredis.js_commonjs-proxy.map +1 -0
- package/build/_virtual/idGetter.js_commonjs-proxy +3 -0
- package/build/_virtual/idGetter.js_commonjs-proxy.map +1 -0
- package/build/_virtual/immediate.js_commonjs-proxy +3 -0
- package/build/_virtual/immediate.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index.js_commonjs-proxy +3 -0
- package/build/_virtual/index.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index10.js_commonjs-proxy +3 -0
- package/build/_virtual/index10.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index11.js_commonjs-proxy +3 -0
- package/build/_virtual/index11.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index12.js_commonjs-proxy +3 -0
- package/build/_virtual/index12.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index13.js_commonjs-proxy +3 -0
- package/build/_virtual/index13.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index14.js_commonjs-proxy +3 -0
- package/build/_virtual/index14.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index15.js_commonjs-proxy +3 -0
- package/build/_virtual/index15.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index16.js_commonjs-proxy +3 -0
- package/build/_virtual/index16.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index17.js_commonjs-proxy +3 -0
- package/build/_virtual/index17.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index18.js_commonjs-proxy +3 -0
- package/build/_virtual/index18.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index19.js_commonjs-proxy +3 -0
- package/build/_virtual/index19.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index2.js_commonjs-proxy +3 -0
- package/build/_virtual/index2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index20.js_commonjs-proxy +3 -0
- package/build/_virtual/index20.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index21.js_commonjs-proxy +7 -0
- package/build/_virtual/index21.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index22.js_commonjs-proxy +3 -0
- package/build/_virtual/index22.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index23.js_commonjs-proxy +3 -0
- package/build/_virtual/index23.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index24.js_commonjs-proxy +3 -0
- package/build/_virtual/index24.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index25.js_commonjs-proxy +3 -0
- package/build/_virtual/index25.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index26.js_commonjs-proxy +3 -0
- package/build/_virtual/index26.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index27.js_commonjs-proxy +3 -0
- package/build/_virtual/index27.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index28.js_commonjs-proxy +3 -0
- package/build/_virtual/index28.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index29.js_commonjs-proxy +3 -0
- package/build/_virtual/index29.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index3.js_commonjs-proxy +3 -0
- package/build/_virtual/index3.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index30.js_commonjs-proxy +3 -0
- package/build/_virtual/index30.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index31.js_commonjs-proxy +3 -0
- package/build/_virtual/index31.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index4.js_commonjs-proxy +3 -0
- package/build/_virtual/index4.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index5.js_commonjs-proxy +3 -0
- package/build/_virtual/index5.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index6.js_commonjs-proxy +3 -0
- package/build/_virtual/index6.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index7.js_commonjs-proxy +3 -0
- package/build/_virtual/index7.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index8.js_commonjs-proxy +3 -0
- package/build/_virtual/index8.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index9.js_commonjs-proxy +3 -0
- package/build/_virtual/index9.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index_exists.js_commonjs-proxy +3 -0
- package/build/_virtual/index_exists.js_commonjs-proxy.map +1 -0
- package/build/_virtual/index_information.js_commonjs-proxy +3 -0
- package/build/_virtual/index_information.js_commonjs-proxy.map +1 -0
- package/build/_virtual/indexes.js_commonjs-proxy +3 -0
- package/build/_virtual/indexes.js_commonjs-proxy.map +1 -0
- package/build/_virtual/inherits.js_commonjs-proxy +3 -0
- package/build/_virtual/inherits.js_commonjs-proxy.map +1 -0
- package/build/_virtual/inherits_browser.js_commonjs-proxy +3 -0
- package/build/_virtual/inherits_browser.js_commonjs-proxy.map +1 -0
- package/build/_virtual/insert_many.js_commonjs-proxy +3 -0
- package/build/_virtual/insert_many.js_commonjs-proxy.map +1 -0
- package/build/_virtual/insert_one.js_commonjs-proxy +3 -0
- package/build/_virtual/insert_one.js_commonjs-proxy.map +1 -0
- package/build/_virtual/int_32.js_commonjs-proxy +3 -0
- package/build/_virtual/int_32.js_commonjs-proxy.map +1 -0
- package/build/_virtual/internal.js_commonjs-proxy +3 -0
- package/build/_virtual/internal.js_commonjs-proxy.map +1 -0
- package/build/_virtual/isAtlas.js_commonjs-proxy +3 -0
- package/build/_virtual/isAtlas.js_commonjs-proxy.map +1 -0
- package/build/_virtual/isBsonType.js_commonjs-proxy +3 -0
- package/build/_virtual/isBsonType.js_commonjs-proxy.map +1 -0
- package/build/_virtual/isDefaultIdIndex.js_commonjs-proxy +3 -0
- package/build/_virtual/isDefaultIdIndex.js_commonjs-proxy.map +1 -0
- package/build/_virtual/isDefiningProjection.js_commonjs-proxy +3 -0
- package/build/_virtual/isDefiningProjection.js_commonjs-proxy.map +1 -0
- package/build/_virtual/isExclusive.js_commonjs-proxy +3 -0
- package/build/_virtual/isExclusive.js_commonjs-proxy.map +1 -0
- package/build/_virtual/isInclusive.js_commonjs-proxy +3 -0
- package/build/_virtual/isInclusive.js_commonjs-proxy.map +1 -0
- package/build/_virtual/isIndexEqual.js_commonjs-proxy +3 -0
- package/build/_virtual/isIndexEqual.js_commonjs-proxy.map +1 -0
- package/build/_virtual/isMongooseObject.js_commonjs-proxy +3 -0
- package/build/_virtual/isMongooseObject.js_commonjs-proxy.map +1 -0
- package/build/_virtual/isObject.js_commonjs-proxy +3 -0
- package/build/_virtual/isObject.js_commonjs-proxy.map +1 -0
- package/build/_virtual/isOperator.js_commonjs-proxy +3 -0
- package/build/_virtual/isOperator.js_commonjs-proxy.map +1 -0
- package/build/_virtual/isPathExcluded.js_commonjs-proxy +3 -0
- package/build/_virtual/isPathExcluded.js_commonjs-proxy.map +1 -0
- package/build/_virtual/isPathSelectedInclusive.js_commonjs-proxy +3 -0
- package/build/_virtual/isPathSelectedInclusive.js_commonjs-proxy.map +1 -0
- package/build/_virtual/isPromise.js_commonjs-proxy +3 -0
- package/build/_virtual/isPromise.js_commonjs-proxy.map +1 -0
- package/build/_virtual/isSSLError.js_commonjs-proxy +3 -0
- package/build/_virtual/isSSLError.js_commonjs-proxy.map +1 -0
- package/build/_virtual/is_capped.js_commonjs-proxy +3 -0
- package/build/_virtual/is_capped.js_commonjs-proxy.map +1 -0
- package/build/_virtual/join.js_commonjs-proxy +3 -0
- package/build/_virtual/join.js_commonjs-proxy.map +1 -0
- package/build/_virtual/kill_cursors.js_commonjs-proxy +3 -0
- package/build/_virtual/kill_cursors.js_commonjs-proxy.map +1 -0
- package/build/_virtual/leanPopulateMap.js_commonjs-proxy +3 -0
- package/build/_virtual/leanPopulateMap.js_commonjs-proxy.map +1 -0
- package/build/_virtual/limiter.js_commonjs-proxy +3 -0
- package/build/_virtual/limiter.js_commonjs-proxy.map +1 -0
- package/build/_virtual/list_collections.js_commonjs-proxy +3 -0
- package/build/_virtual/list_collections.js_commonjs-proxy.map +1 -0
- package/build/_virtual/list_databases.js_commonjs-proxy +3 -0
- package/build/_virtual/list_databases.js_commonjs-proxy.map +1 -0
- package/build/_virtual/list_indexes.js_commonjs-proxy +3 -0
- package/build/_virtual/list_indexes.js_commonjs-proxy.map +1 -0
- package/build/_virtual/logger.js_commonjs-proxy +3 -0
- package/build/_virtual/logger.js_commonjs-proxy.map +1 -0
- package/build/_virtual/long.js_commonjs-proxy +3 -0
- package/build/_virtual/long.js_commonjs-proxy.map +1 -0
- package/build/_virtual/lookupLocalFields.js_commonjs-proxy +3 -0
- package/build/_virtual/lookupLocalFields.js_commonjs-proxy.map +1 -0
- package/build/_virtual/lru.js_commonjs-proxy +3 -0
- package/build/_virtual/lru.js_commonjs-proxy.map +1 -0
- package/build/_virtual/map.js_commonjs-proxy +3 -0
- package/build/_virtual/map.js_commonjs-proxy.map +1 -0
- package/build/_virtual/map2.js_commonjs-proxy +3 -0
- package/build/_virtual/map2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/map3.js_commonjs-proxy +3 -0
- package/build/_virtual/map3.js_commonjs-proxy.map +1 -0
- package/build/_virtual/map4.js_commonjs-proxy +3 -0
- package/build/_virtual/map4.js_commonjs-proxy.map +1 -0
- package/build/_virtual/map_reduce.js_commonjs-proxy +3 -0
- package/build/_virtual/map_reduce.js_commonjs-proxy.map +1 -0
- package/build/_virtual/max_key.js_commonjs-proxy +3 -0
- package/build/_virtual/max_key.js_commonjs-proxy.map +1 -0
- package/build/_virtual/memory-code-points.js_commonjs-proxy +3 -0
- package/build/_virtual/memory-code-points.js_commonjs-proxy.map +1 -0
- package/build/_virtual/merge.js_commonjs-proxy +3 -0
- package/build/_virtual/merge.js_commonjs-proxy.map +1 -0
- package/build/_virtual/message_stream.js_commonjs-proxy +3 -0
- package/build/_virtual/message_stream.js_commonjs-proxy.map +1 -0
- package/build/_virtual/messages.js_commonjs-proxy +3 -0
- package/build/_virtual/messages.js_commonjs-proxy.map +1 -0
- package/build/_virtual/method.js_commonjs-proxy +3 -0
- package/build/_virtual/method.js_commonjs-proxy.map +1 -0
- package/build/_virtual/min_key.js_commonjs-proxy +3 -0
- package/build/_virtual/min_key.js_commonjs-proxy.map +1 -0
- package/build/_virtual/missingSchema.js_commonjs-proxy +3 -0
- package/build/_virtual/missingSchema.js_commonjs-proxy.map +1 -0
- package/build/_virtual/mixed.js_commonjs-proxy +3 -0
- package/build/_virtual/mixed.js_commonjs-proxy.map +1 -0
- package/build/_virtual/model.js_commonjs-proxy +3 -0
- package/build/_virtual/model.js_commonjs-proxy.map +1 -0
- package/build/_virtual/modifiedPaths.js_commonjs-proxy +3 -0
- package/build/_virtual/modifiedPaths.js_commonjs-proxy.map +1 -0
- package/build/_virtual/mongo_client.js_commonjs-proxy +3 -0
- package/build/_virtual/mongo_client.js_commonjs-proxy.map +1 -0
- package/build/_virtual/mongo_credentials.js_commonjs-proxy +3 -0
- package/build/_virtual/mongo_credentials.js_commonjs-proxy.map +1 -0
- package/build/_virtual/mongocr.js_commonjs-proxy +3 -0
- package/build/_virtual/mongocr.js_commonjs-proxy.map +1 -0
- package/build/_virtual/mongodb_aws.js_commonjs-proxy +3 -0
- package/build/_virtual/mongodb_aws.js_commonjs-proxy.map +1 -0
- package/build/_virtual/mongooseError.js_commonjs-proxy +3 -0
- package/build/_virtual/mongooseError.js_commonjs-proxy.map +1 -0
- package/build/_virtual/mongos.js_commonjs-proxy +3 -0
- package/build/_virtual/mongos.js_commonjs-proxy.map +1 -0
- package/build/_virtual/mongos2.js_commonjs-proxy +3 -0
- package/build/_virtual/mongos2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/monitor.js_commonjs-proxy +3 -0
- package/build/_virtual/monitor.js_commonjs-proxy.map +1 -0
- package/build/_virtual/moveImmutableProperties.js_commonjs-proxy +3 -0
- package/build/_virtual/moveImmutableProperties.js_commonjs-proxy.map +1 -0
- package/build/_virtual/mquery.js_commonjs-proxy +3 -0
- package/build/_virtual/mquery.js_commonjs-proxy.map +1 -0
- package/build/_virtual/msg.js_commonjs-proxy +3 -0
- package/build/_virtual/msg.js_commonjs-proxy.map +1 -0
- package/build/_virtual/multi.js_commonjs-proxy +3 -0
- package/build/_virtual/multi.js_commonjs-proxy.map +1 -0
- package/build/_virtual/native_topology.js_commonjs-proxy +3 -0
- package/build/_virtual/native_topology.js_commonjs-proxy.map +1 -0
- package/build/_virtual/node.js_commonjs-proxy +3 -0
- package/build/_virtual/node.js_commonjs-proxy.map +1 -0
- package/build/_virtual/node2.js_commonjs-proxy +3 -0
- package/build/_virtual/node2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/nodeback.js_commonjs-proxy +3 -0
- package/build/_virtual/nodeback.js_commonjs-proxy.map +1 -0
- package/build/_virtual/nodeify.js_commonjs-proxy +3 -0
- package/build/_virtual/nodeify.js_commonjs-proxy.map +1 -0
- package/build/_virtual/normalizeRefPath.js_commonjs-proxy +3 -0
- package/build/_virtual/normalizeRefPath.js_commonjs-proxy.map +1 -0
- package/build/_virtual/notFound.js_commonjs-proxy +3 -0
- package/build/_virtual/notFound.js_commonjs-proxy.map +1 -0
- package/build/_virtual/number.js_commonjs-proxy +3 -0
- package/build/_virtual/number.js_commonjs-proxy.map +1 -0
- package/build/_virtual/number2.js_commonjs-proxy +3 -0
- package/build/_virtual/number2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/objectExpected.js_commonjs-proxy +3 -0
- package/build/_virtual/objectExpected.js_commonjs-proxy.map +1 -0
- package/build/_virtual/objectParameter.js_commonjs-proxy +3 -0
- package/build/_virtual/objectParameter.js_commonjs-proxy.map +1 -0
- package/build/_virtual/objectid.js_commonjs-proxy +3 -0
- package/build/_virtual/objectid.js_commonjs-proxy.map +1 -0
- package/build/_virtual/objectid2.js_commonjs-proxy +3 -0
- package/build/_virtual/objectid2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/objectid3.js_commonjs-proxy +3 -0
- package/build/_virtual/objectid3.js_commonjs-proxy.map +1 -0
- package/build/_virtual/objectid4.js_commonjs-proxy +3 -0
- package/build/_virtual/objectid4.js_commonjs-proxy.map +1 -0
- package/build/_virtual/objectid5.js_commonjs-proxy +3 -0
- package/build/_virtual/objectid5.js_commonjs-proxy.map +1 -0
- package/build/_virtual/operation.js_commonjs-proxy +3 -0
- package/build/_virtual/operation.js_commonjs-proxy.map +1 -0
- package/build/_virtual/options.js_commonjs-proxy +3 -0
- package/build/_virtual/options.js_commonjs-proxy.map +1 -0
- package/build/_virtual/options_operation.js_commonjs-proxy +3 -0
- package/build/_virtual/options_operation.js_commonjs-proxy.map +1 -0
- package/build/_virtual/ordered.js_commonjs-proxy +3 -0
- package/build/_virtual/ordered.js_commonjs-proxy.map +1 -0
- package/build/_virtual/overwriteModel.js_commonjs-proxy +3 -0
- package/build/_virtual/overwriteModel.js_commonjs-proxy.map +1 -0
- package/build/_virtual/parallelLimit.js_commonjs-proxy +3 -0
- package/build/_virtual/parallelLimit.js_commonjs-proxy.map +1 -0
- package/build/_virtual/parallelSave.js_commonjs-proxy +3 -0
- package/build/_virtual/parallelSave.js_commonjs-proxy.map +1 -0
- package/build/_virtual/parallelValidate.js_commonjs-proxy +3 -0
- package/build/_virtual/parallelValidate.js_commonjs-proxy.map +1 -0
- package/build/_virtual/parentPaths.js_commonjs-proxy +3 -0
- package/build/_virtual/parentPaths.js_commonjs-proxy.map +1 -0
- package/build/_virtual/parseProjection.js_commonjs-proxy +3 -0
- package/build/_virtual/parseProjection.js_commonjs-proxy.map +1 -0
- package/build/_virtual/parser.js_commonjs-proxy +3 -0
- package/build/_virtual/parser.js_commonjs-proxy.map +1 -0
- package/build/_virtual/parserError.js_commonjs-proxy +3 -0
- package/build/_virtual/parserError.js_commonjs-proxy.map +1 -0
- package/build/_virtual/permessage-deflate.js_commonjs-proxy +3 -0
- package/build/_virtual/permessage-deflate.js_commonjs-proxy.map +1 -0
- package/build/_virtual/permissions.js_commonjs-proxy +3 -0
- package/build/_virtual/permissions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/plain.js_commonjs-proxy +3 -0
- package/build/_virtual/plain.js_commonjs-proxy.map +1 -0
- package/build/_virtual/pool.js_commonjs-proxy +3 -0
- package/build/_virtual/pool.js_commonjs-proxy.map +1 -0
- package/build/_virtual/profiling_level.js_commonjs-proxy +3 -0
- package/build/_virtual/profiling_level.js_commonjs-proxy.map +1 -0
- package/build/_virtual/promise.js_commonjs-proxy +3 -0
- package/build/_virtual/promise.js_commonjs-proxy.map +1 -0
- package/build/_virtual/promiseOrCallback.js_commonjs-proxy +3 -0
- package/build/_virtual/promiseOrCallback.js_commonjs-proxy.map +1 -0
- package/build/_virtual/promise_array.js_commonjs-proxy +3 -0
- package/build/_virtual/promise_array.js_commonjs-proxy.map +1 -0
- package/build/_virtual/promise_provider.js_commonjs-proxy +3 -0
- package/build/_virtual/promise_provider.js_commonjs-proxy.map +1 -0
- package/build/_virtual/promisify.js_commonjs-proxy +3 -0
- package/build/_virtual/promisify.js_commonjs-proxy.map +1 -0
- package/build/_virtual/propertyOptions.js_commonjs-proxy +3 -0
- package/build/_virtual/propertyOptions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/props.js_commonjs-proxy +3 -0
- package/build/_virtual/props.js_commonjs-proxy.map +1 -0
- package/build/_virtual/query.js_commonjs-proxy +3 -0
- package/build/_virtual/query.js_commonjs-proxy.map +1 -0
- package/build/_virtual/query2.js_commonjs-proxy +3 -0
- package/build/_virtual/query2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/queryhelpers.js_commonjs-proxy +3 -0
- package/build/_virtual/queryhelpers.js_commonjs-proxy.map +1 -0
- package/build/_virtual/queue.js_commonjs-proxy +3 -0
- package/build/_virtual/queue.js_commonjs-proxy.map +1 -0
- package/build/_virtual/race.js_commonjs-proxy +3 -0
- package/build/_virtual/race.js_commonjs-proxy.map +1 -0
- package/build/_virtual/re_index.js_commonjs-proxy +3 -0
- package/build/_virtual/re_index.js_commonjs-proxy.map +1 -0
- package/build/_virtual/read_concern.js_commonjs-proxy +3 -0
- package/build/_virtual/read_concern.js_commonjs-proxy.map +1 -0
- package/build/_virtual/read_preference.js_commonjs-proxy +3 -0
- package/build/_virtual/read_preference.js_commonjs-proxy.map +1 -0
- package/build/_virtual/readable.js_commonjs-proxy +3 -0
- package/build/_virtual/readable.js_commonjs-proxy.map +1 -0
- package/build/_virtual/receiver.js_commonjs-proxy +3 -0
- package/build/_virtual/receiver.js_commonjs-proxy.map +1 -0
- package/build/_virtual/redisError.js_commonjs-proxy +3 -0
- package/build/_virtual/redisError.js_commonjs-proxy.map +1 -0
- package/build/_virtual/reduce.js_commonjs-proxy +3 -0
- package/build/_virtual/reduce.js_commonjs-proxy.map +1 -0
- package/build/_virtual/regexp.js_commonjs-proxy +3 -0
- package/build/_virtual/regexp.js_commonjs-proxy.map +1 -0
- package/build/_virtual/removeDeselectedForeignField.js_commonjs-proxy +3 -0
- package/build/_virtual/removeDeselectedForeignField.js_commonjs-proxy.map +1 -0
- package/build/_virtual/removeOptions.js_commonjs-proxy +3 -0
- package/build/_virtual/removeOptions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/removeSubdocs.js_commonjs-proxy +3 -0
- package/build/_virtual/removeSubdocs.js_commonjs-proxy.map +1 -0
- package/build/_virtual/removeUnusedArrayFilters.js_commonjs-proxy +3 -0
- package/build/_virtual/removeUnusedArrayFilters.js_commonjs-proxy.map +1 -0
- package/build/_virtual/remove_user.js_commonjs-proxy +3 -0
- package/build/_virtual/remove_user.js_commonjs-proxy.map +1 -0
- package/build/_virtual/rename.js_commonjs-proxy +3 -0
- package/build/_virtual/rename.js_commonjs-proxy.map +1 -0
- package/build/_virtual/replace_one.js_commonjs-proxy +3 -0
- package/build/_virtual/replace_one.js_commonjs-proxy.map +1 -0
- package/build/_virtual/replset.js_commonjs-proxy +3 -0
- package/build/_virtual/replset.js_commonjs-proxy.map +1 -0
- package/build/_virtual/replset2.js_commonjs-proxy +3 -0
- package/build/_virtual/replset2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/replset_state.js_commonjs-proxy +3 -0
- package/build/_virtual/replset_state.js_commonjs-proxy.map +1 -0
- package/build/_virtual/replyError.js_commonjs-proxy +3 -0
- package/build/_virtual/replyError.js_commonjs-proxy.map +1 -0
- package/build/_virtual/run_command.js_commonjs-proxy +3 -0
- package/build/_virtual/run_command.js_commonjs-proxy.map +1 -0
- package/build/_virtual/sanitizeProjection.js_commonjs-proxy +3 -0
- package/build/_virtual/sanitizeProjection.js_commonjs-proxy.map +1 -0
- package/build/_virtual/saveOptions.js_commonjs-proxy +3 -0
- package/build/_virtual/saveOptions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/saveSubdocs.js_commonjs-proxy +3 -0
- package/build/_virtual/saveSubdocs.js_commonjs-proxy.map +1 -0
- package/build/_virtual/schedule.js_commonjs-proxy +3 -0
- package/build/_virtual/schedule.js_commonjs-proxy.map +1 -0
- package/build/_virtual/schema.js_commonjs-proxy +3 -0
- package/build/_virtual/schema.js_commonjs-proxy.map +1 -0
- package/build/_virtual/schematype.js_commonjs-proxy +3 -0
- package/build/_virtual/schematype.js_commonjs-proxy.map +1 -0
- package/build/_virtual/scram.js_commonjs-proxy +3 -0
- package/build/_virtual/scram.js_commonjs-proxy.map +1 -0
- package/build/_virtual/selectPopulatedFields.js_commonjs-proxy +3 -0
- package/build/_virtual/selectPopulatedFields.js_commonjs-proxy.map +1 -0
- package/build/_virtual/sender.js_commonjs-proxy +3 -0
- package/build/_virtual/sender.js_commonjs-proxy.map +1 -0
- package/build/_virtual/serializer.js_commonjs-proxy +3 -0
- package/build/_virtual/serializer.js_commonjs-proxy.map +1 -0
- package/build/_virtual/server.js_commonjs-proxy +3 -0
- package/build/_virtual/server.js_commonjs-proxy.map +1 -0
- package/build/_virtual/server2.js_commonjs-proxy +3 -0
- package/build/_virtual/server2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/server3.js_commonjs-proxy +3 -0
- package/build/_virtual/server3.js_commonjs-proxy.map +1 -0
- package/build/_virtual/serverSelection.js_commonjs-proxy +3 -0
- package/build/_virtual/serverSelection.js_commonjs-proxy.map +1 -0
- package/build/_virtual/server_description.js_commonjs-proxy +3 -0
- package/build/_virtual/server_description.js_commonjs-proxy.map +1 -0
- package/build/_virtual/server_selection.js_commonjs-proxy +3 -0
- package/build/_virtual/server_selection.js_commonjs-proxy.map +1 -0
- package/build/_virtual/sessions.js_commonjs-proxy +3 -0
- package/build/_virtual/sessions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/setDefaultsOnInsert.js_commonjs-proxy +3 -0
- package/build/_virtual/setDefaultsOnInsert.js_commonjs-proxy.map +1 -0
- package/build/_virtual/setDottedPath.js_commonjs-proxy +3 -0
- package/build/_virtual/setDottedPath.js_commonjs-proxy.map +1 -0
- package/build/_virtual/set_profiling_level.js_commonjs-proxy +3 -0
- package/build/_virtual/set_profiling_level.js_commonjs-proxy.map +1 -0
- package/build/_virtual/settle.js_commonjs-proxy +3 -0
- package/build/_virtual/settle.js_commonjs-proxy.map +1 -0
- package/build/_virtual/setupTimestamps.js_commonjs-proxy +3 -0
- package/build/_virtual/setupTimestamps.js_commonjs-proxy.map +1 -0
- package/build/_virtual/sharding.js_commonjs-proxy +3 -0
- package/build/_virtual/sharding.js_commonjs-proxy.map +1 -0
- package/build/_virtual/shared.js_commonjs-proxy +3 -0
- package/build/_virtual/shared.js_commonjs-proxy.map +1 -0
- package/build/_virtual/shared2.js_commonjs-proxy +3 -0
- package/build/_virtual/shared2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/some.js_commonjs-proxy +3 -0
- package/build/_virtual/some.js_commonjs-proxy.map +1 -0
- package/build/_virtual/specialProperties.js_commonjs-proxy +3 -0
- package/build/_virtual/specialProperties.js_commonjs-proxy.map +1 -0
- package/build/_virtual/srv_polling.js_commonjs-proxy +3 -0
- package/build/_virtual/srv_polling.js_commonjs-proxy.map +1 -0
- package/build/_virtual/statemachine.js_commonjs-proxy +3 -0
- package/build/_virtual/statemachine.js_commonjs-proxy.map +1 -0
- package/build/_virtual/stats.js_commonjs-proxy +3 -0
- package/build/_virtual/stats.js_commonjs-proxy.map +1 -0
- package/build/_virtual/stream.js_commonjs-proxy +3 -0
- package/build/_virtual/stream.js_commonjs-proxy.map +1 -0
- package/build/_virtual/stream2.js_commonjs-proxy +3 -0
- package/build/_virtual/stream2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/stream_description.js_commonjs-proxy +3 -0
- package/build/_virtual/stream_description.js_commonjs-proxy.map +1 -0
- package/build/_virtual/strict.js_commonjs-proxy +3 -0
- package/build/_virtual/strict.js_commonjs-proxy.map +1 -0
- package/build/_virtual/string.js_commonjs-proxy +3 -0
- package/build/_virtual/string.js_commonjs-proxy.map +1 -0
- package/build/_virtual/string2.js_commonjs-proxy +3 -0
- package/build/_virtual/string2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/stringToParts.js_commonjs-proxy +3 -0
- package/build/_virtual/stringToParts.js_commonjs-proxy.map +1 -0
- package/build/_virtual/string_decoder.js_commonjs-proxy +3 -0
- package/build/_virtual/string_decoder.js_commonjs-proxy.map +1 -0
- package/build/_virtual/stringifyFunctionOperators.js_commonjs-proxy +3 -0
- package/build/_virtual/stringifyFunctionOperators.js_commonjs-proxy.map +1 -0
- package/build/_virtual/subdocument.js_commonjs-proxy +3 -0
- package/build/_virtual/subdocument.js_commonjs-proxy.map +1 -0
- package/build/_virtual/symbol.js_commonjs-proxy +3 -0
- package/build/_virtual/symbol.js_commonjs-proxy.map +1 -0
- package/build/_virtual/symbols.js_commonjs-proxy +3 -0
- package/build/_virtual/symbols.js_commonjs-proxy.map +1 -0
- package/build/_virtual/symbols2.js_commonjs-proxy +3 -0
- package/build/_virtual/symbols2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/synchronous_inspection.js_commonjs-proxy +3 -0
- package/build/_virtual/synchronous_inspection.js_commonjs-proxy.map +1 -0
- package/build/_virtual/text.js_commonjs-proxy +3 -0
- package/build/_virtual/text.js_commonjs-proxy.map +1 -0
- package/build/_virtual/thenables.js_commonjs-proxy +3 -0
- package/build/_virtual/thenables.js_commonjs-proxy.map +1 -0
- package/build/_virtual/timers.js_commonjs-proxy +3 -0
- package/build/_virtual/timers.js_commonjs-proxy.map +1 -0
- package/build/_virtual/timers2.js_commonjs-proxy +3 -0
- package/build/_virtual/timers2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/timestamp.js_commonjs-proxy +3 -0
- package/build/_virtual/timestamp.js_commonjs-proxy.map +1 -0
- package/build/_virtual/topology.js_commonjs-proxy +3 -0
- package/build/_virtual/topology.js_commonjs-proxy.map +1 -0
- package/build/_virtual/topology_base.js_commonjs-proxy +3 -0
- package/build/_virtual/topology_base.js_commonjs-proxy.map +1 -0
- package/build/_virtual/topology_description.js_commonjs-proxy +3 -0
- package/build/_virtual/topology_description.js_commonjs-proxy.map +1 -0
- package/build/_virtual/trackTransaction.js_commonjs-proxy +3 -0
- package/build/_virtual/trackTransaction.js_commonjs-proxy.map +1 -0
- package/build/_virtual/transactions.js_commonjs-proxy +3 -0
- package/build/_virtual/transactions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/type.js_commonjs-proxy +3 -0
- package/build/_virtual/type.js_commonjs-proxy.map +1 -0
- package/build/_virtual/unordered.js_commonjs-proxy +3 -0
- package/build/_virtual/unordered.js_commonjs-proxy.map +1 -0
- package/build/_virtual/updateValidators.js_commonjs-proxy +3 -0
- package/build/_virtual/updateValidators.js_commonjs-proxy.map +1 -0
- package/build/_virtual/update_many.js_commonjs-proxy +3 -0
- package/build/_virtual/update_many.js_commonjs-proxy.map +1 -0
- package/build/_virtual/update_one.js_commonjs-proxy +3 -0
- package/build/_virtual/update_one.js_commonjs-proxy.map +1 -0
- package/build/_virtual/updatedPathsByArrayFilter.js_commonjs-proxy +3 -0
- package/build/_virtual/updatedPathsByArrayFilter.js_commonjs-proxy.map +1 -0
- package/build/_virtual/upload.js_commonjs-proxy +3 -0
- package/build/_virtual/upload.js_commonjs-proxy.map +1 -0
- package/build/_virtual/uri_parser.js_commonjs-proxy +3 -0
- package/build/_virtual/uri_parser.js_commonjs-proxy.map +1 -0
- package/build/_virtual/url_parser.js_commonjs-proxy +3 -0
- package/build/_virtual/url_parser.js_commonjs-proxy.map +1 -0
- package/build/_virtual/using.js_commonjs-proxy +3 -0
- package/build/_virtual/using.js_commonjs-proxy.map +1 -0
- package/build/_virtual/util.js_commonjs-proxy +3 -0
- package/build/_virtual/util.js_commonjs-proxy.map +1 -0
- package/build/_virtual/util2.js_commonjs-proxy +3 -0
- package/build/_virtual/util2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/utils.js_commonjs-proxy +3 -0
- package/build/_virtual/utils.js_commonjs-proxy.map +1 -0
- package/build/_virtual/utils2.js_commonjs-proxy +3 -0
- package/build/_virtual/utils2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/utils3.js_commonjs-proxy +3 -0
- package/build/_virtual/utils3.js_commonjs-proxy.map +1 -0
- package/build/_virtual/utils4.js_commonjs-proxy +3 -0
- package/build/_virtual/utils4.js_commonjs-proxy.map +1 -0
- package/build/_virtual/utils5.js_commonjs-proxy +3 -0
- package/build/_virtual/utils5.js_commonjs-proxy.map +1 -0
- package/build/_virtual/utils6.js_commonjs-proxy +3 -0
- package/build/_virtual/utils6.js_commonjs-proxy.map +1 -0
- package/build/_virtual/utils7.js_commonjs-proxy +3 -0
- package/build/_virtual/utils7.js_commonjs-proxy.map +1 -0
- package/build/_virtual/validateBeforeSave.js_commonjs-proxy +3 -0
- package/build/_virtual/validateBeforeSave.js_commonjs-proxy.map +1 -0
- package/build/_virtual/validateRef.js_commonjs-proxy +3 -0
- package/build/_virtual/validateRef.js_commonjs-proxy.map +1 -0
- package/build/_virtual/validate_collection.js_commonjs-proxy +3 -0
- package/build/_virtual/validate_collection.js_commonjs-proxy.map +1 -0
- package/build/_virtual/validation.js_commonjs-proxy +3 -0
- package/build/_virtual/validation.js_commonjs-proxy.map +1 -0
- package/build/_virtual/validation2.js_commonjs-proxy +3 -0
- package/build/_virtual/validation2.js_commonjs-proxy.map +1 -0
- package/build/_virtual/validator.js_commonjs-proxy +3 -0
- package/build/_virtual/validator.js_commonjs-proxy.map +1 -0
- package/build/_virtual/validoptions.js_commonjs-proxy +3 -0
- package/build/_virtual/validoptions.js_commonjs-proxy.map +1 -0
- package/build/_virtual/version.js_commonjs-proxy +3 -0
- package/build/_virtual/version.js_commonjs-proxy.map +1 -0
- package/build/_virtual/virtualtype.js_commonjs-proxy +3 -0
- package/build/_virtual/virtualtype.js_commonjs-proxy.map +1 -0
- package/build/_virtual/websocket-server.js_commonjs-proxy +3 -0
- package/build/_virtual/websocket-server.js_commonjs-proxy.map +1 -0
- package/build/_virtual/websocket.js_commonjs-proxy +3 -0
- package/build/_virtual/websocket.js_commonjs-proxy.map +1 -0
- package/build/_virtual/wrapThunk.js_commonjs-proxy +3 -0
- package/build/_virtual/wrapThunk.js_commonjs-proxy.map +1 -0
- package/build/_virtual/write_command.js_commonjs-proxy +3 -0
- package/build/_virtual/write_command.js_commonjs-proxy.map +1 -0
- package/build/_virtual/write_concern.js_commonjs-proxy +3 -0
- package/build/_virtual/write_concern.js_commonjs-proxy.map +1 -0
- package/build/_virtual/x509.js_commonjs-proxy +3 -0
- package/build/_virtual/x509.js_commonjs-proxy.map +1 -0
- package/build/bundles/colyseus/build/index.mjs +13 -0
- package/build/bundles/colyseus/build/index.mjs.js +25 -0
- package/build/bundles/colyseus/build/index.mjs.js.map +1 -0
- package/build/bundles/colyseus/build/index.mjs.map +1 -0
- package/build/matchmaker/controller.js +3 -1
- package/build/matchmaker/controller.js.map +1 -1
- package/build/matchmaker/controller.mjs +3 -1
- package/build/matchmaker/controller.mjs.map +1 -1
- package/build/node_modules/aws4/aws4.js +388 -0
- package/build/node_modules/aws4/aws4.js.map +1 -0
- package/build/node_modules/aws4/aws4.mjs +380 -0
- package/build/node_modules/aws4/aws4.mjs.map +1 -0
- package/build/node_modules/aws4/lru.js +101 -0
- package/build/node_modules/aws4/lru.js.map +1 -0
- package/build/node_modules/aws4/lru.mjs +99 -0
- package/build/node_modules/aws4/lru.mjs.map +1 -0
- package/build/node_modules/bl/bl.js +403 -0
- package/build/node_modules/bl/bl.js.map +1 -0
- package/build/node_modules/bl/bl.mjs +397 -0
- package/build/node_modules/bl/bl.mjs.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_duplex.js +114 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_duplex.js.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_duplex.mjs +112 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_duplex.mjs.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_passthrough.js +29 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_passthrough.js.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_passthrough.mjs +27 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_passthrough.mjs.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_readable.js +1020 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_readable.js.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_readable.mjs +1013 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_readable.mjs.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_transform.js +158 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_transform.js.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_transform.mjs +156 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_transform.mjs.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_writable.js +667 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_writable.js.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_writable.mjs +665 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_writable.mjs.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/BufferList.js +93 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/BufferList.js.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/BufferList.mjs +87 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/BufferList.mjs.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/destroy.js +79 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/destroy.js.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/destroy.mjs +77 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/destroy.mjs.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/stream.js +12 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/stream.js.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/stream.mjs +6 -0
- package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/stream.mjs.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/readable.js +37 -0
- package/build/node_modules/bl/node_modules/readable-stream/readable.js.map +1 -0
- package/build/node_modules/bl/node_modules/readable-stream/readable.mjs +31 -0
- package/build/node_modules/bl/node_modules/readable-stream/readable.mjs.map +1 -0
- package/build/node_modules/bl/node_modules/string_decoder/lib/string_decoder.js +286 -0
- package/build/node_modules/bl/node_modules/string_decoder/lib/string_decoder.js.map +1 -0
- package/build/node_modules/bl/node_modules/string_decoder/lib/string_decoder.mjs +282 -0
- package/build/node_modules/bl/node_modules/string_decoder/lib/string_decoder.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/any.js +25 -0
- package/build/node_modules/bluebird/js/release/any.js.map +1 -0
- package/build/node_modules/bluebird/js/release/any.mjs +23 -0
- package/build/node_modules/bluebird/js/release/any.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/async.js +173 -0
- package/build/node_modules/bluebird/js/release/async.js.map +1 -0
- package/build/node_modules/bluebird/js/release/async.mjs +169 -0
- package/build/node_modules/bluebird/js/release/async.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/bind.js +71 -0
- package/build/node_modules/bluebird/js/release/bind.js.map +1 -0
- package/build/node_modules/bluebird/js/release/bind.mjs +69 -0
- package/build/node_modules/bluebird/js/release/bind.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/bluebird.js +17 -0
- package/build/node_modules/bluebird/js/release/bluebird.js.map +1 -0
- package/build/node_modules/bluebird/js/release/bluebird.mjs +15 -0
- package/build/node_modules/bluebird/js/release/bluebird.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/call_get.js +128 -0
- package/build/node_modules/bluebird/js/release/call_get.js.map +1 -0
- package/build/node_modules/bluebird/js/release/call_get.mjs +126 -0
- package/build/node_modules/bluebird/js/release/call_get.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/cancel.js +135 -0
- package/build/node_modules/bluebird/js/release/cancel.js.map +1 -0
- package/build/node_modules/bluebird/js/release/cancel.mjs +133 -0
- package/build/node_modules/bluebird/js/release/cancel.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/catch_filter.js +49 -0
- package/build/node_modules/bluebird/js/release/catch_filter.js.map +1 -0
- package/build/node_modules/bluebird/js/release/catch_filter.mjs +47 -0
- package/build/node_modules/bluebird/js/release/catch_filter.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/context.js +73 -0
- package/build/node_modules/bluebird/js/release/context.js.map +1 -0
- package/build/node_modules/bluebird/js/release/context.mjs +71 -0
- package/build/node_modules/bluebird/js/release/context.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/debuggability.js +922 -0
- package/build/node_modules/bluebird/js/release/debuggability.js.map +1 -0
- package/build/node_modules/bluebird/js/release/debuggability.mjs +920 -0
- package/build/node_modules/bluebird/js/release/debuggability.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/direct_resolve.js +50 -0
- package/build/node_modules/bluebird/js/release/direct_resolve.js.map +1 -0
- package/build/node_modules/bluebird/js/release/direct_resolve.mjs +48 -0
- package/build/node_modules/bluebird/js/release/direct_resolve.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/each.js +33 -0
- package/build/node_modules/bluebird/js/release/each.js.map +1 -0
- package/build/node_modules/bluebird/js/release/each.mjs +31 -0
- package/build/node_modules/bluebird/js/release/each.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/errors.js +122 -0
- package/build/node_modules/bluebird/js/release/errors.js.map +1 -0
- package/build/node_modules/bluebird/js/release/errors.mjs +120 -0
- package/build/node_modules/bluebird/js/release/errors.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/es5.js +88 -0
- package/build/node_modules/bluebird/js/release/es5.js.map +1 -0
- package/build/node_modules/bluebird/js/release/es5.mjs +86 -0
- package/build/node_modules/bluebird/js/release/es5.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/filter.js +16 -0
- package/build/node_modules/bluebird/js/release/filter.js.map +1 -0
- package/build/node_modules/bluebird/js/release/filter.mjs +14 -0
- package/build/node_modules/bluebird/js/release/filter.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/finally.js +153 -0
- package/build/node_modules/bluebird/js/release/finally.js.map +1 -0
- package/build/node_modules/bluebird/js/release/finally.mjs +151 -0
- package/build/node_modules/bluebird/js/release/finally.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/generators.js +229 -0
- package/build/node_modules/bluebird/js/release/generators.js.map +1 -0
- package/build/node_modules/bluebird/js/release/generators.mjs +227 -0
- package/build/node_modules/bluebird/js/release/generators.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/join.js +172 -0
- package/build/node_modules/bluebird/js/release/join.js.map +1 -0
- package/build/node_modules/bluebird/js/release/join.mjs +170 -0
- package/build/node_modules/bluebird/js/release/join.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/map.js +173 -0
- package/build/node_modules/bluebird/js/release/map.js.map +1 -0
- package/build/node_modules/bluebird/js/release/map.mjs +171 -0
- package/build/node_modules/bluebird/js/release/map.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/method.js +61 -0
- package/build/node_modules/bluebird/js/release/method.js.map +1 -0
- package/build/node_modules/bluebird/js/release/method.mjs +59 -0
- package/build/node_modules/bluebird/js/release/method.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/nodeback.js +57 -0
- package/build/node_modules/bluebird/js/release/nodeback.js.map +1 -0
- package/build/node_modules/bluebird/js/release/nodeback.mjs +55 -0
- package/build/node_modules/bluebird/js/release/nodeback.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/nodeify.js +64 -0
- package/build/node_modules/bluebird/js/release/nodeify.js.map +1 -0
- package/build/node_modules/bluebird/js/release/nodeify.mjs +62 -0
- package/build/node_modules/bluebird/js/release/nodeify.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/promise.js +815 -0
- package/build/node_modules/bluebird/js/release/promise.js.map +1 -0
- package/build/node_modules/bluebird/js/release/promise.mjs +813 -0
- package/build/node_modules/bluebird/js/release/promise.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/promise_array.js +190 -0
- package/build/node_modules/bluebird/js/release/promise_array.js.map +1 -0
- package/build/node_modules/bluebird/js/release/promise_array.mjs +188 -0
- package/build/node_modules/bluebird/js/release/promise_array.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/promisify.js +321 -0
- package/build/node_modules/bluebird/js/release/promisify.js.map +1 -0
- package/build/node_modules/bluebird/js/release/promisify.mjs +319 -0
- package/build/node_modules/bluebird/js/release/promisify.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/props.js +125 -0
- package/build/node_modules/bluebird/js/release/props.js.map +1 -0
- package/build/node_modules/bluebird/js/release/props.mjs +123 -0
- package/build/node_modules/bluebird/js/release/props.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/queue.js +77 -0
- package/build/node_modules/bluebird/js/release/queue.js.map +1 -0
- package/build/node_modules/bluebird/js/release/queue.mjs +75 -0
- package/build/node_modules/bluebird/js/release/queue.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/race.js +55 -0
- package/build/node_modules/bluebird/js/release/race.js.map +1 -0
- package/build/node_modules/bluebird/js/release/race.mjs +53 -0
- package/build/node_modules/bluebird/js/release/race.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/reduce.js +178 -0
- package/build/node_modules/bluebird/js/release/reduce.js.map +1 -0
- package/build/node_modules/bluebird/js/release/reduce.mjs +176 -0
- package/build/node_modules/bluebird/js/release/reduce.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/schedule.js +67 -0
- package/build/node_modules/bluebird/js/release/schedule.js.map +1 -0
- package/build/node_modules/bluebird/js/release/schedule.mjs +65 -0
- package/build/node_modules/bluebird/js/release/schedule.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/settle.js +49 -0
- package/build/node_modules/bluebird/js/release/settle.js.map +1 -0
- package/build/node_modules/bluebird/js/release/settle.mjs +47 -0
- package/build/node_modules/bluebird/js/release/settle.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/some.js +155 -0
- package/build/node_modules/bluebird/js/release/some.js.map +1 -0
- package/build/node_modules/bluebird/js/release/some.mjs +153 -0
- package/build/node_modules/bluebird/js/release/some.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/synchronous_inspection.js +107 -0
- package/build/node_modules/bluebird/js/release/synchronous_inspection.js.map +1 -0
- package/build/node_modules/bluebird/js/release/synchronous_inspection.mjs +105 -0
- package/build/node_modules/bluebird/js/release/synchronous_inspection.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/thenables.js +92 -0
- package/build/node_modules/bluebird/js/release/thenables.js.map +1 -0
- package/build/node_modules/bluebird/js/release/thenables.mjs +90 -0
- package/build/node_modules/bluebird/js/release/thenables.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/timers.js +99 -0
- package/build/node_modules/bluebird/js/release/timers.js.map +1 -0
- package/build/node_modules/bluebird/js/release/timers.mjs +97 -0
- package/build/node_modules/bluebird/js/release/timers.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/using.js +233 -0
- package/build/node_modules/bluebird/js/release/using.js.map +1 -0
- package/build/node_modules/bluebird/js/release/using.mjs +231 -0
- package/build/node_modules/bluebird/js/release/using.mjs.map +1 -0
- package/build/node_modules/bluebird/js/release/util.js +380 -0
- package/build/node_modules/bluebird/js/release/util.js.map +1 -0
- package/build/node_modules/bluebird/js/release/util.mjs +378 -0
- package/build/node_modules/bluebird/js/release/util.mjs.map +1 -0
- package/build/node_modules/bson/index.js +51 -0
- package/build/node_modules/bson/index.js.map +1 -0
- package/build/node_modules/bson/index.mjs +49 -0
- package/build/node_modules/bson/index.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/binary.js +401 -0
- package/build/node_modules/bson/lib/bson/binary.js.map +1 -0
- package/build/node_modules/bson/lib/bson/binary.mjs +393 -0
- package/build/node_modules/bson/lib/bson/binary.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/bson.js +422 -0
- package/build/node_modules/bson/lib/bson/bson.js.map +1 -0
- package/build/node_modules/bson/lib/bson/bson.mjs +404 -0
- package/build/node_modules/bson/lib/bson/bson.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/code.js +33 -0
- package/build/node_modules/bson/lib/bson/code.js.map +1 -0
- package/build/node_modules/bson/lib/bson/code.mjs +29 -0
- package/build/node_modules/bson/lib/bson/code.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/db_ref.js +41 -0
- package/build/node_modules/bson/lib/bson/db_ref.js.map +1 -0
- package/build/node_modules/bson/lib/bson/db_ref.mjs +37 -0
- package/build/node_modules/bson/lib/bson/db_ref.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/decimal128.js +826 -0
- package/build/node_modules/bson/lib/bson/decimal128.js.map +1 -0
- package/build/node_modules/bson/lib/bson/decimal128.mjs +822 -0
- package/build/node_modules/bson/lib/bson/decimal128.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/double.js +42 -0
- package/build/node_modules/bson/lib/bson/double.js.map +1 -0
- package/build/node_modules/bson/lib/bson/double.mjs +38 -0
- package/build/node_modules/bson/lib/bson/double.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/float_parser.js +138 -0
- package/build/node_modules/bson/lib/bson/float_parser.js.map +1 -0
- package/build/node_modules/bson/lib/bson/float_parser.mjs +133 -0
- package/build/node_modules/bson/lib/bson/float_parser.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/int_32.js +42 -0
- package/build/node_modules/bson/lib/bson/int_32.js.map +1 -0
- package/build/node_modules/bson/lib/bson/int_32.mjs +38 -0
- package/build/node_modules/bson/lib/bson/int_32.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/long.js +874 -0
- package/build/node_modules/bson/lib/bson/long.js.map +1 -0
- package/build/node_modules/bson/lib/bson/long.mjs +870 -0
- package/build/node_modules/bson/lib/bson/long.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/map.js +136 -0
- package/build/node_modules/bson/lib/bson/map.js.map +1 -0
- package/build/node_modules/bson/lib/bson/map.mjs +134 -0
- package/build/node_modules/bson/lib/bson/map.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/max_key.js +23 -0
- package/build/node_modules/bson/lib/bson/max_key.js.map +1 -0
- package/build/node_modules/bson/lib/bson/max_key.mjs +19 -0
- package/build/node_modules/bson/lib/bson/max_key.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/min_key.js +23 -0
- package/build/node_modules/bson/lib/bson/min_key.js.map +1 -0
- package/build/node_modules/bson/lib/bson/min_key.mjs +19 -0
- package/build/node_modules/bson/lib/bson/min_key.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/objectid.js +410 -0
- package/build/node_modules/bson/lib/bson/objectid.js.map +1 -0
- package/build/node_modules/bson/lib/bson/objectid.mjs +401 -0
- package/build/node_modules/bson/lib/bson/objectid.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/parser/calculate_size.js +271 -0
- package/build/node_modules/bson/lib/bson/parser/calculate_size.js.map +1 -0
- package/build/node_modules/bson/lib/bson/parser/calculate_size.mjs +269 -0
- package/build/node_modules/bson/lib/bson/parser/calculate_size.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/parser/deserializer.js +798 -0
- package/build/node_modules/bson/lib/bson/parser/deserializer.js.map +1 -0
- package/build/node_modules/bson/lib/bson/parser/deserializer.mjs +796 -0
- package/build/node_modules/bson/lib/bson/parser/deserializer.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/parser/serializer.js +1200 -0
- package/build/node_modules/bson/lib/bson/parser/serializer.js.map +1 -0
- package/build/node_modules/bson/lib/bson/parser/serializer.mjs +1198 -0
- package/build/node_modules/bson/lib/bson/parser/serializer.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/parser/utils.js +30 -0
- package/build/node_modules/bson/lib/bson/parser/utils.js.map +1 -0
- package/build/node_modules/bson/lib/bson/parser/utils.mjs +28 -0
- package/build/node_modules/bson/lib/bson/parser/utils.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/regexp.js +42 -0
- package/build/node_modules/bson/lib/bson/regexp.js.map +1 -0
- package/build/node_modules/bson/lib/bson/regexp.mjs +38 -0
- package/build/node_modules/bson/lib/bson/regexp.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/symbol.js +65 -0
- package/build/node_modules/bson/lib/bson/symbol.js.map +1 -0
- package/build/node_modules/bson/lib/bson/symbol.mjs +57 -0
- package/build/node_modules/bson/lib/bson/symbol.mjs.map +1 -0
- package/build/node_modules/bson/lib/bson/timestamp.js +863 -0
- package/build/node_modules/bson/lib/bson/timestamp.js.map +1 -0
- package/build/node_modules/bson/lib/bson/timestamp.mjs +859 -0
- package/build/node_modules/bson/lib/bson/timestamp.mjs.map +1 -0
- package/build/node_modules/core-util-is/lib/util.js +147 -0
- package/build/node_modules/core-util-is/lib/util.js.map +1 -0
- package/build/node_modules/core-util-is/lib/util.mjs +129 -0
- package/build/node_modules/core-util-is/lib/util.mjs.map +1 -0
- package/build/node_modules/denque/index.js +446 -0
- package/build/node_modules/denque/index.js.map +1 -0
- package/build/node_modules/denque/index.mjs +444 -0
- package/build/node_modules/denque/index.mjs.map +1 -0
- package/build/node_modules/double-ended-queue/js/deque.js +279 -0
- package/build/node_modules/double-ended-queue/js/deque.js.map +1 -0
- package/build/node_modules/double-ended-queue/js/deque.mjs +277 -0
- package/build/node_modules/double-ended-queue/js/deque.mjs.map +1 -0
- package/build/node_modules/inherits/inherits.js +24 -0
- package/build/node_modules/inherits/inherits.js.map +1 -0
- package/build/node_modules/inherits/inherits.mjs +18 -0
- package/build/node_modules/inherits/inherits.mjs.map +1 -0
- package/build/node_modules/inherits/inherits_browser.js +36 -0
- package/build/node_modules/inherits/inherits_browser.js.map +1 -0
- package/build/node_modules/inherits/inherits_browser.mjs +34 -0
- package/build/node_modules/inherits/inherits_browser.mjs.map +1 -0
- package/build/node_modules/isarray/index.js +10 -0
- package/build/node_modules/isarray/index.js.map +1 -0
- package/build/node_modules/isarray/index.mjs +8 -0
- package/build/node_modules/isarray/index.mjs.map +1 -0
- package/build/node_modules/kareem/index.js +514 -0
- package/build/node_modules/kareem/index.js.map +1 -0
- package/build/node_modules/kareem/index.mjs +512 -0
- package/build/node_modules/kareem/index.mjs.map +1 -0
- package/build/node_modules/memory-pager/index.js +165 -0
- package/build/node_modules/memory-pager/index.js.map +1 -0
- package/build/node_modules/memory-pager/index.mjs +163 -0
- package/build/node_modules/memory-pager/index.mjs.map +1 -0
- package/build/node_modules/mongodb/index.js +93 -0
- package/build/node_modules/mongodb/index.js.map +1 -0
- package/build/node_modules/mongodb/index.mjs +91 -0
- package/build/node_modules/mongodb/index.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/admin.js +307 -0
- package/build/node_modules/mongodb/lib/admin.js.map +1 -0
- package/build/node_modules/mongodb/lib/admin.mjs +305 -0
- package/build/node_modules/mongodb/lib/admin.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/aggregation_cursor.js +376 -0
- package/build/node_modules/mongodb/lib/aggregation_cursor.js.map +1 -0
- package/build/node_modules/mongodb/lib/aggregation_cursor.mjs +374 -0
- package/build/node_modules/mongodb/lib/aggregation_cursor.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/apm.js +41 -0
- package/build/node_modules/mongodb/lib/apm.js.map +1 -0
- package/build/node_modules/mongodb/lib/apm.mjs +35 -0
- package/build/node_modules/mongodb/lib/apm.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/async/async_iterator.js +43 -0
- package/build/node_modules/mongodb/lib/async/async_iterator.js.map +1 -0
- package/build/node_modules/mongodb/lib/async/async_iterator.mjs +39 -0
- package/build/node_modules/mongodb/lib/async/async_iterator.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/bulk/common.js +1381 -0
- package/build/node_modules/mongodb/lib/bulk/common.js.map +1 -0
- package/build/node_modules/mongodb/lib/bulk/common.mjs +1379 -0
- package/build/node_modules/mongodb/lib/bulk/common.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/bulk/ordered.js +119 -0
- package/build/node_modules/mongodb/lib/bulk/ordered.js.map +1 -0
- package/build/node_modules/mongodb/lib/bulk/ordered.mjs +115 -0
- package/build/node_modules/mongodb/lib/bulk/ordered.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/bulk/unordered.js +140 -0
- package/build/node_modules/mongodb/lib/bulk/unordered.js.map +1 -0
- package/build/node_modules/mongodb/lib/bulk/unordered.mjs +136 -0
- package/build/node_modules/mongodb/lib/bulk/unordered.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/change_stream.js +640 -0
- package/build/node_modules/mongodb/lib/change_stream.js.map +1 -0
- package/build/node_modules/mongodb/lib/change_stream.mjs +634 -0
- package/build/node_modules/mongodb/lib/change_stream.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/cmap/connection.js +404 -0
- package/build/node_modules/mongodb/lib/cmap/connection.js.map +1 -0
- package/build/node_modules/mongodb/lib/cmap/connection.mjs +398 -0
- package/build/node_modules/mongodb/lib/cmap/connection.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/cmap/connection_pool.js +608 -0
- package/build/node_modules/mongodb/lib/cmap/connection_pool.js.map +1 -0
- package/build/node_modules/mongodb/lib/cmap/connection_pool.mjs +602 -0
- package/build/node_modules/mongodb/lib/cmap/connection_pool.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/cmap/errors.js +41 -0
- package/build/node_modules/mongodb/lib/cmap/errors.js.map +1 -0
- package/build/node_modules/mongodb/lib/cmap/errors.mjs +39 -0
- package/build/node_modules/mongodb/lib/cmap/errors.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/cmap/events.js +157 -0
- package/build/node_modules/mongodb/lib/cmap/events.js.map +1 -0
- package/build/node_modules/mongodb/lib/cmap/events.mjs +155 -0
- package/build/node_modules/mongodb/lib/cmap/events.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/cmap/message_stream.js +211 -0
- package/build/node_modules/mongodb/lib/cmap/message_stream.js.map +1 -0
- package/build/node_modules/mongodb/lib/cmap/message_stream.mjs +205 -0
- package/build/node_modules/mongodb/lib/cmap/message_stream.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/cmap/stream_description.js +51 -0
- package/build/node_modules/mongodb/lib/cmap/stream_description.js.map +1 -0
- package/build/node_modules/mongodb/lib/cmap/stream_description.mjs +49 -0
- package/build/node_modules/mongodb/lib/cmap/stream_description.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/collection.js +2294 -0
- package/build/node_modules/mongodb/lib/collection.js.map +1 -0
- package/build/node_modules/mongodb/lib/collection.mjs +2288 -0
- package/build/node_modules/mongodb/lib/collection.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/command_cursor.js +276 -0
- package/build/node_modules/mongodb/lib/command_cursor.js.map +1 -0
- package/build/node_modules/mongodb/lib/command_cursor.mjs +274 -0
- package/build/node_modules/mongodb/lib/command_cursor.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/constants.js +13 -0
- package/build/node_modules/mongodb/lib/constants.js.map +1 -0
- package/build/node_modules/mongodb/lib/constants.mjs +11 -0
- package/build/node_modules/mongodb/lib/constants.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/auth_provider.js +58 -0
- package/build/node_modules/mongodb/lib/core/auth/auth_provider.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/auth_provider.mjs +56 -0
- package/build/node_modules/mongodb/lib/core/auth/auth_provider.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/defaultAuthProviders.js +35 -0
- package/build/node_modules/mongodb/lib/core/auth/defaultAuthProviders.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/defaultAuthProviders.mjs +33 -0
- package/build/node_modules/mongodb/lib/core/auth/defaultAuthProviders.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/gssapi.js +162 -0
- package/build/node_modules/mongodb/lib/core/auth/gssapi.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/gssapi.mjs +156 -0
- package/build/node_modules/mongodb/lib/core/auth/gssapi.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/mongo_credentials.js +110 -0
- package/build/node_modules/mongodb/lib/core/auth/mongo_credentials.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/mongo_credentials.mjs +108 -0
- package/build/node_modules/mongodb/lib/core/auth/mongo_credentials.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/mongocr.js +54 -0
- package/build/node_modules/mongodb/lib/core/auth/mongocr.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/mongocr.mjs +48 -0
- package/build/node_modules/mongodb/lib/core/auth/mongocr.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/mongodb_aws.js +275 -0
- package/build/node_modules/mongodb/lib/core/auth/mongodb_aws.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/mongodb_aws.mjs +267 -0
- package/build/node_modules/mongodb/lib/core/auth/mongodb_aws.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/plain.js +35 -0
- package/build/node_modules/mongodb/lib/core/auth/plain.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/plain.mjs +33 -0
- package/build/node_modules/mongodb/lib/core/auth/plain.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/scram.js +362 -0
- package/build/node_modules/mongodb/lib/core/auth/scram.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/scram.mjs +356 -0
- package/build/node_modules/mongodb/lib/core/auth/scram.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/x509.js +41 -0
- package/build/node_modules/mongodb/lib/core/auth/x509.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/auth/x509.mjs +39 -0
- package/build/node_modules/mongodb/lib/core/auth/x509.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/apm.js +259 -0
- package/build/node_modules/mongodb/lib/core/connection/apm.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/apm.mjs +257 -0
- package/build/node_modules/mongodb/lib/core/connection/apm.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/command_result.js +39 -0
- package/build/node_modules/mongodb/lib/core/connection/command_result.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/command_result.mjs +37 -0
- package/build/node_modules/mongodb/lib/core/connection/command_result.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/commands.js +514 -0
- package/build/node_modules/mongodb/lib/core/connection/commands.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/commands.mjs +512 -0
- package/build/node_modules/mongodb/lib/core/connection/commands.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/connect.js +367 -0
- package/build/node_modules/mongodb/lib/core/connection/connect.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/connect.mjs +360 -0
- package/build/node_modules/mongodb/lib/core/connection/connect.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/connection.js +731 -0
- package/build/node_modules/mongodb/lib/core/connection/connection.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/connection.mjs +724 -0
- package/build/node_modules/mongodb/lib/core/connection/connection.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/logger.js +262 -0
- package/build/node_modules/mongodb/lib/core/connection/logger.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/logger.mjs +256 -0
- package/build/node_modules/mongodb/lib/core/connection/logger.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/msg.js +232 -0
- package/build/node_modules/mongodb/lib/core/connection/msg.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/msg.mjs +230 -0
- package/build/node_modules/mongodb/lib/core/connection/msg.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/pool.js +1304 -0
- package/build/node_modules/mongodb/lib/core/connection/pool.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/pool.mjs +1297 -0
- package/build/node_modules/mongodb/lib/core/connection/pool.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/utils.js +59 -0
- package/build/node_modules/mongodb/lib/core/connection/utils.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/connection/utils.mjs +57 -0
- package/build/node_modules/mongodb/lib/core/connection/utils.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/cursor.js +891 -0
- package/build/node_modules/mongodb/lib/core/cursor.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/cursor.mjs +885 -0
- package/build/node_modules/mongodb/lib/core/cursor.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/error.js +354 -0
- package/build/node_modules/mongodb/lib/core/error.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/error.mjs +352 -0
- package/build/node_modules/mongodb/lib/core/error.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/index.js +77 -0
- package/build/node_modules/mongodb/lib/core/index.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/index.mjs +75 -0
- package/build/node_modules/mongodb/lib/core/index.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/common.js +70 -0
- package/build/node_modules/mongodb/lib/core/sdam/common.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/common.mjs +68 -0
- package/build/node_modules/mongodb/lib/core/sdam/common.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/events.js +127 -0
- package/build/node_modules/mongodb/lib/core/sdam/events.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/events.mjs +125 -0
- package/build/node_modules/mongodb/lib/core/sdam/events.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/monitor.js +430 -0
- package/build/node_modules/mongodb/lib/core/sdam/monitor.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/monitor.mjs +424 -0
- package/build/node_modules/mongodb/lib/core/sdam/monitor.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/server.js +584 -0
- package/build/node_modules/mongodb/lib/core/sdam/server.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/server.mjs +578 -0
- package/build/node_modules/mongodb/lib/core/sdam/server.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/server_description.js +234 -0
- package/build/node_modules/mongodb/lib/core/sdam/server_description.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/server_description.mjs +232 -0
- package/build/node_modules/mongodb/lib/core/sdam/server_description.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/server_selection.js +246 -0
- package/build/node_modules/mongodb/lib/core/sdam/server_selection.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/server_selection.mjs +244 -0
- package/build/node_modules/mongodb/lib/core/sdam/server_selection.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/srv_polling.js +155 -0
- package/build/node_modules/mongodb/lib/core/sdam/srv_polling.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/srv_polling.mjs +145 -0
- package/build/node_modules/mongodb/lib/core/sdam/srv_polling.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/topology.js +1170 -0
- package/build/node_modules/mongodb/lib/core/sdam/topology.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/topology.mjs +1163 -0
- package/build/node_modules/mongodb/lib/core/sdam/topology.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/topology_description.js +468 -0
- package/build/node_modules/mongodb/lib/core/sdam/topology_description.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/sdam/topology_description.mjs +466 -0
- package/build/node_modules/mongodb/lib/core/sdam/topology_description.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/sessions.js +797 -0
- package/build/node_modules/mongodb/lib/core/sessions.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/sessions.mjs +791 -0
- package/build/node_modules/mongodb/lib/core/sessions.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/topologies/mongos.js +1415 -0
- package/build/node_modules/mongodb/lib/core/topologies/mongos.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/topologies/mongos.mjs +1408 -0
- package/build/node_modules/mongodb/lib/core/topologies/mongos.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/topologies/read_preference.js +273 -0
- package/build/node_modules/mongodb/lib/core/topologies/read_preference.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/topologies/read_preference.mjs +271 -0
- package/build/node_modules/mongodb/lib/core/topologies/read_preference.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/topologies/replset.js +1586 -0
- package/build/node_modules/mongodb/lib/core/topologies/replset.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/topologies/replset.mjs +1579 -0
- package/build/node_modules/mongodb/lib/core/topologies/replset.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/topologies/replset_state.js +1135 -0
- package/build/node_modules/mongodb/lib/core/topologies/replset_state.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/topologies/replset_state.mjs +1128 -0
- package/build/node_modules/mongodb/lib/core/topologies/replset_state.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/topologies/server.js +1006 -0
- package/build/node_modules/mongodb/lib/core/topologies/server.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/topologies/server.mjs +999 -0
- package/build/node_modules/mongodb/lib/core/topologies/server.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/topologies/shared.js +464 -0
- package/build/node_modules/mongodb/lib/core/topologies/shared.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/topologies/shared.mjs +462 -0
- package/build/node_modules/mongodb/lib/core/topologies/shared.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/transactions.js +188 -0
- package/build/node_modules/mongodb/lib/core/transactions.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/transactions.mjs +186 -0
- package/build/node_modules/mongodb/lib/core/transactions.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/uri_parser.js +745 -0
- package/build/node_modules/mongodb/lib/core/uri_parser.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/uri_parser.mjs +737 -0
- package/build/node_modules/mongodb/lib/core/uri_parser.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/utils.js +307 -0
- package/build/node_modules/mongodb/lib/core/utils.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/utils.mjs +300 -0
- package/build/node_modules/mongodb/lib/core/utils.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/command.js +193 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/command.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/command.mjs +191 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/command.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/compression.js +83 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/compression.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/compression.mjs +77 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/compression.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/constants.js +16 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/constants.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/constants.mjs +14 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/constants.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/get_more.js +105 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/get_more.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/get_more.mjs +103 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/get_more.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/index.js +26 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/index.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/index.mjs +24 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/index.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/kill_cursors.js +80 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/kill_cursors.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/kill_cursors.mjs +78 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/kill_cursors.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/query.js +247 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/query.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/query.mjs +245 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/query.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/shared.js +122 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/shared.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/shared.mjs +120 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/shared.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/write_command.js +68 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/write_command.js.map +1 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/write_command.mjs +66 -0
- package/build/node_modules/mongodb/lib/core/wireprotocol/write_command.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/cursor.js +1156 -0
- package/build/node_modules/mongodb/lib/cursor.js.map +1 -0
- package/build/node_modules/mongodb/lib/cursor.mjs +1149 -0
- package/build/node_modules/mongodb/lib/cursor.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/db.js +1092 -0
- package/build/node_modules/mongodb/lib/db.js.map +1 -0
- package/build/node_modules/mongodb/lib/db.mjs +1085 -0
- package/build/node_modules/mongodb/lib/db.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/dynamic_loaders.js +39 -0
- package/build/node_modules/mongodb/lib/dynamic_loaders.js.map +1 -0
- package/build/node_modules/mongodb/lib/dynamic_loaders.mjs +37 -0
- package/build/node_modules/mongodb/lib/dynamic_loaders.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/encrypter.js +176 -0
- package/build/node_modules/mongodb/lib/encrypter.js.map +1 -0
- package/build/node_modules/mongodb/lib/encrypter.mjs +170 -0
- package/build/node_modules/mongodb/lib/encrypter.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/error.js +48 -0
- package/build/node_modules/mongodb/lib/error.js.map +1 -0
- package/build/node_modules/mongodb/lib/error.mjs +46 -0
- package/build/node_modules/mongodb/lib/error.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/explain.js +60 -0
- package/build/node_modules/mongodb/lib/explain.js.map +1 -0
- package/build/node_modules/mongodb/lib/explain.mjs +58 -0
- package/build/node_modules/mongodb/lib/explain.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/gridfs/chunk.js +242 -0
- package/build/node_modules/mongodb/lib/gridfs/chunk.js.map +1 -0
- package/build/node_modules/mongodb/lib/gridfs/chunk.mjs +240 -0
- package/build/node_modules/mongodb/lib/gridfs/chunk.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/gridfs/grid_store.js +1940 -0
- package/build/node_modules/mongodb/lib/gridfs/grid_store.js.map +1 -0
- package/build/node_modules/mongodb/lib/gridfs/grid_store.mjs +1932 -0
- package/build/node_modules/mongodb/lib/gridfs/grid_store.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/gridfs-stream/download.js +441 -0
- package/build/node_modules/mongodb/lib/gridfs-stream/download.js.map +1 -0
- package/build/node_modules/mongodb/lib/gridfs-stream/download.mjs +434 -0
- package/build/node_modules/mongodb/lib/gridfs-stream/download.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/gridfs-stream/index.js +366 -0
- package/build/node_modules/mongodb/lib/gridfs-stream/index.js.map +1 -0
- package/build/node_modules/mongodb/lib/gridfs-stream/index.mjs +359 -0
- package/build/node_modules/mongodb/lib/gridfs-stream/index.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/gridfs-stream/upload.js +552 -0
- package/build/node_modules/mongodb/lib/gridfs-stream/upload.js.map +1 -0
- package/build/node_modules/mongodb/lib/gridfs-stream/upload.mjs +544 -0
- package/build/node_modules/mongodb/lib/gridfs-stream/upload.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/mongo_client.js +514 -0
- package/build/node_modules/mongodb/lib/mongo_client.js.map +1 -0
- package/build/node_modules/mongodb/lib/mongo_client.mjs +507 -0
- package/build/node_modules/mongodb/lib/mongo_client.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/add_user.js +111 -0
- package/build/node_modules/mongodb/lib/operations/add_user.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/add_user.mjs +105 -0
- package/build/node_modules/mongodb/lib/operations/add_user.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/aggregate.js +111 -0
- package/build/node_modules/mongodb/lib/operations/aggregate.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/aggregate.mjs +109 -0
- package/build/node_modules/mongodb/lib/operations/aggregate.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/bulk_write.js +103 -0
- package/build/node_modules/mongodb/lib/operations/bulk_write.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/bulk_write.mjs +101 -0
- package/build/node_modules/mongodb/lib/operations/bulk_write.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/collection_ops.js +361 -0
- package/build/node_modules/mongodb/lib/operations/collection_ops.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/collection_ops.mjs +359 -0
- package/build/node_modules/mongodb/lib/operations/collection_ops.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/collections.js +62 -0
- package/build/node_modules/mongodb/lib/operations/collections.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/collections.mjs +60 -0
- package/build/node_modules/mongodb/lib/operations/collections.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/command.js +126 -0
- package/build/node_modules/mongodb/lib/operations/command.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/command.mjs +124 -0
- package/build/node_modules/mongodb/lib/operations/command.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/command_v2.js +131 -0
- package/build/node_modules/mongodb/lib/operations/command_v2.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/command_v2.mjs +129 -0
- package/build/node_modules/mongodb/lib/operations/command_v2.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/common_functions.js +408 -0
- package/build/node_modules/mongodb/lib/operations/common_functions.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/common_functions.mjs +406 -0
- package/build/node_modules/mongodb/lib/operations/common_functions.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/connect.js +805 -0
- package/build/node_modules/mongodb/lib/operations/connect.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/connect.mjs +798 -0
- package/build/node_modules/mongodb/lib/operations/connect.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/count.js +74 -0
- package/build/node_modules/mongodb/lib/operations/count.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/count.mjs +72 -0
- package/build/node_modules/mongodb/lib/operations/count.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/count_documents.js +44 -0
- package/build/node_modules/mongodb/lib/operations/count_documents.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/count_documents.mjs +42 -0
- package/build/node_modules/mongodb/lib/operations/count_documents.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/create_collection.js +111 -0
- package/build/node_modules/mongodb/lib/operations/create_collection.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/create_collection.mjs +109 -0
- package/build/node_modules/mongodb/lib/operations/create_collection.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/create_indexes.js +146 -0
- package/build/node_modules/mongodb/lib/operations/create_indexes.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/create_indexes.mjs +144 -0
- package/build/node_modules/mongodb/lib/operations/create_indexes.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/cursor_ops.js +175 -0
- package/build/node_modules/mongodb/lib/operations/cursor_ops.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/cursor_ops.mjs +173 -0
- package/build/node_modules/mongodb/lib/operations/cursor_ops.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/db_ops.js +474 -0
- package/build/node_modules/mongodb/lib/operations/db_ops.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/db_ops.mjs +472 -0
- package/build/node_modules/mongodb/lib/operations/db_ops.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/delete_many.js +44 -0
- package/build/node_modules/mongodb/lib/operations/delete_many.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/delete_many.mjs +42 -0
- package/build/node_modules/mongodb/lib/operations/delete_many.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/delete_one.js +44 -0
- package/build/node_modules/mongodb/lib/operations/delete_one.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/delete_one.mjs +42 -0
- package/build/node_modules/mongodb/lib/operations/delete_one.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/distinct.js +102 -0
- package/build/node_modules/mongodb/lib/operations/distinct.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/distinct.mjs +100 -0
- package/build/node_modules/mongodb/lib/operations/distinct.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/drop.js +60 -0
- package/build/node_modules/mongodb/lib/operations/drop.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/drop.mjs +58 -0
- package/build/node_modules/mongodb/lib/operations/drop.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/drop_index.js +49 -0
- package/build/node_modules/mongodb/lib/operations/drop_index.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/drop_index.mjs +47 -0
- package/build/node_modules/mongodb/lib/operations/drop_index.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/drop_indexes.js +30 -0
- package/build/node_modules/mongodb/lib/operations/drop_indexes.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/drop_indexes.mjs +28 -0
- package/build/node_modules/mongodb/lib/operations/drop_indexes.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/estimated_document_count.js +64 -0
- package/build/node_modules/mongodb/lib/operations/estimated_document_count.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/estimated_document_count.mjs +62 -0
- package/build/node_modules/mongodb/lib/operations/estimated_document_count.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/execute_db_admin_command.js +41 -0
- package/build/node_modules/mongodb/lib/operations/execute_db_admin_command.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/execute_db_admin_command.mjs +39 -0
- package/build/node_modules/mongodb/lib/operations/execute_db_admin_command.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/execute_operation.js +173 -0
- package/build/node_modules/mongodb/lib/operations/execute_operation.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/execute_operation.mjs +171 -0
- package/build/node_modules/mongodb/lib/operations/execute_operation.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/find.js +57 -0
- package/build/node_modules/mongodb/lib/operations/find.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/find.mjs +55 -0
- package/build/node_modules/mongodb/lib/operations/find.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/find_and_modify.js +138 -0
- package/build/node_modules/mongodb/lib/operations/find_and_modify.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/find_and_modify.mjs +136 -0
- package/build/node_modules/mongodb/lib/operations/find_and_modify.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/find_one.js +47 -0
- package/build/node_modules/mongodb/lib/operations/find_one.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/find_one.mjs +45 -0
- package/build/node_modules/mongodb/lib/operations/find_one.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/find_one_and_delete.js +24 -0
- package/build/node_modules/mongodb/lib/operations/find_one_and_delete.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/find_one_and_delete.mjs +22 -0
- package/build/node_modules/mongodb/lib/operations/find_one_and_delete.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/find_one_and_replace.js +44 -0
- package/build/node_modules/mongodb/lib/operations/find_one_and_replace.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/find_one_and_replace.mjs +42 -0
- package/build/node_modules/mongodb/lib/operations/find_one_and_replace.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/find_one_and_update.js +44 -0
- package/build/node_modules/mongodb/lib/operations/find_one_and_update.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/find_one_and_update.mjs +42 -0
- package/build/node_modules/mongodb/lib/operations/find_one_and_update.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/geo_haystack_search.js +87 -0
- package/build/node_modules/mongodb/lib/operations/geo_haystack_search.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/geo_haystack_search.mjs +85 -0
- package/build/node_modules/mongodb/lib/operations/geo_haystack_search.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/index_exists.js +46 -0
- package/build/node_modules/mongodb/lib/operations/index_exists.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/index_exists.mjs +44 -0
- package/build/node_modules/mongodb/lib/operations/index_exists.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/index_information.js +29 -0
- package/build/node_modules/mongodb/lib/operations/index_information.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/index_information.mjs +27 -0
- package/build/node_modules/mongodb/lib/operations/index_information.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/indexes.js +28 -0
- package/build/node_modules/mongodb/lib/operations/indexes.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/indexes.mjs +26 -0
- package/build/node_modules/mongodb/lib/operations/indexes.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/insert_many.js +67 -0
- package/build/node_modules/mongodb/lib/operations/insert_many.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/insert_many.mjs +65 -0
- package/build/node_modules/mongodb/lib/operations/insert_many.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/insert_one.js +46 -0
- package/build/node_modules/mongodb/lib/operations/insert_one.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/insert_one.mjs +44 -0
- package/build/node_modules/mongodb/lib/operations/insert_one.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/is_capped.js +24 -0
- package/build/node_modules/mongodb/lib/operations/is_capped.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/is_capped.mjs +22 -0
- package/build/node_modules/mongodb/lib/operations/is_capped.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/list_collections.js +113 -0
- package/build/node_modules/mongodb/lib/operations/list_collections.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/list_collections.mjs +111 -0
- package/build/node_modules/mongodb/lib/operations/list_collections.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/list_databases.js +44 -0
- package/build/node_modules/mongodb/lib/operations/list_databases.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/list_databases.mjs +42 -0
- package/build/node_modules/mongodb/lib/operations/list_databases.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/list_indexes.js +48 -0
- package/build/node_modules/mongodb/lib/operations/list_indexes.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/list_indexes.mjs +46 -0
- package/build/node_modules/mongodb/lib/operations/list_indexes.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/map_reduce.js +220 -0
- package/build/node_modules/mongodb/lib/operations/map_reduce.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/map_reduce.mjs +218 -0
- package/build/node_modules/mongodb/lib/operations/map_reduce.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/operation.js +82 -0
- package/build/node_modules/mongodb/lib/operations/operation.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/operation.mjs +80 -0
- package/build/node_modules/mongodb/lib/operations/operation.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/options_operation.js +39 -0
- package/build/node_modules/mongodb/lib/operations/options_operation.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/options_operation.mjs +37 -0
- package/build/node_modules/mongodb/lib/operations/options_operation.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/profiling_level.js +34 -0
- package/build/node_modules/mongodb/lib/operations/profiling_level.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/profiling_level.mjs +32 -0
- package/build/node_modules/mongodb/lib/operations/profiling_level.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/re_index.js +41 -0
- package/build/node_modules/mongodb/lib/operations/re_index.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/re_index.mjs +39 -0
- package/build/node_modules/mongodb/lib/operations/re_index.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/remove_user.js +60 -0
- package/build/node_modules/mongodb/lib/operations/remove_user.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/remove_user.mjs +58 -0
- package/build/node_modules/mongodb/lib/operations/remove_user.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/rename.js +69 -0
- package/build/node_modules/mongodb/lib/operations/rename.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/rename.mjs +67 -0
- package/build/node_modules/mongodb/lib/operations/rename.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/replace_one.js +61 -0
- package/build/node_modules/mongodb/lib/operations/replace_one.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/replace_one.mjs +59 -0
- package/build/node_modules/mongodb/lib/operations/replace_one.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/run_command.js +24 -0
- package/build/node_modules/mongodb/lib/operations/run_command.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/run_command.mjs +22 -0
- package/build/node_modules/mongodb/lib/operations/run_command.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/set_profiling_level.js +52 -0
- package/build/node_modules/mongodb/lib/operations/set_profiling_level.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/set_profiling_level.mjs +50 -0
- package/build/node_modules/mongodb/lib/operations/set_profiling_level.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/stats.js +51 -0
- package/build/node_modules/mongodb/lib/operations/stats.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/stats.mjs +49 -0
- package/build/node_modules/mongodb/lib/operations/stats.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/update_many.js +62 -0
- package/build/node_modules/mongodb/lib/operations/update_many.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/update_many.mjs +60 -0
- package/build/node_modules/mongodb/lib/operations/update_many.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/update_one.js +62 -0
- package/build/node_modules/mongodb/lib/operations/update_one.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/update_one.mjs +60 -0
- package/build/node_modules/mongodb/lib/operations/update_one.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/operations/validate_collection.js +42 -0
- package/build/node_modules/mongodb/lib/operations/validate_collection.js.map +1 -0
- package/build/node_modules/mongodb/lib/operations/validate_collection.mjs +40 -0
- package/build/node_modules/mongodb/lib/operations/validate_collection.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/read_concern.js +64 -0
- package/build/node_modules/mongodb/lib/read_concern.js.map +1 -0
- package/build/node_modules/mongodb/lib/read_concern.mjs +62 -0
- package/build/node_modules/mongodb/lib/read_concern.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/topologies/mongos.js +454 -0
- package/build/node_modules/mongodb/lib/topologies/mongos.js.map +1 -0
- package/build/node_modules/mongodb/lib/topologies/mongos.mjs +452 -0
- package/build/node_modules/mongodb/lib/topologies/mongos.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/topologies/native_topology.js +86 -0
- package/build/node_modules/mongodb/lib/topologies/native_topology.js.map +1 -0
- package/build/node_modules/mongodb/lib/topologies/native_topology.mjs +84 -0
- package/build/node_modules/mongodb/lib/topologies/native_topology.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/topologies/replset.js +496 -0
- package/build/node_modules/mongodb/lib/topologies/replset.js.map +1 -0
- package/build/node_modules/mongodb/lib/topologies/replset.mjs +494 -0
- package/build/node_modules/mongodb/lib/topologies/replset.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/topologies/server.js +456 -0
- package/build/node_modules/mongodb/lib/topologies/server.js.map +1 -0
- package/build/node_modules/mongodb/lib/topologies/server.mjs +454 -0
- package/build/node_modules/mongodb/lib/topologies/server.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/topologies/topology_base.js +439 -0
- package/build/node_modules/mongodb/lib/topologies/topology_base.js.map +1 -0
- package/build/node_modules/mongodb/lib/topologies/topology_base.mjs +428 -0
- package/build/node_modules/mongodb/lib/topologies/topology_base.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/url_parser.js +646 -0
- package/build/node_modules/mongodb/lib/url_parser.js.map +1 -0
- package/build/node_modules/mongodb/lib/url_parser.mjs +637 -0
- package/build/node_modules/mongodb/lib/url_parser.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/utils.js +919 -0
- package/build/node_modules/mongodb/lib/utils.js.map +1 -0
- package/build/node_modules/mongodb/lib/utils.mjs +917 -0
- package/build/node_modules/mongodb/lib/utils.mjs.map +1 -0
- package/build/node_modules/mongodb/lib/write_concern.js +99 -0
- package/build/node_modules/mongodb/lib/write_concern.js.map +1 -0
- package/build/node_modules/mongodb/lib/write_concern.mjs +97 -0
- package/build/node_modules/mongodb/lib/write_concern.mjs.map +1 -0
- package/build/node_modules/mongodb/package.json.js +146 -0
- package/build/node_modules/mongodb/package.json.js.map +1 -0
- package/build/node_modules/mongodb/package.mjs +127 -0
- package/build/node_modules/mongodb/package.mjs.map +1 -0
- package/build/node_modules/mongoose/index.js +8 -0
- package/build/node_modules/mongoose/index.js.map +1 -0
- package/build/node_modules/mongoose/index.mjs +6 -0
- package/build/node_modules/mongoose/index.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/aggregate.js +1176 -0
- package/build/node_modules/mongoose/lib/aggregate.js.map +1 -0
- package/build/node_modules/mongoose/lib/aggregate.mjs +1170 -0
- package/build/node_modules/mongoose/lib/aggregate.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/browserDocument.js +119 -0
- package/build/node_modules/mongoose/lib/browserDocument.js.map +1 -0
- package/build/node_modules/mongoose/lib/browserDocument.mjs +113 -0
- package/build/node_modules/mongoose/lib/browserDocument.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/cast/boolean.js +41 -0
- package/build/node_modules/mongoose/lib/cast/boolean.js.map +1 -0
- package/build/node_modules/mongoose/lib/cast/boolean.mjs +39 -0
- package/build/node_modules/mongoose/lib/cast/boolean.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/cast/date.js +48 -0
- package/build/node_modules/mongoose/lib/cast/date.js.map +1 -0
- package/build/node_modules/mongoose/lib/cast/date.mjs +42 -0
- package/build/node_modules/mongoose/lib/cast/date.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/cast/decimal128.js +43 -0
- package/build/node_modules/mongoose/lib/cast/decimal128.js.map +1 -0
- package/build/node_modules/mongoose/lib/cast/decimal128.mjs +37 -0
- package/build/node_modules/mongoose/lib/cast/decimal128.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/cast/number.js +50 -0
- package/build/node_modules/mongoose/lib/cast/number.js.map +1 -0
- package/build/node_modules/mongoose/lib/cast/number.mjs +44 -0
- package/build/node_modules/mongoose/lib/cast/number.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/cast/objectid.js +39 -0
- package/build/node_modules/mongoose/lib/cast/objectid.js.map +1 -0
- package/build/node_modules/mongoose/lib/cast/objectid.mjs +33 -0
- package/build/node_modules/mongoose/lib/cast/objectid.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/cast/string.js +40 -0
- package/build/node_modules/mongoose/lib/cast/string.js.map +1 -0
- package/build/node_modules/mongoose/lib/cast/string.mjs +38 -0
- package/build/node_modules/mongoose/lib/cast/string.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/cast.js +382 -0
- package/build/node_modules/mongoose/lib/cast.js.map +1 -0
- package/build/node_modules/mongoose/lib/cast.mjs +376 -0
- package/build/node_modules/mongoose/lib/cast.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/collection.js +333 -0
- package/build/node_modules/mongoose/lib/collection.js.map +1 -0
- package/build/node_modules/mongoose/lib/collection.mjs +327 -0
- package/build/node_modules/mongoose/lib/collection.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/connection.js +1534 -0
- package/build/node_modules/mongoose/lib/connection.js.map +1 -0
- package/build/node_modules/mongoose/lib/connection.mjs +1528 -0
- package/build/node_modules/mongoose/lib/connection.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/connectionstate.js +29 -0
- package/build/node_modules/mongoose/lib/connectionstate.js.map +1 -0
- package/build/node_modules/mongoose/lib/connectionstate.mjs +27 -0
- package/build/node_modules/mongoose/lib/connectionstate.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/cursor/AggregationCursor.js +384 -0
- package/build/node_modules/mongoose/lib/cursor/AggregationCursor.js.map +1 -0
- package/build/node_modules/mongoose/lib/cursor/AggregationCursor.mjs +377 -0
- package/build/node_modules/mongoose/lib/cursor/AggregationCursor.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/cursor/ChangeStream.js +70 -0
- package/build/node_modules/mongoose/lib/cursor/ChangeStream.js.map +1 -0
- package/build/node_modules/mongoose/lib/cursor/ChangeStream.mjs +64 -0
- package/build/node_modules/mongoose/lib/cursor/ChangeStream.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/cursor/QueryCursor.js +522 -0
- package/build/node_modules/mongoose/lib/cursor/QueryCursor.js.map +1 -0
- package/build/node_modules/mongoose/lib/cursor/QueryCursor.mjs +515 -0
- package/build/node_modules/mongoose/lib/cursor/QueryCursor.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/document.js +4305 -0
- package/build/node_modules/mongoose/lib/document.js.map +1 -0
- package/build/node_modules/mongoose/lib/document.mjs +4298 -0
- package/build/node_modules/mongoose/lib/document.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/document_provider.js +40 -0
- package/build/node_modules/mongoose/lib/document_provider.js.map +1 -0
- package/build/node_modules/mongoose/lib/document_provider.mjs +36 -0
- package/build/node_modules/mongoose/lib/document_provider.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/driver.js +27 -0
- package/build/node_modules/mongoose/lib/driver.js.map +1 -0
- package/build/node_modules/mongoose/lib/driver.mjs +22 -0
- package/build/node_modules/mongoose/lib/driver.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/ReadPreference.js +52 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/ReadPreference.js.map +1 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/ReadPreference.mjs +50 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/ReadPreference.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/binary.js +14 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/binary.js.map +1 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/binary.mjs +12 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/binary.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/collection.js +470 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/collection.js.map +1 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/collection.mjs +463 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/collection.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.js +219 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.js.map +1 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.mjs +217 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/decimal128.js +12 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/decimal128.js.map +1 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/decimal128.mjs +10 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/decimal128.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/index.js +39 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/index.js.map +1 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/index.mjs +30 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/index.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/objectid.js +18 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/objectid.js.map +1 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/objectid.mjs +16 -0
- package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/objectid.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/cast.js +161 -0
- package/build/node_modules/mongoose/lib/error/cast.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/cast.mjs +155 -0
- package/build/node_modules/mongoose/lib/error/cast.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/divergentArray.js +35 -0
- package/build/node_modules/mongoose/lib/error/divergentArray.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/divergentArray.mjs +33 -0
- package/build/node_modules/mongoose/lib/error/divergentArray.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/index.js +225 -0
- package/build/node_modules/mongoose/lib/error/index.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/index.mjs +223 -0
- package/build/node_modules/mongoose/lib/error/index.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/messages.js +32 -0
- package/build/node_modules/mongoose/lib/error/messages.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/messages.mjs +30 -0
- package/build/node_modules/mongoose/lib/error/messages.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/missingSchema.js +28 -0
- package/build/node_modules/mongoose/lib/error/missingSchema.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/missingSchema.mjs +26 -0
- package/build/node_modules/mongoose/lib/error/missingSchema.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/mongooseError.js +16 -0
- package/build/node_modules/mongoose/lib/error/mongooseError.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/mongooseError.mjs +14 -0
- package/build/node_modules/mongoose/lib/error/mongooseError.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/notFound.js +54 -0
- package/build/node_modules/mongoose/lib/error/notFound.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/notFound.mjs +48 -0
- package/build/node_modules/mongoose/lib/error/notFound.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/objectExpected.js +35 -0
- package/build/node_modules/mongoose/lib/error/objectExpected.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/objectExpected.mjs +33 -0
- package/build/node_modules/mongoose/lib/error/objectExpected.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/objectParameter.js +35 -0
- package/build/node_modules/mongoose/lib/error/objectParameter.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/objectParameter.mjs +33 -0
- package/build/node_modules/mongoose/lib/error/objectParameter.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/overwriteModel.js +26 -0
- package/build/node_modules/mongoose/lib/error/overwriteModel.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/overwriteModel.mjs +24 -0
- package/build/node_modules/mongoose/lib/error/overwriteModel.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/parallelSave.js +35 -0
- package/build/node_modules/mongoose/lib/error/parallelSave.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/parallelSave.mjs +33 -0
- package/build/node_modules/mongoose/lib/error/parallelSave.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/parallelValidate.js +36 -0
- package/build/node_modules/mongoose/lib/error/parallelValidate.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/parallelValidate.mjs +34 -0
- package/build/node_modules/mongoose/lib/error/parallelValidate.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/serverSelection.js +69 -0
- package/build/node_modules/mongoose/lib/error/serverSelection.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/serverSelection.mjs +67 -0
- package/build/node_modules/mongoose/lib/error/serverSelection.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/strict.js +38 -0
- package/build/node_modules/mongoose/lib/error/strict.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/strict.mjs +36 -0
- package/build/node_modules/mongoose/lib/error/strict.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/validation.js +121 -0
- package/build/node_modules/mongoose/lib/error/validation.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/validation.mjs +115 -0
- package/build/node_modules/mongoose/lib/error/validation.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/validator.js +99 -0
- package/build/node_modules/mongoose/lib/error/validator.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/validator.mjs +97 -0
- package/build/node_modules/mongoose/lib/error/validator.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/error/version.js +41 -0
- package/build/node_modules/mongoose/lib/error/version.js.map +1 -0
- package/build/node_modules/mongoose/lib/error/version.mjs +39 -0
- package/build/node_modules/mongoose/lib/error/version.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/aggregate/stringifyFunctionOperators.js +53 -0
- package/build/node_modules/mongoose/lib/helpers/aggregate/stringifyFunctionOperators.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/aggregate/stringifyFunctionOperators.mjs +51 -0
- package/build/node_modules/mongoose/lib/helpers/aggregate/stringifyFunctionOperators.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/arrayDepth.js +36 -0
- package/build/node_modules/mongoose/lib/helpers/arrayDepth.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/arrayDepth.mjs +34 -0
- package/build/node_modules/mongoose/lib/helpers/arrayDepth.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/clone.js +141 -0
- package/build/node_modules/mongoose/lib/helpers/clone.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/clone.mjs +139 -0
- package/build/node_modules/mongoose/lib/helpers/clone.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/common.js +123 -0
- package/build/node_modules/mongoose/lib/helpers/common.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/common.mjs +118 -0
- package/build/node_modules/mongoose/lib/helpers/common.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/cursor/eachAsync.js +163 -0
- package/build/node_modules/mongoose/lib/helpers/cursor/eachAsync.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/cursor/eachAsync.mjs +161 -0
- package/build/node_modules/mongoose/lib/helpers/cursor/eachAsync.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/areDiscriminatorValuesEqual.js +19 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/areDiscriminatorValuesEqual.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/areDiscriminatorValuesEqual.mjs +17 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/areDiscriminatorValuesEqual.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/checkEmbeddedDiscriminatorKeyProjection.js +15 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/checkEmbeddedDiscriminatorKeyProjection.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/checkEmbeddedDiscriminatorKeyProjection.mjs +13 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/checkEmbeddedDiscriminatorKeyProjection.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/getConstructor.js +28 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/getConstructor.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/getConstructor.mjs +26 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/getConstructor.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/getDiscriminatorByValue.js +30 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/getDiscriminatorByValue.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/getDiscriminatorByValue.mjs +28 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/getDiscriminatorByValue.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/getSchemaDiscriminatorByValue.js +29 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/getSchemaDiscriminatorByValue.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/getSchemaDiscriminatorByValue.mjs +27 -0
- package/build/node_modules/mongoose/lib/helpers/discriminator/getSchemaDiscriminatorByValue.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/document/cleanModifiedSubpaths.js +31 -0
- package/build/node_modules/mongoose/lib/helpers/document/cleanModifiedSubpaths.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/document/cleanModifiedSubpaths.mjs +29 -0
- package/build/node_modules/mongoose/lib/helpers/document/cleanModifiedSubpaths.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/document/compile.js +229 -0
- package/build/node_modules/mongoose/lib/helpers/document/compile.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/document/compile.mjs +224 -0
- package/build/node_modules/mongoose/lib/helpers/document/compile.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/document/getEmbeddedDiscriminatorPath.js +46 -0
- package/build/node_modules/mongoose/lib/helpers/document/getEmbeddedDiscriminatorPath.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/document/getEmbeddedDiscriminatorPath.mjs +44 -0
- package/build/node_modules/mongoose/lib/helpers/document/getEmbeddedDiscriminatorPath.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/document/handleSpreadDoc.js +20 -0
- package/build/node_modules/mongoose/lib/helpers/document/handleSpreadDoc.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/document/handleSpreadDoc.mjs +18 -0
- package/build/node_modules/mongoose/lib/helpers/document/handleSpreadDoc.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/each.js +28 -0
- package/build/node_modules/mongoose/lib/helpers/each.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/each.mjs +26 -0
- package/build/node_modules/mongoose/lib/helpers/each.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/get.js +67 -0
- package/build/node_modules/mongoose/lib/helpers/get.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/get.mjs +65 -0
- package/build/node_modules/mongoose/lib/helpers/get.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/getDefaultBulkwriteResult.js +31 -0
- package/build/node_modules/mongoose/lib/helpers/getDefaultBulkwriteResult.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/getDefaultBulkwriteResult.mjs +29 -0
- package/build/node_modules/mongoose/lib/helpers/getDefaultBulkwriteResult.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/getFunctionName.js +11 -0
- package/build/node_modules/mongoose/lib/helpers/getFunctionName.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/getFunctionName.mjs +9 -0
- package/build/node_modules/mongoose/lib/helpers/getFunctionName.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/immediate.js +17 -0
- package/build/node_modules/mongoose/lib/helpers/immediate.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/immediate.mjs +15 -0
- package/build/node_modules/mongoose/lib/helpers/immediate.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/indexes/isDefaultIdIndex.js +21 -0
- package/build/node_modules/mongoose/lib/helpers/indexes/isDefaultIdIndex.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/indexes/isDefaultIdIndex.mjs +19 -0
- package/build/node_modules/mongoose/lib/helpers/indexes/isDefaultIdIndex.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/indexes/isIndexEqual.js +98 -0
- package/build/node_modules/mongoose/lib/helpers/indexes/isIndexEqual.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/indexes/isIndexEqual.mjs +96 -0
- package/build/node_modules/mongoose/lib/helpers/indexes/isIndexEqual.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/isBsonType.js +16 -0
- package/build/node_modules/mongoose/lib/helpers/isBsonType.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/isBsonType.mjs +14 -0
- package/build/node_modules/mongoose/lib/helpers/isBsonType.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/isMongooseObject.js +24 -0
- package/build/node_modules/mongoose/lib/helpers/isMongooseObject.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/isMongooseObject.mjs +22 -0
- package/build/node_modules/mongoose/lib/helpers/isMongooseObject.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/isObject.js +19 -0
- package/build/node_modules/mongoose/lib/helpers/isObject.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/isObject.mjs +17 -0
- package/build/node_modules/mongoose/lib/helpers/isObject.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/isPromise.js +10 -0
- package/build/node_modules/mongoose/lib/helpers/isPromise.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/isPromise.mjs +8 -0
- package/build/node_modules/mongoose/lib/helpers/isPromise.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/model/applyHooks.js +141 -0
- package/build/node_modules/mongoose/lib/helpers/model/applyHooks.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/model/applyHooks.mjs +139 -0
- package/build/node_modules/mongoose/lib/helpers/model/applyHooks.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/model/applyMethods.js +59 -0
- package/build/node_modules/mongoose/lib/helpers/model/applyMethods.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/model/applyMethods.mjs +57 -0
- package/build/node_modules/mongoose/lib/helpers/model/applyMethods.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/model/applyStaticHooks.js +77 -0
- package/build/node_modules/mongoose/lib/helpers/model/applyStaticHooks.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/model/applyStaticHooks.mjs +75 -0
- package/build/node_modules/mongoose/lib/helpers/model/applyStaticHooks.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/model/applyStatics.js +15 -0
- package/build/node_modules/mongoose/lib/helpers/model/applyStatics.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/model/applyStatics.mjs +13 -0
- package/build/node_modules/mongoose/lib/helpers/model/applyStatics.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/model/castBulkWrite.js +227 -0
- package/build/node_modules/mongoose/lib/helpers/model/castBulkWrite.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/model/castBulkWrite.mjs +225 -0
- package/build/node_modules/mongoose/lib/helpers/model/castBulkWrite.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/model/discriminator.js +212 -0
- package/build/node_modules/mongoose/lib/helpers/model/discriminator.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/model/discriminator.mjs +210 -0
- package/build/node_modules/mongoose/lib/helpers/model/discriminator.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/parallelLimit.js +58 -0
- package/build/node_modules/mongoose/lib/helpers/parallelLimit.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/parallelLimit.mjs +56 -0
- package/build/node_modules/mongoose/lib/helpers/parallelLimit.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/path/parentPaths.js +16 -0
- package/build/node_modules/mongoose/lib/helpers/path/parentPaths.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/path/parentPaths.mjs +14 -0
- package/build/node_modules/mongoose/lib/helpers/path/parentPaths.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/path/setDottedPath.js +19 -0
- package/build/node_modules/mongoose/lib/helpers/path/setDottedPath.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/path/setDottedPath.mjs +17 -0
- package/build/node_modules/mongoose/lib/helpers/path/setDottedPath.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/SkipPopulateValue.js +13 -0
- package/build/node_modules/mongoose/lib/helpers/populate/SkipPopulateValue.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/SkipPopulateValue.mjs +11 -0
- package/build/node_modules/mongoose/lib/helpers/populate/SkipPopulateValue.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/assignRawDocsToIdStructure.js +104 -0
- package/build/node_modules/mongoose/lib/helpers/populate/assignRawDocsToIdStructure.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/assignRawDocsToIdStructure.mjs +102 -0
- package/build/node_modules/mongoose/lib/helpers/populate/assignRawDocsToIdStructure.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/assignVals.js +291 -0
- package/build/node_modules/mongoose/lib/helpers/populate/assignVals.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/assignVals.mjs +289 -0
- package/build/node_modules/mongoose/lib/helpers/populate/assignVals.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/createPopulateQueryFilter.js +82 -0
- package/build/node_modules/mongoose/lib/helpers/populate/createPopulateQueryFilter.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/createPopulateQueryFilter.mjs +80 -0
- package/build/node_modules/mongoose/lib/helpers/populate/createPopulateQueryFilter.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/getModelsMapForPopulate.js +550 -0
- package/build/node_modules/mongoose/lib/helpers/populate/getModelsMapForPopulate.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/getModelsMapForPopulate.mjs +544 -0
- package/build/node_modules/mongoose/lib/helpers/populate/getModelsMapForPopulate.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/getSchemaTypes.js +218 -0
- package/build/node_modules/mongoose/lib/helpers/populate/getSchemaTypes.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/getSchemaTypes.mjs +216 -0
- package/build/node_modules/mongoose/lib/helpers/populate/getSchemaTypes.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/getVirtual.js +75 -0
- package/build/node_modules/mongoose/lib/helpers/populate/getVirtual.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/getVirtual.mjs +73 -0
- package/build/node_modules/mongoose/lib/helpers/populate/getVirtual.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/leanPopulateMap.js +10 -0
- package/build/node_modules/mongoose/lib/helpers/populate/leanPopulateMap.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/leanPopulateMap.mjs +8 -0
- package/build/node_modules/mongoose/lib/helpers/populate/leanPopulateMap.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/lookupLocalFields.js +31 -0
- package/build/node_modules/mongoose/lib/helpers/populate/lookupLocalFields.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/lookupLocalFields.mjs +29 -0
- package/build/node_modules/mongoose/lib/helpers/populate/lookupLocalFields.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/normalizeRefPath.js +48 -0
- package/build/node_modules/mongoose/lib/helpers/populate/normalizeRefPath.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/normalizeRefPath.mjs +46 -0
- package/build/node_modules/mongoose/lib/helpers/populate/normalizeRefPath.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/removeDeselectedForeignField.js +34 -0
- package/build/node_modules/mongoose/lib/helpers/populate/removeDeselectedForeignField.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/removeDeselectedForeignField.mjs +32 -0
- package/build/node_modules/mongoose/lib/helpers/populate/removeDeselectedForeignField.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/validateRef.js +26 -0
- package/build/node_modules/mongoose/lib/helpers/populate/validateRef.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/populate/validateRef.mjs +20 -0
- package/build/node_modules/mongoose/lib/helpers/populate/validateRef.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/printJestWarning.js +16 -0
- package/build/node_modules/mongoose/lib/helpers/printJestWarning.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/printJestWarning.mjs +14 -0
- package/build/node_modules/mongoose/lib/helpers/printJestWarning.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isDefiningProjection.js +21 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isDefiningProjection.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isDefiningProjection.mjs +19 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isDefiningProjection.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isExclusive.js +35 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isExclusive.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isExclusive.mjs +33 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isExclusive.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isInclusive.js +37 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isInclusive.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isInclusive.mjs +35 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isInclusive.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isPathExcluded.js +38 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isPathExcluded.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isPathExcluded.mjs +36 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isPathExcluded.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isPathSelectedInclusive.js +31 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isPathSelectedInclusive.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isPathSelectedInclusive.mjs +29 -0
- package/build/node_modules/mongoose/lib/helpers/projection/isPathSelectedInclusive.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/projection/parseProjection.js +36 -0
- package/build/node_modules/mongoose/lib/helpers/projection/parseProjection.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/projection/parseProjection.mjs +34 -0
- package/build/node_modules/mongoose/lib/helpers/projection/parseProjection.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/promiseOrCallback.js +49 -0
- package/build/node_modules/mongoose/lib/helpers/promiseOrCallback.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/promiseOrCallback.mjs +47 -0
- package/build/node_modules/mongoose/lib/helpers/promiseOrCallback.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/applyGlobalMaxTimeMS.js +18 -0
- package/build/node_modules/mongoose/lib/helpers/query/applyGlobalMaxTimeMS.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/applyGlobalMaxTimeMS.mjs +16 -0
- package/build/node_modules/mongoose/lib/helpers/query/applyGlobalMaxTimeMS.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/applyQueryMiddleware.js +96 -0
- package/build/node_modules/mongoose/lib/helpers/query/applyQueryMiddleware.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/applyQueryMiddleware.mjs +94 -0
- package/build/node_modules/mongoose/lib/helpers/query/applyQueryMiddleware.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/castFilterPath.js +58 -0
- package/build/node_modules/mongoose/lib/helpers/query/castFilterPath.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/castFilterPath.mjs +56 -0
- package/build/node_modules/mongoose/lib/helpers/query/castFilterPath.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/castUpdate.js +561 -0
- package/build/node_modules/mongoose/lib/helpers/query/castUpdate.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/castUpdate.mjs +559 -0
- package/build/node_modules/mongoose/lib/helpers/query/castUpdate.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/completeMany.js +54 -0
- package/build/node_modules/mongoose/lib/helpers/query/completeMany.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/completeMany.mjs +52 -0
- package/build/node_modules/mongoose/lib/helpers/query/completeMany.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/getEmbeddedDiscriminatorPath.js +87 -0
- package/build/node_modules/mongoose/lib/helpers/query/getEmbeddedDiscriminatorPath.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/getEmbeddedDiscriminatorPath.mjs +85 -0
- package/build/node_modules/mongoose/lib/helpers/query/getEmbeddedDiscriminatorPath.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/handleImmutable.js +31 -0
- package/build/node_modules/mongoose/lib/helpers/query/handleImmutable.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/handleImmutable.mjs +29 -0
- package/build/node_modules/mongoose/lib/helpers/query/handleImmutable.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/hasDollarKeys.js +22 -0
- package/build/node_modules/mongoose/lib/helpers/query/hasDollarKeys.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/hasDollarKeys.mjs +20 -0
- package/build/node_modules/mongoose/lib/helpers/query/hasDollarKeys.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/isOperator.js +14 -0
- package/build/node_modules/mongoose/lib/helpers/query/isOperator.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/isOperator.mjs +12 -0
- package/build/node_modules/mongoose/lib/helpers/query/isOperator.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/sanitizeProjection.js +17 -0
- package/build/node_modules/mongoose/lib/helpers/query/sanitizeProjection.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/sanitizeProjection.mjs +15 -0
- package/build/node_modules/mongoose/lib/helpers/query/sanitizeProjection.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/selectPopulatedFields.js +52 -0
- package/build/node_modules/mongoose/lib/helpers/query/selectPopulatedFields.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/selectPopulatedFields.mjs +50 -0
- package/build/node_modules/mongoose/lib/helpers/query/selectPopulatedFields.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/wrapThunk.js +21 -0
- package/build/node_modules/mongoose/lib/helpers/query/wrapThunk.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/query/wrapThunk.mjs +19 -0
- package/build/node_modules/mongoose/lib/helpers/query/wrapThunk.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/addAutoId.js +10 -0
- package/build/node_modules/mongoose/lib/helpers/schema/addAutoId.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/addAutoId.mjs +8 -0
- package/build/node_modules/mongoose/lib/helpers/schema/addAutoId.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/applyPlugins.js +47 -0
- package/build/node_modules/mongoose/lib/helpers/schema/applyPlugins.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/applyPlugins.mjs +45 -0
- package/build/node_modules/mongoose/lib/helpers/schema/applyPlugins.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/applyWriteConcern.js +33 -0
- package/build/node_modules/mongoose/lib/helpers/schema/applyWriteConcern.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/applyWriteConcern.mjs +31 -0
- package/build/node_modules/mongoose/lib/helpers/schema/applyWriteConcern.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/cleanPositionalOperators.js +15 -0
- package/build/node_modules/mongoose/lib/helpers/schema/cleanPositionalOperators.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/cleanPositionalOperators.mjs +13 -0
- package/build/node_modules/mongoose/lib/helpers/schema/cleanPositionalOperators.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/getIndexes.js +158 -0
- package/build/node_modules/mongoose/lib/helpers/schema/getIndexes.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/getIndexes.mjs +156 -0
- package/build/node_modules/mongoose/lib/helpers/schema/getIndexes.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/getPath.js +38 -0
- package/build/node_modules/mongoose/lib/helpers/schema/getPath.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/getPath.mjs +36 -0
- package/build/node_modules/mongoose/lib/helpers/schema/getPath.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/handleIdOption.js +23 -0
- package/build/node_modules/mongoose/lib/helpers/schema/handleIdOption.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/handleIdOption.mjs +21 -0
- package/build/node_modules/mongoose/lib/helpers/schema/handleIdOption.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/handleTimestampOption.js +27 -0
- package/build/node_modules/mongoose/lib/helpers/schema/handleTimestampOption.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/handleTimestampOption.mjs +25 -0
- package/build/node_modules/mongoose/lib/helpers/schema/handleTimestampOption.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/merge.js +30 -0
- package/build/node_modules/mongoose/lib/helpers/schema/merge.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schema/merge.mjs +28 -0
- package/build/node_modules/mongoose/lib/helpers/schema/merge.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schematype/handleImmutable.js +48 -0
- package/build/node_modules/mongoose/lib/helpers/schematype/handleImmutable.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/schematype/handleImmutable.mjs +46 -0
- package/build/node_modules/mongoose/lib/helpers/schematype/handleImmutable.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/setDefaultsOnInsert.js +134 -0
- package/build/node_modules/mongoose/lib/helpers/setDefaultsOnInsert.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/setDefaultsOnInsert.mjs +132 -0
- package/build/node_modules/mongoose/lib/helpers/setDefaultsOnInsert.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/specialProperties.js +6 -0
- package/build/node_modules/mongoose/lib/helpers/specialProperties.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/specialProperties.mjs +4 -0
- package/build/node_modules/mongoose/lib/helpers/specialProperties.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/symbols.js +61 -0
- package/build/node_modules/mongoose/lib/helpers/symbols.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/symbols.mjs +41 -0
- package/build/node_modules/mongoose/lib/helpers/symbols.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/timers.js +13 -0
- package/build/node_modules/mongoose/lib/helpers/timers.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/timers.mjs +9 -0
- package/build/node_modules/mongoose/lib/helpers/timers.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/timestamps/setupTimestamps.js +114 -0
- package/build/node_modules/mongoose/lib/helpers/timestamps/setupTimestamps.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/timestamps/setupTimestamps.mjs +112 -0
- package/build/node_modules/mongoose/lib/helpers/timestamps/setupTimestamps.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/topology/allServersUnknown.js +14 -0
- package/build/node_modules/mongoose/lib/helpers/topology/allServersUnknown.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/topology/allServersUnknown.mjs +12 -0
- package/build/node_modules/mongoose/lib/helpers/topology/allServersUnknown.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/topology/isAtlas.js +15 -0
- package/build/node_modules/mongoose/lib/helpers/topology/isAtlas.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/topology/isAtlas.mjs +13 -0
- package/build/node_modules/mongoose/lib/helpers/topology/isAtlas.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/topology/isSSLError.js +18 -0
- package/build/node_modules/mongoose/lib/helpers/topology/isSSLError.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/topology/isSSLError.mjs +16 -0
- package/build/node_modules/mongoose/lib/helpers/topology/isSSLError.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/update/applyTimestampsToChildren.js +175 -0
- package/build/node_modules/mongoose/lib/helpers/update/applyTimestampsToChildren.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/update/applyTimestampsToChildren.mjs +173 -0
- package/build/node_modules/mongoose/lib/helpers/update/applyTimestampsToChildren.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/update/applyTimestampsToUpdate.js +124 -0
- package/build/node_modules/mongoose/lib/helpers/update/applyTimestampsToUpdate.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/update/applyTimestampsToUpdate.mjs +122 -0
- package/build/node_modules/mongoose/lib/helpers/update/applyTimestampsToUpdate.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/update/castArrayFilters.js +63 -0
- package/build/node_modules/mongoose/lib/helpers/update/castArrayFilters.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/update/castArrayFilters.mjs +61 -0
- package/build/node_modules/mongoose/lib/helpers/update/castArrayFilters.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/update/modifiedPaths.js +38 -0
- package/build/node_modules/mongoose/lib/helpers/update/modifiedPaths.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/update/modifiedPaths.mjs +36 -0
- package/build/node_modules/mongoose/lib/helpers/update/modifiedPaths.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/update/moveImmutableProperties.js +56 -0
- package/build/node_modules/mongoose/lib/helpers/update/moveImmutableProperties.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/update/moveImmutableProperties.mjs +54 -0
- package/build/node_modules/mongoose/lib/helpers/update/moveImmutableProperties.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/update/removeUnusedArrayFilters.js +21 -0
- package/build/node_modules/mongoose/lib/helpers/update/removeUnusedArrayFilters.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/update/removeUnusedArrayFilters.mjs +19 -0
- package/build/node_modules/mongoose/lib/helpers/update/removeUnusedArrayFilters.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/update/updatedPathsByArrayFilter.js +27 -0
- package/build/node_modules/mongoose/lib/helpers/update/updatedPathsByArrayFilter.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/update/updatedPathsByArrayFilter.mjs +25 -0
- package/build/node_modules/mongoose/lib/helpers/update/updatedPathsByArrayFilter.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/updateValidators.js +263 -0
- package/build/node_modules/mongoose/lib/helpers/updateValidators.js.map +1 -0
- package/build/node_modules/mongoose/lib/helpers/updateValidators.mjs +261 -0
- package/build/node_modules/mongoose/lib/helpers/updateValidators.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/index.js +1208 -0
- package/build/node_modules/mongoose/lib/index.js.map +1 -0
- package/build/node_modules/mongoose/lib/index.mjs +1201 -0
- package/build/node_modules/mongoose/lib/index.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/internal.js +47 -0
- package/build/node_modules/mongoose/lib/internal.js.map +1 -0
- package/build/node_modules/mongoose/lib/internal.mjs +45 -0
- package/build/node_modules/mongoose/lib/internal.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/model.js +5089 -0
- package/build/node_modules/mongoose/lib/model.js.map +1 -0
- package/build/node_modules/mongoose/lib/model.mjs +5082 -0
- package/build/node_modules/mongoose/lib/model.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/options/PopulateOptions.js +39 -0
- package/build/node_modules/mongoose/lib/options/PopulateOptions.js.map +1 -0
- package/build/node_modules/mongoose/lib/options/PopulateOptions.mjs +37 -0
- package/build/node_modules/mongoose/lib/options/PopulateOptions.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaArrayOptions.js +63 -0
- package/build/node_modules/mongoose/lib/options/SchemaArrayOptions.js.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaArrayOptions.mjs +61 -0
- package/build/node_modules/mongoose/lib/options/SchemaArrayOptions.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaBufferOptions.js +42 -0
- package/build/node_modules/mongoose/lib/options/SchemaBufferOptions.js.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaBufferOptions.mjs +40 -0
- package/build/node_modules/mongoose/lib/options/SchemaBufferOptions.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaDateOptions.js +68 -0
- package/build/node_modules/mongoose/lib/options/SchemaDateOptions.js.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaDateOptions.mjs +66 -0
- package/build/node_modules/mongoose/lib/options/SchemaDateOptions.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaDocumentArrayOptions.js +72 -0
- package/build/node_modules/mongoose/lib/options/SchemaDocumentArrayOptions.js.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaDocumentArrayOptions.mjs +70 -0
- package/build/node_modules/mongoose/lib/options/SchemaDocumentArrayOptions.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaMapOptions.js +47 -0
- package/build/node_modules/mongoose/lib/options/SchemaMapOptions.js.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaMapOptions.mjs +45 -0
- package/build/node_modules/mongoose/lib/options/SchemaMapOptions.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaNumberOptions.js +103 -0
- package/build/node_modules/mongoose/lib/options/SchemaNumberOptions.js.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaNumberOptions.mjs +101 -0
- package/build/node_modules/mongoose/lib/options/SchemaNumberOptions.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaObjectIdOptions.js +67 -0
- package/build/node_modules/mongoose/lib/options/SchemaObjectIdOptions.js.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaObjectIdOptions.mjs +65 -0
- package/build/node_modules/mongoose/lib/options/SchemaObjectIdOptions.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaSingleNestedOptions.js +46 -0
- package/build/node_modules/mongoose/lib/options/SchemaSingleNestedOptions.js.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaSingleNestedOptions.mjs +44 -0
- package/build/node_modules/mongoose/lib/options/SchemaSingleNestedOptions.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaStringOptions.js +142 -0
- package/build/node_modules/mongoose/lib/options/SchemaStringOptions.js.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaStringOptions.mjs +140 -0
- package/build/node_modules/mongoose/lib/options/SchemaStringOptions.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaTypeOptions.js +235 -0
- package/build/node_modules/mongoose/lib/options/SchemaTypeOptions.js.map +1 -0
- package/build/node_modules/mongoose/lib/options/SchemaTypeOptions.mjs +233 -0
- package/build/node_modules/mongoose/lib/options/SchemaTypeOptions.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/options/VirtualOptions.js +167 -0
- package/build/node_modules/mongoose/lib/options/VirtualOptions.js.map +1 -0
- package/build/node_modules/mongoose/lib/options/VirtualOptions.mjs +165 -0
- package/build/node_modules/mongoose/lib/options/VirtualOptions.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/options/propertyOptions.js +11 -0
- package/build/node_modules/mongoose/lib/options/propertyOptions.js.map +1 -0
- package/build/node_modules/mongoose/lib/options/propertyOptions.mjs +9 -0
- package/build/node_modules/mongoose/lib/options/propertyOptions.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/options/removeOptions.js +17 -0
- package/build/node_modules/mongoose/lib/options/removeOptions.js.map +1 -0
- package/build/node_modules/mongoose/lib/options/removeOptions.mjs +15 -0
- package/build/node_modules/mongoose/lib/options/removeOptions.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/options/saveOptions.js +17 -0
- package/build/node_modules/mongoose/lib/options/saveOptions.js.map +1 -0
- package/build/node_modules/mongoose/lib/options/saveOptions.mjs +15 -0
- package/build/node_modules/mongoose/lib/options/saveOptions.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/options.js +25 -0
- package/build/node_modules/mongoose/lib/options.js.map +1 -0
- package/build/node_modules/mongoose/lib/options.mjs +21 -0
- package/build/node_modules/mongoose/lib/options.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/plugins/idGetter.js +31 -0
- package/build/node_modules/mongoose/lib/plugins/idGetter.js.map +1 -0
- package/build/node_modules/mongoose/lib/plugins/idGetter.mjs +29 -0
- package/build/node_modules/mongoose/lib/plugins/idGetter.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/plugins/removeSubdocs.js +34 -0
- package/build/node_modules/mongoose/lib/plugins/removeSubdocs.js.map +1 -0
- package/build/node_modules/mongoose/lib/plugins/removeSubdocs.mjs +32 -0
- package/build/node_modules/mongoose/lib/plugins/removeSubdocs.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/plugins/saveSubdocs.js +69 -0
- package/build/node_modules/mongoose/lib/plugins/saveSubdocs.js.map +1 -0
- package/build/node_modules/mongoose/lib/plugins/saveSubdocs.mjs +67 -0
- package/build/node_modules/mongoose/lib/plugins/saveSubdocs.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/plugins/sharding.js +93 -0
- package/build/node_modules/mongoose/lib/plugins/sharding.js.map +1 -0
- package/build/node_modules/mongoose/lib/plugins/sharding.mjs +89 -0
- package/build/node_modules/mongoose/lib/plugins/sharding.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/plugins/trackTransaction.js +96 -0
- package/build/node_modules/mongoose/lib/plugins/trackTransaction.js.map +1 -0
- package/build/node_modules/mongoose/lib/plugins/trackTransaction.mjs +94 -0
- package/build/node_modules/mongoose/lib/plugins/trackTransaction.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/plugins/validateBeforeSave.js +48 -0
- package/build/node_modules/mongoose/lib/plugins/validateBeforeSave.js.map +1 -0
- package/build/node_modules/mongoose/lib/plugins/validateBeforeSave.mjs +46 -0
- package/build/node_modules/mongoose/lib/plugins/validateBeforeSave.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/promise_provider.js +60 -0
- package/build/node_modules/mongoose/lib/promise_provider.js.map +1 -0
- package/build/node_modules/mongoose/lib/promise_provider.mjs +54 -0
- package/build/node_modules/mongoose/lib/promise_provider.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/query.js +5588 -0
- package/build/node_modules/mongoose/lib/query.js.map +1 -0
- package/build/node_modules/mongoose/lib/query.mjs +5582 -0
- package/build/node_modules/mongoose/lib/query.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/queryhelpers.js +341 -0
- package/build/node_modules/mongoose/lib/queryhelpers.js.map +1 -0
- package/build/node_modules/mongoose/lib/queryhelpers.mjs +339 -0
- package/build/node_modules/mongoose/lib/queryhelpers.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/SingleNestedPath.js +358 -0
- package/build/node_modules/mongoose/lib/schema/SingleNestedPath.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/SingleNestedPath.mjs +352 -0
- package/build/node_modules/mongoose/lib/schema/SingleNestedPath.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/array.js +676 -0
- package/build/node_modules/mongoose/lib/schema/array.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/array.mjs +670 -0
- package/build/node_modules/mongoose/lib/schema/array.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/boolean.js +278 -0
- package/build/node_modules/mongoose/lib/schema/boolean.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/boolean.mjs +276 -0
- package/build/node_modules/mongoose/lib/schema/boolean.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/buffer.js +276 -0
- package/build/node_modules/mongoose/lib/schema/buffer.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/buffer.mjs +274 -0
- package/build/node_modules/mongoose/lib/schema/buffer.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/date.js +411 -0
- package/build/node_modules/mongoose/lib/schema/date.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/date.mjs +409 -0
- package/build/node_modules/mongoose/lib/schema/date.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/decimal128.js +218 -0
- package/build/node_modules/mongoose/lib/schema/decimal128.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/decimal128.mjs +216 -0
- package/build/node_modules/mongoose/lib/schema/decimal128.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/documentarray.js +591 -0
- package/build/node_modules/mongoose/lib/schema/documentarray.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/documentarray.mjs +584 -0
- package/build/node_modules/mongoose/lib/schema/documentarray.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/index.js +52 -0
- package/build/node_modules/mongoose/lib/schema/index.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/index.mjs +50 -0
- package/build/node_modules/mongoose/lib/schema/index.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/map.js +84 -0
- package/build/node_modules/mongoose/lib/schema/map.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/map.mjs +82 -0
- package/build/node_modules/mongoose/lib/schema/map.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/mixed.js +140 -0
- package/build/node_modules/mongoose/lib/schema/mixed.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/mixed.mjs +138 -0
- package/build/node_modules/mongoose/lib/schema/mixed.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/number.js +443 -0
- package/build/node_modules/mongoose/lib/schema/number.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/number.mjs +441 -0
- package/build/node_modules/mongoose/lib/schema/number.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/objectid.js +307 -0
- package/build/node_modules/mongoose/lib/schema/objectid.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/objectid.mjs +305 -0
- package/build/node_modules/mongoose/lib/schema/objectid.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/operators/bitwise.js +43 -0
- package/build/node_modules/mongoose/lib/schema/operators/bitwise.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/operators/bitwise.mjs +41 -0
- package/build/node_modules/mongoose/lib/schema/operators/bitwise.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/operators/exists.js +15 -0
- package/build/node_modules/mongoose/lib/schema/operators/exists.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/operators/exists.mjs +13 -0
- package/build/node_modules/mongoose/lib/schema/operators/exists.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/operators/geospatial.js +121 -0
- package/build/node_modules/mongoose/lib/schema/operators/geospatial.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/operators/geospatial.mjs +115 -0
- package/build/node_modules/mongoose/lib/schema/operators/geospatial.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/operators/helpers.js +46 -0
- package/build/node_modules/mongoose/lib/schema/operators/helpers.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/operators/helpers.mjs +41 -0
- package/build/node_modules/mongoose/lib/schema/operators/helpers.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/operators/text.js +42 -0
- package/build/node_modules/mongoose/lib/schema/operators/text.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/operators/text.mjs +40 -0
- package/build/node_modules/mongoose/lib/schema/operators/text.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/operators/type.js +23 -0
- package/build/node_modules/mongoose/lib/schema/operators/type.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/operators/type.mjs +21 -0
- package/build/node_modules/mongoose/lib/schema/operators/type.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/string.js +681 -0
- package/build/node_modules/mongoose/lib/schema/string.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/string.mjs +679 -0
- package/build/node_modules/mongoose/lib/schema/string.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema/symbols.js +17 -0
- package/build/node_modules/mongoose/lib/schema/symbols.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema/symbols.mjs +12 -0
- package/build/node_modules/mongoose/lib/schema/symbols.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schema.js +2205 -0
- package/build/node_modules/mongoose/lib/schema.js.map +1 -0
- package/build/node_modules/mongoose/lib/schema.mjs +2198 -0
- package/build/node_modules/mongoose/lib/schema.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/schematype.js +1694 -0
- package/build/node_modules/mongoose/lib/schematype.js.map +1 -0
- package/build/node_modules/mongoose/lib/schematype.mjs +1688 -0
- package/build/node_modules/mongoose/lib/schematype.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/statemachine.js +184 -0
- package/build/node_modules/mongoose/lib/statemachine.js.map +1 -0
- package/build/node_modules/mongoose/lib/statemachine.mjs +182 -0
- package/build/node_modules/mongoose/lib/statemachine.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/types/array.js +91 -0
- package/build/node_modules/mongoose/lib/types/array.js.map +1 -0
- package/build/node_modules/mongoose/lib/types/array.mjs +89 -0
- package/build/node_modules/mongoose/lib/types/array.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/types/buffer.js +283 -0
- package/build/node_modules/mongoose/lib/types/buffer.js.map +1 -0
- package/build/node_modules/mongoose/lib/types/buffer.mjs +281 -0
- package/build/node_modules/mongoose/lib/types/buffer.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/types/core_array.js +982 -0
- package/build/node_modules/mongoose/lib/types/core_array.js.map +1 -0
- package/build/node_modules/mongoose/lib/types/core_array.mjs +976 -0
- package/build/node_modules/mongoose/lib/types/core_array.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/types/decimal128.js +18 -0
- package/build/node_modules/mongoose/lib/types/decimal128.js.map +1 -0
- package/build/node_modules/mongoose/lib/types/decimal128.mjs +16 -0
- package/build/node_modules/mongoose/lib/types/decimal128.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/types/documentarray.js +462 -0
- package/build/node_modules/mongoose/lib/types/documentarray.js.map +1 -0
- package/build/node_modules/mongoose/lib/types/documentarray.mjs +456 -0
- package/build/node_modules/mongoose/lib/types/documentarray.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/types/embedded.js +474 -0
- package/build/node_modules/mongoose/lib/types/embedded.js.map +1 -0
- package/build/node_modules/mongoose/lib/types/embedded.mjs +467 -0
- package/build/node_modules/mongoose/lib/types/embedded.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/types/index.js +31 -0
- package/build/node_modules/mongoose/lib/types/index.js.map +1 -0
- package/build/node_modules/mongoose/lib/types/index.mjs +29 -0
- package/build/node_modules/mongoose/lib/types/index.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/types/map.js +252 -0
- package/build/node_modules/mongoose/lib/types/map.js.map +1 -0
- package/build/node_modules/mongoose/lib/types/map.mjs +246 -0
- package/build/node_modules/mongoose/lib/types/map.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/types/objectid.js +36 -0
- package/build/node_modules/mongoose/lib/types/objectid.js.map +1 -0
- package/build/node_modules/mongoose/lib/types/objectid.mjs +34 -0
- package/build/node_modules/mongoose/lib/types/objectid.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/types/subdocument.js +308 -0
- package/build/node_modules/mongoose/lib/types/subdocument.js.map +1 -0
- package/build/node_modules/mongoose/lib/types/subdocument.mjs +306 -0
- package/build/node_modules/mongoose/lib/types/subdocument.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/utils.js +962 -0
- package/build/node_modules/mongoose/lib/utils.js.map +1 -0
- package/build/node_modules/mongoose/lib/utils.mjs +960 -0
- package/build/node_modules/mongoose/lib/utils.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/validoptions.js +39 -0
- package/build/node_modules/mongoose/lib/validoptions.js.map +1 -0
- package/build/node_modules/mongoose/lib/validoptions.mjs +37 -0
- package/build/node_modules/mongoose/lib/validoptions.mjs.map +1 -0
- package/build/node_modules/mongoose/lib/virtualtype.js +179 -0
- package/build/node_modules/mongoose/lib/virtualtype.js.map +1 -0
- package/build/node_modules/mongoose/lib/virtualtype.mjs +177 -0
- package/build/node_modules/mongoose/lib/virtualtype.mjs.map +1 -0
- package/build/node_modules/mongoose/node_modules/safe-buffer/index.js +80 -0
- package/build/node_modules/mongoose/node_modules/safe-buffer/index.js.map +1 -0
- package/build/node_modules/mongoose/node_modules/safe-buffer/index.mjs +74 -0
- package/build/node_modules/mongoose/node_modules/safe-buffer/index.mjs.map +1 -0
- package/build/node_modules/mongoose/package.json.js +299 -0
- package/build/node_modules/mongoose/package.json.js.map +1 -0
- package/build/node_modules/mongoose/package.mjs +277 -0
- package/build/node_modules/mongoose/package.mjs.map +1 -0
- package/build/node_modules/mongoose-legacy-pluralize/index.js +104 -0
- package/build/node_modules/mongoose-legacy-pluralize/index.js.map +1 -0
- package/build/node_modules/mongoose-legacy-pluralize/index.mjs +102 -0
- package/build/node_modules/mongoose-legacy-pluralize/index.mjs.map +1 -0
- package/build/node_modules/mpath/index.js +12 -0
- package/build/node_modules/mpath/index.js.map +1 -0
- package/build/node_modules/mpath/index.mjs +10 -0
- package/build/node_modules/mpath/index.mjs.map +1 -0
- package/build/node_modules/mpath/lib/index.js +325 -0
- package/build/node_modules/mpath/lib/index.js.map +1 -0
- package/build/node_modules/mpath/lib/index.mjs +323 -0
- package/build/node_modules/mpath/lib/index.mjs.map +1 -0
- package/build/node_modules/mpath/lib/stringToParts.js +51 -0
- package/build/node_modules/mpath/lib/stringToParts.js.map +1 -0
- package/build/node_modules/mpath/lib/stringToParts.mjs +49 -0
- package/build/node_modules/mpath/lib/stringToParts.mjs.map +1 -0
- package/build/node_modules/mquery/lib/collection/collection.js +54 -0
- package/build/node_modules/mquery/lib/collection/collection.js.map +1 -0
- package/build/node_modules/mquery/lib/collection/collection.mjs +52 -0
- package/build/node_modules/mquery/lib/collection/collection.mjs.map +1 -0
- package/build/node_modules/mquery/lib/collection/index.js +17 -0
- package/build/node_modules/mquery/lib/collection/index.js.map +1 -0
- package/build/node_modules/mquery/lib/collection/index.mjs +15 -0
- package/build/node_modules/mquery/lib/collection/index.mjs.map +1 -0
- package/build/node_modules/mquery/lib/collection/node.js +161 -0
- package/build/node_modules/mquery/lib/collection/node.js.map +1 -0
- package/build/node_modules/mquery/lib/collection/node.mjs +159 -0
- package/build/node_modules/mquery/lib/collection/node.mjs.map +1 -0
- package/build/node_modules/mquery/lib/env.js +30 -0
- package/build/node_modules/mquery/lib/env.js.map +1 -0
- package/build/node_modules/mquery/lib/env.mjs +28 -0
- package/build/node_modules/mquery/lib/env.mjs.map +1 -0
- package/build/node_modules/mquery/lib/mquery.js +3276 -0
- package/build/node_modules/mquery/lib/mquery.js.map +1 -0
- package/build/node_modules/mquery/lib/mquery.mjs +3268 -0
- package/build/node_modules/mquery/lib/mquery.mjs.map +1 -0
- package/build/node_modules/mquery/lib/permissions.js +96 -0
- package/build/node_modules/mquery/lib/permissions.js.map +1 -0
- package/build/node_modules/mquery/lib/permissions.mjs +94 -0
- package/build/node_modules/mquery/lib/permissions.mjs.map +1 -0
- package/build/node_modules/mquery/lib/utils.js +373 -0
- package/build/node_modules/mquery/lib/utils.js.map +1 -0
- package/build/node_modules/mquery/lib/utils.mjs +371 -0
- package/build/node_modules/mquery/lib/utils.mjs.map +1 -0
- package/build/node_modules/ms/index.js +166 -0
- package/build/node_modules/ms/index.js.map +1 -0
- package/build/node_modules/ms/index.mjs +164 -0
- package/build/node_modules/ms/index.mjs.map +1 -0
- package/build/node_modules/optional-require/index.js +82 -0
- package/build/node_modules/optional-require/index.js.map +1 -0
- package/build/node_modules/optional-require/index.mjs +76 -0
- package/build/node_modules/optional-require/index.mjs.map +1 -0
- package/build/node_modules/process-nextick-args/index.js +52 -0
- package/build/node_modules/process-nextick-args/index.js.map +1 -0
- package/build/node_modules/process-nextick-args/index.mjs +50 -0
- package/build/node_modules/process-nextick-args/index.mjs.map +1 -0
- package/build/node_modules/redis/index.js +1136 -0
- package/build/node_modules/redis/index.js.map +1 -0
- package/build/node_modules/redis/index.mjs +1127 -0
- package/build/node_modules/redis/index.mjs.map +1 -0
- package/build/node_modules/redis/lib/command.js +19 -0
- package/build/node_modules/redis/lib/command.js.map +1 -0
- package/build/node_modules/redis/lib/command.mjs +17 -0
- package/build/node_modules/redis/lib/command.mjs.map +1 -0
- package/build/node_modules/redis/lib/commands.js +127 -0
- package/build/node_modules/redis/lib/commands.js.map +1 -0
- package/build/node_modules/redis/lib/commands.mjs +125 -0
- package/build/node_modules/redis/lib/commands.mjs.map +1 -0
- package/build/node_modules/redis/lib/createClient.js +87 -0
- package/build/node_modules/redis/lib/createClient.js.map +1 -0
- package/build/node_modules/redis/lib/createClient.mjs +81 -0
- package/build/node_modules/redis/lib/createClient.mjs.map +1 -0
- package/build/node_modules/redis/lib/customErrors.js +69 -0
- package/build/node_modules/redis/lib/customErrors.js.map +1 -0
- package/build/node_modules/redis/lib/customErrors.mjs +62 -0
- package/build/node_modules/redis/lib/customErrors.mjs.map +1 -0
- package/build/node_modules/redis/lib/debug.js +14 -0
- package/build/node_modules/redis/lib/debug.js.map +1 -0
- package/build/node_modules/redis/lib/debug.mjs +12 -0
- package/build/node_modules/redis/lib/debug.mjs.map +1 -0
- package/build/node_modules/redis/lib/extendedApi.js +117 -0
- package/build/node_modules/redis/lib/extendedApi.js.map +1 -0
- package/build/node_modules/redis/lib/extendedApi.mjs +115 -0
- package/build/node_modules/redis/lib/extendedApi.mjs.map +1 -0
- package/build/node_modules/redis/lib/individualCommands.js +620 -0
- package/build/node_modules/redis/lib/individualCommands.js.map +1 -0
- package/build/node_modules/redis/lib/individualCommands.mjs +618 -0
- package/build/node_modules/redis/lib/individualCommands.mjs.map +1 -0
- package/build/node_modules/redis/lib/multi.js +190 -0
- package/build/node_modules/redis/lib/multi.js.map +1 -0
- package/build/node_modules/redis/lib/multi.mjs +188 -0
- package/build/node_modules/redis/lib/multi.mjs.map +1 -0
- package/build/node_modules/redis/lib/utils.js +137 -0
- package/build/node_modules/redis/lib/utils.js.map +1 -0
- package/build/node_modules/redis/lib/utils.mjs +135 -0
- package/build/node_modules/redis/lib/utils.mjs.map +1 -0
- package/build/node_modules/redis-commands/commands.json.js +2785 -0
- package/build/node_modules/redis-commands/commands.json.js.map +1 -0
- package/build/node_modules/redis-commands/commands.mjs +2560 -0
- package/build/node_modules/redis-commands/commands.mjs.map +1 -0
- package/build/node_modules/redis-commands/index.js +177 -0
- package/build/node_modules/redis-commands/index.js.map +1 -0
- package/build/node_modules/redis-commands/index.mjs +175 -0
- package/build/node_modules/redis-commands/index.mjs.map +1 -0
- package/build/node_modules/redis-parser/index.js +21 -0
- package/build/node_modules/redis-parser/index.js.map +1 -0
- package/build/node_modules/redis-parser/index.mjs +15 -0
- package/build/node_modules/redis-parser/index.mjs.map +1 -0
- package/build/node_modules/redis-parser/lib/hiredis.js +69 -0
- package/build/node_modules/redis-parser/lib/hiredis.js.map +1 -0
- package/build/node_modules/redis-parser/lib/hiredis.mjs +63 -0
- package/build/node_modules/redis-parser/lib/hiredis.mjs.map +1 -0
- package/build/node_modules/redis-parser/lib/parser.js +593 -0
- package/build/node_modules/redis-parser/lib/parser.js.map +1 -0
- package/build/node_modules/redis-parser/lib/parser.mjs +587 -0
- package/build/node_modules/redis-parser/lib/parser.mjs.map +1 -0
- package/build/node_modules/redis-parser/lib/parserError.js +34 -0
- package/build/node_modules/redis-parser/lib/parserError.js.map +1 -0
- package/build/node_modules/redis-parser/lib/parserError.mjs +27 -0
- package/build/node_modules/redis-parser/lib/parserError.mjs.map +1 -0
- package/build/node_modules/redis-parser/lib/redisError.js +31 -0
- package/build/node_modules/redis-parser/lib/redisError.js.map +1 -0
- package/build/node_modules/redis-parser/lib/redisError.mjs +25 -0
- package/build/node_modules/redis-parser/lib/redisError.mjs.map +1 -0
- package/build/node_modules/redis-parser/lib/replyError.js +31 -0
- package/build/node_modules/redis-parser/lib/replyError.js.map +1 -0
- package/build/node_modules/redis-parser/lib/replyError.mjs +25 -0
- package/build/node_modules/redis-parser/lib/replyError.mjs.map +1 -0
- package/build/node_modules/regexp-clone/index.js +34 -0
- package/build/node_modules/regexp-clone/index.js.map +1 -0
- package/build/node_modules/regexp-clone/index.mjs +32 -0
- package/build/node_modules/regexp-clone/index.mjs.map +1 -0
- package/build/node_modules/safe-buffer/index.js +76 -0
- package/build/node_modules/safe-buffer/index.js.map +1 -0
- package/build/node_modules/safe-buffer/index.mjs +70 -0
- package/build/node_modules/safe-buffer/index.mjs.map +1 -0
- package/build/node_modules/saslprep/index.js +162 -0
- package/build/node_modules/saslprep/index.js.map +1 -0
- package/build/node_modules/saslprep/index.mjs +160 -0
- package/build/node_modules/saslprep/index.mjs.map +1 -0
- package/build/node_modules/saslprep/lib/memory-code-points.js +47 -0
- package/build/node_modules/saslprep/lib/memory-code-points.js.map +1 -0
- package/build/node_modules/saslprep/lib/memory-code-points.mjs +40 -0
- package/build/node_modules/saslprep/lib/memory-code-points.mjs.map +1 -0
- package/build/node_modules/sift/es5m/index.js +683 -0
- package/build/node_modules/sift/es5m/index.js.map +1 -0
- package/build/node_modules/sift/es5m/index.mjs +652 -0
- package/build/node_modules/sift/es5m/index.mjs.map +1 -0
- package/build/node_modules/sliced/index.js +36 -0
- package/build/node_modules/sliced/index.js.map +1 -0
- package/build/node_modules/sliced/index.mjs +34 -0
- package/build/node_modules/sliced/index.mjs.map +1 -0
- package/build/node_modules/sparse-bitfield/index.js +100 -0
- package/build/node_modules/sparse-bitfield/index.js.map +1 -0
- package/build/node_modules/sparse-bitfield/index.mjs +98 -0
- package/build/node_modules/sparse-bitfield/index.mjs.map +1 -0
- package/build/node_modules/util-deprecate/node.js +16 -0
- package/build/node_modules/util-deprecate/node.js.map +1 -0
- package/build/node_modules/util-deprecate/node.mjs +10 -0
- package/build/node_modules/util-deprecate/node.mjs.map +1 -0
- package/build/node_modules/ws/index.js +17 -0
- package/build/node_modules/ws/index.js.map +1 -0
- package/build/node_modules/ws/index.mjs +15 -0
- package/build/node_modules/ws/index.mjs.map +1 -0
- package/build/node_modules/ws/lib/buffer-util.js +143 -0
- package/build/node_modules/ws/lib/buffer-util.js.map +1 -0
- package/build/node_modules/ws/lib/buffer-util.mjs +137 -0
- package/build/node_modules/ws/lib/buffer-util.mjs.map +1 -0
- package/build/node_modules/ws/lib/constants.js +13 -0
- package/build/node_modules/ws/lib/constants.js.map +1 -0
- package/build/node_modules/ws/lib/constants.mjs +11 -0
- package/build/node_modules/ws/lib/constants.mjs.map +1 -0
- package/build/node_modules/ws/lib/event-target.js +187 -0
- package/build/node_modules/ws/lib/event-target.js.map +1 -0
- package/build/node_modules/ws/lib/event-target.mjs +185 -0
- package/build/node_modules/ws/lib/event-target.mjs.map +1 -0
- package/build/node_modules/ws/lib/extension.js +226 -0
- package/build/node_modules/ws/lib/extension.js.map +1 -0
- package/build/node_modules/ws/lib/extension.mjs +224 -0
- package/build/node_modules/ws/lib/extension.mjs.map +1 -0
- package/build/node_modules/ws/lib/limiter.js +58 -0
- package/build/node_modules/ws/lib/limiter.js.map +1 -0
- package/build/node_modules/ws/lib/limiter.mjs +56 -0
- package/build/node_modules/ws/lib/limiter.mjs.map +1 -0
- package/build/node_modules/ws/lib/permessage-deflate.js +526 -0
- package/build/node_modules/ws/lib/permessage-deflate.js.map +1 -0
- package/build/node_modules/ws/lib/permessage-deflate.mjs +520 -0
- package/build/node_modules/ws/lib/permessage-deflate.mjs.map +1 -0
- package/build/node_modules/ws/lib/receiver.js +620 -0
- package/build/node_modules/ws/lib/receiver.js.map +1 -0
- package/build/node_modules/ws/lib/receiver.mjs +614 -0
- package/build/node_modules/ws/lib/receiver.mjs.map +1 -0
- package/build/node_modules/ws/lib/sender.js +424 -0
- package/build/node_modules/ws/lib/sender.js.map +1 -0
- package/build/node_modules/ws/lib/sender.mjs +418 -0
- package/build/node_modules/ws/lib/sender.mjs.map +1 -0
- package/build/node_modules/ws/lib/stream.js +186 -0
- package/build/node_modules/ws/lib/stream.js.map +1 -0
- package/build/node_modules/ws/lib/stream.mjs +180 -0
- package/build/node_modules/ws/lib/stream.mjs.map +1 -0
- package/build/node_modules/ws/lib/validation.js +117 -0
- package/build/node_modules/ws/lib/validation.js.map +1 -0
- package/build/node_modules/ws/lib/validation.mjs +111 -0
- package/build/node_modules/ws/lib/validation.mjs.map +1 -0
- package/build/node_modules/ws/lib/websocket-server.js +467 -0
- package/build/node_modules/ws/lib/websocket-server.js.map +1 -0
- package/build/node_modules/ws/lib/websocket-server.mjs +459 -0
- package/build/node_modules/ws/lib/websocket-server.mjs.map +1 -0
- package/build/node_modules/ws/lib/websocket.js +1138 -0
- package/build/node_modules/ws/lib/websocket.js.map +1 -0
- package/build/node_modules/ws/lib/websocket.mjs +1126 -0
- package/build/node_modules/ws/lib/websocket.mjs.map +1 -0
- package/build/packages/core/src/Debug.js +34 -0
- package/build/packages/core/src/Debug.js.map +1 -0
- package/build/packages/core/src/Debug.mjs +20 -0
- package/build/packages/core/src/Debug.mjs.map +1 -0
- package/build/packages/core/src/IPC.js +65 -0
- package/build/packages/core/src/IPC.js.map +1 -0
- package/build/packages/core/src/IPC.mjs +60 -0
- package/build/packages/core/src/IPC.mjs.map +1 -0
- package/build/packages/core/src/Logger.js +12 -0
- package/build/packages/core/src/Logger.js.map +1 -0
- package/build/packages/core/src/Logger.mjs +8 -0
- package/build/packages/core/src/Logger.mjs.map +1 -0
- package/build/packages/core/src/MatchMaker.js +401 -0
- package/build/packages/core/src/MatchMaker.js.map +1 -0
- package/build/packages/core/src/MatchMaker.mjs +382 -0
- package/build/packages/core/src/MatchMaker.mjs.map +1 -0
- package/build/packages/core/src/Protocol.js +164 -0
- package/build/packages/core/src/Protocol.js.map +1 -0
- package/build/packages/core/src/Protocol.mjs +154 -0
- package/build/packages/core/src/Protocol.mjs.map +1 -0
- package/build/packages/core/src/Room.js +569 -0
- package/build/packages/core/src/Room.js.map +1 -0
- package/build/packages/core/src/Room.mjs +559 -0
- package/build/packages/core/src/Room.mjs.map +1 -0
- package/build/packages/core/src/Server.js +222 -0
- package/build/packages/core/src/Server.js.map +1 -0
- package/build/packages/core/src/Server.mjs +218 -0
- package/build/packages/core/src/Server.mjs.map +1 -0
- package/build/packages/core/src/Transport.js +17 -0
- package/build/packages/core/src/Transport.js.map +1 -0
- package/build/packages/core/src/Transport.mjs +13 -0
- package/build/packages/core/src/Transport.mjs.map +1 -0
- package/build/packages/core/src/Utils.js +225 -0
- package/build/packages/core/src/Utils.js.map +1 -0
- package/build/packages/core/src/Utils.mjs +209 -0
- package/build/packages/core/src/Utils.mjs.map +1 -0
- package/build/packages/core/src/discovery/index.js +31 -0
- package/build/packages/core/src/discovery/index.js.map +1 -0
- package/build/packages/core/src/discovery/index.mjs +22 -0
- package/build/packages/core/src/discovery/index.mjs.map +1 -0
- package/build/packages/core/src/errors/SeatReservationError.js +12 -0
- package/build/packages/core/src/errors/SeatReservationError.js.map +1 -0
- package/build/packages/core/src/errors/SeatReservationError.mjs +8 -0
- package/build/packages/core/src/errors/SeatReservationError.mjs.map +1 -0
- package/build/packages/core/src/errors/ServerError.js +21 -0
- package/build/packages/core/src/errors/ServerError.js.map +1 -0
- package/build/packages/core/src/errors/ServerError.mjs +17 -0
- package/build/packages/core/src/errors/ServerError.mjs.map +1 -0
- package/build/packages/core/src/index.js +96 -0
- package/build/packages/core/src/index.js.map +1 -0
- package/build/packages/core/src/index.mjs +19 -0
- package/build/packages/core/src/index.mjs.map +1 -0
- package/build/packages/core/src/matchmaker/Lobby.js +31 -0
- package/build/packages/core/src/matchmaker/Lobby.js.map +1 -0
- package/build/packages/core/src/matchmaker/Lobby.mjs +26 -0
- package/build/packages/core/src/matchmaker/Lobby.mjs.map +1 -0
- package/build/packages/core/src/matchmaker/RegisteredHandler.js +72 -0
- package/build/packages/core/src/matchmaker/RegisteredHandler.js.map +1 -0
- package/build/packages/core/src/matchmaker/RegisteredHandler.mjs +67 -0
- package/build/packages/core/src/matchmaker/RegisteredHandler.mjs.map +1 -0
- package/build/packages/core/src/matchmaker/controller.js +46 -0
- package/build/packages/core/src/matchmaker/controller.js.map +1 -0
- package/build/packages/core/src/matchmaker/controller.mjs +39 -0
- package/build/packages/core/src/matchmaker/controller.mjs.map +1 -0
- package/build/packages/core/src/matchmaker/driver/Query.js +53 -0
- package/build/packages/core/src/matchmaker/driver/Query.js.map +1 -0
- package/build/packages/core/src/matchmaker/driver/Query.mjs +49 -0
- package/build/packages/core/src/matchmaker/driver/Query.mjs.map +1 -0
- package/build/packages/core/src/matchmaker/driver/RoomData.js +80 -0
- package/build/packages/core/src/matchmaker/driver/RoomData.js.map +1 -0
- package/build/packages/core/src/matchmaker/driver/RoomData.mjs +76 -0
- package/build/packages/core/src/matchmaker/driver/RoomData.mjs.map +1 -0
- package/build/packages/core/src/matchmaker/driver/index.js +34 -0
- package/build/packages/core/src/matchmaker/driver/index.js.map +1 -0
- package/build/packages/core/src/matchmaker/driver/index.mjs +30 -0
- package/build/packages/core/src/matchmaker/driver/index.mjs.map +1 -0
- package/build/packages/core/src/presence/LocalPresence.js +156 -0
- package/build/packages/core/src/presence/LocalPresence.js.map +1 -0
- package/build/packages/core/src/presence/LocalPresence.mjs +152 -0
- package/build/packages/core/src/presence/LocalPresence.mjs.map +1 -0
- package/build/packages/core/src/rooms/LobbyRoom.js +101 -0
- package/build/packages/core/src/rooms/LobbyRoom.js.map +1 -0
- package/build/packages/core/src/rooms/LobbyRoom.mjs +97 -0
- package/build/packages/core/src/rooms/LobbyRoom.mjs.map +1 -0
- package/build/packages/core/src/rooms/RelayRoom.js +79 -0
- package/build/packages/core/src/rooms/RelayRoom.js.map +1 -0
- package/build/packages/core/src/rooms/RelayRoom.mjs +75 -0
- package/build/packages/core/src/rooms/RelayRoom.mjs.map +1 -0
- package/build/packages/core/src/serializer/NoneSerializer.js +19 -0
- package/build/packages/core/src/serializer/NoneSerializer.js.map +1 -0
- package/build/packages/core/src/serializer/NoneSerializer.mjs +15 -0
- package/build/packages/core/src/serializer/NoneSerializer.mjs.map +1 -0
- package/build/packages/core/src/serializer/SchemaSerializer.js +85 -0
- package/build/packages/core/src/serializer/SchemaSerializer.js.map +1 -0
- package/build/packages/core/src/serializer/SchemaSerializer.mjs +81 -0
- package/build/packages/core/src/serializer/SchemaSerializer.mjs.map +1 -0
- package/build/packages/drivers/mongoose-driver/build/index.mjs +23 -0
- package/build/packages/drivers/mongoose-driver/build/index.mjs.js +25 -0
- package/build/packages/drivers/mongoose-driver/build/index.mjs.js.map +1 -0
- package/build/packages/drivers/mongoose-driver/build/index.mjs.map +1 -0
- package/build/packages/transport/ws-transport/build/WebSocketClient.mjs +70 -0
- package/build/packages/transport/ws-transport/build/WebSocketClient.mjs.js +74 -0
- package/build/packages/transport/ws-transport/build/WebSocketClient.mjs.js.map +1 -0
- package/build/packages/transport/ws-transport/build/WebSocketClient.mjs.map +1 -0
- package/build/packages/transport/ws-transport/build/WebSocketTransport.mjs +102 -0
- package/build/packages/transport/ws-transport/build/WebSocketTransport.mjs.js +110 -0
- package/build/packages/transport/ws-transport/build/WebSocketTransport.mjs.js.map +1 -0
- package/build/packages/transport/ws-transport/build/WebSocketTransport.mjs.map +1 -0
- package/build/rooms/LobbyRoom.js +4 -4
- package/build/rooms/LobbyRoom.js.map +1 -1
- package/build/rooms/LobbyRoom.mjs +4 -4
- package/build/rooms/LobbyRoom.mjs.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare class Logger {
|
|
2
|
+
debug(...args: any[]): void;
|
|
3
|
+
error(...args: any[]): void;
|
|
4
|
+
info(...args: any[]): void;
|
|
5
|
+
trace(...args: any[]): void;
|
|
6
|
+
warn(...args: any[]): void;
|
|
7
|
+
}
|
|
8
|
+
export declare let logger: Logger;
|
|
9
|
+
export declare function setLogger(instance: Logger): void;
|
package/build/Logger.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Logger.js","sources":["../src/Logger.ts"],"sourcesContent":["//\n// Abstract logging adaptor\n//\nexport class Logger {\n debug(...args) {\n logger.debug(...args);\n }\n\n error(...args) {\n logger.error(...args);\n }\n\n info(...args) {\n logger.info(...args);\n }\n\n trace(...args) {\n logger.trace(...args);\n }\n\n warn(...args) {\n logger.warn(...args);\n }\n}\n\nexport let logger: Logger = console;\n\nexport function setLogger(instance: Logger) {\n logger = instance;\n}\n"],"names":["logger"],"mappings":";;;;AAAA;AAyBWA,cAAM,GAAW,QAAQ;SAEpB,SAAS,CAAC,QAAgB;IACxCA,cAAM,GAAG,QAAQ,CAAC;AACpB;;;;"}
|
package/build/Logger.mjs
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Logger.mjs","sources":["../src/Logger.ts"],"sourcesContent":["//\n// Abstract logging adaptor\n//\nexport class Logger {\n debug(...args) {\n logger.debug(...args);\n }\n\n error(...args) {\n logger.error(...args);\n }\n\n info(...args) {\n logger.info(...args);\n }\n\n trace(...args) {\n logger.trace(...args);\n }\n\n warn(...args) {\n logger.warn(...args);\n }\n}\n\nexport let logger: Logger = console;\n\nexport function setLogger(instance: Logger) {\n logger = instance;\n}\n"],"names":[],"mappings":"AAAA;IAyBW,MAAM,GAAW,QAAQ;SAEpB,SAAS,CAAC,QAAgB;IACxC,MAAM,GAAG,QAAQ,CAAC;AACpB;;;;"}
|
package/build/Room.js
CHANGED
package/build/Room.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Room.js","sources":["../src/Room.ts"],"sourcesContent":["import http from 'http';\nimport msgpack from 'notepack.io';\n\nimport { decode, Iterator, Schema } from '@colyseus/schema';\n\nimport Clock from '@gamestdio/timer';\nimport { EventEmitter } from 'events';\n\nimport { Presence } from './presence/Presence';\n\nimport { Serializer } from './serializer/Serializer';\nimport { NoneSerializer } from './serializer/NoneSerializer';\nimport { SchemaSerializer } from './serializer/SchemaSerializer';\n\nimport { ErrorCode, getMessageBytes, Protocol } from './Protocol';\nimport { Deferred, spliceOne } from './Utils';\n\nimport { debugAndPrintError, debugPatch } from './Debug';\nimport { ServerError } from './errors/ServerError';\nimport { Client, ClientState, ISendOptions } from './Transport';\nimport { RoomListingData } from './matchmaker/driver';\n\nconst DEFAULT_PATCH_RATE = 1000 / 20; // 20fps (50ms)\nconst DEFAULT_SIMULATION_INTERVAL = 1000 / 60; // 60fps (16.66ms)\nconst noneSerializer = new NoneSerializer();\n\nexport const DEFAULT_SEAT_RESERVATION_TIME = Number(process.env.COLYSEUS_SEAT_RESERVATION_TIME || 15);\n\nexport type SimulationCallback = (deltaTime: number) => void;\n\nexport type RoomConstructor<T= any> = new (presence?: Presence) => Room<T>;\n\nexport interface IBroadcastOptions extends ISendOptions {\n except?: Client;\n}\n\nexport enum RoomInternalState {\n CREATING = 0,\n CREATED = 1,\n DISCONNECTING = 2,\n}\n\nexport abstract class Room<State= any, Metadata= any> {\n\n public get locked() {\n return this._locked;\n }\n\n public get metadata() {\n return this.listing.metadata;\n }\n\n public listing: RoomListingData<Metadata>;\n public clock: Clock = new Clock();\n\n public roomId: string;\n public roomName: string;\n\n public maxClients: number = Infinity;\n public patchRate: number = DEFAULT_PATCH_RATE;\n public autoDispose: boolean = true;\n\n public state: State;\n public presence: Presence;\n\n public clients: Client[] = [];\n public internalState: RoomInternalState = RoomInternalState.CREATING;\n\n /** @internal */\n public _events = new EventEmitter();\n\n // seat reservation & reconnection\n protected seatReservationTime: number = DEFAULT_SEAT_RESERVATION_TIME;\n protected reservedSeats: { [sessionId: string]: any } = {};\n protected reservedSeatTimeouts: { [sessionId: string]: NodeJS.Timer } = {};\n\n protected reconnections: { [sessionId: string]: Deferred } = {};\n\n private onMessageHandlers: {[id: string]: (client: Client, message: any) => void} = {};\n\n private _serializer: Serializer<State> = noneSerializer;\n private _afterNextPatchQueue: Array<[string | Client, IArguments]> = [];\n\n private _simulationInterval: NodeJS.Timer;\n private _patchInterval: NodeJS.Timer;\n\n private _locked: boolean = false;\n private _lockedExplicitly: boolean = false;\n private _maxClientsReached: boolean = false;\n\n // this timeout prevents rooms that are created by one process, but no client\n // ever had success joining into it on the specified interval.\n private _autoDisposeTimeout: NodeJS.Timer;\n\n constructor(presence?: Presence) {\n this.presence = presence;\n\n this._events.once('dispose', async () => {\n try {\n await this._dispose();\n\n } catch (e) {\n debugAndPrintError(`onDispose error: ${(e && e.message || e || 'promise rejected')}`);\n }\n this._events.emit('disconnect');\n });\n\n this.setPatchRate(this.patchRate);\n }\n\n // Optional abstract methods\n public onCreate?(options: any): void | Promise<any>;\n public onJoin?(client: Client, options?: any, auth?: any): void | Promise<any>;\n public onLeave?(client: Client, consented?: boolean): void | Promise<any>;\n public onDispose?(): void | Promise<any>;\n public onAuth(client: Client, options: any, request?: http.IncomingMessage): any | Promise<any> {\n return true;\n }\n\n public hasReachedMaxClients(): boolean {\n return (this.clients.length + Object.keys(this.reservedSeats).length) >= this.maxClients;\n }\n\n public setSeatReservationTime(seconds: number) {\n this.seatReservationTime = seconds;\n return this;\n }\n\n public hasReservedSeat(sessionId: string): boolean {\n return this.reservedSeats[sessionId] !== undefined;\n }\n\n public setSimulationInterval(onTickCallback?: SimulationCallback, delay: number = DEFAULT_SIMULATION_INTERVAL): void {\n // clear previous interval in case called setSimulationInterval more than once\n if (this._simulationInterval) { clearInterval(this._simulationInterval); }\n\n if (onTickCallback) {\n this._simulationInterval = setInterval(() => {\n this.clock.tick();\n onTickCallback(this.clock.deltaTime);\n }, delay);\n }\n }\n\n public setPatchRate(milliseconds: number): void {\n this.patchRate = milliseconds;\n\n // clear previous interval in case called setPatchRate more than once\n if (this._patchInterval) {\n clearInterval(this._patchInterval);\n this._patchInterval = undefined;\n }\n\n if (milliseconds !== null && milliseconds !== 0) {\n this._patchInterval = setInterval(() => this.broadcastPatch(), milliseconds);\n }\n }\n\n public setState(newState: State) {\n this.clock.start();\n\n if ('_definition' in newState) {\n this.setSerializer(new SchemaSerializer());\n }\n\n this._serializer.reset(newState);\n\n this.state = newState;\n }\n\n public setSerializer(serializer: Serializer<State>) {\n this._serializer = serializer;\n }\n\n public async setMetadata(meta: Partial<Metadata>) {\n if (!this.listing.metadata) {\n this.listing.metadata = meta as Metadata;\n\n } else {\n for (const field in meta) {\n if (!meta.hasOwnProperty(field)) { continue; }\n this.listing.metadata[field] = meta[field];\n }\n\n // `MongooseDriver` workaround: persit metadata mutations\n if ('markModified' in this.listing) {\n (this.listing as any).markModified('metadata');\n }\n }\n\n if (this.internalState === RoomInternalState.CREATED) {\n await this.listing.save();\n }\n }\n\n public async setPrivate(bool: boolean = true) {\n this.listing.private = bool;\n\n if (this.internalState === RoomInternalState.CREATED) {\n await this.listing.save();\n }\n }\n\n public async lock() {\n // rooms locked internally aren't explicit locks.\n this._lockedExplicitly = (arguments[0] === undefined);\n\n // skip if already locked.\n if (this._locked) { return; }\n\n this._locked = true;\n\n await this.listing.updateOne({\n $set: { locked: this._locked },\n });\n\n this._events.emit('lock');\n }\n\n public async unlock() {\n // only internal usage passes arguments to this function.\n if (arguments[0] === undefined) {\n this._lockedExplicitly = false;\n }\n\n // skip if already locked\n if (!this._locked) { return; }\n\n this._locked = false;\n\n await this.listing.updateOne({\n $set: { locked: this._locked },\n });\n\n this._events.emit('unlock');\n }\n\n public send(client: Client, type: string | number, message: any, options?: ISendOptions): void;\n public send(client: Client, message: Schema, options?: ISendOptions): void;\n public send(client: Client, messageOrType: any, messageOrOptions?: any | ISendOptions, options?: ISendOptions): void {\n console.warn('DEPRECATION WARNING: use client.send(...) instead of this.send(client, ...)');\n client.send(messageOrType, messageOrOptions, options);\n }\n\n public broadcast(type: string | number, message?: any, options?: IBroadcastOptions);\n public broadcast<T extends Schema>(message: T, options?: IBroadcastOptions);\n public broadcast(\n typeOrSchema: string | number | Schema,\n messageOrOptions?: any | IBroadcastOptions,\n options?: IBroadcastOptions,\n ) {\n const isSchema = (typeof(typeOrSchema) === 'object');\n const opts: IBroadcastOptions = ((isSchema) ? messageOrOptions : options);\n\n if (opts && opts.afterNextPatch) {\n delete opts.afterNextPatch;\n this._afterNextPatchQueue.push(['broadcast', arguments]);\n return;\n }\n\n if (isSchema) {\n this.broadcastMessageSchema(typeOrSchema as Schema, opts);\n\n } else {\n this.broadcastMessageType(typeOrSchema as string, messageOrOptions, opts);\n }\n }\n\n public broadcastPatch() {\n if (!this._simulationInterval) {\n this.clock.tick();\n }\n\n if (!this.state) {\n return false;\n }\n\n const hasChanges = this._serializer.applyPatches(this.clients, this.state);\n\n // broadcast messages enqueued for \"after patch\"\n this._dequeueAfterPatchMessages();\n\n return hasChanges;\n }\n\n public onMessage<T = any>(messageType: '*', callback: (client: Client, type: string | number, message: T) => void);\n public onMessage<T = any>(messageType: string | number, callback: (client: Client, message: T) => void);\n public onMessage<T = any>(messageType: '*' | string | number, callback: (...args: any[]) => void) {\n this.onMessageHandlers[messageType] = callback;\n // returns a method to unbind the callback\n return () => delete this.onMessageHandlers[messageType];\n }\n\n public async disconnect(): Promise<any> {\n this.internalState = RoomInternalState.DISCONNECTING;\n await this.listing.remove();\n\n this.autoDispose = true;\n\n const delayedDisconnection = new Promise<void>((resolve) =>\n this._events.once('disconnect', () => resolve()));\n\n for (const reconnection of Object.values(this.reconnections)) {\n reconnection.reject();\n }\n\n let numClients = this.clients.length;\n if (numClients > 0) {\n // clients may have `async onLeave`, room will be disposed after they're fulfilled\n while (numClients--) {\n this._forciblyCloseClient(this.clients[numClients], Protocol.WS_CLOSE_CONSENTED);\n }\n } else {\n // no clients connected, dispose immediately.\n this._events.emit('dispose');\n }\n\n return await delayedDisconnection;\n }\n\n public async ['_onJoin'](client: Client, req?: http.IncomingMessage) {\n const sessionId = client.sessionId;\n\n if (this.reservedSeatTimeouts[sessionId]) {\n clearTimeout(this.reservedSeatTimeouts[sessionId]);\n delete this.reservedSeatTimeouts[sessionId];\n }\n\n // clear auto-dispose timeout.\n if (this._autoDisposeTimeout) {\n clearTimeout(this._autoDisposeTimeout);\n this._autoDisposeTimeout = undefined;\n }\n\n // get seat reservation options and clear it\n const options = this.reservedSeats[sessionId];\n delete this.reservedSeats[sessionId];\n\n // share \"after next patch queue\" reference with every client.\n client._afterNextPatchQueue = this._afterNextPatchQueue;\n\n // bind clean-up callback when client connection closes\n client.ref['onleave'] = this._onLeave.bind(this, client);\n client.ref.once('close', client.ref['onleave']);\n\n this.clients.push(client);\n\n const reconnection = this.reconnections[sessionId];\n if (reconnection) {\n reconnection.resolve(client);\n\n } else {\n try {\n client.auth = await this.onAuth(client, options, req);\n\n if (!client.auth) {\n throw new ServerError(ErrorCode.AUTH_FAILED, 'onAuth failed');\n }\n\n if (this.onJoin) {\n await this.onJoin(client, options, client.auth);\n }\n } catch (e) {\n spliceOne(this.clients, this.clients.indexOf(client));\n\n // make sure an error code is provided.\n if (!e.code) {\n e.code = ErrorCode.APPLICATION_ERROR;\n }\n\n throw e;\n\n } finally {\n // remove seat reservation\n delete this.reservedSeats[sessionId];\n }\n }\n\n // emit 'join' to room handler\n this._events.emit('join', client);\n\n // allow client to send messages after onJoin has succeeded.\n client.ref.on('message', this._onMessage.bind(this, client));\n\n // confirm room id that matches the room name requested to join\n client.raw(getMessageBytes[Protocol.JOIN_ROOM](\n this._serializer.id,\n this._serializer.handshake && this._serializer.handshake(),\n ));\n }\n\n public allowReconnection(previousClient: Client, seconds: number = Infinity): Deferred<Client> {\n if (this.internalState === RoomInternalState.DISCONNECTING) {\n this._disposeIfEmpty(); // gracefully shutting down\n throw new Error('disconnecting');\n }\n\n const sessionId = previousClient.sessionId;\n this._reserveSeat(sessionId, true, seconds, true);\n\n // keep reconnection reference in case the user reconnects into this room.\n const reconnection = new Deferred<Client>();\n this.reconnections[sessionId] = reconnection;\n\n if (seconds !== Infinity) {\n // expire seat reservation after timeout\n this.reservedSeatTimeouts[sessionId] = setTimeout(() =>\n reconnection.reject(false), seconds * 1000);\n }\n\n const cleanup = () => {\n delete this.reservedSeats[sessionId];\n delete this.reconnections[sessionId];\n delete this.reservedSeatTimeouts[sessionId];\n };\n\n reconnection.\n then((newClient) => {\n newClient.auth = previousClient.auth;\n previousClient.ref = newClient.ref; // swap \"ref\" for convenience\n previousClient.state = ClientState.RECONNECTED;\n clearTimeout(this.reservedSeatTimeouts[sessionId]);\n cleanup();\n }).\n catch(() => {\n cleanup();\n this.resetAutoDisposeTimeout();\n });\n\n return reconnection;\n }\n\n protected resetAutoDisposeTimeout(timeoutInSeconds: number = 1) {\n clearTimeout(this._autoDisposeTimeout);\n\n if (!this.autoDispose) {\n return;\n }\n\n this._autoDisposeTimeout = setTimeout(() => {\n this._autoDisposeTimeout = undefined;\n this._disposeIfEmpty();\n }, timeoutInSeconds * 1000);\n }\n\n private broadcastMessageSchema<T extends Schema>(message: T, options: IBroadcastOptions = {}) {\n const encodedMessage = getMessageBytes[Protocol.ROOM_DATA_SCHEMA](message);\n\n let numClients = this.clients.length;\n while (numClients--) {\n const client = this.clients[numClients];\n\n if (options.except !== client) {\n client.enqueueRaw(encodedMessage);\n }\n }\n }\n\n private broadcastMessageType(type: string, message?: any, options: IBroadcastOptions = {}) {\n const encodedMessage = getMessageBytes[Protocol.ROOM_DATA](type, message);\n\n let numClients = this.clients.length;\n while (numClients--) {\n const client = this.clients[numClients];\n\n if (options.except !== client) {\n client.enqueueRaw(encodedMessage);\n }\n }\n }\n\n private sendFullState(client: Client): void {\n client.enqueueRaw(getMessageBytes[Protocol.ROOM_STATE](this._serializer.getFullState(client)));\n }\n\n private _dequeueAfterPatchMessages() {\n const length = this._afterNextPatchQueue.length;\n\n if (length > 0) {\n for (let i = 0; i < length; i++) {\n const [target, args] = this._afterNextPatchQueue[i];\n\n if (target === \"broadcast\") {\n this.broadcast.apply(this, args);\n\n } else {\n (target as Client).raw.apply(target, args);\n }\n }\n\n // new messages may have been added in the meantime,\n // let's splice the ones that have been processed\n this._afterNextPatchQueue.splice(0, length);\n }\n }\n\n private async _reserveSeat(\n sessionId: string,\n joinOptions: any = true,\n seconds: number = this.seatReservationTime,\n allowReconnection: boolean = false,\n ) {\n if (!allowReconnection && this.hasReachedMaxClients()) {\n return false;\n }\n\n this.reservedSeats[sessionId] = joinOptions;\n\n if (!allowReconnection) {\n await this._incrementClientCount();\n\n this.reservedSeatTimeouts[sessionId] = setTimeout(async () => {\n delete this.reservedSeats[sessionId];\n delete this.reservedSeatTimeouts[sessionId];\n await this._decrementClientCount();\n }, seconds * 1000);\n\n this.resetAutoDisposeTimeout(seconds);\n }\n\n return true;\n }\n\n private _disposeIfEmpty() {\n const willDispose = (\n this.autoDispose &&\n this._autoDisposeTimeout === undefined &&\n this.clients.length === 0 &&\n Object.keys(this.reservedSeats).length === 0\n );\n\n if (willDispose) {\n this._events.emit('dispose');\n }\n\n return willDispose;\n }\n\n private async _dispose(): Promise<any> {\n let userReturnData;\n\n if (this.onDispose) {\n userReturnData = this.onDispose();\n }\n\n if (this._patchInterval) {\n clearInterval(this._patchInterval);\n this._patchInterval = undefined;\n }\n\n if (this._simulationInterval) {\n clearInterval(this._simulationInterval);\n this._simulationInterval = undefined;\n }\n\n if (this._autoDisposeTimeout) {\n clearInterval(this._autoDisposeTimeout);\n this._autoDisposeTimeout = undefined;\n }\n\n // clear all timeouts/intervals + force to stop ticking\n this.clock.clear();\n this.clock.stop();\n\n return await (userReturnData || Promise.resolve());\n }\n\n private _onMessage(client: Client, bytes: number[]) {\n // skip if client is on LEAVING state.\n if (client.state === ClientState.LEAVING) { return; }\n\n const it: Iterator = { offset: 0 };\n const code = decode.uint8(bytes, it);\n\n if (!bytes) {\n debugAndPrintError(`${this.roomName} (${this.roomId}), couldn't decode message: ${bytes}`);\n return;\n }\n\n if (code === Protocol.ROOM_DATA) {\n const messageType = (decode.stringCheck(bytes, it))\n ? decode.string(bytes, it)\n : decode.number(bytes, it);\n\n let message;\n try {\n message = (bytes.length > it.offset)\n ? msgpack.decode(bytes.slice(it.offset, bytes.length))\n : undefined;\n } catch (e) {\n debugAndPrintError(e);\n return;\n }\n\n if (this.onMessageHandlers[messageType]) {\n this.onMessageHandlers[messageType](client, message);\n\n } else if (this.onMessageHandlers['*']) {\n (this.onMessageHandlers['*'] as any)(client, messageType, message);\n\n } else {\n debugAndPrintError(`onMessage for \"${messageType}\" not registered.`);\n }\n\n } else if (code === Protocol.JOIN_ROOM) {\n // join room has been acknowledged by the client\n client.state = ClientState.JOINED;\n\n // send current state when new client joins the room\n if (this.state) {\n this.sendFullState(client);\n }\n\n // dequeue messages sent before client has joined effectively (on user-defined `onJoin`)\n if (client._enqueuedMessages.length > 0) {\n client._enqueuedMessages.forEach((enqueued) => client.raw(enqueued));\n }\n delete client._enqueuedMessages;\n\n } else if (code === Protocol.LEAVE_ROOM) {\n this._forciblyCloseClient(client, Protocol.WS_CLOSE_CONSENTED);\n }\n\n }\n\n private _forciblyCloseClient(client: Client, closeCode: number) {\n // stop receiving messages from this client\n client.ref.removeAllListeners('message');\n\n // prevent \"onLeave\" from being called twice if player asks to leave\n client.ref.removeListener('close', client.ref['onleave']);\n\n // only effectively close connection when \"onLeave\" is fulfilled\n this._onLeave(client, closeCode).then(() => client.leave(Protocol.WS_CLOSE_NORMAL));\n }\n\n private async _onLeave(client: Client, code?: number): Promise<any> {\n const success = spliceOne(this.clients, this.clients.indexOf(client));\n\n // call 'onLeave' method only if the client has been successfully accepted.\n if (success && this.onLeave) {\n try {\n client.state = ClientState.LEAVING;\n await this.onLeave(client, (code === Protocol.WS_CLOSE_CONSENTED));\n\n } catch (e) {\n debugAndPrintError(`onLeave error: ${(e && e.message || e || 'promise rejected')}`);\n }\n }\n\n if (client.state !== ClientState.RECONNECTED) {\n // try to dispose immediatelly if client reconnection isn't set up.\n const willDispose = await this._decrementClientCount();\n\n this._events.emit('leave', client, willDispose);\n }\n }\n\n private async _incrementClientCount() {\n // lock automatically when maxClients is reached\n if (!this._locked && this.hasReachedMaxClients()) {\n this._maxClientsReached = true;\n this.lock.call(this, true);\n }\n\n await this.listing.updateOne({\n $inc: { clients: 1 },\n $set: { locked: this._locked },\n });\n }\n\n private async _decrementClientCount() {\n const willDispose = this._disposeIfEmpty();\n\n if (this.internalState === RoomInternalState.DISCONNECTING) {\n return;\n }\n\n // unlock if room is available for new connections\n if (!willDispose) {\n if (this._maxClientsReached && !this._lockedExplicitly) {\n this._maxClientsReached = false;\n this.unlock.call(this, true);\n }\n\n // update room listing cache\n await this.listing.updateOne({\n $inc: { clients: -1 },\n $set: { locked: this._locked },\n });\n }\n\n return willDispose;\n }\n\n}\n"],"names":["NoneSerializer","RoomInternalState","Clock","EventEmitter","debugAndPrintError","SchemaSerializer","Protocol","ServerError","ErrorCode","spliceOne","getMessageBytes","Deferred","ClientState","decode","msgpack"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Room.js","sources":["../src/Room.ts"],"sourcesContent":["import http from 'http';\nimport msgpack from 'notepack.io';\n\nimport { decode, Iterator, Schema } from '@colyseus/schema';\n\nimport Clock from '@gamestdio/timer';\nimport { EventEmitter } from 'events';\n\nimport { Presence } from './presence/Presence';\n\nimport { Serializer } from './serializer/Serializer';\nimport { NoneSerializer } from './serializer/NoneSerializer';\nimport { SchemaSerializer } from './serializer/SchemaSerializer';\n\nimport { ErrorCode, getMessageBytes, Protocol } from './Protocol';\nimport { Deferred, spliceOne } from './Utils';\n\nimport { debugAndPrintError, debugPatch } from './Debug';\nimport { ServerError } from './errors/ServerError';\nimport { Client, ClientState, ISendOptions } from './Transport';\nimport { RoomListingData } from './matchmaker/driver';\n\nconst DEFAULT_PATCH_RATE = 1000 / 20; // 20fps (50ms)\nconst DEFAULT_SIMULATION_INTERVAL = 1000 / 60; // 60fps (16.66ms)\nconst noneSerializer = new NoneSerializer();\n\nexport const DEFAULT_SEAT_RESERVATION_TIME = Number(process.env.COLYSEUS_SEAT_RESERVATION_TIME || 15);\n\nexport type SimulationCallback = (deltaTime: number) => void;\n\nexport type RoomConstructor<T= any> = new (presence?: Presence) => Room<T>;\n\nexport interface IBroadcastOptions extends ISendOptions {\n except?: Client;\n}\n\nexport enum RoomInternalState {\n CREATING = 0,\n CREATED = 1,\n DISCONNECTING = 2,\n}\n\nexport abstract class Room<State= any, Metadata= any> {\n\n public get locked() {\n return this._locked;\n }\n\n public get metadata() {\n return this.listing.metadata;\n }\n\n public listing: RoomListingData<Metadata>;\n public clock: Clock = new Clock();\n\n public roomId: string;\n public roomName: string;\n\n public maxClients: number = Infinity;\n public patchRate: number = DEFAULT_PATCH_RATE;\n public autoDispose: boolean = true;\n\n public state: State;\n public presence: Presence;\n\n public clients: Client[] = [];\n public internalState: RoomInternalState = RoomInternalState.CREATING;\n\n /** @internal */\n public _events = new EventEmitter();\n\n // seat reservation & reconnection\n protected seatReservationTime: number = DEFAULT_SEAT_RESERVATION_TIME;\n protected reservedSeats: { [sessionId: string]: any } = {};\n protected reservedSeatTimeouts: { [sessionId: string]: NodeJS.Timer } = {};\n\n protected reconnections: { [sessionId: string]: Deferred } = {};\n\n private onMessageHandlers: {[id: string]: (client: Client, message: any) => void} = {};\n\n private _serializer: Serializer<State> = noneSerializer;\n private _afterNextPatchQueue: Array<[string | Client, IArguments]> = [];\n\n private _simulationInterval: NodeJS.Timer;\n private _patchInterval: NodeJS.Timer;\n\n private _locked: boolean = false;\n private _lockedExplicitly: boolean = false;\n private _maxClientsReached: boolean = false;\n\n // this timeout prevents rooms that are created by one process, but no client\n // ever had success joining into it on the specified interval.\n private _autoDisposeTimeout: NodeJS.Timer;\n\n constructor(presence?: Presence) {\n this.presence = presence;\n\n this._events.once('dispose', async () => {\n try {\n await this._dispose();\n\n } catch (e) {\n debugAndPrintError(`onDispose error: ${(e && e.message || e || 'promise rejected')}`);\n }\n this._events.emit('disconnect');\n });\n\n this.setPatchRate(this.patchRate);\n // set default _autoDisposeTimeout\n this.resetAutoDisposeTimeout(this.seatReservationTime);\n }\n\n // Optional abstract methods\n public onCreate?(options: any): void | Promise<any>;\n public onJoin?(client: Client, options?: any, auth?: any): void | Promise<any>;\n public onLeave?(client: Client, consented?: boolean): void | Promise<any>;\n public onDispose?(): void | Promise<any>;\n public onAuth(client: Client, options: any, request?: http.IncomingMessage): any | Promise<any> {\n return true;\n }\n\n public hasReachedMaxClients(): boolean {\n return (this.clients.length + Object.keys(this.reservedSeats).length) >= this.maxClients;\n }\n\n public setSeatReservationTime(seconds: number) {\n this.seatReservationTime = seconds;\n return this;\n }\n\n public hasReservedSeat(sessionId: string): boolean {\n return this.reservedSeats[sessionId] !== undefined;\n }\n\n public setSimulationInterval(onTickCallback?: SimulationCallback, delay: number = DEFAULT_SIMULATION_INTERVAL): void {\n // clear previous interval in case called setSimulationInterval more than once\n if (this._simulationInterval) { clearInterval(this._simulationInterval); }\n\n if (onTickCallback) {\n this._simulationInterval = setInterval(() => {\n this.clock.tick();\n onTickCallback(this.clock.deltaTime);\n }, delay);\n }\n }\n\n public setPatchRate(milliseconds: number): void {\n this.patchRate = milliseconds;\n\n // clear previous interval in case called setPatchRate more than once\n if (this._patchInterval) {\n clearInterval(this._patchInterval);\n this._patchInterval = undefined;\n }\n\n if (milliseconds !== null && milliseconds !== 0) {\n this._patchInterval = setInterval(() => this.broadcastPatch(), milliseconds);\n }\n }\n\n public setState(newState: State) {\n this.clock.start();\n\n if ('_definition' in newState) {\n this.setSerializer(new SchemaSerializer());\n }\n\n this._serializer.reset(newState);\n\n this.state = newState;\n }\n\n public setSerializer(serializer: Serializer<State>) {\n this._serializer = serializer;\n }\n\n public async setMetadata(meta: Partial<Metadata>) {\n if (!this.listing.metadata) {\n this.listing.metadata = meta as Metadata;\n\n } else {\n for (const field in meta) {\n if (!meta.hasOwnProperty(field)) { continue; }\n this.listing.metadata[field] = meta[field];\n }\n\n // `MongooseDriver` workaround: persit metadata mutations\n if ('markModified' in this.listing) {\n (this.listing as any).markModified('metadata');\n }\n }\n\n if (this.internalState === RoomInternalState.CREATED) {\n await this.listing.save();\n }\n }\n\n public async setPrivate(bool: boolean = true) {\n this.listing.private = bool;\n\n if (this.internalState === RoomInternalState.CREATED) {\n await this.listing.save();\n }\n }\n\n public async lock() {\n // rooms locked internally aren't explicit locks.\n this._lockedExplicitly = (arguments[0] === undefined);\n\n // skip if already locked.\n if (this._locked) { return; }\n\n this._locked = true;\n\n await this.listing.updateOne({\n $set: { locked: this._locked },\n });\n\n this._events.emit('lock');\n }\n\n public async unlock() {\n // only internal usage passes arguments to this function.\n if (arguments[0] === undefined) {\n this._lockedExplicitly = false;\n }\n\n // skip if already locked\n if (!this._locked) { return; }\n\n this._locked = false;\n\n await this.listing.updateOne({\n $set: { locked: this._locked },\n });\n\n this._events.emit('unlock');\n }\n\n public send(client: Client, type: string | number, message: any, options?: ISendOptions): void;\n public send(client: Client, message: Schema, options?: ISendOptions): void;\n public send(client: Client, messageOrType: any, messageOrOptions?: any | ISendOptions, options?: ISendOptions): void {\n console.warn('DEPRECATION WARNING: use client.send(...) instead of this.send(client, ...)');\n client.send(messageOrType, messageOrOptions, options);\n }\n\n public broadcast(type: string | number, message?: any, options?: IBroadcastOptions);\n public broadcast<T extends Schema>(message: T, options?: IBroadcastOptions);\n public broadcast(\n typeOrSchema: string | number | Schema,\n messageOrOptions?: any | IBroadcastOptions,\n options?: IBroadcastOptions,\n ) {\n const isSchema = (typeof(typeOrSchema) === 'object');\n const opts: IBroadcastOptions = ((isSchema) ? messageOrOptions : options);\n\n if (opts && opts.afterNextPatch) {\n delete opts.afterNextPatch;\n this._afterNextPatchQueue.push(['broadcast', arguments]);\n return;\n }\n\n if (isSchema) {\n this.broadcastMessageSchema(typeOrSchema as Schema, opts);\n\n } else {\n this.broadcastMessageType(typeOrSchema as string, messageOrOptions, opts);\n }\n }\n\n public broadcastPatch() {\n if (!this._simulationInterval) {\n this.clock.tick();\n }\n\n if (!this.state) {\n return false;\n }\n\n const hasChanges = this._serializer.applyPatches(this.clients, this.state);\n\n // broadcast messages enqueued for \"after patch\"\n this._dequeueAfterPatchMessages();\n\n return hasChanges;\n }\n\n public onMessage<T = any>(messageType: '*', callback: (client: Client, type: string | number, message: T) => void);\n public onMessage<T = any>(messageType: string | number, callback: (client: Client, message: T) => void);\n public onMessage<T = any>(messageType: '*' | string | number, callback: (...args: any[]) => void) {\n this.onMessageHandlers[messageType] = callback;\n // returns a method to unbind the callback\n return () => delete this.onMessageHandlers[messageType];\n }\n\n public async disconnect(): Promise<any> {\n this.internalState = RoomInternalState.DISCONNECTING;\n await this.listing.remove();\n\n this.autoDispose = true;\n\n const delayedDisconnection = new Promise<void>((resolve) =>\n this._events.once('disconnect', () => resolve()));\n\n for (const reconnection of Object.values(this.reconnections)) {\n reconnection.reject();\n }\n\n let numClients = this.clients.length;\n if (numClients > 0) {\n // clients may have `async onLeave`, room will be disposed after they're fulfilled\n while (numClients--) {\n this._forciblyCloseClient(this.clients[numClients], Protocol.WS_CLOSE_CONSENTED);\n }\n } else {\n // no clients connected, dispose immediately.\n this._events.emit('dispose');\n }\n\n return await delayedDisconnection;\n }\n\n public async ['_onJoin'](client: Client, req?: http.IncomingMessage) {\n const sessionId = client.sessionId;\n\n if (this.reservedSeatTimeouts[sessionId]) {\n clearTimeout(this.reservedSeatTimeouts[sessionId]);\n delete this.reservedSeatTimeouts[sessionId];\n }\n\n // clear auto-dispose timeout.\n if (this._autoDisposeTimeout) {\n clearTimeout(this._autoDisposeTimeout);\n this._autoDisposeTimeout = undefined;\n }\n\n // get seat reservation options and clear it\n const options = this.reservedSeats[sessionId];\n delete this.reservedSeats[sessionId];\n\n // share \"after next patch queue\" reference with every client.\n client._afterNextPatchQueue = this._afterNextPatchQueue;\n\n // bind clean-up callback when client connection closes\n client.ref['onleave'] = this._onLeave.bind(this, client);\n client.ref.once('close', client.ref['onleave']);\n\n this.clients.push(client);\n\n const reconnection = this.reconnections[sessionId];\n if (reconnection) {\n reconnection.resolve(client);\n\n } else {\n try {\n client.auth = await this.onAuth(client, options, req);\n\n if (!client.auth) {\n throw new ServerError(ErrorCode.AUTH_FAILED, 'onAuth failed');\n }\n\n if (this.onJoin) {\n await this.onJoin(client, options, client.auth);\n }\n } catch (e) {\n spliceOne(this.clients, this.clients.indexOf(client));\n\n // make sure an error code is provided.\n if (!e.code) {\n e.code = ErrorCode.APPLICATION_ERROR;\n }\n\n throw e;\n\n } finally {\n // remove seat reservation\n delete this.reservedSeats[sessionId];\n }\n }\n\n // emit 'join' to room handler\n this._events.emit('join', client);\n\n // allow client to send messages after onJoin has succeeded.\n client.ref.on('message', this._onMessage.bind(this, client));\n\n // confirm room id that matches the room name requested to join\n client.raw(getMessageBytes[Protocol.JOIN_ROOM](\n this._serializer.id,\n this._serializer.handshake && this._serializer.handshake(),\n ));\n }\n\n public allowReconnection(previousClient: Client, seconds: number = Infinity): Deferred<Client> {\n if (this.internalState === RoomInternalState.DISCONNECTING) {\n this._disposeIfEmpty(); // gracefully shutting down\n throw new Error('disconnecting');\n }\n\n const sessionId = previousClient.sessionId;\n this._reserveSeat(sessionId, true, seconds, true);\n\n // keep reconnection reference in case the user reconnects into this room.\n const reconnection = new Deferred<Client>();\n this.reconnections[sessionId] = reconnection;\n\n if (seconds !== Infinity) {\n // expire seat reservation after timeout\n this.reservedSeatTimeouts[sessionId] = setTimeout(() =>\n reconnection.reject(false), seconds * 1000);\n }\n\n const cleanup = () => {\n delete this.reservedSeats[sessionId];\n delete this.reconnections[sessionId];\n delete this.reservedSeatTimeouts[sessionId];\n };\n\n reconnection.\n then((newClient) => {\n newClient.auth = previousClient.auth;\n previousClient.ref = newClient.ref; // swap \"ref\" for convenience\n previousClient.state = ClientState.RECONNECTED;\n clearTimeout(this.reservedSeatTimeouts[sessionId]);\n cleanup();\n }).\n catch(() => {\n cleanup();\n this.resetAutoDisposeTimeout();\n });\n\n return reconnection;\n }\n\n protected resetAutoDisposeTimeout(timeoutInSeconds: number = 1) {\n clearTimeout(this._autoDisposeTimeout);\n\n if (!this.autoDispose) {\n return;\n }\n\n this._autoDisposeTimeout = setTimeout(() => {\n this._autoDisposeTimeout = undefined;\n this._disposeIfEmpty();\n }, timeoutInSeconds * 1000);\n }\n\n private broadcastMessageSchema<T extends Schema>(message: T, options: IBroadcastOptions = {}) {\n const encodedMessage = getMessageBytes[Protocol.ROOM_DATA_SCHEMA](message);\n\n let numClients = this.clients.length;\n while (numClients--) {\n const client = this.clients[numClients];\n\n if (options.except !== client) {\n client.enqueueRaw(encodedMessage);\n }\n }\n }\n\n private broadcastMessageType(type: string, message?: any, options: IBroadcastOptions = {}) {\n const encodedMessage = getMessageBytes[Protocol.ROOM_DATA](type, message);\n\n let numClients = this.clients.length;\n while (numClients--) {\n const client = this.clients[numClients];\n\n if (options.except !== client) {\n client.enqueueRaw(encodedMessage);\n }\n }\n }\n\n private sendFullState(client: Client): void {\n client.enqueueRaw(getMessageBytes[Protocol.ROOM_STATE](this._serializer.getFullState(client)));\n }\n\n private _dequeueAfterPatchMessages() {\n const length = this._afterNextPatchQueue.length;\n\n if (length > 0) {\n for (let i = 0; i < length; i++) {\n const [target, args] = this._afterNextPatchQueue[i];\n\n if (target === \"broadcast\") {\n this.broadcast.apply(this, args);\n\n } else {\n (target as Client).raw.apply(target, args);\n }\n }\n\n // new messages may have been added in the meantime,\n // let's splice the ones that have been processed\n this._afterNextPatchQueue.splice(0, length);\n }\n }\n\n private async _reserveSeat(\n sessionId: string,\n joinOptions: any = true,\n seconds: number = this.seatReservationTime,\n allowReconnection: boolean = false,\n ) {\n if (!allowReconnection && this.hasReachedMaxClients()) {\n return false;\n }\n\n this.reservedSeats[sessionId] = joinOptions;\n\n if (!allowReconnection) {\n await this._incrementClientCount();\n\n this.reservedSeatTimeouts[sessionId] = setTimeout(async () => {\n delete this.reservedSeats[sessionId];\n delete this.reservedSeatTimeouts[sessionId];\n await this._decrementClientCount();\n }, seconds * 1000);\n\n this.resetAutoDisposeTimeout(seconds);\n }\n\n return true;\n }\n\n private _disposeIfEmpty() {\n const willDispose = (\n this.autoDispose &&\n this._autoDisposeTimeout === undefined &&\n this.clients.length === 0 &&\n Object.keys(this.reservedSeats).length === 0\n );\n\n if (willDispose) {\n this._events.emit('dispose');\n }\n\n return willDispose;\n }\n\n private async _dispose(): Promise<any> {\n let userReturnData;\n\n if (this.onDispose) {\n userReturnData = this.onDispose();\n }\n\n if (this._patchInterval) {\n clearInterval(this._patchInterval);\n this._patchInterval = undefined;\n }\n\n if (this._simulationInterval) {\n clearInterval(this._simulationInterval);\n this._simulationInterval = undefined;\n }\n\n if (this._autoDisposeTimeout) {\n clearInterval(this._autoDisposeTimeout);\n this._autoDisposeTimeout = undefined;\n }\n\n // clear all timeouts/intervals + force to stop ticking\n this.clock.clear();\n this.clock.stop();\n\n return await (userReturnData || Promise.resolve());\n }\n\n private _onMessage(client: Client, bytes: number[]) {\n // skip if client is on LEAVING state.\n if (client.state === ClientState.LEAVING) { return; }\n\n const it: Iterator = { offset: 0 };\n const code = decode.uint8(bytes, it);\n\n if (!bytes) {\n debugAndPrintError(`${this.roomName} (${this.roomId}), couldn't decode message: ${bytes}`);\n return;\n }\n\n if (code === Protocol.ROOM_DATA) {\n const messageType = (decode.stringCheck(bytes, it))\n ? decode.string(bytes, it)\n : decode.number(bytes, it);\n\n let message;\n try {\n message = (bytes.length > it.offset)\n ? msgpack.decode(bytes.slice(it.offset, bytes.length))\n : undefined;\n } catch (e) {\n debugAndPrintError(e);\n return;\n }\n\n if (this.onMessageHandlers[messageType]) {\n this.onMessageHandlers[messageType](client, message);\n\n } else if (this.onMessageHandlers['*']) {\n (this.onMessageHandlers['*'] as any)(client, messageType, message);\n\n } else {\n debugAndPrintError(`onMessage for \"${messageType}\" not registered.`);\n }\n\n } else if (code === Protocol.JOIN_ROOM) {\n // join room has been acknowledged by the client\n client.state = ClientState.JOINED;\n\n // send current state when new client joins the room\n if (this.state) {\n this.sendFullState(client);\n }\n\n // dequeue messages sent before client has joined effectively (on user-defined `onJoin`)\n if (client._enqueuedMessages.length > 0) {\n client._enqueuedMessages.forEach((enqueued) => client.raw(enqueued));\n }\n delete client._enqueuedMessages;\n\n } else if (code === Protocol.LEAVE_ROOM) {\n this._forciblyCloseClient(client, Protocol.WS_CLOSE_CONSENTED);\n }\n\n }\n\n private _forciblyCloseClient(client: Client, closeCode: number) {\n // stop receiving messages from this client\n client.ref.removeAllListeners('message');\n\n // prevent \"onLeave\" from being called twice if player asks to leave\n client.ref.removeListener('close', client.ref['onleave']);\n\n // only effectively close connection when \"onLeave\" is fulfilled\n this._onLeave(client, closeCode).then(() => client.leave(Protocol.WS_CLOSE_NORMAL));\n }\n\n private async _onLeave(client: Client, code?: number): Promise<any> {\n const success = spliceOne(this.clients, this.clients.indexOf(client));\n\n // call 'onLeave' method only if the client has been successfully accepted.\n if (success && this.onLeave) {\n try {\n client.state = ClientState.LEAVING;\n await this.onLeave(client, (code === Protocol.WS_CLOSE_CONSENTED));\n\n } catch (e) {\n debugAndPrintError(`onLeave error: ${(e && e.message || e || 'promise rejected')}`);\n }\n }\n\n if (client.state !== ClientState.RECONNECTED) {\n // try to dispose immediatelly if client reconnection isn't set up.\n const willDispose = await this._decrementClientCount();\n\n this._events.emit('leave', client, willDispose);\n }\n }\n\n private async _incrementClientCount() {\n // lock automatically when maxClients is reached\n if (!this._locked && this.hasReachedMaxClients()) {\n this._maxClientsReached = true;\n this.lock.call(this, true);\n }\n\n await this.listing.updateOne({\n $inc: { clients: 1 },\n $set: { locked: this._locked },\n });\n }\n\n private async _decrementClientCount() {\n const willDispose = this._disposeIfEmpty();\n\n if (this.internalState === RoomInternalState.DISCONNECTING) {\n return;\n }\n\n // unlock if room is available for new connections\n if (!willDispose) {\n if (this._maxClientsReached && !this._lockedExplicitly) {\n this._maxClientsReached = false;\n this.unlock.call(this, true);\n }\n\n // update room listing cache\n await this.listing.updateOne({\n $inc: { clients: -1 },\n $set: { locked: this._locked },\n });\n }\n\n return willDispose;\n }\n\n}\n"],"names":["NoneSerializer","RoomInternalState","Clock","EventEmitter","debugAndPrintError","SchemaSerializer","Protocol","ServerError","ErrorCode","spliceOne","getMessageBytes","Deferred","ClientState","decode","msgpack"],"mappings":"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"}
|
package/build/Room.mjs
CHANGED
package/build/Room.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Room.mjs","sources":["../src/Room.ts"],"sourcesContent":["import http from 'http';\nimport msgpack from 'notepack.io';\n\nimport { decode, Iterator, Schema } from '@colyseus/schema';\n\nimport Clock from '@gamestdio/timer';\nimport { EventEmitter } from 'events';\n\nimport { Presence } from './presence/Presence';\n\nimport { Serializer } from './serializer/Serializer';\nimport { NoneSerializer } from './serializer/NoneSerializer';\nimport { SchemaSerializer } from './serializer/SchemaSerializer';\n\nimport { ErrorCode, getMessageBytes, Protocol } from './Protocol';\nimport { Deferred, spliceOne } from './Utils';\n\nimport { debugAndPrintError, debugPatch } from './Debug';\nimport { ServerError } from './errors/ServerError';\nimport { Client, ClientState, ISendOptions } from './Transport';\nimport { RoomListingData } from './matchmaker/driver';\n\nconst DEFAULT_PATCH_RATE = 1000 / 20; // 20fps (50ms)\nconst DEFAULT_SIMULATION_INTERVAL = 1000 / 60; // 60fps (16.66ms)\nconst noneSerializer = new NoneSerializer();\n\nexport const DEFAULT_SEAT_RESERVATION_TIME = Number(process.env.COLYSEUS_SEAT_RESERVATION_TIME || 15);\n\nexport type SimulationCallback = (deltaTime: number) => void;\n\nexport type RoomConstructor<T= any> = new (presence?: Presence) => Room<T>;\n\nexport interface IBroadcastOptions extends ISendOptions {\n except?: Client;\n}\n\nexport enum RoomInternalState {\n CREATING = 0,\n CREATED = 1,\n DISCONNECTING = 2,\n}\n\nexport abstract class Room<State= any, Metadata= any> {\n\n public get locked() {\n return this._locked;\n }\n\n public get metadata() {\n return this.listing.metadata;\n }\n\n public listing: RoomListingData<Metadata>;\n public clock: Clock = new Clock();\n\n public roomId: string;\n public roomName: string;\n\n public maxClients: number = Infinity;\n public patchRate: number = DEFAULT_PATCH_RATE;\n public autoDispose: boolean = true;\n\n public state: State;\n public presence: Presence;\n\n public clients: Client[] = [];\n public internalState: RoomInternalState = RoomInternalState.CREATING;\n\n /** @internal */\n public _events = new EventEmitter();\n\n // seat reservation & reconnection\n protected seatReservationTime: number = DEFAULT_SEAT_RESERVATION_TIME;\n protected reservedSeats: { [sessionId: string]: any } = {};\n protected reservedSeatTimeouts: { [sessionId: string]: NodeJS.Timer } = {};\n\n protected reconnections: { [sessionId: string]: Deferred } = {};\n\n private onMessageHandlers: {[id: string]: (client: Client, message: any) => void} = {};\n\n private _serializer: Serializer<State> = noneSerializer;\n private _afterNextPatchQueue: Array<[string | Client, IArguments]> = [];\n\n private _simulationInterval: NodeJS.Timer;\n private _patchInterval: NodeJS.Timer;\n\n private _locked: boolean = false;\n private _lockedExplicitly: boolean = false;\n private _maxClientsReached: boolean = false;\n\n // this timeout prevents rooms that are created by one process, but no client\n // ever had success joining into it on the specified interval.\n private _autoDisposeTimeout: NodeJS.Timer;\n\n constructor(presence?: Presence) {\n this.presence = presence;\n\n this._events.once('dispose', async () => {\n try {\n await this._dispose();\n\n } catch (e) {\n debugAndPrintError(`onDispose error: ${(e && e.message || e || 'promise rejected')}`);\n }\n this._events.emit('disconnect');\n });\n\n this.setPatchRate(this.patchRate);\n }\n\n // Optional abstract methods\n public onCreate?(options: any): void | Promise<any>;\n public onJoin?(client: Client, options?: any, auth?: any): void | Promise<any>;\n public onLeave?(client: Client, consented?: boolean): void | Promise<any>;\n public onDispose?(): void | Promise<any>;\n public onAuth(client: Client, options: any, request?: http.IncomingMessage): any | Promise<any> {\n return true;\n }\n\n public hasReachedMaxClients(): boolean {\n return (this.clients.length + Object.keys(this.reservedSeats).length) >= this.maxClients;\n }\n\n public setSeatReservationTime(seconds: number) {\n this.seatReservationTime = seconds;\n return this;\n }\n\n public hasReservedSeat(sessionId: string): boolean {\n return this.reservedSeats[sessionId] !== undefined;\n }\n\n public setSimulationInterval(onTickCallback?: SimulationCallback, delay: number = DEFAULT_SIMULATION_INTERVAL): void {\n // clear previous interval in case called setSimulationInterval more than once\n if (this._simulationInterval) { clearInterval(this._simulationInterval); }\n\n if (onTickCallback) {\n this._simulationInterval = setInterval(() => {\n this.clock.tick();\n onTickCallback(this.clock.deltaTime);\n }, delay);\n }\n }\n\n public setPatchRate(milliseconds: number): void {\n this.patchRate = milliseconds;\n\n // clear previous interval in case called setPatchRate more than once\n if (this._patchInterval) {\n clearInterval(this._patchInterval);\n this._patchInterval = undefined;\n }\n\n if (milliseconds !== null && milliseconds !== 0) {\n this._patchInterval = setInterval(() => this.broadcastPatch(), milliseconds);\n }\n }\n\n public setState(newState: State) {\n this.clock.start();\n\n if ('_definition' in newState) {\n this.setSerializer(new SchemaSerializer());\n }\n\n this._serializer.reset(newState);\n\n this.state = newState;\n }\n\n public setSerializer(serializer: Serializer<State>) {\n this._serializer = serializer;\n }\n\n public async setMetadata(meta: Partial<Metadata>) {\n if (!this.listing.metadata) {\n this.listing.metadata = meta as Metadata;\n\n } else {\n for (const field in meta) {\n if (!meta.hasOwnProperty(field)) { continue; }\n this.listing.metadata[field] = meta[field];\n }\n\n // `MongooseDriver` workaround: persit metadata mutations\n if ('markModified' in this.listing) {\n (this.listing as any).markModified('metadata');\n }\n }\n\n if (this.internalState === RoomInternalState.CREATED) {\n await this.listing.save();\n }\n }\n\n public async setPrivate(bool: boolean = true) {\n this.listing.private = bool;\n\n if (this.internalState === RoomInternalState.CREATED) {\n await this.listing.save();\n }\n }\n\n public async lock() {\n // rooms locked internally aren't explicit locks.\n this._lockedExplicitly = (arguments[0] === undefined);\n\n // skip if already locked.\n if (this._locked) { return; }\n\n this._locked = true;\n\n await this.listing.updateOne({\n $set: { locked: this._locked },\n });\n\n this._events.emit('lock');\n }\n\n public async unlock() {\n // only internal usage passes arguments to this function.\n if (arguments[0] === undefined) {\n this._lockedExplicitly = false;\n }\n\n // skip if already locked\n if (!this._locked) { return; }\n\n this._locked = false;\n\n await this.listing.updateOne({\n $set: { locked: this._locked },\n });\n\n this._events.emit('unlock');\n }\n\n public send(client: Client, type: string | number, message: any, options?: ISendOptions): void;\n public send(client: Client, message: Schema, options?: ISendOptions): void;\n public send(client: Client, messageOrType: any, messageOrOptions?: any | ISendOptions, options?: ISendOptions): void {\n console.warn('DEPRECATION WARNING: use client.send(...) instead of this.send(client, ...)');\n client.send(messageOrType, messageOrOptions, options);\n }\n\n public broadcast(type: string | number, message?: any, options?: IBroadcastOptions);\n public broadcast<T extends Schema>(message: T, options?: IBroadcastOptions);\n public broadcast(\n typeOrSchema: string | number | Schema,\n messageOrOptions?: any | IBroadcastOptions,\n options?: IBroadcastOptions,\n ) {\n const isSchema = (typeof(typeOrSchema) === 'object');\n const opts: IBroadcastOptions = ((isSchema) ? messageOrOptions : options);\n\n if (opts && opts.afterNextPatch) {\n delete opts.afterNextPatch;\n this._afterNextPatchQueue.push(['broadcast', arguments]);\n return;\n }\n\n if (isSchema) {\n this.broadcastMessageSchema(typeOrSchema as Schema, opts);\n\n } else {\n this.broadcastMessageType(typeOrSchema as string, messageOrOptions, opts);\n }\n }\n\n public broadcastPatch() {\n if (!this._simulationInterval) {\n this.clock.tick();\n }\n\n if (!this.state) {\n return false;\n }\n\n const hasChanges = this._serializer.applyPatches(this.clients, this.state);\n\n // broadcast messages enqueued for \"after patch\"\n this._dequeueAfterPatchMessages();\n\n return hasChanges;\n }\n\n public onMessage<T = any>(messageType: '*', callback: (client: Client, type: string | number, message: T) => void);\n public onMessage<T = any>(messageType: string | number, callback: (client: Client, message: T) => void);\n public onMessage<T = any>(messageType: '*' | string | number, callback: (...args: any[]) => void) {\n this.onMessageHandlers[messageType] = callback;\n // returns a method to unbind the callback\n return () => delete this.onMessageHandlers[messageType];\n }\n\n public async disconnect(): Promise<any> {\n this.internalState = RoomInternalState.DISCONNECTING;\n await this.listing.remove();\n\n this.autoDispose = true;\n\n const delayedDisconnection = new Promise<void>((resolve) =>\n this._events.once('disconnect', () => resolve()));\n\n for (const reconnection of Object.values(this.reconnections)) {\n reconnection.reject();\n }\n\n let numClients = this.clients.length;\n if (numClients > 0) {\n // clients may have `async onLeave`, room will be disposed after they're fulfilled\n while (numClients--) {\n this._forciblyCloseClient(this.clients[numClients], Protocol.WS_CLOSE_CONSENTED);\n }\n } else {\n // no clients connected, dispose immediately.\n this._events.emit('dispose');\n }\n\n return await delayedDisconnection;\n }\n\n public async ['_onJoin'](client: Client, req?: http.IncomingMessage) {\n const sessionId = client.sessionId;\n\n if (this.reservedSeatTimeouts[sessionId]) {\n clearTimeout(this.reservedSeatTimeouts[sessionId]);\n delete this.reservedSeatTimeouts[sessionId];\n }\n\n // clear auto-dispose timeout.\n if (this._autoDisposeTimeout) {\n clearTimeout(this._autoDisposeTimeout);\n this._autoDisposeTimeout = undefined;\n }\n\n // get seat reservation options and clear it\n const options = this.reservedSeats[sessionId];\n delete this.reservedSeats[sessionId];\n\n // share \"after next patch queue\" reference with every client.\n client._afterNextPatchQueue = this._afterNextPatchQueue;\n\n // bind clean-up callback when client connection closes\n client.ref['onleave'] = this._onLeave.bind(this, client);\n client.ref.once('close', client.ref['onleave']);\n\n this.clients.push(client);\n\n const reconnection = this.reconnections[sessionId];\n if (reconnection) {\n reconnection.resolve(client);\n\n } else {\n try {\n client.auth = await this.onAuth(client, options, req);\n\n if (!client.auth) {\n throw new ServerError(ErrorCode.AUTH_FAILED, 'onAuth failed');\n }\n\n if (this.onJoin) {\n await this.onJoin(client, options, client.auth);\n }\n } catch (e) {\n spliceOne(this.clients, this.clients.indexOf(client));\n\n // make sure an error code is provided.\n if (!e.code) {\n e.code = ErrorCode.APPLICATION_ERROR;\n }\n\n throw e;\n\n } finally {\n // remove seat reservation\n delete this.reservedSeats[sessionId];\n }\n }\n\n // emit 'join' to room handler\n this._events.emit('join', client);\n\n // allow client to send messages after onJoin has succeeded.\n client.ref.on('message', this._onMessage.bind(this, client));\n\n // confirm room id that matches the room name requested to join\n client.raw(getMessageBytes[Protocol.JOIN_ROOM](\n this._serializer.id,\n this._serializer.handshake && this._serializer.handshake(),\n ));\n }\n\n public allowReconnection(previousClient: Client, seconds: number = Infinity): Deferred<Client> {\n if (this.internalState === RoomInternalState.DISCONNECTING) {\n this._disposeIfEmpty(); // gracefully shutting down\n throw new Error('disconnecting');\n }\n\n const sessionId = previousClient.sessionId;\n this._reserveSeat(sessionId, true, seconds, true);\n\n // keep reconnection reference in case the user reconnects into this room.\n const reconnection = new Deferred<Client>();\n this.reconnections[sessionId] = reconnection;\n\n if (seconds !== Infinity) {\n // expire seat reservation after timeout\n this.reservedSeatTimeouts[sessionId] = setTimeout(() =>\n reconnection.reject(false), seconds * 1000);\n }\n\n const cleanup = () => {\n delete this.reservedSeats[sessionId];\n delete this.reconnections[sessionId];\n delete this.reservedSeatTimeouts[sessionId];\n };\n\n reconnection.\n then((newClient) => {\n newClient.auth = previousClient.auth;\n previousClient.ref = newClient.ref; // swap \"ref\" for convenience\n previousClient.state = ClientState.RECONNECTED;\n clearTimeout(this.reservedSeatTimeouts[sessionId]);\n cleanup();\n }).\n catch(() => {\n cleanup();\n this.resetAutoDisposeTimeout();\n });\n\n return reconnection;\n }\n\n protected resetAutoDisposeTimeout(timeoutInSeconds: number = 1) {\n clearTimeout(this._autoDisposeTimeout);\n\n if (!this.autoDispose) {\n return;\n }\n\n this._autoDisposeTimeout = setTimeout(() => {\n this._autoDisposeTimeout = undefined;\n this._disposeIfEmpty();\n }, timeoutInSeconds * 1000);\n }\n\n private broadcastMessageSchema<T extends Schema>(message: T, options: IBroadcastOptions = {}) {\n const encodedMessage = getMessageBytes[Protocol.ROOM_DATA_SCHEMA](message);\n\n let numClients = this.clients.length;\n while (numClients--) {\n const client = this.clients[numClients];\n\n if (options.except !== client) {\n client.enqueueRaw(encodedMessage);\n }\n }\n }\n\n private broadcastMessageType(type: string, message?: any, options: IBroadcastOptions = {}) {\n const encodedMessage = getMessageBytes[Protocol.ROOM_DATA](type, message);\n\n let numClients = this.clients.length;\n while (numClients--) {\n const client = this.clients[numClients];\n\n if (options.except !== client) {\n client.enqueueRaw(encodedMessage);\n }\n }\n }\n\n private sendFullState(client: Client): void {\n client.enqueueRaw(getMessageBytes[Protocol.ROOM_STATE](this._serializer.getFullState(client)));\n }\n\n private _dequeueAfterPatchMessages() {\n const length = this._afterNextPatchQueue.length;\n\n if (length > 0) {\n for (let i = 0; i < length; i++) {\n const [target, args] = this._afterNextPatchQueue[i];\n\n if (target === \"broadcast\") {\n this.broadcast.apply(this, args);\n\n } else {\n (target as Client).raw.apply(target, args);\n }\n }\n\n // new messages may have been added in the meantime,\n // let's splice the ones that have been processed\n this._afterNextPatchQueue.splice(0, length);\n }\n }\n\n private async _reserveSeat(\n sessionId: string,\n joinOptions: any = true,\n seconds: number = this.seatReservationTime,\n allowReconnection: boolean = false,\n ) {\n if (!allowReconnection && this.hasReachedMaxClients()) {\n return false;\n }\n\n this.reservedSeats[sessionId] = joinOptions;\n\n if (!allowReconnection) {\n await this._incrementClientCount();\n\n this.reservedSeatTimeouts[sessionId] = setTimeout(async () => {\n delete this.reservedSeats[sessionId];\n delete this.reservedSeatTimeouts[sessionId];\n await this._decrementClientCount();\n }, seconds * 1000);\n\n this.resetAutoDisposeTimeout(seconds);\n }\n\n return true;\n }\n\n private _disposeIfEmpty() {\n const willDispose = (\n this.autoDispose &&\n this._autoDisposeTimeout === undefined &&\n this.clients.length === 0 &&\n Object.keys(this.reservedSeats).length === 0\n );\n\n if (willDispose) {\n this._events.emit('dispose');\n }\n\n return willDispose;\n }\n\n private async _dispose(): Promise<any> {\n let userReturnData;\n\n if (this.onDispose) {\n userReturnData = this.onDispose();\n }\n\n if (this._patchInterval) {\n clearInterval(this._patchInterval);\n this._patchInterval = undefined;\n }\n\n if (this._simulationInterval) {\n clearInterval(this._simulationInterval);\n this._simulationInterval = undefined;\n }\n\n if (this._autoDisposeTimeout) {\n clearInterval(this._autoDisposeTimeout);\n this._autoDisposeTimeout = undefined;\n }\n\n // clear all timeouts/intervals + force to stop ticking\n this.clock.clear();\n this.clock.stop();\n\n return await (userReturnData || Promise.resolve());\n }\n\n private _onMessage(client: Client, bytes: number[]) {\n // skip if client is on LEAVING state.\n if (client.state === ClientState.LEAVING) { return; }\n\n const it: Iterator = { offset: 0 };\n const code = decode.uint8(bytes, it);\n\n if (!bytes) {\n debugAndPrintError(`${this.roomName} (${this.roomId}), couldn't decode message: ${bytes}`);\n return;\n }\n\n if (code === Protocol.ROOM_DATA) {\n const messageType = (decode.stringCheck(bytes, it))\n ? decode.string(bytes, it)\n : decode.number(bytes, it);\n\n let message;\n try {\n message = (bytes.length > it.offset)\n ? msgpack.decode(bytes.slice(it.offset, bytes.length))\n : undefined;\n } catch (e) {\n debugAndPrintError(e);\n return;\n }\n\n if (this.onMessageHandlers[messageType]) {\n this.onMessageHandlers[messageType](client, message);\n\n } else if (this.onMessageHandlers['*']) {\n (this.onMessageHandlers['*'] as any)(client, messageType, message);\n\n } else {\n debugAndPrintError(`onMessage for \"${messageType}\" not registered.`);\n }\n\n } else if (code === Protocol.JOIN_ROOM) {\n // join room has been acknowledged by the client\n client.state = ClientState.JOINED;\n\n // send current state when new client joins the room\n if (this.state) {\n this.sendFullState(client);\n }\n\n // dequeue messages sent before client has joined effectively (on user-defined `onJoin`)\n if (client._enqueuedMessages.length > 0) {\n client._enqueuedMessages.forEach((enqueued) => client.raw(enqueued));\n }\n delete client._enqueuedMessages;\n\n } else if (code === Protocol.LEAVE_ROOM) {\n this._forciblyCloseClient(client, Protocol.WS_CLOSE_CONSENTED);\n }\n\n }\n\n private _forciblyCloseClient(client: Client, closeCode: number) {\n // stop receiving messages from this client\n client.ref.removeAllListeners('message');\n\n // prevent \"onLeave\" from being called twice if player asks to leave\n client.ref.removeListener('close', client.ref['onleave']);\n\n // only effectively close connection when \"onLeave\" is fulfilled\n this._onLeave(client, closeCode).then(() => client.leave(Protocol.WS_CLOSE_NORMAL));\n }\n\n private async _onLeave(client: Client, code?: number): Promise<any> {\n const success = spliceOne(this.clients, this.clients.indexOf(client));\n\n // call 'onLeave' method only if the client has been successfully accepted.\n if (success && this.onLeave) {\n try {\n client.state = ClientState.LEAVING;\n await this.onLeave(client, (code === Protocol.WS_CLOSE_CONSENTED));\n\n } catch (e) {\n debugAndPrintError(`onLeave error: ${(e && e.message || e || 'promise rejected')}`);\n }\n }\n\n if (client.state !== ClientState.RECONNECTED) {\n // try to dispose immediatelly if client reconnection isn't set up.\n const willDispose = await this._decrementClientCount();\n\n this._events.emit('leave', client, willDispose);\n }\n }\n\n private async _incrementClientCount() {\n // lock automatically when maxClients is reached\n if (!this._locked && this.hasReachedMaxClients()) {\n this._maxClientsReached = true;\n this.lock.call(this, true);\n }\n\n await this.listing.updateOne({\n $inc: { clients: 1 },\n $set: { locked: this._locked },\n });\n }\n\n private async _decrementClientCount() {\n const willDispose = this._disposeIfEmpty();\n\n if (this.internalState === RoomInternalState.DISCONNECTING) {\n return;\n }\n\n // unlock if room is available for new connections\n if (!willDispose) {\n if (this._maxClientsReached && !this._lockedExplicitly) {\n this._maxClientsReached = false;\n this.unlock.call(this, true);\n }\n\n // update room listing cache\n await this.listing.updateOne({\n $inc: { clients: -1 },\n $set: { locked: this._locked },\n });\n }\n\n return willDispose;\n }\n\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Room.mjs","sources":["../src/Room.ts"],"sourcesContent":["import http from 'http';\nimport msgpack from 'notepack.io';\n\nimport { decode, Iterator, Schema } from '@colyseus/schema';\n\nimport Clock from '@gamestdio/timer';\nimport { EventEmitter } from 'events';\n\nimport { Presence } from './presence/Presence';\n\nimport { Serializer } from './serializer/Serializer';\nimport { NoneSerializer } from './serializer/NoneSerializer';\nimport { SchemaSerializer } from './serializer/SchemaSerializer';\n\nimport { ErrorCode, getMessageBytes, Protocol } from './Protocol';\nimport { Deferred, spliceOne } from './Utils';\n\nimport { debugAndPrintError, debugPatch } from './Debug';\nimport { ServerError } from './errors/ServerError';\nimport { Client, ClientState, ISendOptions } from './Transport';\nimport { RoomListingData } from './matchmaker/driver';\n\nconst DEFAULT_PATCH_RATE = 1000 / 20; // 20fps (50ms)\nconst DEFAULT_SIMULATION_INTERVAL = 1000 / 60; // 60fps (16.66ms)\nconst noneSerializer = new NoneSerializer();\n\nexport const DEFAULT_SEAT_RESERVATION_TIME = Number(process.env.COLYSEUS_SEAT_RESERVATION_TIME || 15);\n\nexport type SimulationCallback = (deltaTime: number) => void;\n\nexport type RoomConstructor<T= any> = new (presence?: Presence) => Room<T>;\n\nexport interface IBroadcastOptions extends ISendOptions {\n except?: Client;\n}\n\nexport enum RoomInternalState {\n CREATING = 0,\n CREATED = 1,\n DISCONNECTING = 2,\n}\n\nexport abstract class Room<State= any, Metadata= any> {\n\n public get locked() {\n return this._locked;\n }\n\n public get metadata() {\n return this.listing.metadata;\n }\n\n public listing: RoomListingData<Metadata>;\n public clock: Clock = new Clock();\n\n public roomId: string;\n public roomName: string;\n\n public maxClients: number = Infinity;\n public patchRate: number = DEFAULT_PATCH_RATE;\n public autoDispose: boolean = true;\n\n public state: State;\n public presence: Presence;\n\n public clients: Client[] = [];\n public internalState: RoomInternalState = RoomInternalState.CREATING;\n\n /** @internal */\n public _events = new EventEmitter();\n\n // seat reservation & reconnection\n protected seatReservationTime: number = DEFAULT_SEAT_RESERVATION_TIME;\n protected reservedSeats: { [sessionId: string]: any } = {};\n protected reservedSeatTimeouts: { [sessionId: string]: NodeJS.Timer } = {};\n\n protected reconnections: { [sessionId: string]: Deferred } = {};\n\n private onMessageHandlers: {[id: string]: (client: Client, message: any) => void} = {};\n\n private _serializer: Serializer<State> = noneSerializer;\n private _afterNextPatchQueue: Array<[string | Client, IArguments]> = [];\n\n private _simulationInterval: NodeJS.Timer;\n private _patchInterval: NodeJS.Timer;\n\n private _locked: boolean = false;\n private _lockedExplicitly: boolean = false;\n private _maxClientsReached: boolean = false;\n\n // this timeout prevents rooms that are created by one process, but no client\n // ever had success joining into it on the specified interval.\n private _autoDisposeTimeout: NodeJS.Timer;\n\n constructor(presence?: Presence) {\n this.presence = presence;\n\n this._events.once('dispose', async () => {\n try {\n await this._dispose();\n\n } catch (e) {\n debugAndPrintError(`onDispose error: ${(e && e.message || e || 'promise rejected')}`);\n }\n this._events.emit('disconnect');\n });\n\n this.setPatchRate(this.patchRate);\n // set default _autoDisposeTimeout\n this.resetAutoDisposeTimeout(this.seatReservationTime);\n }\n\n // Optional abstract methods\n public onCreate?(options: any): void | Promise<any>;\n public onJoin?(client: Client, options?: any, auth?: any): void | Promise<any>;\n public onLeave?(client: Client, consented?: boolean): void | Promise<any>;\n public onDispose?(): void | Promise<any>;\n public onAuth(client: Client, options: any, request?: http.IncomingMessage): any | Promise<any> {\n return true;\n }\n\n public hasReachedMaxClients(): boolean {\n return (this.clients.length + Object.keys(this.reservedSeats).length) >= this.maxClients;\n }\n\n public setSeatReservationTime(seconds: number) {\n this.seatReservationTime = seconds;\n return this;\n }\n\n public hasReservedSeat(sessionId: string): boolean {\n return this.reservedSeats[sessionId] !== undefined;\n }\n\n public setSimulationInterval(onTickCallback?: SimulationCallback, delay: number = DEFAULT_SIMULATION_INTERVAL): void {\n // clear previous interval in case called setSimulationInterval more than once\n if (this._simulationInterval) { clearInterval(this._simulationInterval); }\n\n if (onTickCallback) {\n this._simulationInterval = setInterval(() => {\n this.clock.tick();\n onTickCallback(this.clock.deltaTime);\n }, delay);\n }\n }\n\n public setPatchRate(milliseconds: number): void {\n this.patchRate = milliseconds;\n\n // clear previous interval in case called setPatchRate more than once\n if (this._patchInterval) {\n clearInterval(this._patchInterval);\n this._patchInterval = undefined;\n }\n\n if (milliseconds !== null && milliseconds !== 0) {\n this._patchInterval = setInterval(() => this.broadcastPatch(), milliseconds);\n }\n }\n\n public setState(newState: State) {\n this.clock.start();\n\n if ('_definition' in newState) {\n this.setSerializer(new SchemaSerializer());\n }\n\n this._serializer.reset(newState);\n\n this.state = newState;\n }\n\n public setSerializer(serializer: Serializer<State>) {\n this._serializer = serializer;\n }\n\n public async setMetadata(meta: Partial<Metadata>) {\n if (!this.listing.metadata) {\n this.listing.metadata = meta as Metadata;\n\n } else {\n for (const field in meta) {\n if (!meta.hasOwnProperty(field)) { continue; }\n this.listing.metadata[field] = meta[field];\n }\n\n // `MongooseDriver` workaround: persit metadata mutations\n if ('markModified' in this.listing) {\n (this.listing as any).markModified('metadata');\n }\n }\n\n if (this.internalState === RoomInternalState.CREATED) {\n await this.listing.save();\n }\n }\n\n public async setPrivate(bool: boolean = true) {\n this.listing.private = bool;\n\n if (this.internalState === RoomInternalState.CREATED) {\n await this.listing.save();\n }\n }\n\n public async lock() {\n // rooms locked internally aren't explicit locks.\n this._lockedExplicitly = (arguments[0] === undefined);\n\n // skip if already locked.\n if (this._locked) { return; }\n\n this._locked = true;\n\n await this.listing.updateOne({\n $set: { locked: this._locked },\n });\n\n this._events.emit('lock');\n }\n\n public async unlock() {\n // only internal usage passes arguments to this function.\n if (arguments[0] === undefined) {\n this._lockedExplicitly = false;\n }\n\n // skip if already locked\n if (!this._locked) { return; }\n\n this._locked = false;\n\n await this.listing.updateOne({\n $set: { locked: this._locked },\n });\n\n this._events.emit('unlock');\n }\n\n public send(client: Client, type: string | number, message: any, options?: ISendOptions): void;\n public send(client: Client, message: Schema, options?: ISendOptions): void;\n public send(client: Client, messageOrType: any, messageOrOptions?: any | ISendOptions, options?: ISendOptions): void {\n console.warn('DEPRECATION WARNING: use client.send(...) instead of this.send(client, ...)');\n client.send(messageOrType, messageOrOptions, options);\n }\n\n public broadcast(type: string | number, message?: any, options?: IBroadcastOptions);\n public broadcast<T extends Schema>(message: T, options?: IBroadcastOptions);\n public broadcast(\n typeOrSchema: string | number | Schema,\n messageOrOptions?: any | IBroadcastOptions,\n options?: IBroadcastOptions,\n ) {\n const isSchema = (typeof(typeOrSchema) === 'object');\n const opts: IBroadcastOptions = ((isSchema) ? messageOrOptions : options);\n\n if (opts && opts.afterNextPatch) {\n delete opts.afterNextPatch;\n this._afterNextPatchQueue.push(['broadcast', arguments]);\n return;\n }\n\n if (isSchema) {\n this.broadcastMessageSchema(typeOrSchema as Schema, opts);\n\n } else {\n this.broadcastMessageType(typeOrSchema as string, messageOrOptions, opts);\n }\n }\n\n public broadcastPatch() {\n if (!this._simulationInterval) {\n this.clock.tick();\n }\n\n if (!this.state) {\n return false;\n }\n\n const hasChanges = this._serializer.applyPatches(this.clients, this.state);\n\n // broadcast messages enqueued for \"after patch\"\n this._dequeueAfterPatchMessages();\n\n return hasChanges;\n }\n\n public onMessage<T = any>(messageType: '*', callback: (client: Client, type: string | number, message: T) => void);\n public onMessage<T = any>(messageType: string | number, callback: (client: Client, message: T) => void);\n public onMessage<T = any>(messageType: '*' | string | number, callback: (...args: any[]) => void) {\n this.onMessageHandlers[messageType] = callback;\n // returns a method to unbind the callback\n return () => delete this.onMessageHandlers[messageType];\n }\n\n public async disconnect(): Promise<any> {\n this.internalState = RoomInternalState.DISCONNECTING;\n await this.listing.remove();\n\n this.autoDispose = true;\n\n const delayedDisconnection = new Promise<void>((resolve) =>\n this._events.once('disconnect', () => resolve()));\n\n for (const reconnection of Object.values(this.reconnections)) {\n reconnection.reject();\n }\n\n let numClients = this.clients.length;\n if (numClients > 0) {\n // clients may have `async onLeave`, room will be disposed after they're fulfilled\n while (numClients--) {\n this._forciblyCloseClient(this.clients[numClients], Protocol.WS_CLOSE_CONSENTED);\n }\n } else {\n // no clients connected, dispose immediately.\n this._events.emit('dispose');\n }\n\n return await delayedDisconnection;\n }\n\n public async ['_onJoin'](client: Client, req?: http.IncomingMessage) {\n const sessionId = client.sessionId;\n\n if (this.reservedSeatTimeouts[sessionId]) {\n clearTimeout(this.reservedSeatTimeouts[sessionId]);\n delete this.reservedSeatTimeouts[sessionId];\n }\n\n // clear auto-dispose timeout.\n if (this._autoDisposeTimeout) {\n clearTimeout(this._autoDisposeTimeout);\n this._autoDisposeTimeout = undefined;\n }\n\n // get seat reservation options and clear it\n const options = this.reservedSeats[sessionId];\n delete this.reservedSeats[sessionId];\n\n // share \"after next patch queue\" reference with every client.\n client._afterNextPatchQueue = this._afterNextPatchQueue;\n\n // bind clean-up callback when client connection closes\n client.ref['onleave'] = this._onLeave.bind(this, client);\n client.ref.once('close', client.ref['onleave']);\n\n this.clients.push(client);\n\n const reconnection = this.reconnections[sessionId];\n if (reconnection) {\n reconnection.resolve(client);\n\n } else {\n try {\n client.auth = await this.onAuth(client, options, req);\n\n if (!client.auth) {\n throw new ServerError(ErrorCode.AUTH_FAILED, 'onAuth failed');\n }\n\n if (this.onJoin) {\n await this.onJoin(client, options, client.auth);\n }\n } catch (e) {\n spliceOne(this.clients, this.clients.indexOf(client));\n\n // make sure an error code is provided.\n if (!e.code) {\n e.code = ErrorCode.APPLICATION_ERROR;\n }\n\n throw e;\n\n } finally {\n // remove seat reservation\n delete this.reservedSeats[sessionId];\n }\n }\n\n // emit 'join' to room handler\n this._events.emit('join', client);\n\n // allow client to send messages after onJoin has succeeded.\n client.ref.on('message', this._onMessage.bind(this, client));\n\n // confirm room id that matches the room name requested to join\n client.raw(getMessageBytes[Protocol.JOIN_ROOM](\n this._serializer.id,\n this._serializer.handshake && this._serializer.handshake(),\n ));\n }\n\n public allowReconnection(previousClient: Client, seconds: number = Infinity): Deferred<Client> {\n if (this.internalState === RoomInternalState.DISCONNECTING) {\n this._disposeIfEmpty(); // gracefully shutting down\n throw new Error('disconnecting');\n }\n\n const sessionId = previousClient.sessionId;\n this._reserveSeat(sessionId, true, seconds, true);\n\n // keep reconnection reference in case the user reconnects into this room.\n const reconnection = new Deferred<Client>();\n this.reconnections[sessionId] = reconnection;\n\n if (seconds !== Infinity) {\n // expire seat reservation after timeout\n this.reservedSeatTimeouts[sessionId] = setTimeout(() =>\n reconnection.reject(false), seconds * 1000);\n }\n\n const cleanup = () => {\n delete this.reservedSeats[sessionId];\n delete this.reconnections[sessionId];\n delete this.reservedSeatTimeouts[sessionId];\n };\n\n reconnection.\n then((newClient) => {\n newClient.auth = previousClient.auth;\n previousClient.ref = newClient.ref; // swap \"ref\" for convenience\n previousClient.state = ClientState.RECONNECTED;\n clearTimeout(this.reservedSeatTimeouts[sessionId]);\n cleanup();\n }).\n catch(() => {\n cleanup();\n this.resetAutoDisposeTimeout();\n });\n\n return reconnection;\n }\n\n protected resetAutoDisposeTimeout(timeoutInSeconds: number = 1) {\n clearTimeout(this._autoDisposeTimeout);\n\n if (!this.autoDispose) {\n return;\n }\n\n this._autoDisposeTimeout = setTimeout(() => {\n this._autoDisposeTimeout = undefined;\n this._disposeIfEmpty();\n }, timeoutInSeconds * 1000);\n }\n\n private broadcastMessageSchema<T extends Schema>(message: T, options: IBroadcastOptions = {}) {\n const encodedMessage = getMessageBytes[Protocol.ROOM_DATA_SCHEMA](message);\n\n let numClients = this.clients.length;\n while (numClients--) {\n const client = this.clients[numClients];\n\n if (options.except !== client) {\n client.enqueueRaw(encodedMessage);\n }\n }\n }\n\n private broadcastMessageType(type: string, message?: any, options: IBroadcastOptions = {}) {\n const encodedMessage = getMessageBytes[Protocol.ROOM_DATA](type, message);\n\n let numClients = this.clients.length;\n while (numClients--) {\n const client = this.clients[numClients];\n\n if (options.except !== client) {\n client.enqueueRaw(encodedMessage);\n }\n }\n }\n\n private sendFullState(client: Client): void {\n client.enqueueRaw(getMessageBytes[Protocol.ROOM_STATE](this._serializer.getFullState(client)));\n }\n\n private _dequeueAfterPatchMessages() {\n const length = this._afterNextPatchQueue.length;\n\n if (length > 0) {\n for (let i = 0; i < length; i++) {\n const [target, args] = this._afterNextPatchQueue[i];\n\n if (target === \"broadcast\") {\n this.broadcast.apply(this, args);\n\n } else {\n (target as Client).raw.apply(target, args);\n }\n }\n\n // new messages may have been added in the meantime,\n // let's splice the ones that have been processed\n this._afterNextPatchQueue.splice(0, length);\n }\n }\n\n private async _reserveSeat(\n sessionId: string,\n joinOptions: any = true,\n seconds: number = this.seatReservationTime,\n allowReconnection: boolean = false,\n ) {\n if (!allowReconnection && this.hasReachedMaxClients()) {\n return false;\n }\n\n this.reservedSeats[sessionId] = joinOptions;\n\n if (!allowReconnection) {\n await this._incrementClientCount();\n\n this.reservedSeatTimeouts[sessionId] = setTimeout(async () => {\n delete this.reservedSeats[sessionId];\n delete this.reservedSeatTimeouts[sessionId];\n await this._decrementClientCount();\n }, seconds * 1000);\n\n this.resetAutoDisposeTimeout(seconds);\n }\n\n return true;\n }\n\n private _disposeIfEmpty() {\n const willDispose = (\n this.autoDispose &&\n this._autoDisposeTimeout === undefined &&\n this.clients.length === 0 &&\n Object.keys(this.reservedSeats).length === 0\n );\n\n if (willDispose) {\n this._events.emit('dispose');\n }\n\n return willDispose;\n }\n\n private async _dispose(): Promise<any> {\n let userReturnData;\n\n if (this.onDispose) {\n userReturnData = this.onDispose();\n }\n\n if (this._patchInterval) {\n clearInterval(this._patchInterval);\n this._patchInterval = undefined;\n }\n\n if (this._simulationInterval) {\n clearInterval(this._simulationInterval);\n this._simulationInterval = undefined;\n }\n\n if (this._autoDisposeTimeout) {\n clearInterval(this._autoDisposeTimeout);\n this._autoDisposeTimeout = undefined;\n }\n\n // clear all timeouts/intervals + force to stop ticking\n this.clock.clear();\n this.clock.stop();\n\n return await (userReturnData || Promise.resolve());\n }\n\n private _onMessage(client: Client, bytes: number[]) {\n // skip if client is on LEAVING state.\n if (client.state === ClientState.LEAVING) { return; }\n\n const it: Iterator = { offset: 0 };\n const code = decode.uint8(bytes, it);\n\n if (!bytes) {\n debugAndPrintError(`${this.roomName} (${this.roomId}), couldn't decode message: ${bytes}`);\n return;\n }\n\n if (code === Protocol.ROOM_DATA) {\n const messageType = (decode.stringCheck(bytes, it))\n ? decode.string(bytes, it)\n : decode.number(bytes, it);\n\n let message;\n try {\n message = (bytes.length > it.offset)\n ? msgpack.decode(bytes.slice(it.offset, bytes.length))\n : undefined;\n } catch (e) {\n debugAndPrintError(e);\n return;\n }\n\n if (this.onMessageHandlers[messageType]) {\n this.onMessageHandlers[messageType](client, message);\n\n } else if (this.onMessageHandlers['*']) {\n (this.onMessageHandlers['*'] as any)(client, messageType, message);\n\n } else {\n debugAndPrintError(`onMessage for \"${messageType}\" not registered.`);\n }\n\n } else if (code === Protocol.JOIN_ROOM) {\n // join room has been acknowledged by the client\n client.state = ClientState.JOINED;\n\n // send current state when new client joins the room\n if (this.state) {\n this.sendFullState(client);\n }\n\n // dequeue messages sent before client has joined effectively (on user-defined `onJoin`)\n if (client._enqueuedMessages.length > 0) {\n client._enqueuedMessages.forEach((enqueued) => client.raw(enqueued));\n }\n delete client._enqueuedMessages;\n\n } else if (code === Protocol.LEAVE_ROOM) {\n this._forciblyCloseClient(client, Protocol.WS_CLOSE_CONSENTED);\n }\n\n }\n\n private _forciblyCloseClient(client: Client, closeCode: number) {\n // stop receiving messages from this client\n client.ref.removeAllListeners('message');\n\n // prevent \"onLeave\" from being called twice if player asks to leave\n client.ref.removeListener('close', client.ref['onleave']);\n\n // only effectively close connection when \"onLeave\" is fulfilled\n this._onLeave(client, closeCode).then(() => client.leave(Protocol.WS_CLOSE_NORMAL));\n }\n\n private async _onLeave(client: Client, code?: number): Promise<any> {\n const success = spliceOne(this.clients, this.clients.indexOf(client));\n\n // call 'onLeave' method only if the client has been successfully accepted.\n if (success && this.onLeave) {\n try {\n client.state = ClientState.LEAVING;\n await this.onLeave(client, (code === Protocol.WS_CLOSE_CONSENTED));\n\n } catch (e) {\n debugAndPrintError(`onLeave error: ${(e && e.message || e || 'promise rejected')}`);\n }\n }\n\n if (client.state !== ClientState.RECONNECTED) {\n // try to dispose immediatelly if client reconnection isn't set up.\n const willDispose = await this._decrementClientCount();\n\n this._events.emit('leave', client, willDispose);\n }\n }\n\n private async _incrementClientCount() {\n // lock automatically when maxClients is reached\n if (!this._locked && this.hasReachedMaxClients()) {\n this._maxClientsReached = true;\n this.lock.call(this, true);\n }\n\n await this.listing.updateOne({\n $inc: { clients: 1 },\n $set: { locked: this._locked },\n });\n }\n\n private async _decrementClientCount() {\n const willDispose = this._disposeIfEmpty();\n\n if (this.internalState === RoomInternalState.DISCONNECTING) {\n return;\n }\n\n // unlock if room is available for new connections\n if (!willDispose) {\n if (this._maxClientsReached && !this._lockedExplicitly) {\n this._maxClientsReached = false;\n this.unlock.call(this, true);\n }\n\n // update room listing cache\n await this.listing.updateOne({\n $inc: { clients: -1 },\n $set: { locked: this._locked },\n });\n }\n\n return willDispose;\n }\n\n}\n"],"names":[],"mappings":"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"}
|
package/build/Server.js
CHANGED
|
@@ -207,7 +207,7 @@ class Server {
|
|
|
207
207
|
}
|
|
208
208
|
else if (req.method === 'GET') {
|
|
209
209
|
const matchedParams = req.url.match(this.allowedRoomNameChars);
|
|
210
|
-
const roomName = matchedParams[matchedParams.length - 1];
|
|
210
|
+
const roomName = matchedParams.length > 1 ? matchedParams[matchedParams.length - 1] : "";
|
|
211
211
|
headers['Content-Type'] = 'application/json';
|
|
212
212
|
res.writeHead(200, headers);
|
|
213
213
|
res.write(JSON.stringify(await controller.getAvailableRooms(roomName)));
|
package/build/Server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Server.js","sources":["../src/Server.ts"],"sourcesContent":["import http, { IncomingMessage, ServerResponse } from 'http';\n\nimport { debugAndPrintError, debugMatchMaking } from './Debug';\nimport * as matchMaker from './MatchMaker';\nimport { RegisteredHandler } from './matchmaker/RegisteredHandler';\nimport { Presence } from './presence/Presence';\n\nimport { Room } from './Room';\nimport { Type } from './types';\nimport { registerGracefulShutdown } from './Utils';\n\nimport { generateId } from '.';\nimport { registerNode, unregisterNode } from './discovery';\n\nimport { LocalPresence } from './presence/LocalPresence';\nimport { LocalDriver } from './matchmaker/driver';\n\nimport { Transport } from './Transport';\n\n// IServerOptions &\nexport type ServerOptions = {\n presence?: Presence,\n driver?: matchMaker.MatchMakerDriver,\n transport?: Transport,\n gracefullyShutdown?: boolean,\n\n /**\n * Options below are now part of WebSocketTransport (@colyseus/ws-transport)\n * TODO: remove me on 0.15.0\n */\n /** @deprecated */\n pingInterval?: number,\n\n /** @deprecated */\n pingMaxRetries?: number,\n\n /** @deprecated */\n verifyClient?: any,\n\n /** @deprecated */\n server?: http.Server,\n};\n\nexport class Server {\n public transport: Transport;\n\n protected presence: Presence;\n protected port: number;\n protected driver: matchMaker.MatchMakerDriver;\n protected processId: string = generateId();\n\n private matchmakeRoute = 'matchmake';\n private allowedRoomNameChars = /([a-zA-Z_\\-0-9]+)/gi;\n\n constructor(options: ServerOptions = {}) {\n const { gracefullyShutdown = true } = options;\n\n this.presence = options.presence || new LocalPresence();\n this.driver = options.driver || new LocalDriver();\n\n // setup matchmaker\n matchMaker.setup(this.presence, this.driver, this.processId);\n\n // \"presence\" option is not used from now on\n delete options.presence;\n\n this.attach(options);\n\n if (gracefullyShutdown) {\n registerGracefulShutdown((err) => this.gracefullyShutdown(true, err));\n }\n }\n\n public attach(options: ServerOptions) {\n /**\n * Display deprecation warnings for moved Transport options.\n * TODO: Remove me on 0.15\n */\n if (\n options.pingInterval !== undefined ||\n options.pingMaxRetries !== undefined ||\n options.server !== undefined ||\n options.verifyClient !== undefined\n ) {\n console.warn(\"DEPRECATION WARNING: 'pingInterval', 'pingMaxRetries', 'server', and 'verifyClient' Server options will be permanently moved to WebSocketTransport on v0.15\");\n console.warn(`new Server({\n transport: new WebSocketTransport({\n pingInterval: ...,\n pingMaxRetries: ...,\n server: ...,\n verifyClient: ...\n })\n})`);\n console.warn(\"👉 Documentation: https://docs.colyseus.io/server/transport/\")\n }\n\n const transport = options.transport || this.getDefaultTransport(options);\n delete options.transport;\n\n this.transport = transport;\n\n if (this.transport.server) {\n this.transport.server.once('listening', () => this.registerProcessForDiscovery());\n this.attachMatchMakingRoutes(this.transport.server as http.Server);\n }\n }\n\n /**\n * Bind the server into the port specified.\n *\n * @param port\n * @param hostname\n * @param backlog\n * @param listeningListener\n */\n public async listen(port: number, hostname?: string, backlog?: number, listeningListener?: Function) {\n this.port = port;\n\n return new Promise<void>((resolve, reject) => {\n this.transport.server?.on('error', (err) => reject(err));\n this.transport.listen(port, hostname, backlog, (err) => {\n if (listeningListener) {\n listeningListener(err);\n }\n\n if (err) {\n reject(err);\n\n } else {\n resolve();\n }\n });\n });\n }\n\n public registerProcessForDiscovery() {\n // register node for proxy/service discovery\n registerNode(this.presence, {\n port: this.port,\n processId: this.processId,\n });\n }\n\n /**\n * Define a new type of room for matchmaking.\n *\n * @param name public room identifier for match-making.\n * @param handler Room class definition\n * @param defaultOptions default options for `onCreate`\n */\n public define<T extends Type<Room>>(\n name: string,\n handler: T,\n defaultOptions?: Parameters<NonNullable<InstanceType<T>['onCreate']>>[0],\n ): RegisteredHandler {\n return matchMaker.defineRoomType(name, handler, defaultOptions);\n }\n\n public async gracefullyShutdown(exit: boolean = true, err?: Error) {\n await unregisterNode(this.presence, {\n port: this.port,\n processId: this.processId,\n });\n\n try {\n await matchMaker.gracefullyShutdown();\n\n this.transport.shutdown();\n this.presence.shutdown();\n this.driver.shutdown();\n\n await this.onShutdownCallback();\n\n } catch (e) {\n debugAndPrintError(`error during shutdown: ${e}`);\n\n } finally {\n if (exit) {\n process.exit(err ? 1 : 0);\n }\n }\n }\n\n /**\n * Add simulated latency between client and server.\n * @param milliseconds round trip latency in milliseconds.\n */\n public simulateLatency(milliseconds: number) {\n console.warn(`📶️❗ Colyseus latency simulation enabled → ${milliseconds}ms latency for round trip.`);\n\n const halfwayMS = (milliseconds / 2);\n this.transport.simulateLatency(halfwayMS);\n\n /* tslint:disable:no-string-literal */\n const _onMessage = Room.prototype['_onMessage'];\n /* tslint:disable:no-string-literal */\n Room.prototype['_onMessage'] = function (client, buffer) {\n // uWebSockets.js: duplicate buffer because it is cleared at native layer before the timeout.\n const cachedBuffer = Buffer.from(buffer);\n setTimeout(() => _onMessage.call(this, client, cachedBuffer), halfwayMS);\n };\n }\n\n /**\n * Register a callback that is going to be executed before the server shuts down.\n * @param callback\n */\n public onShutdown(callback: () => void | Promise<any>) {\n this.onShutdownCallback = callback;\n }\n\n protected getDefaultTransport(_: any): Transport {\n throw new Error(\"Please provide a 'transport' layer. Default transport not set.\");\n }\n\n protected onShutdownCallback: () => void | Promise<any> =\n () => Promise.resolve()\n\n protected attachMatchMakingRoutes(server: http.Server) {\n const listeners = server.listeners('request').slice(0);\n server.removeAllListeners('request');\n\n server.on('request', (req, res) => {\n if (req.url.indexOf(`/${this.matchmakeRoute}`) !== -1) {\n debugMatchMaking('received matchmake request: %s', req.url);\n this.handleMatchMakeRequest(req, res);\n\n } else {\n for (let i = 0, l = listeners.length; i < l; i++) {\n listeners[i].call(server, req, res);\n }\n }\n });\n }\n\n protected async handleMatchMakeRequest(req: IncomingMessage, res: ServerResponse) {\n const headers = {\n 'Access-Control-Allow-Headers': 'Origin, X-Requested-With, Content-Type, Accept',\n 'Access-Control-Allow-Methods': 'OPTIONS, POST, GET',\n 'Access-Control-Allow-Origin': '*',\n 'Access-Control-Max-Age': 2592000,\n // ...\n };\n\n if (req.method === 'OPTIONS') {\n res.writeHead(204, headers);\n res.end();\n\n } else if (req.method === 'POST') {\n const matchedParams = req.url.match(this.allowedRoomNameChars);\n const matchmakeIndex = matchedParams.indexOf(this.matchmakeRoute);\n const method = matchedParams[matchmakeIndex + 1];\n const name = matchedParams[matchmakeIndex + 2] || '';\n\n const data = [];\n req.on('data', (chunk) => data.push(chunk));\n req.on('end', async () => {\n headers['Content-Type'] = 'application/json';\n res.writeHead(200, headers);\n\n const clientOptions = JSON.parse(Buffer.concat(data).toString());\n try {\n const response = await matchMaker.controller.invokeMethod(method, name, clientOptions);\n res.write(JSON.stringify(response));\n\n } catch (e) {\n res.write(JSON.stringify({ code: e.code, error: e.message, }));\n }\n\n res.end();\n });\n\n } else if (req.method === 'GET') {\n const matchedParams = req.url.match(this.allowedRoomNameChars);\n const roomName = matchedParams[matchedParams.length - 1];\n\n headers['Content-Type'] = 'application/json';\n res.writeHead(200, headers);\n res.write(JSON.stringify(await matchMaker.controller.getAvailableRooms(roomName)));\n res.end();\n }\n\n }\n\n}\n"],"names":["generateId","LocalPresence","LocalDriver","matchMaker.setup","registerGracefulShutdown","registerNode","matchMaker.defineRoomType","unregisterNode","matchMaker.gracefullyShutdown","debugAndPrintError","Room","debugMatchMaking","matchMaker.controller.invokeMethod","matchMaker.controller.getAvailableRooms"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Server.js","sources":["../src/Server.ts"],"sourcesContent":["import http, { IncomingMessage, ServerResponse } from 'http';\n\nimport { debugAndPrintError, debugMatchMaking } from './Debug';\nimport * as matchMaker from './MatchMaker';\nimport { RegisteredHandler } from './matchmaker/RegisteredHandler';\nimport { Presence } from './presence/Presence';\n\nimport { Room } from './Room';\nimport { Type } from './types';\nimport { registerGracefulShutdown } from './Utils';\n\nimport { generateId } from '.';\nimport { registerNode, unregisterNode } from './discovery';\n\nimport { LocalPresence } from './presence/LocalPresence';\nimport { LocalDriver } from './matchmaker/driver';\n\nimport { Transport } from './Transport';\n\n// IServerOptions &\nexport type ServerOptions = {\n presence?: Presence,\n driver?: matchMaker.MatchMakerDriver,\n transport?: Transport,\n gracefullyShutdown?: boolean,\n\n /**\n * Options below are now part of WebSocketTransport (@colyseus/ws-transport)\n * TODO: remove me on 0.15.0\n */\n /** @deprecated */\n pingInterval?: number,\n\n /** @deprecated */\n pingMaxRetries?: number,\n\n /** @deprecated */\n verifyClient?: any,\n\n /** @deprecated */\n server?: http.Server,\n};\n\nexport class Server {\n public transport: Transport;\n\n protected presence: Presence;\n protected port: number;\n protected driver: matchMaker.MatchMakerDriver;\n protected processId: string = generateId();\n\n private matchmakeRoute = 'matchmake';\n private allowedRoomNameChars = /([a-zA-Z_\\-0-9]+)/gi;\n\n constructor(options: ServerOptions = {}) {\n const { gracefullyShutdown = true } = options;\n\n this.presence = options.presence || new LocalPresence();\n this.driver = options.driver || new LocalDriver();\n\n // setup matchmaker\n matchMaker.setup(this.presence, this.driver, this.processId);\n\n // \"presence\" option is not used from now on\n delete options.presence;\n\n this.attach(options);\n\n if (gracefullyShutdown) {\n registerGracefulShutdown((err) => this.gracefullyShutdown(true, err));\n }\n }\n\n public attach(options: ServerOptions) {\n /**\n * Display deprecation warnings for moved Transport options.\n * TODO: Remove me on 0.15\n */\n if (\n options.pingInterval !== undefined ||\n options.pingMaxRetries !== undefined ||\n options.server !== undefined ||\n options.verifyClient !== undefined\n ) {\n console.warn(\"DEPRECATION WARNING: 'pingInterval', 'pingMaxRetries', 'server', and 'verifyClient' Server options will be permanently moved to WebSocketTransport on v0.15\");\n console.warn(`new Server({\n transport: new WebSocketTransport({\n pingInterval: ...,\n pingMaxRetries: ...,\n server: ...,\n verifyClient: ...\n })\n})`);\n console.warn(\"👉 Documentation: https://docs.colyseus.io/server/transport/\")\n }\n\n const transport = options.transport || this.getDefaultTransport(options);\n delete options.transport;\n\n this.transport = transport;\n\n if (this.transport.server) {\n this.transport.server.once('listening', () => this.registerProcessForDiscovery());\n this.attachMatchMakingRoutes(this.transport.server as http.Server);\n }\n }\n\n /**\n * Bind the server into the port specified.\n *\n * @param port\n * @param hostname\n * @param backlog\n * @param listeningListener\n */\n public async listen(port: number, hostname?: string, backlog?: number, listeningListener?: Function) {\n this.port = port;\n\n return new Promise<void>((resolve, reject) => {\n this.transport.server?.on('error', (err) => reject(err));\n this.transport.listen(port, hostname, backlog, (err) => {\n if (listeningListener) {\n listeningListener(err);\n }\n\n if (err) {\n reject(err);\n\n } else {\n resolve();\n }\n });\n });\n }\n\n public registerProcessForDiscovery() {\n // register node for proxy/service discovery\n registerNode(this.presence, {\n port: this.port,\n processId: this.processId,\n });\n }\n\n /**\n * Define a new type of room for matchmaking.\n *\n * @param name public room identifier for match-making.\n * @param handler Room class definition\n * @param defaultOptions default options for `onCreate`\n */\n public define<T extends Type<Room>>(\n name: string,\n handler: T,\n defaultOptions?: Parameters<NonNullable<InstanceType<T>['onCreate']>>[0],\n ): RegisteredHandler {\n return matchMaker.defineRoomType(name, handler, defaultOptions);\n }\n\n public async gracefullyShutdown(exit: boolean = true, err?: Error) {\n await unregisterNode(this.presence, {\n port: this.port,\n processId: this.processId,\n });\n\n try {\n await matchMaker.gracefullyShutdown();\n\n this.transport.shutdown();\n this.presence.shutdown();\n this.driver.shutdown();\n\n await this.onShutdownCallback();\n\n } catch (e) {\n debugAndPrintError(`error during shutdown: ${e}`);\n\n } finally {\n if (exit) {\n process.exit(err ? 1 : 0);\n }\n }\n }\n\n /**\n * Add simulated latency between client and server.\n * @param milliseconds round trip latency in milliseconds.\n */\n public simulateLatency(milliseconds: number) {\n console.warn(`📶️❗ Colyseus latency simulation enabled → ${milliseconds}ms latency for round trip.`);\n\n const halfwayMS = (milliseconds / 2);\n this.transport.simulateLatency(halfwayMS);\n\n /* tslint:disable:no-string-literal */\n const _onMessage = Room.prototype['_onMessage'];\n /* tslint:disable:no-string-literal */\n Room.prototype['_onMessage'] = function (client, buffer) {\n // uWebSockets.js: duplicate buffer because it is cleared at native layer before the timeout.\n const cachedBuffer = Buffer.from(buffer);\n setTimeout(() => _onMessage.call(this, client, cachedBuffer), halfwayMS);\n };\n }\n\n /**\n * Register a callback that is going to be executed before the server shuts down.\n * @param callback\n */\n public onShutdown(callback: () => void | Promise<any>) {\n this.onShutdownCallback = callback;\n }\n\n protected getDefaultTransport(_: any): Transport {\n throw new Error(\"Please provide a 'transport' layer. Default transport not set.\");\n }\n\n protected onShutdownCallback: () => void | Promise<any> =\n () => Promise.resolve()\n\n protected attachMatchMakingRoutes(server: http.Server) {\n const listeners = server.listeners('request').slice(0);\n server.removeAllListeners('request');\n\n server.on('request', (req, res) => {\n if (req.url.indexOf(`/${this.matchmakeRoute}`) !== -1) {\n debugMatchMaking('received matchmake request: %s', req.url);\n this.handleMatchMakeRequest(req, res);\n\n } else {\n for (let i = 0, l = listeners.length; i < l; i++) {\n listeners[i].call(server, req, res);\n }\n }\n });\n }\n\n protected async handleMatchMakeRequest(req: IncomingMessage, res: ServerResponse) {\n const headers = {\n 'Access-Control-Allow-Headers': 'Origin, X-Requested-With, Content-Type, Accept',\n 'Access-Control-Allow-Methods': 'OPTIONS, POST, GET',\n 'Access-Control-Allow-Origin': '*',\n 'Access-Control-Max-Age': 2592000,\n // ...\n };\n\n if (req.method === 'OPTIONS') {\n res.writeHead(204, headers);\n res.end();\n\n } else if (req.method === 'POST') {\n const matchedParams = req.url.match(this.allowedRoomNameChars);\n const matchmakeIndex = matchedParams.indexOf(this.matchmakeRoute);\n const method = matchedParams[matchmakeIndex + 1];\n const name = matchedParams[matchmakeIndex + 2] || '';\n\n const data = [];\n req.on('data', (chunk) => data.push(chunk));\n req.on('end', async () => {\n headers['Content-Type'] = 'application/json';\n res.writeHead(200, headers);\n\n const clientOptions = JSON.parse(Buffer.concat(data).toString());\n try {\n const response = await matchMaker.controller.invokeMethod(method, name, clientOptions);\n res.write(JSON.stringify(response));\n\n } catch (e) {\n res.write(JSON.stringify({ code: e.code, error: e.message, }));\n }\n\n res.end();\n });\n\n } else if (req.method === 'GET') {\n const matchedParams = req.url.match(this.allowedRoomNameChars);\n const roomName = matchedParams.length > 1 ? matchedParams[matchedParams.length - 1] : \"\";\n\n headers['Content-Type'] = 'application/json';\n res.writeHead(200, headers);\n res.write(JSON.stringify(await matchMaker.controller.getAvailableRooms(roomName)));\n res.end();\n }\n\n }\n\n}\n"],"names":["generateId","LocalPresence","LocalDriver","matchMaker.setup","registerGracefulShutdown","registerNode","matchMaker.defineRoomType","unregisterNode","matchMaker.gracefullyShutdown","debugAndPrintError","Room","debugMatchMaking","matchMaker.controller.invokeMethod","matchMaker.controller.getAvailableRooms"],"mappings":"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"}
|
package/build/Server.mjs
CHANGED
|
@@ -203,7 +203,7 @@ class Server {
|
|
|
203
203
|
}
|
|
204
204
|
else if (req.method === 'GET') {
|
|
205
205
|
const matchedParams = req.url.match(this.allowedRoomNameChars);
|
|
206
|
-
const roomName = matchedParams[matchedParams.length - 1];
|
|
206
|
+
const roomName = matchedParams.length > 1 ? matchedParams[matchedParams.length - 1] : "";
|
|
207
207
|
headers['Content-Type'] = 'application/json';
|
|
208
208
|
res.writeHead(200, headers);
|
|
209
209
|
res.write(JSON.stringify(await getAvailableRooms(roomName)));
|
package/build/Server.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Server.mjs","sources":["../src/Server.ts"],"sourcesContent":["import http, { IncomingMessage, ServerResponse } from 'http';\n\nimport { debugAndPrintError, debugMatchMaking } from './Debug';\nimport * as matchMaker from './MatchMaker';\nimport { RegisteredHandler } from './matchmaker/RegisteredHandler';\nimport { Presence } from './presence/Presence';\n\nimport { Room } from './Room';\nimport { Type } from './types';\nimport { registerGracefulShutdown } from './Utils';\n\nimport { generateId } from '.';\nimport { registerNode, unregisterNode } from './discovery';\n\nimport { LocalPresence } from './presence/LocalPresence';\nimport { LocalDriver } from './matchmaker/driver';\n\nimport { Transport } from './Transport';\n\n// IServerOptions &\nexport type ServerOptions = {\n presence?: Presence,\n driver?: matchMaker.MatchMakerDriver,\n transport?: Transport,\n gracefullyShutdown?: boolean,\n\n /**\n * Options below are now part of WebSocketTransport (@colyseus/ws-transport)\n * TODO: remove me on 0.15.0\n */\n /** @deprecated */\n pingInterval?: number,\n\n /** @deprecated */\n pingMaxRetries?: number,\n\n /** @deprecated */\n verifyClient?: any,\n\n /** @deprecated */\n server?: http.Server,\n};\n\nexport class Server {\n public transport: Transport;\n\n protected presence: Presence;\n protected port: number;\n protected driver: matchMaker.MatchMakerDriver;\n protected processId: string = generateId();\n\n private matchmakeRoute = 'matchmake';\n private allowedRoomNameChars = /([a-zA-Z_\\-0-9]+)/gi;\n\n constructor(options: ServerOptions = {}) {\n const { gracefullyShutdown = true } = options;\n\n this.presence = options.presence || new LocalPresence();\n this.driver = options.driver || new LocalDriver();\n\n // setup matchmaker\n matchMaker.setup(this.presence, this.driver, this.processId);\n\n // \"presence\" option is not used from now on\n delete options.presence;\n\n this.attach(options);\n\n if (gracefullyShutdown) {\n registerGracefulShutdown((err) => this.gracefullyShutdown(true, err));\n }\n }\n\n public attach(options: ServerOptions) {\n /**\n * Display deprecation warnings for moved Transport options.\n * TODO: Remove me on 0.15\n */\n if (\n options.pingInterval !== undefined ||\n options.pingMaxRetries !== undefined ||\n options.server !== undefined ||\n options.verifyClient !== undefined\n ) {\n console.warn(\"DEPRECATION WARNING: 'pingInterval', 'pingMaxRetries', 'server', and 'verifyClient' Server options will be permanently moved to WebSocketTransport on v0.15\");\n console.warn(`new Server({\n transport: new WebSocketTransport({\n pingInterval: ...,\n pingMaxRetries: ...,\n server: ...,\n verifyClient: ...\n })\n})`);\n console.warn(\"👉 Documentation: https://docs.colyseus.io/server/transport/\")\n }\n\n const transport = options.transport || this.getDefaultTransport(options);\n delete options.transport;\n\n this.transport = transport;\n\n if (this.transport.server) {\n this.transport.server.once('listening', () => this.registerProcessForDiscovery());\n this.attachMatchMakingRoutes(this.transport.server as http.Server);\n }\n }\n\n /**\n * Bind the server into the port specified.\n *\n * @param port\n * @param hostname\n * @param backlog\n * @param listeningListener\n */\n public async listen(port: number, hostname?: string, backlog?: number, listeningListener?: Function) {\n this.port = port;\n\n return new Promise<void>((resolve, reject) => {\n this.transport.server?.on('error', (err) => reject(err));\n this.transport.listen(port, hostname, backlog, (err) => {\n if (listeningListener) {\n listeningListener(err);\n }\n\n if (err) {\n reject(err);\n\n } else {\n resolve();\n }\n });\n });\n }\n\n public registerProcessForDiscovery() {\n // register node for proxy/service discovery\n registerNode(this.presence, {\n port: this.port,\n processId: this.processId,\n });\n }\n\n /**\n * Define a new type of room for matchmaking.\n *\n * @param name public room identifier for match-making.\n * @param handler Room class definition\n * @param defaultOptions default options for `onCreate`\n */\n public define<T extends Type<Room>>(\n name: string,\n handler: T,\n defaultOptions?: Parameters<NonNullable<InstanceType<T>['onCreate']>>[0],\n ): RegisteredHandler {\n return matchMaker.defineRoomType(name, handler, defaultOptions);\n }\n\n public async gracefullyShutdown(exit: boolean = true, err?: Error) {\n await unregisterNode(this.presence, {\n port: this.port,\n processId: this.processId,\n });\n\n try {\n await matchMaker.gracefullyShutdown();\n\n this.transport.shutdown();\n this.presence.shutdown();\n this.driver.shutdown();\n\n await this.onShutdownCallback();\n\n } catch (e) {\n debugAndPrintError(`error during shutdown: ${e}`);\n\n } finally {\n if (exit) {\n process.exit(err ? 1 : 0);\n }\n }\n }\n\n /**\n * Add simulated latency between client and server.\n * @param milliseconds round trip latency in milliseconds.\n */\n public simulateLatency(milliseconds: number) {\n console.warn(`📶️❗ Colyseus latency simulation enabled → ${milliseconds}ms latency for round trip.`);\n\n const halfwayMS = (milliseconds / 2);\n this.transport.simulateLatency(halfwayMS);\n\n /* tslint:disable:no-string-literal */\n const _onMessage = Room.prototype['_onMessage'];\n /* tslint:disable:no-string-literal */\n Room.prototype['_onMessage'] = function (client, buffer) {\n // uWebSockets.js: duplicate buffer because it is cleared at native layer before the timeout.\n const cachedBuffer = Buffer.from(buffer);\n setTimeout(() => _onMessage.call(this, client, cachedBuffer), halfwayMS);\n };\n }\n\n /**\n * Register a callback that is going to be executed before the server shuts down.\n * @param callback\n */\n public onShutdown(callback: () => void | Promise<any>) {\n this.onShutdownCallback = callback;\n }\n\n protected getDefaultTransport(_: any): Transport {\n throw new Error(\"Please provide a 'transport' layer. Default transport not set.\");\n }\n\n protected onShutdownCallback: () => void | Promise<any> =\n () => Promise.resolve()\n\n protected attachMatchMakingRoutes(server: http.Server) {\n const listeners = server.listeners('request').slice(0);\n server.removeAllListeners('request');\n\n server.on('request', (req, res) => {\n if (req.url.indexOf(`/${this.matchmakeRoute}`) !== -1) {\n debugMatchMaking('received matchmake request: %s', req.url);\n this.handleMatchMakeRequest(req, res);\n\n } else {\n for (let i = 0, l = listeners.length; i < l; i++) {\n listeners[i].call(server, req, res);\n }\n }\n });\n }\n\n protected async handleMatchMakeRequest(req: IncomingMessage, res: ServerResponse) {\n const headers = {\n 'Access-Control-Allow-Headers': 'Origin, X-Requested-With, Content-Type, Accept',\n 'Access-Control-Allow-Methods': 'OPTIONS, POST, GET',\n 'Access-Control-Allow-Origin': '*',\n 'Access-Control-Max-Age': 2592000,\n // ...\n };\n\n if (req.method === 'OPTIONS') {\n res.writeHead(204, headers);\n res.end();\n\n } else if (req.method === 'POST') {\n const matchedParams = req.url.match(this.allowedRoomNameChars);\n const matchmakeIndex = matchedParams.indexOf(this.matchmakeRoute);\n const method = matchedParams[matchmakeIndex + 1];\n const name = matchedParams[matchmakeIndex + 2] || '';\n\n const data = [];\n req.on('data', (chunk) => data.push(chunk));\n req.on('end', async () => {\n headers['Content-Type'] = 'application/json';\n res.writeHead(200, headers);\n\n const clientOptions = JSON.parse(Buffer.concat(data).toString());\n try {\n const response = await matchMaker.controller.invokeMethod(method, name, clientOptions);\n res.write(JSON.stringify(response));\n\n } catch (e) {\n res.write(JSON.stringify({ code: e.code, error: e.message, }));\n }\n\n res.end();\n });\n\n } else if (req.method === 'GET') {\n const matchedParams = req.url.match(this.allowedRoomNameChars);\n const roomName = matchedParams[matchedParams.length - 1];\n\n headers['Content-Type'] = 'application/json';\n res.writeHead(200, headers);\n res.write(JSON.stringify(await matchMaker.controller.getAvailableRooms(roomName)));\n res.end();\n }\n\n }\n\n}\n"],"names":["matchMaker.setup","matchMaker.defineRoomType","matchMaker.gracefullyShutdown","matchMaker.controller.invokeMethod","matchMaker.controller.getAvailableRooms"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Server.mjs","sources":["../src/Server.ts"],"sourcesContent":["import http, { IncomingMessage, ServerResponse } from 'http';\n\nimport { debugAndPrintError, debugMatchMaking } from './Debug';\nimport * as matchMaker from './MatchMaker';\nimport { RegisteredHandler } from './matchmaker/RegisteredHandler';\nimport { Presence } from './presence/Presence';\n\nimport { Room } from './Room';\nimport { Type } from './types';\nimport { registerGracefulShutdown } from './Utils';\n\nimport { generateId } from '.';\nimport { registerNode, unregisterNode } from './discovery';\n\nimport { LocalPresence } from './presence/LocalPresence';\nimport { LocalDriver } from './matchmaker/driver';\n\nimport { Transport } from './Transport';\n\n// IServerOptions &\nexport type ServerOptions = {\n presence?: Presence,\n driver?: matchMaker.MatchMakerDriver,\n transport?: Transport,\n gracefullyShutdown?: boolean,\n\n /**\n * Options below are now part of WebSocketTransport (@colyseus/ws-transport)\n * TODO: remove me on 0.15.0\n */\n /** @deprecated */\n pingInterval?: number,\n\n /** @deprecated */\n pingMaxRetries?: number,\n\n /** @deprecated */\n verifyClient?: any,\n\n /** @deprecated */\n server?: http.Server,\n};\n\nexport class Server {\n public transport: Transport;\n\n protected presence: Presence;\n protected port: number;\n protected driver: matchMaker.MatchMakerDriver;\n protected processId: string = generateId();\n\n private matchmakeRoute = 'matchmake';\n private allowedRoomNameChars = /([a-zA-Z_\\-0-9]+)/gi;\n\n constructor(options: ServerOptions = {}) {\n const { gracefullyShutdown = true } = options;\n\n this.presence = options.presence || new LocalPresence();\n this.driver = options.driver || new LocalDriver();\n\n // setup matchmaker\n matchMaker.setup(this.presence, this.driver, this.processId);\n\n // \"presence\" option is not used from now on\n delete options.presence;\n\n this.attach(options);\n\n if (gracefullyShutdown) {\n registerGracefulShutdown((err) => this.gracefullyShutdown(true, err));\n }\n }\n\n public attach(options: ServerOptions) {\n /**\n * Display deprecation warnings for moved Transport options.\n * TODO: Remove me on 0.15\n */\n if (\n options.pingInterval !== undefined ||\n options.pingMaxRetries !== undefined ||\n options.server !== undefined ||\n options.verifyClient !== undefined\n ) {\n console.warn(\"DEPRECATION WARNING: 'pingInterval', 'pingMaxRetries', 'server', and 'verifyClient' Server options will be permanently moved to WebSocketTransport on v0.15\");\n console.warn(`new Server({\n transport: new WebSocketTransport({\n pingInterval: ...,\n pingMaxRetries: ...,\n server: ...,\n verifyClient: ...\n })\n})`);\n console.warn(\"👉 Documentation: https://docs.colyseus.io/server/transport/\")\n }\n\n const transport = options.transport || this.getDefaultTransport(options);\n delete options.transport;\n\n this.transport = transport;\n\n if (this.transport.server) {\n this.transport.server.once('listening', () => this.registerProcessForDiscovery());\n this.attachMatchMakingRoutes(this.transport.server as http.Server);\n }\n }\n\n /**\n * Bind the server into the port specified.\n *\n * @param port\n * @param hostname\n * @param backlog\n * @param listeningListener\n */\n public async listen(port: number, hostname?: string, backlog?: number, listeningListener?: Function) {\n this.port = port;\n\n return new Promise<void>((resolve, reject) => {\n this.transport.server?.on('error', (err) => reject(err));\n this.transport.listen(port, hostname, backlog, (err) => {\n if (listeningListener) {\n listeningListener(err);\n }\n\n if (err) {\n reject(err);\n\n } else {\n resolve();\n }\n });\n });\n }\n\n public registerProcessForDiscovery() {\n // register node for proxy/service discovery\n registerNode(this.presence, {\n port: this.port,\n processId: this.processId,\n });\n }\n\n /**\n * Define a new type of room for matchmaking.\n *\n * @param name public room identifier for match-making.\n * @param handler Room class definition\n * @param defaultOptions default options for `onCreate`\n */\n public define<T extends Type<Room>>(\n name: string,\n handler: T,\n defaultOptions?: Parameters<NonNullable<InstanceType<T>['onCreate']>>[0],\n ): RegisteredHandler {\n return matchMaker.defineRoomType(name, handler, defaultOptions);\n }\n\n public async gracefullyShutdown(exit: boolean = true, err?: Error) {\n await unregisterNode(this.presence, {\n port: this.port,\n processId: this.processId,\n });\n\n try {\n await matchMaker.gracefullyShutdown();\n\n this.transport.shutdown();\n this.presence.shutdown();\n this.driver.shutdown();\n\n await this.onShutdownCallback();\n\n } catch (e) {\n debugAndPrintError(`error during shutdown: ${e}`);\n\n } finally {\n if (exit) {\n process.exit(err ? 1 : 0);\n }\n }\n }\n\n /**\n * Add simulated latency between client and server.\n * @param milliseconds round trip latency in milliseconds.\n */\n public simulateLatency(milliseconds: number) {\n console.warn(`📶️❗ Colyseus latency simulation enabled → ${milliseconds}ms latency for round trip.`);\n\n const halfwayMS = (milliseconds / 2);\n this.transport.simulateLatency(halfwayMS);\n\n /* tslint:disable:no-string-literal */\n const _onMessage = Room.prototype['_onMessage'];\n /* tslint:disable:no-string-literal */\n Room.prototype['_onMessage'] = function (client, buffer) {\n // uWebSockets.js: duplicate buffer because it is cleared at native layer before the timeout.\n const cachedBuffer = Buffer.from(buffer);\n setTimeout(() => _onMessage.call(this, client, cachedBuffer), halfwayMS);\n };\n }\n\n /**\n * Register a callback that is going to be executed before the server shuts down.\n * @param callback\n */\n public onShutdown(callback: () => void | Promise<any>) {\n this.onShutdownCallback = callback;\n }\n\n protected getDefaultTransport(_: any): Transport {\n throw new Error(\"Please provide a 'transport' layer. Default transport not set.\");\n }\n\n protected onShutdownCallback: () => void | Promise<any> =\n () => Promise.resolve()\n\n protected attachMatchMakingRoutes(server: http.Server) {\n const listeners = server.listeners('request').slice(0);\n server.removeAllListeners('request');\n\n server.on('request', (req, res) => {\n if (req.url.indexOf(`/${this.matchmakeRoute}`) !== -1) {\n debugMatchMaking('received matchmake request: %s', req.url);\n this.handleMatchMakeRequest(req, res);\n\n } else {\n for (let i = 0, l = listeners.length; i < l; i++) {\n listeners[i].call(server, req, res);\n }\n }\n });\n }\n\n protected async handleMatchMakeRequest(req: IncomingMessage, res: ServerResponse) {\n const headers = {\n 'Access-Control-Allow-Headers': 'Origin, X-Requested-With, Content-Type, Accept',\n 'Access-Control-Allow-Methods': 'OPTIONS, POST, GET',\n 'Access-Control-Allow-Origin': '*',\n 'Access-Control-Max-Age': 2592000,\n // ...\n };\n\n if (req.method === 'OPTIONS') {\n res.writeHead(204, headers);\n res.end();\n\n } else if (req.method === 'POST') {\n const matchedParams = req.url.match(this.allowedRoomNameChars);\n const matchmakeIndex = matchedParams.indexOf(this.matchmakeRoute);\n const method = matchedParams[matchmakeIndex + 1];\n const name = matchedParams[matchmakeIndex + 2] || '';\n\n const data = [];\n req.on('data', (chunk) => data.push(chunk));\n req.on('end', async () => {\n headers['Content-Type'] = 'application/json';\n res.writeHead(200, headers);\n\n const clientOptions = JSON.parse(Buffer.concat(data).toString());\n try {\n const response = await matchMaker.controller.invokeMethod(method, name, clientOptions);\n res.write(JSON.stringify(response));\n\n } catch (e) {\n res.write(JSON.stringify({ code: e.code, error: e.message, }));\n }\n\n res.end();\n });\n\n } else if (req.method === 'GET') {\n const matchedParams = req.url.match(this.allowedRoomNameChars);\n const roomName = matchedParams.length > 1 ? matchedParams[matchedParams.length - 1] : \"\";\n\n headers['Content-Type'] = 'application/json';\n res.writeHead(200, headers);\n res.write(JSON.stringify(await matchMaker.controller.getAvailableRooms(roomName)));\n res.end();\n }\n\n }\n\n}\n"],"names":["matchMaker.setup","matchMaker.defineRoomType","matchMaker.gracefullyShutdown","matchMaker.controller.invokeMethod","matchMaker.controller.getAvailableRooms"],"mappings":"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"}
|