@coinbase/cdp-core 0.0.20 → 0.0.22

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 (62) hide show
  1. package/README.md +75 -1
  2. package/dist/esm/index.js +29 -27
  3. package/dist/esm/index15.js +8 -8
  4. package/dist/esm/index16.js +2 -2
  5. package/dist/esm/index2.js +154 -87
  6. package/dist/esm/index20.js +1 -1
  7. package/dist/esm/index25.js +8 -12
  8. package/dist/esm/index26.js +17 -11
  9. package/dist/esm/index27.js +45 -8
  10. package/dist/esm/index28.js +13 -17
  11. package/dist/esm/index29.js +50 -40
  12. package/dist/esm/index30.js +6 -13
  13. package/dist/esm/index31.js +20 -54
  14. package/dist/esm/index32.js +11 -6
  15. package/dist/esm/index33.js +3 -21
  16. package/dist/esm/index34.js +3 -3
  17. package/dist/esm/index35.js +34 -3
  18. package/dist/esm/index36.js +10 -32
  19. package/dist/esm/index37.js +4 -12
  20. package/dist/esm/index38.js +28 -4
  21. package/dist/esm/index39.js +6 -28
  22. package/dist/esm/index40.js +24 -6
  23. package/dist/esm/index41.js +16 -24
  24. package/dist/esm/index42.js +54 -16
  25. package/dist/esm/index43.js +22 -53
  26. package/dist/esm/index44.js +11 -23
  27. package/dist/esm/index45.js +26 -10
  28. package/dist/esm/index46.js +41 -26
  29. package/dist/esm/index47.js +54 -41
  30. package/dist/esm/index48.js +126 -54
  31. package/dist/esm/index49.js +11 -126
  32. package/dist/esm/index50.js +101 -9
  33. package/dist/esm/index51.js +6 -104
  34. package/dist/esm/index52.js +3 -7
  35. package/dist/esm/index53.js +15 -3
  36. package/dist/esm/index54.js +42 -14
  37. package/dist/esm/index55.js +74 -38
  38. package/dist/esm/index56.js +2 -79
  39. package/dist/esm/index57.js +2 -2
  40. package/dist/esm/index58.js +13 -2
  41. package/dist/esm/index59.js +2 -2
  42. package/dist/esm/index60.js +1 -1
  43. package/dist/esm/index61.js +1 -1
  44. package/dist/esm/index62.js +2 -2
  45. package/dist/esm/index63.js +2 -2
  46. package/dist/esm/index64.js +1 -1
  47. package/dist/esm/index65.js +1 -1
  48. package/dist/esm/index66.js +3 -3
  49. package/dist/esm/index7.js +7 -6
  50. package/dist/esm/index73.js +2 -104
  51. package/dist/esm/index74.js +17 -75
  52. package/dist/esm/index75.js +20 -80
  53. package/dist/esm/index76.js +80 -2
  54. package/dist/esm/index77.js +100 -17
  55. package/dist/esm/index78.js +31 -18
  56. package/dist/esm/index79.js +6 -32
  57. package/dist/esm/index8.js +10 -8
  58. package/dist/esm/index80.js +78 -6
  59. package/dist/esm/index89.js +4 -4
  60. package/dist/esm/index90.js +5 -5
  61. package/dist/types/index.d.ts +33 -0
  62. package/package.json +3 -3
