@solana/rpc-subscriptions-api 2.0.0-experimental.00fa195

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 (33) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +17 -0
  3. package/dist/index.browser.cjs +201 -0
  4. package/dist/index.browser.cjs.map +1 -0
  5. package/dist/index.browser.js +198 -0
  6. package/dist/index.browser.js.map +1 -0
  7. package/dist/index.native.js +198 -0
  8. package/dist/index.native.js.map +1 -0
  9. package/dist/index.node.cjs +201 -0
  10. package/dist/index.node.cjs.map +1 -0
  11. package/dist/index.node.js +198 -0
  12. package/dist/index.node.js.map +1 -0
  13. package/dist/types/account-notifications.d.ts +30 -0
  14. package/dist/types/account-notifications.d.ts.map +1 -0
  15. package/dist/types/block-notifications.d.ts +237 -0
  16. package/dist/types/block-notifications.d.ts.map +1 -0
  17. package/dist/types/index.d.ts +18 -0
  18. package/dist/types/index.d.ts.map +1 -0
  19. package/dist/types/logs-notifications.d.ts +25 -0
  20. package/dist/types/logs-notifications.d.ts.map +1 -0
  21. package/dist/types/program-notifications.d.ts +45 -0
  22. package/dist/types/program-notifications.d.ts.map +1 -0
  23. package/dist/types/root-notifications.d.ts +11 -0
  24. package/dist/types/root-notifications.d.ts.map +1 -0
  25. package/dist/types/signature-notifications.d.ts +25 -0
  26. package/dist/types/signature-notifications.d.ts.map +1 -0
  27. package/dist/types/slot-notifications.d.ts +15 -0
  28. package/dist/types/slot-notifications.d.ts.map +1 -0
  29. package/dist/types/slots-updates-notifications.d.ts +33 -0
  30. package/dist/types/slots-updates-notifications.d.ts.map +1 -0
  31. package/dist/types/vote-notifications.d.ts +19 -0
  32. package/dist/types/vote-notifications.d.ts.map +1 -0
  33. package/package.json +80 -0
