@colyseus/schema 2.0.29 → 2.0.30

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 (48) hide show
  1. package/build/cjs/index.js +7 -0
  2. package/build/cjs/index.js.map +1 -1
  3. package/build/esm/index.mjs +7 -0
  4. package/build/esm/index.mjs.map +1 -1
  5. package/build/umd/index.js +7 -0
  6. package/lib/types/ArraySchema.js +7 -0
  7. package/lib/types/ArraySchema.js.map +1 -1
  8. package/package.json +1 -1
  9. package/src/types/ArraySchema.ts +7 -0
  10. package/lib/Decoder.d.ts +0 -16
  11. package/lib/Decoder.js +0 -182
  12. package/lib/Decoder.js.map +0 -1
  13. package/lib/Encoder.d.ts +0 -13
  14. package/lib/Encoder.js +0 -79
  15. package/lib/Encoder.js.map +0 -1
  16. package/lib/Metadata.d.ts +0 -22
  17. package/lib/Metadata.js +0 -65
  18. package/lib/Metadata.js.map +0 -1
  19. package/lib/changes/ChangeSet.d.ts +0 -12
  20. package/lib/changes/ChangeSet.js +0 -35
  21. package/lib/changes/ChangeSet.js.map +0 -1
  22. package/lib/changes/DecodeOperation.d.ts +0 -15
  23. package/lib/changes/DecodeOperation.js +0 -186
  24. package/lib/changes/DecodeOperation.js.map +0 -1
  25. package/lib/changes/EncodeOperation.d.ts +0 -18
  26. package/lib/changes/EncodeOperation.js +0 -130
  27. package/lib/changes/EncodeOperation.js.map +0 -1
  28. package/lib/changes/consts.d.ts +0 -14
  29. package/lib/changes/consts.js +0 -18
  30. package/lib/changes/consts.js.map +0 -1
  31. package/lib/decoder/strategy/StateCallbacks.d.ts +0 -6
  32. package/lib/decoder/strategy/StateCallbacks.js +0 -20
  33. package/lib/decoder/strategy/StateCallbacks.js.map +0 -1
  34. package/lib/decoding/decode.d.ts +0 -48
  35. package/lib/decoding/decode.js +0 -267
  36. package/lib/decoding/decode.js.map +0 -1
  37. package/lib/encoding/assert.d.ts +0 -9
  38. package/lib/encoding/assert.js +0 -47
  39. package/lib/encoding/assert.js.map +0 -1
  40. package/lib/symbol.shim.d.ts +0 -6
  41. package/lib/symbol.shim.js +0 -4
  42. package/lib/symbol.shim.js.map +0 -1
  43. package/lib/usage.d.ts +0 -1
  44. package/lib/usage.js +0 -22
  45. package/lib/usage.js.map +0 -1
  46. package/lib/v3.d.ts +0 -1
  47. package/lib/v3.js +0 -427
  48. package/lib/v3.js.map +0 -1
@@ -410,6 +410,13 @@ class ArraySchema {
410
410
  //
411
411
  // FIXME: this should be O(1)
412
412
  //
413
+ index = Math.trunc(index) || 0;
414
+ // Allow negative indexing from the end
415
+ if (index < 0)
416
+ index += this.length;
417
+ // OOB access is guaranteed to return undefined
418
+ if (index < 0 || index >= this.length)
419
+ return undefined;
413
420
  const key = Array.from(this.$items.keys())[index];
414
421
  return this.$items.get(key);
415
422
  }