@bitflowlabs/core-sdk 2.0.1 → 2.0.3

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.
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- var _a, _b, _c, _d;
2
+ var _a, _b, _c, _d, _e;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.configs = void 0;
5
5
  exports.validateConfig = validateConfig;
@@ -12,6 +12,8 @@ exports.configs = {
12
12
  "",
13
13
  KEEPER_API_KEY: ((_d = process.env.NEXT_PUBLIC_KEEPER_API_KEY) !== null && _d !== void 0 ? _d : process.env.KEEPER_API_KEY) ||
14
14
  "",
15
+ KEEPER_API_HOST: ((_e = process.env.NEXT_PUBLIC_KEEPER_API_HOST) !== null && _e !== void 0 ? _e : process.env.KEEPER_API_HOST) ||
16
+ "",
15
17
  };
16
18
  function validateConfig() {
17
19
  const requiredEnvVars = Object.keys(exports.configs);
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":";;;;AAmBA,wCAQC;AAzBY,QAAA,OAAO,GAAqB;IACvC,gBAAgB,EACd,CAAC,MAAA,OAAO,CAAC,GAAG,CAAC,4BAA4B,mCACvC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;QAC/B,EAAE;IACJ,eAAe,EACb,CAAC,MAAA,OAAO,CAAC,GAAG,CAAC,2BAA2B,mCAAI,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;QACxE,EAAE;IACJ,sBAAsB,EACpB,CAAC,MAAA,OAAO,CAAC,GAAG,CAAC,kCAAkC,mCAC7C,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;QACrC,EAAE;IACJ,cAAc,EACZ,CAAC,MAAA,OAAO,CAAC,GAAG,CAAC,0BAA0B,mCAAI,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QACtE,EAAE;CACL,CAAC;AAEF,SAAgB,cAAc;IAC5B,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,eAAO,CAA+B,CAAC;IAE3E,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;QACrC,IAAI,CAAC,eAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,mCAAmC,MAAM,EAAE,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":";;;;AAsBA,wCAQC;AA5BY,QAAA,OAAO,GAAqB;IACvC,gBAAgB,EACd,CAAC,MAAA,OAAO,CAAC,GAAG,CAAC,4BAA4B,mCACvC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;QAC/B,EAAE;IACJ,eAAe,EACb,CAAC,MAAA,OAAO,CAAC,GAAG,CAAC,2BAA2B,mCAAI,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;QACxE,EAAE;IACJ,sBAAsB,EACpB,CAAC,MAAA,OAAO,CAAC,GAAG,CAAC,kCAAkC,mCAC7C,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;QACrC,EAAE;IACJ,cAAc,EACZ,CAAC,MAAA,OAAO,CAAC,GAAG,CAAC,0BAA0B,mCAAI,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QACtE,EAAE;IACJ,eAAe,EACb,CAAC,MAAA,OAAO,CAAC,GAAG,CAAC,2BAA2B,mCAAI,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;QACxE,EAAE;CACL,CAAC;AAEF,SAAgB,cAAc;IAC5B,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,eAAO,CAA+B,CAAC;IAE3E,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;QACrC,IAAI,CAAC,eAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,mCAAmC,MAAM,EAAE,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -10,7 +10,6 @@ exports.getGroupOrderAPI = getGroupOrderAPI;
10
10
  exports.cancelOrderAPI = cancelOrderAPI;
11
11
  exports.cancelGroupOrderAPI = cancelGroupOrderAPI;
12
12
  const config_1 = require("../config");
13
- const types_1 = require("./types");
14
13
  const getKeeperHeaders = () => ({
15
14
  Accept: "application/json",
16
15
  "Content-Type": "application/json",
@@ -31,7 +30,7 @@ async function getOrCreateKeeperContractAPI(params) {
31
30
  if (typeof params.allActionsApproved === "boolean") {
32
31
  queryParams.append("allActionsApproved", params.allActionsApproved.toString());
33
32
  }
34
- const url = `${types_1.KEEPER_API_BASE_URL}/getOrCreateKeeperContract?${queryParams.toString()}`;
33
+ const url = `${config_1.configs.KEEPER_API_HOST}/getOrCreateKeeperContract?${queryParams.toString()}`;
35
34
  const response = await fetch(url, {
36
35
  method: "GET",
37
36
  headers: getKeeperHeaders(),
@@ -53,7 +52,7 @@ async function getOrderAPI(orderId) {
53
52
  const queryParams = new URLSearchParams({
54
53
  orderId: orderId,
55
54
  });
56
- const url = `${types_1.KEEPER_API_BASE_URL}/getOrder?${queryParams.toString()}`;
55
+ const url = `${config_1.configs.KEEPER_API_HOST}/getOrder?${queryParams.toString()}`;
57
56
  const response = await fetch(url, {
58
57
  method: "GET",
59
58
  headers: getKeeperHeaders(),
@@ -63,10 +62,6 @@ async function getOrderAPI(orderId) {
63
62
  throw new Error(errorData.error || `HTTP error! status: ${response.status}`);
64
63
  }
65
64
  const data = await response.json();
66
- if (data.order) {
67
- data.order.creationDate = new Date(data.order.creationDate);
68
- data.order.lastUpdated = new Date(data.order.lastUpdated);
69
- }
70
65
  return data;
71
66
  }
72
67
  catch (error) {
@@ -79,7 +74,7 @@ async function getUserAPI(stacksAddress) {
79
74
  const queryParams = new URLSearchParams({
80
75
  stacksAddress: stacksAddress,
81
76
  });
82
- const url = `${types_1.KEEPER_API_BASE_URL}/getUser?${queryParams.toString()}`;
77
+ const url = `${config_1.configs.KEEPER_API_HOST}/getUser?${queryParams.toString()}`;
83
78
  const response = await fetch(url, {
84
79
  method: "GET",
85
80
  headers: getKeeperHeaders(),
@@ -88,24 +83,7 @@ async function getUserAPI(stacksAddress) {
88
83
  const errorData = await response.json();
89
84
  throw new Error(errorData.error || `HTTP error! status: ${response.status}`);
90
85
  }
91
- const data = (await response.json());
92
- if (data.user) {
93
- data.user.creationDate = new Date(data.user.creationDate);
94
- data.user.lastUpdated = new Date(data.user.lastUpdated);
95
- const contracts = data.user.keeperContracts;
96
- for (const contractKey in contracts) {
97
- const contract = contracts[contractKey];
98
- if (contract.deploymentDate) {
99
- contract.deploymentDate = new Date(contract.deploymentDate);
100
- }
101
- }
102
- const orders = data.user.keeperOrders;
103
- for (const orderKey in orders) {
104
- const order = orders[orderKey];
105
- order.creationDate = new Date(order.creationDate);
106
- order.lastUpdated = new Date(order.lastUpdated);
107
- }
108
- }
86
+ const data = await response.json();
109
87
  return data;
110
88
  }
111
89
  catch (error) {
@@ -115,7 +93,7 @@ async function getUserAPI(stacksAddress) {
115
93
  }
116
94
  async function createOrderAPI(params) {
117
95
  try {
118
- const url = `${types_1.KEEPER_API_BASE_URL}/createOrder`;
96
+ const url = `${config_1.configs.KEEPER_API_HOST}/createOrder`;
119
97
  const requestBody = {
120
98
  stacksAddress: params.stacksAddress,
121
99
  keeperType: params.keeperType,
@@ -130,6 +108,7 @@ async function createOrderAPI(params) {
130
108
  tokenOrder: params.tokenOrder || [],
131
109
  actionType: params.actionType,
132
110
  bitcoinTxId: params.bitcoinTxId,
111
+ fundingTokens: params.fundingTokens || {},
133
112
  actionAggregatorTokens: params.actionAggregatorTokens || undefined,
134
113
  };
135
114
  const response = await fetch(url, {
@@ -141,11 +120,7 @@ async function createOrderAPI(params) {
141
120
  const errorData = await response.json();
142
121
  throw new Error(errorData.error || `HTTP error! status: ${response.status}`);
143
122
  }
144
- const data = (await response.json());
145
- if (data.order) {
146
- data.order.creationDate = new Date(data.order.creationDate);
147
- data.order.lastUpdated = new Date(data.order.lastUpdated);
148
- }
123
+ const data = await response.json();
149
124
  return data;
150
125
  }
151
126
  catch (error) {
@@ -176,7 +151,7 @@ async function getQuoteAPI(params) {
176
151
  if (params.bitcoinAddress) {
177
152
  queryParams.append("bitcoinAddress", params.bitcoinAddress);
178
153
  }
179
- const url = `${types_1.KEEPER_API_BASE_URL}/getQuote?${queryParams.toString()}`;
154
+ const url = `${config_1.configs.KEEPER_API_HOST}/getQuote?${queryParams.toString()}`;
180
155
  const response = await fetch(url, {
181
156
  method: "GET",
182
157
  headers: getKeeperHeaders(),
@@ -195,7 +170,7 @@ async function getQuoteAPI(params) {
195
170
  async function createGroupOrderAPI(params) {
196
171
  var _a;
197
172
  try {
198
- const url = `${types_1.KEEPER_API_BASE_URL}/createGroupOrder`;
173
+ const url = `${config_1.configs.KEEPER_API_HOST}/createGroupOrder`;
199
174
  const requestBody = {
200
175
  stacksAddress: params.stacksAddress,
201
176
  amountPerOrder: params.amountPerOrder,
@@ -227,16 +202,6 @@ async function createGroupOrderAPI(params) {
227
202
  throw new Error(errorData.error || `HTTP error! status: ${response.status}`);
228
203
  }
229
204
  const data = await response.json();
230
- if (data.groupOrder) {
231
- data.groupOrder.creationDate = new Date(data.groupOrder.creationDate);
232
- data.groupOrder.lastUpdated = new Date(data.groupOrder.lastUpdated);
233
- if (data.groupOrder.orders) {
234
- data.groupOrder.orders.forEach((order) => {
235
- order.creationDate = new Date(order.creationDate);
236
- order.lastUpdated = new Date(order.lastUpdated);
237
- });
238
- }
239
- }
240
205
  return data;
241
206
  }
242
207
  catch (error) {
@@ -250,7 +215,7 @@ async function getGroupOrderAPI(groupId, includeOrders = false) {
250
215
  groupId: groupId,
251
216
  includeOrders: includeOrders.toString(),
252
217
  });
253
- const url = `${types_1.KEEPER_API_BASE_URL}/getGroupOrder?${queryParams.toString()}`;
218
+ const url = `${config_1.configs.KEEPER_API_HOST}/getGroupOrder?${queryParams.toString()}`;
254
219
  const response = await fetch(url, {
255
220
  method: "GET",
256
221
  headers: getKeeperHeaders(),
@@ -260,17 +225,6 @@ async function getGroupOrderAPI(groupId, includeOrders = false) {
260
225
  throw new Error(errorData.error || `HTTP error! status: ${response.status}`);
261
226
  }
262
227
  const data = await response.json();
263
- if (data.groupOrder) {
264
- data.groupOrder.creationDate = new Date(data.groupOrder.creationDate);
265
- data.groupOrder.lastUpdated = new Date(data.groupOrder.lastUpdated);
266
- data.groupOrder.nextExecutionAfter = new Date(data.groupOrder.nextExecutionAfter);
267
- }
268
- if (data.groupOrders && Array.isArray(data.groupOrders)) {
269
- data.groupOrders.forEach((order) => {
270
- order.creationDate = new Date(order.creationDate);
271
- order.lastUpdated = new Date(order.lastUpdated);
272
- });
273
- }
274
228
  return data;
275
229
  }
276
230
  catch (error) {
@@ -280,7 +234,7 @@ async function getGroupOrderAPI(groupId, includeOrders = false) {
280
234
  }
281
235
  async function cancelOrderAPI(orderId) {
282
236
  try {
283
- const url = `${types_1.KEEPER_API_BASE_URL}/cancelOrder`;
237
+ const url = `${config_1.configs.KEEPER_API_HOST}/cancelOrder`;
284
238
  const response = await fetch(url, {
285
239
  method: "POST",
286
240
  headers: getKeeperHeaders(),
@@ -299,7 +253,7 @@ async function cancelOrderAPI(orderId) {
299
253
  }
300
254
  async function cancelGroupOrderAPI(groupId) {
301
255
  try {
302
- const url = `${types_1.KEEPER_API_BASE_URL}/cancelGroupOrder`;
256
+ const url = `${config_1.configs.KEEPER_API_HOST}/cancelGroupOrder`;
303
257
  const response = await fetch(url, {
304
258
  method: "POST",
305
259
  headers: getKeeperHeaders(),
@@ -1 +1 @@
1
- {"version":3,"file":"keeperAPI.js","sourceRoot":"","sources":["../../../src/keeper/keeperAPI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keeperAPI.js","sourceRoot":"","sources":["../../../src/keeper/keeperAPI.ts"],"names":[],"mappings":"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"}
@@ -70,14 +70,31 @@ export interface KeeperOrder {
70
70
  actionAmount: string;
71
71
  minReceived: MinReceived;
72
72
  feeRecipient: string;
73
- tokenOrder: string[];
73
+ actionType: string;
74
+ actionAggregatorTokens: {
75
+ tokenXId: string;
76
+ tokenYId: string;
77
+ };
78
+ fundingTokens: Record<string, any>;
74
79
  txIds: Record<string, string>;
75
- keeperType: KeeperType;
80
+ txRetries: {
81
+ deploys: number;
82
+ actions: number;
83
+ };
76
84
  requiresPontisTx: boolean;
77
- status: KeeperOrderStatus;
78
- txRetries: TxRetries;
79
- creationDate: Date;
80
- lastUpdated: Date;
85
+ keeperType: KeeperType;
86
+ orderStatus: string;
87
+ executeActionAfter: TimestampFormat;
88
+ creationDate: TimestampFormat;
89
+ lastUpdated: TimestampFormat;
90
+ }
91
+ interface TimestampFormat {
92
+ _seconds: number;
93
+ _nanoseconds: number;
94
+ }
95
+ export interface CreateOrderResponse {
96
+ keeperOrder: KeeperOrder;
97
+ error?: string;
81
98
  }
82
99
  export interface GetOrderResponse {
83
100
  order: KeeperOrder;
@@ -109,6 +126,9 @@ export interface CreateOrderParams {
109
126
  tokenOrder?: string[];
110
127
  actionType: string;
111
128
  bitcoinTxId: string;
129
+ fundingTokens?: {
130
+ [key: string]: string;
131
+ };
112
132
  actionFunctionArgs?: {
113
133
  tokenList?: Record<string, string>;
114
134
  xykPoolList?: Record<string, string>;
@@ -121,10 +141,6 @@ export interface CreateOrderParams {
121
141
  tokenYId: string;
122
142
  };
123
143
  }
124
- export interface CreateOrderResponse {
125
- order: KeeperOrder;
126
- error?: string;
127
- }
128
144
  export interface ActionFunctionArgs {
129
145
  actionTrait?: string;
130
146
  tokenList?: Record<string, string>;
@@ -254,4 +270,4 @@ export interface CancelGroupOrderResponse {
254
270
  success: boolean;
255
271
  error?: string;
256
272
  }
257
- export declare const KEEPER_API_BASE_URL = "https://bitflow-keeper-7owjsmt8.uc.gateway.dev";
273
+ export {};
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.KEEPER_API_BASE_URL = exports.GroupOrderStatus = exports.KeeperOrderStatus = exports.KeeperContractStatus = exports.KeeperTransactionType = exports.KeeperType = exports.ActionType = exports.ALLOWED_CONTRACTS = void 0;
3
+ exports.GroupOrderStatus = exports.KeeperOrderStatus = exports.KeeperContractStatus = exports.KeeperTransactionType = exports.KeeperType = exports.ActionType = exports.ALLOWED_CONTRACTS = void 0;
4
4
  exports.ALLOWED_CONTRACTS = new Set([
5
5
  "SM1793C4R5PZ4NS4VQ4WMP7SKKYVH8JZEWSZ9HCCR.xyk-core-v-1-1",
6
6
  "SM1793C4R5PZ4NS4VQ4WMP7SKKYVH8JZEWSZ9HCCR.xyk-core-v-1-2",
@@ -60,7 +60,4 @@ var GroupOrderStatus;
60
60
  GroupOrderStatus["Completed"] = "completed";
61
61
  GroupOrderStatus["Cancelled"] = "cancelled";
62
62
  })(GroupOrderStatus || (exports.GroupOrderStatus = GroupOrderStatus = {}));
63
- exports.KEEPER_API_BASE_URL = "https://bitflow-keeper-7owjsmt8.uc.gateway.dev";
64
- // "https://bitflow-keeper-test-7owjsmt8.uc.gateway.dev";
65
- // "http://localhost:8080";
66
63
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/keeper/types.ts"],"names":[],"mappings":";;;AAAa,QAAA,iBAAiB,GAAG,IAAI,GAAG,CAAC;IACvC,0DAA0D;IAC1D,0DAA0D;IAC1D,iEAAiE;IACjE,iEAAiE;IACjE,iEAAiE;IACjE,wEAAwE;IACxE,uEAAuE;CACxE,CAAC,CAAC;AAEH,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,2DAA6C,CAAA;IAC7C,iFAAmE,CAAA;IACnE,yEAA2D,CAAA;AAC7D,CAAC,EAJW,UAAU,0BAAV,UAAU,QAIrB;AAED,IAAY,UAMX;AAND,WAAY,UAAU;IACpB,iDAAmC,CAAA;IACnC,+EAAiE,CAAA;IACjE,2EAA6D,CAAA;IAC7D,2EAA6D,CAAA;IAC7D,iDAAmC,CAAA;AACrC,CAAC,EANW,UAAU,0BAAV,UAAU,QAMrB;AAED,IAAY,qBAMX;AAND,WAAY,qBAAqB;IAC/B,8CAAqB,CAAA;IACrB,4CAAmB,CAAA;IACnB,4CAAmB,CAAA;IACnB,4CAAmB,CAAA;IACnB,4CAAmB,CAAA;AACrB,CAAC,EANW,qBAAqB,qCAArB,qBAAqB,QAMhC;AAED,IAAY,oBAMX;AAND,WAAY,oBAAoB;IAC9B,qFAA6D,CAAA;IAC7D,+EAAuD,CAAA;IACvD,+EAAuD,CAAA;IACvD,6EAAqD,CAAA;IACrD,2EAAmD,CAAA;AACrD,CAAC,EANW,oBAAoB,oCAApB,oBAAoB,QAM/B;AAED,IAAY,iBAYX;AAZD,WAAY,iBAAiB;IAC3B,kDAA6B,CAAA;IAC7B,oDAA+B,CAAA;IAC/B,gDAA2B,CAAA;IAC3B,4EAAuD,CAAA;IACvD,0EAAqD,CAAA;IACrD,wEAAmD,CAAA;IACnD,sDAAiC,CAAA;IACjC,oDAA+B,CAAA;IAC/B,oDAA+B,CAAA;IAC/B,kDAA6B,CAAA;IAC7B,gDAA2B,CAAA;AAC7B,CAAC,EAZW,iBAAiB,iCAAjB,iBAAiB,QAY5B;AAsKD,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,qCAAiB,CAAA;IACjB,2CAAuB,CAAA;IACvB,2CAAuB,CAAA;AACzB,CAAC,EAJW,gBAAgB,gCAAhB,gBAAgB,QAI3B;AAwEY,QAAA,mBAAmB,GAC9B,gDAAgD,CAAC;AAEnD,yDAAyD;AAEzD,2BAA2B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/keeper/types.ts"],"names":[],"mappings":";;;AAAa,QAAA,iBAAiB,GAAG,IAAI,GAAG,CAAC;IACvC,0DAA0D;IAC1D,0DAA0D;IAC1D,iEAAiE;IACjE,iEAAiE;IACjE,iEAAiE;IACjE,wEAAwE;IACxE,uEAAuE;CACxE,CAAC,CAAC;AAEH,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,2DAA6C,CAAA;IAC7C,iFAAmE,CAAA;IACnE,yEAA2D,CAAA;AAC7D,CAAC,EAJW,UAAU,0BAAV,UAAU,QAIrB;AAED,IAAY,UAMX;AAND,WAAY,UAAU;IACpB,iDAAmC,CAAA;IACnC,+EAAiE,CAAA;IACjE,2EAA6D,CAAA;IAC7D,2EAA6D,CAAA;IAC7D,iDAAmC,CAAA;AACrC,CAAC,EANW,UAAU,0BAAV,UAAU,QAMrB;AAED,IAAY,qBAMX;AAND,WAAY,qBAAqB;IAC/B,8CAAqB,CAAA;IACrB,4CAAmB,CAAA;IACnB,4CAAmB,CAAA;IACnB,4CAAmB,CAAA;IACnB,4CAAmB,CAAA;AACrB,CAAC,EANW,qBAAqB,qCAArB,qBAAqB,QAMhC;AAED,IAAY,oBAMX;AAND,WAAY,oBAAoB;IAC9B,qFAA6D,CAAA;IAC7D,+EAAuD,CAAA;IACvD,+EAAuD,CAAA;IACvD,6EAAqD,CAAA;IACrD,2EAAmD,CAAA;AACrD,CAAC,EANW,oBAAoB,oCAApB,oBAAoB,QAM/B;AAED,IAAY,iBAYX;AAZD,WAAY,iBAAiB;IAC3B,kDAA6B,CAAA;IAC7B,oDAA+B,CAAA;IAC/B,gDAA2B,CAAA;IAC3B,4EAAuD,CAAA;IACvD,0EAAqD,CAAA;IACrD,wEAAmD,CAAA;IACnD,sDAAiC,CAAA;IACjC,oDAA+B,CAAA;IAC/B,oDAA+B,CAAA;IAC/B,kDAA6B,CAAA;IAC7B,gDAA2B,CAAA;AAC7B,CAAC,EAZW,iBAAiB,iCAAjB,iBAAiB,QAY5B;AAuLD,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,qCAAiB,CAAA;IACjB,2CAAuB,CAAA;IACvB,2CAAuB,CAAA;AACzB,CAAC,EAJW,gBAAgB,gCAAhB,gBAAgB,QAI3B"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const BitflowSDK_1 = require("./BitflowSDK");
5
+ const dotenv_1 = tslib_1.__importDefault(require("dotenv"));
6
+ dotenv_1.default.config();
7
+ async function testGetUser() {
8
+ console.log("Starting getUser Test...\n");
9
+ // Initialize SDK with environment variables
10
+ const sdk = new BitflowSDK_1.BitflowSDK({
11
+ BITFLOW_API_HOST: process.env.BITFLOW_API_HOST,
12
+ BITFLOW_API_KEY: process.env.BITFLOW_API_KEY,
13
+ READONLY_CALL_API_HOST: process.env.READONLY_CALL_API_HOST,
14
+ KEEPER_API_KEY: process.env.NEXT_PUBLIC_KEEPER_API_KEY,
15
+ KEEPER_API_HOST: process.env.KEEPER_API_HOST,
16
+ });
17
+ // Test case 1: Valid user
18
+ console.log("Test Case 1: Fetching a valid user");
19
+ try {
20
+ const stacksAddress = "SP3D03X5BHMNSAAW71NN7BQRMV4DW2G4JB3MZAGJ8";
21
+ console.log(`Fetching user data for address: ${stacksAddress}`);
22
+ const userResponse = await sdk.getUser(stacksAddress);
23
+ if (userResponse.user) {
24
+ console.log("\nUser data successfully retrieved:");
25
+ console.log(`Stack Address: ${userResponse.user.stacksAddress}`);
26
+ console.log(`Bitcoin Address: ${userResponse.user.bitcoinAddress}`);
27
+ console.log(`Creation Date: ${userResponse.user.creationDate}`);
28
+ console.log(`Last Updated: ${userResponse.user.lastUpdated}`);
29
+ // Log keeper contracts if any
30
+ const contractsCount = Object.keys(userResponse.user.keeperContracts).length;
31
+ console.log(`\nNumber of keeper contracts: ${contractsCount}`);
32
+ // Log keeper orders if any
33
+ const ordersCount = Object.keys(userResponse.user.keeperOrders).length;
34
+ console.log(`Number of keeper orders: ${ordersCount}`);
35
+ console.log("\n✅ Test Case 1: Passed");
36
+ }
37
+ else {
38
+ console.log("\n❌ Test Case 1: Failed - No user data in response");
39
+ if (userResponse.error) {
40
+ console.error("Error:", userResponse.error);
41
+ }
42
+ }
43
+ }
44
+ catch (error) {
45
+ console.error("\n❌ Test Case 1: Failed with error:", error);
46
+ }
47
+ // Test case 2: Invalid address
48
+ console.log("\nTest Case 2: Testing with invalid address");
49
+ try {
50
+ const invalidAddress = "SP000INVALID000ADDRESS";
51
+ console.log(`Attempting to fetch user data for invalid address: ${invalidAddress}`);
52
+ const userResponse = await sdk.getUser(invalidAddress);
53
+ console.log("Response:", userResponse);
54
+ }
55
+ catch (error) {
56
+ console.log("\n✅ Test Case 2: Passed - Properly handled invalid address");
57
+ console.log("Error message:", error.message);
58
+ }
59
+ // Test case 3: Empty address
60
+ console.log("\nTest Case 3: Testing with empty address");
61
+ try {
62
+ const emptyAddress = "";
63
+ console.log("Attempting to fetch user data with empty address");
64
+ const userResponse = await sdk.getUser(emptyAddress);
65
+ console.log("Response:", userResponse);
66
+ }
67
+ catch (error) {
68
+ console.log("\n✅ Test Case 3: Passed - Properly handled empty address");
69
+ console.log("Error message:", error.message);
70
+ }
71
+ }
72
+ // Run the test
73
+ testGetUser()
74
+ .then(() => console.log("\nAll test cases completed"))
75
+ .catch(console.error)
76
+ .finally(() => console.log("\nTest execution finished"));
77
+ //# sourceMappingURL=test-get-user.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-get-user.js","sourceRoot":"","sources":["../../src/test-get-user.ts"],"names":[],"mappings":"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"}
@@ -46,11 +46,11 @@ async function testCreateOrder() {
46
46
  console.log("\nSubmitting order...");
47
47
  const createOrderResponse = await sdk.createOrder(orderParams);
48
48
  console.log("\nOrder Creation Response:", JSON.stringify(createOrderResponse, null, 2));
49
- if (createOrderResponse.order) {
49
+ if (createOrderResponse.keeperOrder) {
50
50
  console.log("\n✅ Order created successfully!");
51
- console.log(`Order ID: ${createOrderResponse.order.orderId}`);
52
- console.log(`Status: ${createOrderResponse.order.status}`);
53
- console.log(`Creation Date: ${createOrderResponse.order.creationDate}`);
51
+ console.log(`Order ID: ${createOrderResponse.keeperOrder.orderId}`);
52
+ console.log(`Status: ${createOrderResponse.keeperOrder.orderStatus}`);
53
+ console.log(`Creation Date: ${createOrderResponse.keeperOrder.creationDate}`);
54
54
  }
55
55
  else {
56
56
  console.log("\n❌ Failed to create order");
@@ -1 +1 @@
1
- {"version":3,"file":"test-order.js","sourceRoot":"","sources":["../../src/test-order.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-order.js","sourceRoot":"","sources":["../../src/test-order.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ export type BitflowSDKConfig = {
5
5
  BITFLOW_API_KEY: string;
6
6
  READONLY_CALL_API_HOST: string;
7
7
  KEEPER_API_KEY: string;
8
+ KEEPER_API_HOST: string;
8
9
  };
9
10
  export interface PriceData {
10
11
  "1h_change": number | null;
package/package.json CHANGED
@@ -1,7 +1,6 @@
1
1
  {
2
2
  "name": "@bitflowlabs/core-sdk",
3
- "version": "2.0.1",
4
-
3
+ "version": "2.0.3",
5
4
  "description": "SDK for interacting with Bitflow Protocol",
6
5
  "main": "dist/src/index.js",
7
6
  "types": "dist/src/index.d.ts",
package/src/config.ts CHANGED
@@ -15,6 +15,9 @@ export const configs: BitflowSDKConfig = {
15
15
  KEEPER_API_KEY:
16
16
  (process.env.NEXT_PUBLIC_KEEPER_API_KEY ?? process.env.KEEPER_API_KEY) ||
17
17
  "",
18
+ KEEPER_API_HOST:
19
+ (process.env.NEXT_PUBLIC_KEEPER_API_HOST ?? process.env.KEEPER_API_HOST) ||
20
+ "",
18
21
  };
19
22
 
20
23
  export function validateConfig() {
@@ -14,7 +14,6 @@ import {
14
14
  GetQuoteParams,
15
15
  GetQuoteResponse,
16
16
  GetUserResponse,
17
- KEEPER_API_BASE_URL,
18
17
  KeeperContract,
19
18
  KeeperOrder,
20
19
  } from "./types";
@@ -47,7 +46,9 @@ export async function getOrCreateKeeperContractAPI(
47
46
  );
48
47
  }
49
48
 
50
- const url = `${KEEPER_API_BASE_URL}/getOrCreateKeeperContract?${queryParams.toString()}`;
49
+ const url = `${
50
+ configs.KEEPER_API_HOST
51
+ }/getOrCreateKeeperContract?${queryParams.toString()}`;
51
52
 
52
53
  const response = await fetch(url, {
53
54
  method: "GET",
@@ -75,7 +76,7 @@ export async function getOrderAPI(orderId: string): Promise<GetOrderResponse> {
75
76
  orderId: orderId,
76
77
  });
77
78
 
78
- const url = `${KEEPER_API_BASE_URL}/getOrder?${queryParams.toString()}`;
79
+ const url = `${configs.KEEPER_API_HOST}/getOrder?${queryParams.toString()}`;
79
80
 
80
81
  const response = await fetch(url, {
81
82
  method: "GET",
@@ -90,12 +91,6 @@ export async function getOrderAPI(orderId: string): Promise<GetOrderResponse> {
90
91
  }
91
92
 
92
93
  const data = await response.json();
93
-
94
- if (data.order) {
95
- data.order.creationDate = new Date(data.order.creationDate);
96
- data.order.lastUpdated = new Date(data.order.lastUpdated);
97
- }
98
-
99
94
  return data as GetOrderResponse;
100
95
  } catch (error) {
101
96
  console.error("Error in getOrder:", error);
@@ -111,7 +106,7 @@ export async function getUserAPI(
111
106
  stacksAddress: stacksAddress,
112
107
  });
113
108
 
114
- const url = `${KEEPER_API_BASE_URL}/getUser?${queryParams.toString()}`;
109
+ const url = `${configs.KEEPER_API_HOST}/getUser?${queryParams.toString()}`;
115
110
 
116
111
  const response = await fetch(url, {
117
112
  method: "GET",
@@ -125,32 +120,8 @@ export async function getUserAPI(
125
120
  );
126
121
  }
127
122
 
128
- const data = (await response.json()) as GetUserResponse;
129
-
130
- if (data.user) {
131
- data.user.creationDate = new Date(data.user.creationDate);
132
- data.user.lastUpdated = new Date(data.user.lastUpdated);
133
-
134
- const contracts = data.user.keeperContracts as Record<
135
- string,
136
- KeeperContract
137
- >;
138
- for (const contractKey in contracts) {
139
- const contract = contracts[contractKey];
140
- if (contract.deploymentDate) {
141
- contract.deploymentDate = new Date(contract.deploymentDate);
142
- }
143
- }
144
-
145
- const orders = data.user.keeperOrders as Record<string, KeeperOrder>;
146
- for (const orderKey in orders) {
147
- const order = orders[orderKey];
148
- order.creationDate = new Date(order.creationDate);
149
- order.lastUpdated = new Date(order.lastUpdated);
150
- }
151
- }
152
-
153
- return data;
123
+ const data = await response.json();
124
+ return data as GetUserResponse;
154
125
  } catch (error) {
155
126
  console.error("Error in getUser:", error);
156
127
  throw error;
@@ -161,7 +132,7 @@ export async function createOrderAPI(
161
132
  params: CreateOrderParams
162
133
  ): Promise<CreateOrderResponse> {
163
134
  try {
164
- const url = `${KEEPER_API_BASE_URL}/createOrder`;
135
+ const url = `${configs.KEEPER_API_HOST}/createOrder`;
165
136
 
166
137
  const requestBody = {
167
138
  stacksAddress: params.stacksAddress,
@@ -177,6 +148,7 @@ export async function createOrderAPI(
177
148
  tokenOrder: params.tokenOrder || [],
178
149
  actionType: params.actionType,
179
150
  bitcoinTxId: params.bitcoinTxId,
151
+ fundingTokens: params.fundingTokens || {},
180
152
  actionAggregatorTokens: params.actionAggregatorTokens || undefined,
181
153
  };
182
154
 
@@ -193,14 +165,8 @@ export async function createOrderAPI(
193
165
  );
194
166
  }
195
167
 
196
- const data = (await response.json()) as CreateOrderResponse;
197
-
198
- if (data.order) {
199
- data.order.creationDate = new Date(data.order.creationDate);
200
- data.order.lastUpdated = new Date(data.order.lastUpdated);
201
- }
202
-
203
- return data;
168
+ const data = await response.json();
169
+ return data as CreateOrderResponse;
204
170
  } catch (error) {
205
171
  console.error("Error in createOrder:", error);
206
172
  throw error;
@@ -242,7 +208,7 @@ export async function getQuoteAPI(
242
208
  queryParams.append("bitcoinAddress", params.bitcoinAddress);
243
209
  }
244
210
 
245
- const url = `${KEEPER_API_BASE_URL}/getQuote?${queryParams.toString()}`;
211
+ const url = `${configs.KEEPER_API_HOST}/getQuote?${queryParams.toString()}`;
246
212
 
247
213
  const response = await fetch(url, {
248
214
  method: "GET",
@@ -266,7 +232,7 @@ export async function createGroupOrderAPI(
266
232
  params: CreateGroupOrderParams
267
233
  ): Promise<CreateGroupOrderResponse> {
268
234
  try {
269
- const url = `${KEEPER_API_BASE_URL}/createGroupOrder`;
235
+ const url = `${configs.KEEPER_API_HOST}/createGroupOrder`;
270
236
 
271
237
  const requestBody: any = {
272
238
  stacksAddress: params.stacksAddress,
@@ -305,18 +271,6 @@ export async function createGroupOrderAPI(
305
271
  }
306
272
 
307
273
  const data = await response.json();
308
-
309
- if (data.groupOrder) {
310
- data.groupOrder.creationDate = new Date(data.groupOrder.creationDate);
311
- data.groupOrder.lastUpdated = new Date(data.groupOrder.lastUpdated);
312
- if (data.groupOrder.orders) {
313
- data.groupOrder.orders.forEach((order: KeeperOrder) => {
314
- order.creationDate = new Date(order.creationDate);
315
- order.lastUpdated = new Date(order.lastUpdated);
316
- });
317
- }
318
- }
319
-
320
274
  return data as CreateGroupOrderResponse;
321
275
  } catch (error) {
322
276
  console.error("Error in createGroupOrder:", error);
@@ -334,7 +288,9 @@ export async function getGroupOrderAPI(
334
288
  includeOrders: includeOrders.toString(),
335
289
  });
336
290
 
337
- const url = `${KEEPER_API_BASE_URL}/getGroupOrder?${queryParams.toString()}`;
291
+ const url = `${
292
+ configs.KEEPER_API_HOST
293
+ }/getGroupOrder?${queryParams.toString()}`;
338
294
 
339
295
  const response = await fetch(url, {
340
296
  method: "GET",
@@ -349,22 +305,6 @@ export async function getGroupOrderAPI(
349
305
  }
350
306
 
351
307
  const data = await response.json();
352
-
353
- if (data.groupOrder) {
354
- data.groupOrder.creationDate = new Date(data.groupOrder.creationDate);
355
- data.groupOrder.lastUpdated = new Date(data.groupOrder.lastUpdated);
356
- data.groupOrder.nextExecutionAfter = new Date(
357
- data.groupOrder.nextExecutionAfter
358
- );
359
- }
360
-
361
- if (data.groupOrders && Array.isArray(data.groupOrders)) {
362
- data.groupOrders.forEach((order: KeeperOrder) => {
363
- order.creationDate = new Date(order.creationDate);
364
- order.lastUpdated = new Date(order.lastUpdated);
365
- });
366
- }
367
-
368
308
  return data as GetGroupOrderResponse;
369
309
  } catch (error) {
370
310
  console.error("Error in getGroupOrder:", error);
@@ -376,7 +316,7 @@ export async function cancelOrderAPI(
376
316
  orderId: string
377
317
  ): Promise<CancelOrderResponse> {
378
318
  try {
379
- const url = `${KEEPER_API_BASE_URL}/cancelOrder`;
319
+ const url = `${configs.KEEPER_API_HOST}/cancelOrder`;
380
320
 
381
321
  const response = await fetch(url, {
382
322
  method: "POST",
@@ -402,7 +342,7 @@ export async function cancelGroupOrderAPI(
402
342
  groupId: string
403
343
  ): Promise<CancelGroupOrderResponse> {
404
344
  try {
405
- const url = `${KEEPER_API_BASE_URL}/cancelGroupOrder`;
345
+ const url = `${configs.KEEPER_API_HOST}/cancelGroupOrder`;
406
346
 
407
347
  const response = await fetch(url, {
408
348
  method: "POST",
@@ -89,14 +89,33 @@ export interface KeeperOrder {
89
89
  actionAmount: string;
90
90
  minReceived: MinReceived;
91
91
  feeRecipient: string;
92
- tokenOrder: string[];
92
+ actionType: string;
93
+ actionAggregatorTokens: {
94
+ tokenXId: string;
95
+ tokenYId: string;
96
+ };
97
+ fundingTokens: Record<string, any>;
93
98
  txIds: Record<string, string>;
94
- keeperType: KeeperType;
99
+ txRetries: {
100
+ deploys: number;
101
+ actions: number;
102
+ };
95
103
  requiresPontisTx: boolean;
96
- status: KeeperOrderStatus;
97
- txRetries: TxRetries;
98
- creationDate: Date;
99
- lastUpdated: Date;
104
+ keeperType: KeeperType;
105
+ orderStatus: string;
106
+ executeActionAfter: TimestampFormat;
107
+ creationDate: TimestampFormat;
108
+ lastUpdated: TimestampFormat;
109
+ }
110
+
111
+ interface TimestampFormat {
112
+ _seconds: number;
113
+ _nanoseconds: number;
114
+ }
115
+
116
+ export interface CreateOrderResponse {
117
+ keeperOrder: KeeperOrder;
118
+ error?: string;
100
119
  }
101
120
 
102
121
  export interface GetOrderResponse {
@@ -132,6 +151,9 @@ export interface CreateOrderParams {
132
151
  tokenOrder?: string[];
133
152
  actionType: string;
134
153
  bitcoinTxId: string;
154
+ fundingTokens?: {
155
+ [key: string]: string;
156
+ };
135
157
  actionFunctionArgs?: {
136
158
  tokenList?: Record<string, string>;
137
159
  xykPoolList?: Record<string, string>;
@@ -145,11 +167,6 @@ export interface CreateOrderParams {
145
167
  };
146
168
  }
147
169
 
148
- export interface CreateOrderResponse {
149
- order: KeeperOrder;
150
- error?: string;
151
- }
152
-
153
170
  export interface ActionFunctionArgs {
154
171
  actionTrait?: string;
155
172
  tokenList?: Record<string, string>;
@@ -291,10 +308,3 @@ export interface CancelGroupOrderResponse {
291
308
  success: boolean;
292
309
  error?: string;
293
310
  }
294
-
295
- export const KEEPER_API_BASE_URL =
296
- "https://bitflow-keeper-7owjsmt8.uc.gateway.dev";
297
-
298
- // "https://bitflow-keeper-test-7owjsmt8.uc.gateway.dev";
299
-
300
- // "http://localhost:8080";
@@ -0,0 +1,87 @@
1
+ import { BitflowSDK } from "./BitflowSDK";
2
+ import dotenv from "dotenv";
3
+
4
+ dotenv.config();
5
+
6
+ async function testGetUser() {
7
+ console.log("Starting getUser Test...\n");
8
+
9
+ // Initialize SDK with environment variables
10
+ const sdk = new BitflowSDK({
11
+ BITFLOW_API_HOST: process.env.BITFLOW_API_HOST!,
12
+ BITFLOW_API_KEY: process.env.BITFLOW_API_KEY!,
13
+ READONLY_CALL_API_HOST: process.env.READONLY_CALL_API_HOST!,
14
+ KEEPER_API_KEY: process.env.NEXT_PUBLIC_KEEPER_API_KEY!,
15
+ KEEPER_API_HOST: process.env.KEEPER_API_HOST!,
16
+ });
17
+
18
+ // Test case 1: Valid user
19
+ console.log("Test Case 1: Fetching a valid user");
20
+ try {
21
+ const stacksAddress = "SP3D03X5BHMNSAAW71NN7BQRMV4DW2G4JB3MZAGJ8";
22
+ console.log(`Fetching user data for address: ${stacksAddress}`);
23
+
24
+ const userResponse = await sdk.getUser(stacksAddress);
25
+
26
+ if (userResponse.user) {
27
+ console.log("\nUser data successfully retrieved:");
28
+ console.log(`Stack Address: ${userResponse.user.stacksAddress}`);
29
+ console.log(`Bitcoin Address: ${userResponse.user.bitcoinAddress}`);
30
+ console.log(`Creation Date: ${userResponse.user.creationDate}`);
31
+ console.log(`Last Updated: ${userResponse.user.lastUpdated}`);
32
+
33
+ // Log keeper contracts if any
34
+ const contractsCount = Object.keys(
35
+ userResponse.user.keeperContracts
36
+ ).length;
37
+ console.log(`\nNumber of keeper contracts: ${contractsCount}`);
38
+
39
+ // Log keeper orders if any
40
+ const ordersCount = Object.keys(userResponse.user.keeperOrders).length;
41
+ console.log(`Number of keeper orders: ${ordersCount}`);
42
+
43
+ console.log("\n✅ Test Case 1: Passed");
44
+ } else {
45
+ console.log("\n❌ Test Case 1: Failed - No user data in response");
46
+ if (userResponse.error) {
47
+ console.error("Error:", userResponse.error);
48
+ }
49
+ }
50
+ } catch (error) {
51
+ console.error("\n❌ Test Case 1: Failed with error:", error);
52
+ }
53
+
54
+ // Test case 2: Invalid address
55
+ console.log("\nTest Case 2: Testing with invalid address");
56
+ try {
57
+ const invalidAddress = "SP000INVALID000ADDRESS";
58
+ console.log(
59
+ `Attempting to fetch user data for invalid address: ${invalidAddress}`
60
+ );
61
+
62
+ const userResponse = await sdk.getUser(invalidAddress);
63
+ console.log("Response:", userResponse);
64
+ } catch (error) {
65
+ console.log("\n✅ Test Case 2: Passed - Properly handled invalid address");
66
+ console.log("Error message:", (error as Error).message);
67
+ }
68
+
69
+ // Test case 3: Empty address
70
+ console.log("\nTest Case 3: Testing with empty address");
71
+ try {
72
+ const emptyAddress = "";
73
+ console.log("Attempting to fetch user data with empty address");
74
+
75
+ const userResponse = await sdk.getUser(emptyAddress);
76
+ console.log("Response:", userResponse);
77
+ } catch (error) {
78
+ console.log("\n✅ Test Case 3: Passed - Properly handled empty address");
79
+ console.log("Error message:", (error as Error).message);
80
+ }
81
+ }
82
+
83
+ // Run the test
84
+ testGetUser()
85
+ .then(() => console.log("\nAll test cases completed"))
86
+ .catch(console.error)
87
+ .finally(() => console.log("\nTest execution finished"));
package/src/test-order.ts CHANGED
@@ -58,11 +58,13 @@ async function testCreateOrder() {
58
58
  JSON.stringify(createOrderResponse, null, 2)
59
59
  );
60
60
 
61
- if (createOrderResponse.order) {
61
+ if (createOrderResponse.keeperOrder) {
62
62
  console.log("\n✅ Order created successfully!");
63
- console.log(`Order ID: ${createOrderResponse.order.orderId}`);
64
- console.log(`Status: ${createOrderResponse.order.status}`);
65
- console.log(`Creation Date: ${createOrderResponse.order.creationDate}`);
63
+ console.log(`Order ID: ${createOrderResponse.keeperOrder.orderId}`);
64
+ console.log(`Status: ${createOrderResponse.keeperOrder.orderStatus}`);
65
+ console.log(
66
+ `Creation Date: ${createOrderResponse.keeperOrder.creationDate}`
67
+ );
66
68
  } else {
67
69
  console.log("\n❌ Failed to create order");
68
70
  if (createOrderResponse.error) {
package/src/types.ts CHANGED
@@ -6,6 +6,7 @@ export type BitflowSDKConfig = {
6
6
  BITFLOW_API_KEY: string;
7
7
  READONLY_CALL_API_HOST: string;
8
8
  KEEPER_API_KEY: string;
9
+ KEEPER_API_HOST: string;
9
10
  };
10
11
 
11
12
  export interface PriceData {