@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.
Files changed (2970) hide show
  1. package/build/Logger.d.ts +9 -0
  2. package/build/Logger.js +12 -0
  3. package/build/Logger.js.map +1 -0
  4. package/build/Logger.mjs +8 -0
  5. package/build/Logger.mjs.map +1 -0
  6. package/build/Room.js +2 -0
  7. package/build/Room.js.map +1 -1
  8. package/build/Room.mjs +2 -0
  9. package/build/Room.mjs.map +1 -1
  10. package/build/Server.js +1 -1
  11. package/build/Server.js.map +1 -1
  12. package/build/Server.mjs +1 -1
  13. package/build/Server.mjs.map +1 -1
  14. package/build/_virtual/AggregationCursor.js_commonjs-proxy +3 -0
  15. package/build/_virtual/AggregationCursor.js_commonjs-proxy.map +1 -0
  16. package/build/_virtual/BufferList.js_commonjs-proxy +3 -0
  17. package/build/_virtual/BufferList.js_commonjs-proxy.map +1 -0
  18. package/build/_virtual/ChangeStream.js_commonjs-proxy +3 -0
  19. package/build/_virtual/ChangeStream.js_commonjs-proxy.map +1 -0
  20. package/build/_virtual/PopulateOptions.js_commonjs-proxy +3 -0
  21. package/build/_virtual/PopulateOptions.js_commonjs-proxy.map +1 -0
  22. package/build/_virtual/QueryCursor.js_commonjs-proxy +3 -0
  23. package/build/_virtual/QueryCursor.js_commonjs-proxy.map +1 -0
  24. package/build/_virtual/ReadPreference.js_commonjs-proxy +3 -0
  25. package/build/_virtual/ReadPreference.js_commonjs-proxy.map +1 -0
  26. package/build/_virtual/SchemaArrayOptions.js_commonjs-proxy +3 -0
  27. package/build/_virtual/SchemaArrayOptions.js_commonjs-proxy.map +1 -0
  28. package/build/_virtual/SchemaBufferOptions.js_commonjs-proxy +3 -0
  29. package/build/_virtual/SchemaBufferOptions.js_commonjs-proxy.map +1 -0
  30. package/build/_virtual/SchemaDateOptions.js_commonjs-proxy +3 -0
  31. package/build/_virtual/SchemaDateOptions.js_commonjs-proxy.map +1 -0
  32. package/build/_virtual/SchemaDocumentArrayOptions.js_commonjs-proxy +3 -0
  33. package/build/_virtual/SchemaDocumentArrayOptions.js_commonjs-proxy.map +1 -0
  34. package/build/_virtual/SchemaMapOptions.js_commonjs-proxy +3 -0
  35. package/build/_virtual/SchemaMapOptions.js_commonjs-proxy.map +1 -0
  36. package/build/_virtual/SchemaNumberOptions.js_commonjs-proxy +3 -0
  37. package/build/_virtual/SchemaNumberOptions.js_commonjs-proxy.map +1 -0
  38. package/build/_virtual/SchemaObjectIdOptions.js_commonjs-proxy +3 -0
  39. package/build/_virtual/SchemaObjectIdOptions.js_commonjs-proxy.map +1 -0
  40. package/build/_virtual/SchemaSingleNestedOptions.js_commonjs-proxy +3 -0
  41. package/build/_virtual/SchemaSingleNestedOptions.js_commonjs-proxy.map +1 -0
  42. package/build/_virtual/SchemaStringOptions.js_commonjs-proxy +3 -0
  43. package/build/_virtual/SchemaStringOptions.js_commonjs-proxy.map +1 -0
  44. package/build/_virtual/SchemaTypeOptions.js_commonjs-proxy +3 -0
  45. package/build/_virtual/SchemaTypeOptions.js_commonjs-proxy.map +1 -0
  46. package/build/_virtual/SingleNestedPath.js_commonjs-proxy +3 -0
  47. package/build/_virtual/SingleNestedPath.js_commonjs-proxy.map +1 -0
  48. package/build/_virtual/SkipPopulateValue.js_commonjs-proxy +3 -0
  49. package/build/_virtual/SkipPopulateValue.js_commonjs-proxy.map +1 -0
  50. package/build/_virtual/VirtualOptions.js_commonjs-proxy +3 -0
  51. package/build/_virtual/VirtualOptions.js_commonjs-proxy.map +1 -0
  52. package/build/_virtual/_commonjsHelpers.js +28 -0
  53. package/build/_virtual/_commonjsHelpers.js.map +1 -0
  54. package/build/_virtual/_stream_duplex.js_commonjs-proxy +3 -0
  55. package/build/_virtual/_stream_duplex.js_commonjs-proxy.map +1 -0
  56. package/build/_virtual/_stream_passthrough.js_commonjs-proxy +3 -0
  57. package/build/_virtual/_stream_passthrough.js_commonjs-proxy.map +1 -0
  58. package/build/_virtual/_stream_readable.js_commonjs-proxy +3 -0
  59. package/build/_virtual/_stream_readable.js_commonjs-proxy.map +1 -0
  60. package/build/_virtual/_stream_transform.js_commonjs-proxy +3 -0
  61. package/build/_virtual/_stream_transform.js_commonjs-proxy.map +1 -0
  62. package/build/_virtual/_stream_writable.js_commonjs-proxy +3 -0
  63. package/build/_virtual/_stream_writable.js_commonjs-proxy.map +1 -0
  64. package/build/_virtual/addAutoId.js_commonjs-proxy +3 -0
  65. package/build/_virtual/addAutoId.js_commonjs-proxy.map +1 -0
  66. package/build/_virtual/add_user.js_commonjs-proxy +3 -0
  67. package/build/_virtual/add_user.js_commonjs-proxy.map +1 -0
  68. package/build/_virtual/admin.js_commonjs-proxy +3 -0
  69. package/build/_virtual/admin.js_commonjs-proxy.map +1 -0
  70. package/build/_virtual/aggregate.js_commonjs-proxy +3 -0
  71. package/build/_virtual/aggregate.js_commonjs-proxy.map +1 -0
  72. package/build/_virtual/aggregate2.js_commonjs-proxy +3 -0
  73. package/build/_virtual/aggregate2.js_commonjs-proxy.map +1 -0
  74. package/build/_virtual/aggregation_cursor.js_commonjs-proxy +3 -0
  75. package/build/_virtual/aggregation_cursor.js_commonjs-proxy.map +1 -0
  76. package/build/_virtual/allServersUnknown.js_commonjs-proxy +3 -0
  77. package/build/_virtual/allServersUnknown.js_commonjs-proxy.map +1 -0
  78. package/build/_virtual/any.js_commonjs-proxy +3 -0
  79. package/build/_virtual/any.js_commonjs-proxy.map +1 -0
  80. package/build/_virtual/apm.js_commonjs-proxy +3 -0
  81. package/build/_virtual/apm.js_commonjs-proxy.map +1 -0
  82. package/build/_virtual/apm2.js_commonjs-proxy +3 -0
  83. package/build/_virtual/apm2.js_commonjs-proxy.map +1 -0
  84. package/build/_virtual/applyGlobalMaxTimeMS.js_commonjs-proxy +3 -0
  85. package/build/_virtual/applyGlobalMaxTimeMS.js_commonjs-proxy.map +1 -0
  86. package/build/_virtual/applyHooks.js_commonjs-proxy +3 -0
  87. package/build/_virtual/applyHooks.js_commonjs-proxy.map +1 -0
  88. package/build/_virtual/applyMethods.js_commonjs-proxy +3 -0
  89. package/build/_virtual/applyMethods.js_commonjs-proxy.map +1 -0
  90. package/build/_virtual/applyPlugins.js_commonjs-proxy +3 -0
  91. package/build/_virtual/applyPlugins.js_commonjs-proxy.map +1 -0
  92. package/build/_virtual/applyQueryMiddleware.js_commonjs-proxy +3 -0
  93. package/build/_virtual/applyQueryMiddleware.js_commonjs-proxy.map +1 -0
  94. package/build/_virtual/applyStaticHooks.js_commonjs-proxy +3 -0
  95. package/build/_virtual/applyStaticHooks.js_commonjs-proxy.map +1 -0
  96. package/build/_virtual/applyStatics.js_commonjs-proxy +3 -0
  97. package/build/_virtual/applyStatics.js_commonjs-proxy.map +1 -0
  98. package/build/_virtual/applyTimestampsToChildren.js_commonjs-proxy +3 -0
  99. package/build/_virtual/applyTimestampsToChildren.js_commonjs-proxy.map +1 -0
  100. package/build/_virtual/applyTimestampsToUpdate.js_commonjs-proxy +3 -0
  101. package/build/_virtual/applyTimestampsToUpdate.js_commonjs-proxy.map +1 -0
  102. package/build/_virtual/applyWriteConcern.js_commonjs-proxy +3 -0
  103. package/build/_virtual/applyWriteConcern.js_commonjs-proxy.map +1 -0
  104. package/build/_virtual/areDiscriminatorValuesEqual.js_commonjs-proxy +3 -0
  105. package/build/_virtual/areDiscriminatorValuesEqual.js_commonjs-proxy.map +1 -0
  106. package/build/_virtual/array.js_commonjs-proxy +3 -0
  107. package/build/_virtual/array.js_commonjs-proxy.map +1 -0
  108. package/build/_virtual/array2.js_commonjs-proxy +3 -0
  109. package/build/_virtual/array2.js_commonjs-proxy.map +1 -0
  110. package/build/_virtual/arrayDepth.js_commonjs-proxy +3 -0
  111. package/build/_virtual/arrayDepth.js_commonjs-proxy.map +1 -0
  112. package/build/_virtual/assignRawDocsToIdStructure.js_commonjs-proxy +3 -0
  113. package/build/_virtual/assignRawDocsToIdStructure.js_commonjs-proxy.map +1 -0
  114. package/build/_virtual/assignVals.js_commonjs-proxy +3 -0
  115. package/build/_virtual/assignVals.js_commonjs-proxy.map +1 -0
  116. package/build/_virtual/async.js_commonjs-proxy +3 -0
  117. package/build/_virtual/async.js_commonjs-proxy.map +1 -0
  118. package/build/_virtual/async_iterator.js_commonjs-proxy +3 -0
  119. package/build/_virtual/async_iterator.js_commonjs-proxy.map +1 -0
  120. package/build/_virtual/auth_provider.js_commonjs-proxy +3 -0
  121. package/build/_virtual/auth_provider.js_commonjs-proxy.map +1 -0
  122. package/build/_virtual/aws4.js_commonjs-proxy +3 -0
  123. package/build/_virtual/aws4.js_commonjs-proxy.map +1 -0
  124. package/build/_virtual/binary.js_commonjs-proxy +3 -0
  125. package/build/_virtual/binary.js_commonjs-proxy.map +1 -0
  126. package/build/_virtual/binary2.js_commonjs-proxy +3 -0
  127. package/build/_virtual/binary2.js_commonjs-proxy.map +1 -0
  128. package/build/_virtual/bind.js_commonjs-proxy +3 -0
  129. package/build/_virtual/bind.js_commonjs-proxy.map +1 -0
  130. package/build/_virtual/bitwise.js_commonjs-proxy +3 -0
  131. package/build/_virtual/bitwise.js_commonjs-proxy.map +1 -0
  132. package/build/_virtual/bl.js_commonjs-proxy +3 -0
  133. package/build/_virtual/bl.js_commonjs-proxy.map +1 -0
  134. package/build/_virtual/bluebird.js_commonjs-proxy +3 -0
  135. package/build/_virtual/bluebird.js_commonjs-proxy.map +1 -0
  136. package/build/_virtual/boolean.js_commonjs-proxy +3 -0
  137. package/build/_virtual/boolean.js_commonjs-proxy.map +1 -0
  138. package/build/_virtual/boolean2.js_commonjs-proxy +3 -0
  139. package/build/_virtual/boolean2.js_commonjs-proxy.map +1 -0
  140. package/build/_virtual/browserDocument.js_commonjs-proxy +3 -0
  141. package/build/_virtual/browserDocument.js_commonjs-proxy.map +1 -0
  142. package/build/_virtual/bson.js_commonjs-proxy +3 -0
  143. package/build/_virtual/bson.js_commonjs-proxy.map +1 -0
  144. package/build/_virtual/buffer-util.js_commonjs-proxy +3 -0
  145. package/build/_virtual/buffer-util.js_commonjs-proxy.map +1 -0
  146. package/build/_virtual/buffer.js_commonjs-proxy +3 -0
  147. package/build/_virtual/buffer.js_commonjs-proxy.map +1 -0
  148. package/build/_virtual/buffer2.js_commonjs-proxy +3 -0
  149. package/build/_virtual/buffer2.js_commonjs-proxy.map +1 -0
  150. package/build/_virtual/bulk_write.js_commonjs-proxy +3 -0
  151. package/build/_virtual/bulk_write.js_commonjs-proxy.map +1 -0
  152. package/build/_virtual/calculate_size.js_commonjs-proxy +3 -0
  153. package/build/_virtual/calculate_size.js_commonjs-proxy.map +1 -0
  154. package/build/_virtual/call_get.js_commonjs-proxy +3 -0
  155. package/build/_virtual/call_get.js_commonjs-proxy.map +1 -0
  156. package/build/_virtual/cancel.js_commonjs-proxy +3 -0
  157. package/build/_virtual/cancel.js_commonjs-proxy.map +1 -0
  158. package/build/_virtual/cast.js_commonjs-proxy +3 -0
  159. package/build/_virtual/cast.js_commonjs-proxy.map +1 -0
  160. package/build/_virtual/cast2.js_commonjs-proxy +3 -0
  161. package/build/_virtual/cast2.js_commonjs-proxy.map +1 -0
  162. package/build/_virtual/castArrayFilters.js_commonjs-proxy +3 -0
  163. package/build/_virtual/castArrayFilters.js_commonjs-proxy.map +1 -0
  164. package/build/_virtual/castBulkWrite.js_commonjs-proxy +3 -0
  165. package/build/_virtual/castBulkWrite.js_commonjs-proxy.map +1 -0
  166. package/build/_virtual/castFilterPath.js_commonjs-proxy +3 -0
  167. package/build/_virtual/castFilterPath.js_commonjs-proxy.map +1 -0
  168. package/build/_virtual/castUpdate.js_commonjs-proxy +3 -0
  169. package/build/_virtual/castUpdate.js_commonjs-proxy.map +1 -0
  170. package/build/_virtual/catch_filter.js_commonjs-proxy +3 -0
  171. package/build/_virtual/catch_filter.js_commonjs-proxy.map +1 -0
  172. package/build/_virtual/change_stream.js_commonjs-proxy +3 -0
  173. package/build/_virtual/change_stream.js_commonjs-proxy.map +1 -0
  174. package/build/_virtual/checkEmbeddedDiscriminatorKeyProjection.js_commonjs-proxy +3 -0
  175. package/build/_virtual/checkEmbeddedDiscriminatorKeyProjection.js_commonjs-proxy.map +1 -0
  176. package/build/_virtual/chunk.js_commonjs-proxy +3 -0
  177. package/build/_virtual/chunk.js_commonjs-proxy.map +1 -0
  178. package/build/_virtual/cleanModifiedSubpaths.js_commonjs-proxy +3 -0
  179. package/build/_virtual/cleanModifiedSubpaths.js_commonjs-proxy.map +1 -0
  180. package/build/_virtual/cleanPositionalOperators.js_commonjs-proxy +3 -0
  181. package/build/_virtual/cleanPositionalOperators.js_commonjs-proxy.map +1 -0
  182. package/build/_virtual/clone.js_commonjs-proxy +3 -0
  183. package/build/_virtual/clone.js_commonjs-proxy.map +1 -0
  184. package/build/_virtual/code.js_commonjs-proxy +3 -0
  185. package/build/_virtual/code.js_commonjs-proxy.map +1 -0
  186. package/build/_virtual/collection.js_commonjs-proxy +3 -0
  187. package/build/_virtual/collection.js_commonjs-proxy.map +1 -0
  188. package/build/_virtual/collection2.js_commonjs-proxy +3 -0
  189. package/build/_virtual/collection2.js_commonjs-proxy.map +1 -0
  190. package/build/_virtual/collection3.js_commonjs-proxy +3 -0
  191. package/build/_virtual/collection3.js_commonjs-proxy.map +1 -0
  192. package/build/_virtual/collection4.js_commonjs-proxy +3 -0
  193. package/build/_virtual/collection4.js_commonjs-proxy.map +1 -0
  194. package/build/_virtual/collection_ops.js_commonjs-proxy +3 -0
  195. package/build/_virtual/collection_ops.js_commonjs-proxy.map +1 -0
  196. package/build/_virtual/collections.js_commonjs-proxy +3 -0
  197. package/build/_virtual/collections.js_commonjs-proxy.map +1 -0
  198. package/build/_virtual/command.js_commonjs-proxy +3 -0
  199. package/build/_virtual/command.js_commonjs-proxy.map +1 -0
  200. package/build/_virtual/command2.js_commonjs-proxy +3 -0
  201. package/build/_virtual/command2.js_commonjs-proxy.map +1 -0
  202. package/build/_virtual/command3.js_commonjs-proxy +3 -0
  203. package/build/_virtual/command3.js_commonjs-proxy.map +1 -0
  204. package/build/_virtual/command_cursor.js_commonjs-proxy +3 -0
  205. package/build/_virtual/command_cursor.js_commonjs-proxy.map +1 -0
  206. package/build/_virtual/command_result.js_commonjs-proxy +3 -0
  207. package/build/_virtual/command_result.js_commonjs-proxy.map +1 -0
  208. package/build/_virtual/command_v2.js_commonjs-proxy +3 -0
  209. package/build/_virtual/command_v2.js_commonjs-proxy.map +1 -0
  210. package/build/_virtual/commands.js_commonjs-proxy +3 -0
  211. package/build/_virtual/commands.js_commonjs-proxy.map +1 -0
  212. package/build/_virtual/commands2.js_commonjs-proxy +3 -0
  213. package/build/_virtual/commands2.js_commonjs-proxy.map +1 -0
  214. package/build/_virtual/common.js_commonjs-proxy +3 -0
  215. package/build/_virtual/common.js_commonjs-proxy.map +1 -0
  216. package/build/_virtual/common2.js_commonjs-proxy +3 -0
  217. package/build/_virtual/common2.js_commonjs-proxy.map +1 -0
  218. package/build/_virtual/common3.js_commonjs-proxy +3 -0
  219. package/build/_virtual/common3.js_commonjs-proxy.map +1 -0
  220. package/build/_virtual/common_functions.js_commonjs-proxy +3 -0
  221. package/build/_virtual/common_functions.js_commonjs-proxy.map +1 -0
  222. package/build/_virtual/compile.js_commonjs-proxy +3 -0
  223. package/build/_virtual/compile.js_commonjs-proxy.map +1 -0
  224. package/build/_virtual/completeMany.js_commonjs-proxy +3 -0
  225. package/build/_virtual/completeMany.js_commonjs-proxy.map +1 -0
  226. package/build/_virtual/compression.js_commonjs-proxy +3 -0
  227. package/build/_virtual/compression.js_commonjs-proxy.map +1 -0
  228. package/build/_virtual/connect.js_commonjs-proxy +3 -0
  229. package/build/_virtual/connect.js_commonjs-proxy.map +1 -0
  230. package/build/_virtual/connect2.js_commonjs-proxy +3 -0
  231. package/build/_virtual/connect2.js_commonjs-proxy.map +1 -0
  232. package/build/_virtual/connection.js_commonjs-proxy +3 -0
  233. package/build/_virtual/connection.js_commonjs-proxy.map +1 -0
  234. package/build/_virtual/connection2.js_commonjs-proxy +3 -0
  235. package/build/_virtual/connection2.js_commonjs-proxy.map +1 -0
  236. package/build/_virtual/connection3.js_commonjs-proxy +3 -0
  237. package/build/_virtual/connection3.js_commonjs-proxy.map +1 -0
  238. package/build/_virtual/connection4.js_commonjs-proxy +3 -0
  239. package/build/_virtual/connection4.js_commonjs-proxy.map +1 -0
  240. package/build/_virtual/connection_pool.js_commonjs-proxy +3 -0
  241. package/build/_virtual/connection_pool.js_commonjs-proxy.map +1 -0
  242. package/build/_virtual/connectionstate.js_commonjs-proxy +3 -0
  243. package/build/_virtual/connectionstate.js_commonjs-proxy.map +1 -0
  244. package/build/_virtual/constants.js_commonjs-proxy +3 -0
  245. package/build/_virtual/constants.js_commonjs-proxy.map +1 -0
  246. package/build/_virtual/constants2.js_commonjs-proxy +3 -0
  247. package/build/_virtual/constants2.js_commonjs-proxy.map +1 -0
  248. package/build/_virtual/constants3.js_commonjs-proxy +3 -0
  249. package/build/_virtual/constants3.js_commonjs-proxy.map +1 -0
  250. package/build/_virtual/context.js_commonjs-proxy +3 -0
  251. package/build/_virtual/context.js_commonjs-proxy.map +1 -0
  252. package/build/_virtual/core_array.js_commonjs-proxy +3 -0
  253. package/build/_virtual/core_array.js_commonjs-proxy.map +1 -0
  254. package/build/_virtual/count.js_commonjs-proxy +3 -0
  255. package/build/_virtual/count.js_commonjs-proxy.map +1 -0
  256. package/build/_virtual/count_documents.js_commonjs-proxy +3 -0
  257. package/build/_virtual/count_documents.js_commonjs-proxy.map +1 -0
  258. package/build/_virtual/createClient.js_commonjs-proxy +3 -0
  259. package/build/_virtual/createClient.js_commonjs-proxy.map +1 -0
  260. package/build/_virtual/createPopulateQueryFilter.js_commonjs-proxy +3 -0
  261. package/build/_virtual/createPopulateQueryFilter.js_commonjs-proxy.map +1 -0
  262. package/build/_virtual/create_collection.js_commonjs-proxy +3 -0
  263. package/build/_virtual/create_collection.js_commonjs-proxy.map +1 -0
  264. package/build/_virtual/create_indexes.js_commonjs-proxy +3 -0
  265. package/build/_virtual/create_indexes.js_commonjs-proxy.map +1 -0
  266. package/build/_virtual/cursor.js_commonjs-proxy +3 -0
  267. package/build/_virtual/cursor.js_commonjs-proxy.map +1 -0
  268. package/build/_virtual/cursor2.js_commonjs-proxy +3 -0
  269. package/build/_virtual/cursor2.js_commonjs-proxy.map +1 -0
  270. package/build/_virtual/cursor_ops.js_commonjs-proxy +3 -0
  271. package/build/_virtual/cursor_ops.js_commonjs-proxy.map +1 -0
  272. package/build/_virtual/customErrors.js_commonjs-proxy +3 -0
  273. package/build/_virtual/customErrors.js_commonjs-proxy.map +1 -0
  274. package/build/_virtual/date.js_commonjs-proxy +3 -0
  275. package/build/_virtual/date.js_commonjs-proxy.map +1 -0
  276. package/build/_virtual/date2.js_commonjs-proxy +3 -0
  277. package/build/_virtual/date2.js_commonjs-proxy.map +1 -0
  278. package/build/_virtual/db.js_commonjs-proxy +3 -0
  279. package/build/_virtual/db.js_commonjs-proxy.map +1 -0
  280. package/build/_virtual/db_ops.js_commonjs-proxy +3 -0
  281. package/build/_virtual/db_ops.js_commonjs-proxy.map +1 -0
  282. package/build/_virtual/db_ref.js_commonjs-proxy +3 -0
  283. package/build/_virtual/db_ref.js_commonjs-proxy.map +1 -0
  284. package/build/_virtual/debug.js_commonjs-proxy +3 -0
  285. package/build/_virtual/debug.js_commonjs-proxy.map +1 -0
  286. package/build/_virtual/debuggability.js_commonjs-proxy +3 -0
  287. package/build/_virtual/debuggability.js_commonjs-proxy.map +1 -0
  288. package/build/_virtual/decimal128.js_commonjs-proxy +3 -0
  289. package/build/_virtual/decimal128.js_commonjs-proxy.map +1 -0
  290. package/build/_virtual/decimal1282.js_commonjs-proxy +3 -0
  291. package/build/_virtual/decimal1282.js_commonjs-proxy.map +1 -0
  292. package/build/_virtual/decimal1283.js_commonjs-proxy +3 -0
  293. package/build/_virtual/decimal1283.js_commonjs-proxy.map +1 -0
  294. package/build/_virtual/decimal1284.js_commonjs-proxy +3 -0
  295. package/build/_virtual/decimal1284.js_commonjs-proxy.map +1 -0
  296. package/build/_virtual/decimal1285.js_commonjs-proxy +3 -0
  297. package/build/_virtual/decimal1285.js_commonjs-proxy.map +1 -0
  298. package/build/_virtual/defaultAuthProviders.js_commonjs-proxy +3 -0
  299. package/build/_virtual/defaultAuthProviders.js_commonjs-proxy.map +1 -0
  300. package/build/_virtual/delete_many.js_commonjs-proxy +3 -0
  301. package/build/_virtual/delete_many.js_commonjs-proxy.map +1 -0
  302. package/build/_virtual/delete_one.js_commonjs-proxy +3 -0
  303. package/build/_virtual/delete_one.js_commonjs-proxy.map +1 -0
  304. package/build/_virtual/deque.js_commonjs-proxy +3 -0
  305. package/build/_virtual/deque.js_commonjs-proxy.map +1 -0
  306. package/build/_virtual/deserializer.js_commonjs-proxy +3 -0
  307. package/build/_virtual/deserializer.js_commonjs-proxy.map +1 -0
  308. package/build/_virtual/destroy.js_commonjs-proxy +3 -0
  309. package/build/_virtual/destroy.js_commonjs-proxy.map +1 -0
  310. package/build/_virtual/direct_resolve.js_commonjs-proxy +3 -0
  311. package/build/_virtual/direct_resolve.js_commonjs-proxy.map +1 -0
  312. package/build/_virtual/discriminator.js_commonjs-proxy +3 -0
  313. package/build/_virtual/discriminator.js_commonjs-proxy.map +1 -0
  314. package/build/_virtual/distinct.js_commonjs-proxy +3 -0
  315. package/build/_virtual/distinct.js_commonjs-proxy.map +1 -0
  316. package/build/_virtual/divergentArray.js_commonjs-proxy +3 -0
  317. package/build/_virtual/divergentArray.js_commonjs-proxy.map +1 -0
  318. package/build/_virtual/document.js_commonjs-proxy +3 -0
  319. package/build/_virtual/document.js_commonjs-proxy.map +1 -0
  320. package/build/_virtual/document_provider.js_commonjs-proxy +3 -0
  321. package/build/_virtual/document_provider.js_commonjs-proxy.map +1 -0
  322. package/build/_virtual/documentarray.js_commonjs-proxy +3 -0
  323. package/build/_virtual/documentarray.js_commonjs-proxy.map +1 -0
  324. package/build/_virtual/documentarray2.js_commonjs-proxy +3 -0
  325. package/build/_virtual/documentarray2.js_commonjs-proxy.map +1 -0
  326. package/build/_virtual/double.js_commonjs-proxy +3 -0
  327. package/build/_virtual/double.js_commonjs-proxy.map +1 -0
  328. package/build/_virtual/download.js_commonjs-proxy +3 -0
  329. package/build/_virtual/download.js_commonjs-proxy.map +1 -0
  330. package/build/_virtual/driver.js_commonjs-proxy +3 -0
  331. package/build/_virtual/driver.js_commonjs-proxy.map +1 -0
  332. package/build/_virtual/drop.js_commonjs-proxy +3 -0
  333. package/build/_virtual/drop.js_commonjs-proxy.map +1 -0
  334. package/build/_virtual/drop_index.js_commonjs-proxy +3 -0
  335. package/build/_virtual/drop_index.js_commonjs-proxy.map +1 -0
  336. package/build/_virtual/drop_indexes.js_commonjs-proxy +3 -0
  337. package/build/_virtual/drop_indexes.js_commonjs-proxy.map +1 -0
  338. package/build/_virtual/dynamic_loaders.js_commonjs-proxy +3 -0
  339. package/build/_virtual/dynamic_loaders.js_commonjs-proxy.map +1 -0
  340. package/build/_virtual/each.js_commonjs-proxy +3 -0
  341. package/build/_virtual/each.js_commonjs-proxy.map +1 -0
  342. package/build/_virtual/each2.js_commonjs-proxy +3 -0
  343. package/build/_virtual/each2.js_commonjs-proxy.map +1 -0
  344. package/build/_virtual/eachAsync.js_commonjs-proxy +3 -0
  345. package/build/_virtual/eachAsync.js_commonjs-proxy.map +1 -0
  346. package/build/_virtual/embedded.js_commonjs-proxy +3 -0
  347. package/build/_virtual/embedded.js_commonjs-proxy.map +1 -0
  348. package/build/_virtual/encrypter.js_commonjs-proxy +3 -0
  349. package/build/_virtual/encrypter.js_commonjs-proxy.map +1 -0
  350. package/build/_virtual/env.js_commonjs-proxy +3 -0
  351. package/build/_virtual/env.js_commonjs-proxy.map +1 -0
  352. package/build/_virtual/error.js_commonjs-proxy +3 -0
  353. package/build/_virtual/error.js_commonjs-proxy.map +1 -0
  354. package/build/_virtual/error2.js_commonjs-proxy +3 -0
  355. package/build/_virtual/error2.js_commonjs-proxy.map +1 -0
  356. package/build/_virtual/errors.js_commonjs-proxy +3 -0
  357. package/build/_virtual/errors.js_commonjs-proxy.map +1 -0
  358. package/build/_virtual/errors2.js_commonjs-proxy +3 -0
  359. package/build/_virtual/errors2.js_commonjs-proxy.map +1 -0
  360. package/build/_virtual/es5.js_commonjs-proxy +3 -0
  361. package/build/_virtual/es5.js_commonjs-proxy.map +1 -0
  362. package/build/_virtual/estimated_document_count.js_commonjs-proxy +3 -0
  363. package/build/_virtual/estimated_document_count.js_commonjs-proxy.map +1 -0
  364. package/build/_virtual/event-target.js_commonjs-proxy +3 -0
  365. package/build/_virtual/event-target.js_commonjs-proxy.map +1 -0
  366. package/build/_virtual/events.js_commonjs-proxy +3 -0
  367. package/build/_virtual/events.js_commonjs-proxy.map +1 -0
  368. package/build/_virtual/events2.js_commonjs-proxy +3 -0
  369. package/build/_virtual/events2.js_commonjs-proxy.map +1 -0
  370. package/build/_virtual/execute_db_admin_command.js_commonjs-proxy +3 -0
  371. package/build/_virtual/execute_db_admin_command.js_commonjs-proxy.map +1 -0
  372. package/build/_virtual/execute_operation.js_commonjs-proxy +3 -0
  373. package/build/_virtual/execute_operation.js_commonjs-proxy.map +1 -0
  374. package/build/_virtual/exists.js_commonjs-proxy +3 -0
  375. package/build/_virtual/exists.js_commonjs-proxy.map +1 -0
  376. package/build/_virtual/explain.js_commonjs-proxy +3 -0
  377. package/build/_virtual/explain.js_commonjs-proxy.map +1 -0
  378. package/build/_virtual/extension.js_commonjs-proxy +3 -0
  379. package/build/_virtual/extension.js_commonjs-proxy.map +1 -0
  380. package/build/_virtual/filter.js_commonjs-proxy +3 -0
  381. package/build/_virtual/filter.js_commonjs-proxy.map +1 -0
  382. package/build/_virtual/finally.js_commonjs-proxy +3 -0
  383. package/build/_virtual/finally.js_commonjs-proxy.map +1 -0
  384. package/build/_virtual/find.js_commonjs-proxy +3 -0
  385. package/build/_virtual/find.js_commonjs-proxy.map +1 -0
  386. package/build/_virtual/find_and_modify.js_commonjs-proxy +3 -0
  387. package/build/_virtual/find_and_modify.js_commonjs-proxy.map +1 -0
  388. package/build/_virtual/find_one.js_commonjs-proxy +3 -0
  389. package/build/_virtual/find_one.js_commonjs-proxy.map +1 -0
  390. package/build/_virtual/find_one_and_delete.js_commonjs-proxy +3 -0
  391. package/build/_virtual/find_one_and_delete.js_commonjs-proxy.map +1 -0
  392. package/build/_virtual/find_one_and_replace.js_commonjs-proxy +3 -0
  393. package/build/_virtual/find_one_and_replace.js_commonjs-proxy.map +1 -0
  394. package/build/_virtual/find_one_and_update.js_commonjs-proxy +3 -0
  395. package/build/_virtual/find_one_and_update.js_commonjs-proxy.map +1 -0
  396. package/build/_virtual/float_parser.js_commonjs-proxy +3 -0
  397. package/build/_virtual/float_parser.js_commonjs-proxy.map +1 -0
  398. package/build/_virtual/generators.js_commonjs-proxy +3 -0
  399. package/build/_virtual/generators.js_commonjs-proxy.map +1 -0
  400. package/build/_virtual/geo_haystack_search.js_commonjs-proxy +3 -0
  401. package/build/_virtual/geo_haystack_search.js_commonjs-proxy.map +1 -0
  402. package/build/_virtual/geospatial.js_commonjs-proxy +3 -0
  403. package/build/_virtual/geospatial.js_commonjs-proxy.map +1 -0
  404. package/build/_virtual/get.js_commonjs-proxy +3 -0
  405. package/build/_virtual/get.js_commonjs-proxy.map +1 -0
  406. package/build/_virtual/getConstructor.js_commonjs-proxy +3 -0
  407. package/build/_virtual/getConstructor.js_commonjs-proxy.map +1 -0
  408. package/build/_virtual/getDefaultBulkwriteResult.js_commonjs-proxy +3 -0
  409. package/build/_virtual/getDefaultBulkwriteResult.js_commonjs-proxy.map +1 -0
  410. package/build/_virtual/getDiscriminatorByValue.js_commonjs-proxy +3 -0
  411. package/build/_virtual/getDiscriminatorByValue.js_commonjs-proxy.map +1 -0
  412. package/build/_virtual/getEmbeddedDiscriminatorPath.js_commonjs-proxy +3 -0
  413. package/build/_virtual/getEmbeddedDiscriminatorPath.js_commonjs-proxy.map +1 -0
  414. package/build/_virtual/getEmbeddedDiscriminatorPath2.js_commonjs-proxy +3 -0
  415. package/build/_virtual/getEmbeddedDiscriminatorPath2.js_commonjs-proxy.map +1 -0
  416. package/build/_virtual/getFunctionName.js_commonjs-proxy +3 -0
  417. package/build/_virtual/getFunctionName.js_commonjs-proxy.map +1 -0
  418. package/build/_virtual/getIndexes.js_commonjs-proxy +3 -0
  419. package/build/_virtual/getIndexes.js_commonjs-proxy.map +1 -0
  420. package/build/_virtual/getModelsMapForPopulate.js_commonjs-proxy +3 -0
  421. package/build/_virtual/getModelsMapForPopulate.js_commonjs-proxy.map +1 -0
  422. package/build/_virtual/getPath.js_commonjs-proxy +3 -0
  423. package/build/_virtual/getPath.js_commonjs-proxy.map +1 -0
  424. package/build/_virtual/getSchemaDiscriminatorByValue.js_commonjs-proxy +3 -0
  425. package/build/_virtual/getSchemaDiscriminatorByValue.js_commonjs-proxy.map +1 -0
  426. package/build/_virtual/getSchemaTypes.js_commonjs-proxy +3 -0
  427. package/build/_virtual/getSchemaTypes.js_commonjs-proxy.map +1 -0
  428. package/build/_virtual/getVirtual.js_commonjs-proxy +3 -0
  429. package/build/_virtual/getVirtual.js_commonjs-proxy.map +1 -0
  430. package/build/_virtual/get_more.js_commonjs-proxy +3 -0
  431. package/build/_virtual/get_more.js_commonjs-proxy.map +1 -0
  432. package/build/_virtual/grid_store.js_commonjs-proxy +3 -0
  433. package/build/_virtual/grid_store.js_commonjs-proxy.map +1 -0
  434. package/build/_virtual/gssapi.js_commonjs-proxy +3 -0
  435. package/build/_virtual/gssapi.js_commonjs-proxy.map +1 -0
  436. package/build/_virtual/handleIdOption.js_commonjs-proxy +3 -0
  437. package/build/_virtual/handleIdOption.js_commonjs-proxy.map +1 -0
  438. package/build/_virtual/handleImmutable.js_commonjs-proxy +3 -0
  439. package/build/_virtual/handleImmutable.js_commonjs-proxy.map +1 -0
  440. package/build/_virtual/handleImmutable2.js_commonjs-proxy +3 -0
  441. package/build/_virtual/handleImmutable2.js_commonjs-proxy.map +1 -0
  442. package/build/_virtual/handleSpreadDoc.js_commonjs-proxy +3 -0
  443. package/build/_virtual/handleSpreadDoc.js_commonjs-proxy.map +1 -0
  444. package/build/_virtual/handleTimestampOption.js_commonjs-proxy +3 -0
  445. package/build/_virtual/handleTimestampOption.js_commonjs-proxy.map +1 -0
  446. package/build/_virtual/hasDollarKeys.js_commonjs-proxy +3 -0
  447. package/build/_virtual/hasDollarKeys.js_commonjs-proxy.map +1 -0
  448. package/build/_virtual/helpers.js_commonjs-proxy +3 -0
  449. package/build/_virtual/helpers.js_commonjs-proxy.map +1 -0
  450. package/build/_virtual/hiredis.js_commonjs-proxy +3 -0
  451. package/build/_virtual/hiredis.js_commonjs-proxy.map +1 -0
  452. package/build/_virtual/idGetter.js_commonjs-proxy +3 -0
  453. package/build/_virtual/idGetter.js_commonjs-proxy.map +1 -0
  454. package/build/_virtual/immediate.js_commonjs-proxy +3 -0
  455. package/build/_virtual/immediate.js_commonjs-proxy.map +1 -0
  456. package/build/_virtual/index.js_commonjs-proxy +3 -0
  457. package/build/_virtual/index.js_commonjs-proxy.map +1 -0
  458. package/build/_virtual/index10.js_commonjs-proxy +3 -0
  459. package/build/_virtual/index10.js_commonjs-proxy.map +1 -0
  460. package/build/_virtual/index11.js_commonjs-proxy +3 -0
  461. package/build/_virtual/index11.js_commonjs-proxy.map +1 -0
  462. package/build/_virtual/index12.js_commonjs-proxy +3 -0
  463. package/build/_virtual/index12.js_commonjs-proxy.map +1 -0
  464. package/build/_virtual/index13.js_commonjs-proxy +3 -0
  465. package/build/_virtual/index13.js_commonjs-proxy.map +1 -0
  466. package/build/_virtual/index14.js_commonjs-proxy +3 -0
  467. package/build/_virtual/index14.js_commonjs-proxy.map +1 -0
  468. package/build/_virtual/index15.js_commonjs-proxy +3 -0
  469. package/build/_virtual/index15.js_commonjs-proxy.map +1 -0
  470. package/build/_virtual/index16.js_commonjs-proxy +3 -0
  471. package/build/_virtual/index16.js_commonjs-proxy.map +1 -0
  472. package/build/_virtual/index17.js_commonjs-proxy +3 -0
  473. package/build/_virtual/index17.js_commonjs-proxy.map +1 -0
  474. package/build/_virtual/index18.js_commonjs-proxy +3 -0
  475. package/build/_virtual/index18.js_commonjs-proxy.map +1 -0
  476. package/build/_virtual/index19.js_commonjs-proxy +3 -0
  477. package/build/_virtual/index19.js_commonjs-proxy.map +1 -0
  478. package/build/_virtual/index2.js_commonjs-proxy +3 -0
  479. package/build/_virtual/index2.js_commonjs-proxy.map +1 -0
  480. package/build/_virtual/index20.js_commonjs-proxy +3 -0
  481. package/build/_virtual/index20.js_commonjs-proxy.map +1 -0
  482. package/build/_virtual/index21.js_commonjs-proxy +7 -0
  483. package/build/_virtual/index21.js_commonjs-proxy.map +1 -0
  484. package/build/_virtual/index22.js_commonjs-proxy +3 -0
  485. package/build/_virtual/index22.js_commonjs-proxy.map +1 -0
  486. package/build/_virtual/index23.js_commonjs-proxy +3 -0
  487. package/build/_virtual/index23.js_commonjs-proxy.map +1 -0
  488. package/build/_virtual/index24.js_commonjs-proxy +3 -0
  489. package/build/_virtual/index24.js_commonjs-proxy.map +1 -0
  490. package/build/_virtual/index25.js_commonjs-proxy +3 -0
  491. package/build/_virtual/index25.js_commonjs-proxy.map +1 -0
  492. package/build/_virtual/index26.js_commonjs-proxy +3 -0
  493. package/build/_virtual/index26.js_commonjs-proxy.map +1 -0
  494. package/build/_virtual/index27.js_commonjs-proxy +3 -0
  495. package/build/_virtual/index27.js_commonjs-proxy.map +1 -0
  496. package/build/_virtual/index28.js_commonjs-proxy +3 -0
  497. package/build/_virtual/index28.js_commonjs-proxy.map +1 -0
  498. package/build/_virtual/index29.js_commonjs-proxy +3 -0
  499. package/build/_virtual/index29.js_commonjs-proxy.map +1 -0
  500. package/build/_virtual/index3.js_commonjs-proxy +3 -0
  501. package/build/_virtual/index3.js_commonjs-proxy.map +1 -0
  502. package/build/_virtual/index30.js_commonjs-proxy +3 -0
  503. package/build/_virtual/index30.js_commonjs-proxy.map +1 -0
  504. package/build/_virtual/index31.js_commonjs-proxy +3 -0
  505. package/build/_virtual/index31.js_commonjs-proxy.map +1 -0
  506. package/build/_virtual/index4.js_commonjs-proxy +3 -0
  507. package/build/_virtual/index4.js_commonjs-proxy.map +1 -0
  508. package/build/_virtual/index5.js_commonjs-proxy +3 -0
  509. package/build/_virtual/index5.js_commonjs-proxy.map +1 -0
  510. package/build/_virtual/index6.js_commonjs-proxy +3 -0
  511. package/build/_virtual/index6.js_commonjs-proxy.map +1 -0
  512. package/build/_virtual/index7.js_commonjs-proxy +3 -0
  513. package/build/_virtual/index7.js_commonjs-proxy.map +1 -0
  514. package/build/_virtual/index8.js_commonjs-proxy +3 -0
  515. package/build/_virtual/index8.js_commonjs-proxy.map +1 -0
  516. package/build/_virtual/index9.js_commonjs-proxy +3 -0
  517. package/build/_virtual/index9.js_commonjs-proxy.map +1 -0
  518. package/build/_virtual/index_exists.js_commonjs-proxy +3 -0
  519. package/build/_virtual/index_exists.js_commonjs-proxy.map +1 -0
  520. package/build/_virtual/index_information.js_commonjs-proxy +3 -0
  521. package/build/_virtual/index_information.js_commonjs-proxy.map +1 -0
  522. package/build/_virtual/indexes.js_commonjs-proxy +3 -0
  523. package/build/_virtual/indexes.js_commonjs-proxy.map +1 -0
  524. package/build/_virtual/inherits.js_commonjs-proxy +3 -0
  525. package/build/_virtual/inherits.js_commonjs-proxy.map +1 -0
  526. package/build/_virtual/inherits_browser.js_commonjs-proxy +3 -0
  527. package/build/_virtual/inherits_browser.js_commonjs-proxy.map +1 -0
  528. package/build/_virtual/insert_many.js_commonjs-proxy +3 -0
  529. package/build/_virtual/insert_many.js_commonjs-proxy.map +1 -0
  530. package/build/_virtual/insert_one.js_commonjs-proxy +3 -0
  531. package/build/_virtual/insert_one.js_commonjs-proxy.map +1 -0
  532. package/build/_virtual/int_32.js_commonjs-proxy +3 -0
  533. package/build/_virtual/int_32.js_commonjs-proxy.map +1 -0
  534. package/build/_virtual/internal.js_commonjs-proxy +3 -0
  535. package/build/_virtual/internal.js_commonjs-proxy.map +1 -0
  536. package/build/_virtual/isAtlas.js_commonjs-proxy +3 -0
  537. package/build/_virtual/isAtlas.js_commonjs-proxy.map +1 -0
  538. package/build/_virtual/isBsonType.js_commonjs-proxy +3 -0
  539. package/build/_virtual/isBsonType.js_commonjs-proxy.map +1 -0
  540. package/build/_virtual/isDefaultIdIndex.js_commonjs-proxy +3 -0
  541. package/build/_virtual/isDefaultIdIndex.js_commonjs-proxy.map +1 -0
  542. package/build/_virtual/isDefiningProjection.js_commonjs-proxy +3 -0
  543. package/build/_virtual/isDefiningProjection.js_commonjs-proxy.map +1 -0
  544. package/build/_virtual/isExclusive.js_commonjs-proxy +3 -0
  545. package/build/_virtual/isExclusive.js_commonjs-proxy.map +1 -0
  546. package/build/_virtual/isInclusive.js_commonjs-proxy +3 -0
  547. package/build/_virtual/isInclusive.js_commonjs-proxy.map +1 -0
  548. package/build/_virtual/isIndexEqual.js_commonjs-proxy +3 -0
  549. package/build/_virtual/isIndexEqual.js_commonjs-proxy.map +1 -0
  550. package/build/_virtual/isMongooseObject.js_commonjs-proxy +3 -0
  551. package/build/_virtual/isMongooseObject.js_commonjs-proxy.map +1 -0
  552. package/build/_virtual/isObject.js_commonjs-proxy +3 -0
  553. package/build/_virtual/isObject.js_commonjs-proxy.map +1 -0
  554. package/build/_virtual/isOperator.js_commonjs-proxy +3 -0
  555. package/build/_virtual/isOperator.js_commonjs-proxy.map +1 -0
  556. package/build/_virtual/isPathExcluded.js_commonjs-proxy +3 -0
  557. package/build/_virtual/isPathExcluded.js_commonjs-proxy.map +1 -0
  558. package/build/_virtual/isPathSelectedInclusive.js_commonjs-proxy +3 -0
  559. package/build/_virtual/isPathSelectedInclusive.js_commonjs-proxy.map +1 -0
  560. package/build/_virtual/isPromise.js_commonjs-proxy +3 -0
  561. package/build/_virtual/isPromise.js_commonjs-proxy.map +1 -0
  562. package/build/_virtual/isSSLError.js_commonjs-proxy +3 -0
  563. package/build/_virtual/isSSLError.js_commonjs-proxy.map +1 -0
  564. package/build/_virtual/is_capped.js_commonjs-proxy +3 -0
  565. package/build/_virtual/is_capped.js_commonjs-proxy.map +1 -0
  566. package/build/_virtual/join.js_commonjs-proxy +3 -0
  567. package/build/_virtual/join.js_commonjs-proxy.map +1 -0
  568. package/build/_virtual/kill_cursors.js_commonjs-proxy +3 -0
  569. package/build/_virtual/kill_cursors.js_commonjs-proxy.map +1 -0
  570. package/build/_virtual/leanPopulateMap.js_commonjs-proxy +3 -0
  571. package/build/_virtual/leanPopulateMap.js_commonjs-proxy.map +1 -0
  572. package/build/_virtual/limiter.js_commonjs-proxy +3 -0
  573. package/build/_virtual/limiter.js_commonjs-proxy.map +1 -0
  574. package/build/_virtual/list_collections.js_commonjs-proxy +3 -0
  575. package/build/_virtual/list_collections.js_commonjs-proxy.map +1 -0
  576. package/build/_virtual/list_databases.js_commonjs-proxy +3 -0
  577. package/build/_virtual/list_databases.js_commonjs-proxy.map +1 -0
  578. package/build/_virtual/list_indexes.js_commonjs-proxy +3 -0
  579. package/build/_virtual/list_indexes.js_commonjs-proxy.map +1 -0
  580. package/build/_virtual/logger.js_commonjs-proxy +3 -0
  581. package/build/_virtual/logger.js_commonjs-proxy.map +1 -0
  582. package/build/_virtual/long.js_commonjs-proxy +3 -0
  583. package/build/_virtual/long.js_commonjs-proxy.map +1 -0
  584. package/build/_virtual/lookupLocalFields.js_commonjs-proxy +3 -0
  585. package/build/_virtual/lookupLocalFields.js_commonjs-proxy.map +1 -0
  586. package/build/_virtual/lru.js_commonjs-proxy +3 -0
  587. package/build/_virtual/lru.js_commonjs-proxy.map +1 -0
  588. package/build/_virtual/map.js_commonjs-proxy +3 -0
  589. package/build/_virtual/map.js_commonjs-proxy.map +1 -0
  590. package/build/_virtual/map2.js_commonjs-proxy +3 -0
  591. package/build/_virtual/map2.js_commonjs-proxy.map +1 -0
  592. package/build/_virtual/map3.js_commonjs-proxy +3 -0
  593. package/build/_virtual/map3.js_commonjs-proxy.map +1 -0
  594. package/build/_virtual/map4.js_commonjs-proxy +3 -0
  595. package/build/_virtual/map4.js_commonjs-proxy.map +1 -0
  596. package/build/_virtual/map_reduce.js_commonjs-proxy +3 -0
  597. package/build/_virtual/map_reduce.js_commonjs-proxy.map +1 -0
  598. package/build/_virtual/max_key.js_commonjs-proxy +3 -0
  599. package/build/_virtual/max_key.js_commonjs-proxy.map +1 -0
  600. package/build/_virtual/memory-code-points.js_commonjs-proxy +3 -0
  601. package/build/_virtual/memory-code-points.js_commonjs-proxy.map +1 -0
  602. package/build/_virtual/merge.js_commonjs-proxy +3 -0
  603. package/build/_virtual/merge.js_commonjs-proxy.map +1 -0
  604. package/build/_virtual/message_stream.js_commonjs-proxy +3 -0
  605. package/build/_virtual/message_stream.js_commonjs-proxy.map +1 -0
  606. package/build/_virtual/messages.js_commonjs-proxy +3 -0
  607. package/build/_virtual/messages.js_commonjs-proxy.map +1 -0
  608. package/build/_virtual/method.js_commonjs-proxy +3 -0
  609. package/build/_virtual/method.js_commonjs-proxy.map +1 -0
  610. package/build/_virtual/min_key.js_commonjs-proxy +3 -0
  611. package/build/_virtual/min_key.js_commonjs-proxy.map +1 -0
  612. package/build/_virtual/missingSchema.js_commonjs-proxy +3 -0
  613. package/build/_virtual/missingSchema.js_commonjs-proxy.map +1 -0
  614. package/build/_virtual/mixed.js_commonjs-proxy +3 -0
  615. package/build/_virtual/mixed.js_commonjs-proxy.map +1 -0
  616. package/build/_virtual/model.js_commonjs-proxy +3 -0
  617. package/build/_virtual/model.js_commonjs-proxy.map +1 -0
  618. package/build/_virtual/modifiedPaths.js_commonjs-proxy +3 -0
  619. package/build/_virtual/modifiedPaths.js_commonjs-proxy.map +1 -0
  620. package/build/_virtual/mongo_client.js_commonjs-proxy +3 -0
  621. package/build/_virtual/mongo_client.js_commonjs-proxy.map +1 -0
  622. package/build/_virtual/mongo_credentials.js_commonjs-proxy +3 -0
  623. package/build/_virtual/mongo_credentials.js_commonjs-proxy.map +1 -0
  624. package/build/_virtual/mongocr.js_commonjs-proxy +3 -0
  625. package/build/_virtual/mongocr.js_commonjs-proxy.map +1 -0
  626. package/build/_virtual/mongodb_aws.js_commonjs-proxy +3 -0
  627. package/build/_virtual/mongodb_aws.js_commonjs-proxy.map +1 -0
  628. package/build/_virtual/mongooseError.js_commonjs-proxy +3 -0
  629. package/build/_virtual/mongooseError.js_commonjs-proxy.map +1 -0
  630. package/build/_virtual/mongos.js_commonjs-proxy +3 -0
  631. package/build/_virtual/mongos.js_commonjs-proxy.map +1 -0
  632. package/build/_virtual/mongos2.js_commonjs-proxy +3 -0
  633. package/build/_virtual/mongos2.js_commonjs-proxy.map +1 -0
  634. package/build/_virtual/monitor.js_commonjs-proxy +3 -0
  635. package/build/_virtual/monitor.js_commonjs-proxy.map +1 -0
  636. package/build/_virtual/moveImmutableProperties.js_commonjs-proxy +3 -0
  637. package/build/_virtual/moveImmutableProperties.js_commonjs-proxy.map +1 -0
  638. package/build/_virtual/mquery.js_commonjs-proxy +3 -0
  639. package/build/_virtual/mquery.js_commonjs-proxy.map +1 -0
  640. package/build/_virtual/msg.js_commonjs-proxy +3 -0
  641. package/build/_virtual/msg.js_commonjs-proxy.map +1 -0
  642. package/build/_virtual/multi.js_commonjs-proxy +3 -0
  643. package/build/_virtual/multi.js_commonjs-proxy.map +1 -0
  644. package/build/_virtual/native_topology.js_commonjs-proxy +3 -0
  645. package/build/_virtual/native_topology.js_commonjs-proxy.map +1 -0
  646. package/build/_virtual/node.js_commonjs-proxy +3 -0
  647. package/build/_virtual/node.js_commonjs-proxy.map +1 -0
  648. package/build/_virtual/node2.js_commonjs-proxy +3 -0
  649. package/build/_virtual/node2.js_commonjs-proxy.map +1 -0
  650. package/build/_virtual/nodeback.js_commonjs-proxy +3 -0
  651. package/build/_virtual/nodeback.js_commonjs-proxy.map +1 -0
  652. package/build/_virtual/nodeify.js_commonjs-proxy +3 -0
  653. package/build/_virtual/nodeify.js_commonjs-proxy.map +1 -0
  654. package/build/_virtual/normalizeRefPath.js_commonjs-proxy +3 -0
  655. package/build/_virtual/normalizeRefPath.js_commonjs-proxy.map +1 -0
  656. package/build/_virtual/notFound.js_commonjs-proxy +3 -0
  657. package/build/_virtual/notFound.js_commonjs-proxy.map +1 -0
  658. package/build/_virtual/number.js_commonjs-proxy +3 -0
  659. package/build/_virtual/number.js_commonjs-proxy.map +1 -0
  660. package/build/_virtual/number2.js_commonjs-proxy +3 -0
  661. package/build/_virtual/number2.js_commonjs-proxy.map +1 -0
  662. package/build/_virtual/objectExpected.js_commonjs-proxy +3 -0
  663. package/build/_virtual/objectExpected.js_commonjs-proxy.map +1 -0
  664. package/build/_virtual/objectParameter.js_commonjs-proxy +3 -0
  665. package/build/_virtual/objectParameter.js_commonjs-proxy.map +1 -0
  666. package/build/_virtual/objectid.js_commonjs-proxy +3 -0
  667. package/build/_virtual/objectid.js_commonjs-proxy.map +1 -0
  668. package/build/_virtual/objectid2.js_commonjs-proxy +3 -0
  669. package/build/_virtual/objectid2.js_commonjs-proxy.map +1 -0
  670. package/build/_virtual/objectid3.js_commonjs-proxy +3 -0
  671. package/build/_virtual/objectid3.js_commonjs-proxy.map +1 -0
  672. package/build/_virtual/objectid4.js_commonjs-proxy +3 -0
  673. package/build/_virtual/objectid4.js_commonjs-proxy.map +1 -0
  674. package/build/_virtual/objectid5.js_commonjs-proxy +3 -0
  675. package/build/_virtual/objectid5.js_commonjs-proxy.map +1 -0
  676. package/build/_virtual/operation.js_commonjs-proxy +3 -0
  677. package/build/_virtual/operation.js_commonjs-proxy.map +1 -0
  678. package/build/_virtual/options.js_commonjs-proxy +3 -0
  679. package/build/_virtual/options.js_commonjs-proxy.map +1 -0
  680. package/build/_virtual/options_operation.js_commonjs-proxy +3 -0
  681. package/build/_virtual/options_operation.js_commonjs-proxy.map +1 -0
  682. package/build/_virtual/ordered.js_commonjs-proxy +3 -0
  683. package/build/_virtual/ordered.js_commonjs-proxy.map +1 -0
  684. package/build/_virtual/overwriteModel.js_commonjs-proxy +3 -0
  685. package/build/_virtual/overwriteModel.js_commonjs-proxy.map +1 -0
  686. package/build/_virtual/parallelLimit.js_commonjs-proxy +3 -0
  687. package/build/_virtual/parallelLimit.js_commonjs-proxy.map +1 -0
  688. package/build/_virtual/parallelSave.js_commonjs-proxy +3 -0
  689. package/build/_virtual/parallelSave.js_commonjs-proxy.map +1 -0
  690. package/build/_virtual/parallelValidate.js_commonjs-proxy +3 -0
  691. package/build/_virtual/parallelValidate.js_commonjs-proxy.map +1 -0
  692. package/build/_virtual/parentPaths.js_commonjs-proxy +3 -0
  693. package/build/_virtual/parentPaths.js_commonjs-proxy.map +1 -0
  694. package/build/_virtual/parseProjection.js_commonjs-proxy +3 -0
  695. package/build/_virtual/parseProjection.js_commonjs-proxy.map +1 -0
  696. package/build/_virtual/parser.js_commonjs-proxy +3 -0
  697. package/build/_virtual/parser.js_commonjs-proxy.map +1 -0
  698. package/build/_virtual/parserError.js_commonjs-proxy +3 -0
  699. package/build/_virtual/parserError.js_commonjs-proxy.map +1 -0
  700. package/build/_virtual/permessage-deflate.js_commonjs-proxy +3 -0
  701. package/build/_virtual/permessage-deflate.js_commonjs-proxy.map +1 -0
  702. package/build/_virtual/permissions.js_commonjs-proxy +3 -0
  703. package/build/_virtual/permissions.js_commonjs-proxy.map +1 -0
  704. package/build/_virtual/plain.js_commonjs-proxy +3 -0
  705. package/build/_virtual/plain.js_commonjs-proxy.map +1 -0
  706. package/build/_virtual/pool.js_commonjs-proxy +3 -0
  707. package/build/_virtual/pool.js_commonjs-proxy.map +1 -0
  708. package/build/_virtual/profiling_level.js_commonjs-proxy +3 -0
  709. package/build/_virtual/profiling_level.js_commonjs-proxy.map +1 -0
  710. package/build/_virtual/promise.js_commonjs-proxy +3 -0
  711. package/build/_virtual/promise.js_commonjs-proxy.map +1 -0
  712. package/build/_virtual/promiseOrCallback.js_commonjs-proxy +3 -0
  713. package/build/_virtual/promiseOrCallback.js_commonjs-proxy.map +1 -0
  714. package/build/_virtual/promise_array.js_commonjs-proxy +3 -0
  715. package/build/_virtual/promise_array.js_commonjs-proxy.map +1 -0
  716. package/build/_virtual/promise_provider.js_commonjs-proxy +3 -0
  717. package/build/_virtual/promise_provider.js_commonjs-proxy.map +1 -0
  718. package/build/_virtual/promisify.js_commonjs-proxy +3 -0
  719. package/build/_virtual/promisify.js_commonjs-proxy.map +1 -0
  720. package/build/_virtual/propertyOptions.js_commonjs-proxy +3 -0
  721. package/build/_virtual/propertyOptions.js_commonjs-proxy.map +1 -0
  722. package/build/_virtual/props.js_commonjs-proxy +3 -0
  723. package/build/_virtual/props.js_commonjs-proxy.map +1 -0
  724. package/build/_virtual/query.js_commonjs-proxy +3 -0
  725. package/build/_virtual/query.js_commonjs-proxy.map +1 -0
  726. package/build/_virtual/query2.js_commonjs-proxy +3 -0
  727. package/build/_virtual/query2.js_commonjs-proxy.map +1 -0
  728. package/build/_virtual/queryhelpers.js_commonjs-proxy +3 -0
  729. package/build/_virtual/queryhelpers.js_commonjs-proxy.map +1 -0
  730. package/build/_virtual/queue.js_commonjs-proxy +3 -0
  731. package/build/_virtual/queue.js_commonjs-proxy.map +1 -0
  732. package/build/_virtual/race.js_commonjs-proxy +3 -0
  733. package/build/_virtual/race.js_commonjs-proxy.map +1 -0
  734. package/build/_virtual/re_index.js_commonjs-proxy +3 -0
  735. package/build/_virtual/re_index.js_commonjs-proxy.map +1 -0
  736. package/build/_virtual/read_concern.js_commonjs-proxy +3 -0
  737. package/build/_virtual/read_concern.js_commonjs-proxy.map +1 -0
  738. package/build/_virtual/read_preference.js_commonjs-proxy +3 -0
  739. package/build/_virtual/read_preference.js_commonjs-proxy.map +1 -0
  740. package/build/_virtual/readable.js_commonjs-proxy +3 -0
  741. package/build/_virtual/readable.js_commonjs-proxy.map +1 -0
  742. package/build/_virtual/receiver.js_commonjs-proxy +3 -0
  743. package/build/_virtual/receiver.js_commonjs-proxy.map +1 -0
  744. package/build/_virtual/redisError.js_commonjs-proxy +3 -0
  745. package/build/_virtual/redisError.js_commonjs-proxy.map +1 -0
  746. package/build/_virtual/reduce.js_commonjs-proxy +3 -0
  747. package/build/_virtual/reduce.js_commonjs-proxy.map +1 -0
  748. package/build/_virtual/regexp.js_commonjs-proxy +3 -0
  749. package/build/_virtual/regexp.js_commonjs-proxy.map +1 -0
  750. package/build/_virtual/removeDeselectedForeignField.js_commonjs-proxy +3 -0
  751. package/build/_virtual/removeDeselectedForeignField.js_commonjs-proxy.map +1 -0
  752. package/build/_virtual/removeOptions.js_commonjs-proxy +3 -0
  753. package/build/_virtual/removeOptions.js_commonjs-proxy.map +1 -0
  754. package/build/_virtual/removeSubdocs.js_commonjs-proxy +3 -0
  755. package/build/_virtual/removeSubdocs.js_commonjs-proxy.map +1 -0
  756. package/build/_virtual/removeUnusedArrayFilters.js_commonjs-proxy +3 -0
  757. package/build/_virtual/removeUnusedArrayFilters.js_commonjs-proxy.map +1 -0
  758. package/build/_virtual/remove_user.js_commonjs-proxy +3 -0
  759. package/build/_virtual/remove_user.js_commonjs-proxy.map +1 -0
  760. package/build/_virtual/rename.js_commonjs-proxy +3 -0
  761. package/build/_virtual/rename.js_commonjs-proxy.map +1 -0
  762. package/build/_virtual/replace_one.js_commonjs-proxy +3 -0
  763. package/build/_virtual/replace_one.js_commonjs-proxy.map +1 -0
  764. package/build/_virtual/replset.js_commonjs-proxy +3 -0
  765. package/build/_virtual/replset.js_commonjs-proxy.map +1 -0
  766. package/build/_virtual/replset2.js_commonjs-proxy +3 -0
  767. package/build/_virtual/replset2.js_commonjs-proxy.map +1 -0
  768. package/build/_virtual/replset_state.js_commonjs-proxy +3 -0
  769. package/build/_virtual/replset_state.js_commonjs-proxy.map +1 -0
  770. package/build/_virtual/replyError.js_commonjs-proxy +3 -0
  771. package/build/_virtual/replyError.js_commonjs-proxy.map +1 -0
  772. package/build/_virtual/run_command.js_commonjs-proxy +3 -0
  773. package/build/_virtual/run_command.js_commonjs-proxy.map +1 -0
  774. package/build/_virtual/sanitizeProjection.js_commonjs-proxy +3 -0
  775. package/build/_virtual/sanitizeProjection.js_commonjs-proxy.map +1 -0
  776. package/build/_virtual/saveOptions.js_commonjs-proxy +3 -0
  777. package/build/_virtual/saveOptions.js_commonjs-proxy.map +1 -0
  778. package/build/_virtual/saveSubdocs.js_commonjs-proxy +3 -0
  779. package/build/_virtual/saveSubdocs.js_commonjs-proxy.map +1 -0
  780. package/build/_virtual/schedule.js_commonjs-proxy +3 -0
  781. package/build/_virtual/schedule.js_commonjs-proxy.map +1 -0
  782. package/build/_virtual/schema.js_commonjs-proxy +3 -0
  783. package/build/_virtual/schema.js_commonjs-proxy.map +1 -0
  784. package/build/_virtual/schematype.js_commonjs-proxy +3 -0
  785. package/build/_virtual/schematype.js_commonjs-proxy.map +1 -0
  786. package/build/_virtual/scram.js_commonjs-proxy +3 -0
  787. package/build/_virtual/scram.js_commonjs-proxy.map +1 -0
  788. package/build/_virtual/selectPopulatedFields.js_commonjs-proxy +3 -0
  789. package/build/_virtual/selectPopulatedFields.js_commonjs-proxy.map +1 -0
  790. package/build/_virtual/sender.js_commonjs-proxy +3 -0
  791. package/build/_virtual/sender.js_commonjs-proxy.map +1 -0
  792. package/build/_virtual/serializer.js_commonjs-proxy +3 -0
  793. package/build/_virtual/serializer.js_commonjs-proxy.map +1 -0
  794. package/build/_virtual/server.js_commonjs-proxy +3 -0
  795. package/build/_virtual/server.js_commonjs-proxy.map +1 -0
  796. package/build/_virtual/server2.js_commonjs-proxy +3 -0
  797. package/build/_virtual/server2.js_commonjs-proxy.map +1 -0
  798. package/build/_virtual/server3.js_commonjs-proxy +3 -0
  799. package/build/_virtual/server3.js_commonjs-proxy.map +1 -0
  800. package/build/_virtual/serverSelection.js_commonjs-proxy +3 -0
  801. package/build/_virtual/serverSelection.js_commonjs-proxy.map +1 -0
  802. package/build/_virtual/server_description.js_commonjs-proxy +3 -0
  803. package/build/_virtual/server_description.js_commonjs-proxy.map +1 -0
  804. package/build/_virtual/server_selection.js_commonjs-proxy +3 -0
  805. package/build/_virtual/server_selection.js_commonjs-proxy.map +1 -0
  806. package/build/_virtual/sessions.js_commonjs-proxy +3 -0
  807. package/build/_virtual/sessions.js_commonjs-proxy.map +1 -0
  808. package/build/_virtual/setDefaultsOnInsert.js_commonjs-proxy +3 -0
  809. package/build/_virtual/setDefaultsOnInsert.js_commonjs-proxy.map +1 -0
  810. package/build/_virtual/setDottedPath.js_commonjs-proxy +3 -0
  811. package/build/_virtual/setDottedPath.js_commonjs-proxy.map +1 -0
  812. package/build/_virtual/set_profiling_level.js_commonjs-proxy +3 -0
  813. package/build/_virtual/set_profiling_level.js_commonjs-proxy.map +1 -0
  814. package/build/_virtual/settle.js_commonjs-proxy +3 -0
  815. package/build/_virtual/settle.js_commonjs-proxy.map +1 -0
  816. package/build/_virtual/setupTimestamps.js_commonjs-proxy +3 -0
  817. package/build/_virtual/setupTimestamps.js_commonjs-proxy.map +1 -0
  818. package/build/_virtual/sharding.js_commonjs-proxy +3 -0
  819. package/build/_virtual/sharding.js_commonjs-proxy.map +1 -0
  820. package/build/_virtual/shared.js_commonjs-proxy +3 -0
  821. package/build/_virtual/shared.js_commonjs-proxy.map +1 -0
  822. package/build/_virtual/shared2.js_commonjs-proxy +3 -0
  823. package/build/_virtual/shared2.js_commonjs-proxy.map +1 -0
  824. package/build/_virtual/some.js_commonjs-proxy +3 -0
  825. package/build/_virtual/some.js_commonjs-proxy.map +1 -0
  826. package/build/_virtual/specialProperties.js_commonjs-proxy +3 -0
  827. package/build/_virtual/specialProperties.js_commonjs-proxy.map +1 -0
  828. package/build/_virtual/srv_polling.js_commonjs-proxy +3 -0
  829. package/build/_virtual/srv_polling.js_commonjs-proxy.map +1 -0
  830. package/build/_virtual/statemachine.js_commonjs-proxy +3 -0
  831. package/build/_virtual/statemachine.js_commonjs-proxy.map +1 -0
  832. package/build/_virtual/stats.js_commonjs-proxy +3 -0
  833. package/build/_virtual/stats.js_commonjs-proxy.map +1 -0
  834. package/build/_virtual/stream.js_commonjs-proxy +3 -0
  835. package/build/_virtual/stream.js_commonjs-proxy.map +1 -0
  836. package/build/_virtual/stream2.js_commonjs-proxy +3 -0
  837. package/build/_virtual/stream2.js_commonjs-proxy.map +1 -0
  838. package/build/_virtual/stream_description.js_commonjs-proxy +3 -0
  839. package/build/_virtual/stream_description.js_commonjs-proxy.map +1 -0
  840. package/build/_virtual/strict.js_commonjs-proxy +3 -0
  841. package/build/_virtual/strict.js_commonjs-proxy.map +1 -0
  842. package/build/_virtual/string.js_commonjs-proxy +3 -0
  843. package/build/_virtual/string.js_commonjs-proxy.map +1 -0
  844. package/build/_virtual/string2.js_commonjs-proxy +3 -0
  845. package/build/_virtual/string2.js_commonjs-proxy.map +1 -0
  846. package/build/_virtual/stringToParts.js_commonjs-proxy +3 -0
  847. package/build/_virtual/stringToParts.js_commonjs-proxy.map +1 -0
  848. package/build/_virtual/string_decoder.js_commonjs-proxy +3 -0
  849. package/build/_virtual/string_decoder.js_commonjs-proxy.map +1 -0
  850. package/build/_virtual/stringifyFunctionOperators.js_commonjs-proxy +3 -0
  851. package/build/_virtual/stringifyFunctionOperators.js_commonjs-proxy.map +1 -0
  852. package/build/_virtual/subdocument.js_commonjs-proxy +3 -0
  853. package/build/_virtual/subdocument.js_commonjs-proxy.map +1 -0
  854. package/build/_virtual/symbol.js_commonjs-proxy +3 -0
  855. package/build/_virtual/symbol.js_commonjs-proxy.map +1 -0
  856. package/build/_virtual/symbols.js_commonjs-proxy +3 -0
  857. package/build/_virtual/symbols.js_commonjs-proxy.map +1 -0
  858. package/build/_virtual/symbols2.js_commonjs-proxy +3 -0
  859. package/build/_virtual/symbols2.js_commonjs-proxy.map +1 -0
  860. package/build/_virtual/synchronous_inspection.js_commonjs-proxy +3 -0
  861. package/build/_virtual/synchronous_inspection.js_commonjs-proxy.map +1 -0
  862. package/build/_virtual/text.js_commonjs-proxy +3 -0
  863. package/build/_virtual/text.js_commonjs-proxy.map +1 -0
  864. package/build/_virtual/thenables.js_commonjs-proxy +3 -0
  865. package/build/_virtual/thenables.js_commonjs-proxy.map +1 -0
  866. package/build/_virtual/timers.js_commonjs-proxy +3 -0
  867. package/build/_virtual/timers.js_commonjs-proxy.map +1 -0
  868. package/build/_virtual/timers2.js_commonjs-proxy +3 -0
  869. package/build/_virtual/timers2.js_commonjs-proxy.map +1 -0
  870. package/build/_virtual/timestamp.js_commonjs-proxy +3 -0
  871. package/build/_virtual/timestamp.js_commonjs-proxy.map +1 -0
  872. package/build/_virtual/topology.js_commonjs-proxy +3 -0
  873. package/build/_virtual/topology.js_commonjs-proxy.map +1 -0
  874. package/build/_virtual/topology_base.js_commonjs-proxy +3 -0
  875. package/build/_virtual/topology_base.js_commonjs-proxy.map +1 -0
  876. package/build/_virtual/topology_description.js_commonjs-proxy +3 -0
  877. package/build/_virtual/topology_description.js_commonjs-proxy.map +1 -0
  878. package/build/_virtual/trackTransaction.js_commonjs-proxy +3 -0
  879. package/build/_virtual/trackTransaction.js_commonjs-proxy.map +1 -0
  880. package/build/_virtual/transactions.js_commonjs-proxy +3 -0
  881. package/build/_virtual/transactions.js_commonjs-proxy.map +1 -0
  882. package/build/_virtual/type.js_commonjs-proxy +3 -0
  883. package/build/_virtual/type.js_commonjs-proxy.map +1 -0
  884. package/build/_virtual/unordered.js_commonjs-proxy +3 -0
  885. package/build/_virtual/unordered.js_commonjs-proxy.map +1 -0
  886. package/build/_virtual/updateValidators.js_commonjs-proxy +3 -0
  887. package/build/_virtual/updateValidators.js_commonjs-proxy.map +1 -0
  888. package/build/_virtual/update_many.js_commonjs-proxy +3 -0
  889. package/build/_virtual/update_many.js_commonjs-proxy.map +1 -0
  890. package/build/_virtual/update_one.js_commonjs-proxy +3 -0
  891. package/build/_virtual/update_one.js_commonjs-proxy.map +1 -0
  892. package/build/_virtual/updatedPathsByArrayFilter.js_commonjs-proxy +3 -0
  893. package/build/_virtual/updatedPathsByArrayFilter.js_commonjs-proxy.map +1 -0
  894. package/build/_virtual/upload.js_commonjs-proxy +3 -0
  895. package/build/_virtual/upload.js_commonjs-proxy.map +1 -0
  896. package/build/_virtual/uri_parser.js_commonjs-proxy +3 -0
  897. package/build/_virtual/uri_parser.js_commonjs-proxy.map +1 -0
  898. package/build/_virtual/url_parser.js_commonjs-proxy +3 -0
  899. package/build/_virtual/url_parser.js_commonjs-proxy.map +1 -0
  900. package/build/_virtual/using.js_commonjs-proxy +3 -0
  901. package/build/_virtual/using.js_commonjs-proxy.map +1 -0
  902. package/build/_virtual/util.js_commonjs-proxy +3 -0
  903. package/build/_virtual/util.js_commonjs-proxy.map +1 -0
  904. package/build/_virtual/util2.js_commonjs-proxy +3 -0
  905. package/build/_virtual/util2.js_commonjs-proxy.map +1 -0
  906. package/build/_virtual/utils.js_commonjs-proxy +3 -0
  907. package/build/_virtual/utils.js_commonjs-proxy.map +1 -0
  908. package/build/_virtual/utils2.js_commonjs-proxy +3 -0
  909. package/build/_virtual/utils2.js_commonjs-proxy.map +1 -0
  910. package/build/_virtual/utils3.js_commonjs-proxy +3 -0
  911. package/build/_virtual/utils3.js_commonjs-proxy.map +1 -0
  912. package/build/_virtual/utils4.js_commonjs-proxy +3 -0
  913. package/build/_virtual/utils4.js_commonjs-proxy.map +1 -0
  914. package/build/_virtual/utils5.js_commonjs-proxy +3 -0
  915. package/build/_virtual/utils5.js_commonjs-proxy.map +1 -0
  916. package/build/_virtual/utils6.js_commonjs-proxy +3 -0
  917. package/build/_virtual/utils6.js_commonjs-proxy.map +1 -0
  918. package/build/_virtual/utils7.js_commonjs-proxy +3 -0
  919. package/build/_virtual/utils7.js_commonjs-proxy.map +1 -0
  920. package/build/_virtual/validateBeforeSave.js_commonjs-proxy +3 -0
  921. package/build/_virtual/validateBeforeSave.js_commonjs-proxy.map +1 -0
  922. package/build/_virtual/validateRef.js_commonjs-proxy +3 -0
  923. package/build/_virtual/validateRef.js_commonjs-proxy.map +1 -0
  924. package/build/_virtual/validate_collection.js_commonjs-proxy +3 -0
  925. package/build/_virtual/validate_collection.js_commonjs-proxy.map +1 -0
  926. package/build/_virtual/validation.js_commonjs-proxy +3 -0
  927. package/build/_virtual/validation.js_commonjs-proxy.map +1 -0
  928. package/build/_virtual/validation2.js_commonjs-proxy +3 -0
  929. package/build/_virtual/validation2.js_commonjs-proxy.map +1 -0
  930. package/build/_virtual/validator.js_commonjs-proxy +3 -0
  931. package/build/_virtual/validator.js_commonjs-proxy.map +1 -0
  932. package/build/_virtual/validoptions.js_commonjs-proxy +3 -0
  933. package/build/_virtual/validoptions.js_commonjs-proxy.map +1 -0
  934. package/build/_virtual/version.js_commonjs-proxy +3 -0
  935. package/build/_virtual/version.js_commonjs-proxy.map +1 -0
  936. package/build/_virtual/virtualtype.js_commonjs-proxy +3 -0
  937. package/build/_virtual/virtualtype.js_commonjs-proxy.map +1 -0
  938. package/build/_virtual/websocket-server.js_commonjs-proxy +3 -0
  939. package/build/_virtual/websocket-server.js_commonjs-proxy.map +1 -0
  940. package/build/_virtual/websocket.js_commonjs-proxy +3 -0
  941. package/build/_virtual/websocket.js_commonjs-proxy.map +1 -0
  942. package/build/_virtual/wrapThunk.js_commonjs-proxy +3 -0
  943. package/build/_virtual/wrapThunk.js_commonjs-proxy.map +1 -0
  944. package/build/_virtual/write_command.js_commonjs-proxy +3 -0
  945. package/build/_virtual/write_command.js_commonjs-proxy.map +1 -0
  946. package/build/_virtual/write_concern.js_commonjs-proxy +3 -0
  947. package/build/_virtual/write_concern.js_commonjs-proxy.map +1 -0
  948. package/build/_virtual/x509.js_commonjs-proxy +3 -0
  949. package/build/_virtual/x509.js_commonjs-proxy.map +1 -0
  950. package/build/bundles/colyseus/build/index.mjs +13 -0
  951. package/build/bundles/colyseus/build/index.mjs.js +25 -0
  952. package/build/bundles/colyseus/build/index.mjs.js.map +1 -0
  953. package/build/bundles/colyseus/build/index.mjs.map +1 -0
  954. package/build/matchmaker/controller.js +3 -1
  955. package/build/matchmaker/controller.js.map +1 -1
  956. package/build/matchmaker/controller.mjs +3 -1
  957. package/build/matchmaker/controller.mjs.map +1 -1
  958. package/build/node_modules/aws4/aws4.js +388 -0
  959. package/build/node_modules/aws4/aws4.js.map +1 -0
  960. package/build/node_modules/aws4/aws4.mjs +380 -0
  961. package/build/node_modules/aws4/aws4.mjs.map +1 -0
  962. package/build/node_modules/aws4/lru.js +101 -0
  963. package/build/node_modules/aws4/lru.js.map +1 -0
  964. package/build/node_modules/aws4/lru.mjs +99 -0
  965. package/build/node_modules/aws4/lru.mjs.map +1 -0
  966. package/build/node_modules/bl/bl.js +403 -0
  967. package/build/node_modules/bl/bl.js.map +1 -0
  968. package/build/node_modules/bl/bl.mjs +397 -0
  969. package/build/node_modules/bl/bl.mjs.map +1 -0
  970. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_duplex.js +114 -0
  971. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_duplex.js.map +1 -0
  972. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_duplex.mjs +112 -0
  973. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_duplex.mjs.map +1 -0
  974. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_passthrough.js +29 -0
  975. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_passthrough.js.map +1 -0
  976. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_passthrough.mjs +27 -0
  977. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_passthrough.mjs.map +1 -0
  978. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_readable.js +1020 -0
  979. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_readable.js.map +1 -0
  980. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_readable.mjs +1013 -0
  981. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_readable.mjs.map +1 -0
  982. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_transform.js +158 -0
  983. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_transform.js.map +1 -0
  984. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_transform.mjs +156 -0
  985. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_transform.mjs.map +1 -0
  986. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_writable.js +667 -0
  987. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_writable.js.map +1 -0
  988. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_writable.mjs +665 -0
  989. package/build/node_modules/bl/node_modules/readable-stream/lib/_stream_writable.mjs.map +1 -0
  990. package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/BufferList.js +93 -0
  991. package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/BufferList.js.map +1 -0
  992. package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/BufferList.mjs +87 -0
  993. package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/BufferList.mjs.map +1 -0
  994. package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/destroy.js +79 -0
  995. package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/destroy.js.map +1 -0
  996. package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/destroy.mjs +77 -0
  997. package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/destroy.mjs.map +1 -0
  998. package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/stream.js +12 -0
  999. package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/stream.js.map +1 -0
  1000. package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/stream.mjs +6 -0
  1001. package/build/node_modules/bl/node_modules/readable-stream/lib/internal/streams/stream.mjs.map +1 -0
  1002. package/build/node_modules/bl/node_modules/readable-stream/readable.js +37 -0
  1003. package/build/node_modules/bl/node_modules/readable-stream/readable.js.map +1 -0
  1004. package/build/node_modules/bl/node_modules/readable-stream/readable.mjs +31 -0
  1005. package/build/node_modules/bl/node_modules/readable-stream/readable.mjs.map +1 -0
  1006. package/build/node_modules/bl/node_modules/string_decoder/lib/string_decoder.js +286 -0
  1007. package/build/node_modules/bl/node_modules/string_decoder/lib/string_decoder.js.map +1 -0
  1008. package/build/node_modules/bl/node_modules/string_decoder/lib/string_decoder.mjs +282 -0
  1009. package/build/node_modules/bl/node_modules/string_decoder/lib/string_decoder.mjs.map +1 -0
  1010. package/build/node_modules/bluebird/js/release/any.js +25 -0
  1011. package/build/node_modules/bluebird/js/release/any.js.map +1 -0
  1012. package/build/node_modules/bluebird/js/release/any.mjs +23 -0
  1013. package/build/node_modules/bluebird/js/release/any.mjs.map +1 -0
  1014. package/build/node_modules/bluebird/js/release/async.js +173 -0
  1015. package/build/node_modules/bluebird/js/release/async.js.map +1 -0
  1016. package/build/node_modules/bluebird/js/release/async.mjs +169 -0
  1017. package/build/node_modules/bluebird/js/release/async.mjs.map +1 -0
  1018. package/build/node_modules/bluebird/js/release/bind.js +71 -0
  1019. package/build/node_modules/bluebird/js/release/bind.js.map +1 -0
  1020. package/build/node_modules/bluebird/js/release/bind.mjs +69 -0
  1021. package/build/node_modules/bluebird/js/release/bind.mjs.map +1 -0
  1022. package/build/node_modules/bluebird/js/release/bluebird.js +17 -0
  1023. package/build/node_modules/bluebird/js/release/bluebird.js.map +1 -0
  1024. package/build/node_modules/bluebird/js/release/bluebird.mjs +15 -0
  1025. package/build/node_modules/bluebird/js/release/bluebird.mjs.map +1 -0
  1026. package/build/node_modules/bluebird/js/release/call_get.js +128 -0
  1027. package/build/node_modules/bluebird/js/release/call_get.js.map +1 -0
  1028. package/build/node_modules/bluebird/js/release/call_get.mjs +126 -0
  1029. package/build/node_modules/bluebird/js/release/call_get.mjs.map +1 -0
  1030. package/build/node_modules/bluebird/js/release/cancel.js +135 -0
  1031. package/build/node_modules/bluebird/js/release/cancel.js.map +1 -0
  1032. package/build/node_modules/bluebird/js/release/cancel.mjs +133 -0
  1033. package/build/node_modules/bluebird/js/release/cancel.mjs.map +1 -0
  1034. package/build/node_modules/bluebird/js/release/catch_filter.js +49 -0
  1035. package/build/node_modules/bluebird/js/release/catch_filter.js.map +1 -0
  1036. package/build/node_modules/bluebird/js/release/catch_filter.mjs +47 -0
  1037. package/build/node_modules/bluebird/js/release/catch_filter.mjs.map +1 -0
  1038. package/build/node_modules/bluebird/js/release/context.js +73 -0
  1039. package/build/node_modules/bluebird/js/release/context.js.map +1 -0
  1040. package/build/node_modules/bluebird/js/release/context.mjs +71 -0
  1041. package/build/node_modules/bluebird/js/release/context.mjs.map +1 -0
  1042. package/build/node_modules/bluebird/js/release/debuggability.js +922 -0
  1043. package/build/node_modules/bluebird/js/release/debuggability.js.map +1 -0
  1044. package/build/node_modules/bluebird/js/release/debuggability.mjs +920 -0
  1045. package/build/node_modules/bluebird/js/release/debuggability.mjs.map +1 -0
  1046. package/build/node_modules/bluebird/js/release/direct_resolve.js +50 -0
  1047. package/build/node_modules/bluebird/js/release/direct_resolve.js.map +1 -0
  1048. package/build/node_modules/bluebird/js/release/direct_resolve.mjs +48 -0
  1049. package/build/node_modules/bluebird/js/release/direct_resolve.mjs.map +1 -0
  1050. package/build/node_modules/bluebird/js/release/each.js +33 -0
  1051. package/build/node_modules/bluebird/js/release/each.js.map +1 -0
  1052. package/build/node_modules/bluebird/js/release/each.mjs +31 -0
  1053. package/build/node_modules/bluebird/js/release/each.mjs.map +1 -0
  1054. package/build/node_modules/bluebird/js/release/errors.js +122 -0
  1055. package/build/node_modules/bluebird/js/release/errors.js.map +1 -0
  1056. package/build/node_modules/bluebird/js/release/errors.mjs +120 -0
  1057. package/build/node_modules/bluebird/js/release/errors.mjs.map +1 -0
  1058. package/build/node_modules/bluebird/js/release/es5.js +88 -0
  1059. package/build/node_modules/bluebird/js/release/es5.js.map +1 -0
  1060. package/build/node_modules/bluebird/js/release/es5.mjs +86 -0
  1061. package/build/node_modules/bluebird/js/release/es5.mjs.map +1 -0
  1062. package/build/node_modules/bluebird/js/release/filter.js +16 -0
  1063. package/build/node_modules/bluebird/js/release/filter.js.map +1 -0
  1064. package/build/node_modules/bluebird/js/release/filter.mjs +14 -0
  1065. package/build/node_modules/bluebird/js/release/filter.mjs.map +1 -0
  1066. package/build/node_modules/bluebird/js/release/finally.js +153 -0
  1067. package/build/node_modules/bluebird/js/release/finally.js.map +1 -0
  1068. package/build/node_modules/bluebird/js/release/finally.mjs +151 -0
  1069. package/build/node_modules/bluebird/js/release/finally.mjs.map +1 -0
  1070. package/build/node_modules/bluebird/js/release/generators.js +229 -0
  1071. package/build/node_modules/bluebird/js/release/generators.js.map +1 -0
  1072. package/build/node_modules/bluebird/js/release/generators.mjs +227 -0
  1073. package/build/node_modules/bluebird/js/release/generators.mjs.map +1 -0
  1074. package/build/node_modules/bluebird/js/release/join.js +172 -0
  1075. package/build/node_modules/bluebird/js/release/join.js.map +1 -0
  1076. package/build/node_modules/bluebird/js/release/join.mjs +170 -0
  1077. package/build/node_modules/bluebird/js/release/join.mjs.map +1 -0
  1078. package/build/node_modules/bluebird/js/release/map.js +173 -0
  1079. package/build/node_modules/bluebird/js/release/map.js.map +1 -0
  1080. package/build/node_modules/bluebird/js/release/map.mjs +171 -0
  1081. package/build/node_modules/bluebird/js/release/map.mjs.map +1 -0
  1082. package/build/node_modules/bluebird/js/release/method.js +61 -0
  1083. package/build/node_modules/bluebird/js/release/method.js.map +1 -0
  1084. package/build/node_modules/bluebird/js/release/method.mjs +59 -0
  1085. package/build/node_modules/bluebird/js/release/method.mjs.map +1 -0
  1086. package/build/node_modules/bluebird/js/release/nodeback.js +57 -0
  1087. package/build/node_modules/bluebird/js/release/nodeback.js.map +1 -0
  1088. package/build/node_modules/bluebird/js/release/nodeback.mjs +55 -0
  1089. package/build/node_modules/bluebird/js/release/nodeback.mjs.map +1 -0
  1090. package/build/node_modules/bluebird/js/release/nodeify.js +64 -0
  1091. package/build/node_modules/bluebird/js/release/nodeify.js.map +1 -0
  1092. package/build/node_modules/bluebird/js/release/nodeify.mjs +62 -0
  1093. package/build/node_modules/bluebird/js/release/nodeify.mjs.map +1 -0
  1094. package/build/node_modules/bluebird/js/release/promise.js +815 -0
  1095. package/build/node_modules/bluebird/js/release/promise.js.map +1 -0
  1096. package/build/node_modules/bluebird/js/release/promise.mjs +813 -0
  1097. package/build/node_modules/bluebird/js/release/promise.mjs.map +1 -0
  1098. package/build/node_modules/bluebird/js/release/promise_array.js +190 -0
  1099. package/build/node_modules/bluebird/js/release/promise_array.js.map +1 -0
  1100. package/build/node_modules/bluebird/js/release/promise_array.mjs +188 -0
  1101. package/build/node_modules/bluebird/js/release/promise_array.mjs.map +1 -0
  1102. package/build/node_modules/bluebird/js/release/promisify.js +321 -0
  1103. package/build/node_modules/bluebird/js/release/promisify.js.map +1 -0
  1104. package/build/node_modules/bluebird/js/release/promisify.mjs +319 -0
  1105. package/build/node_modules/bluebird/js/release/promisify.mjs.map +1 -0
  1106. package/build/node_modules/bluebird/js/release/props.js +125 -0
  1107. package/build/node_modules/bluebird/js/release/props.js.map +1 -0
  1108. package/build/node_modules/bluebird/js/release/props.mjs +123 -0
  1109. package/build/node_modules/bluebird/js/release/props.mjs.map +1 -0
  1110. package/build/node_modules/bluebird/js/release/queue.js +77 -0
  1111. package/build/node_modules/bluebird/js/release/queue.js.map +1 -0
  1112. package/build/node_modules/bluebird/js/release/queue.mjs +75 -0
  1113. package/build/node_modules/bluebird/js/release/queue.mjs.map +1 -0
  1114. package/build/node_modules/bluebird/js/release/race.js +55 -0
  1115. package/build/node_modules/bluebird/js/release/race.js.map +1 -0
  1116. package/build/node_modules/bluebird/js/release/race.mjs +53 -0
  1117. package/build/node_modules/bluebird/js/release/race.mjs.map +1 -0
  1118. package/build/node_modules/bluebird/js/release/reduce.js +178 -0
  1119. package/build/node_modules/bluebird/js/release/reduce.js.map +1 -0
  1120. package/build/node_modules/bluebird/js/release/reduce.mjs +176 -0
  1121. package/build/node_modules/bluebird/js/release/reduce.mjs.map +1 -0
  1122. package/build/node_modules/bluebird/js/release/schedule.js +67 -0
  1123. package/build/node_modules/bluebird/js/release/schedule.js.map +1 -0
  1124. package/build/node_modules/bluebird/js/release/schedule.mjs +65 -0
  1125. package/build/node_modules/bluebird/js/release/schedule.mjs.map +1 -0
  1126. package/build/node_modules/bluebird/js/release/settle.js +49 -0
  1127. package/build/node_modules/bluebird/js/release/settle.js.map +1 -0
  1128. package/build/node_modules/bluebird/js/release/settle.mjs +47 -0
  1129. package/build/node_modules/bluebird/js/release/settle.mjs.map +1 -0
  1130. package/build/node_modules/bluebird/js/release/some.js +155 -0
  1131. package/build/node_modules/bluebird/js/release/some.js.map +1 -0
  1132. package/build/node_modules/bluebird/js/release/some.mjs +153 -0
  1133. package/build/node_modules/bluebird/js/release/some.mjs.map +1 -0
  1134. package/build/node_modules/bluebird/js/release/synchronous_inspection.js +107 -0
  1135. package/build/node_modules/bluebird/js/release/synchronous_inspection.js.map +1 -0
  1136. package/build/node_modules/bluebird/js/release/synchronous_inspection.mjs +105 -0
  1137. package/build/node_modules/bluebird/js/release/synchronous_inspection.mjs.map +1 -0
  1138. package/build/node_modules/bluebird/js/release/thenables.js +92 -0
  1139. package/build/node_modules/bluebird/js/release/thenables.js.map +1 -0
  1140. package/build/node_modules/bluebird/js/release/thenables.mjs +90 -0
  1141. package/build/node_modules/bluebird/js/release/thenables.mjs.map +1 -0
  1142. package/build/node_modules/bluebird/js/release/timers.js +99 -0
  1143. package/build/node_modules/bluebird/js/release/timers.js.map +1 -0
  1144. package/build/node_modules/bluebird/js/release/timers.mjs +97 -0
  1145. package/build/node_modules/bluebird/js/release/timers.mjs.map +1 -0
  1146. package/build/node_modules/bluebird/js/release/using.js +233 -0
  1147. package/build/node_modules/bluebird/js/release/using.js.map +1 -0
  1148. package/build/node_modules/bluebird/js/release/using.mjs +231 -0
  1149. package/build/node_modules/bluebird/js/release/using.mjs.map +1 -0
  1150. package/build/node_modules/bluebird/js/release/util.js +380 -0
  1151. package/build/node_modules/bluebird/js/release/util.js.map +1 -0
  1152. package/build/node_modules/bluebird/js/release/util.mjs +378 -0
  1153. package/build/node_modules/bluebird/js/release/util.mjs.map +1 -0
  1154. package/build/node_modules/bson/index.js +51 -0
  1155. package/build/node_modules/bson/index.js.map +1 -0
  1156. package/build/node_modules/bson/index.mjs +49 -0
  1157. package/build/node_modules/bson/index.mjs.map +1 -0
  1158. package/build/node_modules/bson/lib/bson/binary.js +401 -0
  1159. package/build/node_modules/bson/lib/bson/binary.js.map +1 -0
  1160. package/build/node_modules/bson/lib/bson/binary.mjs +393 -0
  1161. package/build/node_modules/bson/lib/bson/binary.mjs.map +1 -0
  1162. package/build/node_modules/bson/lib/bson/bson.js +422 -0
  1163. package/build/node_modules/bson/lib/bson/bson.js.map +1 -0
  1164. package/build/node_modules/bson/lib/bson/bson.mjs +404 -0
  1165. package/build/node_modules/bson/lib/bson/bson.mjs.map +1 -0
  1166. package/build/node_modules/bson/lib/bson/code.js +33 -0
  1167. package/build/node_modules/bson/lib/bson/code.js.map +1 -0
  1168. package/build/node_modules/bson/lib/bson/code.mjs +29 -0
  1169. package/build/node_modules/bson/lib/bson/code.mjs.map +1 -0
  1170. package/build/node_modules/bson/lib/bson/db_ref.js +41 -0
  1171. package/build/node_modules/bson/lib/bson/db_ref.js.map +1 -0
  1172. package/build/node_modules/bson/lib/bson/db_ref.mjs +37 -0
  1173. package/build/node_modules/bson/lib/bson/db_ref.mjs.map +1 -0
  1174. package/build/node_modules/bson/lib/bson/decimal128.js +826 -0
  1175. package/build/node_modules/bson/lib/bson/decimal128.js.map +1 -0
  1176. package/build/node_modules/bson/lib/bson/decimal128.mjs +822 -0
  1177. package/build/node_modules/bson/lib/bson/decimal128.mjs.map +1 -0
  1178. package/build/node_modules/bson/lib/bson/double.js +42 -0
  1179. package/build/node_modules/bson/lib/bson/double.js.map +1 -0
  1180. package/build/node_modules/bson/lib/bson/double.mjs +38 -0
  1181. package/build/node_modules/bson/lib/bson/double.mjs.map +1 -0
  1182. package/build/node_modules/bson/lib/bson/float_parser.js +138 -0
  1183. package/build/node_modules/bson/lib/bson/float_parser.js.map +1 -0
  1184. package/build/node_modules/bson/lib/bson/float_parser.mjs +133 -0
  1185. package/build/node_modules/bson/lib/bson/float_parser.mjs.map +1 -0
  1186. package/build/node_modules/bson/lib/bson/int_32.js +42 -0
  1187. package/build/node_modules/bson/lib/bson/int_32.js.map +1 -0
  1188. package/build/node_modules/bson/lib/bson/int_32.mjs +38 -0
  1189. package/build/node_modules/bson/lib/bson/int_32.mjs.map +1 -0
  1190. package/build/node_modules/bson/lib/bson/long.js +874 -0
  1191. package/build/node_modules/bson/lib/bson/long.js.map +1 -0
  1192. package/build/node_modules/bson/lib/bson/long.mjs +870 -0
  1193. package/build/node_modules/bson/lib/bson/long.mjs.map +1 -0
  1194. package/build/node_modules/bson/lib/bson/map.js +136 -0
  1195. package/build/node_modules/bson/lib/bson/map.js.map +1 -0
  1196. package/build/node_modules/bson/lib/bson/map.mjs +134 -0
  1197. package/build/node_modules/bson/lib/bson/map.mjs.map +1 -0
  1198. package/build/node_modules/bson/lib/bson/max_key.js +23 -0
  1199. package/build/node_modules/bson/lib/bson/max_key.js.map +1 -0
  1200. package/build/node_modules/bson/lib/bson/max_key.mjs +19 -0
  1201. package/build/node_modules/bson/lib/bson/max_key.mjs.map +1 -0
  1202. package/build/node_modules/bson/lib/bson/min_key.js +23 -0
  1203. package/build/node_modules/bson/lib/bson/min_key.js.map +1 -0
  1204. package/build/node_modules/bson/lib/bson/min_key.mjs +19 -0
  1205. package/build/node_modules/bson/lib/bson/min_key.mjs.map +1 -0
  1206. package/build/node_modules/bson/lib/bson/objectid.js +410 -0
  1207. package/build/node_modules/bson/lib/bson/objectid.js.map +1 -0
  1208. package/build/node_modules/bson/lib/bson/objectid.mjs +401 -0
  1209. package/build/node_modules/bson/lib/bson/objectid.mjs.map +1 -0
  1210. package/build/node_modules/bson/lib/bson/parser/calculate_size.js +271 -0
  1211. package/build/node_modules/bson/lib/bson/parser/calculate_size.js.map +1 -0
  1212. package/build/node_modules/bson/lib/bson/parser/calculate_size.mjs +269 -0
  1213. package/build/node_modules/bson/lib/bson/parser/calculate_size.mjs.map +1 -0
  1214. package/build/node_modules/bson/lib/bson/parser/deserializer.js +798 -0
  1215. package/build/node_modules/bson/lib/bson/parser/deserializer.js.map +1 -0
  1216. package/build/node_modules/bson/lib/bson/parser/deserializer.mjs +796 -0
  1217. package/build/node_modules/bson/lib/bson/parser/deserializer.mjs.map +1 -0
  1218. package/build/node_modules/bson/lib/bson/parser/serializer.js +1200 -0
  1219. package/build/node_modules/bson/lib/bson/parser/serializer.js.map +1 -0
  1220. package/build/node_modules/bson/lib/bson/parser/serializer.mjs +1198 -0
  1221. package/build/node_modules/bson/lib/bson/parser/serializer.mjs.map +1 -0
  1222. package/build/node_modules/bson/lib/bson/parser/utils.js +30 -0
  1223. package/build/node_modules/bson/lib/bson/parser/utils.js.map +1 -0
  1224. package/build/node_modules/bson/lib/bson/parser/utils.mjs +28 -0
  1225. package/build/node_modules/bson/lib/bson/parser/utils.mjs.map +1 -0
  1226. package/build/node_modules/bson/lib/bson/regexp.js +42 -0
  1227. package/build/node_modules/bson/lib/bson/regexp.js.map +1 -0
  1228. package/build/node_modules/bson/lib/bson/regexp.mjs +38 -0
  1229. package/build/node_modules/bson/lib/bson/regexp.mjs.map +1 -0
  1230. package/build/node_modules/bson/lib/bson/symbol.js +65 -0
  1231. package/build/node_modules/bson/lib/bson/symbol.js.map +1 -0
  1232. package/build/node_modules/bson/lib/bson/symbol.mjs +57 -0
  1233. package/build/node_modules/bson/lib/bson/symbol.mjs.map +1 -0
  1234. package/build/node_modules/bson/lib/bson/timestamp.js +863 -0
  1235. package/build/node_modules/bson/lib/bson/timestamp.js.map +1 -0
  1236. package/build/node_modules/bson/lib/bson/timestamp.mjs +859 -0
  1237. package/build/node_modules/bson/lib/bson/timestamp.mjs.map +1 -0
  1238. package/build/node_modules/core-util-is/lib/util.js +147 -0
  1239. package/build/node_modules/core-util-is/lib/util.js.map +1 -0
  1240. package/build/node_modules/core-util-is/lib/util.mjs +129 -0
  1241. package/build/node_modules/core-util-is/lib/util.mjs.map +1 -0
  1242. package/build/node_modules/denque/index.js +446 -0
  1243. package/build/node_modules/denque/index.js.map +1 -0
  1244. package/build/node_modules/denque/index.mjs +444 -0
  1245. package/build/node_modules/denque/index.mjs.map +1 -0
  1246. package/build/node_modules/double-ended-queue/js/deque.js +279 -0
  1247. package/build/node_modules/double-ended-queue/js/deque.js.map +1 -0
  1248. package/build/node_modules/double-ended-queue/js/deque.mjs +277 -0
  1249. package/build/node_modules/double-ended-queue/js/deque.mjs.map +1 -0
  1250. package/build/node_modules/inherits/inherits.js +24 -0
  1251. package/build/node_modules/inherits/inherits.js.map +1 -0
  1252. package/build/node_modules/inherits/inherits.mjs +18 -0
  1253. package/build/node_modules/inherits/inherits.mjs.map +1 -0
  1254. package/build/node_modules/inherits/inherits_browser.js +36 -0
  1255. package/build/node_modules/inherits/inherits_browser.js.map +1 -0
  1256. package/build/node_modules/inherits/inherits_browser.mjs +34 -0
  1257. package/build/node_modules/inherits/inherits_browser.mjs.map +1 -0
  1258. package/build/node_modules/isarray/index.js +10 -0
  1259. package/build/node_modules/isarray/index.js.map +1 -0
  1260. package/build/node_modules/isarray/index.mjs +8 -0
  1261. package/build/node_modules/isarray/index.mjs.map +1 -0
  1262. package/build/node_modules/kareem/index.js +514 -0
  1263. package/build/node_modules/kareem/index.js.map +1 -0
  1264. package/build/node_modules/kareem/index.mjs +512 -0
  1265. package/build/node_modules/kareem/index.mjs.map +1 -0
  1266. package/build/node_modules/memory-pager/index.js +165 -0
  1267. package/build/node_modules/memory-pager/index.js.map +1 -0
  1268. package/build/node_modules/memory-pager/index.mjs +163 -0
  1269. package/build/node_modules/memory-pager/index.mjs.map +1 -0
  1270. package/build/node_modules/mongodb/index.js +93 -0
  1271. package/build/node_modules/mongodb/index.js.map +1 -0
  1272. package/build/node_modules/mongodb/index.mjs +91 -0
  1273. package/build/node_modules/mongodb/index.mjs.map +1 -0
  1274. package/build/node_modules/mongodb/lib/admin.js +307 -0
  1275. package/build/node_modules/mongodb/lib/admin.js.map +1 -0
  1276. package/build/node_modules/mongodb/lib/admin.mjs +305 -0
  1277. package/build/node_modules/mongodb/lib/admin.mjs.map +1 -0
  1278. package/build/node_modules/mongodb/lib/aggregation_cursor.js +376 -0
  1279. package/build/node_modules/mongodb/lib/aggregation_cursor.js.map +1 -0
  1280. package/build/node_modules/mongodb/lib/aggregation_cursor.mjs +374 -0
  1281. package/build/node_modules/mongodb/lib/aggregation_cursor.mjs.map +1 -0
  1282. package/build/node_modules/mongodb/lib/apm.js +41 -0
  1283. package/build/node_modules/mongodb/lib/apm.js.map +1 -0
  1284. package/build/node_modules/mongodb/lib/apm.mjs +35 -0
  1285. package/build/node_modules/mongodb/lib/apm.mjs.map +1 -0
  1286. package/build/node_modules/mongodb/lib/async/async_iterator.js +43 -0
  1287. package/build/node_modules/mongodb/lib/async/async_iterator.js.map +1 -0
  1288. package/build/node_modules/mongodb/lib/async/async_iterator.mjs +39 -0
  1289. package/build/node_modules/mongodb/lib/async/async_iterator.mjs.map +1 -0
  1290. package/build/node_modules/mongodb/lib/bulk/common.js +1381 -0
  1291. package/build/node_modules/mongodb/lib/bulk/common.js.map +1 -0
  1292. package/build/node_modules/mongodb/lib/bulk/common.mjs +1379 -0
  1293. package/build/node_modules/mongodb/lib/bulk/common.mjs.map +1 -0
  1294. package/build/node_modules/mongodb/lib/bulk/ordered.js +119 -0
  1295. package/build/node_modules/mongodb/lib/bulk/ordered.js.map +1 -0
  1296. package/build/node_modules/mongodb/lib/bulk/ordered.mjs +115 -0
  1297. package/build/node_modules/mongodb/lib/bulk/ordered.mjs.map +1 -0
  1298. package/build/node_modules/mongodb/lib/bulk/unordered.js +140 -0
  1299. package/build/node_modules/mongodb/lib/bulk/unordered.js.map +1 -0
  1300. package/build/node_modules/mongodb/lib/bulk/unordered.mjs +136 -0
  1301. package/build/node_modules/mongodb/lib/bulk/unordered.mjs.map +1 -0
  1302. package/build/node_modules/mongodb/lib/change_stream.js +640 -0
  1303. package/build/node_modules/mongodb/lib/change_stream.js.map +1 -0
  1304. package/build/node_modules/mongodb/lib/change_stream.mjs +634 -0
  1305. package/build/node_modules/mongodb/lib/change_stream.mjs.map +1 -0
  1306. package/build/node_modules/mongodb/lib/cmap/connection.js +404 -0
  1307. package/build/node_modules/mongodb/lib/cmap/connection.js.map +1 -0
  1308. package/build/node_modules/mongodb/lib/cmap/connection.mjs +398 -0
  1309. package/build/node_modules/mongodb/lib/cmap/connection.mjs.map +1 -0
  1310. package/build/node_modules/mongodb/lib/cmap/connection_pool.js +608 -0
  1311. package/build/node_modules/mongodb/lib/cmap/connection_pool.js.map +1 -0
  1312. package/build/node_modules/mongodb/lib/cmap/connection_pool.mjs +602 -0
  1313. package/build/node_modules/mongodb/lib/cmap/connection_pool.mjs.map +1 -0
  1314. package/build/node_modules/mongodb/lib/cmap/errors.js +41 -0
  1315. package/build/node_modules/mongodb/lib/cmap/errors.js.map +1 -0
  1316. package/build/node_modules/mongodb/lib/cmap/errors.mjs +39 -0
  1317. package/build/node_modules/mongodb/lib/cmap/errors.mjs.map +1 -0
  1318. package/build/node_modules/mongodb/lib/cmap/events.js +157 -0
  1319. package/build/node_modules/mongodb/lib/cmap/events.js.map +1 -0
  1320. package/build/node_modules/mongodb/lib/cmap/events.mjs +155 -0
  1321. package/build/node_modules/mongodb/lib/cmap/events.mjs.map +1 -0
  1322. package/build/node_modules/mongodb/lib/cmap/message_stream.js +211 -0
  1323. package/build/node_modules/mongodb/lib/cmap/message_stream.js.map +1 -0
  1324. package/build/node_modules/mongodb/lib/cmap/message_stream.mjs +205 -0
  1325. package/build/node_modules/mongodb/lib/cmap/message_stream.mjs.map +1 -0
  1326. package/build/node_modules/mongodb/lib/cmap/stream_description.js +51 -0
  1327. package/build/node_modules/mongodb/lib/cmap/stream_description.js.map +1 -0
  1328. package/build/node_modules/mongodb/lib/cmap/stream_description.mjs +49 -0
  1329. package/build/node_modules/mongodb/lib/cmap/stream_description.mjs.map +1 -0
  1330. package/build/node_modules/mongodb/lib/collection.js +2294 -0
  1331. package/build/node_modules/mongodb/lib/collection.js.map +1 -0
  1332. package/build/node_modules/mongodb/lib/collection.mjs +2288 -0
  1333. package/build/node_modules/mongodb/lib/collection.mjs.map +1 -0
  1334. package/build/node_modules/mongodb/lib/command_cursor.js +276 -0
  1335. package/build/node_modules/mongodb/lib/command_cursor.js.map +1 -0
  1336. package/build/node_modules/mongodb/lib/command_cursor.mjs +274 -0
  1337. package/build/node_modules/mongodb/lib/command_cursor.mjs.map +1 -0
  1338. package/build/node_modules/mongodb/lib/constants.js +13 -0
  1339. package/build/node_modules/mongodb/lib/constants.js.map +1 -0
  1340. package/build/node_modules/mongodb/lib/constants.mjs +11 -0
  1341. package/build/node_modules/mongodb/lib/constants.mjs.map +1 -0
  1342. package/build/node_modules/mongodb/lib/core/auth/auth_provider.js +58 -0
  1343. package/build/node_modules/mongodb/lib/core/auth/auth_provider.js.map +1 -0
  1344. package/build/node_modules/mongodb/lib/core/auth/auth_provider.mjs +56 -0
  1345. package/build/node_modules/mongodb/lib/core/auth/auth_provider.mjs.map +1 -0
  1346. package/build/node_modules/mongodb/lib/core/auth/defaultAuthProviders.js +35 -0
  1347. package/build/node_modules/mongodb/lib/core/auth/defaultAuthProviders.js.map +1 -0
  1348. package/build/node_modules/mongodb/lib/core/auth/defaultAuthProviders.mjs +33 -0
  1349. package/build/node_modules/mongodb/lib/core/auth/defaultAuthProviders.mjs.map +1 -0
  1350. package/build/node_modules/mongodb/lib/core/auth/gssapi.js +162 -0
  1351. package/build/node_modules/mongodb/lib/core/auth/gssapi.js.map +1 -0
  1352. package/build/node_modules/mongodb/lib/core/auth/gssapi.mjs +156 -0
  1353. package/build/node_modules/mongodb/lib/core/auth/gssapi.mjs.map +1 -0
  1354. package/build/node_modules/mongodb/lib/core/auth/mongo_credentials.js +110 -0
  1355. package/build/node_modules/mongodb/lib/core/auth/mongo_credentials.js.map +1 -0
  1356. package/build/node_modules/mongodb/lib/core/auth/mongo_credentials.mjs +108 -0
  1357. package/build/node_modules/mongodb/lib/core/auth/mongo_credentials.mjs.map +1 -0
  1358. package/build/node_modules/mongodb/lib/core/auth/mongocr.js +54 -0
  1359. package/build/node_modules/mongodb/lib/core/auth/mongocr.js.map +1 -0
  1360. package/build/node_modules/mongodb/lib/core/auth/mongocr.mjs +48 -0
  1361. package/build/node_modules/mongodb/lib/core/auth/mongocr.mjs.map +1 -0
  1362. package/build/node_modules/mongodb/lib/core/auth/mongodb_aws.js +275 -0
  1363. package/build/node_modules/mongodb/lib/core/auth/mongodb_aws.js.map +1 -0
  1364. package/build/node_modules/mongodb/lib/core/auth/mongodb_aws.mjs +267 -0
  1365. package/build/node_modules/mongodb/lib/core/auth/mongodb_aws.mjs.map +1 -0
  1366. package/build/node_modules/mongodb/lib/core/auth/plain.js +35 -0
  1367. package/build/node_modules/mongodb/lib/core/auth/plain.js.map +1 -0
  1368. package/build/node_modules/mongodb/lib/core/auth/plain.mjs +33 -0
  1369. package/build/node_modules/mongodb/lib/core/auth/plain.mjs.map +1 -0
  1370. package/build/node_modules/mongodb/lib/core/auth/scram.js +362 -0
  1371. package/build/node_modules/mongodb/lib/core/auth/scram.js.map +1 -0
  1372. package/build/node_modules/mongodb/lib/core/auth/scram.mjs +356 -0
  1373. package/build/node_modules/mongodb/lib/core/auth/scram.mjs.map +1 -0
  1374. package/build/node_modules/mongodb/lib/core/auth/x509.js +41 -0
  1375. package/build/node_modules/mongodb/lib/core/auth/x509.js.map +1 -0
  1376. package/build/node_modules/mongodb/lib/core/auth/x509.mjs +39 -0
  1377. package/build/node_modules/mongodb/lib/core/auth/x509.mjs.map +1 -0
  1378. package/build/node_modules/mongodb/lib/core/connection/apm.js +259 -0
  1379. package/build/node_modules/mongodb/lib/core/connection/apm.js.map +1 -0
  1380. package/build/node_modules/mongodb/lib/core/connection/apm.mjs +257 -0
  1381. package/build/node_modules/mongodb/lib/core/connection/apm.mjs.map +1 -0
  1382. package/build/node_modules/mongodb/lib/core/connection/command_result.js +39 -0
  1383. package/build/node_modules/mongodb/lib/core/connection/command_result.js.map +1 -0
  1384. package/build/node_modules/mongodb/lib/core/connection/command_result.mjs +37 -0
  1385. package/build/node_modules/mongodb/lib/core/connection/command_result.mjs.map +1 -0
  1386. package/build/node_modules/mongodb/lib/core/connection/commands.js +514 -0
  1387. package/build/node_modules/mongodb/lib/core/connection/commands.js.map +1 -0
  1388. package/build/node_modules/mongodb/lib/core/connection/commands.mjs +512 -0
  1389. package/build/node_modules/mongodb/lib/core/connection/commands.mjs.map +1 -0
  1390. package/build/node_modules/mongodb/lib/core/connection/connect.js +367 -0
  1391. package/build/node_modules/mongodb/lib/core/connection/connect.js.map +1 -0
  1392. package/build/node_modules/mongodb/lib/core/connection/connect.mjs +360 -0
  1393. package/build/node_modules/mongodb/lib/core/connection/connect.mjs.map +1 -0
  1394. package/build/node_modules/mongodb/lib/core/connection/connection.js +731 -0
  1395. package/build/node_modules/mongodb/lib/core/connection/connection.js.map +1 -0
  1396. package/build/node_modules/mongodb/lib/core/connection/connection.mjs +724 -0
  1397. package/build/node_modules/mongodb/lib/core/connection/connection.mjs.map +1 -0
  1398. package/build/node_modules/mongodb/lib/core/connection/logger.js +262 -0
  1399. package/build/node_modules/mongodb/lib/core/connection/logger.js.map +1 -0
  1400. package/build/node_modules/mongodb/lib/core/connection/logger.mjs +256 -0
  1401. package/build/node_modules/mongodb/lib/core/connection/logger.mjs.map +1 -0
  1402. package/build/node_modules/mongodb/lib/core/connection/msg.js +232 -0
  1403. package/build/node_modules/mongodb/lib/core/connection/msg.js.map +1 -0
  1404. package/build/node_modules/mongodb/lib/core/connection/msg.mjs +230 -0
  1405. package/build/node_modules/mongodb/lib/core/connection/msg.mjs.map +1 -0
  1406. package/build/node_modules/mongodb/lib/core/connection/pool.js +1304 -0
  1407. package/build/node_modules/mongodb/lib/core/connection/pool.js.map +1 -0
  1408. package/build/node_modules/mongodb/lib/core/connection/pool.mjs +1297 -0
  1409. package/build/node_modules/mongodb/lib/core/connection/pool.mjs.map +1 -0
  1410. package/build/node_modules/mongodb/lib/core/connection/utils.js +59 -0
  1411. package/build/node_modules/mongodb/lib/core/connection/utils.js.map +1 -0
  1412. package/build/node_modules/mongodb/lib/core/connection/utils.mjs +57 -0
  1413. package/build/node_modules/mongodb/lib/core/connection/utils.mjs.map +1 -0
  1414. package/build/node_modules/mongodb/lib/core/cursor.js +891 -0
  1415. package/build/node_modules/mongodb/lib/core/cursor.js.map +1 -0
  1416. package/build/node_modules/mongodb/lib/core/cursor.mjs +885 -0
  1417. package/build/node_modules/mongodb/lib/core/cursor.mjs.map +1 -0
  1418. package/build/node_modules/mongodb/lib/core/error.js +354 -0
  1419. package/build/node_modules/mongodb/lib/core/error.js.map +1 -0
  1420. package/build/node_modules/mongodb/lib/core/error.mjs +352 -0
  1421. package/build/node_modules/mongodb/lib/core/error.mjs.map +1 -0
  1422. package/build/node_modules/mongodb/lib/core/index.js +77 -0
  1423. package/build/node_modules/mongodb/lib/core/index.js.map +1 -0
  1424. package/build/node_modules/mongodb/lib/core/index.mjs +75 -0
  1425. package/build/node_modules/mongodb/lib/core/index.mjs.map +1 -0
  1426. package/build/node_modules/mongodb/lib/core/sdam/common.js +70 -0
  1427. package/build/node_modules/mongodb/lib/core/sdam/common.js.map +1 -0
  1428. package/build/node_modules/mongodb/lib/core/sdam/common.mjs +68 -0
  1429. package/build/node_modules/mongodb/lib/core/sdam/common.mjs.map +1 -0
  1430. package/build/node_modules/mongodb/lib/core/sdam/events.js +127 -0
  1431. package/build/node_modules/mongodb/lib/core/sdam/events.js.map +1 -0
  1432. package/build/node_modules/mongodb/lib/core/sdam/events.mjs +125 -0
  1433. package/build/node_modules/mongodb/lib/core/sdam/events.mjs.map +1 -0
  1434. package/build/node_modules/mongodb/lib/core/sdam/monitor.js +430 -0
  1435. package/build/node_modules/mongodb/lib/core/sdam/monitor.js.map +1 -0
  1436. package/build/node_modules/mongodb/lib/core/sdam/monitor.mjs +424 -0
  1437. package/build/node_modules/mongodb/lib/core/sdam/monitor.mjs.map +1 -0
  1438. package/build/node_modules/mongodb/lib/core/sdam/server.js +584 -0
  1439. package/build/node_modules/mongodb/lib/core/sdam/server.js.map +1 -0
  1440. package/build/node_modules/mongodb/lib/core/sdam/server.mjs +578 -0
  1441. package/build/node_modules/mongodb/lib/core/sdam/server.mjs.map +1 -0
  1442. package/build/node_modules/mongodb/lib/core/sdam/server_description.js +234 -0
  1443. package/build/node_modules/mongodb/lib/core/sdam/server_description.js.map +1 -0
  1444. package/build/node_modules/mongodb/lib/core/sdam/server_description.mjs +232 -0
  1445. package/build/node_modules/mongodb/lib/core/sdam/server_description.mjs.map +1 -0
  1446. package/build/node_modules/mongodb/lib/core/sdam/server_selection.js +246 -0
  1447. package/build/node_modules/mongodb/lib/core/sdam/server_selection.js.map +1 -0
  1448. package/build/node_modules/mongodb/lib/core/sdam/server_selection.mjs +244 -0
  1449. package/build/node_modules/mongodb/lib/core/sdam/server_selection.mjs.map +1 -0
  1450. package/build/node_modules/mongodb/lib/core/sdam/srv_polling.js +155 -0
  1451. package/build/node_modules/mongodb/lib/core/sdam/srv_polling.js.map +1 -0
  1452. package/build/node_modules/mongodb/lib/core/sdam/srv_polling.mjs +145 -0
  1453. package/build/node_modules/mongodb/lib/core/sdam/srv_polling.mjs.map +1 -0
  1454. package/build/node_modules/mongodb/lib/core/sdam/topology.js +1170 -0
  1455. package/build/node_modules/mongodb/lib/core/sdam/topology.js.map +1 -0
  1456. package/build/node_modules/mongodb/lib/core/sdam/topology.mjs +1163 -0
  1457. package/build/node_modules/mongodb/lib/core/sdam/topology.mjs.map +1 -0
  1458. package/build/node_modules/mongodb/lib/core/sdam/topology_description.js +468 -0
  1459. package/build/node_modules/mongodb/lib/core/sdam/topology_description.js.map +1 -0
  1460. package/build/node_modules/mongodb/lib/core/sdam/topology_description.mjs +466 -0
  1461. package/build/node_modules/mongodb/lib/core/sdam/topology_description.mjs.map +1 -0
  1462. package/build/node_modules/mongodb/lib/core/sessions.js +797 -0
  1463. package/build/node_modules/mongodb/lib/core/sessions.js.map +1 -0
  1464. package/build/node_modules/mongodb/lib/core/sessions.mjs +791 -0
  1465. package/build/node_modules/mongodb/lib/core/sessions.mjs.map +1 -0
  1466. package/build/node_modules/mongodb/lib/core/topologies/mongos.js +1415 -0
  1467. package/build/node_modules/mongodb/lib/core/topologies/mongos.js.map +1 -0
  1468. package/build/node_modules/mongodb/lib/core/topologies/mongos.mjs +1408 -0
  1469. package/build/node_modules/mongodb/lib/core/topologies/mongos.mjs.map +1 -0
  1470. package/build/node_modules/mongodb/lib/core/topologies/read_preference.js +273 -0
  1471. package/build/node_modules/mongodb/lib/core/topologies/read_preference.js.map +1 -0
  1472. package/build/node_modules/mongodb/lib/core/topologies/read_preference.mjs +271 -0
  1473. package/build/node_modules/mongodb/lib/core/topologies/read_preference.mjs.map +1 -0
  1474. package/build/node_modules/mongodb/lib/core/topologies/replset.js +1586 -0
  1475. package/build/node_modules/mongodb/lib/core/topologies/replset.js.map +1 -0
  1476. package/build/node_modules/mongodb/lib/core/topologies/replset.mjs +1579 -0
  1477. package/build/node_modules/mongodb/lib/core/topologies/replset.mjs.map +1 -0
  1478. package/build/node_modules/mongodb/lib/core/topologies/replset_state.js +1135 -0
  1479. package/build/node_modules/mongodb/lib/core/topologies/replset_state.js.map +1 -0
  1480. package/build/node_modules/mongodb/lib/core/topologies/replset_state.mjs +1128 -0
  1481. package/build/node_modules/mongodb/lib/core/topologies/replset_state.mjs.map +1 -0
  1482. package/build/node_modules/mongodb/lib/core/topologies/server.js +1006 -0
  1483. package/build/node_modules/mongodb/lib/core/topologies/server.js.map +1 -0
  1484. package/build/node_modules/mongodb/lib/core/topologies/server.mjs +999 -0
  1485. package/build/node_modules/mongodb/lib/core/topologies/server.mjs.map +1 -0
  1486. package/build/node_modules/mongodb/lib/core/topologies/shared.js +464 -0
  1487. package/build/node_modules/mongodb/lib/core/topologies/shared.js.map +1 -0
  1488. package/build/node_modules/mongodb/lib/core/topologies/shared.mjs +462 -0
  1489. package/build/node_modules/mongodb/lib/core/topologies/shared.mjs.map +1 -0
  1490. package/build/node_modules/mongodb/lib/core/transactions.js +188 -0
  1491. package/build/node_modules/mongodb/lib/core/transactions.js.map +1 -0
  1492. package/build/node_modules/mongodb/lib/core/transactions.mjs +186 -0
  1493. package/build/node_modules/mongodb/lib/core/transactions.mjs.map +1 -0
  1494. package/build/node_modules/mongodb/lib/core/uri_parser.js +745 -0
  1495. package/build/node_modules/mongodb/lib/core/uri_parser.js.map +1 -0
  1496. package/build/node_modules/mongodb/lib/core/uri_parser.mjs +737 -0
  1497. package/build/node_modules/mongodb/lib/core/uri_parser.mjs.map +1 -0
  1498. package/build/node_modules/mongodb/lib/core/utils.js +307 -0
  1499. package/build/node_modules/mongodb/lib/core/utils.js.map +1 -0
  1500. package/build/node_modules/mongodb/lib/core/utils.mjs +300 -0
  1501. package/build/node_modules/mongodb/lib/core/utils.mjs.map +1 -0
  1502. package/build/node_modules/mongodb/lib/core/wireprotocol/command.js +193 -0
  1503. package/build/node_modules/mongodb/lib/core/wireprotocol/command.js.map +1 -0
  1504. package/build/node_modules/mongodb/lib/core/wireprotocol/command.mjs +191 -0
  1505. package/build/node_modules/mongodb/lib/core/wireprotocol/command.mjs.map +1 -0
  1506. package/build/node_modules/mongodb/lib/core/wireprotocol/compression.js +83 -0
  1507. package/build/node_modules/mongodb/lib/core/wireprotocol/compression.js.map +1 -0
  1508. package/build/node_modules/mongodb/lib/core/wireprotocol/compression.mjs +77 -0
  1509. package/build/node_modules/mongodb/lib/core/wireprotocol/compression.mjs.map +1 -0
  1510. package/build/node_modules/mongodb/lib/core/wireprotocol/constants.js +16 -0
  1511. package/build/node_modules/mongodb/lib/core/wireprotocol/constants.js.map +1 -0
  1512. package/build/node_modules/mongodb/lib/core/wireprotocol/constants.mjs +14 -0
  1513. package/build/node_modules/mongodb/lib/core/wireprotocol/constants.mjs.map +1 -0
  1514. package/build/node_modules/mongodb/lib/core/wireprotocol/get_more.js +105 -0
  1515. package/build/node_modules/mongodb/lib/core/wireprotocol/get_more.js.map +1 -0
  1516. package/build/node_modules/mongodb/lib/core/wireprotocol/get_more.mjs +103 -0
  1517. package/build/node_modules/mongodb/lib/core/wireprotocol/get_more.mjs.map +1 -0
  1518. package/build/node_modules/mongodb/lib/core/wireprotocol/index.js +26 -0
  1519. package/build/node_modules/mongodb/lib/core/wireprotocol/index.js.map +1 -0
  1520. package/build/node_modules/mongodb/lib/core/wireprotocol/index.mjs +24 -0
  1521. package/build/node_modules/mongodb/lib/core/wireprotocol/index.mjs.map +1 -0
  1522. package/build/node_modules/mongodb/lib/core/wireprotocol/kill_cursors.js +80 -0
  1523. package/build/node_modules/mongodb/lib/core/wireprotocol/kill_cursors.js.map +1 -0
  1524. package/build/node_modules/mongodb/lib/core/wireprotocol/kill_cursors.mjs +78 -0
  1525. package/build/node_modules/mongodb/lib/core/wireprotocol/kill_cursors.mjs.map +1 -0
  1526. package/build/node_modules/mongodb/lib/core/wireprotocol/query.js +247 -0
  1527. package/build/node_modules/mongodb/lib/core/wireprotocol/query.js.map +1 -0
  1528. package/build/node_modules/mongodb/lib/core/wireprotocol/query.mjs +245 -0
  1529. package/build/node_modules/mongodb/lib/core/wireprotocol/query.mjs.map +1 -0
  1530. package/build/node_modules/mongodb/lib/core/wireprotocol/shared.js +122 -0
  1531. package/build/node_modules/mongodb/lib/core/wireprotocol/shared.js.map +1 -0
  1532. package/build/node_modules/mongodb/lib/core/wireprotocol/shared.mjs +120 -0
  1533. package/build/node_modules/mongodb/lib/core/wireprotocol/shared.mjs.map +1 -0
  1534. package/build/node_modules/mongodb/lib/core/wireprotocol/write_command.js +68 -0
  1535. package/build/node_modules/mongodb/lib/core/wireprotocol/write_command.js.map +1 -0
  1536. package/build/node_modules/mongodb/lib/core/wireprotocol/write_command.mjs +66 -0
  1537. package/build/node_modules/mongodb/lib/core/wireprotocol/write_command.mjs.map +1 -0
  1538. package/build/node_modules/mongodb/lib/cursor.js +1156 -0
  1539. package/build/node_modules/mongodb/lib/cursor.js.map +1 -0
  1540. package/build/node_modules/mongodb/lib/cursor.mjs +1149 -0
  1541. package/build/node_modules/mongodb/lib/cursor.mjs.map +1 -0
  1542. package/build/node_modules/mongodb/lib/db.js +1092 -0
  1543. package/build/node_modules/mongodb/lib/db.js.map +1 -0
  1544. package/build/node_modules/mongodb/lib/db.mjs +1085 -0
  1545. package/build/node_modules/mongodb/lib/db.mjs.map +1 -0
  1546. package/build/node_modules/mongodb/lib/dynamic_loaders.js +39 -0
  1547. package/build/node_modules/mongodb/lib/dynamic_loaders.js.map +1 -0
  1548. package/build/node_modules/mongodb/lib/dynamic_loaders.mjs +37 -0
  1549. package/build/node_modules/mongodb/lib/dynamic_loaders.mjs.map +1 -0
  1550. package/build/node_modules/mongodb/lib/encrypter.js +176 -0
  1551. package/build/node_modules/mongodb/lib/encrypter.js.map +1 -0
  1552. package/build/node_modules/mongodb/lib/encrypter.mjs +170 -0
  1553. package/build/node_modules/mongodb/lib/encrypter.mjs.map +1 -0
  1554. package/build/node_modules/mongodb/lib/error.js +48 -0
  1555. package/build/node_modules/mongodb/lib/error.js.map +1 -0
  1556. package/build/node_modules/mongodb/lib/error.mjs +46 -0
  1557. package/build/node_modules/mongodb/lib/error.mjs.map +1 -0
  1558. package/build/node_modules/mongodb/lib/explain.js +60 -0
  1559. package/build/node_modules/mongodb/lib/explain.js.map +1 -0
  1560. package/build/node_modules/mongodb/lib/explain.mjs +58 -0
  1561. package/build/node_modules/mongodb/lib/explain.mjs.map +1 -0
  1562. package/build/node_modules/mongodb/lib/gridfs/chunk.js +242 -0
  1563. package/build/node_modules/mongodb/lib/gridfs/chunk.js.map +1 -0
  1564. package/build/node_modules/mongodb/lib/gridfs/chunk.mjs +240 -0
  1565. package/build/node_modules/mongodb/lib/gridfs/chunk.mjs.map +1 -0
  1566. package/build/node_modules/mongodb/lib/gridfs/grid_store.js +1940 -0
  1567. package/build/node_modules/mongodb/lib/gridfs/grid_store.js.map +1 -0
  1568. package/build/node_modules/mongodb/lib/gridfs/grid_store.mjs +1932 -0
  1569. package/build/node_modules/mongodb/lib/gridfs/grid_store.mjs.map +1 -0
  1570. package/build/node_modules/mongodb/lib/gridfs-stream/download.js +441 -0
  1571. package/build/node_modules/mongodb/lib/gridfs-stream/download.js.map +1 -0
  1572. package/build/node_modules/mongodb/lib/gridfs-stream/download.mjs +434 -0
  1573. package/build/node_modules/mongodb/lib/gridfs-stream/download.mjs.map +1 -0
  1574. package/build/node_modules/mongodb/lib/gridfs-stream/index.js +366 -0
  1575. package/build/node_modules/mongodb/lib/gridfs-stream/index.js.map +1 -0
  1576. package/build/node_modules/mongodb/lib/gridfs-stream/index.mjs +359 -0
  1577. package/build/node_modules/mongodb/lib/gridfs-stream/index.mjs.map +1 -0
  1578. package/build/node_modules/mongodb/lib/gridfs-stream/upload.js +552 -0
  1579. package/build/node_modules/mongodb/lib/gridfs-stream/upload.js.map +1 -0
  1580. package/build/node_modules/mongodb/lib/gridfs-stream/upload.mjs +544 -0
  1581. package/build/node_modules/mongodb/lib/gridfs-stream/upload.mjs.map +1 -0
  1582. package/build/node_modules/mongodb/lib/mongo_client.js +514 -0
  1583. package/build/node_modules/mongodb/lib/mongo_client.js.map +1 -0
  1584. package/build/node_modules/mongodb/lib/mongo_client.mjs +507 -0
  1585. package/build/node_modules/mongodb/lib/mongo_client.mjs.map +1 -0
  1586. package/build/node_modules/mongodb/lib/operations/add_user.js +111 -0
  1587. package/build/node_modules/mongodb/lib/operations/add_user.js.map +1 -0
  1588. package/build/node_modules/mongodb/lib/operations/add_user.mjs +105 -0
  1589. package/build/node_modules/mongodb/lib/operations/add_user.mjs.map +1 -0
  1590. package/build/node_modules/mongodb/lib/operations/aggregate.js +111 -0
  1591. package/build/node_modules/mongodb/lib/operations/aggregate.js.map +1 -0
  1592. package/build/node_modules/mongodb/lib/operations/aggregate.mjs +109 -0
  1593. package/build/node_modules/mongodb/lib/operations/aggregate.mjs.map +1 -0
  1594. package/build/node_modules/mongodb/lib/operations/bulk_write.js +103 -0
  1595. package/build/node_modules/mongodb/lib/operations/bulk_write.js.map +1 -0
  1596. package/build/node_modules/mongodb/lib/operations/bulk_write.mjs +101 -0
  1597. package/build/node_modules/mongodb/lib/operations/bulk_write.mjs.map +1 -0
  1598. package/build/node_modules/mongodb/lib/operations/collection_ops.js +361 -0
  1599. package/build/node_modules/mongodb/lib/operations/collection_ops.js.map +1 -0
  1600. package/build/node_modules/mongodb/lib/operations/collection_ops.mjs +359 -0
  1601. package/build/node_modules/mongodb/lib/operations/collection_ops.mjs.map +1 -0
  1602. package/build/node_modules/mongodb/lib/operations/collections.js +62 -0
  1603. package/build/node_modules/mongodb/lib/operations/collections.js.map +1 -0
  1604. package/build/node_modules/mongodb/lib/operations/collections.mjs +60 -0
  1605. package/build/node_modules/mongodb/lib/operations/collections.mjs.map +1 -0
  1606. package/build/node_modules/mongodb/lib/operations/command.js +126 -0
  1607. package/build/node_modules/mongodb/lib/operations/command.js.map +1 -0
  1608. package/build/node_modules/mongodb/lib/operations/command.mjs +124 -0
  1609. package/build/node_modules/mongodb/lib/operations/command.mjs.map +1 -0
  1610. package/build/node_modules/mongodb/lib/operations/command_v2.js +131 -0
  1611. package/build/node_modules/mongodb/lib/operations/command_v2.js.map +1 -0
  1612. package/build/node_modules/mongodb/lib/operations/command_v2.mjs +129 -0
  1613. package/build/node_modules/mongodb/lib/operations/command_v2.mjs.map +1 -0
  1614. package/build/node_modules/mongodb/lib/operations/common_functions.js +408 -0
  1615. package/build/node_modules/mongodb/lib/operations/common_functions.js.map +1 -0
  1616. package/build/node_modules/mongodb/lib/operations/common_functions.mjs +406 -0
  1617. package/build/node_modules/mongodb/lib/operations/common_functions.mjs.map +1 -0
  1618. package/build/node_modules/mongodb/lib/operations/connect.js +805 -0
  1619. package/build/node_modules/mongodb/lib/operations/connect.js.map +1 -0
  1620. package/build/node_modules/mongodb/lib/operations/connect.mjs +798 -0
  1621. package/build/node_modules/mongodb/lib/operations/connect.mjs.map +1 -0
  1622. package/build/node_modules/mongodb/lib/operations/count.js +74 -0
  1623. package/build/node_modules/mongodb/lib/operations/count.js.map +1 -0
  1624. package/build/node_modules/mongodb/lib/operations/count.mjs +72 -0
  1625. package/build/node_modules/mongodb/lib/operations/count.mjs.map +1 -0
  1626. package/build/node_modules/mongodb/lib/operations/count_documents.js +44 -0
  1627. package/build/node_modules/mongodb/lib/operations/count_documents.js.map +1 -0
  1628. package/build/node_modules/mongodb/lib/operations/count_documents.mjs +42 -0
  1629. package/build/node_modules/mongodb/lib/operations/count_documents.mjs.map +1 -0
  1630. package/build/node_modules/mongodb/lib/operations/create_collection.js +111 -0
  1631. package/build/node_modules/mongodb/lib/operations/create_collection.js.map +1 -0
  1632. package/build/node_modules/mongodb/lib/operations/create_collection.mjs +109 -0
  1633. package/build/node_modules/mongodb/lib/operations/create_collection.mjs.map +1 -0
  1634. package/build/node_modules/mongodb/lib/operations/create_indexes.js +146 -0
  1635. package/build/node_modules/mongodb/lib/operations/create_indexes.js.map +1 -0
  1636. package/build/node_modules/mongodb/lib/operations/create_indexes.mjs +144 -0
  1637. package/build/node_modules/mongodb/lib/operations/create_indexes.mjs.map +1 -0
  1638. package/build/node_modules/mongodb/lib/operations/cursor_ops.js +175 -0
  1639. package/build/node_modules/mongodb/lib/operations/cursor_ops.js.map +1 -0
  1640. package/build/node_modules/mongodb/lib/operations/cursor_ops.mjs +173 -0
  1641. package/build/node_modules/mongodb/lib/operations/cursor_ops.mjs.map +1 -0
  1642. package/build/node_modules/mongodb/lib/operations/db_ops.js +474 -0
  1643. package/build/node_modules/mongodb/lib/operations/db_ops.js.map +1 -0
  1644. package/build/node_modules/mongodb/lib/operations/db_ops.mjs +472 -0
  1645. package/build/node_modules/mongodb/lib/operations/db_ops.mjs.map +1 -0
  1646. package/build/node_modules/mongodb/lib/operations/delete_many.js +44 -0
  1647. package/build/node_modules/mongodb/lib/operations/delete_many.js.map +1 -0
  1648. package/build/node_modules/mongodb/lib/operations/delete_many.mjs +42 -0
  1649. package/build/node_modules/mongodb/lib/operations/delete_many.mjs.map +1 -0
  1650. package/build/node_modules/mongodb/lib/operations/delete_one.js +44 -0
  1651. package/build/node_modules/mongodb/lib/operations/delete_one.js.map +1 -0
  1652. package/build/node_modules/mongodb/lib/operations/delete_one.mjs +42 -0
  1653. package/build/node_modules/mongodb/lib/operations/delete_one.mjs.map +1 -0
  1654. package/build/node_modules/mongodb/lib/operations/distinct.js +102 -0
  1655. package/build/node_modules/mongodb/lib/operations/distinct.js.map +1 -0
  1656. package/build/node_modules/mongodb/lib/operations/distinct.mjs +100 -0
  1657. package/build/node_modules/mongodb/lib/operations/distinct.mjs.map +1 -0
  1658. package/build/node_modules/mongodb/lib/operations/drop.js +60 -0
  1659. package/build/node_modules/mongodb/lib/operations/drop.js.map +1 -0
  1660. package/build/node_modules/mongodb/lib/operations/drop.mjs +58 -0
  1661. package/build/node_modules/mongodb/lib/operations/drop.mjs.map +1 -0
  1662. package/build/node_modules/mongodb/lib/operations/drop_index.js +49 -0
  1663. package/build/node_modules/mongodb/lib/operations/drop_index.js.map +1 -0
  1664. package/build/node_modules/mongodb/lib/operations/drop_index.mjs +47 -0
  1665. package/build/node_modules/mongodb/lib/operations/drop_index.mjs.map +1 -0
  1666. package/build/node_modules/mongodb/lib/operations/drop_indexes.js +30 -0
  1667. package/build/node_modules/mongodb/lib/operations/drop_indexes.js.map +1 -0
  1668. package/build/node_modules/mongodb/lib/operations/drop_indexes.mjs +28 -0
  1669. package/build/node_modules/mongodb/lib/operations/drop_indexes.mjs.map +1 -0
  1670. package/build/node_modules/mongodb/lib/operations/estimated_document_count.js +64 -0
  1671. package/build/node_modules/mongodb/lib/operations/estimated_document_count.js.map +1 -0
  1672. package/build/node_modules/mongodb/lib/operations/estimated_document_count.mjs +62 -0
  1673. package/build/node_modules/mongodb/lib/operations/estimated_document_count.mjs.map +1 -0
  1674. package/build/node_modules/mongodb/lib/operations/execute_db_admin_command.js +41 -0
  1675. package/build/node_modules/mongodb/lib/operations/execute_db_admin_command.js.map +1 -0
  1676. package/build/node_modules/mongodb/lib/operations/execute_db_admin_command.mjs +39 -0
  1677. package/build/node_modules/mongodb/lib/operations/execute_db_admin_command.mjs.map +1 -0
  1678. package/build/node_modules/mongodb/lib/operations/execute_operation.js +173 -0
  1679. package/build/node_modules/mongodb/lib/operations/execute_operation.js.map +1 -0
  1680. package/build/node_modules/mongodb/lib/operations/execute_operation.mjs +171 -0
  1681. package/build/node_modules/mongodb/lib/operations/execute_operation.mjs.map +1 -0
  1682. package/build/node_modules/mongodb/lib/operations/find.js +57 -0
  1683. package/build/node_modules/mongodb/lib/operations/find.js.map +1 -0
  1684. package/build/node_modules/mongodb/lib/operations/find.mjs +55 -0
  1685. package/build/node_modules/mongodb/lib/operations/find.mjs.map +1 -0
  1686. package/build/node_modules/mongodb/lib/operations/find_and_modify.js +138 -0
  1687. package/build/node_modules/mongodb/lib/operations/find_and_modify.js.map +1 -0
  1688. package/build/node_modules/mongodb/lib/operations/find_and_modify.mjs +136 -0
  1689. package/build/node_modules/mongodb/lib/operations/find_and_modify.mjs.map +1 -0
  1690. package/build/node_modules/mongodb/lib/operations/find_one.js +47 -0
  1691. package/build/node_modules/mongodb/lib/operations/find_one.js.map +1 -0
  1692. package/build/node_modules/mongodb/lib/operations/find_one.mjs +45 -0
  1693. package/build/node_modules/mongodb/lib/operations/find_one.mjs.map +1 -0
  1694. package/build/node_modules/mongodb/lib/operations/find_one_and_delete.js +24 -0
  1695. package/build/node_modules/mongodb/lib/operations/find_one_and_delete.js.map +1 -0
  1696. package/build/node_modules/mongodb/lib/operations/find_one_and_delete.mjs +22 -0
  1697. package/build/node_modules/mongodb/lib/operations/find_one_and_delete.mjs.map +1 -0
  1698. package/build/node_modules/mongodb/lib/operations/find_one_and_replace.js +44 -0
  1699. package/build/node_modules/mongodb/lib/operations/find_one_and_replace.js.map +1 -0
  1700. package/build/node_modules/mongodb/lib/operations/find_one_and_replace.mjs +42 -0
  1701. package/build/node_modules/mongodb/lib/operations/find_one_and_replace.mjs.map +1 -0
  1702. package/build/node_modules/mongodb/lib/operations/find_one_and_update.js +44 -0
  1703. package/build/node_modules/mongodb/lib/operations/find_one_and_update.js.map +1 -0
  1704. package/build/node_modules/mongodb/lib/operations/find_one_and_update.mjs +42 -0
  1705. package/build/node_modules/mongodb/lib/operations/find_one_and_update.mjs.map +1 -0
  1706. package/build/node_modules/mongodb/lib/operations/geo_haystack_search.js +87 -0
  1707. package/build/node_modules/mongodb/lib/operations/geo_haystack_search.js.map +1 -0
  1708. package/build/node_modules/mongodb/lib/operations/geo_haystack_search.mjs +85 -0
  1709. package/build/node_modules/mongodb/lib/operations/geo_haystack_search.mjs.map +1 -0
  1710. package/build/node_modules/mongodb/lib/operations/index_exists.js +46 -0
  1711. package/build/node_modules/mongodb/lib/operations/index_exists.js.map +1 -0
  1712. package/build/node_modules/mongodb/lib/operations/index_exists.mjs +44 -0
  1713. package/build/node_modules/mongodb/lib/operations/index_exists.mjs.map +1 -0
  1714. package/build/node_modules/mongodb/lib/operations/index_information.js +29 -0
  1715. package/build/node_modules/mongodb/lib/operations/index_information.js.map +1 -0
  1716. package/build/node_modules/mongodb/lib/operations/index_information.mjs +27 -0
  1717. package/build/node_modules/mongodb/lib/operations/index_information.mjs.map +1 -0
  1718. package/build/node_modules/mongodb/lib/operations/indexes.js +28 -0
  1719. package/build/node_modules/mongodb/lib/operations/indexes.js.map +1 -0
  1720. package/build/node_modules/mongodb/lib/operations/indexes.mjs +26 -0
  1721. package/build/node_modules/mongodb/lib/operations/indexes.mjs.map +1 -0
  1722. package/build/node_modules/mongodb/lib/operations/insert_many.js +67 -0
  1723. package/build/node_modules/mongodb/lib/operations/insert_many.js.map +1 -0
  1724. package/build/node_modules/mongodb/lib/operations/insert_many.mjs +65 -0
  1725. package/build/node_modules/mongodb/lib/operations/insert_many.mjs.map +1 -0
  1726. package/build/node_modules/mongodb/lib/operations/insert_one.js +46 -0
  1727. package/build/node_modules/mongodb/lib/operations/insert_one.js.map +1 -0
  1728. package/build/node_modules/mongodb/lib/operations/insert_one.mjs +44 -0
  1729. package/build/node_modules/mongodb/lib/operations/insert_one.mjs.map +1 -0
  1730. package/build/node_modules/mongodb/lib/operations/is_capped.js +24 -0
  1731. package/build/node_modules/mongodb/lib/operations/is_capped.js.map +1 -0
  1732. package/build/node_modules/mongodb/lib/operations/is_capped.mjs +22 -0
  1733. package/build/node_modules/mongodb/lib/operations/is_capped.mjs.map +1 -0
  1734. package/build/node_modules/mongodb/lib/operations/list_collections.js +113 -0
  1735. package/build/node_modules/mongodb/lib/operations/list_collections.js.map +1 -0
  1736. package/build/node_modules/mongodb/lib/operations/list_collections.mjs +111 -0
  1737. package/build/node_modules/mongodb/lib/operations/list_collections.mjs.map +1 -0
  1738. package/build/node_modules/mongodb/lib/operations/list_databases.js +44 -0
  1739. package/build/node_modules/mongodb/lib/operations/list_databases.js.map +1 -0
  1740. package/build/node_modules/mongodb/lib/operations/list_databases.mjs +42 -0
  1741. package/build/node_modules/mongodb/lib/operations/list_databases.mjs.map +1 -0
  1742. package/build/node_modules/mongodb/lib/operations/list_indexes.js +48 -0
  1743. package/build/node_modules/mongodb/lib/operations/list_indexes.js.map +1 -0
  1744. package/build/node_modules/mongodb/lib/operations/list_indexes.mjs +46 -0
  1745. package/build/node_modules/mongodb/lib/operations/list_indexes.mjs.map +1 -0
  1746. package/build/node_modules/mongodb/lib/operations/map_reduce.js +220 -0
  1747. package/build/node_modules/mongodb/lib/operations/map_reduce.js.map +1 -0
  1748. package/build/node_modules/mongodb/lib/operations/map_reduce.mjs +218 -0
  1749. package/build/node_modules/mongodb/lib/operations/map_reduce.mjs.map +1 -0
  1750. package/build/node_modules/mongodb/lib/operations/operation.js +82 -0
  1751. package/build/node_modules/mongodb/lib/operations/operation.js.map +1 -0
  1752. package/build/node_modules/mongodb/lib/operations/operation.mjs +80 -0
  1753. package/build/node_modules/mongodb/lib/operations/operation.mjs.map +1 -0
  1754. package/build/node_modules/mongodb/lib/operations/options_operation.js +39 -0
  1755. package/build/node_modules/mongodb/lib/operations/options_operation.js.map +1 -0
  1756. package/build/node_modules/mongodb/lib/operations/options_operation.mjs +37 -0
  1757. package/build/node_modules/mongodb/lib/operations/options_operation.mjs.map +1 -0
  1758. package/build/node_modules/mongodb/lib/operations/profiling_level.js +34 -0
  1759. package/build/node_modules/mongodb/lib/operations/profiling_level.js.map +1 -0
  1760. package/build/node_modules/mongodb/lib/operations/profiling_level.mjs +32 -0
  1761. package/build/node_modules/mongodb/lib/operations/profiling_level.mjs.map +1 -0
  1762. package/build/node_modules/mongodb/lib/operations/re_index.js +41 -0
  1763. package/build/node_modules/mongodb/lib/operations/re_index.js.map +1 -0
  1764. package/build/node_modules/mongodb/lib/operations/re_index.mjs +39 -0
  1765. package/build/node_modules/mongodb/lib/operations/re_index.mjs.map +1 -0
  1766. package/build/node_modules/mongodb/lib/operations/remove_user.js +60 -0
  1767. package/build/node_modules/mongodb/lib/operations/remove_user.js.map +1 -0
  1768. package/build/node_modules/mongodb/lib/operations/remove_user.mjs +58 -0
  1769. package/build/node_modules/mongodb/lib/operations/remove_user.mjs.map +1 -0
  1770. package/build/node_modules/mongodb/lib/operations/rename.js +69 -0
  1771. package/build/node_modules/mongodb/lib/operations/rename.js.map +1 -0
  1772. package/build/node_modules/mongodb/lib/operations/rename.mjs +67 -0
  1773. package/build/node_modules/mongodb/lib/operations/rename.mjs.map +1 -0
  1774. package/build/node_modules/mongodb/lib/operations/replace_one.js +61 -0
  1775. package/build/node_modules/mongodb/lib/operations/replace_one.js.map +1 -0
  1776. package/build/node_modules/mongodb/lib/operations/replace_one.mjs +59 -0
  1777. package/build/node_modules/mongodb/lib/operations/replace_one.mjs.map +1 -0
  1778. package/build/node_modules/mongodb/lib/operations/run_command.js +24 -0
  1779. package/build/node_modules/mongodb/lib/operations/run_command.js.map +1 -0
  1780. package/build/node_modules/mongodb/lib/operations/run_command.mjs +22 -0
  1781. package/build/node_modules/mongodb/lib/operations/run_command.mjs.map +1 -0
  1782. package/build/node_modules/mongodb/lib/operations/set_profiling_level.js +52 -0
  1783. package/build/node_modules/mongodb/lib/operations/set_profiling_level.js.map +1 -0
  1784. package/build/node_modules/mongodb/lib/operations/set_profiling_level.mjs +50 -0
  1785. package/build/node_modules/mongodb/lib/operations/set_profiling_level.mjs.map +1 -0
  1786. package/build/node_modules/mongodb/lib/operations/stats.js +51 -0
  1787. package/build/node_modules/mongodb/lib/operations/stats.js.map +1 -0
  1788. package/build/node_modules/mongodb/lib/operations/stats.mjs +49 -0
  1789. package/build/node_modules/mongodb/lib/operations/stats.mjs.map +1 -0
  1790. package/build/node_modules/mongodb/lib/operations/update_many.js +62 -0
  1791. package/build/node_modules/mongodb/lib/operations/update_many.js.map +1 -0
  1792. package/build/node_modules/mongodb/lib/operations/update_many.mjs +60 -0
  1793. package/build/node_modules/mongodb/lib/operations/update_many.mjs.map +1 -0
  1794. package/build/node_modules/mongodb/lib/operations/update_one.js +62 -0
  1795. package/build/node_modules/mongodb/lib/operations/update_one.js.map +1 -0
  1796. package/build/node_modules/mongodb/lib/operations/update_one.mjs +60 -0
  1797. package/build/node_modules/mongodb/lib/operations/update_one.mjs.map +1 -0
  1798. package/build/node_modules/mongodb/lib/operations/validate_collection.js +42 -0
  1799. package/build/node_modules/mongodb/lib/operations/validate_collection.js.map +1 -0
  1800. package/build/node_modules/mongodb/lib/operations/validate_collection.mjs +40 -0
  1801. package/build/node_modules/mongodb/lib/operations/validate_collection.mjs.map +1 -0
  1802. package/build/node_modules/mongodb/lib/read_concern.js +64 -0
  1803. package/build/node_modules/mongodb/lib/read_concern.js.map +1 -0
  1804. package/build/node_modules/mongodb/lib/read_concern.mjs +62 -0
  1805. package/build/node_modules/mongodb/lib/read_concern.mjs.map +1 -0
  1806. package/build/node_modules/mongodb/lib/topologies/mongos.js +454 -0
  1807. package/build/node_modules/mongodb/lib/topologies/mongos.js.map +1 -0
  1808. package/build/node_modules/mongodb/lib/topologies/mongos.mjs +452 -0
  1809. package/build/node_modules/mongodb/lib/topologies/mongos.mjs.map +1 -0
  1810. package/build/node_modules/mongodb/lib/topologies/native_topology.js +86 -0
  1811. package/build/node_modules/mongodb/lib/topologies/native_topology.js.map +1 -0
  1812. package/build/node_modules/mongodb/lib/topologies/native_topology.mjs +84 -0
  1813. package/build/node_modules/mongodb/lib/topologies/native_topology.mjs.map +1 -0
  1814. package/build/node_modules/mongodb/lib/topologies/replset.js +496 -0
  1815. package/build/node_modules/mongodb/lib/topologies/replset.js.map +1 -0
  1816. package/build/node_modules/mongodb/lib/topologies/replset.mjs +494 -0
  1817. package/build/node_modules/mongodb/lib/topologies/replset.mjs.map +1 -0
  1818. package/build/node_modules/mongodb/lib/topologies/server.js +456 -0
  1819. package/build/node_modules/mongodb/lib/topologies/server.js.map +1 -0
  1820. package/build/node_modules/mongodb/lib/topologies/server.mjs +454 -0
  1821. package/build/node_modules/mongodb/lib/topologies/server.mjs.map +1 -0
  1822. package/build/node_modules/mongodb/lib/topologies/topology_base.js +439 -0
  1823. package/build/node_modules/mongodb/lib/topologies/topology_base.js.map +1 -0
  1824. package/build/node_modules/mongodb/lib/topologies/topology_base.mjs +428 -0
  1825. package/build/node_modules/mongodb/lib/topologies/topology_base.mjs.map +1 -0
  1826. package/build/node_modules/mongodb/lib/url_parser.js +646 -0
  1827. package/build/node_modules/mongodb/lib/url_parser.js.map +1 -0
  1828. package/build/node_modules/mongodb/lib/url_parser.mjs +637 -0
  1829. package/build/node_modules/mongodb/lib/url_parser.mjs.map +1 -0
  1830. package/build/node_modules/mongodb/lib/utils.js +919 -0
  1831. package/build/node_modules/mongodb/lib/utils.js.map +1 -0
  1832. package/build/node_modules/mongodb/lib/utils.mjs +917 -0
  1833. package/build/node_modules/mongodb/lib/utils.mjs.map +1 -0
  1834. package/build/node_modules/mongodb/lib/write_concern.js +99 -0
  1835. package/build/node_modules/mongodb/lib/write_concern.js.map +1 -0
  1836. package/build/node_modules/mongodb/lib/write_concern.mjs +97 -0
  1837. package/build/node_modules/mongodb/lib/write_concern.mjs.map +1 -0
  1838. package/build/node_modules/mongodb/package.json.js +146 -0
  1839. package/build/node_modules/mongodb/package.json.js.map +1 -0
  1840. package/build/node_modules/mongodb/package.mjs +127 -0
  1841. package/build/node_modules/mongodb/package.mjs.map +1 -0
  1842. package/build/node_modules/mongoose/index.js +8 -0
  1843. package/build/node_modules/mongoose/index.js.map +1 -0
  1844. package/build/node_modules/mongoose/index.mjs +6 -0
  1845. package/build/node_modules/mongoose/index.mjs.map +1 -0
  1846. package/build/node_modules/mongoose/lib/aggregate.js +1176 -0
  1847. package/build/node_modules/mongoose/lib/aggregate.js.map +1 -0
  1848. package/build/node_modules/mongoose/lib/aggregate.mjs +1170 -0
  1849. package/build/node_modules/mongoose/lib/aggregate.mjs.map +1 -0
  1850. package/build/node_modules/mongoose/lib/browserDocument.js +119 -0
  1851. package/build/node_modules/mongoose/lib/browserDocument.js.map +1 -0
  1852. package/build/node_modules/mongoose/lib/browserDocument.mjs +113 -0
  1853. package/build/node_modules/mongoose/lib/browserDocument.mjs.map +1 -0
  1854. package/build/node_modules/mongoose/lib/cast/boolean.js +41 -0
  1855. package/build/node_modules/mongoose/lib/cast/boolean.js.map +1 -0
  1856. package/build/node_modules/mongoose/lib/cast/boolean.mjs +39 -0
  1857. package/build/node_modules/mongoose/lib/cast/boolean.mjs.map +1 -0
  1858. package/build/node_modules/mongoose/lib/cast/date.js +48 -0
  1859. package/build/node_modules/mongoose/lib/cast/date.js.map +1 -0
  1860. package/build/node_modules/mongoose/lib/cast/date.mjs +42 -0
  1861. package/build/node_modules/mongoose/lib/cast/date.mjs.map +1 -0
  1862. package/build/node_modules/mongoose/lib/cast/decimal128.js +43 -0
  1863. package/build/node_modules/mongoose/lib/cast/decimal128.js.map +1 -0
  1864. package/build/node_modules/mongoose/lib/cast/decimal128.mjs +37 -0
  1865. package/build/node_modules/mongoose/lib/cast/decimal128.mjs.map +1 -0
  1866. package/build/node_modules/mongoose/lib/cast/number.js +50 -0
  1867. package/build/node_modules/mongoose/lib/cast/number.js.map +1 -0
  1868. package/build/node_modules/mongoose/lib/cast/number.mjs +44 -0
  1869. package/build/node_modules/mongoose/lib/cast/number.mjs.map +1 -0
  1870. package/build/node_modules/mongoose/lib/cast/objectid.js +39 -0
  1871. package/build/node_modules/mongoose/lib/cast/objectid.js.map +1 -0
  1872. package/build/node_modules/mongoose/lib/cast/objectid.mjs +33 -0
  1873. package/build/node_modules/mongoose/lib/cast/objectid.mjs.map +1 -0
  1874. package/build/node_modules/mongoose/lib/cast/string.js +40 -0
  1875. package/build/node_modules/mongoose/lib/cast/string.js.map +1 -0
  1876. package/build/node_modules/mongoose/lib/cast/string.mjs +38 -0
  1877. package/build/node_modules/mongoose/lib/cast/string.mjs.map +1 -0
  1878. package/build/node_modules/mongoose/lib/cast.js +382 -0
  1879. package/build/node_modules/mongoose/lib/cast.js.map +1 -0
  1880. package/build/node_modules/mongoose/lib/cast.mjs +376 -0
  1881. package/build/node_modules/mongoose/lib/cast.mjs.map +1 -0
  1882. package/build/node_modules/mongoose/lib/collection.js +333 -0
  1883. package/build/node_modules/mongoose/lib/collection.js.map +1 -0
  1884. package/build/node_modules/mongoose/lib/collection.mjs +327 -0
  1885. package/build/node_modules/mongoose/lib/collection.mjs.map +1 -0
  1886. package/build/node_modules/mongoose/lib/connection.js +1534 -0
  1887. package/build/node_modules/mongoose/lib/connection.js.map +1 -0
  1888. package/build/node_modules/mongoose/lib/connection.mjs +1528 -0
  1889. package/build/node_modules/mongoose/lib/connection.mjs.map +1 -0
  1890. package/build/node_modules/mongoose/lib/connectionstate.js +29 -0
  1891. package/build/node_modules/mongoose/lib/connectionstate.js.map +1 -0
  1892. package/build/node_modules/mongoose/lib/connectionstate.mjs +27 -0
  1893. package/build/node_modules/mongoose/lib/connectionstate.mjs.map +1 -0
  1894. package/build/node_modules/mongoose/lib/cursor/AggregationCursor.js +384 -0
  1895. package/build/node_modules/mongoose/lib/cursor/AggregationCursor.js.map +1 -0
  1896. package/build/node_modules/mongoose/lib/cursor/AggregationCursor.mjs +377 -0
  1897. package/build/node_modules/mongoose/lib/cursor/AggregationCursor.mjs.map +1 -0
  1898. package/build/node_modules/mongoose/lib/cursor/ChangeStream.js +70 -0
  1899. package/build/node_modules/mongoose/lib/cursor/ChangeStream.js.map +1 -0
  1900. package/build/node_modules/mongoose/lib/cursor/ChangeStream.mjs +64 -0
  1901. package/build/node_modules/mongoose/lib/cursor/ChangeStream.mjs.map +1 -0
  1902. package/build/node_modules/mongoose/lib/cursor/QueryCursor.js +522 -0
  1903. package/build/node_modules/mongoose/lib/cursor/QueryCursor.js.map +1 -0
  1904. package/build/node_modules/mongoose/lib/cursor/QueryCursor.mjs +515 -0
  1905. package/build/node_modules/mongoose/lib/cursor/QueryCursor.mjs.map +1 -0
  1906. package/build/node_modules/mongoose/lib/document.js +4305 -0
  1907. package/build/node_modules/mongoose/lib/document.js.map +1 -0
  1908. package/build/node_modules/mongoose/lib/document.mjs +4298 -0
  1909. package/build/node_modules/mongoose/lib/document.mjs.map +1 -0
  1910. package/build/node_modules/mongoose/lib/document_provider.js +40 -0
  1911. package/build/node_modules/mongoose/lib/document_provider.js.map +1 -0
  1912. package/build/node_modules/mongoose/lib/document_provider.mjs +36 -0
  1913. package/build/node_modules/mongoose/lib/document_provider.mjs.map +1 -0
  1914. package/build/node_modules/mongoose/lib/driver.js +27 -0
  1915. package/build/node_modules/mongoose/lib/driver.js.map +1 -0
  1916. package/build/node_modules/mongoose/lib/driver.mjs +22 -0
  1917. package/build/node_modules/mongoose/lib/driver.mjs.map +1 -0
  1918. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/ReadPreference.js +52 -0
  1919. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/ReadPreference.js.map +1 -0
  1920. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/ReadPreference.mjs +50 -0
  1921. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/ReadPreference.mjs.map +1 -0
  1922. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/binary.js +14 -0
  1923. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/binary.js.map +1 -0
  1924. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/binary.mjs +12 -0
  1925. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/binary.mjs.map +1 -0
  1926. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/collection.js +470 -0
  1927. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/collection.js.map +1 -0
  1928. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/collection.mjs +463 -0
  1929. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/collection.mjs.map +1 -0
  1930. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.js +219 -0
  1931. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.js.map +1 -0
  1932. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.mjs +217 -0
  1933. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.mjs.map +1 -0
  1934. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/decimal128.js +12 -0
  1935. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/decimal128.js.map +1 -0
  1936. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/decimal128.mjs +10 -0
  1937. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/decimal128.mjs.map +1 -0
  1938. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/index.js +39 -0
  1939. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/index.js.map +1 -0
  1940. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/index.mjs +30 -0
  1941. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/index.mjs.map +1 -0
  1942. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/objectid.js +18 -0
  1943. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/objectid.js.map +1 -0
  1944. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/objectid.mjs +16 -0
  1945. package/build/node_modules/mongoose/lib/drivers/node-mongodb-native/objectid.mjs.map +1 -0
  1946. package/build/node_modules/mongoose/lib/error/cast.js +161 -0
  1947. package/build/node_modules/mongoose/lib/error/cast.js.map +1 -0
  1948. package/build/node_modules/mongoose/lib/error/cast.mjs +155 -0
  1949. package/build/node_modules/mongoose/lib/error/cast.mjs.map +1 -0
  1950. package/build/node_modules/mongoose/lib/error/divergentArray.js +35 -0
  1951. package/build/node_modules/mongoose/lib/error/divergentArray.js.map +1 -0
  1952. package/build/node_modules/mongoose/lib/error/divergentArray.mjs +33 -0
  1953. package/build/node_modules/mongoose/lib/error/divergentArray.mjs.map +1 -0
  1954. package/build/node_modules/mongoose/lib/error/index.js +225 -0
  1955. package/build/node_modules/mongoose/lib/error/index.js.map +1 -0
  1956. package/build/node_modules/mongoose/lib/error/index.mjs +223 -0
  1957. package/build/node_modules/mongoose/lib/error/index.mjs.map +1 -0
  1958. package/build/node_modules/mongoose/lib/error/messages.js +32 -0
  1959. package/build/node_modules/mongoose/lib/error/messages.js.map +1 -0
  1960. package/build/node_modules/mongoose/lib/error/messages.mjs +30 -0
  1961. package/build/node_modules/mongoose/lib/error/messages.mjs.map +1 -0
  1962. package/build/node_modules/mongoose/lib/error/missingSchema.js +28 -0
  1963. package/build/node_modules/mongoose/lib/error/missingSchema.js.map +1 -0
  1964. package/build/node_modules/mongoose/lib/error/missingSchema.mjs +26 -0
  1965. package/build/node_modules/mongoose/lib/error/missingSchema.mjs.map +1 -0
  1966. package/build/node_modules/mongoose/lib/error/mongooseError.js +16 -0
  1967. package/build/node_modules/mongoose/lib/error/mongooseError.js.map +1 -0
  1968. package/build/node_modules/mongoose/lib/error/mongooseError.mjs +14 -0
  1969. package/build/node_modules/mongoose/lib/error/mongooseError.mjs.map +1 -0
  1970. package/build/node_modules/mongoose/lib/error/notFound.js +54 -0
  1971. package/build/node_modules/mongoose/lib/error/notFound.js.map +1 -0
  1972. package/build/node_modules/mongoose/lib/error/notFound.mjs +48 -0
  1973. package/build/node_modules/mongoose/lib/error/notFound.mjs.map +1 -0
  1974. package/build/node_modules/mongoose/lib/error/objectExpected.js +35 -0
  1975. package/build/node_modules/mongoose/lib/error/objectExpected.js.map +1 -0
  1976. package/build/node_modules/mongoose/lib/error/objectExpected.mjs +33 -0
  1977. package/build/node_modules/mongoose/lib/error/objectExpected.mjs.map +1 -0
  1978. package/build/node_modules/mongoose/lib/error/objectParameter.js +35 -0
  1979. package/build/node_modules/mongoose/lib/error/objectParameter.js.map +1 -0
  1980. package/build/node_modules/mongoose/lib/error/objectParameter.mjs +33 -0
  1981. package/build/node_modules/mongoose/lib/error/objectParameter.mjs.map +1 -0
  1982. package/build/node_modules/mongoose/lib/error/overwriteModel.js +26 -0
  1983. package/build/node_modules/mongoose/lib/error/overwriteModel.js.map +1 -0
  1984. package/build/node_modules/mongoose/lib/error/overwriteModel.mjs +24 -0
  1985. package/build/node_modules/mongoose/lib/error/overwriteModel.mjs.map +1 -0
  1986. package/build/node_modules/mongoose/lib/error/parallelSave.js +35 -0
  1987. package/build/node_modules/mongoose/lib/error/parallelSave.js.map +1 -0
  1988. package/build/node_modules/mongoose/lib/error/parallelSave.mjs +33 -0
  1989. package/build/node_modules/mongoose/lib/error/parallelSave.mjs.map +1 -0
  1990. package/build/node_modules/mongoose/lib/error/parallelValidate.js +36 -0
  1991. package/build/node_modules/mongoose/lib/error/parallelValidate.js.map +1 -0
  1992. package/build/node_modules/mongoose/lib/error/parallelValidate.mjs +34 -0
  1993. package/build/node_modules/mongoose/lib/error/parallelValidate.mjs.map +1 -0
  1994. package/build/node_modules/mongoose/lib/error/serverSelection.js +69 -0
  1995. package/build/node_modules/mongoose/lib/error/serverSelection.js.map +1 -0
  1996. package/build/node_modules/mongoose/lib/error/serverSelection.mjs +67 -0
  1997. package/build/node_modules/mongoose/lib/error/serverSelection.mjs.map +1 -0
  1998. package/build/node_modules/mongoose/lib/error/strict.js +38 -0
  1999. package/build/node_modules/mongoose/lib/error/strict.js.map +1 -0
  2000. package/build/node_modules/mongoose/lib/error/strict.mjs +36 -0
  2001. package/build/node_modules/mongoose/lib/error/strict.mjs.map +1 -0
  2002. package/build/node_modules/mongoose/lib/error/validation.js +121 -0
  2003. package/build/node_modules/mongoose/lib/error/validation.js.map +1 -0
  2004. package/build/node_modules/mongoose/lib/error/validation.mjs +115 -0
  2005. package/build/node_modules/mongoose/lib/error/validation.mjs.map +1 -0
  2006. package/build/node_modules/mongoose/lib/error/validator.js +99 -0
  2007. package/build/node_modules/mongoose/lib/error/validator.js.map +1 -0
  2008. package/build/node_modules/mongoose/lib/error/validator.mjs +97 -0
  2009. package/build/node_modules/mongoose/lib/error/validator.mjs.map +1 -0
  2010. package/build/node_modules/mongoose/lib/error/version.js +41 -0
  2011. package/build/node_modules/mongoose/lib/error/version.js.map +1 -0
  2012. package/build/node_modules/mongoose/lib/error/version.mjs +39 -0
  2013. package/build/node_modules/mongoose/lib/error/version.mjs.map +1 -0
  2014. package/build/node_modules/mongoose/lib/helpers/aggregate/stringifyFunctionOperators.js +53 -0
  2015. package/build/node_modules/mongoose/lib/helpers/aggregate/stringifyFunctionOperators.js.map +1 -0
  2016. package/build/node_modules/mongoose/lib/helpers/aggregate/stringifyFunctionOperators.mjs +51 -0
  2017. package/build/node_modules/mongoose/lib/helpers/aggregate/stringifyFunctionOperators.mjs.map +1 -0
  2018. package/build/node_modules/mongoose/lib/helpers/arrayDepth.js +36 -0
  2019. package/build/node_modules/mongoose/lib/helpers/arrayDepth.js.map +1 -0
  2020. package/build/node_modules/mongoose/lib/helpers/arrayDepth.mjs +34 -0
  2021. package/build/node_modules/mongoose/lib/helpers/arrayDepth.mjs.map +1 -0
  2022. package/build/node_modules/mongoose/lib/helpers/clone.js +141 -0
  2023. package/build/node_modules/mongoose/lib/helpers/clone.js.map +1 -0
  2024. package/build/node_modules/mongoose/lib/helpers/clone.mjs +139 -0
  2025. package/build/node_modules/mongoose/lib/helpers/clone.mjs.map +1 -0
  2026. package/build/node_modules/mongoose/lib/helpers/common.js +123 -0
  2027. package/build/node_modules/mongoose/lib/helpers/common.js.map +1 -0
  2028. package/build/node_modules/mongoose/lib/helpers/common.mjs +118 -0
  2029. package/build/node_modules/mongoose/lib/helpers/common.mjs.map +1 -0
  2030. package/build/node_modules/mongoose/lib/helpers/cursor/eachAsync.js +163 -0
  2031. package/build/node_modules/mongoose/lib/helpers/cursor/eachAsync.js.map +1 -0
  2032. package/build/node_modules/mongoose/lib/helpers/cursor/eachAsync.mjs +161 -0
  2033. package/build/node_modules/mongoose/lib/helpers/cursor/eachAsync.mjs.map +1 -0
  2034. package/build/node_modules/mongoose/lib/helpers/discriminator/areDiscriminatorValuesEqual.js +19 -0
  2035. package/build/node_modules/mongoose/lib/helpers/discriminator/areDiscriminatorValuesEqual.js.map +1 -0
  2036. package/build/node_modules/mongoose/lib/helpers/discriminator/areDiscriminatorValuesEqual.mjs +17 -0
  2037. package/build/node_modules/mongoose/lib/helpers/discriminator/areDiscriminatorValuesEqual.mjs.map +1 -0
  2038. package/build/node_modules/mongoose/lib/helpers/discriminator/checkEmbeddedDiscriminatorKeyProjection.js +15 -0
  2039. package/build/node_modules/mongoose/lib/helpers/discriminator/checkEmbeddedDiscriminatorKeyProjection.js.map +1 -0
  2040. package/build/node_modules/mongoose/lib/helpers/discriminator/checkEmbeddedDiscriminatorKeyProjection.mjs +13 -0
  2041. package/build/node_modules/mongoose/lib/helpers/discriminator/checkEmbeddedDiscriminatorKeyProjection.mjs.map +1 -0
  2042. package/build/node_modules/mongoose/lib/helpers/discriminator/getConstructor.js +28 -0
  2043. package/build/node_modules/mongoose/lib/helpers/discriminator/getConstructor.js.map +1 -0
  2044. package/build/node_modules/mongoose/lib/helpers/discriminator/getConstructor.mjs +26 -0
  2045. package/build/node_modules/mongoose/lib/helpers/discriminator/getConstructor.mjs.map +1 -0
  2046. package/build/node_modules/mongoose/lib/helpers/discriminator/getDiscriminatorByValue.js +30 -0
  2047. package/build/node_modules/mongoose/lib/helpers/discriminator/getDiscriminatorByValue.js.map +1 -0
  2048. package/build/node_modules/mongoose/lib/helpers/discriminator/getDiscriminatorByValue.mjs +28 -0
  2049. package/build/node_modules/mongoose/lib/helpers/discriminator/getDiscriminatorByValue.mjs.map +1 -0
  2050. package/build/node_modules/mongoose/lib/helpers/discriminator/getSchemaDiscriminatorByValue.js +29 -0
  2051. package/build/node_modules/mongoose/lib/helpers/discriminator/getSchemaDiscriminatorByValue.js.map +1 -0
  2052. package/build/node_modules/mongoose/lib/helpers/discriminator/getSchemaDiscriminatorByValue.mjs +27 -0
  2053. package/build/node_modules/mongoose/lib/helpers/discriminator/getSchemaDiscriminatorByValue.mjs.map +1 -0
  2054. package/build/node_modules/mongoose/lib/helpers/document/cleanModifiedSubpaths.js +31 -0
  2055. package/build/node_modules/mongoose/lib/helpers/document/cleanModifiedSubpaths.js.map +1 -0
  2056. package/build/node_modules/mongoose/lib/helpers/document/cleanModifiedSubpaths.mjs +29 -0
  2057. package/build/node_modules/mongoose/lib/helpers/document/cleanModifiedSubpaths.mjs.map +1 -0
  2058. package/build/node_modules/mongoose/lib/helpers/document/compile.js +229 -0
  2059. package/build/node_modules/mongoose/lib/helpers/document/compile.js.map +1 -0
  2060. package/build/node_modules/mongoose/lib/helpers/document/compile.mjs +224 -0
  2061. package/build/node_modules/mongoose/lib/helpers/document/compile.mjs.map +1 -0
  2062. package/build/node_modules/mongoose/lib/helpers/document/getEmbeddedDiscriminatorPath.js +46 -0
  2063. package/build/node_modules/mongoose/lib/helpers/document/getEmbeddedDiscriminatorPath.js.map +1 -0
  2064. package/build/node_modules/mongoose/lib/helpers/document/getEmbeddedDiscriminatorPath.mjs +44 -0
  2065. package/build/node_modules/mongoose/lib/helpers/document/getEmbeddedDiscriminatorPath.mjs.map +1 -0
  2066. package/build/node_modules/mongoose/lib/helpers/document/handleSpreadDoc.js +20 -0
  2067. package/build/node_modules/mongoose/lib/helpers/document/handleSpreadDoc.js.map +1 -0
  2068. package/build/node_modules/mongoose/lib/helpers/document/handleSpreadDoc.mjs +18 -0
  2069. package/build/node_modules/mongoose/lib/helpers/document/handleSpreadDoc.mjs.map +1 -0
  2070. package/build/node_modules/mongoose/lib/helpers/each.js +28 -0
  2071. package/build/node_modules/mongoose/lib/helpers/each.js.map +1 -0
  2072. package/build/node_modules/mongoose/lib/helpers/each.mjs +26 -0
  2073. package/build/node_modules/mongoose/lib/helpers/each.mjs.map +1 -0
  2074. package/build/node_modules/mongoose/lib/helpers/get.js +67 -0
  2075. package/build/node_modules/mongoose/lib/helpers/get.js.map +1 -0
  2076. package/build/node_modules/mongoose/lib/helpers/get.mjs +65 -0
  2077. package/build/node_modules/mongoose/lib/helpers/get.mjs.map +1 -0
  2078. package/build/node_modules/mongoose/lib/helpers/getDefaultBulkwriteResult.js +31 -0
  2079. package/build/node_modules/mongoose/lib/helpers/getDefaultBulkwriteResult.js.map +1 -0
  2080. package/build/node_modules/mongoose/lib/helpers/getDefaultBulkwriteResult.mjs +29 -0
  2081. package/build/node_modules/mongoose/lib/helpers/getDefaultBulkwriteResult.mjs.map +1 -0
  2082. package/build/node_modules/mongoose/lib/helpers/getFunctionName.js +11 -0
  2083. package/build/node_modules/mongoose/lib/helpers/getFunctionName.js.map +1 -0
  2084. package/build/node_modules/mongoose/lib/helpers/getFunctionName.mjs +9 -0
  2085. package/build/node_modules/mongoose/lib/helpers/getFunctionName.mjs.map +1 -0
  2086. package/build/node_modules/mongoose/lib/helpers/immediate.js +17 -0
  2087. package/build/node_modules/mongoose/lib/helpers/immediate.js.map +1 -0
  2088. package/build/node_modules/mongoose/lib/helpers/immediate.mjs +15 -0
  2089. package/build/node_modules/mongoose/lib/helpers/immediate.mjs.map +1 -0
  2090. package/build/node_modules/mongoose/lib/helpers/indexes/isDefaultIdIndex.js +21 -0
  2091. package/build/node_modules/mongoose/lib/helpers/indexes/isDefaultIdIndex.js.map +1 -0
  2092. package/build/node_modules/mongoose/lib/helpers/indexes/isDefaultIdIndex.mjs +19 -0
  2093. package/build/node_modules/mongoose/lib/helpers/indexes/isDefaultIdIndex.mjs.map +1 -0
  2094. package/build/node_modules/mongoose/lib/helpers/indexes/isIndexEqual.js +98 -0
  2095. package/build/node_modules/mongoose/lib/helpers/indexes/isIndexEqual.js.map +1 -0
  2096. package/build/node_modules/mongoose/lib/helpers/indexes/isIndexEqual.mjs +96 -0
  2097. package/build/node_modules/mongoose/lib/helpers/indexes/isIndexEqual.mjs.map +1 -0
  2098. package/build/node_modules/mongoose/lib/helpers/isBsonType.js +16 -0
  2099. package/build/node_modules/mongoose/lib/helpers/isBsonType.js.map +1 -0
  2100. package/build/node_modules/mongoose/lib/helpers/isBsonType.mjs +14 -0
  2101. package/build/node_modules/mongoose/lib/helpers/isBsonType.mjs.map +1 -0
  2102. package/build/node_modules/mongoose/lib/helpers/isMongooseObject.js +24 -0
  2103. package/build/node_modules/mongoose/lib/helpers/isMongooseObject.js.map +1 -0
  2104. package/build/node_modules/mongoose/lib/helpers/isMongooseObject.mjs +22 -0
  2105. package/build/node_modules/mongoose/lib/helpers/isMongooseObject.mjs.map +1 -0
  2106. package/build/node_modules/mongoose/lib/helpers/isObject.js +19 -0
  2107. package/build/node_modules/mongoose/lib/helpers/isObject.js.map +1 -0
  2108. package/build/node_modules/mongoose/lib/helpers/isObject.mjs +17 -0
  2109. package/build/node_modules/mongoose/lib/helpers/isObject.mjs.map +1 -0
  2110. package/build/node_modules/mongoose/lib/helpers/isPromise.js +10 -0
  2111. package/build/node_modules/mongoose/lib/helpers/isPromise.js.map +1 -0
  2112. package/build/node_modules/mongoose/lib/helpers/isPromise.mjs +8 -0
  2113. package/build/node_modules/mongoose/lib/helpers/isPromise.mjs.map +1 -0
  2114. package/build/node_modules/mongoose/lib/helpers/model/applyHooks.js +141 -0
  2115. package/build/node_modules/mongoose/lib/helpers/model/applyHooks.js.map +1 -0
  2116. package/build/node_modules/mongoose/lib/helpers/model/applyHooks.mjs +139 -0
  2117. package/build/node_modules/mongoose/lib/helpers/model/applyHooks.mjs.map +1 -0
  2118. package/build/node_modules/mongoose/lib/helpers/model/applyMethods.js +59 -0
  2119. package/build/node_modules/mongoose/lib/helpers/model/applyMethods.js.map +1 -0
  2120. package/build/node_modules/mongoose/lib/helpers/model/applyMethods.mjs +57 -0
  2121. package/build/node_modules/mongoose/lib/helpers/model/applyMethods.mjs.map +1 -0
  2122. package/build/node_modules/mongoose/lib/helpers/model/applyStaticHooks.js +77 -0
  2123. package/build/node_modules/mongoose/lib/helpers/model/applyStaticHooks.js.map +1 -0
  2124. package/build/node_modules/mongoose/lib/helpers/model/applyStaticHooks.mjs +75 -0
  2125. package/build/node_modules/mongoose/lib/helpers/model/applyStaticHooks.mjs.map +1 -0
  2126. package/build/node_modules/mongoose/lib/helpers/model/applyStatics.js +15 -0
  2127. package/build/node_modules/mongoose/lib/helpers/model/applyStatics.js.map +1 -0
  2128. package/build/node_modules/mongoose/lib/helpers/model/applyStatics.mjs +13 -0
  2129. package/build/node_modules/mongoose/lib/helpers/model/applyStatics.mjs.map +1 -0
  2130. package/build/node_modules/mongoose/lib/helpers/model/castBulkWrite.js +227 -0
  2131. package/build/node_modules/mongoose/lib/helpers/model/castBulkWrite.js.map +1 -0
  2132. package/build/node_modules/mongoose/lib/helpers/model/castBulkWrite.mjs +225 -0
  2133. package/build/node_modules/mongoose/lib/helpers/model/castBulkWrite.mjs.map +1 -0
  2134. package/build/node_modules/mongoose/lib/helpers/model/discriminator.js +212 -0
  2135. package/build/node_modules/mongoose/lib/helpers/model/discriminator.js.map +1 -0
  2136. package/build/node_modules/mongoose/lib/helpers/model/discriminator.mjs +210 -0
  2137. package/build/node_modules/mongoose/lib/helpers/model/discriminator.mjs.map +1 -0
  2138. package/build/node_modules/mongoose/lib/helpers/parallelLimit.js +58 -0
  2139. package/build/node_modules/mongoose/lib/helpers/parallelLimit.js.map +1 -0
  2140. package/build/node_modules/mongoose/lib/helpers/parallelLimit.mjs +56 -0
  2141. package/build/node_modules/mongoose/lib/helpers/parallelLimit.mjs.map +1 -0
  2142. package/build/node_modules/mongoose/lib/helpers/path/parentPaths.js +16 -0
  2143. package/build/node_modules/mongoose/lib/helpers/path/parentPaths.js.map +1 -0
  2144. package/build/node_modules/mongoose/lib/helpers/path/parentPaths.mjs +14 -0
  2145. package/build/node_modules/mongoose/lib/helpers/path/parentPaths.mjs.map +1 -0
  2146. package/build/node_modules/mongoose/lib/helpers/path/setDottedPath.js +19 -0
  2147. package/build/node_modules/mongoose/lib/helpers/path/setDottedPath.js.map +1 -0
  2148. package/build/node_modules/mongoose/lib/helpers/path/setDottedPath.mjs +17 -0
  2149. package/build/node_modules/mongoose/lib/helpers/path/setDottedPath.mjs.map +1 -0
  2150. package/build/node_modules/mongoose/lib/helpers/populate/SkipPopulateValue.js +13 -0
  2151. package/build/node_modules/mongoose/lib/helpers/populate/SkipPopulateValue.js.map +1 -0
  2152. package/build/node_modules/mongoose/lib/helpers/populate/SkipPopulateValue.mjs +11 -0
  2153. package/build/node_modules/mongoose/lib/helpers/populate/SkipPopulateValue.mjs.map +1 -0
  2154. package/build/node_modules/mongoose/lib/helpers/populate/assignRawDocsToIdStructure.js +104 -0
  2155. package/build/node_modules/mongoose/lib/helpers/populate/assignRawDocsToIdStructure.js.map +1 -0
  2156. package/build/node_modules/mongoose/lib/helpers/populate/assignRawDocsToIdStructure.mjs +102 -0
  2157. package/build/node_modules/mongoose/lib/helpers/populate/assignRawDocsToIdStructure.mjs.map +1 -0
  2158. package/build/node_modules/mongoose/lib/helpers/populate/assignVals.js +291 -0
  2159. package/build/node_modules/mongoose/lib/helpers/populate/assignVals.js.map +1 -0
  2160. package/build/node_modules/mongoose/lib/helpers/populate/assignVals.mjs +289 -0
  2161. package/build/node_modules/mongoose/lib/helpers/populate/assignVals.mjs.map +1 -0
  2162. package/build/node_modules/mongoose/lib/helpers/populate/createPopulateQueryFilter.js +82 -0
  2163. package/build/node_modules/mongoose/lib/helpers/populate/createPopulateQueryFilter.js.map +1 -0
  2164. package/build/node_modules/mongoose/lib/helpers/populate/createPopulateQueryFilter.mjs +80 -0
  2165. package/build/node_modules/mongoose/lib/helpers/populate/createPopulateQueryFilter.mjs.map +1 -0
  2166. package/build/node_modules/mongoose/lib/helpers/populate/getModelsMapForPopulate.js +550 -0
  2167. package/build/node_modules/mongoose/lib/helpers/populate/getModelsMapForPopulate.js.map +1 -0
  2168. package/build/node_modules/mongoose/lib/helpers/populate/getModelsMapForPopulate.mjs +544 -0
  2169. package/build/node_modules/mongoose/lib/helpers/populate/getModelsMapForPopulate.mjs.map +1 -0
  2170. package/build/node_modules/mongoose/lib/helpers/populate/getSchemaTypes.js +218 -0
  2171. package/build/node_modules/mongoose/lib/helpers/populate/getSchemaTypes.js.map +1 -0
  2172. package/build/node_modules/mongoose/lib/helpers/populate/getSchemaTypes.mjs +216 -0
  2173. package/build/node_modules/mongoose/lib/helpers/populate/getSchemaTypes.mjs.map +1 -0
  2174. package/build/node_modules/mongoose/lib/helpers/populate/getVirtual.js +75 -0
  2175. package/build/node_modules/mongoose/lib/helpers/populate/getVirtual.js.map +1 -0
  2176. package/build/node_modules/mongoose/lib/helpers/populate/getVirtual.mjs +73 -0
  2177. package/build/node_modules/mongoose/lib/helpers/populate/getVirtual.mjs.map +1 -0
  2178. package/build/node_modules/mongoose/lib/helpers/populate/leanPopulateMap.js +10 -0
  2179. package/build/node_modules/mongoose/lib/helpers/populate/leanPopulateMap.js.map +1 -0
  2180. package/build/node_modules/mongoose/lib/helpers/populate/leanPopulateMap.mjs +8 -0
  2181. package/build/node_modules/mongoose/lib/helpers/populate/leanPopulateMap.mjs.map +1 -0
  2182. package/build/node_modules/mongoose/lib/helpers/populate/lookupLocalFields.js +31 -0
  2183. package/build/node_modules/mongoose/lib/helpers/populate/lookupLocalFields.js.map +1 -0
  2184. package/build/node_modules/mongoose/lib/helpers/populate/lookupLocalFields.mjs +29 -0
  2185. package/build/node_modules/mongoose/lib/helpers/populate/lookupLocalFields.mjs.map +1 -0
  2186. package/build/node_modules/mongoose/lib/helpers/populate/normalizeRefPath.js +48 -0
  2187. package/build/node_modules/mongoose/lib/helpers/populate/normalizeRefPath.js.map +1 -0
  2188. package/build/node_modules/mongoose/lib/helpers/populate/normalizeRefPath.mjs +46 -0
  2189. package/build/node_modules/mongoose/lib/helpers/populate/normalizeRefPath.mjs.map +1 -0
  2190. package/build/node_modules/mongoose/lib/helpers/populate/removeDeselectedForeignField.js +34 -0
  2191. package/build/node_modules/mongoose/lib/helpers/populate/removeDeselectedForeignField.js.map +1 -0
  2192. package/build/node_modules/mongoose/lib/helpers/populate/removeDeselectedForeignField.mjs +32 -0
  2193. package/build/node_modules/mongoose/lib/helpers/populate/removeDeselectedForeignField.mjs.map +1 -0
  2194. package/build/node_modules/mongoose/lib/helpers/populate/validateRef.js +26 -0
  2195. package/build/node_modules/mongoose/lib/helpers/populate/validateRef.js.map +1 -0
  2196. package/build/node_modules/mongoose/lib/helpers/populate/validateRef.mjs +20 -0
  2197. package/build/node_modules/mongoose/lib/helpers/populate/validateRef.mjs.map +1 -0
  2198. package/build/node_modules/mongoose/lib/helpers/printJestWarning.js +16 -0
  2199. package/build/node_modules/mongoose/lib/helpers/printJestWarning.js.map +1 -0
  2200. package/build/node_modules/mongoose/lib/helpers/printJestWarning.mjs +14 -0
  2201. package/build/node_modules/mongoose/lib/helpers/printJestWarning.mjs.map +1 -0
  2202. package/build/node_modules/mongoose/lib/helpers/projection/isDefiningProjection.js +21 -0
  2203. package/build/node_modules/mongoose/lib/helpers/projection/isDefiningProjection.js.map +1 -0
  2204. package/build/node_modules/mongoose/lib/helpers/projection/isDefiningProjection.mjs +19 -0
  2205. package/build/node_modules/mongoose/lib/helpers/projection/isDefiningProjection.mjs.map +1 -0
  2206. package/build/node_modules/mongoose/lib/helpers/projection/isExclusive.js +35 -0
  2207. package/build/node_modules/mongoose/lib/helpers/projection/isExclusive.js.map +1 -0
  2208. package/build/node_modules/mongoose/lib/helpers/projection/isExclusive.mjs +33 -0
  2209. package/build/node_modules/mongoose/lib/helpers/projection/isExclusive.mjs.map +1 -0
  2210. package/build/node_modules/mongoose/lib/helpers/projection/isInclusive.js +37 -0
  2211. package/build/node_modules/mongoose/lib/helpers/projection/isInclusive.js.map +1 -0
  2212. package/build/node_modules/mongoose/lib/helpers/projection/isInclusive.mjs +35 -0
  2213. package/build/node_modules/mongoose/lib/helpers/projection/isInclusive.mjs.map +1 -0
  2214. package/build/node_modules/mongoose/lib/helpers/projection/isPathExcluded.js +38 -0
  2215. package/build/node_modules/mongoose/lib/helpers/projection/isPathExcluded.js.map +1 -0
  2216. package/build/node_modules/mongoose/lib/helpers/projection/isPathExcluded.mjs +36 -0
  2217. package/build/node_modules/mongoose/lib/helpers/projection/isPathExcluded.mjs.map +1 -0
  2218. package/build/node_modules/mongoose/lib/helpers/projection/isPathSelectedInclusive.js +31 -0
  2219. package/build/node_modules/mongoose/lib/helpers/projection/isPathSelectedInclusive.js.map +1 -0
  2220. package/build/node_modules/mongoose/lib/helpers/projection/isPathSelectedInclusive.mjs +29 -0
  2221. package/build/node_modules/mongoose/lib/helpers/projection/isPathSelectedInclusive.mjs.map +1 -0
  2222. package/build/node_modules/mongoose/lib/helpers/projection/parseProjection.js +36 -0
  2223. package/build/node_modules/mongoose/lib/helpers/projection/parseProjection.js.map +1 -0
  2224. package/build/node_modules/mongoose/lib/helpers/projection/parseProjection.mjs +34 -0
  2225. package/build/node_modules/mongoose/lib/helpers/projection/parseProjection.mjs.map +1 -0
  2226. package/build/node_modules/mongoose/lib/helpers/promiseOrCallback.js +49 -0
  2227. package/build/node_modules/mongoose/lib/helpers/promiseOrCallback.js.map +1 -0
  2228. package/build/node_modules/mongoose/lib/helpers/promiseOrCallback.mjs +47 -0
  2229. package/build/node_modules/mongoose/lib/helpers/promiseOrCallback.mjs.map +1 -0
  2230. package/build/node_modules/mongoose/lib/helpers/query/applyGlobalMaxTimeMS.js +18 -0
  2231. package/build/node_modules/mongoose/lib/helpers/query/applyGlobalMaxTimeMS.js.map +1 -0
  2232. package/build/node_modules/mongoose/lib/helpers/query/applyGlobalMaxTimeMS.mjs +16 -0
  2233. package/build/node_modules/mongoose/lib/helpers/query/applyGlobalMaxTimeMS.mjs.map +1 -0
  2234. package/build/node_modules/mongoose/lib/helpers/query/applyQueryMiddleware.js +96 -0
  2235. package/build/node_modules/mongoose/lib/helpers/query/applyQueryMiddleware.js.map +1 -0
  2236. package/build/node_modules/mongoose/lib/helpers/query/applyQueryMiddleware.mjs +94 -0
  2237. package/build/node_modules/mongoose/lib/helpers/query/applyQueryMiddleware.mjs.map +1 -0
  2238. package/build/node_modules/mongoose/lib/helpers/query/castFilterPath.js +58 -0
  2239. package/build/node_modules/mongoose/lib/helpers/query/castFilterPath.js.map +1 -0
  2240. package/build/node_modules/mongoose/lib/helpers/query/castFilterPath.mjs +56 -0
  2241. package/build/node_modules/mongoose/lib/helpers/query/castFilterPath.mjs.map +1 -0
  2242. package/build/node_modules/mongoose/lib/helpers/query/castUpdate.js +561 -0
  2243. package/build/node_modules/mongoose/lib/helpers/query/castUpdate.js.map +1 -0
  2244. package/build/node_modules/mongoose/lib/helpers/query/castUpdate.mjs +559 -0
  2245. package/build/node_modules/mongoose/lib/helpers/query/castUpdate.mjs.map +1 -0
  2246. package/build/node_modules/mongoose/lib/helpers/query/completeMany.js +54 -0
  2247. package/build/node_modules/mongoose/lib/helpers/query/completeMany.js.map +1 -0
  2248. package/build/node_modules/mongoose/lib/helpers/query/completeMany.mjs +52 -0
  2249. package/build/node_modules/mongoose/lib/helpers/query/completeMany.mjs.map +1 -0
  2250. package/build/node_modules/mongoose/lib/helpers/query/getEmbeddedDiscriminatorPath.js +87 -0
  2251. package/build/node_modules/mongoose/lib/helpers/query/getEmbeddedDiscriminatorPath.js.map +1 -0
  2252. package/build/node_modules/mongoose/lib/helpers/query/getEmbeddedDiscriminatorPath.mjs +85 -0
  2253. package/build/node_modules/mongoose/lib/helpers/query/getEmbeddedDiscriminatorPath.mjs.map +1 -0
  2254. package/build/node_modules/mongoose/lib/helpers/query/handleImmutable.js +31 -0
  2255. package/build/node_modules/mongoose/lib/helpers/query/handleImmutable.js.map +1 -0
  2256. package/build/node_modules/mongoose/lib/helpers/query/handleImmutable.mjs +29 -0
  2257. package/build/node_modules/mongoose/lib/helpers/query/handleImmutable.mjs.map +1 -0
  2258. package/build/node_modules/mongoose/lib/helpers/query/hasDollarKeys.js +22 -0
  2259. package/build/node_modules/mongoose/lib/helpers/query/hasDollarKeys.js.map +1 -0
  2260. package/build/node_modules/mongoose/lib/helpers/query/hasDollarKeys.mjs +20 -0
  2261. package/build/node_modules/mongoose/lib/helpers/query/hasDollarKeys.mjs.map +1 -0
  2262. package/build/node_modules/mongoose/lib/helpers/query/isOperator.js +14 -0
  2263. package/build/node_modules/mongoose/lib/helpers/query/isOperator.js.map +1 -0
  2264. package/build/node_modules/mongoose/lib/helpers/query/isOperator.mjs +12 -0
  2265. package/build/node_modules/mongoose/lib/helpers/query/isOperator.mjs.map +1 -0
  2266. package/build/node_modules/mongoose/lib/helpers/query/sanitizeProjection.js +17 -0
  2267. package/build/node_modules/mongoose/lib/helpers/query/sanitizeProjection.js.map +1 -0
  2268. package/build/node_modules/mongoose/lib/helpers/query/sanitizeProjection.mjs +15 -0
  2269. package/build/node_modules/mongoose/lib/helpers/query/sanitizeProjection.mjs.map +1 -0
  2270. package/build/node_modules/mongoose/lib/helpers/query/selectPopulatedFields.js +52 -0
  2271. package/build/node_modules/mongoose/lib/helpers/query/selectPopulatedFields.js.map +1 -0
  2272. package/build/node_modules/mongoose/lib/helpers/query/selectPopulatedFields.mjs +50 -0
  2273. package/build/node_modules/mongoose/lib/helpers/query/selectPopulatedFields.mjs.map +1 -0
  2274. package/build/node_modules/mongoose/lib/helpers/query/wrapThunk.js +21 -0
  2275. package/build/node_modules/mongoose/lib/helpers/query/wrapThunk.js.map +1 -0
  2276. package/build/node_modules/mongoose/lib/helpers/query/wrapThunk.mjs +19 -0
  2277. package/build/node_modules/mongoose/lib/helpers/query/wrapThunk.mjs.map +1 -0
  2278. package/build/node_modules/mongoose/lib/helpers/schema/addAutoId.js +10 -0
  2279. package/build/node_modules/mongoose/lib/helpers/schema/addAutoId.js.map +1 -0
  2280. package/build/node_modules/mongoose/lib/helpers/schema/addAutoId.mjs +8 -0
  2281. package/build/node_modules/mongoose/lib/helpers/schema/addAutoId.mjs.map +1 -0
  2282. package/build/node_modules/mongoose/lib/helpers/schema/applyPlugins.js +47 -0
  2283. package/build/node_modules/mongoose/lib/helpers/schema/applyPlugins.js.map +1 -0
  2284. package/build/node_modules/mongoose/lib/helpers/schema/applyPlugins.mjs +45 -0
  2285. package/build/node_modules/mongoose/lib/helpers/schema/applyPlugins.mjs.map +1 -0
  2286. package/build/node_modules/mongoose/lib/helpers/schema/applyWriteConcern.js +33 -0
  2287. package/build/node_modules/mongoose/lib/helpers/schema/applyWriteConcern.js.map +1 -0
  2288. package/build/node_modules/mongoose/lib/helpers/schema/applyWriteConcern.mjs +31 -0
  2289. package/build/node_modules/mongoose/lib/helpers/schema/applyWriteConcern.mjs.map +1 -0
  2290. package/build/node_modules/mongoose/lib/helpers/schema/cleanPositionalOperators.js +15 -0
  2291. package/build/node_modules/mongoose/lib/helpers/schema/cleanPositionalOperators.js.map +1 -0
  2292. package/build/node_modules/mongoose/lib/helpers/schema/cleanPositionalOperators.mjs +13 -0
  2293. package/build/node_modules/mongoose/lib/helpers/schema/cleanPositionalOperators.mjs.map +1 -0
  2294. package/build/node_modules/mongoose/lib/helpers/schema/getIndexes.js +158 -0
  2295. package/build/node_modules/mongoose/lib/helpers/schema/getIndexes.js.map +1 -0
  2296. package/build/node_modules/mongoose/lib/helpers/schema/getIndexes.mjs +156 -0
  2297. package/build/node_modules/mongoose/lib/helpers/schema/getIndexes.mjs.map +1 -0
  2298. package/build/node_modules/mongoose/lib/helpers/schema/getPath.js +38 -0
  2299. package/build/node_modules/mongoose/lib/helpers/schema/getPath.js.map +1 -0
  2300. package/build/node_modules/mongoose/lib/helpers/schema/getPath.mjs +36 -0
  2301. package/build/node_modules/mongoose/lib/helpers/schema/getPath.mjs.map +1 -0
  2302. package/build/node_modules/mongoose/lib/helpers/schema/handleIdOption.js +23 -0
  2303. package/build/node_modules/mongoose/lib/helpers/schema/handleIdOption.js.map +1 -0
  2304. package/build/node_modules/mongoose/lib/helpers/schema/handleIdOption.mjs +21 -0
  2305. package/build/node_modules/mongoose/lib/helpers/schema/handleIdOption.mjs.map +1 -0
  2306. package/build/node_modules/mongoose/lib/helpers/schema/handleTimestampOption.js +27 -0
  2307. package/build/node_modules/mongoose/lib/helpers/schema/handleTimestampOption.js.map +1 -0
  2308. package/build/node_modules/mongoose/lib/helpers/schema/handleTimestampOption.mjs +25 -0
  2309. package/build/node_modules/mongoose/lib/helpers/schema/handleTimestampOption.mjs.map +1 -0
  2310. package/build/node_modules/mongoose/lib/helpers/schema/merge.js +30 -0
  2311. package/build/node_modules/mongoose/lib/helpers/schema/merge.js.map +1 -0
  2312. package/build/node_modules/mongoose/lib/helpers/schema/merge.mjs +28 -0
  2313. package/build/node_modules/mongoose/lib/helpers/schema/merge.mjs.map +1 -0
  2314. package/build/node_modules/mongoose/lib/helpers/schematype/handleImmutable.js +48 -0
  2315. package/build/node_modules/mongoose/lib/helpers/schematype/handleImmutable.js.map +1 -0
  2316. package/build/node_modules/mongoose/lib/helpers/schematype/handleImmutable.mjs +46 -0
  2317. package/build/node_modules/mongoose/lib/helpers/schematype/handleImmutable.mjs.map +1 -0
  2318. package/build/node_modules/mongoose/lib/helpers/setDefaultsOnInsert.js +134 -0
  2319. package/build/node_modules/mongoose/lib/helpers/setDefaultsOnInsert.js.map +1 -0
  2320. package/build/node_modules/mongoose/lib/helpers/setDefaultsOnInsert.mjs +132 -0
  2321. package/build/node_modules/mongoose/lib/helpers/setDefaultsOnInsert.mjs.map +1 -0
  2322. package/build/node_modules/mongoose/lib/helpers/specialProperties.js +6 -0
  2323. package/build/node_modules/mongoose/lib/helpers/specialProperties.js.map +1 -0
  2324. package/build/node_modules/mongoose/lib/helpers/specialProperties.mjs +4 -0
  2325. package/build/node_modules/mongoose/lib/helpers/specialProperties.mjs.map +1 -0
  2326. package/build/node_modules/mongoose/lib/helpers/symbols.js +61 -0
  2327. package/build/node_modules/mongoose/lib/helpers/symbols.js.map +1 -0
  2328. package/build/node_modules/mongoose/lib/helpers/symbols.mjs +41 -0
  2329. package/build/node_modules/mongoose/lib/helpers/symbols.mjs.map +1 -0
  2330. package/build/node_modules/mongoose/lib/helpers/timers.js +13 -0
  2331. package/build/node_modules/mongoose/lib/helpers/timers.js.map +1 -0
  2332. package/build/node_modules/mongoose/lib/helpers/timers.mjs +9 -0
  2333. package/build/node_modules/mongoose/lib/helpers/timers.mjs.map +1 -0
  2334. package/build/node_modules/mongoose/lib/helpers/timestamps/setupTimestamps.js +114 -0
  2335. package/build/node_modules/mongoose/lib/helpers/timestamps/setupTimestamps.js.map +1 -0
  2336. package/build/node_modules/mongoose/lib/helpers/timestamps/setupTimestamps.mjs +112 -0
  2337. package/build/node_modules/mongoose/lib/helpers/timestamps/setupTimestamps.mjs.map +1 -0
  2338. package/build/node_modules/mongoose/lib/helpers/topology/allServersUnknown.js +14 -0
  2339. package/build/node_modules/mongoose/lib/helpers/topology/allServersUnknown.js.map +1 -0
  2340. package/build/node_modules/mongoose/lib/helpers/topology/allServersUnknown.mjs +12 -0
  2341. package/build/node_modules/mongoose/lib/helpers/topology/allServersUnknown.mjs.map +1 -0
  2342. package/build/node_modules/mongoose/lib/helpers/topology/isAtlas.js +15 -0
  2343. package/build/node_modules/mongoose/lib/helpers/topology/isAtlas.js.map +1 -0
  2344. package/build/node_modules/mongoose/lib/helpers/topology/isAtlas.mjs +13 -0
  2345. package/build/node_modules/mongoose/lib/helpers/topology/isAtlas.mjs.map +1 -0
  2346. package/build/node_modules/mongoose/lib/helpers/topology/isSSLError.js +18 -0
  2347. package/build/node_modules/mongoose/lib/helpers/topology/isSSLError.js.map +1 -0
  2348. package/build/node_modules/mongoose/lib/helpers/topology/isSSLError.mjs +16 -0
  2349. package/build/node_modules/mongoose/lib/helpers/topology/isSSLError.mjs.map +1 -0
  2350. package/build/node_modules/mongoose/lib/helpers/update/applyTimestampsToChildren.js +175 -0
  2351. package/build/node_modules/mongoose/lib/helpers/update/applyTimestampsToChildren.js.map +1 -0
  2352. package/build/node_modules/mongoose/lib/helpers/update/applyTimestampsToChildren.mjs +173 -0
  2353. package/build/node_modules/mongoose/lib/helpers/update/applyTimestampsToChildren.mjs.map +1 -0
  2354. package/build/node_modules/mongoose/lib/helpers/update/applyTimestampsToUpdate.js +124 -0
  2355. package/build/node_modules/mongoose/lib/helpers/update/applyTimestampsToUpdate.js.map +1 -0
  2356. package/build/node_modules/mongoose/lib/helpers/update/applyTimestampsToUpdate.mjs +122 -0
  2357. package/build/node_modules/mongoose/lib/helpers/update/applyTimestampsToUpdate.mjs.map +1 -0
  2358. package/build/node_modules/mongoose/lib/helpers/update/castArrayFilters.js +63 -0
  2359. package/build/node_modules/mongoose/lib/helpers/update/castArrayFilters.js.map +1 -0
  2360. package/build/node_modules/mongoose/lib/helpers/update/castArrayFilters.mjs +61 -0
  2361. package/build/node_modules/mongoose/lib/helpers/update/castArrayFilters.mjs.map +1 -0
  2362. package/build/node_modules/mongoose/lib/helpers/update/modifiedPaths.js +38 -0
  2363. package/build/node_modules/mongoose/lib/helpers/update/modifiedPaths.js.map +1 -0
  2364. package/build/node_modules/mongoose/lib/helpers/update/modifiedPaths.mjs +36 -0
  2365. package/build/node_modules/mongoose/lib/helpers/update/modifiedPaths.mjs.map +1 -0
  2366. package/build/node_modules/mongoose/lib/helpers/update/moveImmutableProperties.js +56 -0
  2367. package/build/node_modules/mongoose/lib/helpers/update/moveImmutableProperties.js.map +1 -0
  2368. package/build/node_modules/mongoose/lib/helpers/update/moveImmutableProperties.mjs +54 -0
  2369. package/build/node_modules/mongoose/lib/helpers/update/moveImmutableProperties.mjs.map +1 -0
  2370. package/build/node_modules/mongoose/lib/helpers/update/removeUnusedArrayFilters.js +21 -0
  2371. package/build/node_modules/mongoose/lib/helpers/update/removeUnusedArrayFilters.js.map +1 -0
  2372. package/build/node_modules/mongoose/lib/helpers/update/removeUnusedArrayFilters.mjs +19 -0
  2373. package/build/node_modules/mongoose/lib/helpers/update/removeUnusedArrayFilters.mjs.map +1 -0
  2374. package/build/node_modules/mongoose/lib/helpers/update/updatedPathsByArrayFilter.js +27 -0
  2375. package/build/node_modules/mongoose/lib/helpers/update/updatedPathsByArrayFilter.js.map +1 -0
  2376. package/build/node_modules/mongoose/lib/helpers/update/updatedPathsByArrayFilter.mjs +25 -0
  2377. package/build/node_modules/mongoose/lib/helpers/update/updatedPathsByArrayFilter.mjs.map +1 -0
  2378. package/build/node_modules/mongoose/lib/helpers/updateValidators.js +263 -0
  2379. package/build/node_modules/mongoose/lib/helpers/updateValidators.js.map +1 -0
  2380. package/build/node_modules/mongoose/lib/helpers/updateValidators.mjs +261 -0
  2381. package/build/node_modules/mongoose/lib/helpers/updateValidators.mjs.map +1 -0
  2382. package/build/node_modules/mongoose/lib/index.js +1208 -0
  2383. package/build/node_modules/mongoose/lib/index.js.map +1 -0
  2384. package/build/node_modules/mongoose/lib/index.mjs +1201 -0
  2385. package/build/node_modules/mongoose/lib/index.mjs.map +1 -0
  2386. package/build/node_modules/mongoose/lib/internal.js +47 -0
  2387. package/build/node_modules/mongoose/lib/internal.js.map +1 -0
  2388. package/build/node_modules/mongoose/lib/internal.mjs +45 -0
  2389. package/build/node_modules/mongoose/lib/internal.mjs.map +1 -0
  2390. package/build/node_modules/mongoose/lib/model.js +5089 -0
  2391. package/build/node_modules/mongoose/lib/model.js.map +1 -0
  2392. package/build/node_modules/mongoose/lib/model.mjs +5082 -0
  2393. package/build/node_modules/mongoose/lib/model.mjs.map +1 -0
  2394. package/build/node_modules/mongoose/lib/options/PopulateOptions.js +39 -0
  2395. package/build/node_modules/mongoose/lib/options/PopulateOptions.js.map +1 -0
  2396. package/build/node_modules/mongoose/lib/options/PopulateOptions.mjs +37 -0
  2397. package/build/node_modules/mongoose/lib/options/PopulateOptions.mjs.map +1 -0
  2398. package/build/node_modules/mongoose/lib/options/SchemaArrayOptions.js +63 -0
  2399. package/build/node_modules/mongoose/lib/options/SchemaArrayOptions.js.map +1 -0
  2400. package/build/node_modules/mongoose/lib/options/SchemaArrayOptions.mjs +61 -0
  2401. package/build/node_modules/mongoose/lib/options/SchemaArrayOptions.mjs.map +1 -0
  2402. package/build/node_modules/mongoose/lib/options/SchemaBufferOptions.js +42 -0
  2403. package/build/node_modules/mongoose/lib/options/SchemaBufferOptions.js.map +1 -0
  2404. package/build/node_modules/mongoose/lib/options/SchemaBufferOptions.mjs +40 -0
  2405. package/build/node_modules/mongoose/lib/options/SchemaBufferOptions.mjs.map +1 -0
  2406. package/build/node_modules/mongoose/lib/options/SchemaDateOptions.js +68 -0
  2407. package/build/node_modules/mongoose/lib/options/SchemaDateOptions.js.map +1 -0
  2408. package/build/node_modules/mongoose/lib/options/SchemaDateOptions.mjs +66 -0
  2409. package/build/node_modules/mongoose/lib/options/SchemaDateOptions.mjs.map +1 -0
  2410. package/build/node_modules/mongoose/lib/options/SchemaDocumentArrayOptions.js +72 -0
  2411. package/build/node_modules/mongoose/lib/options/SchemaDocumentArrayOptions.js.map +1 -0
  2412. package/build/node_modules/mongoose/lib/options/SchemaDocumentArrayOptions.mjs +70 -0
  2413. package/build/node_modules/mongoose/lib/options/SchemaDocumentArrayOptions.mjs.map +1 -0
  2414. package/build/node_modules/mongoose/lib/options/SchemaMapOptions.js +47 -0
  2415. package/build/node_modules/mongoose/lib/options/SchemaMapOptions.js.map +1 -0
  2416. package/build/node_modules/mongoose/lib/options/SchemaMapOptions.mjs +45 -0
  2417. package/build/node_modules/mongoose/lib/options/SchemaMapOptions.mjs.map +1 -0
  2418. package/build/node_modules/mongoose/lib/options/SchemaNumberOptions.js +103 -0
  2419. package/build/node_modules/mongoose/lib/options/SchemaNumberOptions.js.map +1 -0
  2420. package/build/node_modules/mongoose/lib/options/SchemaNumberOptions.mjs +101 -0
  2421. package/build/node_modules/mongoose/lib/options/SchemaNumberOptions.mjs.map +1 -0
  2422. package/build/node_modules/mongoose/lib/options/SchemaObjectIdOptions.js +67 -0
  2423. package/build/node_modules/mongoose/lib/options/SchemaObjectIdOptions.js.map +1 -0
  2424. package/build/node_modules/mongoose/lib/options/SchemaObjectIdOptions.mjs +65 -0
  2425. package/build/node_modules/mongoose/lib/options/SchemaObjectIdOptions.mjs.map +1 -0
  2426. package/build/node_modules/mongoose/lib/options/SchemaSingleNestedOptions.js +46 -0
  2427. package/build/node_modules/mongoose/lib/options/SchemaSingleNestedOptions.js.map +1 -0
  2428. package/build/node_modules/mongoose/lib/options/SchemaSingleNestedOptions.mjs +44 -0
  2429. package/build/node_modules/mongoose/lib/options/SchemaSingleNestedOptions.mjs.map +1 -0
  2430. package/build/node_modules/mongoose/lib/options/SchemaStringOptions.js +142 -0
  2431. package/build/node_modules/mongoose/lib/options/SchemaStringOptions.js.map +1 -0
  2432. package/build/node_modules/mongoose/lib/options/SchemaStringOptions.mjs +140 -0
  2433. package/build/node_modules/mongoose/lib/options/SchemaStringOptions.mjs.map +1 -0
  2434. package/build/node_modules/mongoose/lib/options/SchemaTypeOptions.js +235 -0
  2435. package/build/node_modules/mongoose/lib/options/SchemaTypeOptions.js.map +1 -0
  2436. package/build/node_modules/mongoose/lib/options/SchemaTypeOptions.mjs +233 -0
  2437. package/build/node_modules/mongoose/lib/options/SchemaTypeOptions.mjs.map +1 -0
  2438. package/build/node_modules/mongoose/lib/options/VirtualOptions.js +167 -0
  2439. package/build/node_modules/mongoose/lib/options/VirtualOptions.js.map +1 -0
  2440. package/build/node_modules/mongoose/lib/options/VirtualOptions.mjs +165 -0
  2441. package/build/node_modules/mongoose/lib/options/VirtualOptions.mjs.map +1 -0
  2442. package/build/node_modules/mongoose/lib/options/propertyOptions.js +11 -0
  2443. package/build/node_modules/mongoose/lib/options/propertyOptions.js.map +1 -0
  2444. package/build/node_modules/mongoose/lib/options/propertyOptions.mjs +9 -0
  2445. package/build/node_modules/mongoose/lib/options/propertyOptions.mjs.map +1 -0
  2446. package/build/node_modules/mongoose/lib/options/removeOptions.js +17 -0
  2447. package/build/node_modules/mongoose/lib/options/removeOptions.js.map +1 -0
  2448. package/build/node_modules/mongoose/lib/options/removeOptions.mjs +15 -0
  2449. package/build/node_modules/mongoose/lib/options/removeOptions.mjs.map +1 -0
  2450. package/build/node_modules/mongoose/lib/options/saveOptions.js +17 -0
  2451. package/build/node_modules/mongoose/lib/options/saveOptions.js.map +1 -0
  2452. package/build/node_modules/mongoose/lib/options/saveOptions.mjs +15 -0
  2453. package/build/node_modules/mongoose/lib/options/saveOptions.mjs.map +1 -0
  2454. package/build/node_modules/mongoose/lib/options.js +25 -0
  2455. package/build/node_modules/mongoose/lib/options.js.map +1 -0
  2456. package/build/node_modules/mongoose/lib/options.mjs +21 -0
  2457. package/build/node_modules/mongoose/lib/options.mjs.map +1 -0
  2458. package/build/node_modules/mongoose/lib/plugins/idGetter.js +31 -0
  2459. package/build/node_modules/mongoose/lib/plugins/idGetter.js.map +1 -0
  2460. package/build/node_modules/mongoose/lib/plugins/idGetter.mjs +29 -0
  2461. package/build/node_modules/mongoose/lib/plugins/idGetter.mjs.map +1 -0
  2462. package/build/node_modules/mongoose/lib/plugins/removeSubdocs.js +34 -0
  2463. package/build/node_modules/mongoose/lib/plugins/removeSubdocs.js.map +1 -0
  2464. package/build/node_modules/mongoose/lib/plugins/removeSubdocs.mjs +32 -0
  2465. package/build/node_modules/mongoose/lib/plugins/removeSubdocs.mjs.map +1 -0
  2466. package/build/node_modules/mongoose/lib/plugins/saveSubdocs.js +69 -0
  2467. package/build/node_modules/mongoose/lib/plugins/saveSubdocs.js.map +1 -0
  2468. package/build/node_modules/mongoose/lib/plugins/saveSubdocs.mjs +67 -0
  2469. package/build/node_modules/mongoose/lib/plugins/saveSubdocs.mjs.map +1 -0
  2470. package/build/node_modules/mongoose/lib/plugins/sharding.js +93 -0
  2471. package/build/node_modules/mongoose/lib/plugins/sharding.js.map +1 -0
  2472. package/build/node_modules/mongoose/lib/plugins/sharding.mjs +89 -0
  2473. package/build/node_modules/mongoose/lib/plugins/sharding.mjs.map +1 -0
  2474. package/build/node_modules/mongoose/lib/plugins/trackTransaction.js +96 -0
  2475. package/build/node_modules/mongoose/lib/plugins/trackTransaction.js.map +1 -0
  2476. package/build/node_modules/mongoose/lib/plugins/trackTransaction.mjs +94 -0
  2477. package/build/node_modules/mongoose/lib/plugins/trackTransaction.mjs.map +1 -0
  2478. package/build/node_modules/mongoose/lib/plugins/validateBeforeSave.js +48 -0
  2479. package/build/node_modules/mongoose/lib/plugins/validateBeforeSave.js.map +1 -0
  2480. package/build/node_modules/mongoose/lib/plugins/validateBeforeSave.mjs +46 -0
  2481. package/build/node_modules/mongoose/lib/plugins/validateBeforeSave.mjs.map +1 -0
  2482. package/build/node_modules/mongoose/lib/promise_provider.js +60 -0
  2483. package/build/node_modules/mongoose/lib/promise_provider.js.map +1 -0
  2484. package/build/node_modules/mongoose/lib/promise_provider.mjs +54 -0
  2485. package/build/node_modules/mongoose/lib/promise_provider.mjs.map +1 -0
  2486. package/build/node_modules/mongoose/lib/query.js +5588 -0
  2487. package/build/node_modules/mongoose/lib/query.js.map +1 -0
  2488. package/build/node_modules/mongoose/lib/query.mjs +5582 -0
  2489. package/build/node_modules/mongoose/lib/query.mjs.map +1 -0
  2490. package/build/node_modules/mongoose/lib/queryhelpers.js +341 -0
  2491. package/build/node_modules/mongoose/lib/queryhelpers.js.map +1 -0
  2492. package/build/node_modules/mongoose/lib/queryhelpers.mjs +339 -0
  2493. package/build/node_modules/mongoose/lib/queryhelpers.mjs.map +1 -0
  2494. package/build/node_modules/mongoose/lib/schema/SingleNestedPath.js +358 -0
  2495. package/build/node_modules/mongoose/lib/schema/SingleNestedPath.js.map +1 -0
  2496. package/build/node_modules/mongoose/lib/schema/SingleNestedPath.mjs +352 -0
  2497. package/build/node_modules/mongoose/lib/schema/SingleNestedPath.mjs.map +1 -0
  2498. package/build/node_modules/mongoose/lib/schema/array.js +676 -0
  2499. package/build/node_modules/mongoose/lib/schema/array.js.map +1 -0
  2500. package/build/node_modules/mongoose/lib/schema/array.mjs +670 -0
  2501. package/build/node_modules/mongoose/lib/schema/array.mjs.map +1 -0
  2502. package/build/node_modules/mongoose/lib/schema/boolean.js +278 -0
  2503. package/build/node_modules/mongoose/lib/schema/boolean.js.map +1 -0
  2504. package/build/node_modules/mongoose/lib/schema/boolean.mjs +276 -0
  2505. package/build/node_modules/mongoose/lib/schema/boolean.mjs.map +1 -0
  2506. package/build/node_modules/mongoose/lib/schema/buffer.js +276 -0
  2507. package/build/node_modules/mongoose/lib/schema/buffer.js.map +1 -0
  2508. package/build/node_modules/mongoose/lib/schema/buffer.mjs +274 -0
  2509. package/build/node_modules/mongoose/lib/schema/buffer.mjs.map +1 -0
  2510. package/build/node_modules/mongoose/lib/schema/date.js +411 -0
  2511. package/build/node_modules/mongoose/lib/schema/date.js.map +1 -0
  2512. package/build/node_modules/mongoose/lib/schema/date.mjs +409 -0
  2513. package/build/node_modules/mongoose/lib/schema/date.mjs.map +1 -0
  2514. package/build/node_modules/mongoose/lib/schema/decimal128.js +218 -0
  2515. package/build/node_modules/mongoose/lib/schema/decimal128.js.map +1 -0
  2516. package/build/node_modules/mongoose/lib/schema/decimal128.mjs +216 -0
  2517. package/build/node_modules/mongoose/lib/schema/decimal128.mjs.map +1 -0
  2518. package/build/node_modules/mongoose/lib/schema/documentarray.js +591 -0
  2519. package/build/node_modules/mongoose/lib/schema/documentarray.js.map +1 -0
  2520. package/build/node_modules/mongoose/lib/schema/documentarray.mjs +584 -0
  2521. package/build/node_modules/mongoose/lib/schema/documentarray.mjs.map +1 -0
  2522. package/build/node_modules/mongoose/lib/schema/index.js +52 -0
  2523. package/build/node_modules/mongoose/lib/schema/index.js.map +1 -0
  2524. package/build/node_modules/mongoose/lib/schema/index.mjs +50 -0
  2525. package/build/node_modules/mongoose/lib/schema/index.mjs.map +1 -0
  2526. package/build/node_modules/mongoose/lib/schema/map.js +84 -0
  2527. package/build/node_modules/mongoose/lib/schema/map.js.map +1 -0
  2528. package/build/node_modules/mongoose/lib/schema/map.mjs +82 -0
  2529. package/build/node_modules/mongoose/lib/schema/map.mjs.map +1 -0
  2530. package/build/node_modules/mongoose/lib/schema/mixed.js +140 -0
  2531. package/build/node_modules/mongoose/lib/schema/mixed.js.map +1 -0
  2532. package/build/node_modules/mongoose/lib/schema/mixed.mjs +138 -0
  2533. package/build/node_modules/mongoose/lib/schema/mixed.mjs.map +1 -0
  2534. package/build/node_modules/mongoose/lib/schema/number.js +443 -0
  2535. package/build/node_modules/mongoose/lib/schema/number.js.map +1 -0
  2536. package/build/node_modules/mongoose/lib/schema/number.mjs +441 -0
  2537. package/build/node_modules/mongoose/lib/schema/number.mjs.map +1 -0
  2538. package/build/node_modules/mongoose/lib/schema/objectid.js +307 -0
  2539. package/build/node_modules/mongoose/lib/schema/objectid.js.map +1 -0
  2540. package/build/node_modules/mongoose/lib/schema/objectid.mjs +305 -0
  2541. package/build/node_modules/mongoose/lib/schema/objectid.mjs.map +1 -0
  2542. package/build/node_modules/mongoose/lib/schema/operators/bitwise.js +43 -0
  2543. package/build/node_modules/mongoose/lib/schema/operators/bitwise.js.map +1 -0
  2544. package/build/node_modules/mongoose/lib/schema/operators/bitwise.mjs +41 -0
  2545. package/build/node_modules/mongoose/lib/schema/operators/bitwise.mjs.map +1 -0
  2546. package/build/node_modules/mongoose/lib/schema/operators/exists.js +15 -0
  2547. package/build/node_modules/mongoose/lib/schema/operators/exists.js.map +1 -0
  2548. package/build/node_modules/mongoose/lib/schema/operators/exists.mjs +13 -0
  2549. package/build/node_modules/mongoose/lib/schema/operators/exists.mjs.map +1 -0
  2550. package/build/node_modules/mongoose/lib/schema/operators/geospatial.js +121 -0
  2551. package/build/node_modules/mongoose/lib/schema/operators/geospatial.js.map +1 -0
  2552. package/build/node_modules/mongoose/lib/schema/operators/geospatial.mjs +115 -0
  2553. package/build/node_modules/mongoose/lib/schema/operators/geospatial.mjs.map +1 -0
  2554. package/build/node_modules/mongoose/lib/schema/operators/helpers.js +46 -0
  2555. package/build/node_modules/mongoose/lib/schema/operators/helpers.js.map +1 -0
  2556. package/build/node_modules/mongoose/lib/schema/operators/helpers.mjs +41 -0
  2557. package/build/node_modules/mongoose/lib/schema/operators/helpers.mjs.map +1 -0
  2558. package/build/node_modules/mongoose/lib/schema/operators/text.js +42 -0
  2559. package/build/node_modules/mongoose/lib/schema/operators/text.js.map +1 -0
  2560. package/build/node_modules/mongoose/lib/schema/operators/text.mjs +40 -0
  2561. package/build/node_modules/mongoose/lib/schema/operators/text.mjs.map +1 -0
  2562. package/build/node_modules/mongoose/lib/schema/operators/type.js +23 -0
  2563. package/build/node_modules/mongoose/lib/schema/operators/type.js.map +1 -0
  2564. package/build/node_modules/mongoose/lib/schema/operators/type.mjs +21 -0
  2565. package/build/node_modules/mongoose/lib/schema/operators/type.mjs.map +1 -0
  2566. package/build/node_modules/mongoose/lib/schema/string.js +681 -0
  2567. package/build/node_modules/mongoose/lib/schema/string.js.map +1 -0
  2568. package/build/node_modules/mongoose/lib/schema/string.mjs +679 -0
  2569. package/build/node_modules/mongoose/lib/schema/string.mjs.map +1 -0
  2570. package/build/node_modules/mongoose/lib/schema/symbols.js +17 -0
  2571. package/build/node_modules/mongoose/lib/schema/symbols.js.map +1 -0
  2572. package/build/node_modules/mongoose/lib/schema/symbols.mjs +12 -0
  2573. package/build/node_modules/mongoose/lib/schema/symbols.mjs.map +1 -0
  2574. package/build/node_modules/mongoose/lib/schema.js +2205 -0
  2575. package/build/node_modules/mongoose/lib/schema.js.map +1 -0
  2576. package/build/node_modules/mongoose/lib/schema.mjs +2198 -0
  2577. package/build/node_modules/mongoose/lib/schema.mjs.map +1 -0
  2578. package/build/node_modules/mongoose/lib/schematype.js +1694 -0
  2579. package/build/node_modules/mongoose/lib/schematype.js.map +1 -0
  2580. package/build/node_modules/mongoose/lib/schematype.mjs +1688 -0
  2581. package/build/node_modules/mongoose/lib/schematype.mjs.map +1 -0
  2582. package/build/node_modules/mongoose/lib/statemachine.js +184 -0
  2583. package/build/node_modules/mongoose/lib/statemachine.js.map +1 -0
  2584. package/build/node_modules/mongoose/lib/statemachine.mjs +182 -0
  2585. package/build/node_modules/mongoose/lib/statemachine.mjs.map +1 -0
  2586. package/build/node_modules/mongoose/lib/types/array.js +91 -0
  2587. package/build/node_modules/mongoose/lib/types/array.js.map +1 -0
  2588. package/build/node_modules/mongoose/lib/types/array.mjs +89 -0
  2589. package/build/node_modules/mongoose/lib/types/array.mjs.map +1 -0
  2590. package/build/node_modules/mongoose/lib/types/buffer.js +283 -0
  2591. package/build/node_modules/mongoose/lib/types/buffer.js.map +1 -0
  2592. package/build/node_modules/mongoose/lib/types/buffer.mjs +281 -0
  2593. package/build/node_modules/mongoose/lib/types/buffer.mjs.map +1 -0
  2594. package/build/node_modules/mongoose/lib/types/core_array.js +982 -0
  2595. package/build/node_modules/mongoose/lib/types/core_array.js.map +1 -0
  2596. package/build/node_modules/mongoose/lib/types/core_array.mjs +976 -0
  2597. package/build/node_modules/mongoose/lib/types/core_array.mjs.map +1 -0
  2598. package/build/node_modules/mongoose/lib/types/decimal128.js +18 -0
  2599. package/build/node_modules/mongoose/lib/types/decimal128.js.map +1 -0
  2600. package/build/node_modules/mongoose/lib/types/decimal128.mjs +16 -0
  2601. package/build/node_modules/mongoose/lib/types/decimal128.mjs.map +1 -0
  2602. package/build/node_modules/mongoose/lib/types/documentarray.js +462 -0
  2603. package/build/node_modules/mongoose/lib/types/documentarray.js.map +1 -0
  2604. package/build/node_modules/mongoose/lib/types/documentarray.mjs +456 -0
  2605. package/build/node_modules/mongoose/lib/types/documentarray.mjs.map +1 -0
  2606. package/build/node_modules/mongoose/lib/types/embedded.js +474 -0
  2607. package/build/node_modules/mongoose/lib/types/embedded.js.map +1 -0
  2608. package/build/node_modules/mongoose/lib/types/embedded.mjs +467 -0
  2609. package/build/node_modules/mongoose/lib/types/embedded.mjs.map +1 -0
  2610. package/build/node_modules/mongoose/lib/types/index.js +31 -0
  2611. package/build/node_modules/mongoose/lib/types/index.js.map +1 -0
  2612. package/build/node_modules/mongoose/lib/types/index.mjs +29 -0
  2613. package/build/node_modules/mongoose/lib/types/index.mjs.map +1 -0
  2614. package/build/node_modules/mongoose/lib/types/map.js +252 -0
  2615. package/build/node_modules/mongoose/lib/types/map.js.map +1 -0
  2616. package/build/node_modules/mongoose/lib/types/map.mjs +246 -0
  2617. package/build/node_modules/mongoose/lib/types/map.mjs.map +1 -0
  2618. package/build/node_modules/mongoose/lib/types/objectid.js +36 -0
  2619. package/build/node_modules/mongoose/lib/types/objectid.js.map +1 -0
  2620. package/build/node_modules/mongoose/lib/types/objectid.mjs +34 -0
  2621. package/build/node_modules/mongoose/lib/types/objectid.mjs.map +1 -0
  2622. package/build/node_modules/mongoose/lib/types/subdocument.js +308 -0
  2623. package/build/node_modules/mongoose/lib/types/subdocument.js.map +1 -0
  2624. package/build/node_modules/mongoose/lib/types/subdocument.mjs +306 -0
  2625. package/build/node_modules/mongoose/lib/types/subdocument.mjs.map +1 -0
  2626. package/build/node_modules/mongoose/lib/utils.js +962 -0
  2627. package/build/node_modules/mongoose/lib/utils.js.map +1 -0
  2628. package/build/node_modules/mongoose/lib/utils.mjs +960 -0
  2629. package/build/node_modules/mongoose/lib/utils.mjs.map +1 -0
  2630. package/build/node_modules/mongoose/lib/validoptions.js +39 -0
  2631. package/build/node_modules/mongoose/lib/validoptions.js.map +1 -0
  2632. package/build/node_modules/mongoose/lib/validoptions.mjs +37 -0
  2633. package/build/node_modules/mongoose/lib/validoptions.mjs.map +1 -0
  2634. package/build/node_modules/mongoose/lib/virtualtype.js +179 -0
  2635. package/build/node_modules/mongoose/lib/virtualtype.js.map +1 -0
  2636. package/build/node_modules/mongoose/lib/virtualtype.mjs +177 -0
  2637. package/build/node_modules/mongoose/lib/virtualtype.mjs.map +1 -0
  2638. package/build/node_modules/mongoose/node_modules/safe-buffer/index.js +80 -0
  2639. package/build/node_modules/mongoose/node_modules/safe-buffer/index.js.map +1 -0
  2640. package/build/node_modules/mongoose/node_modules/safe-buffer/index.mjs +74 -0
  2641. package/build/node_modules/mongoose/node_modules/safe-buffer/index.mjs.map +1 -0
  2642. package/build/node_modules/mongoose/package.json.js +299 -0
  2643. package/build/node_modules/mongoose/package.json.js.map +1 -0
  2644. package/build/node_modules/mongoose/package.mjs +277 -0
  2645. package/build/node_modules/mongoose/package.mjs.map +1 -0
  2646. package/build/node_modules/mongoose-legacy-pluralize/index.js +104 -0
  2647. package/build/node_modules/mongoose-legacy-pluralize/index.js.map +1 -0
  2648. package/build/node_modules/mongoose-legacy-pluralize/index.mjs +102 -0
  2649. package/build/node_modules/mongoose-legacy-pluralize/index.mjs.map +1 -0
  2650. package/build/node_modules/mpath/index.js +12 -0
  2651. package/build/node_modules/mpath/index.js.map +1 -0
  2652. package/build/node_modules/mpath/index.mjs +10 -0
  2653. package/build/node_modules/mpath/index.mjs.map +1 -0
  2654. package/build/node_modules/mpath/lib/index.js +325 -0
  2655. package/build/node_modules/mpath/lib/index.js.map +1 -0
  2656. package/build/node_modules/mpath/lib/index.mjs +323 -0
  2657. package/build/node_modules/mpath/lib/index.mjs.map +1 -0
  2658. package/build/node_modules/mpath/lib/stringToParts.js +51 -0
  2659. package/build/node_modules/mpath/lib/stringToParts.js.map +1 -0
  2660. package/build/node_modules/mpath/lib/stringToParts.mjs +49 -0
  2661. package/build/node_modules/mpath/lib/stringToParts.mjs.map +1 -0
  2662. package/build/node_modules/mquery/lib/collection/collection.js +54 -0
  2663. package/build/node_modules/mquery/lib/collection/collection.js.map +1 -0
  2664. package/build/node_modules/mquery/lib/collection/collection.mjs +52 -0
  2665. package/build/node_modules/mquery/lib/collection/collection.mjs.map +1 -0
  2666. package/build/node_modules/mquery/lib/collection/index.js +17 -0
  2667. package/build/node_modules/mquery/lib/collection/index.js.map +1 -0
  2668. package/build/node_modules/mquery/lib/collection/index.mjs +15 -0
  2669. package/build/node_modules/mquery/lib/collection/index.mjs.map +1 -0
  2670. package/build/node_modules/mquery/lib/collection/node.js +161 -0
  2671. package/build/node_modules/mquery/lib/collection/node.js.map +1 -0
  2672. package/build/node_modules/mquery/lib/collection/node.mjs +159 -0
  2673. package/build/node_modules/mquery/lib/collection/node.mjs.map +1 -0
  2674. package/build/node_modules/mquery/lib/env.js +30 -0
  2675. package/build/node_modules/mquery/lib/env.js.map +1 -0
  2676. package/build/node_modules/mquery/lib/env.mjs +28 -0
  2677. package/build/node_modules/mquery/lib/env.mjs.map +1 -0
  2678. package/build/node_modules/mquery/lib/mquery.js +3276 -0
  2679. package/build/node_modules/mquery/lib/mquery.js.map +1 -0
  2680. package/build/node_modules/mquery/lib/mquery.mjs +3268 -0
  2681. package/build/node_modules/mquery/lib/mquery.mjs.map +1 -0
  2682. package/build/node_modules/mquery/lib/permissions.js +96 -0
  2683. package/build/node_modules/mquery/lib/permissions.js.map +1 -0
  2684. package/build/node_modules/mquery/lib/permissions.mjs +94 -0
  2685. package/build/node_modules/mquery/lib/permissions.mjs.map +1 -0
  2686. package/build/node_modules/mquery/lib/utils.js +373 -0
  2687. package/build/node_modules/mquery/lib/utils.js.map +1 -0
  2688. package/build/node_modules/mquery/lib/utils.mjs +371 -0
  2689. package/build/node_modules/mquery/lib/utils.mjs.map +1 -0
  2690. package/build/node_modules/ms/index.js +166 -0
  2691. package/build/node_modules/ms/index.js.map +1 -0
  2692. package/build/node_modules/ms/index.mjs +164 -0
  2693. package/build/node_modules/ms/index.mjs.map +1 -0
  2694. package/build/node_modules/optional-require/index.js +82 -0
  2695. package/build/node_modules/optional-require/index.js.map +1 -0
  2696. package/build/node_modules/optional-require/index.mjs +76 -0
  2697. package/build/node_modules/optional-require/index.mjs.map +1 -0
  2698. package/build/node_modules/process-nextick-args/index.js +52 -0
  2699. package/build/node_modules/process-nextick-args/index.js.map +1 -0
  2700. package/build/node_modules/process-nextick-args/index.mjs +50 -0
  2701. package/build/node_modules/process-nextick-args/index.mjs.map +1 -0
  2702. package/build/node_modules/redis/index.js +1136 -0
  2703. package/build/node_modules/redis/index.js.map +1 -0
  2704. package/build/node_modules/redis/index.mjs +1127 -0
  2705. package/build/node_modules/redis/index.mjs.map +1 -0
  2706. package/build/node_modules/redis/lib/command.js +19 -0
  2707. package/build/node_modules/redis/lib/command.js.map +1 -0
  2708. package/build/node_modules/redis/lib/command.mjs +17 -0
  2709. package/build/node_modules/redis/lib/command.mjs.map +1 -0
  2710. package/build/node_modules/redis/lib/commands.js +127 -0
  2711. package/build/node_modules/redis/lib/commands.js.map +1 -0
  2712. package/build/node_modules/redis/lib/commands.mjs +125 -0
  2713. package/build/node_modules/redis/lib/commands.mjs.map +1 -0
  2714. package/build/node_modules/redis/lib/createClient.js +87 -0
  2715. package/build/node_modules/redis/lib/createClient.js.map +1 -0
  2716. package/build/node_modules/redis/lib/createClient.mjs +81 -0
  2717. package/build/node_modules/redis/lib/createClient.mjs.map +1 -0
  2718. package/build/node_modules/redis/lib/customErrors.js +69 -0
  2719. package/build/node_modules/redis/lib/customErrors.js.map +1 -0
  2720. package/build/node_modules/redis/lib/customErrors.mjs +62 -0
  2721. package/build/node_modules/redis/lib/customErrors.mjs.map +1 -0
  2722. package/build/node_modules/redis/lib/debug.js +14 -0
  2723. package/build/node_modules/redis/lib/debug.js.map +1 -0
  2724. package/build/node_modules/redis/lib/debug.mjs +12 -0
  2725. package/build/node_modules/redis/lib/debug.mjs.map +1 -0
  2726. package/build/node_modules/redis/lib/extendedApi.js +117 -0
  2727. package/build/node_modules/redis/lib/extendedApi.js.map +1 -0
  2728. package/build/node_modules/redis/lib/extendedApi.mjs +115 -0
  2729. package/build/node_modules/redis/lib/extendedApi.mjs.map +1 -0
  2730. package/build/node_modules/redis/lib/individualCommands.js +620 -0
  2731. package/build/node_modules/redis/lib/individualCommands.js.map +1 -0
  2732. package/build/node_modules/redis/lib/individualCommands.mjs +618 -0
  2733. package/build/node_modules/redis/lib/individualCommands.mjs.map +1 -0
  2734. package/build/node_modules/redis/lib/multi.js +190 -0
  2735. package/build/node_modules/redis/lib/multi.js.map +1 -0
  2736. package/build/node_modules/redis/lib/multi.mjs +188 -0
  2737. package/build/node_modules/redis/lib/multi.mjs.map +1 -0
  2738. package/build/node_modules/redis/lib/utils.js +137 -0
  2739. package/build/node_modules/redis/lib/utils.js.map +1 -0
  2740. package/build/node_modules/redis/lib/utils.mjs +135 -0
  2741. package/build/node_modules/redis/lib/utils.mjs.map +1 -0
  2742. package/build/node_modules/redis-commands/commands.json.js +2785 -0
  2743. package/build/node_modules/redis-commands/commands.json.js.map +1 -0
  2744. package/build/node_modules/redis-commands/commands.mjs +2560 -0
  2745. package/build/node_modules/redis-commands/commands.mjs.map +1 -0
  2746. package/build/node_modules/redis-commands/index.js +177 -0
  2747. package/build/node_modules/redis-commands/index.js.map +1 -0
  2748. package/build/node_modules/redis-commands/index.mjs +175 -0
  2749. package/build/node_modules/redis-commands/index.mjs.map +1 -0
  2750. package/build/node_modules/redis-parser/index.js +21 -0
  2751. package/build/node_modules/redis-parser/index.js.map +1 -0
  2752. package/build/node_modules/redis-parser/index.mjs +15 -0
  2753. package/build/node_modules/redis-parser/index.mjs.map +1 -0
  2754. package/build/node_modules/redis-parser/lib/hiredis.js +69 -0
  2755. package/build/node_modules/redis-parser/lib/hiredis.js.map +1 -0
  2756. package/build/node_modules/redis-parser/lib/hiredis.mjs +63 -0
  2757. package/build/node_modules/redis-parser/lib/hiredis.mjs.map +1 -0
  2758. package/build/node_modules/redis-parser/lib/parser.js +593 -0
  2759. package/build/node_modules/redis-parser/lib/parser.js.map +1 -0
  2760. package/build/node_modules/redis-parser/lib/parser.mjs +587 -0
  2761. package/build/node_modules/redis-parser/lib/parser.mjs.map +1 -0
  2762. package/build/node_modules/redis-parser/lib/parserError.js +34 -0
  2763. package/build/node_modules/redis-parser/lib/parserError.js.map +1 -0
  2764. package/build/node_modules/redis-parser/lib/parserError.mjs +27 -0
  2765. package/build/node_modules/redis-parser/lib/parserError.mjs.map +1 -0
  2766. package/build/node_modules/redis-parser/lib/redisError.js +31 -0
  2767. package/build/node_modules/redis-parser/lib/redisError.js.map +1 -0
  2768. package/build/node_modules/redis-parser/lib/redisError.mjs +25 -0
  2769. package/build/node_modules/redis-parser/lib/redisError.mjs.map +1 -0
  2770. package/build/node_modules/redis-parser/lib/replyError.js +31 -0
  2771. package/build/node_modules/redis-parser/lib/replyError.js.map +1 -0
  2772. package/build/node_modules/redis-parser/lib/replyError.mjs +25 -0
  2773. package/build/node_modules/redis-parser/lib/replyError.mjs.map +1 -0
  2774. package/build/node_modules/regexp-clone/index.js +34 -0
  2775. package/build/node_modules/regexp-clone/index.js.map +1 -0
  2776. package/build/node_modules/regexp-clone/index.mjs +32 -0
  2777. package/build/node_modules/regexp-clone/index.mjs.map +1 -0
  2778. package/build/node_modules/safe-buffer/index.js +76 -0
  2779. package/build/node_modules/safe-buffer/index.js.map +1 -0
  2780. package/build/node_modules/safe-buffer/index.mjs +70 -0
  2781. package/build/node_modules/safe-buffer/index.mjs.map +1 -0
  2782. package/build/node_modules/saslprep/index.js +162 -0
  2783. package/build/node_modules/saslprep/index.js.map +1 -0
  2784. package/build/node_modules/saslprep/index.mjs +160 -0
  2785. package/build/node_modules/saslprep/index.mjs.map +1 -0
  2786. package/build/node_modules/saslprep/lib/memory-code-points.js +47 -0
  2787. package/build/node_modules/saslprep/lib/memory-code-points.js.map +1 -0
  2788. package/build/node_modules/saslprep/lib/memory-code-points.mjs +40 -0
  2789. package/build/node_modules/saslprep/lib/memory-code-points.mjs.map +1 -0
  2790. package/build/node_modules/sift/es5m/index.js +683 -0
  2791. package/build/node_modules/sift/es5m/index.js.map +1 -0
  2792. package/build/node_modules/sift/es5m/index.mjs +652 -0
  2793. package/build/node_modules/sift/es5m/index.mjs.map +1 -0
  2794. package/build/node_modules/sliced/index.js +36 -0
  2795. package/build/node_modules/sliced/index.js.map +1 -0
  2796. package/build/node_modules/sliced/index.mjs +34 -0
  2797. package/build/node_modules/sliced/index.mjs.map +1 -0
  2798. package/build/node_modules/sparse-bitfield/index.js +100 -0
  2799. package/build/node_modules/sparse-bitfield/index.js.map +1 -0
  2800. package/build/node_modules/sparse-bitfield/index.mjs +98 -0
  2801. package/build/node_modules/sparse-bitfield/index.mjs.map +1 -0
  2802. package/build/node_modules/util-deprecate/node.js +16 -0
  2803. package/build/node_modules/util-deprecate/node.js.map +1 -0
  2804. package/build/node_modules/util-deprecate/node.mjs +10 -0
  2805. package/build/node_modules/util-deprecate/node.mjs.map +1 -0
  2806. package/build/node_modules/ws/index.js +17 -0
  2807. package/build/node_modules/ws/index.js.map +1 -0
  2808. package/build/node_modules/ws/index.mjs +15 -0
  2809. package/build/node_modules/ws/index.mjs.map +1 -0
  2810. package/build/node_modules/ws/lib/buffer-util.js +143 -0
  2811. package/build/node_modules/ws/lib/buffer-util.js.map +1 -0
  2812. package/build/node_modules/ws/lib/buffer-util.mjs +137 -0
  2813. package/build/node_modules/ws/lib/buffer-util.mjs.map +1 -0
  2814. package/build/node_modules/ws/lib/constants.js +13 -0
  2815. package/build/node_modules/ws/lib/constants.js.map +1 -0
  2816. package/build/node_modules/ws/lib/constants.mjs +11 -0
  2817. package/build/node_modules/ws/lib/constants.mjs.map +1 -0
  2818. package/build/node_modules/ws/lib/event-target.js +187 -0
  2819. package/build/node_modules/ws/lib/event-target.js.map +1 -0
  2820. package/build/node_modules/ws/lib/event-target.mjs +185 -0
  2821. package/build/node_modules/ws/lib/event-target.mjs.map +1 -0
  2822. package/build/node_modules/ws/lib/extension.js +226 -0
  2823. package/build/node_modules/ws/lib/extension.js.map +1 -0
  2824. package/build/node_modules/ws/lib/extension.mjs +224 -0
  2825. package/build/node_modules/ws/lib/extension.mjs.map +1 -0
  2826. package/build/node_modules/ws/lib/limiter.js +58 -0
  2827. package/build/node_modules/ws/lib/limiter.js.map +1 -0
  2828. package/build/node_modules/ws/lib/limiter.mjs +56 -0
  2829. package/build/node_modules/ws/lib/limiter.mjs.map +1 -0
  2830. package/build/node_modules/ws/lib/permessage-deflate.js +526 -0
  2831. package/build/node_modules/ws/lib/permessage-deflate.js.map +1 -0
  2832. package/build/node_modules/ws/lib/permessage-deflate.mjs +520 -0
  2833. package/build/node_modules/ws/lib/permessage-deflate.mjs.map +1 -0
  2834. package/build/node_modules/ws/lib/receiver.js +620 -0
  2835. package/build/node_modules/ws/lib/receiver.js.map +1 -0
  2836. package/build/node_modules/ws/lib/receiver.mjs +614 -0
  2837. package/build/node_modules/ws/lib/receiver.mjs.map +1 -0
  2838. package/build/node_modules/ws/lib/sender.js +424 -0
  2839. package/build/node_modules/ws/lib/sender.js.map +1 -0
  2840. package/build/node_modules/ws/lib/sender.mjs +418 -0
  2841. package/build/node_modules/ws/lib/sender.mjs.map +1 -0
  2842. package/build/node_modules/ws/lib/stream.js +186 -0
  2843. package/build/node_modules/ws/lib/stream.js.map +1 -0
  2844. package/build/node_modules/ws/lib/stream.mjs +180 -0
  2845. package/build/node_modules/ws/lib/stream.mjs.map +1 -0
  2846. package/build/node_modules/ws/lib/validation.js +117 -0
  2847. package/build/node_modules/ws/lib/validation.js.map +1 -0
  2848. package/build/node_modules/ws/lib/validation.mjs +111 -0
  2849. package/build/node_modules/ws/lib/validation.mjs.map +1 -0
  2850. package/build/node_modules/ws/lib/websocket-server.js +467 -0
  2851. package/build/node_modules/ws/lib/websocket-server.js.map +1 -0
  2852. package/build/node_modules/ws/lib/websocket-server.mjs +459 -0
  2853. package/build/node_modules/ws/lib/websocket-server.mjs.map +1 -0
  2854. package/build/node_modules/ws/lib/websocket.js +1138 -0
  2855. package/build/node_modules/ws/lib/websocket.js.map +1 -0
  2856. package/build/node_modules/ws/lib/websocket.mjs +1126 -0
  2857. package/build/node_modules/ws/lib/websocket.mjs.map +1 -0
  2858. package/build/packages/core/src/Debug.js +34 -0
  2859. package/build/packages/core/src/Debug.js.map +1 -0
  2860. package/build/packages/core/src/Debug.mjs +20 -0
  2861. package/build/packages/core/src/Debug.mjs.map +1 -0
  2862. package/build/packages/core/src/IPC.js +65 -0
  2863. package/build/packages/core/src/IPC.js.map +1 -0
  2864. package/build/packages/core/src/IPC.mjs +60 -0
  2865. package/build/packages/core/src/IPC.mjs.map +1 -0
  2866. package/build/packages/core/src/Logger.js +12 -0
  2867. package/build/packages/core/src/Logger.js.map +1 -0
  2868. package/build/packages/core/src/Logger.mjs +8 -0
  2869. package/build/packages/core/src/Logger.mjs.map +1 -0
  2870. package/build/packages/core/src/MatchMaker.js +401 -0
  2871. package/build/packages/core/src/MatchMaker.js.map +1 -0
  2872. package/build/packages/core/src/MatchMaker.mjs +382 -0
  2873. package/build/packages/core/src/MatchMaker.mjs.map +1 -0
  2874. package/build/packages/core/src/Protocol.js +164 -0
  2875. package/build/packages/core/src/Protocol.js.map +1 -0
  2876. package/build/packages/core/src/Protocol.mjs +154 -0
  2877. package/build/packages/core/src/Protocol.mjs.map +1 -0
  2878. package/build/packages/core/src/Room.js +569 -0
  2879. package/build/packages/core/src/Room.js.map +1 -0
  2880. package/build/packages/core/src/Room.mjs +559 -0
  2881. package/build/packages/core/src/Room.mjs.map +1 -0
  2882. package/build/packages/core/src/Server.js +222 -0
  2883. package/build/packages/core/src/Server.js.map +1 -0
  2884. package/build/packages/core/src/Server.mjs +218 -0
  2885. package/build/packages/core/src/Server.mjs.map +1 -0
  2886. package/build/packages/core/src/Transport.js +17 -0
  2887. package/build/packages/core/src/Transport.js.map +1 -0
  2888. package/build/packages/core/src/Transport.mjs +13 -0
  2889. package/build/packages/core/src/Transport.mjs.map +1 -0
  2890. package/build/packages/core/src/Utils.js +225 -0
  2891. package/build/packages/core/src/Utils.js.map +1 -0
  2892. package/build/packages/core/src/Utils.mjs +209 -0
  2893. package/build/packages/core/src/Utils.mjs.map +1 -0
  2894. package/build/packages/core/src/discovery/index.js +31 -0
  2895. package/build/packages/core/src/discovery/index.js.map +1 -0
  2896. package/build/packages/core/src/discovery/index.mjs +22 -0
  2897. package/build/packages/core/src/discovery/index.mjs.map +1 -0
  2898. package/build/packages/core/src/errors/SeatReservationError.js +12 -0
  2899. package/build/packages/core/src/errors/SeatReservationError.js.map +1 -0
  2900. package/build/packages/core/src/errors/SeatReservationError.mjs +8 -0
  2901. package/build/packages/core/src/errors/SeatReservationError.mjs.map +1 -0
  2902. package/build/packages/core/src/errors/ServerError.js +21 -0
  2903. package/build/packages/core/src/errors/ServerError.js.map +1 -0
  2904. package/build/packages/core/src/errors/ServerError.mjs +17 -0
  2905. package/build/packages/core/src/errors/ServerError.mjs.map +1 -0
  2906. package/build/packages/core/src/index.js +96 -0
  2907. package/build/packages/core/src/index.js.map +1 -0
  2908. package/build/packages/core/src/index.mjs +19 -0
  2909. package/build/packages/core/src/index.mjs.map +1 -0
  2910. package/build/packages/core/src/matchmaker/Lobby.js +31 -0
  2911. package/build/packages/core/src/matchmaker/Lobby.js.map +1 -0
  2912. package/build/packages/core/src/matchmaker/Lobby.mjs +26 -0
  2913. package/build/packages/core/src/matchmaker/Lobby.mjs.map +1 -0
  2914. package/build/packages/core/src/matchmaker/RegisteredHandler.js +72 -0
  2915. package/build/packages/core/src/matchmaker/RegisteredHandler.js.map +1 -0
  2916. package/build/packages/core/src/matchmaker/RegisteredHandler.mjs +67 -0
  2917. package/build/packages/core/src/matchmaker/RegisteredHandler.mjs.map +1 -0
  2918. package/build/packages/core/src/matchmaker/controller.js +46 -0
  2919. package/build/packages/core/src/matchmaker/controller.js.map +1 -0
  2920. package/build/packages/core/src/matchmaker/controller.mjs +39 -0
  2921. package/build/packages/core/src/matchmaker/controller.mjs.map +1 -0
  2922. package/build/packages/core/src/matchmaker/driver/Query.js +53 -0
  2923. package/build/packages/core/src/matchmaker/driver/Query.js.map +1 -0
  2924. package/build/packages/core/src/matchmaker/driver/Query.mjs +49 -0
  2925. package/build/packages/core/src/matchmaker/driver/Query.mjs.map +1 -0
  2926. package/build/packages/core/src/matchmaker/driver/RoomData.js +80 -0
  2927. package/build/packages/core/src/matchmaker/driver/RoomData.js.map +1 -0
  2928. package/build/packages/core/src/matchmaker/driver/RoomData.mjs +76 -0
  2929. package/build/packages/core/src/matchmaker/driver/RoomData.mjs.map +1 -0
  2930. package/build/packages/core/src/matchmaker/driver/index.js +34 -0
  2931. package/build/packages/core/src/matchmaker/driver/index.js.map +1 -0
  2932. package/build/packages/core/src/matchmaker/driver/index.mjs +30 -0
  2933. package/build/packages/core/src/matchmaker/driver/index.mjs.map +1 -0
  2934. package/build/packages/core/src/presence/LocalPresence.js +156 -0
  2935. package/build/packages/core/src/presence/LocalPresence.js.map +1 -0
  2936. package/build/packages/core/src/presence/LocalPresence.mjs +152 -0
  2937. package/build/packages/core/src/presence/LocalPresence.mjs.map +1 -0
  2938. package/build/packages/core/src/rooms/LobbyRoom.js +101 -0
  2939. package/build/packages/core/src/rooms/LobbyRoom.js.map +1 -0
  2940. package/build/packages/core/src/rooms/LobbyRoom.mjs +97 -0
  2941. package/build/packages/core/src/rooms/LobbyRoom.mjs.map +1 -0
  2942. package/build/packages/core/src/rooms/RelayRoom.js +79 -0
  2943. package/build/packages/core/src/rooms/RelayRoom.js.map +1 -0
  2944. package/build/packages/core/src/rooms/RelayRoom.mjs +75 -0
  2945. package/build/packages/core/src/rooms/RelayRoom.mjs.map +1 -0
  2946. package/build/packages/core/src/serializer/NoneSerializer.js +19 -0
  2947. package/build/packages/core/src/serializer/NoneSerializer.js.map +1 -0
  2948. package/build/packages/core/src/serializer/NoneSerializer.mjs +15 -0
  2949. package/build/packages/core/src/serializer/NoneSerializer.mjs.map +1 -0
  2950. package/build/packages/core/src/serializer/SchemaSerializer.js +85 -0
  2951. package/build/packages/core/src/serializer/SchemaSerializer.js.map +1 -0
  2952. package/build/packages/core/src/serializer/SchemaSerializer.mjs +81 -0
  2953. package/build/packages/core/src/serializer/SchemaSerializer.mjs.map +1 -0
  2954. package/build/packages/drivers/mongoose-driver/build/index.mjs +23 -0
  2955. package/build/packages/drivers/mongoose-driver/build/index.mjs.js +25 -0
  2956. package/build/packages/drivers/mongoose-driver/build/index.mjs.js.map +1 -0
  2957. package/build/packages/drivers/mongoose-driver/build/index.mjs.map +1 -0
  2958. package/build/packages/transport/ws-transport/build/WebSocketClient.mjs +70 -0
  2959. package/build/packages/transport/ws-transport/build/WebSocketClient.mjs.js +74 -0
  2960. package/build/packages/transport/ws-transport/build/WebSocketClient.mjs.js.map +1 -0
  2961. package/build/packages/transport/ws-transport/build/WebSocketClient.mjs.map +1 -0
  2962. package/build/packages/transport/ws-transport/build/WebSocketTransport.mjs +102 -0
  2963. package/build/packages/transport/ws-transport/build/WebSocketTransport.mjs.js +110 -0
  2964. package/build/packages/transport/ws-transport/build/WebSocketTransport.mjs.js.map +1 -0
  2965. package/build/packages/transport/ws-transport/build/WebSocketTransport.mjs.map +1 -0
  2966. package/build/rooms/LobbyRoom.js +4 -4
  2967. package/build/rooms/LobbyRoom.js.map +1 -1
  2968. package/build/rooms/LobbyRoom.mjs +4 -4
  2969. package/build/rooms/LobbyRoom.mjs.map +1 -1
  2970. 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;
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ //
6
+ exports.logger = console;
7
+ function setLogger(instance) {
8
+ exports.logger = instance;
9
+ }
10
+
11
+ exports.setLogger = setLogger;
12
+ //# sourceMappingURL=Logger.js.map
@@ -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;;;;"}
@@ -0,0 +1,8 @@
1
+ //
2
+ let logger = console;
3
+ function setLogger(instance) {
4
+ logger = instance;
5
+ }
6
+
7
+ export { logger, setLogger };
8
+ //# sourceMappingURL=Logger.mjs.map
@@ -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
@@ -77,6 +77,8 @@ class Room {
77
77
  this._events.emit('disconnect');
78
78
  });
