@chainrails/sdk 0.0.21 → 0.0.23
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/dist/chainrails-sdk.es.js +92 -86
- package/dist/chainrails-sdk.es.mjs +92 -86
- package/dist/chainrails-sdk.umd.js +1 -1
- package/dist/src/req.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -1,156 +1,162 @@
|
|
|
1
|
-
import
|
|
2
|
-
var
|
|
3
|
-
class
|
|
4
|
-
constructor({ api_key:
|
|
5
|
-
this.api_key =
|
|
6
|
-
}
|
|
7
|
-
static config(
|
|
8
|
-
if (!
|
|
9
|
-
if (!
|
|
1
|
+
import u from "ky";
|
|
2
|
+
var g = /* @__PURE__ */ ((e) => (e.ARBITRUM = "ARBITRUM_MAINNET", e.ARBITRUM_TESTNET = "ARBITRUM_TESTNET", e.AVALANCHE = "AVALANCHE_MAINNET", e.AVALANCHE_TESTNET = "AVALANCHE_TESTNET", e.BASE = "BASE_MAINNET", e.BASE_TESTNET = "BASE_TESTNET", e.BSC = "BSC_MAINNET", e.ETHEREUM = "ETHEREUM_MAINNET", e.ETHEREUM_TESTNET = "ETHEREUM_TESTNET", e.STARKNET = "STARKNET_MAINNET", e))(g || {}), h = /* @__PURE__ */ ((e) => (e.USDC = "USDC", e))(h || {}), i = /* @__PURE__ */ ((e) => (e.PRODUCTION = "production", e.STAGING = "staging", e))(i || {});
|
|
3
|
+
class a {
|
|
4
|
+
constructor({ api_key: t, env: r }) {
|
|
5
|
+
this.api_key = t, this.jwt = "", this.env = r ?? i.PRODUCTION;
|
|
6
|
+
}
|
|
7
|
+
static config(t) {
|
|
8
|
+
if (!a.app) {
|
|
9
|
+
if (!t)
|
|
10
10
|
throw new Error("Please provide an api_key");
|
|
11
|
-
|
|
11
|
+
a.app = new a(t);
|
|
12
12
|
}
|
|
13
|
-
return
|
|
13
|
+
return t && (a.app.api_key = t.api_key, t.env !== void 0 && (a.app.env = t.env), this.updateJWT(), setInterval(this.updateJWT.bind(this), 1500 * 1e3)), a.app;
|
|
14
14
|
}
|
|
15
15
|
static async updateJWT() {
|
|
16
16
|
try {
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
}
|
|
17
|
+
const t = await (await fetch(this.getBaseUrl() + "/client/api-keys/session-token", {
|
|
18
|
+
method: "POST",
|
|
19
|
+
// headers: {
|
|
20
|
+
// Authorization: `Bearer ${Chainrails.app.api_key}`,
|
|
21
|
+
// },
|
|
21
22
|
body: JSON.stringify({
|
|
22
|
-
apiKey:
|
|
23
|
+
apiKey: a.app.api_key
|
|
23
24
|
})
|
|
24
|
-
});
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
console.log(n), this.app.jwt = n.token;
|
|
28
|
-
} catch (e) {
|
|
29
|
-
console.log(e);
|
|
25
|
+
})).json();
|
|
26
|
+
this.app.jwt = t.token;
|
|
27
|
+
} catch {
|
|
30
28
|
}
|
|
31
29
|
}
|
|
32
30
|
static getApiKey() {
|
|
33
|
-
if (!
|
|
31
|
+
if (!a.app)
|
|
34
32
|
throw new Error("Chainrails SDK not configured. Please call Chainrails.config() first.");
|
|
35
|
-
return
|
|
33
|
+
return a.app.api_key;
|
|
36
34
|
}
|
|
37
35
|
static getSessionKey() {
|
|
38
|
-
return
|
|
36
|
+
return a.app.jwt;
|
|
39
37
|
}
|
|
40
38
|
static getEnv() {
|
|
41
|
-
if (!
|
|
39
|
+
if (!a.app)
|
|
42
40
|
throw new Error("Chainrails SDK not configured. Please call Chainrails.config() first.");
|
|
43
|
-
return
|
|
41
|
+
return a.app.env === "internal" ? "staging" : a.app.env;
|
|
44
42
|
}
|
|
45
43
|
static getBaseUrl() {
|
|
46
|
-
if (!
|
|
44
|
+
if (!a.app)
|
|
47
45
|
throw new Error("Chainrails SDK not configured. Please call Chainrails.config() first.");
|
|
48
|
-
switch (
|
|
46
|
+
switch (a.app.env) {
|
|
49
47
|
case "production":
|
|
50
48
|
return "https://api.chainrails.io/api/v1";
|
|
51
49
|
case "staging":
|
|
52
50
|
return "https://dev.chainrails.io/api/v1";
|
|
51
|
+
case "internal":
|
|
52
|
+
return "https://dev.chainrails.io/api/v1";
|
|
53
53
|
default:
|
|
54
54
|
return "https://api.chainrails.io/api/v1";
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
|
+
static getPayModalUrl(t, r, o, p) {
|
|
58
|
+
if (!a.app)
|
|
59
|
+
throw new Error("Chainrails SDK not configured. Please call Chainrails.config() first.");
|
|
60
|
+
const c = a.app.env === "internal" ? "https://chainrails-frontend-git-staging-horus-labs.vercel.app/pay/" : "https://app.chainrails.io/pay/", l = `${t}/_token_/${r}/_to_/${o}/_amount_/${p * 100}`;
|
|
61
|
+
return c + l;
|
|
62
|
+
}
|
|
57
63
|
}
|
|
58
|
-
let
|
|
59
|
-
function
|
|
60
|
-
|
|
61
|
-
prefixUrl:
|
|
64
|
+
let n = null;
|
|
65
|
+
function E() {
|
|
66
|
+
n = u.create({
|
|
67
|
+
prefixUrl: a.getBaseUrl(),
|
|
62
68
|
headers: {
|
|
63
69
|
"Content-Type": "application/json"
|
|
64
70
|
},
|
|
65
71
|
hooks: {
|
|
66
72
|
beforeRequest: [
|
|
67
|
-
(
|
|
68
|
-
const
|
|
69
|
-
|
|
73
|
+
(e) => {
|
|
74
|
+
const t = a.getSessionKey();
|
|
75
|
+
e.headers.set("Authorization", `Bearer ${t}`);
|
|
70
76
|
}
|
|
71
77
|
],
|
|
72
|
-
afterResponse: [(
|
|
78
|
+
afterResponse: [(e, t, r) => r]
|
|
73
79
|
},
|
|
74
80
|
retry: {
|
|
75
81
|
limit: 2
|
|
76
82
|
}
|
|
77
83
|
});
|
|
78
84
|
}
|
|
79
|
-
function
|
|
80
|
-
return
|
|
85
|
+
function s() {
|
|
86
|
+
return n || E(), n;
|
|
81
87
|
}
|
|
82
|
-
class
|
|
83
|
-
async getById(
|
|
84
|
-
return await
|
|
88
|
+
class T {
|
|
89
|
+
async getById(t) {
|
|
90
|
+
return await s().get("intents/" + t).json();
|
|
85
91
|
}
|
|
86
|
-
async getForSender(
|
|
87
|
-
return await
|
|
92
|
+
async getForSender(t) {
|
|
93
|
+
return await s().get("intents/user/" + t).json();
|
|
88
94
|
}
|
|
89
|
-
async getForAddress(
|
|
90
|
-
return await
|
|
95
|
+
async getForAddress(t) {
|
|
96
|
+
return await s().get("intents/address/" + t).json();
|
|
91
97
|
}
|
|
92
|
-
async getAll(
|
|
93
|
-
return await
|
|
98
|
+
async getAll(t) {
|
|
99
|
+
return await s().get("intents", { searchParams: t }).json();
|
|
94
100
|
}
|
|
95
|
-
async create(
|
|
96
|
-
return await
|
|
101
|
+
async create(t) {
|
|
102
|
+
return await s().post("intents", { json: t }).json();
|
|
97
103
|
}
|
|
98
|
-
async update(
|
|
99
|
-
return await
|
|
104
|
+
async update(t, r) {
|
|
105
|
+
return await s().post("intents", { json: r }).json();
|
|
100
106
|
}
|
|
101
|
-
async triggerProcessing(
|
|
102
|
-
return await
|
|
107
|
+
async triggerProcessing(t) {
|
|
108
|
+
return await s().post(`intents/${t}/trigger-processing`).json();
|
|
103
109
|
}
|
|
104
110
|
}
|
|
105
|
-
class
|
|
106
|
-
async getFromSpecificBridge(
|
|
107
|
-
return await
|
|
111
|
+
class d {
|
|
112
|
+
async getFromSpecificBridge(t) {
|
|
113
|
+
return await s().get("quotes/single", { searchParams: t }).json();
|
|
108
114
|
}
|
|
109
|
-
async getFromAllBridges(
|
|
110
|
-
return await
|
|
115
|
+
async getFromAllBridges(t) {
|
|
116
|
+
return await s().get("quotes/multiple", { searchParams: t }).json();
|
|
111
117
|
}
|
|
112
|
-
async getBestAcrossBridges(
|
|
113
|
-
return await
|
|
118
|
+
async getBestAcrossBridges(t) {
|
|
119
|
+
return await s().get("quotes/best", { searchParams: t }).json();
|
|
114
120
|
}
|
|
115
|
-
async getAll(
|
|
116
|
-
return await
|
|
121
|
+
async getAll(t) {
|
|
122
|
+
return await s().get("quotes/multi-source", { searchParams: t }).json();
|
|
117
123
|
}
|
|
118
124
|
}
|
|
119
|
-
class
|
|
120
|
-
async getOptimalRoutes(
|
|
121
|
-
return await
|
|
125
|
+
class y {
|
|
126
|
+
async getOptimalRoutes(t) {
|
|
127
|
+
return await s().get("router/optimal-route", { searchParams: t }).json();
|
|
122
128
|
}
|
|
123
129
|
async getAllSupportedBridges() {
|
|
124
|
-
return await
|
|
130
|
+
return await s().get("router/supported-bridges/all").json();
|
|
125
131
|
}
|
|
126
|
-
async getSupportedBridges(
|
|
127
|
-
return await
|
|
132
|
+
async getSupportedBridges(t) {
|
|
133
|
+
return await s().get("router/supported-bridges/route", { searchParams: t }).json();
|
|
128
134
|
}
|
|
129
|
-
async getSupportedRoutes(
|
|
130
|
-
return await
|
|
135
|
+
async getSupportedRoutes(t, r) {
|
|
136
|
+
return await s().get("router/supported-bridges/bridge/" + t, { searchParams: r }).json();
|
|
131
137
|
}
|
|
132
138
|
}
|
|
133
|
-
class
|
|
134
|
-
async getSupported(
|
|
135
|
-
return await
|
|
139
|
+
class w {
|
|
140
|
+
async getSupported(t) {
|
|
141
|
+
return await s().get("chains", { searchParams: t }).json();
|
|
136
142
|
}
|
|
137
143
|
}
|
|
138
|
-
class
|
|
144
|
+
class A {
|
|
139
145
|
async getClientInfo() {
|
|
140
|
-
return await
|
|
146
|
+
return await s().get("client/auth/client-info").json();
|
|
141
147
|
}
|
|
142
148
|
}
|
|
143
|
-
const
|
|
144
|
-
router: new
|
|
145
|
-
quotes: new
|
|
146
|
-
intents: new
|
|
147
|
-
chains: new
|
|
148
|
-
client: new
|
|
149
|
+
const S = {
|
|
150
|
+
router: new y(),
|
|
151
|
+
quotes: new d(),
|
|
152
|
+
intents: new T(),
|
|
153
|
+
chains: new w(),
|
|
154
|
+
client: new A()
|
|
149
155
|
};
|
|
150
156
|
export {
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
157
|
+
a as Chainrails,
|
|
158
|
+
g as chains,
|
|
159
|
+
S as crapi,
|
|
154
160
|
i as environment,
|
|
155
|
-
|
|
161
|
+
h as tokens
|
|
156
162
|
};
|
|
@@ -1,156 +1,162 @@
|
|
|
1
|
-
import
|
|
2
|
-
var
|
|
3
|
-
class
|
|
4
|
-
constructor({ api_key:
|
|
5
|
-
this.api_key =
|
|
6
|
-
}
|
|
7
|
-
static config(
|
|
8
|
-
if (!
|
|
9
|
-
if (!
|
|
1
|
+
import u from "ky";
|
|
2
|
+
var g = /* @__PURE__ */ ((e) => (e.ARBITRUM = "ARBITRUM_MAINNET", e.ARBITRUM_TESTNET = "ARBITRUM_TESTNET", e.AVALANCHE = "AVALANCHE_MAINNET", e.AVALANCHE_TESTNET = "AVALANCHE_TESTNET", e.BASE = "BASE_MAINNET", e.BASE_TESTNET = "BASE_TESTNET", e.BSC = "BSC_MAINNET", e.ETHEREUM = "ETHEREUM_MAINNET", e.ETHEREUM_TESTNET = "ETHEREUM_TESTNET", e.STARKNET = "STARKNET_MAINNET", e))(g || {}), h = /* @__PURE__ */ ((e) => (e.USDC = "USDC", e))(h || {}), i = /* @__PURE__ */ ((e) => (e.PRODUCTION = "production", e.STAGING = "staging", e))(i || {});
|
|
3
|
+
class a {
|
|
4
|
+
constructor({ api_key: t, env: r }) {
|
|
5
|
+
this.api_key = t, this.jwt = "", this.env = r ?? i.PRODUCTION;
|
|
6
|
+
}
|
|
7
|
+
static config(t) {
|
|
8
|
+
if (!a.app) {
|
|
9
|
+
if (!t)
|
|
10
10
|
throw new Error("Please provide an api_key");
|
|
11
|
-
|
|
11
|
+
a.app = new a(t);
|
|
12
12
|
}
|
|
13
|
-
return
|
|
13
|
+
return t && (a.app.api_key = t.api_key, t.env !== void 0 && (a.app.env = t.env), this.updateJWT(), setInterval(this.updateJWT.bind(this), 1500 * 1e3)), a.app;
|
|
14
14
|
}
|
|
15
15
|
static async updateJWT() {
|
|
16
16
|
try {
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
}
|
|
17
|
+
const t = await (await fetch(this.getBaseUrl() + "/client/api-keys/session-token", {
|
|
18
|
+
method: "POST",
|
|
19
|
+
// headers: {
|
|
20
|
+
// Authorization: `Bearer ${Chainrails.app.api_key}`,
|
|
21
|
+
// },
|
|
21
22
|
body: JSON.stringify({
|
|
22
|
-
apiKey:
|
|
23
|
+
apiKey: a.app.api_key
|
|
23
24
|
})
|
|
24
|
-
});
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
console.log(n), this.app.jwt = n.token;
|
|
28
|
-
} catch (e) {
|
|
29
|
-
console.log(e);
|
|
25
|
+
})).json();
|
|
26
|
+
this.app.jwt = t.token;
|
|
27
|
+
} catch {
|
|
30
28
|
}
|
|
31
29
|
}
|
|
32
30
|
static getApiKey() {
|
|
33
|
-
if (!
|
|
31
|
+
if (!a.app)
|
|
34
32
|
throw new Error("Chainrails SDK not configured. Please call Chainrails.config() first.");
|
|
35
|
-
return
|
|
33
|
+
return a.app.api_key;
|
|
36
34
|
}
|
|
37
35
|
static getSessionKey() {
|
|
38
|
-
return
|
|
36
|
+
return a.app.jwt;
|
|
39
37
|
}
|
|
40
38
|
static getEnv() {
|
|
41
|
-
if (!
|
|
39
|
+
if (!a.app)
|
|
42
40
|
throw new Error("Chainrails SDK not configured. Please call Chainrails.config() first.");
|
|
43
|
-
return
|
|
41
|
+
return a.app.env === "internal" ? "staging" : a.app.env;
|
|
44
42
|
}
|
|
45
43
|
static getBaseUrl() {
|
|
46
|
-
if (!
|
|
44
|
+
if (!a.app)
|
|
47
45
|
throw new Error("Chainrails SDK not configured. Please call Chainrails.config() first.");
|
|
48
|
-
switch (
|
|
46
|
+
switch (a.app.env) {
|
|
49
47
|
case "production":
|
|
50
48
|
return "https://api.chainrails.io/api/v1";
|
|
51
49
|
case "staging":
|
|
52
50
|
return "https://dev.chainrails.io/api/v1";
|
|
51
|
+
case "internal":
|
|
52
|
+
return "https://dev.chainrails.io/api/v1";
|
|
53
53
|
default:
|
|
54
54
|
return "https://api.chainrails.io/api/v1";
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
|
+
static getPayModalUrl(t, r, o, p) {
|
|
58
|
+
if (!a.app)
|
|
59
|
+
throw new Error("Chainrails SDK not configured. Please call Chainrails.config() first.");
|
|
60
|
+
const c = a.app.env === "internal" ? "https://chainrails-frontend-git-staging-horus-labs.vercel.app/pay/" : "https://app.chainrails.io/pay/", l = `${t}/_token_/${r}/_to_/${o}/_amount_/${p * 100}`;
|
|
61
|
+
return c + l;
|
|
62
|
+
}
|
|
57
63
|
}
|
|
58
|
-
let
|
|
59
|
-
function
|
|
60
|
-
|
|
61
|
-
prefixUrl:
|
|
64
|
+
let n = null;
|
|
65
|
+
function E() {
|
|
66
|
+
n = u.create({
|
|
67
|
+
prefixUrl: a.getBaseUrl(),
|
|
62
68
|
headers: {
|
|
63
69
|
"Content-Type": "application/json"
|
|
64
70
|
},
|
|
65
71
|
hooks: {
|
|
66
72
|
beforeRequest: [
|
|
67
|
-
(
|
|
68
|
-
const
|
|
69
|
-
|
|
73
|
+
(e) => {
|
|
74
|
+
const t = a.getSessionKey();
|
|
75
|
+
e.headers.set("Authorization", `Bearer ${t}`);
|
|
70
76
|
}
|
|
71
77
|
],
|
|
72
|
-
afterResponse: [(
|
|
78
|
+
afterResponse: [(e, t, r) => r]
|
|
73
79
|
},
|
|
74
80
|
retry: {
|
|
75
81
|
limit: 2
|
|
76
82
|
}
|
|
77
83
|
});
|
|
78
84
|
}
|
|
79
|
-
function
|
|
80
|
-
return
|
|
85
|
+
function s() {
|
|
86
|
+
return n || E(), n;
|
|
81
87
|
}
|
|
82
|
-
class
|
|
83
|
-
async getById(
|
|
84
|
-
return await
|
|
88
|
+
class T {
|
|
89
|
+
async getById(t) {
|
|
90
|
+
return await s().get("intents/" + t).json();
|
|
85
91
|
}
|
|
86
|
-
async getForSender(
|
|
87
|
-
return await
|
|
92
|
+
async getForSender(t) {
|
|
93
|
+
return await s().get("intents/user/" + t).json();
|
|
88
94
|
}
|
|
89
|
-
async getForAddress(
|
|
90
|
-
return await
|
|
95
|
+
async getForAddress(t) {
|
|
96
|
+
return await s().get("intents/address/" + t).json();
|
|
91
97
|
}
|
|
92
|
-
async getAll(
|
|
93
|
-
return await
|
|
98
|
+
async getAll(t) {
|
|
99
|
+
return await s().get("intents", { searchParams: t }).json();
|
|
94
100
|
}
|
|
95
|
-
async create(
|
|
96
|
-
return await
|
|
101
|
+
async create(t) {
|
|
102
|
+
return await s().post("intents", { json: t }).json();
|
|
97
103
|
}
|
|
98
|
-
async update(
|
|
99
|
-
return await
|
|
104
|
+
async update(t, r) {
|
|
105
|
+
return await s().post("intents", { json: r }).json();
|
|
100
106
|
}
|
|
101
|
-
async triggerProcessing(
|
|
102
|
-
return await
|
|
107
|
+
async triggerProcessing(t) {
|
|
108
|
+
return await s().post(`intents/${t}/trigger-processing`).json();
|
|
103
109
|
}
|
|
104
110
|
}
|
|
105
|
-
class
|
|
106
|
-
async getFromSpecificBridge(
|
|
107
|
-
return await
|
|
111
|
+
class d {
|
|
112
|
+
async getFromSpecificBridge(t) {
|
|
113
|
+
return await s().get("quotes/single", { searchParams: t }).json();
|
|
108
114
|
}
|
|
109
|
-
async getFromAllBridges(
|
|
110
|
-
return await
|
|
115
|
+
async getFromAllBridges(t) {
|
|
116
|
+
return await s().get("quotes/multiple", { searchParams: t }).json();
|
|
111
117
|
}
|
|
112
|
-
async getBestAcrossBridges(
|
|
113
|
-
return await
|
|
118
|
+
async getBestAcrossBridges(t) {
|
|
119
|
+
return await s().get("quotes/best", { searchParams: t }).json();
|
|
114
120
|
}
|
|
115
|
-
async getAll(
|
|
116
|
-
return await
|
|
121
|
+
async getAll(t) {
|
|
122
|
+
return await s().get("quotes/multi-source", { searchParams: t }).json();
|
|
117
123
|
}
|
|
118
124
|
}
|
|
119
|
-
class
|
|
120
|
-
async getOptimalRoutes(
|
|
121
|
-
return await
|
|
125
|
+
class y {
|
|
126
|
+
async getOptimalRoutes(t) {
|
|
127
|
+
return await s().get("router/optimal-route", { searchParams: t }).json();
|
|
122
128
|
}
|
|
123
129
|
async getAllSupportedBridges() {
|
|
124
|
-
return await
|
|
130
|
+
return await s().get("router/supported-bridges/all").json();
|
|
125
131
|
}
|
|
126
|
-
async getSupportedBridges(
|
|
127
|
-
return await
|
|
132
|
+
async getSupportedBridges(t) {
|
|
133
|
+
return await s().get("router/supported-bridges/route", { searchParams: t }).json();
|
|
128
134
|
}
|
|
129
|
-
async getSupportedRoutes(
|
|
130
|
-
return await
|
|
135
|
+
async getSupportedRoutes(t, r) {
|
|
136
|
+
return await s().get("router/supported-bridges/bridge/" + t, { searchParams: r }).json();
|
|
131
137
|
}
|
|
132
138
|
}
|
|
133
|
-
class
|
|
134
|
-
async getSupported(
|
|
135
|
-
return await
|
|
139
|
+
class w {
|
|
140
|
+
async getSupported(t) {
|
|
141
|
+
return await s().get("chains", { searchParams: t }).json();
|
|
136
142
|
}
|
|
137
143
|
}
|
|
138
|
-
class
|
|
144
|
+
class A {
|
|
139
145
|
async getClientInfo() {
|
|
140
|
-
return await
|
|
146
|
+
return await s().get("client/auth/client-info").json();
|
|
141
147
|
}
|
|
142
148
|
}
|
|
143
|
-
const
|
|
144
|
-
router: new
|
|
145
|
-
quotes: new
|
|
146
|
-
intents: new
|
|
147
|
-
chains: new
|
|
148
|
-
client: new
|
|
149
|
+
const S = {
|
|
150
|
+
router: new y(),
|
|
151
|
+
quotes: new d(),
|
|
152
|
+
intents: new T(),
|
|
153
|
+
chains: new w(),
|
|
154
|
+
client: new A()
|
|
149
155
|
};
|
|
150
156
|
export {
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
157
|
+
a as Chainrails,
|
|
158
|
+
g as chains,
|
|
159
|
+
S as crapi,
|
|
154
160
|
i as environment,
|
|
155
|
-
|
|
161
|
+
h as tokens
|
|
156
162
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(s,r){typeof exports=="object"&&typeof module<"u"?r(exports,require("ky")):typeof define=="function"&&define.amd?define(["exports","ky"],r):(s=typeof globalThis<"u"?globalThis:s||self,r(s.Chainrails={},s.Ky))})(this,(function(s,r){"use strict";var c=(t=>(t.ARBITRUM="ARBITRUM_MAINNET",t.ARBITRUM_TESTNET="ARBITRUM_TESTNET",t.AVALANCHE="AVALANCHE_MAINNET",t.AVALANCHE_TESTNET="AVALANCHE_TESTNET",t.BASE="BASE_MAINNET",t.BASE_TESTNET="BASE_TESTNET",t.BSC="BSC_MAINNET",t.ETHEREUM="ETHEREUM_MAINNET",t.ETHEREUM_TESTNET="ETHEREUM_TESTNET",t.STARKNET="STARKNET_MAINNET",t))(c||{}),u=(t=>(t.USDC="USDC",t))(u||{}),o=(t=>(t.PRODUCTION="production",t.STAGING="staging",t))(o||{});class n{constructor({api_key:e,env:i}){this.api_key=e,this.jwt="",this.env=i??o.PRODUCTION}static config(e){if(!n.app){if(!e)throw new Error("Please provide an api_key");n.app=new n(e)}return e&&(n.app.api_key=e.api_key,e.env!==void 0&&(n.app.env=e.env),this.updateJWT(),setInterval(this.updateJWT.bind(this),1500*1e3)),n.app}static async updateJWT(){try{const e=await(await fetch(this.getBaseUrl()+"/client/api-keys/session-token",{method:"POST",body:JSON.stringify({apiKey:n.app.api_key})})).json();this.app.jwt=e.token}catch{}}static getApiKey(){if(!n.app)throw new Error("Chainrails SDK not configured. Please call Chainrails.config() first.");return n.app.api_key}static getSessionKey(){return n.app.jwt}static getEnv(){if(!n.app)throw new Error("Chainrails SDK not configured. Please call Chainrails.config() first.");return n.app.env==="internal"?"staging":n.app.env}static getBaseUrl(){if(!n.app)throw new Error("Chainrails SDK not configured. Please call Chainrails.config() first.");switch(n.app.env){case"production":return"https://api.chainrails.io/api/v1";case"staging":return"https://dev.chainrails.io/api/v1";case"internal":return"https://dev.chainrails.io/api/v1";default:return"https://api.chainrails.io/api/v1"}}static getPayModalUrl(e,i,f,w){if(!n.app)throw new Error("Chainrails SDK not configured. Please call Chainrails.config() first.");const A=n.app.env==="internal"?"https://chainrails-frontend-git-staging-horus-labs.vercel.app/pay/":"https://app.chainrails.io/pay/",S=`${e}/_token_/${i}/_to_/${f}/_amount_/${w*100}`;return A+S}}let p=null;function l(){p=r.create({prefixUrl:n.getBaseUrl(),headers:{"Content-Type":"application/json"},hooks:{beforeRequest:[t=>{const e=n.getSessionKey();t.headers.set("Authorization",`Bearer ${e}`)}],afterResponse:[(t,e,i)=>i]},retry:{limit:2}})}function a(){return p||l(),p}class g{async getById(e){return await a().get("intents/"+e).json()}async getForSender(e){return await a().get("intents/user/"+e).json()}async getForAddress(e){return await a().get("intents/address/"+e).json()}async getAll(e){return await a().get("intents",{searchParams:e}).json()}async create(e){return await a().post("intents",{json:e}).json()}async update(e,i){return await a().post("intents",{json:i}).json()}async triggerProcessing(e){return await a().post(`intents/${e}/trigger-processing`).json()}}class h{async getFromSpecificBridge(e){return await a().get("quotes/single",{searchParams:e}).json()}async getFromAllBridges(e){return await a().get("quotes/multiple",{searchParams:e}).json()}async getBestAcrossBridges(e){return await a().get("quotes/best",{searchParams:e}).json()}async getAll(e){return await a().get("quotes/multi-source",{searchParams:e}).json()}}class d{async getOptimalRoutes(e){return await a().get("router/optimal-route",{searchParams:e}).json()}async getAllSupportedBridges(){return await a().get("router/supported-bridges/all").json()}async getSupportedBridges(e){return await a().get("router/supported-bridges/route",{searchParams:e}).json()}async getSupportedRoutes(e,i){return await a().get("router/supported-bridges/bridge/"+e,{searchParams:i}).json()}}class T{async getSupported(e){return await a().get("chains",{searchParams:e}).json()}}class E{async getClientInfo(){return await a().get("client/auth/client-info").json()}}const y={router:new d,quotes:new h,intents:new g,chains:new T,client:new E};s.Chainrails=n,s.chains=c,s.crapi=y,s.environment=o,s.tokens=u,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})}));
|
package/dist/src/req.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"req.d.ts","sourceRoot":"","sources":["../../src/req.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAGpB,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,cAAc,EAAE,OAAO,CAAC;KACzB;CACF;AAED,QAAA,IAAI,GAAG,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,GAAG,IAAW,CAAC;AAEpD,wBAAgB,UAAU,
|
|
1
|
+
{"version":3,"file":"req.d.ts","sourceRoot":"","sources":["../../src/req.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAGpB,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,cAAc,EAAE,OAAO,CAAC;KACzB;CACF;AAED,QAAA,IAAI,GAAG,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,GAAG,IAAW,CAAC;AAEpD,wBAAgB,UAAU,SAmBzB;AAED,wBAAgB,SAAS,4BAKxB;AAED,eAAe,GAAG,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@chainrails/sdk",
|
|
3
3
|
"sideEffects": false,
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.23",
|
|
5
5
|
"main": "./dist/chainrails-sdk.umd.js",
|
|
6
6
|
"module": "./dist/chainrails-sdk.es.mjs",
|
|
7
7
|
"license": "MIT",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
}
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@chainrails/common": "^0.0.
|
|
38
|
+
"@chainrails/common": "^0.0.15",
|
|
39
39
|
"ky": "^1.14.0"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|