@@ -1,57 +1,26 @@
1
- import { hexToNumber as i } from "./index44.js";
2
- import { defineFormatter as r } from "./index42.js";
3
- const u = {
4
- "0x0": "legacy",
5
- "0x1": "eip2930",
6
- "0x2": "eip1559",
7
- "0x3": "eip4844",
8
- "0x4": "eip7702"
9
- };
10
- function l(e) {
11
- const d = {
12
- ...e,
13
- blockHash: e.blockHash ? e.blockHash : null,
14
- blockNumber: e.blockNumber ? BigInt(e.blockNumber) : null,
15
- chainId: e.chainId ? i(e.chainId) : void 0,
16
- gas: e.gas ? BigInt(e.gas) : void 0,
17
- gasPrice: e.gasPrice ? BigInt(e.gasPrice) : void 0,
18
- maxFeePerBlobGas: e.maxFeePerBlobGas ? BigInt(e.maxFeePerBlobGas) : void 0,
19
- maxFeePerGas: e.maxFeePerGas ? BigInt(e.maxFeePerGas) : void 0,
20
- maxPriorityFeePerGas: e.maxPriorityFeePerGas ? BigInt(e.maxPriorityFeePerGas) : void 0,
21
- nonce: e.nonce ? i(e.nonce) : void 0,
22
- to: e.to ? e.to : null,
23
- transactionIndex: e.transactionIndex ? Number(e.transactionIndex) : null,
24
- type: e.type ? u[e.type] : void 0,
25
- typeHex: e.type ? e.type : void 0,
26
- value: e.value ? BigInt(e.value) : void 0,
27
- v: e.v ? BigInt(e.v) : void 0
28
- };
29
- return e.authorizationList && (d.authorizationList = m(e.authorizationList)), d.yParity = (() => {
30
- if (e.yParity)
31
- return Number(e.yParity);
32
- if (typeof d.v == "bigint") {
33
- if (d.v === 0n || d.v === 27n)
34
- return 0;
35
- if (d.v === 1n || d.v === 28n)
36
- return 1;
37
- if (d.v >= 35n)
38
- return d.v % 2n === 0n ? 1 : 0;
39
- }
40
- })(), d.type === "legacy" && (delete d.accessList, delete d.maxFeePerBlobGas, delete d.maxFeePerGas, delete d.maxPriorityFeePerGas, delete d.yParity), d.type === "eip2930" && (delete d.maxFeePerBlobGas, delete d.maxFeePerGas, delete d.maxPriorityFeePerGas), d.type === "eip1559" && delete d.maxFeePerBlobGas, d;
1
+ import { SizeOverflowError as u } from "./index49.js";
2
+ import { size as t } from "./index37.js";
3
+ function s(n, { size: i }) {
4
+ if (t(n) > i)
5
+ throw new u({
6
+ givenSize: t(n),
7
+ maxSize: i
8
+ });
9
+ }
10
+ function z(n, i = {}) {
11
+ const { signed: o } = i;
12
+ i.size && s(n, { size: i.size });
13
+ const e = BigInt(n);
14
+ if (!o)
15
+ return e;
16
+ const r = (n.length - 2) / 2, f = (1n << BigInt(r) * 8n - 1n) - 1n;
17
+ return e <= f ? e : e - BigInt(`0x${"f".padStart(r * 2, "f")}`) - 1n;
41
18
  }
42
- const P = /* @__PURE__ */ r("transaction", l);
43
- function m(e) {
44
- return e.map((d) => ({
45
- address: d.address,
46
- chainId: Number(d.chainId),
47
- nonce: Number(d.nonce),
48
- r: d.r,
49
- s: d.s,
50
- yParity: Number(d.yParity)
51
- }));
19
+ function g(n, i = {}) {
20
+ return Number(z(n, i));
52
21
  }
53
22
  export {
54
- P as defineTransaction,
55
- l as formatTransaction,
56
- u as transactionType
23
+ s as assertSize,
24
+ z as hexToBigInt,
25
+ g as hexToNumber
57
26
  };
@@ -1,26 +1,14 @@
1
- import { SizeOverflowError as u } from "./index50.js";
2
- import { size as t } from "./index38.js";
3
- function s(n, { size: i }) {
4
- if (t(n) > i)
5
- throw new u({
6
- givenSize: t(n),
7
- maxSize: i
8
- });
9
- }
10
- function z(n, i = {}) {
11
- const { signed: o } = i;
12
- i.size && s(n, { size: i.size });
13
- const e = BigInt(n);
14
- if (!o)
15
- return e;
16
- const r = (n.length - 2) / 2, f = (1n << BigInt(r) * 8n - 1n) - 1n;
17
- return e <= f ? e : e - BigInt(`0x${"f".padStart(r * 2, "f")}`) - 1n;
18
- }
19
- function g(n, i = {}) {
20
- return Number(z(n, i));
1
+ function r(n, { args: t, eventName: a } = {}) {
2
+ return {
3
+ ...n,
4
+ blockHash: n.blockHash ? n.blockHash : null,
5
+ blockNumber: n.blockNumber ? BigInt(n.blockNumber) : null,
6
+ logIndex: n.logIndex ? Number(n.logIndex) : null,
7
+ transactionHash: n.transactionHash ? n.transactionHash : null,
8
+ transactionIndex: n.transactionIndex ? Number(n.transactionIndex) : null,
9
+ ...a ? { args: t, eventName: a } : {}
10
+ };
21
11
  }
22
12
  export {
23
- s as assertSize,
24
- z as hexToBigInt,
25
- g as hexToNumber
13
+ r as formatLog
26
14
  };
@@ -1,14 +1,30 @@
1
- function r(n, { args: t, eventName: a } = {}) {
2
- return {
3
- ...n,
4
- blockHash: n.blockHash ? n.blockHash : null,
5
- blockNumber: n.blockNumber ? BigInt(n.blockNumber) : null,
6
- logIndex: n.logIndex ? Number(n.logIndex) : null,
7
- transactionHash: n.transactionHash ? n.transactionHash : null,
8
- transactionIndex: n.transactionIndex ? Number(n.transactionIndex) : null,
9
- ...a ? { args: t, eventName: a } : {}
1
+ import { hexToNumber as d } from "./index43.js";
2
+ import { defineFormatter as b } from "./index41.js";
3
+ import { formatLog as m } from "./index44.js";
4
+ import { transactionType as o } from "./index42.js";
5
+ const f = {
6
+ "0x0": "reverted",
7
+ "0x1": "success"
8
+ };
9
+ function r(l) {
10
+ const s = {
11
+ ...l,
12
+ blockNumber: l.blockNumber ? BigInt(l.blockNumber) : null,
13
+ contractAddress: l.contractAddress ? l.contractAddress : null,
14
+ cumulativeGasUsed: l.cumulativeGasUsed ? BigInt(l.cumulativeGasUsed) : null,
15
+ effectiveGasPrice: l.effectiveGasPrice ? BigInt(l.effectiveGasPrice) : null,
16
+ gasUsed: l.gasUsed ? BigInt(l.gasUsed) : null,
17
+ logs: l.logs ? l.logs.map((u) => m(u)) : null,
18
+ to: l.to ? l.to : null,
19
+ transactionIndex: l.transactionIndex ? d(l.transactionIndex) : null,
20
+ status: l.status ? f[l.status] : null,
21
+ type: l.type ? o[l.type] || l.type : null
10
22
  };
23
+ return l.blobGasPrice && (s.blobGasPrice = BigInt(l.blobGasPrice)), l.blobGasUsed && (s.blobGasUsed = BigInt(l.blobGasUsed)), s;
11
24
  }
25
+ const U = /* @__PURE__ */ b("transactionReceipt", r);
12
26
  export {
13
- r as formatLog
27
+ U as defineTransactionReceipt,
28
+ r as formatTransactionReceipt,
29
+ f as receiptStatuses
14
30
  };
@@ -1,30 +1,45 @@
1
- import { hexToNumber as d } from "./index44.js";
2
- import { defineFormatter as b } from "./index42.js";
3
- import { formatLog as m } from "./index45.js";
4
- import { transactionType as o } from "./index43.js";
5
- const f = {
6
- "0x0": "reverted",
7
- "0x1": "success"
8
- };
9
- function r(l) {
10
- const s = {
11
- ...l,
12
- blockNumber: l.blockNumber ? BigInt(l.blockNumber) : null,
13
- contractAddress: l.contractAddress ? l.contractAddress : null,
14
- cumulativeGasUsed: l.cumulativeGasUsed ? BigInt(l.cumulativeGasUsed) : null,
15
- effectiveGasPrice: l.effectiveGasPrice ? BigInt(l.effectiveGasPrice) : null,
16
- gasUsed: l.gasUsed ? BigInt(l.gasUsed) : null,
17
- logs: l.logs ? l.logs.map((u) => m(u)) : null,
18
- to: l.to ? l.to : null,
19
- transactionIndex: l.transactionIndex ? d(l.transactionIndex) : null,
20
- status: l.status ? f[l.status] : null,
21
- type: l.type ? o[l.type] || l.type : null
1
+ import { BaseError as l } from "./index47.js";
2
+ import { createCursor as r } from "./index48.js";
3
+ import { hexToBytes as g } from "./index29.js";
4
+ import { bytesToHex as u } from "./index27.js";
5
+ function m(n, e = "hex") {
6
+ const i = s(n), h = r(new Uint8Array(i.length));
7
+ return i.encode(h), e === "hex" ? u(h.bytes) : h.bytes;
8
+ }
9
+ function s(n) {
10
+ return Array.isArray(n) ? p(n.map((e) => s(e))) : y(n);
11
+ }
12
+ function p(n) {
13
+ const e = n.reduce((t, f) => t + f.length, 0), i = o(e);
14
+ return {
15
+ length: e <= 55 ? 1 + e : 1 + i + e,
16
+ encode(t) {
17
+ e <= 55 ? t.pushByte(192 + e) : (t.pushByte(247 + i), i === 1 ? t.pushUint8(e) : i === 2 ? t.pushUint16(e) : i === 3 ? t.pushUint24(e) : t.pushUint32(e));
18
+ for (const { encode: f } of n)
19
+ f(t);
20
+ }
22
21
  };
23
- return l.blobGasPrice && (s.blobGasPrice = BigInt(l.blobGasPrice)), l.blobGasUsed && (s.blobGasUsed = BigInt(l.blobGasUsed)), s;
24
22
  }
25
- const U = /* @__PURE__ */ b("transactionReceipt", r);
23
+ function y(n) {
24
+ const e = typeof n == "string" ? g(n) : n, i = o(e.length);
25
+ return {
26
+ length: e.length === 1 && e[0] < 128 ? 1 : e.length <= 55 ? 1 + e.length : 1 + i + e.length,
27
+ encode(t) {
28
+ e.length === 1 && e[0] < 128 ? t.pushBytes(e) : e.length <= 55 ? (t.pushByte(128 + e.length), t.pushBytes(e)) : (t.pushByte(183 + i), i === 1 ? t.pushUint8(e.length) : i === 2 ? t.pushUint16(e.length) : i === 3 ? t.pushUint24(e.length) : t.pushUint32(e.length), t.pushBytes(e));
29
+ }
30
+ };
31
+ }
32
+ function o(n) {
33
+ if (n < 2 ** 8)
34
+ return 1;
35
+ if (n < 2 ** 16)
36
+ return 2;
37
+ if (n < 2 ** 24)
38
+ return 3;
39
+ if (n < 2 ** 32)
40
+ return 4;
41
+ throw new l("Length is too large.");
42
+ }
26
43
  export {
27
- U as defineTransactionReceipt,
28
- r as formatTransactionReceipt,
29
- f as receiptStatuses
44
+ m as toRlp
30
45
  };
@@ -1,45 +1,58 @@
1
- import { BaseError as l } from "./index48.js";
2
- import { createCursor as r } from "./index49.js";
3
- import { hexToBytes as g } from "./index31.js";
4
- import { bytesToHex as u } from "./index29.js";
5
- function m(n, e = "hex") {
6
- const i = s(n), h = r(new Uint8Array(i.length));
7
- return i.encode(h), e === "hex" ? u(h.bytes) : h.bytes;
8
- }
9
- function s(n) {
10
- return Array.isArray(n) ? p(n.map((e) => s(e))) : y(n);
11
- }
12
- function p(n) {
13
- const e = n.reduce((t, f) => t + f.length, 0), i = o(e);
14
- return {
15
- length: e <= 55 ? 1 + e : 1 + i + e,
16
- encode(t) {
17
- e <= 55 ? t.pushByte(192 + e) : (t.pushByte(247 + i), i === 1 ? t.pushUint8(e) : i === 2 ? t.pushUint16(e) : i === 3 ? t.pushUint24(e) : t.pushUint32(e));
18
- for (const { encode: f } of n)
19
- f(t);
20
- }
21
- };
22
- }
23
- function y(n) {
24
- const e = typeof n == "string" ? g(n) : n, i = o(e.length);
25
- return {
26
- length: e.length === 1 && e[0] < 128 ? 1 : e.length <= 55 ? 1 + e.length : 1 + i + e.length,
27
- encode(t) {
28
- e.length === 1 && e[0] < 128 ? t.pushBytes(e) : e.length <= 55 ? (t.pushByte(128 + e.length), t.pushBytes(e)) : (t.pushByte(183 + i), i === 1 ? t.pushUint8(e.length) : i === 2 ? t.pushUint16(e.length) : i === 3 ? t.pushUint24(e.length) : t.pushUint32(e.length), t.pushBytes(e));
29
- }
30
- };
1
+ import { version as o } from "./index73.js";
2
+ let r = {
3
+ getDocsUrl: ({ docsBaseUrl: s, docsPath: t = "", docsSlug: e }) => t ? `${s ?? "https://viem.sh"}${t}${e ? `#${e}` : ""}` : void 0,
4
+ version: `viem@${o}`
5
+ };
6
+ class u extends Error {
7
+ constructor(t, e = {}) {
8
+ const i = e.cause instanceof u ? e.cause.details : e.cause?.message ? e.cause.message : e.details, n = e.cause instanceof u && e.cause.docsPath || e.docsPath, a = r.getDocsUrl?.({ ...e, docsPath: n }), l = [
9
+ t || "An error occurred.",
10
+ "",
11
+ ...e.metaMessages ? [...e.metaMessages, ""] : [],
12
+ ...a ? [`Docs: ${a}`] : [],
13
+ ...i ? [`Details: ${i}`] : [],
14
+ ...r.version ? [`Version: ${r.version}`] : []
15
+ ].join(`
16
+ `);
17
+ super(l, e.cause ? { cause: e.cause } : void 0), Object.defineProperty(this, "details", {
18
+ enumerable: !0,
19
+ configurable: !0,
20
+ writable: !0,
21
+ value: void 0
22
+ }), Object.defineProperty(this, "docsPath", {
23
+ enumerable: !0,
24
+ configurable: !0,
25
+ writable: !0,
26
+ value: void 0
27
+ }), Object.defineProperty(this, "metaMessages", {
28
+ enumerable: !0,
29
+ configurable: !0,
30
+ writable: !0,
31
+ value: void 0
32
+ }), Object.defineProperty(this, "shortMessage", {
33
+ enumerable: !0,
34
+ configurable: !0,
35
+ writable: !0,
36
+ value: void 0
37
+ }), Object.defineProperty(this, "version", {
38
+ enumerable: !0,
39
+ configurable: !0,
40
+ writable: !0,
41
+ value: void 0
42
+ }), Object.defineProperty(this, "name", {
43
+ enumerable: !0,
44
+ configurable: !0,
45
+ writable: !0,
46
+ value: "BaseError"
47
+ }), this.details = i, this.docsPath = n, this.metaMessages = e.metaMessages, this.name = e.name ?? this.name, this.shortMessage = t, this.version = o;
48
+ }
49
+ walk(t) {
50
+ return c(this, t);
51
+ }
31
52
  }
32
- function o(n) {
33
- if (n < 2 ** 8)
34
- return 1;
35
- if (n < 2 ** 16)
36
- return 2;
37
- if (n < 2 ** 24)
38
- return 3;
39
- if (n < 2 ** 32)
40
- return 4;
41
- throw new l("Length is too large.");
53
+ function c(s, t) {
54
+ return t?.(s) ? s : s && typeof s == "object" && "cause" in s && s.cause !== void 0 ? c(s.cause, t) : t ? null : s;
42
55
  }
43
56
  export {
44
- m as toRlp
57
+ u as BaseError
45
58
  };
@@ -1,58 +1,130 @@
1
- import { version as o } from "./index76.js";
2
- let r = {
3
- getDocsUrl: ({ docsBaseUrl: s, docsPath: t = "", docsSlug: e }) => t ? `${s ?? "https://viem.sh"}${t}${e ? `#${e}` : ""}` : void 0,
4
- version: `viem@${o}`
5
- };
6
- class u extends Error {
7
- constructor(t, e = {}) {
8
- const i = e.cause instanceof u ? e.cause.details : e.cause?.message ? e.cause.message : e.details, n = e.cause instanceof u && e.cause.docsPath || e.docsPath, a = r.getDocsUrl?.({ ...e, docsPath: n }), l = [
9
- t || "An error occurred.",
10
- "",
11
- ...e.metaMessages ? [...e.metaMessages, ""] : [],
12
- ...a ? [`Docs: ${a}`] : [],
13
- ...i ? [`Details: ${i}`] : [],
14
- ...r.version ? [`Version: ${r.version}`] : []
15
- ].join(`
16
- `);
17
- super(l, e.cause ? { cause: e.cause } : void 0), Object.defineProperty(this, "details", {
18
- enumerable: !0,
19
- configurable: !0,
20
- writable: !0,
21
- value: void 0
22
- }), Object.defineProperty(this, "docsPath", {
23
- enumerable: !0,
24
- configurable: !0,
25
- writable: !0,
26
- value: void 0
27
- }), Object.defineProperty(this, "metaMessages", {
28
- enumerable: !0,
29
- configurable: !0,
30
- writable: !0,
31
- value: void 0
32
- }), Object.defineProperty(this, "shortMessage", {
33
- enumerable: !0,
34
- configurable: !0,
35
- writable: !0,
36
- value: void 0
37
- }), Object.defineProperty(this, "version", {
38
- enumerable: !0,
39
- configurable: !0,
40
- writable: !0,
41
- value: void 0
42
- }), Object.defineProperty(this, "name", {
43
- enumerable: !0,
44
- configurable: !0,
45
- writable: !0,
46
- value: "BaseError"
47
- }), this.details = i, this.docsPath = n, this.metaMessages = e.metaMessages, this.name = e.name ?? this.name, this.shortMessage = t, this.version = o;
48
- }
49
- walk(t) {
50
- return c(this, t);
1
+ import { NegativeOffsetError as o, PositionOutOfBoundsError as e, RecursiveReadLimitExceededError as n } from "./index74.js";
2
+ const h = {
3
+ bytes: new Uint8Array(),
4
+ dataView: new DataView(new ArrayBuffer(0)),
5
+ position: 0,
6
+ positionReadCount: /* @__PURE__ */ new Map(),
7
+ recursiveReadCount: 0,
8
+ recursiveReadLimit: Number.POSITIVE_INFINITY,
9
+ assertReadLimit() {
10
+ if (this.recursiveReadCount >= this.recursiveReadLimit)
11
+ throw new n({
12
+ count: this.recursiveReadCount + 1,
13
+ limit: this.recursiveReadLimit
14
+ });
15
+ },
16
+ assertPosition(t) {
17
+ if (t < 0 || t > this.bytes.length - 1)
18
+ throw new e({
19
+ length: this.bytes.length,
20
+ position: t
21
+ });
22
+ },
23
+ decrementPosition(t) {
24
+ if (t < 0)
25
+ throw new o({ offset: t });
26
+ const i = this.position - t;
27
+ this.assertPosition(i), this.position = i;
28
+ },
29
+ getReadCount(t) {
30
+ return this.positionReadCount.get(t || this.position) || 0;
31
+ },
32
+ incrementPosition(t) {
33
+ if (t < 0)
34
+ throw new o({ offset: t });
35
+ const i = this.position + t;
36
+ this.assertPosition(i), this.position = i;
37
+ },
38
+ inspectByte(t) {
39
+ const i = t ?? this.position;
40
+ return this.assertPosition(i), this.bytes[i];
41
+ },
42
+ inspectBytes(t, i) {
43
+ const s = i ?? this.position;
44
+ return this.assertPosition(s + t - 1), this.bytes.subarray(s, s + t);
45
+ },
46
+ inspectUint8(t) {
47
+ const i = t ?? this.position;
48
+ return this.assertPosition(i), this.bytes[i];
49
+ },
50
+ inspectUint16(t) {
51
+ const i = t ?? this.position;
52
+ return this.assertPosition(i + 1), this.dataView.getUint16(i);
53
+ },
54
+ inspectUint24(t) {
55
+ const i = t ?? this.position;
56
+ return this.assertPosition(i + 2), (this.dataView.getUint16(i) << 8) + this.dataView.getUint8(i + 2);
57
+ },
58
+ inspectUint32(t) {
59
+ const i = t ?? this.position;
60
+ return this.assertPosition(i + 3), this.dataView.getUint32(i);
61
+ },
62
+ pushByte(t) {
63
+ this.assertPosition(this.position), this.bytes[this.position] = t, this.position++;
64
+ },
65
+ pushBytes(t) {
66
+ this.assertPosition(this.position + t.length - 1), this.bytes.set(t, this.position), this.position += t.length;
67
+ },
68
+ pushUint8(t) {
69
+ this.assertPosition(this.position), this.bytes[this.position] = t, this.position++;
70
+ },
71
+ pushUint16(t) {
72
+ this.assertPosition(this.position + 1), this.dataView.setUint16(this.position, t), this.position += 2;
73
+ },
74
+ pushUint24(t) {
75
+ this.assertPosition(this.position + 2), this.dataView.setUint16(this.position, t >> 8), this.dataView.setUint8(this.position + 2, t & 255), this.position += 3;
76
+ },
77
+ pushUint32(t) {
78
+ this.assertPosition(this.position + 3), this.dataView.setUint32(this.position, t), this.position += 4;
79
+ },
80
+ readByte() {
81
+ this.assertReadLimit(), this._touch();
82
+ const t = this.inspectByte();
83
+ return this.position++, t;
84
+ },
85
+ readBytes(t, i) {
86
+ this.assertReadLimit(), this._touch();
87
+ const s = this.inspectBytes(t);
88
+ return this.position += i ?? t, s;
89
+ },
90
+ readUint8() {
91
+ this.assertReadLimit(), this._touch();
92
+ const t = this.inspectUint8();
93
+ return this.position += 1, t;
94
+ },
95
+ readUint16() {
96
+ this.assertReadLimit(), this._touch();
97
+ const t = this.inspectUint16();
98
+ return this.position += 2, t;
99
+ },
100
+ readUint24() {
101
+ this.assertReadLimit(), this._touch();
102
+ const t = this.inspectUint24();
103
+ return this.position += 3, t;
104
+ },
105
+ readUint32() {
106
+ this.assertReadLimit(), this._touch();
107
+ const t = this.inspectUint32();
108
+ return this.position += 4, t;
109
+ },
110
+ get remaining() {
111
+ return this.bytes.length - this.position;
112
+ },
113
+ setPosition(t) {
114
+ const i = this.position;
115
+ return this.assertPosition(t), this.position = t, () => this.position = i;
116
+ },
117
+ _touch() {
118
+ if (this.recursiveReadLimit === Number.POSITIVE_INFINITY)
119
+ return;
120
+ const t = this.getReadCount();
121
+ this.positionReadCount.set(this.position, t + 1), t > 0 && this.recursiveReadCount++;
51
122
  }
52
- }
53
- function c(s, t) {
54
- return t?.(s) ? s : s && typeof s == "object" && "cause" in s && s.cause !== void 0 ? c(s.cause, t) : t ? null : s;
123
+ };
124
+ function a(t, { recursiveReadLimit: i = 8192 } = {}) {
125
+ const s = Object.create(h);
126
+ return s.bytes = t, s.dataView = new DataView(t.buffer, t.byteOffset, t.byteLength), s.positionReadCount = /* @__PURE__ */ new Map(), s.recursiveReadLimit = i, s;
55
127
  }
56
128
  export {
57
- u as BaseError
129
+ a as createCursor
58
130
  };
@@ -1,130 +1,15 @@
1
- import { NegativeOffsetError as o, PositionOutOfBoundsError as e, RecursiveReadLimitExceededError as n } from "./index77.js";
2
- const h = {
3
- bytes: new Uint8Array(),
4
- dataView: new DataView(new ArrayBuffer(0)),
5
- position: 0,
6
- positionReadCount: /* @__PURE__ */ new Map(),
7
- recursiveReadCount: 0,
8
- recursiveReadLimit: Number.POSITIVE_INFINITY,
9
- assertReadLimit() {
10
- if (this.recursiveReadCount >= this.recursiveReadLimit)
11
- throw new n({
12
- count: this.recursiveReadCount + 1,
13
- limit: this.recursiveReadLimit
14
- });
15
- },
16
- assertPosition(t) {
17
- if (t < 0 || t > this.bytes.length - 1)
18
- throw new e({
19
- length: this.bytes.length,
20
- position: t
21
- });
22
- },
23
- decrementPosition(t) {
24
- if (t < 0)
25
- throw new o({ offset: t });
26
- const i = this.position - t;
27
- this.assertPosition(i), this.position = i;
28
- },
29
- getReadCount(t) {
30
- return this.positionReadCount.get(t || this.position) || 0;
31
- },
32
- incrementPosition(t) {
33
- if (t < 0)
34
- throw new o({ offset: t });
35
- const i = this.position + t;
36
- this.assertPosition(i), this.position = i;
37
- },
38
- inspectByte(t) {
39
- const i = t ?? this.position;
40
- return this.assertPosition(i), this.bytes[i];
41
- },
42
- inspectBytes(t, i) {
43
- const s = i ?? this.position;
44
- return this.assertPosition(s + t - 1), this.bytes.subarray(s, s + t);
45
- },
46
- inspectUint8(t) {
47
- const i = t ?? this.position;
48
- return this.assertPosition(i), this.bytes[i];
49
- },
50
- inspectUint16(t) {
51
- const i = t ?? this.position;
52
- return this.assertPosition(i + 1), this.dataView.getUint16(i);
53
- },
54
- inspectUint24(t) {
55
- const i = t ?? this.position;
56
- return this.assertPosition(i + 2), (this.dataView.getUint16(i) << 8) + this.dataView.getUint8(i + 2);
57
- },
58
- inspectUint32(t) {
59
- const i = t ?? this.position;
60
- return this.assertPosition(i + 3), this.dataView.getUint32(i);
61
- },
62
- pushByte(t) {
63
- this.assertPosition(this.position), this.bytes[this.position] = t, this.position++;
64
- },
65
- pushBytes(t) {
66
- this.assertPosition(this.position + t.length - 1), this.bytes.set(t, this.position), this.position += t.length;
67
- },
68
- pushUint8(t) {
69
- this.assertPosition(this.position), this.bytes[this.position] = t, this.position++;
70
- },
71
- pushUint16(t) {
72
- this.assertPosition(this.position + 1), this.dataView.setUint16(this.position, t), this.position += 2;
73
- },
74
- pushUint24(t) {
75
- this.assertPosition(this.position + 2), this.dataView.setUint16(this.position, t >> 8), this.dataView.setUint8(this.position + 2, t & 255), this.position += 3;
76
- },
77
- pushUint32(t) {
78
- this.assertPosition(this.position + 3), this.dataView.setUint32(this.position, t), this.position += 4;
79
- },
80
- readByte() {
81
- this.assertReadLimit(), this._touch();
82
- const t = this.inspectByte();
83
- return this.position++, t;
84
- },
85
- readBytes(t, i) {
86
- this.assertReadLimit(), this._touch();
87
- const s = this.inspectBytes(t);
88
- return this.position += i ?? t, s;
89
- },
90
- readUint8() {
91
- this.assertReadLimit(), this._touch();
92
- const t = this.inspectUint8();
93
- return this.position += 1, t;
94
- },
95
- readUint16() {
96
- this.assertReadLimit(), this._touch();
97
- const t = this.inspectUint16();
98
- return this.position += 2, t;
99
- },
100
- readUint24() {
101
- this.assertReadLimit(), this._touch();
102
- const t = this.inspectUint24();
103
- return this.position += 3, t;
104
- },
105
- readUint32() {
106
- this.assertReadLimit(), this._touch();
107
- const t = this.inspectUint32();
108
- return this.position += 4, t;
109
- },
110
- get remaining() {
111
- return this.bytes.length - this.position;
112
- },
113
- setPosition(t) {
114
- const i = this.position;
115
- return this.assertPosition(t), this.position = t, () => this.position = i;
116
- },
117
- _touch() {
118
- if (this.recursiveReadLimit === Number.POSITIVE_INFINITY)
119
- return;
120
- const t = this.getReadCount();
121
- this.positionReadCount.set(this.position, t + 1), t > 0 && this.recursiveReadCount++;
1
+ import { BaseError as t } from "./index47.js";
2
+ class $ extends t {
3
+ constructor({ max: e, min: r, signed: s, size: n, value: a }) {
4
+ super(`Number "${a}" is not in safe ${n ? `${n * 8}-bit ${s ? "signed" : "unsigned"} ` : ""}integer range ${e ? `(${r} to ${e})` : `(above ${r})`}`, { name: "IntegerOutOfRangeError" });
5
+ }
6
+ }
7
+ class c extends t {
8
+ constructor({ givenSize: e, maxSize: r }) {
9
+ super(`Size cannot exceed ${r} bytes. Given size: ${e} bytes.`, { name: "SizeOverflowError" });
122
10
  }
123
- };
124
- function a(t, { recursiveReadLimit: i = 8192 } = {}) {
125
- const s = Object.create(h);
126
- return s.bytes = t, s.dataView = new DataView(t.buffer, t.byteOffset, t.byteLength), s.positionReadCount = /* @__PURE__ */ new Map(), s.recursiveReadLimit = i, s;
127
11
  }
128
12
  export {
129
- a as createCursor
13
+ $ as IntegerOutOfRangeError,
14
+ c as SizeOverflowError
130
15
  };