@schema-pack/message-pack 0.0.0-commit.5ead7f57994887aa3a9684573ae083bb9edee9e9 → 0.0.0-commit.721b26d0d077bb71e76afea09e4aa75652e85c7b
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +13 -131
- package/dist/cjs/{bigInt-CBB8PGpe.d.cts → bigInt-BdjzezQQ.d.cts} +4 -4
- package/dist/{esm/bigInt-BvNVHUwj.d.mts.map → cjs/bigInt-BdjzezQQ.d.cts.map} +1 -1
- package/dist/cjs/{bufferWithExtensions-BAinwJsn.d.cts → bufferWithExtensions-n6DtcUoA.d.cts} +2 -2
- package/dist/{esm/bufferWithExtensions-Bikyeyt1.d.mts.map → cjs/bufferWithExtensions-n6DtcUoA.d.cts.map} +1 -1
- package/dist/cjs/bufferWithExtensions.d.cts +1 -1
- package/dist/cjs/decode-BraWmoPw.d.cts +5 -0
- package/dist/cjs/decode-BraWmoPw.d.cts.map +1 -0
- package/dist/cjs/decoder/decode.cjs +8 -0
- package/dist/cjs/decoder/decode.d.cts +2 -0
- package/dist/cjs/decoder/decoder.cjs +1 -1
- package/dist/cjs/decoder/decoder.d.cts +1 -1
- package/dist/cjs/decoder/decoderBuffer.cjs +2 -3
- package/dist/cjs/decoder/decoderBuffer.d.cts +1 -1
- package/dist/cjs/decoder/index.cjs +6 -0
- package/dist/cjs/decoder/index.d.cts +8 -5
- package/dist/cjs/decoder/interfaces/index.d.cts +2 -2
- package/dist/cjs/decoder/interfaces/messagePackDecoderBuffer.d.cts +1 -1
- package/dist/cjs/decoder/interfaces/messagePackTextDecoder.d.cts +1 -1
- package/dist/cjs/decoder/textDecoders/defaultTextDecoder.d.cts +1 -1
- package/dist/cjs/decoder/textDecoders/index.cjs +5 -0
- package/dist/cjs/decoder/textDecoders/index.d.cts +4 -0
- package/dist/cjs/decoder/textDecoders/nodeTextDecoder.cjs +8 -0
- package/dist/cjs/decoder/textDecoders/nodeTextDecoder.d.cts +2 -0
- package/dist/cjs/decoder/types.d.cts +1 -1
- package/dist/cjs/{decoder-C1cd4I8S.d.cts → decoder-3WpVBZjY.d.cts} +4 -4
- package/dist/cjs/decoder-3WpVBZjY.d.cts.map +1 -0
- package/dist/{esm/decoderBuffer-BxJJdy5k.d.mts → cjs/decoderBuffer-CJU2hdt2.d.cts} +5 -5
- package/dist/cjs/decoderBuffer-CJU2hdt2.d.cts.map +1 -0
- package/dist/{esm/defaultTextDecoder-B6a1HH2u.d.mts → cjs/defaultTextDecoder-DY92jDSO.d.cts} +2 -2
- package/dist/cjs/{defaultTextDecoder-Ji2hTZkf.d.cts.map → defaultTextDecoder-DY92jDSO.d.cts.map} +1 -1
- package/dist/cjs/encode-4SxHVw0M.d.cts +5 -0
- package/dist/cjs/encode-4SxHVw0M.d.cts.map +1 -0
- package/dist/cjs/encoder/encode.cjs +8 -0
- package/dist/cjs/encoder/encode.d.cts +2 -0
- package/dist/cjs/encoder/encoder.cjs +2 -2
- package/dist/cjs/encoder/encoder.d.cts +1 -1
- package/dist/cjs/encoder/encoderBuffer.cjs +29 -23
- package/dist/cjs/encoder/encoderBuffer.d.cts +1 -1
- package/dist/cjs/encoder/index.cjs +2 -0
- package/dist/cjs/encoder/index.d.cts +5 -4
- package/dist/cjs/encoder/interfaces/index.d.cts +2 -2
- package/dist/cjs/encoder/interfaces/messagePackEncoderBuffer.d.cts +1 -1
- package/dist/cjs/encoder/textEncoders/index.d.cts +1 -1
- package/dist/cjs/encoder/types.d.cts +1 -1
- package/dist/cjs/{encoder-DXuhGwd7.d.cts → encoder-B-rTvI4P.d.cts} +4 -4
- package/dist/cjs/{encoder-DXuhGwd7.d.cts.map → encoder-B-rTvI4P.d.cts.map} +1 -1
- package/dist/cjs/{encoderBuffer-DWGIXXjj.d.cts → encoderBuffer-3ur0iCYR.d.cts} +7 -5
- package/dist/cjs/{encoderBuffer-DWGIXXjj.d.cts.map → encoderBuffer-3ur0iCYR.d.cts.map} +1 -1
- package/dist/cjs/extensions/bigint/bigInt.d.cts +1 -1
- package/dist/cjs/extensions/bigint/index.d.cts +2 -2
- package/dist/cjs/extensions/index.d.cts +2 -2
- package/dist/cjs/extensions/interfaces/index.d.cts +2 -2
- package/dist/cjs/extensions/interfaces/messagePackExtension.d.cts +1 -1
- package/dist/cjs/extensions/timestampDate/index.d.cts +2 -2
- package/dist/cjs/extensions/timestampDate/timestampDate.d.cts +1 -1
- package/dist/cjs/index-B5vbV8Ak.d.cts +1 -0
- package/dist/cjs/index.cjs +8 -0
- package/dist/cjs/index.d.cts +15 -11
- package/dist/cjs/interfaces/index.d.cts +1 -1
- package/dist/cjs/interfaces/messagePackBufferWithExtensions.d.cts +1 -1
- package/dist/{esm/messagePackDecoderBuffer-CGyYSweZ.d.mts → cjs/messagePackDecoderBuffer-B2rRVlMX.d.cts} +2 -2
- package/dist/cjs/{messagePackDecoderBuffer-CMG0LPbJ.d.cts.map → messagePackDecoderBuffer-B2rRVlMX.d.cts.map} +1 -1
- package/dist/cjs/{messagePackExtension-C_TQXlEn.d.cts → messagePackExtension-Cd99Rw9t.d.cts} +25 -3
- package/dist/cjs/{messagePackExtension-C_TQXlEn.d.cts.map → messagePackExtension-Cd99Rw9t.d.cts.map} +1 -1
- package/dist/cjs/messagePackTextDecoder-J3fr-wQn.d.cts +7 -0
- package/dist/cjs/messagePackTextDecoder-J3fr-wQn.d.cts.map +1 -0
- package/dist/cjs/nodeTextDecoder-DrNFdTVk.d.cts +9 -0
- package/dist/cjs/nodeTextDecoder-DrNFdTVk.d.cts.map +1 -0
- package/dist/cjs/{timestampDate-BtBd4bAx.d.cts → timestampDate-Bi1rnvVd.d.cts} +3 -3
- package/dist/cjs/{timestampDate-BtBd4bAx.d.cts.map → timestampDate-Bi1rnvVd.d.cts.map} +1 -1
- package/dist/cjs/types-CC2wkzZa.d.cts +9 -0
- package/dist/cjs/types-CC2wkzZa.d.cts.map +1 -0
- package/dist/cjs/{types-BJie2edF.d.cts → types-DTcs4Mkd.d.cts} +4 -4
- package/dist/cjs/types-DTcs4Mkd.d.cts.map +1 -0
- package/dist/cjs/types.d.cts +2 -2
- package/dist/{esm/untypedExtension-6bNMj-lY.d.mts → cjs/untypedExtension-wx6-_4mg.d.cts} +3 -3
- package/dist/cjs/{untypedExtension-WQvArYoO.d.cts.map → untypedExtension-wx6-_4mg.d.cts.map} +1 -1
- package/dist/cjs/untypedExtension.d.cts +1 -1
- package/dist/esm/{bigInt-BvNVHUwj.d.mts → bigInt-D37SPzzB.d.mts} +4 -4
- package/dist/{cjs/bigInt-CBB8PGpe.d.cts.map → esm/bigInt-D37SPzzB.d.mts.map} +1 -1
- package/dist/esm/{bufferWithExtensions-Bikyeyt1.d.mts → bufferWithExtensions-DzAs7yX1.d.mts} +2 -2
- package/dist/{cjs/bufferWithExtensions-BAinwJsn.d.cts.map → esm/bufferWithExtensions-DzAs7yX1.d.mts.map} +1 -1
- package/dist/esm/bufferWithExtensions.d.mts +1 -1
- package/dist/esm/decode-BraWmoPw.d.mts +5 -0
- package/dist/esm/decode-BraWmoPw.d.mts.map +1 -0
- package/dist/esm/decoder/decode.d.mts +2 -0
- package/dist/esm/decoder/decode.mjs +11 -0
- package/dist/esm/decoder/decode.mjs.map +1 -0
- package/dist/esm/decoder/decoder.d.mts +1 -1
- package/dist/esm/decoder/decoder.mjs +1 -1
- package/dist/esm/decoder/decoder.mjs.map +1 -1
- package/dist/esm/decoder/decoderBuffer.d.mts +1 -1
- package/dist/esm/decoder/decoderBuffer.mjs +2 -3
- package/dist/esm/decoder/decoderBuffer.mjs.map +1 -1
- package/dist/esm/decoder/index.d.mts +8 -5
- package/dist/esm/decoder/index.mjs +4 -1
- package/dist/esm/decoder/interfaces/index.d.mts +2 -2
- package/dist/esm/decoder/interfaces/messagePackDecoderBuffer.d.mts +1 -1
- package/dist/esm/decoder/interfaces/messagePackTextDecoder.d.mts +1 -1
- package/dist/esm/decoder/textDecoders/defaultTextDecoder.d.mts +1 -1
- package/dist/esm/decoder/textDecoders/index.d.mts +4 -0
- package/dist/esm/decoder/textDecoders/index.mjs +3 -0
- package/dist/esm/decoder/textDecoders/nodeTextDecoder.d.mts +2 -0
- package/dist/esm/decoder/textDecoders/nodeTextDecoder.mjs +10 -0
- package/dist/esm/decoder/textDecoders/nodeTextDecoder.mjs.map +1 -0
- package/dist/esm/decoder/types.d.mts +1 -1
- package/dist/esm/{decoder-DEzsJjYj.d.mts → decoder-ByAWOgvm.d.mts} +4 -4
- package/dist/esm/decoder-ByAWOgvm.d.mts.map +1 -0
- package/dist/{cjs/decoderBuffer-C9_0y-3q.d.cts → esm/decoderBuffer-93dMcsbx.d.mts} +5 -5
- package/dist/esm/decoderBuffer-93dMcsbx.d.mts.map +1 -0
- package/dist/{cjs/defaultTextDecoder-Ji2hTZkf.d.cts → esm/defaultTextDecoder-DztyzoBV.d.mts} +2 -2
- package/dist/esm/{defaultTextDecoder-B6a1HH2u.d.mts.map → defaultTextDecoder-DztyzoBV.d.mts.map} +1 -1
- package/dist/esm/encode-4SxHVw0M.d.mts +5 -0
- package/dist/esm/encode-4SxHVw0M.d.mts.map +1 -0
- package/dist/esm/encoder/encode.d.mts +2 -0
- package/dist/esm/encoder/encode.mjs +11 -0
- package/dist/esm/encoder/encode.mjs.map +1 -0
- package/dist/esm/encoder/encoder.d.mts +1 -1
- package/dist/esm/encoder/encoder.mjs +2 -2
- package/dist/esm/encoder/encoder.mjs.map +1 -1
- package/dist/esm/encoder/encoderBuffer.d.mts +1 -1
- package/dist/esm/encoder/encoderBuffer.mjs +30 -24
- package/dist/esm/encoder/encoderBuffer.mjs.map +1 -1
- package/dist/esm/encoder/index.d.mts +5 -4
- package/dist/esm/encoder/index.mjs +2 -1
- package/dist/esm/encoder/interfaces/index.d.mts +2 -2
- package/dist/esm/encoder/interfaces/messagePackEncoderBuffer.d.mts +1 -1
- package/dist/esm/encoder/textEncoders/index.d.mts +1 -1
- package/dist/esm/encoder/types.d.mts +1 -1
- package/dist/esm/{encoder-CQfcjnAe.d.mts → encoder-PfSLnKnK.d.mts} +4 -4
- package/dist/esm/{encoder-CQfcjnAe.d.mts.map → encoder-PfSLnKnK.d.mts.map} +1 -1
- package/dist/esm/{encoderBuffer-DEy8CuWQ.d.mts → encoderBuffer-BZMIF5I2.d.mts} +7 -5
- package/dist/esm/{encoderBuffer-DEy8CuWQ.d.mts.map → encoderBuffer-BZMIF5I2.d.mts.map} +1 -1
- package/dist/esm/extensions/bigint/bigInt.d.mts +1 -1
- package/dist/esm/extensions/bigint/index.d.mts +2 -2
- package/dist/esm/extensions/index.d.mts +2 -2
- package/dist/esm/extensions/interfaces/index.d.mts +2 -2
- package/dist/esm/extensions/interfaces/messagePackExtension.d.mts +1 -1
- package/dist/esm/extensions/timestampDate/index.d.mts +2 -2
- package/dist/esm/extensions/timestampDate/timestampDate.d.mts +1 -1
- package/dist/esm/index-B5vbV8Ak.d.mts +1 -0
- package/dist/esm/index.d.mts +15 -11
- package/dist/esm/index.mjs +5 -1
- package/dist/esm/interfaces/index.d.mts +1 -1
- package/dist/esm/interfaces/messagePackBufferWithExtensions.d.mts +1 -1
- package/dist/{cjs/messagePackDecoderBuffer-CMG0LPbJ.d.cts → esm/messagePackDecoderBuffer-Cqvg0zW7.d.mts} +2 -2
- package/dist/esm/{messagePackDecoderBuffer-CGyYSweZ.d.mts.map → messagePackDecoderBuffer-Cqvg0zW7.d.mts.map} +1 -1
- package/dist/esm/{messagePackExtension-5TI02KG6.d.mts → messagePackExtension-fq36EMAg.d.mts} +25 -3
- package/dist/esm/{messagePackExtension-5TI02KG6.d.mts.map → messagePackExtension-fq36EMAg.d.mts.map} +1 -1
- package/dist/esm/messagePackTextDecoder-J3fr-wQn.d.mts +7 -0
- package/dist/esm/messagePackTextDecoder-J3fr-wQn.d.mts.map +1 -0
- package/dist/esm/nodeTextDecoder-Dhre7WkB.d.mts +9 -0
- package/dist/esm/nodeTextDecoder-Dhre7WkB.d.mts.map +1 -0
- package/dist/esm/{timestampDate-C1UzHhZL.d.mts → timestampDate-C3Ch8aSB.d.mts} +3 -3
- package/dist/esm/{timestampDate-C1UzHhZL.d.mts.map → timestampDate-C3Ch8aSB.d.mts.map} +1 -1
- package/dist/esm/types-CNR_qJsr.d.mts +9 -0
- package/dist/esm/types-CNR_qJsr.d.mts.map +1 -0
- package/dist/esm/{types-BJie2edF.d.mts → types-DTcs4Mkd.d.mts} +4 -4
- package/dist/esm/types-DTcs4Mkd.d.mts.map +1 -0
- package/dist/esm/types.d.mts +2 -2
- package/dist/{cjs/untypedExtension-WQvArYoO.d.cts → esm/untypedExtension-Ckk9RwQw.d.mts} +3 -3
- package/dist/esm/{untypedExtension-6bNMj-lY.d.mts.map → untypedExtension-Ckk9RwQw.d.mts.map} +1 -1
- package/dist/esm/untypedExtension.d.mts +1 -1
- package/package.json +17 -1
- package/dist/cjs/decoder-C1cd4I8S.d.cts.map +0 -1
- package/dist/cjs/decoderBuffer-C9_0y-3q.d.cts.map +0 -1
- package/dist/cjs/messagePackTextDecoder-CtyB0N6j.d.cts +0 -7
- package/dist/cjs/messagePackTextDecoder-CtyB0N6j.d.cts.map +0 -1
- package/dist/cjs/types-BJie2edF.d.cts.map +0 -1
- package/dist/cjs/types-DHnp4kMw.d.cts +0 -6
- package/dist/cjs/types-DHnp4kMw.d.cts.map +0 -1
- package/dist/esm/decoder-DEzsJjYj.d.mts.map +0 -1
- package/dist/esm/decoderBuffer-BxJJdy5k.d.mts.map +0 -1
- package/dist/esm/messagePackTextDecoder-CtyB0N6j.d.mts +0 -7
- package/dist/esm/messagePackTextDecoder-CtyB0N6j.d.mts.map +0 -1
- package/dist/esm/types-BJie2edF.d.mts.map +0 -1
- package/dist/esm/types-DoBZbRkk.d.mts +0 -6
- package/dist/esm/types-DoBZbRkk.d.mts.map +0 -1
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026-present Pawnary, Inc. and Elvis Muñoz
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -6,7 +6,18 @@
|
|
|
6
6
|
|
|
7
7
|
# @schema-pack/message-pack
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
<p align="center">
|
|
10
|
+
<a href='/docs/message-pack'>
|
|
11
|
+
Documentation
|
|
12
|
+
</a>
|
|
13
|
+
|
|
|
14
|
+
<a href='/docs/message-pack/install'>
|
|
15
|
+
Quick start
|
|
16
|
+
</a>
|
|
17
|
+
</p>
|
|
18
|
+
|
|
19
|
+
Incremental
|
|
20
|
+
[MessagePack](https://github.com/msgpack/msgpack/blob/master/spec.md)
|
|
10
21
|
encoder/decoder for TypeScript and JavaScript. It targets full compliance with
|
|
11
22
|
the MessagePack spec and exposes a pluggable extension system for encoding
|
|
12
23
|
custom types.
|
|
@@ -14,138 +25,9 @@ custom types.
|
|
|
14
25
|
## Installation
|
|
15
26
|
|
|
16
27
|
```bash
|
|
17
|
-
pnpm add @schema-pack/message-pack
|
|
28
|
+
pnpm add @schema-pack/message-pack@next
|
|
18
29
|
```
|
|
19
30
|
|
|
20
|
-
## Quick start
|
|
21
|
-
|
|
22
|
-
```ts
|
|
23
|
-
import { Decoder, Encoder } from '@schema-pack/message-pack';
|
|
24
|
-
|
|
25
|
-
const encoder = new Encoder();
|
|
26
|
-
const bytes = encoder.encode({ hello: 'world', values: [1, 2, 3] });
|
|
27
|
-
|
|
28
|
-
const decoder = new Decoder();
|
|
29
|
-
const value = decoder.decode(bytes);
|
|
30
|
-
// { hello: 'world', values: [1, 2, 3] }
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
## The 64-bit integer caveat
|
|
34
|
-
|
|
35
|
-
JavaScript numbers are IEEE 754 double-precision floats, so they can only
|
|
36
|
-
represent integers safely between `Number.MIN_SAFE_INTEGER` and
|
|
37
|
-
`Number.MAX_SAFE_INTEGER` (±(2^53 - 1)) — exported here as `INT64_MIN` and
|
|
38
|
-
`UINT64_MAX`. MessagePack's native `uint 64` / `int 64` formats, however, cover
|
|
39
|
-
the _full_ 64-bit range.
|
|
40
|
-
|
|
41
|
-
By default, the encoder and decoder read and write these formats as regular JS
|
|
42
|
-
`number`s, which is safe as long as your values stay within that safe integer
|
|
43
|
-
range. If you need the full 64-bit range — or want to work with `bigint`
|
|
44
|
-
directly — register the built-in `BigIntExtension`:
|
|
45
|
-
|
|
46
|
-
```ts
|
|
47
|
-
import { BigIntExtension, Decoder, Encoder } from '@schema-pack/message-pack';
|
|
48
|
-
|
|
49
|
-
const extension = new BigIntExtension(); // extension type 0-127, defaults to 0
|
|
50
|
-
|
|
51
|
-
const encoder = new Encoder().addExtension(extension);
|
|
52
|
-
const decoder = new Decoder().addExtension(extension);
|
|
53
|
-
|
|
54
|
-
const bytes = encoder.encode(123_456_789_012_345_678_901_234_567_890n);
|
|
55
|
-
decoder.decode(bytes); // 123456789012345678901234567890n
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
Values within the safe integer range are still encoded as native MessagePack
|
|
59
|
-
`uint`/`int` formats even with the extension registered — `BigIntExtension` only
|
|
60
|
-
takes over once a `bigint` value falls outside that range.
|
|
61
|
-
|
|
62
|
-
## Built-in extensions
|
|
63
|
-
|
|
64
|
-
- **`BigIntExtension`** — encodes/decodes `bigint` values outside the safe
|
|
65
|
-
integer range, using a variable-length representation of the value's magnitude
|
|
66
|
-
plus sign.
|
|
67
|
-
- **`TimestampDateExtension`** — encodes/decodes JS `Date` objects using the
|
|
68
|
-
standard MessagePack
|
|
69
|
-
[timestamp extension type](https://github.com/msgpack/msgpack/blob/master/spec.md#timestamp-extension-type)
|
|
70
|
-
(`-1`), automatically choosing the 32-bit, 64-bit, or 96-bit format based on
|
|
71
|
-
the date's range and precision. Because it uses the reserved timestamp type,
|
|
72
|
-
register it as an _internal_ extension:
|
|
73
|
-
|
|
74
|
-
```ts
|
|
75
|
-
import {
|
|
76
|
-
Decoder,
|
|
77
|
-
Encoder,
|
|
78
|
-
TimestampDateExtension,
|
|
79
|
-
} from '@schema-pack/message-pack';
|
|
80
|
-
|
|
81
|
-
const extension = new TimestampDateExtension();
|
|
82
|
-
|
|
83
|
-
const encoder = new Encoder().addInternalExtension(extension);
|
|
84
|
-
const decoder = new Decoder().addInternalExtension(extension);
|
|
85
|
-
|
|
86
|
-
const bytes = encoder.encode(new Date());
|
|
87
|
-
decoder.decode(bytes); // Date instance
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
## Writing your own extensions
|
|
91
|
-
|
|
92
|
-
Implement the `MessagePackExtension<TValue, TBuffer>` interface (or extend the
|
|
93
|
-
abstract `UntypedExtension` helper, which takes care of storing `type`):
|
|
94
|
-
|
|
95
|
-
```ts
|
|
96
|
-
interface MessagePackExtension<
|
|
97
|
-
TValue = unknown,
|
|
98
|
-
TBuffer extends Uint8Array = Uint8Array,
|
|
99
|
-
> {
|
|
100
|
-
readonly type: number;
|
|
101
|
-
encode(
|
|
102
|
-
value: object | bigint,
|
|
103
|
-
buffer: MessagePackEncoderBuffer<TBuffer>,
|
|
104
|
-
): void;
|
|
105
|
-
decode(decoderBuffer: MessagePackDecoderBuffer, size: number): TValue;
|
|
106
|
-
}
|
|
107
|
-
```
|
|
108
|
-
|
|
109
|
-
Then register it on both the encoder and the decoder:
|
|
110
|
-
|
|
111
|
-
- `addExtension(extension)` — custom extension types, in the range `0` to `127`.
|
|
112
|
-
- `addExtensionType(type, extension)` — same as above, with the type passed as a
|
|
113
|
-
separate argument.
|
|
114
|
-
- `addInternalExtension(extension)` — reserved types, in the range `-128` to
|
|
115
|
-
`-1`, used for spec-defined extensions such as timestamps.
|
|
116
|
-
- `fetchExtension(type)` — look up a registered extension by its type.
|
|
117
|
-
|
|
118
|
-
Inside `encode()`, the buffer argument exposes low-level writers (`writeUint8`,
|
|
119
|
-
`writeUint32`, `writeBin`, `ensureCapacity`, `view`, `offset`, etc.) for
|
|
120
|
-
building a custom binary payload — see the `MessagePackEncoderBuffer` interface
|
|
121
|
-
for the full API.
|
|
122
|
-
|
|
123
|
-
## Encoder options
|
|
124
|
-
|
|
125
|
-
| Option | Default | Description |
|
|
126
|
-
| ------------------------- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
127
|
-
| `initialBufferSize` | `1024` | Initial size of the encoding buffer; grows automatically as needed. |
|
|
128
|
-
| `newBufferFn` | `(size) => new Uint8Array(size)` | Factory used to allocate new buffers. |
|
|
129
|
-
| `initialSharedBufferSize` | `1024` | Initial size of the shared buffer used when encoding strings, to reduce allocations. |
|
|
130
|
-
| `textEncoder` | `DefaultTextEncoder` | Encoder used to turn strings into bytes. A `NodeTextEncoder` is also provided for faster string encoding on Node. |
|
|
131
|
-
| `sortKeys` | `false` | Sort object keys before encoding, for deterministic output. |
|
|
132
|
-
| `forceFloat32` | `false` | Always encode floating point numbers as `float32` instead of `float64`. This may lose precision for values that don't fit exactly in 32 bits (e.g. `1.2`) — only enable it if you know your floats can round-trip safely. |
|
|
133
|
-
|
|
134
|
-
## Decoder options
|
|
135
|
-
|
|
136
|
-
| Option | Default | Description |
|
|
137
|
-
| ------------------- | -------------------------------- | ------------------------------------------------------------------- |
|
|
138
|
-
| `initialBufferSize` | `1024` | Initial size of the decoding buffer; grows automatically as needed. |
|
|
139
|
-
| `newBufferFn` | `(size) => new Uint8Array(size)` | Factory used to allocate new buffers. |
|
|
140
|
-
|
|
141
|
-
## Error handling
|
|
142
|
-
|
|
143
|
-
The encoder and decoder currently throw plain `Error`s for invalid usage — e.g.
|
|
144
|
-
registering a duplicate or out-of-range extension type, looking up an extension
|
|
145
|
-
that isn't registered, or decoding a malformed timestamp payload. There's no
|
|
146
|
-
dedicated error class hierarchy yet, so catch `Error` and inspect `message` if
|
|
147
|
-
you need to branch on failure.
|
|
148
|
-
|
|
149
31
|
## License
|
|
150
32
|
|
|
151
33
|
MIT
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { t as MessagePackDecoderBuffer } from "./messagePackDecoderBuffer-
|
|
2
|
-
import { i as ExtensionEncoderBuffer } from "./messagePackExtension-
|
|
3
|
-
import { t as UntypedExtension } from "./untypedExtension-
|
|
1
|
+
import { t as MessagePackDecoderBuffer } from "./messagePackDecoderBuffer-B2rRVlMX.cjs";
|
|
2
|
+
import { i as ExtensionEncoderBuffer } from "./messagePackExtension-Cd99Rw9t.cjs";
|
|
3
|
+
import { t as UntypedExtension } from "./untypedExtension-wx6-_4mg.cjs";
|
|
4
4
|
//#region src/extensions/bigint/bigInt.d.ts
|
|
5
5
|
/**
|
|
6
6
|
* This class encodes and decodes JavaScript BigInt values that are outside the
|
|
@@ -32,4 +32,4 @@ declare class BigIntExtension<TBuffer extends Uint8Array = Uint8Array> extends U
|
|
|
32
32
|
}
|
|
33
33
|
//#endregion
|
|
34
34
|
export { BigIntExtension as t };
|
|
35
|
-
//# sourceMappingURL=bigInt-
|
|
35
|
+
//# sourceMappingURL=bigInt-BdjzezQQ.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bigInt-
|
|
1
|
+
{"version":3,"file":"bigInt-BdjzezQQ.d.cts","names":[],"sources":["../../src/extensions/bigint/bigInt.ts"],"mappings":";;;;;;;;;;;;cAcM,gBACJ,gBAAgB,aAAa,oBACrB,yBAAyB;;;;;;;;;;;;EAYjC,OACE,wBACA,QAAQ,uBAAuB;;;;;;EAyBjC,OAAO,QAAQ,0BAA0B"}
|
package/dist/cjs/{bufferWithExtensions-BAinwJsn.d.cts → bufferWithExtensions-n6DtcUoA.d.cts}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { o as MessagePackBufferWithExtensions, t as MessagePackExtension } from "./messagePackExtension-
|
|
1
|
+
import { o as MessagePackBufferWithExtensions, t as MessagePackExtension } from "./messagePackExtension-Cd99Rw9t.cjs";
|
|
2
2
|
//#region src/bufferWithExtensions.d.ts
|
|
3
3
|
declare abstract class BufferWithExtensions<TBuffer extends Uint8Array = Uint8Array> implements MessagePackBufferWithExtensions<TBuffer> {
|
|
4
4
|
protected extensions: Map<number, MessagePackExtension<unknown, TBuffer>>;
|
|
@@ -9,4 +9,4 @@ declare abstract class BufferWithExtensions<TBuffer extends Uint8Array = Uint8Ar
|
|
|
9
9
|
}
|
|
10
10
|
//#endregion
|
|
11
11
|
export { BufferWithExtensions as t };
|
|
12
|
-
//# sourceMappingURL=bufferWithExtensions-
|
|
12
|
+
//# sourceMappingURL=bufferWithExtensions-n6DtcUoA.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bufferWithExtensions-
|
|
1
|
+
{"version":3,"file":"bufferWithExtensions-n6DtcUoA.d.cts","names":[],"sources":["../../src/bufferWithExtensions.ts"],"mappings":";;uBAGe,qBACb,gBAAgB,aAAa,uBAClB,gCAAgC;YACjC,YAAY,YAAY,8BAA8B;EAEhE;EAIA,aAAa,WAAW,8BAA8B;EAsBtD,qBACE,WAAW,8BAA8B;EAuB3C,eAAe,eAAe,8BAA8B"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as BufferWithExtensions } from "./bufferWithExtensions-
|
|
1
|
+
import { t as BufferWithExtensions } from "./bufferWithExtensions-n6DtcUoA.cjs";
|
|
2
2
|
export = BufferWithExtensions;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decode-BraWmoPw.d.cts","names":[],"sources":["../../src/decoder/decode.ts"],"mappings":";iBAIwB,OAAO,kBAAkB,QAAQ,aAAa"}
|
|
@@ -6,7 +6,7 @@ var Decoder = class {
|
|
|
6
6
|
this.decoderBuffer = new require_decoder_decoderBuffer(options);
|
|
7
7
|
}
|
|
8
8
|
decode(encodedBuffer) {
|
|
9
|
-
const
|
|
9
|
+
const decoderBuffer = this.decoderBuffer;
|
|
10
10
|
decoderBuffer.setBuffer(encodedBuffer);
|
|
11
11
|
return decoderBuffer.nextValue();
|
|
12
12
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as Decoder } from "../decoder-
|
|
1
|
+
import { t as Decoder } from "../decoder-3WpVBZjY.cjs";
|
|
2
2
|
export = Decoder;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
const require_bufferWithExtensions = require("../bufferWithExtensions.cjs");
|
|
2
|
-
require("../constants.cjs");
|
|
3
2
|
const require_defaultNewBufferFn = require("../defaultNewBufferFn.cjs");
|
|
4
3
|
const require_symbols = require("../symbols.cjs");
|
|
5
4
|
const require_decoder_textDecoders_defaultTextDecoder = require("./textDecoders/defaultTextDecoder.cjs");
|
|
@@ -11,8 +10,8 @@ var DecoderBuffer = class extends require_bufferWithExtensions {
|
|
|
11
10
|
textDecoder = new require_decoder_textDecoders_defaultTextDecoder();
|
|
12
11
|
constructor(options) {
|
|
13
12
|
super();
|
|
14
|
-
const
|
|
15
|
-
this.buffer =
|
|
13
|
+
const bufferFactory = options?.bufferFactory ?? require_defaultNewBufferFn;
|
|
14
|
+
this.buffer = bufferFactory(0);
|
|
16
15
|
this.view = new DataView(this.buffer.buffer);
|
|
17
16
|
this.offset = 0;
|
|
18
17
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as DecoderBuffer } from "../decoderBuffer-
|
|
1
|
+
import { t as DecoderBuffer } from "../decoderBuffer-CJU2hdt2.cjs";
|
|
2
2
|
export = DecoderBuffer;
|
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_decoder_textDecoders_defaultTextDecoder = require("./textDecoders/defaultTextDecoder.cjs");
|
|
3
|
+
const require_decoder_textDecoders_nodeTextDecoder = require("./textDecoders/nodeTextDecoder.cjs");
|
|
2
4
|
const require_decoder_decoderBuffer = require("./decoderBuffer.cjs");
|
|
3
5
|
const require_decoder_decoder = require("./decoder.cjs");
|
|
6
|
+
const require_decoder_decode = require("./decode.cjs");
|
|
4
7
|
exports.Decoder = require_decoder_decoder;
|
|
5
8
|
exports.DecoderBuffer = require_decoder_decoderBuffer;
|
|
9
|
+
exports.DefaultTextDecoder = require_decoder_textDecoders_defaultTextDecoder;
|
|
10
|
+
exports.NodeTextDecoder = require_decoder_textDecoders_nodeTextDecoder;
|
|
11
|
+
exports.decode = require_decoder_decode;
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
import { t as MessagePackTextDecoder } from "../messagePackTextDecoder-
|
|
2
|
-
import { t as MessagePackDecoderBuffer } from "../messagePackDecoderBuffer-
|
|
3
|
-
import { t as
|
|
4
|
-
import { t as
|
|
5
|
-
|
|
1
|
+
import { t as MessagePackTextDecoder } from "../messagePackTextDecoder-J3fr-wQn.cjs";
|
|
2
|
+
import { t as MessagePackDecoderBuffer } from "../messagePackDecoderBuffer-B2rRVlMX.cjs";
|
|
3
|
+
import { t as decode } from "../decode-BraWmoPw.cjs";
|
|
4
|
+
import { t as DefaultTextDecoder } from "../defaultTextDecoder-DY92jDSO.cjs";
|
|
5
|
+
import { t as DecoderBuffer } from "../decoderBuffer-CJU2hdt2.cjs";
|
|
6
|
+
import { t as Decoder } from "../decoder-3WpVBZjY.cjs";
|
|
7
|
+
import { t as NodeTextDecoder } from "../nodeTextDecoder-DrNFdTVk.cjs";
|
|
8
|
+
export { Decoder, DecoderBuffer, DefaultTextDecoder, type MessagePackDecoderBuffer, type MessagePackTextDecoder, NodeTextDecoder, decode };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as MessagePackTextDecoder } from "../../messagePackTextDecoder-
|
|
2
|
-
import { t as MessagePackDecoderBuffer } from "../../messagePackDecoderBuffer-
|
|
1
|
+
import { t as MessagePackTextDecoder } from "../../messagePackTextDecoder-J3fr-wQn.cjs";
|
|
2
|
+
import { t as MessagePackDecoderBuffer } from "../../messagePackDecoderBuffer-B2rRVlMX.cjs";
|
|
3
3
|
import "../../index-CaxrMD1A.cjs";
|
|
4
4
|
export type { MessagePackDecoderBuffer, MessagePackTextDecoder };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as MessagePackDecoderBuffer } from "../../messagePackDecoderBuffer-
|
|
1
|
+
import { t as MessagePackDecoderBuffer } from "../../messagePackDecoderBuffer-B2rRVlMX.cjs";
|
|
2
2
|
export = MessagePackDecoderBuffer;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as MessagePackTextDecoder } from "../../messagePackTextDecoder-
|
|
1
|
+
import { t as MessagePackTextDecoder } from "../../messagePackTextDecoder-J3fr-wQn.cjs";
|
|
2
2
|
export = MessagePackTextDecoder;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as DefaultTextDecoder } from "../../defaultTextDecoder-
|
|
1
|
+
import { t as DefaultTextDecoder } from "../../defaultTextDecoder-DY92jDSO.cjs";
|
|
2
2
|
export = DefaultTextDecoder;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_decoder_textDecoders_defaultTextDecoder = require("./defaultTextDecoder.cjs");
|
|
3
|
+
const require_decoder_textDecoders_nodeTextDecoder = require("./nodeTextDecoder.cjs");
|
|
4
|
+
exports.DefaultTextDecoder = require_decoder_textDecoders_defaultTextDecoder;
|
|
5
|
+
exports.NodeTextDecoder = require_decoder_textDecoders_nodeTextDecoder;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as DecoderBufferOptions } from "../types-
|
|
1
|
+
import { t as DecoderBufferOptions } from "../types-CC2wkzZa.cjs";
|
|
2
2
|
export { DecoderBufferOptions };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { t as MessagePackExtension } from "./messagePackExtension-
|
|
2
|
-
import { t as DecoderBufferOptions } from "./types-
|
|
3
|
-
import { t as DecoderBuffer } from "./decoderBuffer-
|
|
1
|
+
import { t as MessagePackExtension } from "./messagePackExtension-Cd99Rw9t.cjs";
|
|
2
|
+
import { t as DecoderBufferOptions } from "./types-CC2wkzZa.cjs";
|
|
3
|
+
import { t as DecoderBuffer } from "./decoderBuffer-CJU2hdt2.cjs";
|
|
4
4
|
//#region src/decoder/decoder.d.ts
|
|
5
5
|
declare class Decoder<TBuffer extends Uint8Array = Uint8Array> {
|
|
6
6
|
protected decoderBuffer: DecoderBuffer<TBuffer>;
|
|
@@ -12,4 +12,4 @@ declare class Decoder<TBuffer extends Uint8Array = Uint8Array> {
|
|
|
12
12
|
}
|
|
13
13
|
//#endregion
|
|
14
14
|
export { Decoder as t };
|
|
15
|
-
//# sourceMappingURL=decoder-
|
|
15
|
+
//# sourceMappingURL=decoder-3WpVBZjY.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decoder-3WpVBZjY.d.cts","names":[],"sources":["../../src/decoder/decoder.ts"],"mappings":";;;;cAIM,QAAQ,gBAAgB,aAAa;YAC/B,eAAe,cAAc;EAEvC,YAAY,UAAU,qBAAqB;EAI3C,OAAO,kBAAkB,eAAe,UAAU;EAQlD,aAAa,WAAW,8BAA8B;EAMtD,qBACE,WAAW,8BAA8B;EAO3C,iBACE,cACA,WAAW,KAAK,8BAA8B"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { t as MessagePackDecoderBuffer } from "./messagePackDecoderBuffer-
|
|
2
|
-
import { t as BufferWithExtensions } from "./bufferWithExtensions-
|
|
3
|
-
import { t as DefaultTextDecoder } from "./defaultTextDecoder-
|
|
4
|
-
import { t as DecoderBufferOptions } from "./types-
|
|
1
|
+
import { t as MessagePackDecoderBuffer } from "./messagePackDecoderBuffer-B2rRVlMX.cjs";
|
|
2
|
+
import { t as BufferWithExtensions } from "./bufferWithExtensions-n6DtcUoA.cjs";
|
|
3
|
+
import { t as DefaultTextDecoder } from "./defaultTextDecoder-DY92jDSO.cjs";
|
|
4
|
+
import { t as DecoderBufferOptions } from "./types-CC2wkzZa.cjs";
|
|
5
5
|
//#region src/decoder/decoderBuffer.d.ts
|
|
6
6
|
declare class DecoderBuffer<TBuffer extends Uint8Array = Uint8Array> extends BufferWithExtensions<TBuffer> implements MessagePackDecoderBuffer<TBuffer> {
|
|
7
7
|
buffer: TBuffer;
|
|
@@ -19,4 +19,4 @@ declare class DecoderBuffer<TBuffer extends Uint8Array = Uint8Array> extends Buf
|
|
|
19
19
|
}
|
|
20
20
|
//#endregion
|
|
21
21
|
export { DecoderBuffer as t };
|
|
22
|
-
//# sourceMappingURL=decoderBuffer-
|
|
22
|
+
//# sourceMappingURL=decoderBuffer-CJU2hdt2.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decoderBuffer-CJU2hdt2.d.cts","names":[],"sources":["../../src/decoder/decoderBuffer.ts"],"mappings":";;;;;cAQM,cAAc,gBAAgB,aAAa,oBACvC,qBAAqB,oBAClB,yBAAyB;EAEpC,QAAQ;EACR;EACA,MAAM;EACN,aAAW;EAEX,YAAY,UAAU,qBAAqB;EAU3C,UAAU,QAAQ;EAYlB,UAAU;EAcV,QAAQ;EAkDR;EAIA,QAAQ,iBAAiB;EAoBzB,kBAAkB;EAgLlB,UAAU,qBAAqB"}
|
package/dist/{esm/defaultTextDecoder-B6a1HH2u.d.mts → cjs/defaultTextDecoder-DY92jDSO.d.cts}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as MessagePackTextDecoder } from "./messagePackTextDecoder-
|
|
1
|
+
import { t as MessagePackTextDecoder } from "./messagePackTextDecoder-J3fr-wQn.cjs";
|
|
2
2
|
//#region src/decoder/textDecoders/defaultTextDecoder.d.ts
|
|
3
3
|
declare class DefaultTextDecoder implements MessagePackTextDecoder {
|
|
4
4
|
protected textDecoder: TextDecoder;
|
|
@@ -7,4 +7,4 @@ declare class DefaultTextDecoder implements MessagePackTextDecoder {
|
|
|
7
7
|
}
|
|
8
8
|
//#endregion
|
|
9
9
|
export { DefaultTextDecoder as t };
|
|
10
|
-
//# sourceMappingURL=defaultTextDecoder-
|
|
10
|
+
//# sourceMappingURL=defaultTextDecoder-DY92jDSO.d.cts.map
|
package/dist/cjs/{defaultTextDecoder-Ji2hTZkf.d.cts.map → defaultTextDecoder-DY92jDSO.d.cts.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultTextDecoder-
|
|
1
|
+
{"version":3,"file":"defaultTextDecoder-DY92jDSO.d.cts","names":[],"sources":["../../src/decoder/textDecoders/defaultTextDecoder.ts"],"mappings":";;cAEM,8BAA8B;YACxB,aAAa;EAEvB;EAIA,OAAO,QAAQ,YAAY,eAAe"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"encode-4SxHVw0M.d.cts","names":[],"sources":["../../src/encoder/encode.ts"],"mappings":";iBAIwB,OAAO,iBAAiB"}
|
|
@@ -14,9 +14,9 @@ var Encoder = class {
|
|
|
14
14
|
this.buffer = new require_encoder_encoderBuffer(options);
|
|
15
15
|
}
|
|
16
16
|
encode(value) {
|
|
17
|
-
const
|
|
17
|
+
const buffer = this.buffer;
|
|
18
18
|
buffer.write(value);
|
|
19
|
-
return
|
|
19
|
+
return buffer.flush();
|
|
20
20
|
}
|
|
21
21
|
addExtension(extension) {
|
|
22
22
|
this.buffer.addExtension(extension);
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as Encoder } from "../encoder-
|
|
1
|
+
import { t as Encoder } from "../encoder-B-rTvI4P.cjs";
|
|
2
2
|
export = Encoder;
|
|
@@ -39,7 +39,7 @@ var EncoderBuffer = class EncoderBuffer extends require_bufferWithExtensions {
|
|
|
39
39
|
* to accommodate the data being written. The function should return a new
|
|
40
40
|
* instance of TBuffer with the specified size.
|
|
41
41
|
*/
|
|
42
|
-
|
|
42
|
+
bufferFactory;
|
|
43
43
|
textEncoder;
|
|
44
44
|
buffer;
|
|
45
45
|
view;
|
|
@@ -58,25 +58,25 @@ var EncoderBuffer = class EncoderBuffer extends require_bufferWithExtensions {
|
|
|
58
58
|
super();
|
|
59
59
|
this.offset = 0;
|
|
60
60
|
this.textEncoder = options?.textEncoder ?? new require_encoder_textEncoders_defaultTextEncoder();
|
|
61
|
-
this.
|
|
62
|
-
this.buffer = this.
|
|
63
|
-
this.sharedBuffer = this.
|
|
61
|
+
this.bufferFactory = options?.bufferFactory ?? require_defaultNewBufferFn;
|
|
62
|
+
this.buffer = this.bufferFactory(options?.initialBufferSize ?? 1024);
|
|
63
|
+
this.sharedBuffer = this.bufferFactory(options?.initialSharedBufferSize ?? 1024);
|
|
64
64
|
this.view = new DataView(this.buffer.buffer, this.buffer.byteOffset, this.buffer.byteLength);
|
|
65
65
|
this.sortKeys = options?.sortKeys ?? false;
|
|
66
66
|
this.forceFloat32 = options?.forceFloat32 ?? false;
|
|
67
67
|
}
|
|
68
68
|
getExtensionBuffer() {
|
|
69
69
|
if (!this.#extensionBuffer) this.#extensionBuffer = new EncoderBuffer({
|
|
70
|
+
bufferFactory: this.bufferFactory,
|
|
70
71
|
initialBufferSize: this.sharedBuffer.byteLength,
|
|
71
72
|
initialSharedBufferSize: 0,
|
|
72
|
-
newBufferFn: this.newBufferFn,
|
|
73
73
|
sortKeys: this.sortKeys,
|
|
74
74
|
textEncoder: this.textEncoder
|
|
75
75
|
});
|
|
76
76
|
return this.#extensionBuffer;
|
|
77
77
|
}
|
|
78
78
|
resizeBuffer(newSize) {
|
|
79
|
-
const newBuffer = this.
|
|
79
|
+
const newBuffer = this.bufferFactory(newSize);
|
|
80
80
|
newBuffer.set(this.buffer);
|
|
81
81
|
this.buffer = newBuffer;
|
|
82
82
|
this.view = new DataView(this.buffer.buffer, this.buffer.byteOffset, this.buffer.byteLength);
|
|
@@ -392,8 +392,8 @@ var EncoderBuffer = class EncoderBuffer extends require_bufferWithExtensions {
|
|
|
392
392
|
}
|
|
393
393
|
this.offset = initialoffset;
|
|
394
394
|
}
|
|
395
|
-
if (this.sharedBuffer.byteLength < requiredSize) this.sharedBuffer = this.
|
|
396
|
-
const
|
|
395
|
+
if (this.sharedBuffer.byteLength < requiredSize) this.sharedBuffer = this.bufferFactory(requiredSize);
|
|
396
|
+
const sharedBuffer = this.sharedBuffer;
|
|
397
397
|
const byteLength = this.textEncoder.writeBytes(value, sharedBuffer);
|
|
398
398
|
if (require_utils_fitIn8Bits(byteLength)) {
|
|
399
399
|
this.ensureCapacity(2 + byteLength);
|
|
@@ -462,18 +462,13 @@ var EncoderBuffer = class EncoderBuffer extends require_bufferWithExtensions {
|
|
|
462
462
|
} else if (this.forceFloat32) {
|
|
463
463
|
this.ensureCapacity(5);
|
|
464
464
|
this.writeFloat32Symbol();
|
|
465
|
-
this.writeFloat32(value);
|
|
466
|
-
} else {
|
|
467
|
-
this.ensureCapacity(9);
|
|
468
|
-
this.writeFloat64Symbol();
|
|
469
|
-
this.writeFloat64(value);
|
|
465
|
+
return this.writeFloat32(value);
|
|
470
466
|
}
|
|
471
|
-
|
|
467
|
+
this.ensureCapacity(9);
|
|
468
|
+
this.writeFloat64Symbol();
|
|
469
|
+
return this.writeFloat64(value);
|
|
472
470
|
}
|
|
473
|
-
|
|
474
|
-
const keys = Object.keys(value);
|
|
475
|
-
if (this.sortKeys) keys.sort();
|
|
476
|
-
const keysLength = keys.length;
|
|
471
|
+
openMap(keysLength) {
|
|
477
472
|
const requiredSize = keysLength * 4;
|
|
478
473
|
if (keysLength < 16) {
|
|
479
474
|
this.ensureCapacity(requiredSize + 1);
|
|
@@ -484,15 +479,21 @@ var EncoderBuffer = class EncoderBuffer extends require_bufferWithExtensions {
|
|
|
484
479
|
} else if (require_utils_fitIn32Bits(keysLength)) {
|
|
485
480
|
this.ensureCapacity(requiredSize + 5);
|
|
486
481
|
this.writeMap32Symbol(keysLength);
|
|
487
|
-
} else throw new Error(`Map
|
|
482
|
+
} else throw new Error(`Map size ${keysLength} exceeds maximum allowed size of ${require_constants.UINT32_MAX}`);
|
|
483
|
+
return this;
|
|
484
|
+
}
|
|
485
|
+
writeMap(value) {
|
|
486
|
+
const keys = Object.keys(value);
|
|
487
|
+
if (this.sortKeys) keys.sort();
|
|
488
|
+
const keysLength = keys.length;
|
|
489
|
+
this.openMap(keysLength);
|
|
488
490
|
for (const key of keys) {
|
|
489
|
-
this.
|
|
491
|
+
this.writeString(key);
|
|
490
492
|
this.write(value[key]);
|
|
491
493
|
}
|
|
492
494
|
return this;
|
|
493
495
|
}
|
|
494
|
-
|
|
495
|
-
const length = value.length;
|
|
496
|
+
openArray(length) {
|
|
496
497
|
const requiredSize = length * 4;
|
|
497
498
|
if (length < 16) {
|
|
498
499
|
this.ensureCapacity(requiredSize + 1);
|
|
@@ -503,7 +504,12 @@ var EncoderBuffer = class EncoderBuffer extends require_bufferWithExtensions {
|
|
|
503
504
|
} else if (require_utils_fitIn32Bits(length)) {
|
|
504
505
|
this.ensureCapacity(requiredSize + 5);
|
|
505
506
|
this.writeArray32Symbol(length);
|
|
506
|
-
} else throw new Error(`Array
|
|
507
|
+
} else throw new Error(`Array size ${length} exceeds maximum allowed size of ${require_constants.UINT32_MAX}`);
|
|
508
|
+
return this;
|
|
509
|
+
}
|
|
510
|
+
writeArray(value) {
|
|
511
|
+
const length = value.length;
|
|
512
|
+
this.openArray(length);
|
|
507
513
|
for (let index = 0; index < length; ++index) this.write(value[index]);
|
|
508
514
|
return this;
|
|
509
515
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as EncoderBuffer } from "../encoderBuffer-
|
|
1
|
+
import { t as EncoderBuffer } from "../encoderBuffer-3ur0iCYR.cjs";
|
|
2
2
|
export = EncoderBuffer;
|
|
@@ -3,7 +3,9 @@ const require_encoder_textEncoders_defaultTextEncoder = require("./textEncoders/
|
|
|
3
3
|
const require_encoder_encoderBuffer = require("./encoderBuffer.cjs");
|
|
4
4
|
const require_encoder_encoder = require("./encoder.cjs");
|
|
5
5
|
const require_encoder_textEncoders_nodeTextEncoder = require("./textEncoders/nodeTextEncoder.cjs");
|
|
6
|
+
const require_encoder_encode = require("./encode.cjs");
|
|
6
7
|
exports.DefaultTextEncoder = require_encoder_textEncoders_defaultTextEncoder;
|
|
7
8
|
exports.Encoder = require_encoder_encoder;
|
|
8
9
|
exports.EncoderBuffer = require_encoder_encoderBuffer;
|
|
9
10
|
exports.NodeTextEncoder = require_encoder_textEncoders_nodeTextEncoder;
|
|
11
|
+
exports.encode = require_encoder_encode;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { a as OmitByPattern, i as ExtensionEncoderBuffer, n as MessagePackEncoderBuffer, r as EncoderBufferOptions } from "../messagePackExtension-
|
|
1
|
+
import { a as OmitByPattern, i as ExtensionEncoderBuffer, n as MessagePackEncoderBuffer, r as EncoderBufferOptions } from "../messagePackExtension-Cd99Rw9t.cjs";
|
|
2
2
|
import { t as MessagePackTextEncoder } from "../messagePackTextEncoder-D7iCft_t.cjs";
|
|
3
|
-
import { t as
|
|
4
|
-
import { t as
|
|
3
|
+
import { t as encode } from "../encode-4SxHVw0M.cjs";
|
|
4
|
+
import { t as EncoderBuffer } from "../encoderBuffer-3ur0iCYR.cjs";
|
|
5
|
+
import { t as Encoder } from "../encoder-B-rTvI4P.cjs";
|
|
5
6
|
import { t as DefaultTextEncoder } from "../defaultTextEncoder-DzdGBX6s.cjs";
|
|
6
7
|
import { t as NodeTextEncoder } from "../nodeTextEncoder-DJzFDBXd.cjs";
|
|
7
|
-
export { DefaultTextEncoder, Encoder, EncoderBuffer, type EncoderBufferOptions, type ExtensionEncoderBuffer, type MessagePackEncoderBuffer, type MessagePackTextEncoder, NodeTextEncoder, type OmitByPattern };
|
|
8
|
+
export { DefaultTextEncoder, Encoder, EncoderBuffer, type EncoderBufferOptions, type ExtensionEncoderBuffer, type MessagePackEncoderBuffer, type MessagePackTextEncoder, NodeTextEncoder, type OmitByPattern, encode };
|