@@ -0,0 +1,198 @@
1
+ import { createRpcSubscriptionsApi } from '@solana/rpc-subscriptions-spec';
2
+ import { getDefaultParamsTransformerForSolanaRpc, getDefaultResponseTransformerForSolanaRpc, jsonParsedAccountsConfigs, KEYPATH_WILDCARD } from '@solana/rpc-transformers';
3
+
4
+ // src/index.ts
5
+ function createSolanaRpcSubscriptionsApi_INTERNAL(config) {
6
+ return createRpcSubscriptionsApi({
7
+ parametersTransformer: getDefaultParamsTransformerForSolanaRpc(config),
8
+ responseTransformer: getDefaultResponseTransformerForSolanaRpc({
9
+ allowedNumericKeyPaths: getAllowedNumericKeypaths()
10
+ }),
11
+ subscribeNotificationNameTransformer: (notificationName) => notificationName.replace(/Notifications$/, "Subscribe"),
12
+ unsubscribeNotificationNameTransformer: (notificationName) => notificationName.replace(/Notifications$/, "Unsubscribe")
13
+ });
14
+ }
15
+ function createSolanaRpcSubscriptionsApi(config) {
16
+ return createSolanaRpcSubscriptionsApi_INTERNAL(config);
17
+ }
18
+ function createSolanaRpcSubscriptionsApi_UNSTABLE(config) {
19
+ return createSolanaRpcSubscriptionsApi_INTERNAL(
20
+ config
21
+ );
22
+ }
23
+ var memoizedKeypaths;
24
+ function getAllowedNumericKeypaths() {
25
+ if (!memoizedKeypaths) {
26
+ memoizedKeypaths = {
27
+ accountNotifications: jsonParsedAccountsConfigs.map((c) => ["value", ...c]),
28
+ blockNotifications: [
29
+ ["value", "block", "blockTime"],
30
+ [
31
+ "value",
32
+ "block",
33
+ "transactions",
34
+ KEYPATH_WILDCARD,
35
+ "meta",
36
+ "preTokenBalances",
37
+ KEYPATH_WILDCARD,
38
+ "accountIndex"
39
+ ],
40
+ [
41
+ "value",
42
+ "block",
43
+ "transactions",
44
+ KEYPATH_WILDCARD,
45
+ "meta",
46
+ "preTokenBalances",
47
+ KEYPATH_WILDCARD,
48
+ "uiTokenAmount",
49
+ "decimals"
50
+ ],
51
+ [
52
+ "value",
53
+ "block",
54
+ "transactions",
55
+ KEYPATH_WILDCARD,
56
+ "meta",
57
+ "postTokenBalances",
58
+ KEYPATH_WILDCARD,
59
+ "accountIndex"
60
+ ],
61
+ [
62
+ "value",
63
+ "block",
64
+ "transactions",
65
+ KEYPATH_WILDCARD,
66
+ "meta",
67
+ "postTokenBalances",
68
+ KEYPATH_WILDCARD,
69
+ "uiTokenAmount",
70
+ "decimals"
71
+ ],
72
+ ["value", "block", "transactions", KEYPATH_WILDCARD, "meta", "rewards", KEYPATH_WILDCARD, "commission"],
73
+ [
74
+ "value",
75
+ "block",
76
+ "transactions",
77
+ KEYPATH_WILDCARD,
78
+ "meta",
79
+ "innerInstructions",
80
+ KEYPATH_WILDCARD,
81
+ "index"
82
+ ],
83
+ [
84
+ "value",
85
+ "block",
86
+ "transactions",
87
+ KEYPATH_WILDCARD,
88
+ "meta",
89
+ "innerInstructions",
90
+ KEYPATH_WILDCARD,
91
+ "instructions",
92
+ KEYPATH_WILDCARD,
93
+ "programIdIndex"
94
+ ],
95
+ [
96
+ "value",
97
+ "block",
98
+ "transactions",
99
+ KEYPATH_WILDCARD,
100
+ "meta",
101
+ "innerInstructions",
102
+ KEYPATH_WILDCARD,
103
+ "instructions",
104
+ KEYPATH_WILDCARD,
105
+ "accounts",
106
+ KEYPATH_WILDCARD
107
+ ],
108
+ [
109
+ "value",
110
+ "block",
111
+ "transactions",
112
+ KEYPATH_WILDCARD,
113
+ "transaction",
114
+ "message",
115
+ "addressTableLookups",
116
+ KEYPATH_WILDCARD,
117
+ "writableIndexes",
118
+ KEYPATH_WILDCARD
119
+ ],
120
+ [
121
+ "value",
122
+ "block",
123
+ "transactions",
124
+ KEYPATH_WILDCARD,
125
+ "transaction",
126
+ "message",
127
+ "addressTableLookups",
128
+ KEYPATH_WILDCARD,
129
+ "readonlyIndexes",
130
+ KEYPATH_WILDCARD
131
+ ],
132
+ [
133
+ "value",
134
+ "block",
135
+ "transactions",
136
+ KEYPATH_WILDCARD,
137
+ "transaction",
138
+ "message",
139
+ "instructions",
140
+ KEYPATH_WILDCARD,
141
+ "programIdIndex"
142
+ ],
143
+ [
144
+ "value",
145
+ "block",
146
+ "transactions",
147
+ KEYPATH_WILDCARD,
148
+ "transaction",
149
+ "message",
150
+ "instructions",
151
+ KEYPATH_WILDCARD,
152
+ "accounts",
153
+ KEYPATH_WILDCARD
154
+ ],
155
+ [
156
+ "value",
157
+ "block",
158
+ "transactions",
159
+ KEYPATH_WILDCARD,
160
+ "transaction",
161
+ "message",
162
+ "header",
163
+ "numReadonlySignedAccounts"
164
+ ],
165
+ [
166
+ "value",
167
+ "block",
168
+ "transactions",
169
+ KEYPATH_WILDCARD,
170
+ "transaction",
171
+ "message",
172
+ "header",
173
+ "numReadonlyUnsignedAccounts"
174
+ ],
175
+ [
176
+ "value",
177
+ "block",
178
+ "transactions",
179
+ KEYPATH_WILDCARD,
180
+ "transaction",
181
+ "message",
182
+ "header",
183
+ "numRequiredSignatures"
184
+ ],
185
+ ["value", "block", "rewards", KEYPATH_WILDCARD, "commission"]
186
+ ],
187
+ programNotifications: jsonParsedAccountsConfigs.flatMap((c) => [
188
+ ["value", KEYPATH_WILDCARD, "account", ...c],
189
+ [KEYPATH_WILDCARD, "account", ...c]
190
+ ])
191
+ };
192
+ }
193
+ return memoizedKeypaths;
194
+ }
195
+
196
+ export { createSolanaRpcSubscriptionsApi, createSolanaRpcSubscriptionsApi_UNSTABLE };
197
+ //# sourceMappingURL=out.js.map
198
+ //# sourceMappingURL=index.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":";AAAA;AAAA,EACI;AAAA,OAGG;AACP;AAAA,EAEI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAEG;AAoCP,SAAS,yCACL,QACyB;AACzB,SAAO,0BAAgC;AAAA,IACnC,uBAAuB,wCAAwC,MAAM;AAAA,IACrE,qBAAqB,0CAA0C;AAAA,MAC3D,wBAAwB,0BAA0B;AAAA,IACtD,CAAC;AAAA,IACD,sCAAsC,CAAC,qBACnC,iBAAiB,QAAQ,kBAAkB,WAAW;AAAA,IAC1D,wCAAwC,CAAC,qBACrC,iBAAiB,QAAQ,kBAAkB,aAAa;AAAA,EAChE,CAAC;AACL;AAEO,SAAS,gCACZ,QACyB;AACzB,SAAO,yCAA+C,MAAM;AAChE;AAEO,SAAS,yCAAyC,QAAiB;AACtE,SAAO;AAAA,IACH;AAAA,EACJ;AACJ;AAEA,IAAI;AAQJ,SAAS,4BAEP;AACE,MAAI,CAAC,kBAAkB;AACnB,uBAAmB;AAAA,MACf,sBAAsB,0BAA0B,IAAI,OAAK,CAAC,SAAS,GAAG,CAAC,CAAC;AAAA,MACxE,oBAAoB;AAAA,QAChB,CAAC,SAAS,SAAS,WAAW;AAAA,QAC9B;AAAA,UACI;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACJ;AAAA,QACA;AAAA,UACI;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACJ;AAAA,QACA;AAAA,UACI;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACJ;AAAA,QACA;AAAA,UACI;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACJ;AAAA,QACA,CAAC,SAAS,SAAS,gBAAgB,kBAAkB,QAAQ,WAAW,kBAAkB,YAAY;AAAA,QACtG;AAAA,UACI;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACJ;AAAA,QACA;AAAA,UACI;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACJ;AAAA,QACA;AAAA,UACI;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACJ;AAAA,QACA;AAAA,UACI;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACJ;AAAA,QACA;AAAA,UACI;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACJ;AAAA,QACA;AAAA,UACI;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACJ;AAAA,QACA;AAAA,UACI;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACJ;AAAA,QACA;AAAA,UACI;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACJ;AAAA,QACA;AAAA,UACI;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACJ;AAAA,QACA;AAAA,UACI;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACJ;AAAA,QACA,CAAC,SAAS,SAAS,WAAW,kBAAkB,YAAY;AAAA,MAChE;AAAA,MACA,sBAAsB,0BAA0B,QAAQ,OAAK;AAAA,QACzD,CAAC,SAAS,kBAAkB,WAAW,GAAG,CAAC;AAAA,QAC3C,CAAC,kBAAkB,WAAW,GAAG,CAAC;AAAA,MACtC,CAAC;AAAA,IACL;AAAA,EACJ;AACA,SAAO;AACX","sourcesContent":["import {\n createRpcSubscriptionsApi,\n RpcSubscriptionsApi,\n RpcSubscriptionsApiMethods,\n} from '@solana/rpc-subscriptions-spec';\nimport {\n AllowedNumericKeypaths,\n getDefaultParamsTransformerForSolanaRpc,\n getDefaultResponseTransformerForSolanaRpc,\n jsonParsedAccountsConfigs,\n KEYPATH_WILDCARD,\n ParamsTransformerConfig,\n} from '@solana/rpc-transformers';\n\nimport { AccountNotificationsApi } from './account-notifications';\nimport { BlockNotificationsApi } from './block-notifications';\nimport { LogsNotificationsApi } from './logs-notifications';\nimport { ProgramNotificationsApi } from './program-notifications';\nimport { RootNotificationsApi } from './root-notifications';\nimport { SignatureNotificationsApi } from './signature-notifications';\nimport { SlotNotificationsApi } from './slot-notifications';\nimport { SlotsUpdatesNotificationsApi } from './slots-updates-notifications';\nimport { VoteNotificationsApi } from './vote-notifications';\n\nexport type SolanaRpcSubscriptionsApi = AccountNotificationsApi &\n LogsNotificationsApi &\n ProgramNotificationsApi &\n RootNotificationsApi &\n SignatureNotificationsApi &\n SlotNotificationsApi;\nexport type SolanaRpcSubscriptionsApiUnstable = BlockNotificationsApi &\n SlotsUpdatesNotificationsApi &\n VoteNotificationsApi;\n\nexport type {\n AccountNotificationsApi,\n BlockNotificationsApi,\n LogsNotificationsApi,\n ProgramNotificationsApi,\n RootNotificationsApi,\n SignatureNotificationsApi,\n SlotNotificationsApi,\n SlotsUpdatesNotificationsApi,\n VoteNotificationsApi,\n};\n\ntype Config = ParamsTransformerConfig;\n\nfunction createSolanaRpcSubscriptionsApi_INTERNAL<TApi extends RpcSubscriptionsApiMethods>(\n config?: Config,\n): RpcSubscriptionsApi<TApi> {\n return createRpcSubscriptionsApi<TApi>({\n parametersTransformer: getDefaultParamsTransformerForSolanaRpc(config) as (params: unknown[]) => unknown[],\n responseTransformer: getDefaultResponseTransformerForSolanaRpc({\n allowedNumericKeyPaths: getAllowedNumericKeypaths(),\n }),\n subscribeNotificationNameTransformer: (notificationName: string) =>\n notificationName.replace(/Notifications$/, 'Subscribe'),\n unsubscribeNotificationNameTransformer: (notificationName: string) =>\n notificationName.replace(/Notifications$/, 'Unsubscribe'),\n });\n}\n\nexport function createSolanaRpcSubscriptionsApi<TApi extends RpcSubscriptionsApiMethods = SolanaRpcSubscriptionsApi>(\n config?: Config,\n): RpcSubscriptionsApi<TApi> {\n return createSolanaRpcSubscriptionsApi_INTERNAL<TApi>(config);\n}\n\nexport function createSolanaRpcSubscriptionsApi_UNSTABLE(config?: Config) {\n return createSolanaRpcSubscriptionsApi_INTERNAL<SolanaRpcSubscriptionsApi & SolanaRpcSubscriptionsApiUnstable>(\n config,\n );\n}\n\nlet memoizedKeypaths: AllowedNumericKeypaths<\n RpcSubscriptionsApi<SolanaRpcSubscriptionsApi & SolanaRpcSubscriptionsApiUnstable>\n>;\n\n/**\n * These are keypaths at the end of which you will find a numeric value that should *not* be upcast\n * to a `bigint`. These are values that are legitimately defined as `u8` or `usize` on the backend.\n */\nfunction getAllowedNumericKeypaths(): AllowedNumericKeypaths<\n RpcSubscriptionsApi<SolanaRpcSubscriptionsApi & SolanaRpcSubscriptionsApiUnstable>\n> {\n if (!memoizedKeypaths) {\n memoizedKeypaths = {\n accountNotifications: jsonParsedAccountsConfigs.map(c => ['value', ...c]),\n blockNotifications: [\n ['value', 'block', 'blockTime'],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'preTokenBalances',\n KEYPATH_WILDCARD,\n 'accountIndex',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'preTokenBalances',\n KEYPATH_WILDCARD,\n 'uiTokenAmount',\n 'decimals',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'postTokenBalances',\n KEYPATH_WILDCARD,\n 'accountIndex',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'postTokenBalances',\n KEYPATH_WILDCARD,\n 'uiTokenAmount',\n 'decimals',\n ],\n ['value', 'block', 'transactions', KEYPATH_WILDCARD, 'meta', 'rewards', KEYPATH_WILDCARD, 'commission'],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'innerInstructions',\n KEYPATH_WILDCARD,\n 'index',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'innerInstructions',\n KEYPATH_WILDCARD,\n 'instructions',\n KEYPATH_WILDCARD,\n 'programIdIndex',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'innerInstructions',\n KEYPATH_WILDCARD,\n 'instructions',\n KEYPATH_WILDCARD,\n 'accounts',\n KEYPATH_WILDCARD,\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'addressTableLookups',\n KEYPATH_WILDCARD,\n 'writableIndexes',\n KEYPATH_WILDCARD,\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'addressTableLookups',\n KEYPATH_WILDCARD,\n 'readonlyIndexes',\n KEYPATH_WILDCARD,\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'instructions',\n KEYPATH_WILDCARD,\n 'programIdIndex',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'instructions',\n KEYPATH_WILDCARD,\n 'accounts',\n KEYPATH_WILDCARD,\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'header',\n 'numReadonlySignedAccounts',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'header',\n 'numReadonlyUnsignedAccounts',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'header',\n 'numRequiredSignatures',\n ],\n ['value', 'block', 'rewards', KEYPATH_WILDCARD, 'commission'],\n ],\n programNotifications: jsonParsedAccountsConfigs.flatMap(c => [\n ['value', KEYPATH_WILDCARD, 'account', ...c],\n [KEYPATH_WILDCARD, 'account', ...c],\n ]),\n };\n }\n return memoizedKeypaths;\n}\n"]}
@@ -0,0 +1,201 @@
1
+ 'use strict';
2
+
3
+ var rpcSubscriptionsSpec = require('@solana/rpc-subscriptions-spec');
4
+ var rpcTransformers = require('@solana/rpc-transformers');
5
+
6
+ // src/index.ts
7
+ function createSolanaRpcSubscriptionsApi_INTERNAL(config) {
8
+ return rpcSubscriptionsSpec.createRpcSubscriptionsApi({
9
+ parametersTransformer: rpcTransformers.getDefaultParamsTransformerForSolanaRpc(config),
10
+ responseTransformer: rpcTransformers.getDefaultResponseTransformerForSolanaRpc({
11
+ allowedNumericKeyPaths: getAllowedNumericKeypaths()
12
+ }),
13
+ subscribeNotificationNameTransformer: (notificationName) => notificationName.replace(/Notifications$/, "Subscribe"),
14
+ unsubscribeNotificationNameTransformer: (notificationName) => notificationName.replace(/Notifications$/, "Unsubscribe")
15
+ });
16
+ }
17
+ function createSolanaRpcSubscriptionsApi(config) {
18
+ return createSolanaRpcSubscriptionsApi_INTERNAL(config);
19
+ }
20
+ function createSolanaRpcSubscriptionsApi_UNSTABLE(config) {
21
+ return createSolanaRpcSubscriptionsApi_INTERNAL(
22
+ config
23
+ );
24
+ }
25
+ var memoizedKeypaths;
26
+ function getAllowedNumericKeypaths() {
27
+ if (!memoizedKeypaths) {
28
+ memoizedKeypaths = {
29
+ accountNotifications: rpcTransformers.jsonParsedAccountsConfigs.map((c) => ["value", ...c]),
30
+ blockNotifications: [
31
+ ["value", "block", "blockTime"],
32
+ [
33
+ "value",
34
+ "block",
35
+ "transactions",
36
+ rpcTransformers.KEYPATH_WILDCARD,
37
+ "meta",
38
+ "preTokenBalances",
39
+ rpcTransformers.KEYPATH_WILDCARD,
40
+ "accountIndex"
41
+ ],
42
+ [
43
+ "value",
44
+ "block",
45
+ "transactions",
46
+ rpcTransformers.KEYPATH_WILDCARD,
47
+ "meta",
48
+ "preTokenBalances",
49
+ rpcTransformers.KEYPATH_WILDCARD,
50
+ "uiTokenAmount",
51
+ "decimals"
52
+ ],
53
+ [
54
+ "value",
55
+ "block",
56
+ "transactions",
57
+ rpcTransformers.KEYPATH_WILDCARD,
58
+ "meta",
59
+ "postTokenBalances",
60
+ rpcTransformers.KEYPATH_WILDCARD,
61
+ "accountIndex"
62
+ ],
63
+ [
64
+ "value",
65
+ "block",
66
+ "transactions",
67
+ rpcTransformers.KEYPATH_WILDCARD,
68
+ "meta",
69
+ "postTokenBalances",
70
+ rpcTransformers.KEYPATH_WILDCARD,
71
+ "uiTokenAmount",
72
+ "decimals"
73
+ ],
74
+ ["value", "block", "transactions", rpcTransformers.KEYPATH_WILDCARD, "meta", "rewards", rpcTransformers.KEYPATH_WILDCARD, "commission"],
75
+ [
76
+ "value",
77
+ "block",
78
+ "transactions",
79
+ rpcTransformers.KEYPATH_WILDCARD,
80
+ "meta",
81
+ "innerInstructions",
82
+ rpcTransformers.KEYPATH_WILDCARD,
83
+ "index"
84
+ ],
85
+ [
86
+ "value",
87
+ "block",
88
+ "transactions",
89
+ rpcTransformers.KEYPATH_WILDCARD,
90
+ "meta",
91
+ "innerInstructions",
92
+ rpcTransformers.KEYPATH_WILDCARD,
93
+ "instructions",
94
+ rpcTransformers.KEYPATH_WILDCARD,
95
+ "programIdIndex"
96
+ ],
97
+ [
98
+ "value",
99
+ "block",
100
+ "transactions",
101
+ rpcTransformers.KEYPATH_WILDCARD,
102
+ "meta",
103
+ "innerInstructions",
104
+ rpcTransformers.KEYPATH_WILDCARD,
105
+ "instructions",
106
+ rpcTransformers.KEYPATH_WILDCARD,
107
+ "accounts",
108
+ rpcTransformers.KEYPATH_WILDCARD
109
+ ],
110
+ [
111
+ "value",
112
+ "block",
113
+ "transactions",
114
+ rpcTransformers.KEYPATH_WILDCARD,
115
+ "transaction",
116
+ "message",
117
+ "addressTableLookups",
118
+ rpcTransformers.KEYPATH_WILDCARD,
119
+ "writableIndexes",
120
+ rpcTransformers.KEYPATH_WILDCARD
121
+ ],
122
+ [
123
+ "value",
124
+ "block",
125
+ "transactions",
126
+ rpcTransformers.KEYPATH_WILDCARD,
127
+ "transaction",
128
+ "message",
129
+ "addressTableLookups",
130
+ rpcTransformers.KEYPATH_WILDCARD,
131
+ "readonlyIndexes",
132
+ rpcTransformers.KEYPATH_WILDCARD
133
+ ],
134
+ [
135
+ "value",
136
+ "block",
137
+ "transactions",
138
+ rpcTransformers.KEYPATH_WILDCARD,
139
+ "transaction",
140
+ "message",
141
+ "instructions",
142
+ rpcTransformers.KEYPATH_WILDCARD,
143
+ "programIdIndex"
144
+ ],
145
+ [
146
+ "value",
147
+ "block",
148
+ "transactions",
149
+ rpcTransformers.KEYPATH_WILDCARD,
150
+ "transaction",
151
+ "message",
152
+ "instructions",
153
+ rpcTransformers.KEYPATH_WILDCARD,
154
+ "accounts",
155
+ rpcTransformers.KEYPATH_WILDCARD
156
+ ],
157
+ [
158
+ "value",
159
+ "block",
160
+ "transactions",
161
+ rpcTransformers.KEYPATH_WILDCARD,
162
+ "transaction",
163
+ "message",
164
+ "header",
165
+ "numReadonlySignedAccounts"
166
+ ],
167
+ [
168
+ "value",
169
+ "block",
170
+ "transactions",
171
+ rpcTransformers.KEYPATH_WILDCARD,
172
+ "transaction",
173
+ "message",
174
+ "header",
175
+ "numReadonlyUnsignedAccounts"
176
+ ],
177
+ [
178
+ "value",
179
+ "block",
180
+ "transactions",
181
+ rpcTransformers.KEYPATH_WILDCARD,
182
+ "transaction",
183
+ "message",
184
+ "header",
185
+ "numRequiredSignatures"
186
+ ],
187
+ ["value", "block", "rewards", rpcTransformers.KEYPATH_WILDCARD, "commission"]
188
+ ],
189
+ programNotifications: rpcTransformers.jsonParsedAccountsConfigs.flatMap((c) => [
190
+ ["value", rpcTransformers.KEYPATH_WILDCARD, "account", ...c],
191
+ [rpcTransformers.KEYPATH_WILDCARD, "account", ...c]
192
+ ])
193
+ };
194
+ }
195
+ return memoizedKeypaths;
196
+ }
197
+
198
+ exports.createSolanaRpcSubscriptionsApi = createSolanaRpcSubscriptionsApi;
199
+ exports.createSolanaRpcSubscriptionsApi_UNSTABLE = createSolanaRpcSubscriptionsApi_UNSTABLE;
200
+ //# sourceMappingURL=out.js.map
201
+ //# sourceMappingURL=index.node.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n createRpcSubscriptionsApi,\n RpcSubscriptionsApi,\n RpcSubscriptionsApiMethods,\n} from '@solana/rpc-subscriptions-spec';\nimport {\n AllowedNumericKeypaths,\n getDefaultParamsTransformerForSolanaRpc,\n getDefaultResponseTransformerForSolanaRpc,\n jsonParsedAccountsConfigs,\n KEYPATH_WILDCARD,\n ParamsTransformerConfig,\n} from '@solana/rpc-transformers';\n\nimport { AccountNotificationsApi } from './account-notifications';\nimport { BlockNotificationsApi } from './block-notifications';\nimport { LogsNotificationsApi } from './logs-notifications';\nimport { ProgramNotificationsApi } from './program-notifications';\nimport { RootNotificationsApi } from './root-notifications';\nimport { SignatureNotificationsApi } from './signature-notifications';\nimport { SlotNotificationsApi } from './slot-notifications';\nimport { SlotsUpdatesNotificationsApi } from './slots-updates-notifications';\nimport { VoteNotificationsApi } from './vote-notifications';\n\nexport type SolanaRpcSubscriptionsApi = AccountNotificationsApi &\n LogsNotificationsApi &\n ProgramNotificationsApi &\n RootNotificationsApi &\n SignatureNotificationsApi &\n SlotNotificationsApi;\nexport type SolanaRpcSubscriptionsApiUnstable = BlockNotificationsApi &\n SlotsUpdatesNotificationsApi &\n VoteNotificationsApi;\n\nexport type {\n AccountNotificationsApi,\n BlockNotificationsApi,\n LogsNotificationsApi,\n ProgramNotificationsApi,\n RootNotificationsApi,\n SignatureNotificationsApi,\n SlotNotificationsApi,\n SlotsUpdatesNotificationsApi,\n VoteNotificationsApi,\n};\n\ntype Config = ParamsTransformerConfig;\n\nfunction createSolanaRpcSubscriptionsApi_INTERNAL<TApi extends RpcSubscriptionsApiMethods>(\n config?: Config,\n): RpcSubscriptionsApi<TApi> {\n return createRpcSubscriptionsApi<TApi>({\n parametersTransformer: getDefaultParamsTransformerForSolanaRpc(config) as (params: unknown[]) => unknown[],\n responseTransformer: getDefaultResponseTransformerForSolanaRpc({\n allowedNumericKeyPaths: getAllowedNumericKeypaths(),\n }),\n subscribeNotificationNameTransformer: (notificationName: string) =>\n notificationName.replace(/Notifications$/, 'Subscribe'),\n unsubscribeNotificationNameTransformer: (notificationName: string) =>\n notificationName.replace(/Notifications$/, 'Unsubscribe'),\n });\n}\n\nexport function createSolanaRpcSubscriptionsApi<TApi extends RpcSubscriptionsApiMethods = SolanaRpcSubscriptionsApi>(\n config?: Config,\n): RpcSubscriptionsApi<TApi> {\n return createSolanaRpcSubscriptionsApi_INTERNAL<TApi>(config);\n}\n\nexport function createSolanaRpcSubscriptionsApi_UNSTABLE(config?: Config) {\n return createSolanaRpcSubscriptionsApi_INTERNAL<SolanaRpcSubscriptionsApi & SolanaRpcSubscriptionsApiUnstable>(\n config,\n );\n}\n\nlet memoizedKeypaths: AllowedNumericKeypaths<\n RpcSubscriptionsApi<SolanaRpcSubscriptionsApi & SolanaRpcSubscriptionsApiUnstable>\n>;\n\n/**\n * These are keypaths at the end of which you will find a numeric value that should *not* be upcast\n * to a `bigint`. These are values that are legitimately defined as `u8` or `usize` on the backend.\n */\nfunction getAllowedNumericKeypaths(): AllowedNumericKeypaths<\n RpcSubscriptionsApi<SolanaRpcSubscriptionsApi & SolanaRpcSubscriptionsApiUnstable>\n> {\n if (!memoizedKeypaths) {\n memoizedKeypaths = {\n accountNotifications: jsonParsedAccountsConfigs.map(c => ['value', ...c]),\n blockNotifications: [\n ['value', 'block', 'blockTime'],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'preTokenBalances',\n KEYPATH_WILDCARD,\n 'accountIndex',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'preTokenBalances',\n KEYPATH_WILDCARD,\n 'uiTokenAmount',\n 'decimals',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'postTokenBalances',\n KEYPATH_WILDCARD,\n 'accountIndex',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'postTokenBalances',\n KEYPATH_WILDCARD,\n 'uiTokenAmount',\n 'decimals',\n ],\n ['value', 'block', 'transactions', KEYPATH_WILDCARD, 'meta', 'rewards', KEYPATH_WILDCARD, 'commission'],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'innerInstructions',\n KEYPATH_WILDCARD,\n 'index',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'innerInstructions',\n KEYPATH_WILDCARD,\n 'instructions',\n KEYPATH_WILDCARD,\n 'programIdIndex',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'meta',\n 'innerInstructions',\n KEYPATH_WILDCARD,\n 'instructions',\n KEYPATH_WILDCARD,\n 'accounts',\n KEYPATH_WILDCARD,\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'addressTableLookups',\n KEYPATH_WILDCARD,\n 'writableIndexes',\n KEYPATH_WILDCARD,\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'addressTableLookups',\n KEYPATH_WILDCARD,\n 'readonlyIndexes',\n KEYPATH_WILDCARD,\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'instructions',\n KEYPATH_WILDCARD,\n 'programIdIndex',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'instructions',\n KEYPATH_WILDCARD,\n 'accounts',\n KEYPATH_WILDCARD,\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'header',\n 'numReadonlySignedAccounts',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'header',\n 'numReadonlyUnsignedAccounts',\n ],\n [\n 'value',\n 'block',\n 'transactions',\n KEYPATH_WILDCARD,\n 'transaction',\n 'message',\n 'header',\n 'numRequiredSignatures',\n ],\n ['value', 'block', 'rewards', KEYPATH_WILDCARD, 'commission'],\n ],\n programNotifications: jsonParsedAccountsConfigs.flatMap(c => [\n ['value', KEYPATH_WILDCARD, 'account', ...c],\n [KEYPATH_WILDCARD, 'account', ...c],\n ]),\n };\n }\n return memoizedKeypaths;\n}\n"]}
@@ -0,0 +1,198 @@
1
+ import { createRpcSubscriptionsApi } from '@solana/rpc-subscriptions-spec';
2
+ import { getDefaultParamsTransformerForSolanaRpc, getDefaultResponseTransformerForSolanaRpc, jsonParsedAccountsConfigs, KEYPATH_WILDCARD } from '@solana/rpc-transformers';
3
+
4
+ // src/index.ts
5
+ function createSolanaRpcSubscriptionsApi_INTERNAL(config) {
6
+ return createRpcSubscriptionsApi({
7
+ parametersTransformer: getDefaultParamsTransformerForSolanaRpc(config),
8
+ responseTransformer: getDefaultResponseTransformerForSolanaRpc({
9
+ allowedNumericKeyPaths: getAllowedNumericKeypaths()
10
+ }),
11
+ subscribeNotificationNameTransformer: (notificationName) => notificationName.replace(/Notifications$/, "Subscribe"),
12
+ unsubscribeNotificationNameTransformer: (notificationName) => notificationName.replace(/Notifications$/, "Unsubscribe")
13
+ });
14
+ }
15
+ function createSolanaRpcSubscriptionsApi(config) {
16
+ return createSolanaRpcSubscriptionsApi_INTERNAL(config);
17
+ }
18
+ function createSolanaRpcSubscriptionsApi_UNSTABLE(config) {
19
+ return createSolanaRpcSubscriptionsApi_INTERNAL(
20
+ config
21
+ );
22
+ }
23
+ var memoizedKeypaths;
24
+ function getAllowedNumericKeypaths() {
25
+ if (!memoizedKeypaths) {
26
+ memoizedKeypaths = {
27
+ accountNotifications: jsonParsedAccountsConfigs.map((c) => ["value", ...c]),
28
+ blockNotifications: [
29
+ ["value", "block", "blockTime"],
30
+ [
31
+ "value",
32
+ "block",
33
+ "transactions",
34
+ KEYPATH_WILDCARD,
35
+ "meta",
36
+ "preTokenBalances",
37
+ KEYPATH_WILDCARD,
38
+ "accountIndex"
39
+ ],
40
+ [
41
+ "value",
42
+ "block",
43
+ "transactions",
44
+ KEYPATH_WILDCARD,
45
+ "meta",
46
+ "preTokenBalances",
47
+ KEYPATH_WILDCARD,
48
+ "uiTokenAmount",
49
+ "decimals"
50
+ ],
51
+ [
52
+ "value",
53
+ "block",
54
+ "transactions",
55
+ KEYPATH_WILDCARD,
56
+ "meta",
57
+ "postTokenBalances",
58
+ KEYPATH_WILDCARD,
59
+ "accountIndex"
60
+ ],
61
+ [
62
+ "value",
63
+ "block",
64
+ "transactions",
65
+ KEYPATH_WILDCARD,
66
+ "meta",
67
+ "postTokenBalances",
68
+ KEYPATH_WILDCARD,
69
+ "uiTokenAmount",
70
+ "decimals"
71
+ ],
72
+ ["value", "block", "transactions", KEYPATH_WILDCARD, "meta", "rewards", KEYPATH_WILDCARD, "commission"],
73
+ [
74
+ "value",
75
+ "block",
76
+ "transactions",
77
+ KEYPATH_WILDCARD,
78
+ "meta",
79
+ "innerInstructions",
80
+ KEYPATH_WILDCARD,
81
+ "index"
82
+ ],
83
+ [
84
+ "value",
85
+ "block",
86
+ "transactions",
87
+ KEYPATH_WILDCARD,
88
+ "meta",
89
+ "innerInstructions",
90
+ KEYPATH_WILDCARD,
91
+ "instructions",
92
+ KEYPATH_WILDCARD,
93
+ "programIdIndex"
94
+ ],
95
+ [
96
+ "value",
97
+ "block",
98
+ "transactions",
99
+ KEYPATH_WILDCARD,
100
+ "meta",
101
+ "innerInstructions",
102
+ KEYPATH_WILDCARD,
103
+ "instructions",
104
+ KEYPATH_WILDCARD,
105
+ "accounts",
106
+ KEYPATH_WILDCARD
107
+ ],
108
+ [
109
+ "value",
110
+ "block",
111
+ "transactions",
112
+ KEYPATH_WILDCARD,
113
+ "transaction",
114
+ "message",
115
+ "addressTableLookups",
116
+ KEYPATH_WILDCARD,
117
+ "writableIndexes",
118
+ KEYPATH_WILDCARD
119
+ ],
120
+ [
121
+ "value",
122
+ "block",
123
+ "transactions",
124
+ KEYPATH_WILDCARD,
125
+ "transaction",
126
+ "message",
127
+ "addressTableLookups",
128
+ KEYPATH_WILDCARD,
129
+ "readonlyIndexes",
130
+ KEYPATH_WILDCARD
131
+ ],
132
+ [
133
+ "value",
134
+ "block",
135
+ "transactions",
136
+ KEYPATH_WILDCARD,
137
+ "transaction",
138
+ "message",
139
+ "instructions",
140
+ KEYPATH_WILDCARD,
141
+ "programIdIndex"
142
+ ],
143
+ [
144
+ "value",
145
+ "block",
146
+ "transactions",
147
+ KEYPATH_WILDCARD,
148
+ "transaction",
149
+ "message",
150
+ "instructions",
151
+ KEYPATH_WILDCARD,
152
+ "accounts",
153
+ KEYPATH_WILDCARD
154
+ ],
155
+ [
156
+ "value",
157
+ "block",
158
+ "transactions",
159
+ KEYPATH_WILDCARD,
160
+ "transaction",
161
+ "message",
162
+ "header",
163
+ "numReadonlySignedAccounts"
164
+ ],
165
+ [
166
+ "value",
167
+ "block",
168
+ "transactions",
169
+ KEYPATH_WILDCARD,
170
+ "transaction",
171
+ "message",
172
+ "header",
173
+ "numReadonlyUnsignedAccounts"
174
+ ],
175
+ [
176
+ "value",
177
+ "block",
178
+ "transactions",
179
+ KEYPATH_WILDCARD,
180
+ "transaction",
181
+ "message",
182
+ "header",
183
+ "numRequiredSignatures"
184
+ ],
185
+ ["value", "block", "rewards", KEYPATH_WILDCARD, "commission"]
186
+ ],
187
+ programNotifications: jsonParsedAccountsConfigs.flatMap((c) => [
188
+ ["value", KEYPATH_WILDCARD, "account", ...c],
189
+ [KEYPATH_WILDCARD, "account", ...c]
190
+ ])
191
+ };
192
+ }
193
+ return memoizedKeypaths;
194
+ }
195
+
196
+ export { createSolanaRpcSubscriptionsApi, createSolanaRpcSubscriptionsApi_UNSTABLE };
197
+ //# sourceMappingURL=out.js.map
198
+ //# sourceMappingURL=index.node.js.map