@solana/web3.js 1.74.0 → 2.0.0-experimental.1b52291

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 (102) hide show
  1. package/README.md +55 -112
  2. package/dist/index.browser.cjs +77 -0
  3. package/dist/index.browser.cjs.map +1 -0
  4. package/dist/index.browser.js +68 -0
  5. package/dist/index.browser.js.map +1 -0
  6. package/dist/index.development.js +539 -0
  7. package/dist/index.development.js.map +1 -0
  8. package/dist/index.native.js +70 -0
  9. package/dist/index.native.js.map +1 -0
  10. package/dist/index.node.cjs +79 -0
  11. package/dist/index.node.cjs.map +1 -0
  12. package/dist/index.node.js +70 -0
  13. package/dist/index.node.js.map +1 -0
  14. package/dist/index.production.min.js +13 -0
  15. package/dist/types/index.d.ts +4 -0
  16. package/dist/types/index.d.ts.map +1 -0
  17. package/dist/types/rpc-default-config.d.ts +3 -0
  18. package/dist/types/rpc-default-config.d.ts.map +1 -0
  19. package/dist/types/rpc-integer-overflow-error.d.ts +8 -0
  20. package/dist/types/rpc-integer-overflow-error.d.ts.map +1 -0
  21. package/dist/types/rpc-transport.d.ts +4 -0
  22. package/dist/types/rpc-transport.d.ts.map +1 -0
  23. package/dist/types/rpc.d.ts +5 -0
  24. package/dist/types/rpc.d.ts.map +1 -0
  25. package/package.json +86 -113
  26. package/lib/index.browser.cjs.js +0 -9485
  27. package/lib/index.browser.cjs.js.map +0 -1
  28. package/lib/index.browser.esm.js +0 -9379
  29. package/lib/index.browser.esm.js.map +0 -1
  30. package/lib/index.cjs.js +0 -12009
  31. package/lib/index.cjs.js.map +0 -1
  32. package/lib/index.d.ts +0 -3865
  33. package/lib/index.esm.js +0 -11896
  34. package/lib/index.esm.js.map +0 -1
  35. package/lib/index.iife.js +0 -24568
  36. package/lib/index.iife.js.map +0 -1
  37. package/lib/index.iife.min.js +0 -13
  38. package/lib/index.iife.min.js.map +0 -1
  39. package/lib/index.native.js +0 -9485
  40. package/lib/index.native.js.map +0 -1
  41. package/src/__forks__/browser/fetch-impl.ts +0 -4
  42. package/src/__forks__/browser/rpc-websocket-factory.ts +0 -1
  43. package/src/__forks__/react-native/fetch-impl.ts +0 -4
  44. package/src/__forks__/react-native/rpc-websocket-factory.ts +0 -1
  45. package/src/account-data.ts +0 -39
  46. package/src/account.ts +0 -55
  47. package/src/blockhash.ts +0 -4
  48. package/src/bpf-loader-deprecated.ts +0 -5
  49. package/src/bpf-loader.ts +0 -45
  50. package/src/connection.ts +0 -6678
  51. package/src/epoch-schedule.ts +0 -102
  52. package/src/errors.ts +0 -50
  53. package/src/fee-calculator.ts +0 -18
  54. package/src/fetch-impl.ts +0 -13
  55. package/src/index.ts +0 -24
  56. package/src/instruction.ts +0 -58
  57. package/src/keypair.ts +0 -93
  58. package/src/layout.ts +0 -188
  59. package/src/loader.ts +0 -236
  60. package/src/message/account-keys.ts +0 -79
  61. package/src/message/compiled-keys.ts +0 -165
  62. package/src/message/index.ts +0 -47
  63. package/src/message/legacy.ts +0 -326
  64. package/src/message/v0.ts +0 -496
  65. package/src/message/versioned.ts +0 -36
  66. package/src/nonce-account.ts +0 -82
  67. package/src/programs/address-lookup-table/index.ts +0 -435
  68. package/src/programs/address-lookup-table/state.ts +0 -84
  69. package/src/programs/compute-budget.ts +0 -281
  70. package/src/programs/ed25519.ts +0 -157
  71. package/src/programs/index.ts +0 -7
  72. package/src/programs/secp256k1.ts +0 -228
  73. package/src/programs/stake.ts +0 -935
  74. package/src/programs/system.ts +0 -1048
  75. package/src/programs/vote.ts +0 -541
  76. package/src/publickey.ts +0 -259
  77. package/src/rpc-websocket-factory.ts +0 -4
  78. package/src/rpc-websocket.ts +0 -79
  79. package/src/sysvar.ts +0 -37
  80. package/src/timing.ts +0 -23
  81. package/src/transaction/constants.ts +0 -12
  82. package/src/transaction/expiry-custom-errors.ts +0 -48
  83. package/src/transaction/index.ts +0 -5
  84. package/src/transaction/legacy.ts +0 -908
  85. package/src/transaction/message.ts +0 -140
  86. package/src/transaction/versioned.ts +0 -126
  87. package/src/utils/assert.ts +0 -8
  88. package/src/utils/bigint.ts +0 -43
  89. package/src/utils/borsh-schema.ts +0 -38
  90. package/src/utils/cluster.ts +0 -31
  91. package/src/utils/ed25519.ts +0 -46
  92. package/src/utils/index.ts +0 -5
  93. package/src/utils/makeWebsocketUrl.ts +0 -26
  94. package/src/utils/promise-timeout.ts +0 -14
  95. package/src/utils/secp256k1.ts +0 -18
  96. package/src/utils/send-and-confirm-raw-transaction.ts +0 -102
  97. package/src/utils/send-and-confirm-transaction.ts +0 -98
  98. package/src/utils/shortvec-encoding.ts +0 -28
  99. package/src/utils/sleep.ts +0 -4
  100. package/src/utils/to-buffer.ts +0 -11
  101. package/src/validator-info.ts +0 -104
  102. package/src/vote-account.ts +0 -236