79
79
  this.setPatchRate(this.patchRate);
80
+ // set default _autoDisposeTimeout
81
+ this.resetAutoDisposeTimeout(this.seatReservationTime);
80
82
  }
81
83
  onAuth(client, options, request) {
82
84
  return true;
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":";;;;;;;;;;;;;;;;;;;;;AAsBA,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAE,CAAC;AACrC,MAAM,2BAA2B,GAAG,IAAI,GAAG,EAAE,CAAC;AAC9C,MAAM,cAAc,GAAG,IAAIA,6BAAc,EAAE,CAAC;MAE/B,6BAA6B,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,IAAI,EAAE,EAAE;AAU1FC;AAAZ,WAAY,iBAAiB;IAC3B,iEAAY,CAAA;IACZ,+DAAW,CAAA;IACX,2EAAiB,CAAA;AACnB,CAAC,EAJWA,yBAAiB,KAAjBA,yBAAiB,QAI5B;MAEqB,IAAI;IAExB,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;KAC9B;IAEM,OAAO,CAA4B;IACnC,KAAK,GAAU,IAAIC,yBAAK,EAAE,CAAC;IAE3B,MAAM,CAAS;IACf,QAAQ,CAAS;IAEjB,UAAU,GAAW,QAAQ,CAAC;IAC9B,SAAS,GAAW,kBAAkB,CAAC;IACvC,WAAW,GAAY,IAAI,CAAC;IAE5B,KAAK,CAAQ;IACb,QAAQ,CAAW;IAEnB,OAAO,GAAa,EAAE,CAAC;IACvB,aAAa,GAAsBD,yBAAiB,CAAC,QAAQ,CAAC;;IAG9D,OAAO,GAAG,IAAIE,mBAAY,EAAE,CAAC;;IAG1B,mBAAmB,GAAW,6BAA6B,CAAC;IAC5D,aAAa,GAAiC,EAAE,CAAC;IACjD,oBAAoB,GAA0C,EAAE,CAAC;IAEjE,aAAa,GAAsC,EAAE,CAAC;IAExD,iBAAiB,GAA2D,EAAE,CAAC;IAE/E,WAAW,GAAsB,cAAc,CAAC;IAChD,oBAAoB,GAAyC,EAAE,CAAC;IAEhE,mBAAmB,CAAe;IAClC,cAAc,CAAe;IAE7B,OAAO,GAAY,KAAK,CAAC;IACzB,iBAAiB,GAAY,KAAK,CAAC;IACnC,kBAAkB,GAAY,KAAK,CAAC;;;IAIpC,mBAAmB,CAAe;IAE1C,YAAY,QAAmB;QAC7B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEzB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE;YAC3B,IAAI;gBACF,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;aAEvB;YAAC,OAAO,CAAC,EAAE;gBACVC,wBAAkB,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,IAAI,kBAAkB,GAAG,CAAC,CAAC;aACvF;YACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;SACjC,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;;QAElC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;KACxD;IAOM,MAAM,CAAC,MAAc,EAAE,OAAY,EAAE,OAA8B;QACxE,OAAO,IAAI,CAAC;KACb;IAEM,oBAAoB;QACzB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU,CAAC;KAC1F;IAEM,sBAAsB,CAAC,OAAe;QAC3C,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC;QACnC,OAAO,IAAI,CAAC;KACb;IAEM,eAAe,CAAC,SAAiB;QACtC,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,SAAS,CAAC;KACpD;IAEM,qBAAqB,CAAC,cAAmC,EAAE,QAAgB,2BAA2B;;QAE3G,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAAE,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;SAAE;QAE1E,IAAI,cAAc,EAAE;YAClB,IAAI,CAAC,mBAAmB,GAAG,WAAW,CAAC;gBACrC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBAClB,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;aACtC,EAAE,KAAK,CAAC,CAAC;SACX;KACF;IAEM,YAAY,CAAC,YAAoB;QACtC,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC;;QAG9B,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACnC,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;SACjC;QAED,IAAI,YAAY,KAAK,IAAI,IAAI,YAAY,KAAK,CAAC,EAAE;YAC/C,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC,MAAM,IAAI,CAAC,cAAc,EAAE,EAAE,YAAY,CAAC,CAAC;SAC9E;KACF;IAEM,QAAQ,CAAC,QAAe;QAC7B,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAEnB,IAAI,aAAa,IAAI,QAAQ,EAAE;YAC7B,IAAI,CAAC,aAAa,CAAC,IAAIC,iCAAgB,EAAE,CAAC,CAAC;SAC5C;QAED,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEjC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;KACvB;IAEM,aAAa,CAAC,UAA6B;QAChD,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;KAC/B;IAEM,MAAM,WAAW,CAAC,IAAuB;QAC9C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;YAC1B,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAgB,CAAC;SAE1C;aAAM;YACL,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE;gBACxB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE;oBAAE,SAAS;iBAAE;gBAC9C,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;aAC5C;;YAGD,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,EAAE;gBACjC,IAAI,CAAC,OAAe,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;aAChD;SACF;QAED,IAAI,IAAI,CAAC,aAAa,KAAKJ,yBAAiB,CAAC,OAAO,EAAE;YACpD,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;SAC3B;KACF;IAEM,MAAM,UAAU,CAAC,OAAgB,IAAI;QAC1C,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QAE5B,IAAI,IAAI,CAAC,aAAa,KAAKA,yBAAiB,CAAC,OAAO,EAAE;YACpD,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;SAC3B;KACF;IAEM,MAAM,IAAI;;QAEf,IAAI,CAAC,iBAAiB,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;;QAGtD,IAAI,IAAI,CAAC,OAAO,EAAE;YAAE,OAAO;SAAE;QAE7B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QAEpB,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;YAC3B,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE;SAC/B,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KAC3B;IAEM,MAAM,MAAM;;QAEjB,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE;YAC9B,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;SAChC;;QAGD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YAAE,OAAO;SAAE;QAE9B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QAErB,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;YAC3B,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE;SAC/B,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KAC7B;IAIM,IAAI,CAAC,MAAc,EAAE,aAAkB,EAAE,gBAAqC,EAAE,OAAsB;QAC3G,OAAO,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;QAC5F,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;KACvD;IAIM,SAAS,CACd,YAAsC,EACtC,gBAA0C,EAC1C,OAA2B;QAE3B,MAAM,QAAQ,IAAI,QAAO,YAAY,CAAC,KAAK,QAAQ,CAAC,CAAC;QACrD,MAAM,IAAI,IAAuB,CAAC,QAAQ,IAAI,gBAAgB,GAAG,OAAO,CAAC,CAAC;QAE1E,IAAI,IAAI,IAAI,IAAI,CAAC,cAAc,EAAE;YAC/B,OAAO,IAAI,CAAC,cAAc,CAAC;YAC3B,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;YACzD,OAAO;SACR;QAED,IAAI,QAAQ,EAAE;YACZ,IAAI,CAAC,sBAAsB,CAAC,YAAsB,EAAE,IAAI,CAAC,CAAC;SAE3D;aAAM;YACL,IAAI,CAAC,oBAAoB,CAAC,YAAsB,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;SAC3E;KACF;IAEM,cAAc;QACnB,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;SACnB;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACf,OAAO,KAAK,CAAC;SACd;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;;QAG3E,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAElC,OAAO,UAAU,CAAC;KACnB;IAIM,SAAS,CAAU,WAAkC,EAAE,QAAkC;QAC9F,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC;;QAE/C,OAAO,MAAM,OAAO,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;KACzD;IAEM,MAAM,UAAU;QACrB,IAAI,CAAC,aAAa,GAAGA,yBAAiB,CAAC,aAAa,CAAC;QACrD,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAE5B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAExB,MAAM,oBAAoB,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,KACrD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,OAAO,EAAE,CAAC,CAAC,CAAC;QAEpD,KAAK,MAAM,YAAY,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;YAC5D,YAAY,CAAC,MAAM,EAAE,CAAC;SACvB;QAED,IAAI,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QACrC,IAAI,UAAU,GAAG,CAAC,EAAE;;YAElB,OAAO,UAAU,EAAE,EAAE;gBACnB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAEK,iBAAQ,CAAC,kBAAkB,CAAC,CAAC;aAClF;SACF;aAAM;;YAEL,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAC9B;QAED,OAAO,MAAM,oBAAoB,CAAC;KACnC;IAEM,OAAO,SAAS,CAAC,CAAC,MAAc,EAAE,GAA0B;QACjE,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAEnC,IAAI,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE;YACxC,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC;YACnD,OAAO,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;SAC7C;;QAGD,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAC5B,YAAY,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACvC,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;SACtC;;QAGD,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;;QAGrC,MAAM,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;;QAGxD,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QAEhD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE1B,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACnD,IAAI,YAAY,EAAE;YAChB,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;SAE9B;aAAM;YACL,IAAI;gBACF,MAAM,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;gBAEtD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;oBAChB,MAAM,IAAIC,uBAAW,CAACC,kBAAS,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;iBAC/D;gBAED,IAAI,IAAI,CAAC,MAAM,EAAE;oBACf,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;iBACjD;aACF;YAAC,OAAO,CAAC,EAAE;gBACVC,eAAS,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;;gBAGtD,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE;oBACX,CAAC,CAAC,IAAI,GAAGD,kBAAS,CAAC,iBAAiB,CAAC;iBACtC;gBAED,MAAM,CAAC,CAAC;aAET;oBAAS;;gBAER,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;aACtC;SACF;;QAGD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;QAGlC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;;QAG7D,MAAM,CAAC,GAAG,CAACE,wBAAe,CAACJ,iBAAQ,CAAC,SAAS,CAAC,CAC5C,IAAI,CAAC,WAAW,CAAC,EAAE,EACnB,IAAI,CAAC,WAAW,CAAC,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAC3D,CAAC,CAAC;KACJ;IAEM,iBAAiB,CAAC,cAAsB,EAAE,UAAkB,QAAQ;QACzE,IAAI,IAAI,CAAC,aAAa,KAAKL,yBAAiB,CAAC,aAAa,EAAE;YAC1D,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;SAClC;QAED,MAAM,SAAS,GAAG,cAAc,CAAC,SAAS,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;;QAGlD,MAAM,YAAY,GAAG,IAAIU,cAAQ,EAAU,CAAC;QAC5C,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,YAAY,CAAC;QAE7C,IAAI,OAAO,KAAK,QAAQ,EAAE;;YAExB,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC,MAChD,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC,CAAC;SAC/C;QAED,MAAM,OAAO,GAAG;YACd,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;YACrC,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;YACrC,OAAO,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;SAC7C,CAAC;QAEF,YAAY;YACV,IAAI,CAAC,CAAC,SAAS;YACb,SAAS,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC;YACrC,cAAc,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC;YACnC,cAAc,CAAC,KAAK,GAAGC,qBAAW,CAAC,WAAW,CAAC;YAC/C,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC;YACnD,OAAO,EAAE,CAAC;SACX,CAAC;YACF,KAAK,CAAC;YACJ,OAAO,EAAE,CAAC;YACV,IAAI,CAAC,uBAAuB,EAAE,CAAC;SAChC,CAAC,CAAC;QAEL,OAAO,YAAY,CAAC;KACrB;IAES,uBAAuB,CAAC,mBAA2B,CAAC;QAC5D,YAAY,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAEvC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,OAAO;SACR;QAED,IAAI,CAAC,mBAAmB,GAAG,UAAU,CAAC;YACpC,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;YACrC,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB,EAAE,gBAAgB,GAAG,IAAI,CAAC,CAAC;KAC7B;IAEO,sBAAsB,CAAmB,OAAU,EAAE,UAA6B,EAAE;QAC1F,MAAM,cAAc,GAAGF,wBAAe,CAACJ,iBAAQ,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,CAAC;QAE3E,IAAI,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QACrC,OAAO,UAAU,EAAE,EAAE;YACnB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAExC,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE;gBAC7B,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;aACnC;SACF;KACF;IAEO,oBAAoB,CAAC,IAAY,EAAE,OAAa,EAAE,UAA6B,EAAE;QACvF,MAAM,cAAc,GAAGI,wBAAe,CAACJ,iBAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAE1E,IAAI,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QACrC,OAAO,UAAU,EAAE,EAAE;YACnB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAExC,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE;gBAC7B,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;aACnC;SACF;KACF;IAEO,aAAa,CAAC,MAAc;QAClC,MAAM,CAAC,UAAU,CAACI,wBAAe,CAACJ,iBAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;KAChG;IAEO,0BAA0B;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC;QAEhD,IAAI,MAAM,GAAG,CAAC,EAAE;YACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC/B,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;gBAEpD,IAAI,MAAM,KAAK,WAAW,EAAE;oBAC1B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;iBAElC;qBAAM;oBACJ,MAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;iBAC5C;aACF;;;YAID,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;SAC7C;KACF;IAEO,MAAM,YAAY,CACxB,SAAiB,EACjB,cAAmB,IAAI,EACvB,UAAkB,IAAI,CAAC,mBAAmB,EAC1C,oBAA6B,KAAK;QAElC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,oBAAoB,EAAE,EAAE;YACrD,OAAO,KAAK,CAAC;SACd;QAED,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC;QAE5C,IAAI,CAAC,iBAAiB,EAAE;YACtB,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAEnC,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC;gBAChD,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;gBACrC,OAAO,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;gBAC5C,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;aACpC,EAAE,OAAO,GAAG,IAAI,CAAC,CAAC;YAEnB,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;SACvC;QAED,OAAO,IAAI,CAAC;KACb;IAEO,eAAe;QACrB,MAAM,WAAW,IACf,IAAI,CAAC,WAAW;YAChB,IAAI,CAAC,mBAAmB,KAAK,SAAS;YACtC,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,KAAK,CAAC,CAC7C,CAAC;QAEF,IAAI,WAAW,EAAE;YACf,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAC9B;QAED,OAAO,WAAW,CAAC;KACpB;IAEO,MAAM,QAAQ;QACpB,IAAI,cAAc,CAAC;QAEnB,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,cAAc,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;SACnC;QAED,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACnC,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;SACjC;QAED,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAC5B,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACxC,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;SACtC;QAED,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAC5B,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACxC,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;SACtC;;QAGD,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAElB,OAAO,OAAO,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;KACpD;IAEO,UAAU,CAAC,MAAc,EAAE,KAAe;;QAEhD,IAAI,MAAM,CAAC,KAAK,KAAKM,qBAAW,CAAC,OAAO,EAAE;YAAE,OAAO;SAAE;QAErD,MAAM,EAAE,GAAa,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,GAAGC,aAAM,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAErC,IAAI,CAAC,KAAK,EAAE;YACVT,wBAAkB,CAAC,GAAG,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,MAAM,+BAA+B,KAAK,EAAE,CAAC,CAAC;YAC3F,OAAO;SACR;QAED,IAAI,IAAI,KAAKE,iBAAQ,CAAC,SAAS,EAAE;YAC/B,MAAM,WAAW,GAAG,CAACO,aAAM,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC;kBAC9CA,aAAM,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;kBACxBA,aAAM,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAE7B,IAAI,OAAO,CAAC;YACZ,IAAI;gBACF,OAAO,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,MAAM;sBACjCC,2BAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;sBACpD,SAAS,CAAC;aACb;YAAC,OAAO,CAAC,EAAE;gBACVV,wBAAkB,CAAC,CAAC,CAAC,CAAC;gBACtB,OAAO;aACR;YAED,IAAI,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE;gBACvC,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;aAEtD;iBAAM,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE;gBACrC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAS,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;aAEpE;iBAAM;gBACLA,wBAAkB,CAAC,kBAAkB,WAAW,mBAAmB,CAAC,CAAC;aACtE;SAEF;aAAM,IAAI,IAAI,KAAKE,iBAAQ,CAAC,SAAS,EAAE;;YAEtC,MAAM,CAAC,KAAK,GAAGM,qBAAW,CAAC,MAAM,CAAC;;YAGlC,IAAI,IAAI,CAAC,KAAK,EAAE;gBACd,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;aAC5B;;YAGD,IAAI,MAAM,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;gBACvC,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;aACtE;YACD,OAAO,MAAM,CAAC,iBAAiB,CAAC;SAEjC;aAAM,IAAI,IAAI,KAAKN,iBAAQ,CAAC,UAAU,EAAE;YACvC,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAEA,iBAAQ,CAAC,kBAAkB,CAAC,CAAC;SAChE;KAEF;IAEO,oBAAoB,CAAC,MAAc,EAAE,SAAiB;;QAE5D,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;;QAGzC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;;QAG1D,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,KAAK,CAACA,iBAAQ,CAAC,eAAe,CAAC,CAAC,CAAC;KACrF;IAEO,MAAM,QAAQ,CAAC,MAAc,EAAE,IAAa;QAClD,MAAM,OAAO,GAAGG,eAAS,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;;QAGtE,IAAI,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE;YAC3B,IAAI;gBACF,MAAM,CAAC,KAAK,GAAGG,qBAAW,CAAC,OAAO,CAAC;gBACnC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,KAAKN,iBAAQ,CAAC,kBAAkB,EAAE,CAAC;aAEpE;YAAC,OAAO,CAAC,EAAE;gBACVF,wBAAkB,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,IAAI,kBAAkB,GAAG,CAAC,CAAC;aACrF;SACF;QAED,IAAI,MAAM,CAAC,KAAK,KAAKQ,qBAAW,CAAC,WAAW,EAAE;;YAE5C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAEvD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;SACjD;KACF;IAEO,MAAM,qBAAqB;;QAEjC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,oBAAoB,EAAE,EAAE;YAChD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;SAC5B;QAED,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;YAC3B,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;YACpB,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE;SAC/B,CAAC,CAAC;KACJ;IAEO,MAAM,qBAAqB;QACjC,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAE3C,IAAI,IAAI,CAAC,aAAa,KAAKX,yBAAiB,CAAC,aAAa,EAAE;YAC1D,OAAO;SACR;;QAGD,IAAI,CAAC,WAAW,EAAE;YAChB,IAAI,IAAI,CAAC,kBAAkB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;gBACtD,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;gBAChC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;aAC9B;;YAGD,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;gBAC3B,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE;gBACrB,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE;aAC/B,CAAC,CAAC;SACJ;QAED,OAAO,WAAW,CAAC;KACpB;;;;;;"}
package/build/Room.mjs CHANGED
@@ -68,6 +68,8 @@ class Room {
68
68
  this._events.emit('disconnect');
69
69
  });
70
70
  this.setPatchRate(this.patchRate);
71
+ // set default _autoDisposeTimeout
72
+ this.resetAutoDisposeTimeout(this.seatReservationTime);
71
73
  }
72
74
  onAuth(client, options, request) {
73
75
  return true;
@@ -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)));
@@ -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)));
@@ -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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"}