@aifinpay/deployments 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +133 -0
- package/USAGE.md +534 -0
- package/dist/artifacts.d.ts +62 -0
- package/dist/artifacts.d.ts.map +1 -0
- package/dist/artifacts.js +210 -0
- package/dist/artifacts.js.map +1 -0
- package/dist/build.d.ts +2 -0
- package/dist/build.d.ts.map +1 -0
- package/dist/build.js +25 -0
- package/dist/build.js.map +1 -0
- package/dist/grabber.d.ts +42 -0
- package/dist/grabber.d.ts.map +1 -0
- package/dist/grabber.js +379 -0
- package/dist/grabber.js.map +1 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/registry.d.ts +147 -0
- package/dist/registry.d.ts.map +1 -0
- package/dist/registry.js +263 -0
- package/dist/registry.js.map +1 -0
- package/dist/types.d.ts +139 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +14 -0
- package/dist/types.js.map +1 -0
- package/package.json +36 -0
- package/registry/abi/evm/B2BSplitterV14/B2BSplitterV14.json +1318 -0
- package/registry/abi/evm/TimelockWrapper/TimelockWrapper.json +277 -0
- package/registry/abi/tron/.gitkeep +0 -0
- package/registry/idl/aptos/.gitkeep +0 -0
- package/registry/idl/casper/.gitkeep +0 -0
- package/registry/idl/casper/aifinpay-casper-schema.json +108 -0
- package/registry/idl/solana/splitter-v14/splitter.devnet.json +1962 -0
- package/registry/idl/solana/splitter-v14/splitter.mainnet.json +1962 -0
- package/registry/splitter/INDEX.md +163 -0
- package/registry/splitter/casper/README.md +101 -0
- package/registry/splitter/casper/deployments.json +110 -0
- package/registry/splitter/evm/v1.1/README.md +32 -0
- package/registry/splitter/evm/v1.1/deployments.json +45 -0
- package/registry/splitter/evm/v1.2/README.md +47 -0
- package/registry/splitter/evm/v1.2/deployments.json +76 -0
- package/registry/splitter/evm/v1.3/README.md +78 -0
- package/registry/splitter/evm/v1.3/deployments.json +280 -0
- package/registry/splitter/evm/v1.4/README.md +75 -0
- package/registry/splitter/evm/v1.4/deployments.json +358 -0
- package/registry/splitter/solana/README.md +49 -0
- package/registry/splitter/solana/deployments.json +48 -0
package/dist/registry.js
ADDED
|
@@ -0,0 +1,263 @@
|
|
|
1
|
+
import { readFileSync } from "node:fs";
|
|
2
|
+
import { join, dirname } from "node:path";
|
|
3
|
+
import { fileURLToPath } from "node:url";
|
|
4
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
5
|
+
const REGISTRY_ROOT = join(__dirname, "../registry");
|
|
6
|
+
const EVM_VERSIONS = ["1.1", "1.2", "1.3", "1.4", "latest"];
|
|
7
|
+
function resolveEvmVersion(version) {
|
|
8
|
+
if (version === "latest")
|
|
9
|
+
return "1.4";
|
|
10
|
+
return version;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Programmatic interface to query AIFP deployment records.
|
|
14
|
+
* Provides type-safe access to EVM and Solana deployments with O(1) lookups.
|
|
15
|
+
*/
|
|
16
|
+
export class AifinpayRegistry {
|
|
17
|
+
evmRegistry;
|
|
18
|
+
solanaRegistry;
|
|
19
|
+
governance;
|
|
20
|
+
version;
|
|
21
|
+
generatedAt;
|
|
22
|
+
constructor(evmRecords, solanaRecords, version, generatedAt, governance) {
|
|
23
|
+
this.evmRegistry = new Map(evmRecords.map((r) => [r.chainId, r]));
|
|
24
|
+
this.solanaRegistry = new Map(solanaRecords.map((r) => [r.cluster, r]));
|
|
25
|
+
this.version = version;
|
|
26
|
+
this.generatedAt = generatedAt;
|
|
27
|
+
this.governance = governance;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Load EVM registry.
|
|
31
|
+
* @param version - EVM version to load. Accepts "1.1", "1.2", "1.3", "1.4", or "latest". Defaults to "latest".
|
|
32
|
+
*/
|
|
33
|
+
static loadEvm(version = "latest") {
|
|
34
|
+
const resolved = resolveEvmVersion(version);
|
|
35
|
+
const path = join(REGISTRY_ROOT, `splitter/evm/v${resolved}/deployments.json`);
|
|
36
|
+
const data = JSON.parse(readFileSync(path, "utf-8"));
|
|
37
|
+
return new AifinpayRegistry(data.deployments, [], data.version, data.generatedAt, data.governance);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Load Solana registry.
|
|
41
|
+
* @param _version - Solana version to load. Accepts "1.4" or "latest". Defaults to "latest".
|
|
42
|
+
*/
|
|
43
|
+
static loadSolana(_version = "latest") {
|
|
44
|
+
const path = join(REGISTRY_ROOT, "splitter/solana/deployments.json");
|
|
45
|
+
const data = JSON.parse(readFileSync(path, "utf-8"));
|
|
46
|
+
return new AifinpayRegistry([], data.deployments, data.version, data.generatedAt);
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Get EVM deployment by chain ID.
|
|
50
|
+
* Returns null if not found.
|
|
51
|
+
*/
|
|
52
|
+
getEvmDeployment(chainId) {
|
|
53
|
+
return this.evmRegistry.get(chainId) ?? null;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Get EVM deployment by network name (e.g., "optimism", "polygon").
|
|
57
|
+
* Returns null if not found.
|
|
58
|
+
*/
|
|
59
|
+
getEvmByNetwork(network) {
|
|
60
|
+
for (const record of this.evmRegistry.values()) {
|
|
61
|
+
if (record.chain.toLowerCase() === network.toLowerCase()) {
|
|
62
|
+
return record;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
return null;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Get all EVM deployments.
|
|
69
|
+
*/
|
|
70
|
+
getAllEvmDeployments() {
|
|
71
|
+
return Array.from(this.evmRegistry.values());
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Get Solana deployment by cluster.
|
|
75
|
+
* Returns null if not found.
|
|
76
|
+
*/
|
|
77
|
+
getSolanaDeployment(cluster) {
|
|
78
|
+
return this.solanaRegistry.get(cluster) ?? null;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Get all Solana deployments.
|
|
82
|
+
*/
|
|
83
|
+
getAllSolanaDeployments() {
|
|
84
|
+
return Array.from(this.solanaRegistry.values());
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Check if settlement is enabled for a chain.
|
|
88
|
+
*/
|
|
89
|
+
isSettlementEnabled(chainId) {
|
|
90
|
+
const record = this.getEvmDeployment(chainId);
|
|
91
|
+
return record?.settlementEnabled ?? false;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Get stablecoin list for a chain.
|
|
95
|
+
* Returns empty array if not found.
|
|
96
|
+
*/
|
|
97
|
+
getStablecoins(chainId) {
|
|
98
|
+
const record = this.getEvmDeployment(chainId);
|
|
99
|
+
return record?.assets ?? [];
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Get the Splitter contract address for a chain.
|
|
103
|
+
* Returns null if not found.
|
|
104
|
+
*/
|
|
105
|
+
getSplitterAddress(chainId) {
|
|
106
|
+
const record = this.getEvmDeployment(chainId);
|
|
107
|
+
return record?.contracts.splitter ?? null;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Get the TokenList contract address for a chain.
|
|
111
|
+
* Returns null if not found.
|
|
112
|
+
*/
|
|
113
|
+
getTokenListAddress(chainId) {
|
|
114
|
+
const record = this.getEvmDeployment(chainId);
|
|
115
|
+
return record?.contracts.tokenList ?? null;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Get the Profiles contract address for a chain.
|
|
119
|
+
* Returns null if not found.
|
|
120
|
+
*/
|
|
121
|
+
getProfilesAddress(chainId) {
|
|
122
|
+
const record = this.getEvmDeployment(chainId);
|
|
123
|
+
return record?.contracts.profiles ?? null;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Get governance Safe address for environment.
|
|
127
|
+
*/
|
|
128
|
+
getGovernanceSafe(env) {
|
|
129
|
+
if (env === "prod") {
|
|
130
|
+
return this.governance?.prod.safe ?? null;
|
|
131
|
+
}
|
|
132
|
+
return this.governance?.testnet.safe ?? null;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Get registry version.
|
|
136
|
+
*/
|
|
137
|
+
getVersion() {
|
|
138
|
+
return this.version;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Get registry generation timestamp.
|
|
142
|
+
*/
|
|
143
|
+
getGeneratedAt() {
|
|
144
|
+
return this.generatedAt;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Filter deployments by status.
|
|
148
|
+
*/
|
|
149
|
+
filterByStatus(status) {
|
|
150
|
+
return this.getAllEvmDeployments().filter((d) => d.status === status);
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Get only production deployments (excludes testnet/dev).
|
|
154
|
+
*/
|
|
155
|
+
getProdDeployments() {
|
|
156
|
+
return this.getAllEvmDeployments().filter((d) => d.environment === "prod" && !d.testnet);
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Get only testnet deployments.
|
|
160
|
+
*/
|
|
161
|
+
getTestnetDeployments() {
|
|
162
|
+
return this.getAllEvmDeployments().filter((d) => d.testnet);
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Get list of supported chain IDs.
|
|
166
|
+
* @param filter - Optional filter: "all" | "prod" | "testnet" | "enabled"
|
|
167
|
+
*/
|
|
168
|
+
getSupportedChains(filter) {
|
|
169
|
+
const deployments = this.getAllEvmDeployments();
|
|
170
|
+
const filtered = deployments.filter((d) => {
|
|
171
|
+
if (filter === "prod")
|
|
172
|
+
return d.environment === "prod" && !d.testnet;
|
|
173
|
+
if (filter === "testnet")
|
|
174
|
+
return d.testnet;
|
|
175
|
+
if (filter === "enabled")
|
|
176
|
+
return d.status === "enabled" && d.settlementEnabled;
|
|
177
|
+
return true;
|
|
178
|
+
});
|
|
179
|
+
return filtered.map((d) => d.chainId).sort((a, b) => a - b);
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Get list of supported networks with metadata.
|
|
183
|
+
* @param filter - Optional filter: "all" | "prod" | "testnet" | "enabled"
|
|
184
|
+
*/
|
|
185
|
+
getNetworkList(filter) {
|
|
186
|
+
const deployments = this.getAllEvmDeployments();
|
|
187
|
+
const filtered = deployments.filter((d) => {
|
|
188
|
+
if (filter === "prod")
|
|
189
|
+
return d.environment === "prod" && !d.testnet;
|
|
190
|
+
if (filter === "testnet")
|
|
191
|
+
return d.testnet;
|
|
192
|
+
if (filter === "enabled")
|
|
193
|
+
return d.status === "enabled" && d.settlementEnabled;
|
|
194
|
+
return true;
|
|
195
|
+
});
|
|
196
|
+
return filtered
|
|
197
|
+
.sort((a, b) => a.chainId - b.chainId)
|
|
198
|
+
.map((d) => ({
|
|
199
|
+
chainId: d.chainId,
|
|
200
|
+
name: d.chain,
|
|
201
|
+
status: d.status,
|
|
202
|
+
settlementEnabled: d.settlementEnabled,
|
|
203
|
+
testnet: d.testnet,
|
|
204
|
+
}));
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Check if a chain is supported.
|
|
208
|
+
*/
|
|
209
|
+
isChainSupported(chainId) {
|
|
210
|
+
return this.getEvmDeployment(chainId) !== null;
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Get chain ID by network name.
|
|
214
|
+
* Returns null if not found.
|
|
215
|
+
*/
|
|
216
|
+
getChainIdByNetwork(network) {
|
|
217
|
+
const deployment = this.getEvmByNetwork(network);
|
|
218
|
+
return deployment?.chainId ?? null;
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Get network name by chain ID.
|
|
222
|
+
* Returns null if not found.
|
|
223
|
+
*/
|
|
224
|
+
getNetworkByChainId(chainId) {
|
|
225
|
+
const deployment = this.getEvmDeployment(chainId);
|
|
226
|
+
return deployment?.chain ?? null;
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Export supported chains as markdown table.
|
|
230
|
+
* @param filter - Optional filter: "all" | "prod" | "testnet" | "enabled"
|
|
231
|
+
*/
|
|
232
|
+
exportAsMarkdown(filter) {
|
|
233
|
+
const networks = this.getNetworkList(filter);
|
|
234
|
+
if (networks.length === 0) {
|
|
235
|
+
return "No networks found.";
|
|
236
|
+
}
|
|
237
|
+
const header = "| Chain ID | Network | Status | Settlement | Testnet |\n|----------|---------|--------|------------|---------|";
|
|
238
|
+
const rows = networks.map((n) => `| ${n.chainId} | ${n.name} | ${n.status} | ${n.settlementEnabled ? "✅" : "❌"} | ${n.testnet ? "Yes" : "No"} |`);
|
|
239
|
+
return [header, ...rows].join("\n");
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Export supported chains as JSON.
|
|
243
|
+
* @param filter - Optional filter: "all" | "prod" | "testnet" | "enabled"
|
|
244
|
+
*/
|
|
245
|
+
exportAsJson(filter) {
|
|
246
|
+
const networks = this.getNetworkList(filter);
|
|
247
|
+
return JSON.stringify(networks, null, 2);
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* Export supported chains as CSV.
|
|
251
|
+
* @param filter - Optional filter: "all" | "prod" | "testnet" | "enabled"
|
|
252
|
+
*/
|
|
253
|
+
exportAsCsv(filter) {
|
|
254
|
+
const networks = this.getNetworkList(filter);
|
|
255
|
+
if (networks.length === 0) {
|
|
256
|
+
return "chainId,name,status,settlementEnabled,testnet\n";
|
|
257
|
+
}
|
|
258
|
+
const header = "chainId,name,status,settlementEnabled,testnet";
|
|
259
|
+
const rows = networks.map((n) => `${n.chainId},${n.name},${n.status},${n.settlementEnabled},${n.testnet}`);
|
|
260
|
+
return [header, ...rows].join("\n");
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Canonical AIFP deployment registry types.
|
|
3
|
+
*
|
|
4
|
+
* The registry is optimized for O(1) lookup of the latest deployment per chain.
|
|
5
|
+
* It combines EVM and Solana deployments, always surfacing the newest record
|
|
6
|
+
* by semantic version then timestamp.
|
|
7
|
+
*/
|
|
8
|
+
export interface Stablecoin {
|
|
9
|
+
symbol: string;
|
|
10
|
+
name: string;
|
|
11
|
+
address: string;
|
|
12
|
+
}
|
|
13
|
+
export interface EvmDeployment {
|
|
14
|
+
kind: "evm";
|
|
15
|
+
chainId: number;
|
|
16
|
+
network: string;
|
|
17
|
+
version: string;
|
|
18
|
+
splitterAddress: string;
|
|
19
|
+
tokenListAddress: string;
|
|
20
|
+
profilesAddress: string;
|
|
21
|
+
admin: string;
|
|
22
|
+
signer: string;
|
|
23
|
+
pauser: string;
|
|
24
|
+
treasury: string;
|
|
25
|
+
runtimeCodeHash: string;
|
|
26
|
+
stablecoins: Stablecoin[];
|
|
27
|
+
settlementEnabled: boolean;
|
|
28
|
+
status: string;
|
|
29
|
+
deployedAt: string;
|
|
30
|
+
sourceUrl: string;
|
|
31
|
+
/** Path to the local ABI bundle, once manually added. */
|
|
32
|
+
abiPath: string | null;
|
|
33
|
+
}
|
|
34
|
+
export interface SolanaDeployment {
|
|
35
|
+
kind: "solana";
|
|
36
|
+
cluster: "mainnet" | "devnet";
|
|
37
|
+
version: string;
|
|
38
|
+
programAddress: string;
|
|
39
|
+
deployedAt: string;
|
|
40
|
+
sourceUrl: string;
|
|
41
|
+
/** Path to the local IDL artifact copied from the upstream deployment. */
|
|
42
|
+
idlPath: string | null;
|
|
43
|
+
/** IDL metadata */
|
|
44
|
+
idl: {
|
|
45
|
+
name: string;
|
|
46
|
+
version: string;
|
|
47
|
+
} | null;
|
|
48
|
+
}
|
|
49
|
+
export type Deployment = EvmDeployment | SolanaDeployment;
|
|
50
|
+
/** O(1) map: chainId (or Solana cluster) -> latest deployment record. */
|
|
51
|
+
export interface DeploymentRegistry {
|
|
52
|
+
/** EVM records keyed by numeric chainId as a string. */
|
|
53
|
+
evm: Record<string, EvmDeployment>;
|
|
54
|
+
/** Solana records keyed by cluster name. */
|
|
55
|
+
solana: Record<string, SolanaDeployment>;
|
|
56
|
+
/** ISO 8601 timestamp of when this registry was generated. */
|
|
57
|
+
generatedAt: string;
|
|
58
|
+
/** Provenance for each included record. */
|
|
59
|
+
sources: string[];
|
|
60
|
+
}
|
|
61
|
+
/** Per-ecosystem split registry file shape (v1.4) - matches splitter versioned deployments.json schema. */
|
|
62
|
+
export interface GovernanceConfig {
|
|
63
|
+
safe: string;
|
|
64
|
+
version: string;
|
|
65
|
+
threshold: number;
|
|
66
|
+
owners: string[];
|
|
67
|
+
}
|
|
68
|
+
export interface Governance {
|
|
69
|
+
prod: GovernanceConfig;
|
|
70
|
+
testnet: GovernanceConfig;
|
|
71
|
+
}
|
|
72
|
+
export interface SourceInfo {
|
|
73
|
+
repo: string;
|
|
74
|
+
commit: string;
|
|
75
|
+
path: string;
|
|
76
|
+
}
|
|
77
|
+
export interface SourceArtifact {
|
|
78
|
+
path: string;
|
|
79
|
+
retrievedAt: string;
|
|
80
|
+
}
|
|
81
|
+
export interface EvmDeploymentRecord {
|
|
82
|
+
chain: string;
|
|
83
|
+
chainId: number;
|
|
84
|
+
environment: "dev" | "prod";
|
|
85
|
+
testnet: boolean;
|
|
86
|
+
status: "enabled" | "disabled" | "invalid" | "retired";
|
|
87
|
+
settlementEnabled: boolean;
|
|
88
|
+
disabledReason?: string;
|
|
89
|
+
runtimeCodeHash: string;
|
|
90
|
+
contracts: {
|
|
91
|
+
splitter: string;
|
|
92
|
+
tokenList: string;
|
|
93
|
+
profiles: string;
|
|
94
|
+
admin: string;
|
|
95
|
+
signer: string;
|
|
96
|
+
pauser: string;
|
|
97
|
+
treasury: string;
|
|
98
|
+
};
|
|
99
|
+
assets: Array<{
|
|
100
|
+
symbol: string;
|
|
101
|
+
name: string;
|
|
102
|
+
address: string;
|
|
103
|
+
}>;
|
|
104
|
+
safe: {
|
|
105
|
+
address: string;
|
|
106
|
+
version: string;
|
|
107
|
+
threshold: number;
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
export interface SolanaDeploymentRecord {
|
|
111
|
+
cluster: "mainnet" | "devnet";
|
|
112
|
+
environment: "dev" | "prod";
|
|
113
|
+
testnet: boolean;
|
|
114
|
+
status: "enabled" | "disabled" | "invalid" | "retired";
|
|
115
|
+
settlementEnabled: boolean;
|
|
116
|
+
disabledReason: string;
|
|
117
|
+
programId: string;
|
|
118
|
+
idl: {
|
|
119
|
+
name: string;
|
|
120
|
+
version: string;
|
|
121
|
+
};
|
|
122
|
+
sourceArtifact: string;
|
|
123
|
+
}
|
|
124
|
+
export interface SplitterRegistry {
|
|
125
|
+
$schema: string;
|
|
126
|
+
version: string;
|
|
127
|
+
description: string;
|
|
128
|
+
schemaVersion: number;
|
|
129
|
+
generatedAt: string;
|
|
130
|
+
ecosystem: "evm" | "solana";
|
|
131
|
+
protocolVersion: string;
|
|
132
|
+
source: SourceInfo;
|
|
133
|
+
governance?: Governance;
|
|
134
|
+
deployments: EvmDeploymentRecord[] | SolanaDeploymentRecord[];
|
|
135
|
+
sourceArtifact: SourceArtifact;
|
|
136
|
+
}
|
|
137
|
+
export declare function isEvmDeployment(d: Deployment): d is EvmDeployment;
|
|
138
|
+
export declare function isSolanaDeployment(d: Deployment): d is SolanaDeployment;
|
|
139
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Canonical AIFP deployment registry types.
|
|
3
|
+
*
|
|
4
|
+
* The registry is optimized for O(1) lookup of the latest deployment per chain.
|
|
5
|
+
* It combines EVM and Solana deployments, always surfacing the newest record
|
|
6
|
+
* by semantic version then timestamp.
|
|
7
|
+
*/
|
|
8
|
+
export function isEvmDeployment(d) {
|
|
9
|
+
return d.kind === "evm";
|
|
10
|
+
}
|
|
11
|
+
export function isSolanaDeployment(d) {
|
|
12
|
+
return d.kind === "solana";
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA+IH,MAAM,UAAU,eAAe,CAAC,CAAa;IAC3C,OAAO,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,CAAa;IAC9C,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC;AAC7B,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@aifinpay/deployments",
|
|
3
|
+
"version": "1.1.0",
|
|
4
|
+
"description": "Deployment aifinpay",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"files": [
|
|
9
|
+
"package.json",
|
|
10
|
+
"package-lock.json",
|
|
11
|
+
"dist",
|
|
12
|
+
"registry",
|
|
13
|
+
"README.md",
|
|
14
|
+
"USAGE.md",
|
|
15
|
+
"LICENSE"
|
|
16
|
+
],
|
|
17
|
+
"scripts": {
|
|
18
|
+
"build": "tsc -p tsconfig.json",
|
|
19
|
+
"registry:build": "node dist/build.js",
|
|
20
|
+
"test": "vitest run"
|
|
21
|
+
},
|
|
22
|
+
"license": "MIT",
|
|
23
|
+
"repository": {
|
|
24
|
+
"type": "git",
|
|
25
|
+
"url": "git+https://github.com/AiFinPay/sdk.git",
|
|
26
|
+
"directory": "deployments"
|
|
27
|
+
},
|
|
28
|
+
"devDependencies": {
|
|
29
|
+
"@types/node": "^26.5.1",
|
|
30
|
+
"typescript": "^7.0.2",
|
|
31
|
+
"vitest": "^4.1.5"
|
|
32
|
+
},
|
|
33
|
+
"publishConfig": {
|
|
34
|
+
"access": "public"
|
|
35
|
+
}
|
|
36
|
+
}
|