@@ -0,0 +1,70 @@
1
+ export * from '@solana/keys';
2
+ import { createSolanaRpcApi } from '@solana/rpc-core';
3
+ import { createJsonRpc, createHttpTransport } from '@solana/rpc-transport';
4
+
5
+ // src/index.ts
6
+
7
+ // src/rpc-integer-overflow-error.ts
8
+ var SolanaJsonRpcIntegerOverflowError = class extends Error {
9
+ constructor(methodName, keyPath, value) {
10
+ const argPosition = (typeof keyPath[0] === "number" ? keyPath[0] : parseInt(keyPath[0], 10)) + 1;
11
+ let ordinal = "";
12
+ const lastDigit = argPosition % 10;
13
+ const lastTwoDigits = argPosition % 100;
14
+ if (lastDigit == 1 && lastTwoDigits != 11) {
15
+ ordinal = argPosition + "st";
16
+ } else if (lastDigit == 2 && lastTwoDigits != 12) {
17
+ ordinal = argPosition + "nd";
18
+ } else if (lastDigit == 3 && lastTwoDigits != 13) {
19
+ ordinal = argPosition + "rd";
20
+ } else {
21
+ ordinal = argPosition + "th";
22
+ }
23
+ const path = keyPath.length > 1 ? keyPath.slice(1).map((pathPart) => typeof pathPart === "number" ? `[${pathPart}]` : pathPart).join(".") : null;
24
+ super(
25
+ `The ${ordinal} argument to the \`${methodName}\` RPC method${path ? ` at path \`${path}\`` : ""} was \`${value}\`. This number is unsafe for use with the Solana JSON-RPC because it exceeds \`Number.MAX_SAFE_INTEGER\`.`
26
+ );
27
+ this.keyPath = keyPath;
28
+ this.methodName = methodName;
29
+ this.value = value;
30
+ }
31
+ get name() {
32
+ return "SolanaJsonRpcIntegerOverflowError";
33
+ }
34
+ };
35
+
36
+ // src/rpc-default-config.ts
37
+ var DEFAULT_RPC_CONFIG = {
38
+ onIntegerOverflow(methodName, keyPath, value) {
39
+ throw new SolanaJsonRpcIntegerOverflowError(methodName, keyPath, value);
40
+ }
41
+ };
42
+ function createSolanaRpc(config) {
43
+ return createJsonRpc({
44
+ ...config,
45
+ api: createSolanaRpcApi(DEFAULT_RPC_CONFIG)
46
+ });
47
+ }
48
+ function normalizeHeaders(headers) {
49
+ const out = {};
50
+ for (const headerName in headers) {
51
+ out[headerName.toLowerCase()] = headers[headerName];
52
+ }
53
+ return out;
54
+ }
55
+ function createDefaultRpcTransport(config) {
56
+ return createHttpTransport({
57
+ ...config,
58
+ headers: {
59
+ ...config.headers ? normalizeHeaders(config.headers) : void 0,
60
+ ...{
61
+ // Keep these headers lowercase so they will override any user-supplied headers above.
62
+ "solana-client": `js/${"2.0.0-development"}` ?? "UNKNOWN"
63
+ }
64
+ }
65
+ });
66
+ }
67
+
68
+ export { createDefaultRpcTransport, createSolanaRpc };
69
+ //# sourceMappingURL=out.js.map
70
+ //# sourceMappingURL=index.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.ts","../src/rpc.ts","../src/rpc-integer-overflow-error.ts","../src/rpc-default-config.ts","../src/rpc-transport.ts"],"names":[],"mappings":";AAAA,cAAc;;;ACAd,SAA2B,0BAA0B;;;ACA9C,IAAM,oCAAN,cAAgD,MAAM;AAAA,EAIzD,YAAY,YAAoB,SAA8B,OAAe;AACzE,UAAM,eAAe,OAAO,QAAQ,CAAC,MAAM,WAAW,QAAQ,CAAC,IAAI,SAAS,QAAQ,CAAC,GAAG,EAAE,KAAK;AAC/F,QAAI,UAAU;AACd,UAAM,YAAY,cAAc;AAChC,UAAM,gBAAgB,cAAc;AACpC,QAAI,aAAa,KAAK,iBAAiB,IAAI;AACvC,gBAAU,cAAc;AAAA,IAC5B,WAAW,aAAa,KAAK,iBAAiB,IAAI;AAC9C,gBAAU,cAAc;AAAA,IAC5B,WAAW,aAAa,KAAK,iBAAiB,IAAI;AAC9C,gBAAU,cAAc;AAAA,IAC5B,OAAO;AACH,gBAAU,cAAc;AAAA,IAC5B;AACA,UAAM,OACF,QAAQ,SAAS,IACX,QACK,MAAM,CAAC,EACP,IAAI,cAAa,OAAO,aAAa,WAAW,IAAI,cAAc,QAAS,EAC3E,KAAK,GAAG,IACb;AACV;AAAA,MACI,OAAO,6BAA6B,0BAC7B,OAAO,cAAc,WAAW,YAAY;AAAA,IAGvD;AACA,SAAK,UAAU;AACf,SAAK,aAAa;AAClB,SAAK,QAAQ;AAAA,EACjB;AAAA,EACA,IAAI,OAAO;AACP,WAAO;AAAA,EACX;AACJ;;;ACnCO,IAAM,qBAAwE;AAAA,EACjF,kBAAkB,YAAY,SAAS,OAAO;AAC1C,UAAM,IAAI,kCAAkC,YAAY,SAAS,KAAK;AAAA,EAC1E;AACJ;;;AFJA,SAAS,qBAAqB;AAGvB,SAAS,gBAAgB,QAAiF;AAC7G,SAAO,cAAgC;AAAA,IACnC,GAAG;AAAA,IACH,KAAK,mBAAmB,kBAAkB;AAAA,EAC9C,CAAC;AACL;;;AGXA,SAAS,2BAA2B;AAMpC,SAAS,iBACL,SACiD;AACjD,QAAM,MAA8B,CAAC;AACrC,aAAW,cAAc,SAAS;AAC9B,QAAI,WAAW,YAAY,CAAC,IAAI,QAAQ,UAAU;AAAA,EACtD;AACA,SAAO;AACX;AAEO,SAAS,0BAA0B,QAAkE;AACxG,SAAO,oBAAoB;AAAA,IACvB,GAAG;AAAA,IACH,SAAS;AAAA,MACL,GAAI,OAAO,UAAU,iBAAiB,OAAO,OAAO,IAAI;AAAA,MACxD,GAAI;AAAA;AAAA,QAEA,iBAAiB,MAAM,yBAAiB;AAAA,MAC5C;AAAA,IACJ;AAAA,EACJ,CAAC;AACL","sourcesContent":["export * from '@solana/keys';\nexport * from './rpc';\nexport * from './rpc-transport';\n","import { SolanaRpcMethods, createSolanaRpcApi } from '@solana/rpc-core';\nimport { DEFAULT_RPC_CONFIG } from './rpc-default-config';\n\nimport { createJsonRpc } from '@solana/rpc-transport';\nimport type { Rpc } from '@solana/rpc-transport/dist/types/json-rpc-types';\n\nexport function createSolanaRpc(config: Omit<Parameters<typeof createJsonRpc>[0], 'api'>): Rpc<SolanaRpcMethods> {\n return createJsonRpc<SolanaRpcMethods>({\n ...config,\n api: createSolanaRpcApi(DEFAULT_RPC_CONFIG),\n });\n}\n","export class SolanaJsonRpcIntegerOverflowError extends Error {\n readonly methodName: string;\n readonly keyPath: (number | string)[];\n readonly value: bigint;\n constructor(methodName: string, keyPath: (number | string)[], value: bigint) {\n const argPosition = (typeof keyPath[0] === 'number' ? keyPath[0] : parseInt(keyPath[0], 10)) + 1;\n let ordinal = '';\n const lastDigit = argPosition % 10;\n const lastTwoDigits = argPosition % 100;\n if (lastDigit == 1 && lastTwoDigits != 11) {\n ordinal = argPosition + 'st';\n } else if (lastDigit == 2 && lastTwoDigits != 12) {\n ordinal = argPosition + 'nd';\n } else if (lastDigit == 3 && lastTwoDigits != 13) {\n ordinal = argPosition + 'rd';\n } else {\n ordinal = argPosition + 'th';\n }\n const path =\n keyPath.length > 1\n ? keyPath\n .slice(1)\n .map(pathPart => (typeof pathPart === 'number' ? `[${pathPart}]` : pathPart))\n .join('.')\n : null;\n super(\n `The ${ordinal} argument to the \\`${methodName}\\` RPC method` +\n `${path ? ` at path \\`${path}\\`` : ''} was \\`${value}\\`. This number is ` +\n 'unsafe for use with the Solana JSON-RPC because it exceeds ' +\n '`Number.MAX_SAFE_INTEGER`.'\n );\n this.keyPath = keyPath;\n this.methodName = methodName;\n this.value = value;\n }\n get name() {\n return 'SolanaJsonRpcIntegerOverflowError';\n }\n}\n","import { createSolanaRpcApi } from '@solana/rpc-core';\nimport { SolanaJsonRpcIntegerOverflowError } from './rpc-integer-overflow-error';\n\nexport const DEFAULT_RPC_CONFIG: Partial<Parameters<typeof createSolanaRpcApi>[0]> = {\n onIntegerOverflow(methodName, keyPath, value) {\n throw new SolanaJsonRpcIntegerOverflowError(methodName, keyPath, value);\n },\n};\n","import { createHttpTransport } from '@solana/rpc-transport';\nimport { IRpcTransport } from '@solana/rpc-transport/dist/types/transports/transport-types';\n\n/**\n * Lowercasing header names makes it easier to override user-supplied headers.\n */\nfunction normalizeHeaders<T extends Record<string, string>>(\n headers: T\n): { [K in keyof T & string as Lowercase<K>]: T[K] } {\n const out: Record<string, string> = {};\n for (const headerName in headers) {\n out[headerName.toLowerCase()] = headers[headerName];\n }\n return out as { [K in keyof T & string as Lowercase<K>]: T[K] };\n}\n\nexport function createDefaultRpcTransport(config: Parameters<typeof createHttpTransport>[0]): IRpcTransport {\n return createHttpTransport({\n ...config,\n headers: {\n ...(config.headers ? normalizeHeaders(config.headers) : undefined),\n ...({\n // Keep these headers lowercase so they will override any user-supplied headers above.\n 'solana-client': `js/${__VERSION__}` ?? 'UNKNOWN',\n } as { [overrideHeader: string]: string }),\n },\n });\n}\n"]}
@@ -0,0 +1,79 @@
1
+ 'use strict';
2
+
3
+ var keys = require('@solana/keys');
4
+ var rpcCore = require('@solana/rpc-core');
5
+ var rpcTransport = require('@solana/rpc-transport');
6
+
7
+ // src/index.ts
8
+
9
+ // src/rpc-integer-overflow-error.ts
10
+ var SolanaJsonRpcIntegerOverflowError = class extends Error {
11
+ constructor(methodName, keyPath, value) {
12
+ const argPosition = (typeof keyPath[0] === "number" ? keyPath[0] : parseInt(keyPath[0], 10)) + 1;
13
+ let ordinal = "";
14
+ const lastDigit = argPosition % 10;
15
+ const lastTwoDigits = argPosition % 100;
16
+ if (lastDigit == 1 && lastTwoDigits != 11) {
17
+ ordinal = argPosition + "st";
18
+ } else if (lastDigit == 2 && lastTwoDigits != 12) {
19
+ ordinal = argPosition + "nd";
20
+ } else if (lastDigit == 3 && lastTwoDigits != 13) {
21
+ ordinal = argPosition + "rd";
22
+ } else {
23
+ ordinal = argPosition + "th";
24
+ }
25
+ const path = keyPath.length > 1 ? keyPath.slice(1).map((pathPart) => typeof pathPart === "number" ? `[${pathPart}]` : pathPart).join(".") : null;
26
+ super(
27
+ `The ${ordinal} argument to the \`${methodName}\` RPC method${path ? ` at path \`${path}\`` : ""} was \`${value}\`. This number is unsafe for use with the Solana JSON-RPC because it exceeds \`Number.MAX_SAFE_INTEGER\`.`
28
+ );
29
+ this.keyPath = keyPath;
30
+ this.methodName = methodName;
31
+ this.value = value;
32
+ }
33
+ get name() {
34
+ return "SolanaJsonRpcIntegerOverflowError";
35
+ }
36
+ };
37
+
38
+ // src/rpc-default-config.ts
39
+ var DEFAULT_RPC_CONFIG = {
40
+ onIntegerOverflow(methodName, keyPath, value) {
41
+ throw new SolanaJsonRpcIntegerOverflowError(methodName, keyPath, value);
42
+ }
43
+ };
44
+ function createSolanaRpc(config) {
45
+ return rpcTransport.createJsonRpc({
46
+ ...config,
47
+ api: rpcCore.createSolanaRpcApi(DEFAULT_RPC_CONFIG)
48
+ });
49
+ }
50
+ function normalizeHeaders(headers) {
51
+ const out = {};
52
+ for (const headerName in headers) {
53
+ out[headerName.toLowerCase()] = headers[headerName];
54
+ }
55
+ return out;
56
+ }
57
+ function createDefaultRpcTransport(config) {
58
+ return rpcTransport.createHttpTransport({
59
+ ...config,
60
+ headers: {
61
+ ...config.headers ? normalizeHeaders(config.headers) : void 0,
62
+ ...{
63
+ // Keep these headers lowercase so they will override any user-supplied headers above.
64
+ "solana-client": `js/${"2.0.0-development"}` ?? "UNKNOWN"
65
+ }
66
+ }
67
+ });
68
+ }
69
+
70
+ exports.createDefaultRpcTransport = createDefaultRpcTransport;
71
+ exports.createSolanaRpc = createSolanaRpc;
72
+ Object.keys(keys).forEach(function (k) {
73
+ if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
74
+ enumerable: true,
75
+ get: function () { return keys[k]; }
76
+ });
77
+ });
78
+ //# sourceMappingURL=out.js.map
79
+ //# sourceMappingURL=index.node.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.ts","../src/rpc.ts","../src/rpc-integer-overflow-error.ts","../src/rpc-default-config.ts","../src/rpc-transport.ts"],"names":[],"mappings":";AAAA,cAAc;;;ACAd,SAA2B,0BAA0B;;;ACA9C,IAAM,oCAAN,cAAgD,MAAM;AAAA,EAIzD,YAAY,YAAoB,SAA8B,OAAe;AACzE,UAAM,eAAe,OAAO,QAAQ,CAAC,MAAM,WAAW,QAAQ,CAAC,IAAI,SAAS,QAAQ,CAAC,GAAG,EAAE,KAAK;AAC/F,QAAI,UAAU;AACd,UAAM,YAAY,cAAc;AAChC,UAAM,gBAAgB,cAAc;AACpC,QAAI,aAAa,KAAK,iBAAiB,IAAI;AACvC,gBAAU,cAAc;AAAA,IAC5B,WAAW,aAAa,KAAK,iBAAiB,IAAI;AAC9C,gBAAU,cAAc;AAAA,IAC5B,WAAW,aAAa,KAAK,iBAAiB,IAAI;AAC9C,gBAAU,cAAc;AAAA,IAC5B,OAAO;AACH,gBAAU,cAAc;AAAA,IAC5B;AACA,UAAM,OACF,QAAQ,SAAS,IACX,QACK,MAAM,CAAC,EACP,IAAI,cAAa,OAAO,aAAa,WAAW,IAAI,cAAc,QAAS,EAC3E,KAAK,GAAG,IACb;AACV;AAAA,MACI,OAAO,6BAA6B,0BAC7B,OAAO,cAAc,WAAW,YAAY;AAAA,IAGvD;AACA,SAAK,UAAU;AACf,SAAK,aAAa;AAClB,SAAK,QAAQ;AAAA,EACjB;AAAA,EACA,IAAI,OAAO;AACP,WAAO;AAAA,EACX;AACJ;;;ACnCO,IAAM,qBAAwE;AAAA,EACjF,kBAAkB,YAAY,SAAS,OAAO;AAC1C,UAAM,IAAI,kCAAkC,YAAY,SAAS,KAAK;AAAA,EAC1E;AACJ;;;AFJA,SAAS,qBAAqB;AAGvB,SAAS,gBAAgB,QAAiF;AAC7G,SAAO,cAAgC;AAAA,IACnC,GAAG;AAAA,IACH,KAAK,mBAAmB,kBAAkB;AAAA,EAC9C,CAAC;AACL;;;AGXA,SAAS,2BAA2B;AAMpC,SAAS,iBACL,SACiD;AACjD,QAAM,MAA8B,CAAC;AACrC,aAAW,cAAc,SAAS;AAC9B,QAAI,WAAW,YAAY,CAAC,IAAI,QAAQ,UAAU;AAAA,EACtD;AACA,SAAO;AACX;AAEO,SAAS,0BAA0B,QAAkE;AACxG,SAAO,oBAAoB;AAAA,IACvB,GAAG;AAAA,IACH,SAAS;AAAA,MACL,GAAI,OAAO,UAAU,iBAAiB,OAAO,OAAO,IAAI;AAAA,MACxD,GAAI;AAAA;AAAA,QAEA,iBAAiB,MAAM,yBAAiB;AAAA,MAC5C;AAAA,IACJ;AAAA,EACJ,CAAC;AACL","sourcesContent":["export * from '@solana/keys';\nexport * from './rpc';\nexport * from './rpc-transport';\n","import { SolanaRpcMethods, createSolanaRpcApi } from '@solana/rpc-core';\nimport { DEFAULT_RPC_CONFIG } from './rpc-default-config';\n\nimport { createJsonRpc } from '@solana/rpc-transport';\nimport type { Rpc } from '@solana/rpc-transport/dist/types/json-rpc-types';\n\nexport function createSolanaRpc(config: Omit<Parameters<typeof createJsonRpc>[0], 'api'>): Rpc<SolanaRpcMethods> {\n return createJsonRpc<SolanaRpcMethods>({\n ...config,\n api: createSolanaRpcApi(DEFAULT_RPC_CONFIG),\n });\n}\n","export class SolanaJsonRpcIntegerOverflowError extends Error {\n readonly methodName: string;\n readonly keyPath: (number | string)[];\n readonly value: bigint;\n constructor(methodName: string, keyPath: (number | string)[], value: bigint) {\n const argPosition = (typeof keyPath[0] === 'number' ? keyPath[0] : parseInt(keyPath[0], 10)) + 1;\n let ordinal = '';\n const lastDigit = argPosition % 10;\n const lastTwoDigits = argPosition % 100;\n if (lastDigit == 1 && lastTwoDigits != 11) {\n ordinal = argPosition + 'st';\n } else if (lastDigit == 2 && lastTwoDigits != 12) {\n ordinal = argPosition + 'nd';\n } else if (lastDigit == 3 && lastTwoDigits != 13) {\n ordinal = argPosition + 'rd';\n } else {\n ordinal = argPosition + 'th';\n }\n const path =\n keyPath.length > 1\n ? keyPath\n .slice(1)\n .map(pathPart => (typeof pathPart === 'number' ? `[${pathPart}]` : pathPart))\n .join('.')\n : null;\n super(\n `The ${ordinal} argument to the \\`${methodName}\\` RPC method` +\n `${path ? ` at path \\`${path}\\`` : ''} was \\`${value}\\`. This number is ` +\n 'unsafe for use with the Solana JSON-RPC because it exceeds ' +\n '`Number.MAX_SAFE_INTEGER`.'\n );\n this.keyPath = keyPath;\n this.methodName = methodName;\n this.value = value;\n }\n get name() {\n return 'SolanaJsonRpcIntegerOverflowError';\n }\n}\n","import { createSolanaRpcApi } from '@solana/rpc-core';\nimport { SolanaJsonRpcIntegerOverflowError } from './rpc-integer-overflow-error';\n\nexport const DEFAULT_RPC_CONFIG: Partial<Parameters<typeof createSolanaRpcApi>[0]> = {\n onIntegerOverflow(methodName, keyPath, value) {\n throw new SolanaJsonRpcIntegerOverflowError(methodName, keyPath, value);\n },\n};\n","import { createHttpTransport } from '@solana/rpc-transport';\nimport { IRpcTransport } from '@solana/rpc-transport/dist/types/transports/transport-types';\n\n/**\n * Lowercasing header names makes it easier to override user-supplied headers.\n */\nfunction normalizeHeaders<T extends Record<string, string>>(\n headers: T\n): { [K in keyof T & string as Lowercase<K>]: T[K] } {\n const out: Record<string, string> = {};\n for (const headerName in headers) {\n out[headerName.toLowerCase()] = headers[headerName];\n }\n return out as { [K in keyof T & string as Lowercase<K>]: T[K] };\n}\n\nexport function createDefaultRpcTransport(config: Parameters<typeof createHttpTransport>[0]): IRpcTransport {\n return createHttpTransport({\n ...config,\n headers: {\n ...(config.headers ? normalizeHeaders(config.headers) : undefined),\n ...({\n // Keep these headers lowercase so they will override any user-supplied headers above.\n 'solana-client': `js/${__VERSION__}` ?? 'UNKNOWN',\n } as { [overrideHeader: string]: string }),\n },\n });\n}\n"]}
@@ -0,0 +1,70 @@
1
+ export * from '@solana/keys';
2
+ import { createSolanaRpcApi } from '@solana/rpc-core';
3
+ import { createJsonRpc, createHttpTransport } from '@solana/rpc-transport';
4
+
5
+ // src/index.ts
6
+
7
+ // src/rpc-integer-overflow-error.ts
8
+ var SolanaJsonRpcIntegerOverflowError = class extends Error {
9
+ constructor(methodName, keyPath, value) {
10
+ const argPosition = (typeof keyPath[0] === "number" ? keyPath[0] : parseInt(keyPath[0], 10)) + 1;
11
+ let ordinal = "";
12
+ const lastDigit = argPosition % 10;
13
+ const lastTwoDigits = argPosition % 100;
14
+ if (lastDigit == 1 && lastTwoDigits != 11) {
15
+ ordinal = argPosition + "st";
16
+ } else if (lastDigit == 2 && lastTwoDigits != 12) {
17
+ ordinal = argPosition + "nd";
18
+ } else if (lastDigit == 3 && lastTwoDigits != 13) {
19
+ ordinal = argPosition + "rd";
20
+ } else {
21
+ ordinal = argPosition + "th";
22
+ }
23
+ const path = keyPath.length > 1 ? keyPath.slice(1).map((pathPart) => typeof pathPart === "number" ? `[${pathPart}]` : pathPart).join(".") : null;
24
+ super(
25
+ `The ${ordinal} argument to the \`${methodName}\` RPC method${path ? ` at path \`${path}\`` : ""} was \`${value}\`. This number is unsafe for use with the Solana JSON-RPC because it exceeds \`Number.MAX_SAFE_INTEGER\`.`
26
+ );
27
+ this.keyPath = keyPath;
28
+ this.methodName = methodName;
29
+ this.value = value;
30
+ }
31
+ get name() {
32
+ return "SolanaJsonRpcIntegerOverflowError";
33
+ }
34
+ };
35
+
36
+ // src/rpc-default-config.ts
37
+ var DEFAULT_RPC_CONFIG = {
38
+ onIntegerOverflow(methodName, keyPath, value) {
39
+ throw new SolanaJsonRpcIntegerOverflowError(methodName, keyPath, value);
40
+ }
41
+ };
42
+ function createSolanaRpc(config) {
43
+ return createJsonRpc({
44
+ ...config,
45
+ api: createSolanaRpcApi(DEFAULT_RPC_CONFIG)
46
+ });
47
+ }
48
+ function normalizeHeaders(headers) {
49
+ const out = {};
50
+ for (const headerName in headers) {
51
+ out[headerName.toLowerCase()] = headers[headerName];
52
+ }
53
+ return out;
54
+ }
55
+ function createDefaultRpcTransport(config) {
56
+ return createHttpTransport({
57
+ ...config,
58
+ headers: {
59
+ ...config.headers ? normalizeHeaders(config.headers) : void 0,
60
+ ...{
61
+ // Keep these headers lowercase so they will override any user-supplied headers above.
62
+ "solana-client": `js/${"2.0.0-development"}` ?? "UNKNOWN"
63
+ }
64
+ }
65
+ });
66
+ }
67
+
68
+ export { createDefaultRpcTransport, createSolanaRpc };
69
+ //# sourceMappingURL=out.js.map
70
+ //# sourceMappingURL=index.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.ts","../src/rpc.ts","../src/rpc-integer-overflow-error.ts","../src/rpc-default-config.ts","../src/rpc-transport.ts"],"names":[],"mappings":";AAAA,cAAc;;;ACAd,SAA2B,0BAA0B;;;ACA9C,IAAM,oCAAN,cAAgD,MAAM;AAAA,EAIzD,YAAY,YAAoB,SAA8B,OAAe;AACzE,UAAM,eAAe,OAAO,QAAQ,CAAC,MAAM,WAAW,QAAQ,CAAC,IAAI,SAAS,QAAQ,CAAC,GAAG,EAAE,KAAK;AAC/F,QAAI,UAAU;AACd,UAAM,YAAY,cAAc;AAChC,UAAM,gBAAgB,cAAc;AACpC,QAAI,aAAa,KAAK,iBAAiB,IAAI;AACvC,gBAAU,cAAc;AAAA,IAC5B,WAAW,aAAa,KAAK,iBAAiB,IAAI;AAC9C,gBAAU,cAAc;AAAA,IAC5B,WAAW,aAAa,KAAK,iBAAiB,IAAI;AAC9C,gBAAU,cAAc;AAAA,IAC5B,OAAO;AACH,gBAAU,cAAc;AAAA,IAC5B;AACA,UAAM,OACF,QAAQ,SAAS,IACX,QACK,MAAM,CAAC,EACP,IAAI,cAAa,OAAO,aAAa,WAAW,IAAI,cAAc,QAAS,EAC3E,KAAK,GAAG,IACb;AACV;AAAA,MACI,OAAO,6BAA6B,0BAC7B,OAAO,cAAc,WAAW,YAAY;AAAA,IAGvD;AACA,SAAK,UAAU;AACf,SAAK,aAAa;AAClB,SAAK,QAAQ;AAAA,EACjB;AAAA,EACA,IAAI,OAAO;AACP,WAAO;AAAA,EACX;AACJ;;;ACnCO,IAAM,qBAAwE;AAAA,EACjF,kBAAkB,YAAY,SAAS,OAAO;AAC1C,UAAM,IAAI,kCAAkC,YAAY,SAAS,KAAK;AAAA,EAC1E;AACJ;;;AFJA,SAAS,qBAAqB;AAGvB,SAAS,gBAAgB,QAAiF;AAC7G,SAAO,cAAgC;AAAA,IACnC,GAAG;AAAA,IACH,KAAK,mBAAmB,kBAAkB;AAAA,EAC9C,CAAC;AACL;;;AGXA,SAAS,2BAA2B;AAMpC,SAAS,iBACL,SACiD;AACjD,QAAM,MAA8B,CAAC;AACrC,aAAW,cAAc,SAAS;AAC9B,QAAI,WAAW,YAAY,CAAC,IAAI,QAAQ,UAAU;AAAA,EACtD;AACA,SAAO;AACX;AAEO,SAAS,0BAA0B,QAAkE;AACxG,SAAO,oBAAoB;AAAA,IACvB,GAAG;AAAA,IACH,SAAS;AAAA,MACL,GAAI,OAAO,UAAU,iBAAiB,OAAO,OAAO,IAAI;AAAA,MACxD,GAAI;AAAA;AAAA,QAEA,iBAAiB,MAAM,yBAAiB;AAAA,MAC5C;AAAA,IACJ;AAAA,EACJ,CAAC;AACL","sourcesContent":["export * from '@solana/keys';\nexport * from './rpc';\nexport * from './rpc-transport';\n","import { SolanaRpcMethods, createSolanaRpcApi } from '@solana/rpc-core';\nimport { DEFAULT_RPC_CONFIG } from './rpc-default-config';\n\nimport { createJsonRpc } from '@solana/rpc-transport';\nimport type { Rpc } from '@solana/rpc-transport/dist/types/json-rpc-types';\n\nexport function createSolanaRpc(config: Omit<Parameters<typeof createJsonRpc>[0], 'api'>): Rpc<SolanaRpcMethods> {\n return createJsonRpc<SolanaRpcMethods>({\n ...config,\n api: createSolanaRpcApi(DEFAULT_RPC_CONFIG),\n });\n}\n","export class SolanaJsonRpcIntegerOverflowError extends Error {\n readonly methodName: string;\n readonly keyPath: (number | string)[];\n readonly value: bigint;\n constructor(methodName: string, keyPath: (number | string)[], value: bigint) {\n const argPosition = (typeof keyPath[0] === 'number' ? keyPath[0] : parseInt(keyPath[0], 10)) + 1;\n let ordinal = '';\n const lastDigit = argPosition % 10;\n const lastTwoDigits = argPosition % 100;\n if (lastDigit == 1 && lastTwoDigits != 11) {\n ordinal = argPosition + 'st';\n } else if (lastDigit == 2 && lastTwoDigits != 12) {\n ordinal = argPosition + 'nd';\n } else if (lastDigit == 3 && lastTwoDigits != 13) {\n ordinal = argPosition + 'rd';\n } else {\n ordinal = argPosition + 'th';\n }\n const path =\n keyPath.length > 1\n ? keyPath\n .slice(1)\n .map(pathPart => (typeof pathPart === 'number' ? `[${pathPart}]` : pathPart))\n .join('.')\n : null;\n super(\n `The ${ordinal} argument to the \\`${methodName}\\` RPC method` +\n `${path ? ` at path \\`${path}\\`` : ''} was \\`${value}\\`. This number is ` +\n 'unsafe for use with the Solana JSON-RPC because it exceeds ' +\n '`Number.MAX_SAFE_INTEGER`.'\n );\n this.keyPath = keyPath;\n this.methodName = methodName;\n this.value = value;\n }\n get name() {\n return 'SolanaJsonRpcIntegerOverflowError';\n }\n}\n","import { createSolanaRpcApi } from '@solana/rpc-core';\nimport { SolanaJsonRpcIntegerOverflowError } from './rpc-integer-overflow-error';\n\nexport const DEFAULT_RPC_CONFIG: Partial<Parameters<typeof createSolanaRpcApi>[0]> = {\n onIntegerOverflow(methodName, keyPath, value) {\n throw new SolanaJsonRpcIntegerOverflowError(methodName, keyPath, value);\n },\n};\n","import { createHttpTransport } from '@solana/rpc-transport';\nimport { IRpcTransport } from '@solana/rpc-transport/dist/types/transports/transport-types';\n\n/**\n * Lowercasing header names makes it easier to override user-supplied headers.\n */\nfunction normalizeHeaders<T extends Record<string, string>>(\n headers: T\n): { [K in keyof T & string as Lowercase<K>]: T[K] } {\n const out: Record<string, string> = {};\n for (const headerName in headers) {\n out[headerName.toLowerCase()] = headers[headerName];\n }\n return out as { [K in keyof T & string as Lowercase<K>]: T[K] };\n}\n\nexport function createDefaultRpcTransport(config: Parameters<typeof createHttpTransport>[0]): IRpcTransport {\n return createHttpTransport({\n ...config,\n headers: {\n ...(config.headers ? normalizeHeaders(config.headers) : undefined),\n ...({\n // Keep these headers lowercase so they will override any user-supplied headers above.\n 'solana-client': `js/${__VERSION__}` ?? 'UNKNOWN',\n } as { [overrideHeader: string]: string }),\n },\n });\n}\n"]}
@@ -0,0 +1,13 @@
1
+ this.globalThis = this.globalThis || {};
2
+ this.globalThis.solanaWeb3 = (function (exports) {
3
+ 'use strict';
4
+
5
+ var G=Object.create;var C=Object.defineProperty;var V=Object.getOwnPropertyDescriptor;var W=Object.getOwnPropertyNames;var k=Object.getPrototypeOf,X=Object.prototype.hasOwnProperty;var Y=(e,r)=>()=>(e&&(r=e(e=0)),r);var I=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var B=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of W(r))!X.call(e,o)&&o!==t&&C(e,o,{get:()=>r[o],enumerable:!(n=V(r,o))||n.enumerable});return e};var Q=(e,r,t)=>(t=e!=null?G(k(e)):{},B(r||!e||!e.__esModule?C(t,"default",{value:e,enumerable:!0}):t,e));var i=Y(()=>{});var H=I((Ee,D)=>{i();function Z(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),t=0;t<r.length;t++)r[t]=255;for(var n=0;n<e.length;n++){var o=e.charAt(n),c=o.charCodeAt(0);if(r[c]!==255)throw new TypeError(o+" is ambiguous");r[c]=n;}var a=e.length,p=e.charAt(0),f=Math.log(a)/Math.log(256),R=Math.log(256)/Math.log(a);function g(s){if(s instanceof Uint8Array||(ArrayBuffer.isView(s)?s=new Uint8Array(s.buffer,s.byteOffset,s.byteLength):Array.isArray(s)&&(s=Uint8Array.from(s))),!(s instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(s.length===0)return "";for(var u=0,N=0,h=0,m=s.length;h!==m&&s[h]===0;)h++,u++;for(var w=(m-h)*R+1>>>0,l=new Uint8Array(w);h!==m;){for(var y=s[h],b=0,d=w-1;(y!==0||b<N)&&d!==-1;d--,b++)y+=256*l[d]>>>0,l[d]=y%a>>>0,y=y/a>>>0;if(y!==0)throw new Error("Non-zero carry");N=b,h++;}for(var E=w-N;E!==w&&l[E]===0;)E++;for(var S=p.repeat(u);E<w;++E)S+=e.charAt(l[E]);return S}function O(s){if(typeof s!="string")throw new TypeError("Expected String");if(s.length===0)return new Uint8Array;for(var u=0,N=0,h=0;s[u]===p;)N++,u++;for(var m=(s.length-u)*f+1>>>0,w=new Uint8Array(m);s[u];){var l=r[s.charCodeAt(u)];if(l===255)return;for(var y=0,b=m-1;(l!==0||y<h)&&b!==-1;b--,y++)l+=a*w[b]>>>0,w[b]=l%256>>>0,l=l/256>>>0;if(l!==0)throw new Error("Non-zero carry");h=y,u++;}for(var d=m-h;d!==m&&w[d]===0;)d++;for(var E=new Uint8Array(N+(m-d)),S=N;d!==m;)E[S++]=w[d++];return E}function q(s){var u=O(s);if(u)return u;throw new Error("Non-base"+a+" character")}return {encode:g,decodeUnsafe:O,decode:q}}D.exports=Z;});var L=I((be,U)=>{i();var ee=H(),re="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";U.exports=ee(re);});i();i();var M=Q(L(),1);function Ne(e){try{if(e.length<32||e.length>44)throw new Error("Expected input string to decode to a byte array of length 32.");let t=M.default.decode(e).byteLength;if(t!==32)throw new Error(`Expected input string to decode to a byte array of length 32. Actual length: ${t}`)}catch(r){throw new Error(`\`${e}\` is not a base-58 encoded address`,{cause:r})}}i();i();function v(e,r,t){if(Array.isArray(e))return e.map((n,o)=>v(n,[...r,o],t));if(typeof e=="object"&&e!==null){let n={};for(let o in e)Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=v(e[o],[...r,o],t));return n}else return typeof e=="bigint"?(t&&(e>Number.MAX_SAFE_INTEGER||e<-Number.MAX_SAFE_INTEGER)&&t(r,e),Number(e)):e}function te(e,r){return v(e,[],r)}var F={},ne={getInflationReward:[[F,"commission"]]};function P(e,r){return e.filter(t=>t[0]===F&&typeof r=="number"||t[0]===r).map(t=>t.slice(1))}function _(e,r){if(Array.isArray(e))return e.map((t,n)=>{let o=P(r,n);return _(t,o)});if(typeof e=="object"&&e!==null){let t={};for(let[n,o]of Object.entries(e)){let c=P(r,n);t[n]=_(o,c);}return t}else return typeof e=="number"&&r.length===0?BigInt(e):e}function oe(e,r){let t=r?ne[r]:void 0;return _(e,t??[])}function $(e){return new Proxy({},{defineProperty(){return !1},deleteProperty(){return !1},get(...r){let[t,n]=r,o=n.toString();return function(...c){let a=e?.onIntegerOverflow,p=te(c,a?(f,R)=>a(o,f,R):void 0);return {methodName:o,params:p,responseProcessor:f=>oe(f,o)}}}})}i();i();var T=class extends Error{constructor(t,n,o){let c=(typeof n[0]=="number"?n[0]:parseInt(n[0],10))+1,a="",p=c%10,f=c%100;p==1&&f!=11?a=c+"st":p==2&&f!=12?a=c+"nd":p==3&&f!=13?a=c+"rd":a=c+"th";let R=n.length>1?n.slice(1).map(g=>typeof g=="number"?`[${g}]`:g).join("."):null;super(`The ${a} argument to the \`${t}\` RPC method${R?` at path \`${R}\``:""} was \`${o}\`. This number is unsafe for use with the Solana JSON-RPC because it exceeds \`Number.MAX_SAFE_INTEGER\`.`);this.keyPath=n,this.methodName=t,this.value=o;}get name(){return "SolanaJsonRpcIntegerOverflowError"}};var j={onIntegerOverflow(e,r,t){throw new T(e,r,t)}};i();var se=class extends Error{constructor(e){super(`JSON-RPC 2.0 error (${e.code}): ${e.message}`),Error.captureStackTrace(this,this.constructor),this.code=e.code,this.data=e.data;}get name(){return "SolanaJsonRpcError"}},x=0;function ae(){let e=x;return x=(x+1)%Number.MAX_SAFE_INTEGER,e}function ie(e,r){return {id:ae(),jsonrpc:"2.0",method:e,params:r}}function ce(e,r){return {async send(t){let{methodName:n,params:o,responseProcessor:c}=r,a=ie(n,o),p=await e.transport({payload:a,signal:t?.abortSignal});if("error"in p)throw new se(p.error);return c?c(p.result):p.result}}}function pe(e){return new Proxy(e.api,{defineProperty(){return !1},deleteProperty(){return !1},get(r,t,n){return function(...o){let c=t.toString(),a=Reflect.get(r,c,n),p=a?a(...o):{methodName:c,params:o};return ce(e,p)}}})}function z(e){return pe(e)}var fe=class extends Error{constructor(e){super(`HTTP error (${e.statusCode}): ${e.message}`),Error.captureStackTrace(this,this.constructor),this.statusCode=e.statusCode;}get name(){return "SolanaHttpError"}};function de(e){let r={};for(let t in e)r[t.toLowerCase()]=e[t];return r}var ge=globalThis.fetch;function J({httpAgentNodeOnly:e,headers:r,url:t}){let n=void 0;let o=r&&de(r);return async function({payload:a,signal:p}){let f=JSON.stringify(a),R={agent:n,body:f,headers:{...o,accept:"application/json","content-length":f.length.toString(),"content-type":"application/json; charset=utf-8"},method:"POST",signal:p},g=await ge(t,R);if(!g.ok)throw new fe({message:g.statusText,statusCode:g.status});return await g.json()}}function Ke(e){return z({...e,api:$(j)})}i();function me(e){let r={};for(let t in e)r[t.toLowerCase()]=e[t];return r}function Ge(e){return J({...e,headers:{...e.headers?me(e.headers):void 0,"solana-client":"js/2.0.0-development"}})}
6
+
7
+ exports.assertIsBase58EncodedAddress = Ne;
8
+ exports.createDefaultRpcTransport = Ge;
9
+ exports.createSolanaRpc = Ke;
10
+
11
+ return exports;
12
+
13
+ })({});
@@ -0,0 +1,4 @@
1
+ export * from '@solana/keys';
2
+ export * from './rpc';
3
+ export * from './rpc-transport';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,OAAO,CAAC;AACtB,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { createSolanaRpcApi } from '@solana/rpc-core';
2
+ export declare const DEFAULT_RPC_CONFIG: Partial<Parameters<typeof createSolanaRpcApi>[0]>;
3
+ //# sourceMappingURL=rpc-default-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpc-default-config.d.ts","sourceRoot":"","sources":["../../src/rpc-default-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAGtD,eAAO,MAAM,kBAAkB,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAIhF,CAAC"}
@@ -0,0 +1,8 @@
1
+ export declare class SolanaJsonRpcIntegerOverflowError extends Error {
2
+ readonly methodName: string;
3
+ readonly keyPath: (number | string)[];
4
+ readonly value: bigint;
5
+ constructor(methodName: string, keyPath: (number | string)[], value: bigint);
6
+ get name(): string;
7
+ }
8
+ //# sourceMappingURL=rpc-integer-overflow-error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpc-integer-overflow-error.d.ts","sourceRoot":"","sources":["../../src/rpc-integer-overflow-error.ts"],"names":[],"mappings":"AAAA,qBAAa,iCAAkC,SAAQ,KAAK;IACxD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;gBACX,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM;IA+B3E,IAAI,IAAI,WAEP;CACJ"}
@@ -0,0 +1,4 @@
1
+ import { createHttpTransport } from '@solana/rpc-transport';
2
+ import { IRpcTransport } from '@solana/rpc-transport/dist/types/transports/transport-types';
3
+ export declare function createDefaultRpcTransport(config: Parameters<typeof createHttpTransport>[0]): IRpcTransport;
4
+ //# sourceMappingURL=rpc-transport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpc-transport.d.ts","sourceRoot":"","sources":["../../src/rpc-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,6DAA6D,CAAC;AAe5F,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,CAW1G"}
@@ -0,0 +1,5 @@
1
+ import { SolanaRpcMethods } from '@solana/rpc-core';
2
+ import { createJsonRpc } from '@solana/rpc-transport';
3
+ import type { Rpc } from '@solana/rpc-transport/dist/types/json-rpc-types';
4
+ export declare function createSolanaRpc(config: Omit<Parameters<typeof createJsonRpc>[0], 'api'>): Rpc<SolanaRpcMethods>;
5
+ //# sourceMappingURL=rpc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../src/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAsB,MAAM,kBAAkB,CAAC;AAGxE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iDAAiD,CAAC;AAE3E,wBAAgB,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,gBAAgB,CAAC,CAK/G"}
package/package.json CHANGED
@@ -1,131 +1,104 @@
1
1
  {
2
2
  "name": "@solana/web3.js",
3
- "version": "1.74.0",
3
+ "version": "2.0.0-experimental.1b52291",
4
4
  "description": "Solana Javascript API",
5
+ "exports": {
6
+ "browser": {
7
+ "import": "./dist/index.browser.js",
8
+ "require": "./dist/index.browser.cjs"
9
+ },
10
+ "node": {
11
+ "import": "./dist/index.node.js",
12
+ "require": "./dist/index.node.cjs"
13
+ },
14
+ "react-native": "./dist/index.native.js",
15
+ "types": "./dist/types/index.d.ts"
16
+ },
17
+ "browser": {
18
+ "./dist/index.node.cjs": "./dist/index.browser.cjs",
19
+ "./dist/index.node.js": "./dist/index.browser.js"
20
+ },
21
+ "jsdelivr": "./dist/index.production.min.js",
22
+ "umd": "./dist/index.production.min.js",
23
+ "unpkg": "./dist/index.production.min.js",
24
+ "main": "./dist/index.node.cjs",
25
+ "module": "./dist/index.node.js",
26
+ "react-native": "./dist/index.native.js",
27
+ "types": "./dist/types/index.d.ts",
28
+ "type": "module",
29
+ "files": [
30
+ "./dist/"
31
+ ],
32
+ "sideEffects": false,
5
33
  "keywords": [
6
- "api",
7
- "blockchain"
34
+ "blockchain",
35
+ "solana",
36
+ "web3"
8
37
  ],
9
- "license": "MIT",
10
38
  "author": "Solana Labs Maintainers <maintainers@solanalabs.com>",
11
- "homepage": "https://solana.com/",
39
+ "license": "MIT",
12
40
  "repository": {
13
41
  "type": "git",
14
- "url": "https://github.com/solana-labs/solana-web3.js.git"
42
+ "url": "https://github.com/solana-labs/solana-web3.js"
15
43
  },
16
44
  "bugs": {
17
- "url": "http://github.com/solana-labs/solana-web3.js.git/issues"
18
- },
19
- "publishConfig": {
20
- "access": "public"
21
- },
22
- "browser": {
23
- "./lib/index.cjs.js": "./lib/index.browser.cjs.js",
24
- "./lib/index.esm.js": "./lib/index.browser.esm.js"
45
+ "url": "http://github.com/solana-labs/solana-web3.js/issues"
25
46
  },
26
- "react-native": "lib/index.native.js",
27
- "main": "lib/index.cjs.js",
28
- "module": "lib/index.esm.js",
29
- "types": "lib/index.d.ts",
30
47
  "browserslist": [
31
- "defaults",
32
- "not IE 11",
48
+ "supports bigint and not dead",
33
49
  "maintained node versions"
34
50
  ],
35
- "files": [
36
- "/lib",
37
- "/src"
38
- ],
39
- "scripts": {
40
- "compile:docs": "typedoc --treatWarningsAsErrors",
41
- "compile:js": "cross-env NODE_ENV=production rollup -c",
42
- "compile:typedefs": "./scripts/typegen.sh",
43
- "build:fixtures": "set -ex; ./test/fixtures/noop-program/build.sh",
44
- "clean": "rimraf ./docs ./declarations ./lib",
45
- "dev": "cross-env NODE_ENV=development rollup -c --watch",
46
- "publish-packages": "semantic-release --repository-url git@github.com:solana-labs/solana-web3.js.git",
47
- "test:lint": "eslint src/ test/ --ext .js,.ts",
48
- "test:lint:fix": "eslint src/ test/ --fix --ext .js,.ts",
49
- "test:live": "TEST_LIVE=1 pnpm run test:unit:node",
50
- "test:live-with-test-validator": "start-server-and-test '$HOME/.local/share/solana/install/active_release/bin/solana-test-validator --reset --quiet' http://127.0.0.1:8899/health test:live",
51
- "test:prettier": "prettier --check '{,{src,test}/**/}*.{j,t}s'",
52
- "test:prettier:fix": "prettier --write '{,{src,test}/**/}*.{j,t}s'",
53
- "test:typecheck": "tsc --noEmit",
54
- "test:unit:node": "cross-env NODE_ENV=test TS_NODE_COMPILER_OPTIONS='{ \"module\": \"commonjs\", \"target\": \"es2019\" }' ts-mocha --require esm './test/**/*.test.ts'"
55
- },
56
51
  "dependencies": {
57
- "@babel/runtime": "^7.12.5",
58
- "@noble/ed25519": "^1.7.0",
59
- "@noble/hashes": "^1.1.2",
60
- "@noble/secp256k1": "^1.6.3",
61
- "@solana/buffer-layout": "^4.0.0",
62
- "agentkeepalive": "^4.2.1",
63
- "bigint-buffer": "^1.1.5",
64
- "bn.js": "^5.0.0",
65
- "borsh": "^0.7.0",
66
- "bs58": "^4.0.1",
67
- "buffer": "6.0.1",
68
- "fast-stable-stringify": "^1.0.0",
69
- "jayson": "^3.4.4",
70
- "node-fetch": "^2.6.7",
71
- "rpc-websockets": "^7.5.1",
72
- "superstruct": "^0.14.2"
52
+ "@solana/keys": "2.0.0-experimental.1b52291",
53
+ "@solana/rpc-core": "2.0.0-development",
54
+ "@solana/rpc-transport": "2.0.0-experimental.1b52291"
73
55
  },
74
56
  "devDependencies": {
75
- "@babel/core": "^7.12.13",
76
- "@babel/plugin-proposal-class-properties": "^7.12.1",
77
- "@babel/plugin-transform-runtime": "^7.12.10",
78
- "@babel/preset-env": "^7.12.11",
79
- "@babel/preset-typescript": "^7.12.16",
80
- "@rollup/plugin-alias": "^4.0.3",
81
- "@rollup/plugin-babel": "^6.0.3",
82
- "@rollup/plugin-commonjs": "^24.0.1",
83
- "@rollup/plugin-json": "^6.0.0",
84
- "@rollup/plugin-multi-entry": "^6.0.0",
85
- "@rollup/plugin-node-resolve": "^15.0.1",
86
- "@rollup/plugin-replace": "^5.0.2",
87
- "@solana/spl-token": "^0.3.7",
88
- "@types/bn.js": "^5.1.0",
89
- "@types/bs58": "^4.0.1",
90
- "@types/chai": "^4.2.15",
91
- "@types/chai-as-promised": "^7.1.3",
92
- "@types/express-serve-static-core": "^4.17.21",
93
- "@types/mocha": "^10.0.0",
94
- "@types/mz": "^2.7.3",
95
- "@types/node": "^18.11.10",
96
- "@types/node-fetch": "2",
97
- "@types/sinon": "^10.0.0",
98
- "@types/sinon-chai": "^3.2.8",
99
- "@typescript-eslint/eslint-plugin": "^5.40.1",
100
- "@typescript-eslint/parser": "^5.40.1",
101
- "chai": "^4.3.0",
102
- "chai-as-promised": "^7.1.1",
103
- "cross-env": "7.0.3",
104
- "eslint": "^8.25.0",
105
- "eslint-config-prettier": "^8.5.0",
106
- "eslint-plugin-import": "^2.26.0",
107
- "eslint-plugin-mocha": "^10.1.0",
108
- "eslint-plugin-prettier": "^4.2.1",
109
- "esm": "^3.2.25",
110
- "mocha": "^10.1.0",
111
- "mockttp": "^3.6.2",
112
- "mz": "^2.7.0",
113
- "node-abort-controller": "^3.0.1",
114
- "prettier": "^2.3.0",
115
- "rimraf": "4.1.2",
116
- "rollup": "2.79.1",
117
- "rollup-plugin-dts": "^4.0.0",
118
- "rollup-plugin-node-polyfills": "^0.2.1",
119
- "rollup-plugin-terser": "^7.0.2",
120
- "semantic-release": "^19.0.3",
121
- "sinon": "^15.0.1",
122
- "sinon-chai": "^3.7.0",
123
- "start-server-and-test": "^1.12.0",
124
- "ts-mocha": "^10.0.0",
125
- "ts-node": "^10.0.0",
126
- "tsconfig": "workspace:*",
127
- "tslib": "^2.1.0",
128
- "typedoc": "^0.23",
129
- "typescript": "^4.9"
57
+ "@solana/eslint-config-solana": "^1.0.0",
58
+ "@swc/core": "^1.3.18",
59
+ "@swc/jest": "^0.2.23",
60
+ "@types/jest": "^29.5.0",
61
+ "@typescript-eslint/eslint-plugin": "^5.57.1",
62
+ "@typescript-eslint/parser": "^5.57.1",
63
+ "agadoo": "^3.0.0",
64
+ "eslint": "^8.37.0",
65
+ "eslint-plugin-jest": "^27.1.5",
66
+ "eslint-plugin-react-hooks": "^4.6.0",
67
+ "eslint-plugin-sort-keys-fix": "^1.1.2",
68
+ "jest": "^29.5.0",
69
+ "jest-environment-jsdom": "^29.5.0",
70
+ "jest-runner-eslint": "^2.0.0",
71
+ "jest-runner-prettier": "^1.0.0",
72
+ "postcss": "^8.4.12",
73
+ "prettier": "^2.7.1",
74
+ "ts-node": "^10.9.1",
75
+ "tsup": "6.7.0",
76
+ "typescript": "^5.0.3",
77
+ "version-from-git": "^1.1.1",
78
+ "build-scripts": "0.0.0",
79
+ "test-config": "0.0.0",
80
+ "tsconfig": "0.0.0"
81
+ },
82
+ "bundlewatch": {
83
+ "defaultCompression": "gzip",
84
+ "files": [
85
+ {
86
+ "path": "./dist/index*.js"
87
+ }
88
+ ]
89
+ },
90
+ "scripts": {
91
+ "compile:js": "tsup --config build-scripts/tsup.config.library.ts",
92
+ "compile:typedefs": "tsc -p ./tsconfig.declarations.json",
93
+ "dev": "jest -c node_modules/test-config/jest-dev.config.ts --rootDir . --watch",
94
+ "publish-packages": "sed -i 's/@solana\\/web3\\.js-experimental/@solana\\/web3\\.js/g' package.json && sed -i 's/@solana\\/web3\\.js/@solana\\/web3\\.js-bak/g' ../library-legacy/package.json && pnpm publish --tag experimental --access public --no-git-checks && git reset --hard",
95
+ "test:lint": "jest -c node_modules/test-config/jest-lint.config.ts --rootDir . --silent",
96
+ "test:prettier": "jest -c node_modules/test-config/jest-prettier.config.ts --rootDir . --silent",
97
+ "test:treeshakability:browser": "agadoo dist/index.browser.js",
98
+ "test:treeshakability:native": "agadoo dist/index.node.js",
99
+ "test:treeshakability:node": "agadoo dist/index.native.js",
100
+ "test:typecheck": "tsc --noEmit",
101
+ "test:unit:browser": "jest -c node_modules/test-config/jest-unit.config.browser.ts --rootDir . --silent",
102
+ "test:unit:node": "jest -c node_modules/test-config/jest-unit.config.node.ts --rootDir . --silent"
130
103
  }
131
- }
104
+ }