@rozoai/intent-common 0.1.1-beta.2 → 0.1.1-beta.4

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.
@@ -25,7 +25,7 @@ export interface RequestState<T = any> extends ApiResponse<T> {
25
25
  /**
26
26
  * API Version type
27
27
  */
28
- export type ApiVersion = "v2" | "v4";
28
+ export type ApiVersion = "v1" | "v2";
29
29
  /**
30
30
  * API Configuration
31
31
  */
@@ -34,31 +34,31 @@ export interface ApiConfig {
34
34
  apiToken: string;
35
35
  version?: ApiVersion;
36
36
  }
37
+ /**
38
+ * Gets the current active API configuration
39
+ * @returns Current API configuration
40
+ */
41
+ export declare const getApiConfig: () => ApiConfig;
37
42
  /**
38
43
  * Sets the API configuration (baseUrl, apiToken, and version)
39
44
  * @param config - Partial API configuration to override defaults
40
45
  * @example
41
46
  * ```typescript
42
- * // Use v2 API
47
+ * // Use v2 API (default)
43
48
  * setApiConfig({ version: "v2" });
44
49
  *
45
- * // Use v4 API (default)
46
- * setApiConfig({ version: "v4" });
50
+ * // Use v1 API
51
+ * setApiConfig({ version: "v1" });
47
52
  *
48
- * // Custom configuration
53
+ * // Custom configuration for a specific version
49
54
  * setApiConfig({
50
55
  * baseUrl: "https://custom-api.com",
51
56
  * apiToken: "custom-token",
52
- * version: "v4"
57
+ * version: "v2"
53
58
  * });
54
59
  * ```
55
60
  */
56
61
  export declare const setApiConfig: (config: Partial<ApiConfig>) => void;
57
- /**
58
- * Gets the current API configuration
59
- * @returns Current API configuration
60
- */
61
- export declare const getApiConfig: () => Readonly<ApiConfig>;
62
62
  /**
63
63
  * Core fetch function for making API requests
64
64
  * @param url - API endpoint path
package/dist/api/base.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.apiClient = exports.fetchApi = exports.getApiConfig = exports.setApiConfig = exports.ROZO_API_TOKEN = exports.NEW_ROZO_API_URL = exports.ROZO_API_URL = void 0;
3
+ exports.apiClient = exports.fetchApi = exports.setApiConfig = exports.getApiConfig = exports.ROZO_API_TOKEN = exports.NEW_ROZO_API_URL = exports.ROZO_API_URL = void 0;
4
4
  /**
5
5
  * RozoAI API Configuration Constants
6
6
  */
@@ -8,53 +8,62 @@ exports.ROZO_API_URL = "https://intentapiv2.rozo.ai/functions/v1";
8
8
  exports.NEW_ROZO_API_URL = "https://intentapiv4.rozo.ai/functions/v1";
9
9
  exports.ROZO_API_TOKEN = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImZ4Y3Zmb2xobmNtdXZmYXp1cXViIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NTI4Mzg2NjYsImV4cCI6MjA2ODQxNDY2Nn0.B4dV5y_-zCMKSNm3_qyCbAvCPJmoOGv_xB783LfAVUA";
10
10
  // Default configuration (can be overridden via setApiConfig)
11
- // v4 is the default API version
11
+ // v2 is the default API version
12
12
  let apiConfig = {
13
- baseUrl: exports.NEW_ROZO_API_URL,
14
- apiToken: exports.ROZO_API_TOKEN,
15
- version: "v4",
13
+ v1: { baseUrl: exports.ROZO_API_URL, apiToken: exports.ROZO_API_TOKEN, version: "v1" },
14
+ v2: { baseUrl: exports.NEW_ROZO_API_URL, apiToken: exports.ROZO_API_TOKEN, version: "v2" },
16
15
  };
16
+ // Current active API version
17
+ let activeVersion = "v2";
18
+ /**
19
+ * Gets the current active API configuration
20
+ * @returns Current API configuration
21
+ */
22
+ const getApiConfig = () => {
23
+ return apiConfig[activeVersion];
24
+ };
25
+ exports.getApiConfig = getApiConfig;
17
26
  /**
18
27
  * Sets the API configuration (baseUrl, apiToken, and version)
19
28
  * @param config - Partial API configuration to override defaults
20
29
  * @example
21
30
  * ```typescript
22
- * // Use v2 API
31
+ * // Use v2 API (default)
23
32
  * setApiConfig({ version: "v2" });
24
33
  *
25
- * // Use v4 API (default)
26
- * setApiConfig({ version: "v4" });
34
+ * // Use v1 API
35
+ * setApiConfig({ version: "v1" });
27
36
  *
28
- * // Custom configuration
37
+ * // Custom configuration for a specific version
29
38
  * setApiConfig({
30
39
  * baseUrl: "https://custom-api.com",
31
40
  * apiToken: "custom-token",
32
- * version: "v4"
41
+ * version: "v2"
33
42
  * });
34
43
  * ```
35
44
  */
36
45
  const setApiConfig = (config) => {
37
46
  if (config.version) {
38
- // Auto-set baseUrl based on version if not explicitly provided
39
- if (!config.baseUrl) {
40
- config.baseUrl =
41
- config.version === "v4" ? exports.NEW_ROZO_API_URL : exports.ROZO_API_URL;
47
+ activeVersion = config.version;
48
+ // Update the specific version's config if baseUrl or apiToken provided
49
+ if (config.baseUrl || config.apiToken) {
50
+ apiConfig[activeVersion] = {
51
+ ...apiConfig[activeVersion],
52
+ ...(config.baseUrl && { baseUrl: config.baseUrl }),
53
+ ...(config.apiToken && { apiToken: config.apiToken }),
54
+ };
42
55
  }
43
56
  }
44
- apiConfig = {
45
- ...apiConfig,
46
- ...config,
47
- };
57
+ else {
58
+ // Update current active version with provided config
59
+ apiConfig[activeVersion] = {
60
+ ...apiConfig[activeVersion],
61
+ ...(config.baseUrl && { baseUrl: config.baseUrl }),
62
+ ...(config.apiToken && { apiToken: config.apiToken }),
63
+ };
64
+ }
48
65
  };
49
66
  exports.setApiConfig = setApiConfig;
50
- /**
51
- * Gets the current API configuration
52
- * @returns Current API configuration
53
- */
54
- const getApiConfig = () => {
55
- return { ...apiConfig };
56
- };
57
- exports.getApiConfig = getApiConfig;
58
67
  /**
59
68
  * Creates a URL with query parameters
60
69
  * @param url - Base URL
@@ -62,9 +71,10 @@ exports.getApiConfig = getApiConfig;
62
71
  * @returns Full URL with query parameters
63
72
  */
64
73
  const createUrl = (url, params) => {
74
+ const config = (0, exports.getApiConfig)();
65
75
  const fullUrl = url.startsWith("/")
66
- ? `${apiConfig.baseUrl}${url}`
67
- : `${apiConfig.baseUrl}/${url}`;
76
+ ? `${config.baseUrl}${url}`
77
+ : `${config.baseUrl}/${url}`;
68
78
  if (!params)
69
79
  return fullUrl;
70
80
  const queryParams = new URLSearchParams();
@@ -86,10 +96,11 @@ const fetchApi = async (url, options = {}) => {
86
96
  const { method = "GET", headers = {}, body, params, signal } = options;
87
97
  try {
88
98
  const fullUrl = createUrl(url, params);
99
+ const config = (0, exports.getApiConfig)();
89
100
  const requestHeaders = {
90
101
  "Content-Type": "application/json",
91
102
  ...headers,
92
- Authorization: `Bearer ${apiConfig.apiToken}`,
103
+ Authorization: `Bearer ${config.apiToken}`,
93
104
  };
94
105
  const requestOptions = {
95
106
  method,
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/api/base.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACU,QAAA,YAAY,GAAG,0CAA0C,CAAC;AAC1D,QAAA,gBAAgB,GAAG,0CAA0C,CAAC;AAC9D,QAAA,cAAc,GACzB,kNAAkN,CAAC;AA0CrN,6DAA6D;AAC7D,gCAAgC;AAChC,IAAI,SAAS,GAAc;IACzB,OAAO,EAAE,wBAAgB;IACzB,QAAQ,EAAE,sBAAc;IACxB,OAAO,EAAE,IAAI;CACd,CAAC;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACI,MAAM,YAAY,GAAG,CAAC,MAA0B,EAAQ,EAAE;IAC/D,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,+DAA+D;QAC/D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,CAAC,OAAO;gBACZ,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,wBAAgB,CAAC,CAAC,CAAC,oBAAY,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,SAAS,GAAG;QACV,GAAG,SAAS;QACZ,GAAG,MAAM;KACV,CAAC;AACJ,CAAC,CAAC;AAbW,QAAA,YAAY,gBAavB;AAEF;;;GAGG;AACI,MAAM,YAAY,GAAG,GAAwB,EAAE;IACpD,OAAO,EAAE,GAAG,SAAS,EAAE,CAAC;AAC1B,CAAC,CAAC;AAFW,QAAA,YAAY,gBAEvB;AAEF;;;;;GAKG;AACH,MAAM,SAAS,GAAG,CAAC,GAAW,EAAE,MAA+B,EAAU,EAAE;IACzE,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;QACjC,CAAC,CAAC,GAAG,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE;QAC9B,CAAC,CAAC,GAAG,SAAS,CAAC,OAAO,IAAI,GAAG,EAAE,CAAC;IAElC,IAAI,CAAC,MAAM;QAAE,OAAO,OAAO,CAAC;IAE5B,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAC;IAC1C,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAC9C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC1C,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;IAC3C,OAAO,WAAW,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;AAC7D,CAAC,CAAC;AAEF;;;;;GAKG;AACI,MAAM,QAAQ,GAAG,KAAK,EAC3B,GAAW,EACX,UAA0B,EAAE,EACH,EAAE;IAC3B,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,OAAO,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAEvE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAEvC,MAAM,cAAc,GAA2B;YAC7C,cAAc,EAAE,kBAAkB;YAClC,GAAG,OAAO;YACV,aAAa,EAAE,UAAU,SAAS,CAAC,QAAQ,EAAE;SAC9C,CAAC;QAEF,MAAM,cAAc,GAKhB;YACF,MAAM;YACN,OAAO,EAAE,cAAc;YACvB,MAAM;SACP,CAAC;QAEF,IAAI,IAAI,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YAC7B,cAAc,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QAE/B,4BAA4B;QAC5B,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACzD,IAAI,IAAI,GAAa,IAAI,CAAC;QAE1B,IAAI,WAAW,IAAI,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAC5D,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAM,CAAC;QACtC,CAAC;aAAM,IAAI,WAAW,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACxD,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAiB,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACrE,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACvC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAChE,MAAM,EAAE,IAAI;SACb,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAvDW,QAAA,QAAQ,YAuDnB;AAEF;;GAEG;AACU,QAAA,SAAS,GAAG;IACvB;;;;;OAKG;IACH,GAAG,EAAE,CACH,GAAW,EACX,UAAmD,EAAE,EACrD,EAAE,CAAC,IAAA,gBAAQ,EAAI,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAEpD;;;;;;OAMG;IACH,IAAI,EAAE,CACJ,GAAW,EACX,IAAS,EACT,UAAmD,EAAE,EACrD,EAAE,CAAC,IAAA,gBAAQ,EAAI,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAE3D;;;;;;OAMG;IACH,GAAG,EAAE,CACH,GAAW,EACX,IAAS,EACT,UAAmD,EAAE,EACrD,EAAE,CAAC,IAAA,gBAAQ,EAAI,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAE1D;;;;;;OAMG;IACH,KAAK,EAAE,CACL,GAAW,EACX,IAAS,EACT,UAAmD,EAAE,EACrD,EAAE,CAAC,IAAA,gBAAQ,EAAI,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAE5D;;;;;OAKG;IACH,MAAM,EAAE,CACN,GAAW,EACX,UAA0C,EAAE,EAC5C,EAAE,CAAC,IAAA,gBAAQ,EAAI,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;CACxD,CAAC"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/api/base.ts"],"names":[],"mappings":"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"}
package/dist/api/fee.d.ts CHANGED
@@ -1,4 +1,5 @@
1
- import { ApiResponse, ApiVersion } from "./base";
1
+ import { ApiResponse } from "./base";
2
+ import { FeeType } from "./payment";
2
3
  /**
3
4
  * Fee response data type (success case)
4
5
  */
@@ -6,10 +7,14 @@ export interface FeeResponseData {
6
7
  appId: string;
7
8
  amount: number;
8
9
  currency: string;
10
+ type: string;
9
11
  fee: number;
10
12
  feePercentage: string;
11
13
  minimumFee: string;
14
+ amountIn: number;
15
+ amountOut: number;
12
16
  amount_out: number;
17
+ amount_in: number;
13
18
  }
14
19
  /**
15
20
  * Fee error response data type
@@ -24,12 +29,11 @@ export interface FeeErrorData {
24
29
  * Fee request parameters
25
30
  */
26
31
  export interface GetFeeParams {
27
- appId: string;
28
- amount: number;
29
- toChain: number;
32
+ appId?: string;
30
33
  currency?: string;
31
- /** API version to use (v2 or v4). Defaults to v4 */
32
- apiVersion?: ApiVersion;
34
+ toUnits: string;
35
+ toChain: number;
36
+ type: FeeType;
33
37
  }
34
38
  /**
35
39
  * Gets fee calculation for a payment amount
package/dist/api/fee.js CHANGED
@@ -2,24 +2,23 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getFee = void 0;
4
4
  const chain_1 = require("../chain");
5
- const base_1 = require("./base");
5
+ const payment_1 = require("./payment");
6
6
  /**
7
7
  * Gets fee calculation for a payment amount
8
8
  * @param params - Fee calculation parameters (amount is required)
9
9
  * @returns Promise with fee response or error
10
10
  */
11
11
  const getFee = async (params) => {
12
- const { amount, appId, currency = "USDC", toChain, apiVersion } = params;
13
- // Set API version if provided
14
- if (apiVersion) {
15
- (0, base_1.setApiConfig)({ version: apiVersion });
16
- }
12
+ const { toUnits, appId, currency = "USDC", toChain, type } = params;
17
13
  try {
18
- const chain = (0, chain_1.getChainById)(toChain);
14
+ const chain = (0, chain_1.getChainById)(Number(toChain));
19
15
  const toChainName = chain.name.toLowerCase();
20
16
  const queryParams = new URLSearchParams({
21
- amount: amount.toString(),
22
- appId,
17
+ ...(appId ? { appId } : {}),
18
+ ...(type === payment_1.FeeType.ExactIn
19
+ ? { type: "exactIn" }
20
+ : { type: "exactOut" }),
21
+ amount: toUnits,
23
22
  currency,
24
23
  tochain: toChainName,
25
24
  });
@@ -1 +1 @@
1
- {"version":3,"file":"fee.js","sourceRoot":"","sources":["../../src/api/fee.ts"],"names":[],"mappings":";;;AAAA,oCAAwC;AACxC,iCAA+D;AAqC/D;;;;GAIG;AACI,MAAM,MAAM,GAAG,KAAK,EACzB,MAAoB,EACmB,EAAE;IACzC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,GAAG,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;IAEzE,8BAA8B;IAC9B,IAAI,UAAU,EAAE,CAAC;QACf,IAAA,mBAAY,EAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,OAAO,CAAC,CAAC;QACpC,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAE7C,MAAM,WAAW,GAAG,IAAI,eAAe,CAAC;YACtC,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE;YACzB,KAAK;YACL,QAAQ;YACR,OAAO,EAAE,WAAW;SACrB,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,oCAAoC,WAAW,CAAC,QAAQ,EAAE,EAAE,CAC7D,CAAC;QAEF,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAmC,CAAC;QAEvE,sCAAsC;QACtC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;YACpC,MAAM,SAAS,GAAG,IAAoB,CAAC;YACvC,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI,KAAK,CAAC,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,KAAK,CAAC;gBACtD,MAAM,EAAE,QAAQ,CAAC,MAAM;aACxB,CAAC;QACJ,CAAC;QAED,OAAO;YACL,IAAI,EAAE,IAAuB;YAC7B,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAChE,MAAM,EAAE,IAAI;SACb,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAjDW,QAAA,MAAM,UAiDjB"}
1
+ {"version":3,"file":"fee.js","sourceRoot":"","sources":["../../src/api/fee.ts"],"names":[],"mappings":";;;AAAA,oCAAwC;AAExC,uCAAoC;AAwCpC;;;;GAIG;AACI,MAAM,MAAM,GAAG,KAAK,EACzB,MAAoB,EACmB,EAAE;IACzC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,GAAG,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAEpE,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAC5C,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAE7C,MAAM,WAAW,GAAG,IAAI,eAAe,CAAC;YACtC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,GAAG,CAAC,IAAI,KAAK,iBAAO,CAAC,OAAO;gBAC1B,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE;gBACrB,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;YACzB,MAAM,EAAE,OAAO;YACf,QAAQ;YACR,OAAO,EAAE,WAAW;SACrB,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,oCAAoC,WAAW,CAAC,QAAQ,EAAE,EAAE,CAC7D,CAAC;QAEF,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAmC,CAAC;QAEvE,sCAAsC;QACtC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;YACpC,MAAM,SAAS,GAAG,IAAoB,CAAC;YACvC,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI,KAAK,CAAC,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,KAAK,CAAC;gBACtD,MAAM,EAAE,QAAQ,CAAC,MAAM;aACxB,CAAC;QACJ,CAAC;QAED,OAAO;YACL,IAAI,EAAE,IAAuB;YAC7B,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAChE,MAAM,EAAE,IAAI;SACb,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AA/CW,QAAA,MAAM,UA+CjB"}
@@ -277,7 +277,7 @@ export interface CreateNewPaymentParams {
277
277
  /** Order reference ID (for idempotency) */
278
278
  orderId?: string;
279
279
  /** Fee calculation type (exactIn or exactOut) */
280
- type?: FeeType;
280
+ feeType?: FeeType;
281
281
  /** Webhook URL to receive payment status updates */
282
282
  webhookUrl?: string;
283
283
  /** Secret for HMAC-SHA256 signature verification */
@@ -71,7 +71,7 @@ var PaymentErrorCode;
71
71
  * ```
72
72
  */
73
73
  async function createPayment(params) {
74
- const { toChain, toToken, toAddress, preferredChain, preferredTokenAddress, toUnits, appId, metadata, title, description, orderId, type, webhookUrl, webhookSecret, receiverMemo, apiVersion, } = params;
74
+ const { toChain, toToken, toAddress, preferredChain, preferredTokenAddress, toUnits, appId, metadata, title, description, orderId, feeType, webhookUrl, webhookSecret, receiverMemo, apiVersion, } = params;
75
75
  // Set API version if provided
76
76
  if (apiVersion) {
77
77
  (0, base_1.setApiConfig)({ version: apiVersion });
@@ -97,7 +97,7 @@ async function createPayment(params) {
97
97
  // Build payment request data matching new backend interface
98
98
  const paymentData = {
99
99
  appId,
100
- type: type ?? FeeType.ExactIn,
100
+ type: feeType ?? FeeType.ExactIn,
101
101
  ...(orderId ? { orderId } : {}),
102
102
  source: {
103
103
  chainId: sourceChain.chainId,
@@ -129,7 +129,7 @@ async function createPayment(params) {
129
129
  ...(webhookUrl ? { webhookUrl } : {}),
130
130
  ...(webhookSecret ? { webhookSecret } : {}),
131
131
  };
132
- if (apiVersion === "v2") {
132
+ if (apiVersion === "v1") {
133
133
  paymentData.display.intent = title ?? "Pay";
134
134
  paymentData.destination.amountUnits = destination.amountUnits;
135
135
  paymentData.destination.destinationAddress = destinationAddress;
@@ -155,7 +155,7 @@ const getPayment = (paymentId, apiVersion) => {
155
155
  if (apiVersion) {
156
156
  (0, base_1.setApiConfig)({ version: apiVersion });
157
157
  }
158
- if (apiVersion === "v2") {
158
+ if (apiVersion === "v1") {
159
159
  const isMugglePay = paymentId.includes("mugglepay_order");
160
160
  const endpoint = isMugglePay
161
161
  ? `/payment-api/${paymentId}`
@@ -1 +1 @@
1
- {"version":3,"file":"payment.js","sourceRoot":"","sources":["../../src/api/payment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"payment.js","sourceRoot":"","sources":["../../src/api/payment.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export { setApiConfig, type ApiVersion } from "./api/base";
1
2
  export * from "./api/fee";
2
3
  export * from "./api/payment";
3
4
  export * from "./assert";
package/dist/index.js CHANGED
@@ -14,6 +14,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.setApiConfig = void 0;
18
+ var base_1 = require("./api/base");
19
+ Object.defineProperty(exports, "setApiConfig", { enumerable: true, get: function () { return base_1.setApiConfig; } });
17
20
  __exportStar(require("./api/fee"), exports);
18
21
  __exportStar(require("./api/payment"), exports);
19
22
  __exportStar(require("./assert"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,gDAA8B;AAC9B,2CAAyB;AACzB,iDAA+B;AAC/B,0CAAwB;AACxB,0CAAwB;AACxB,2CAAyB;AACzB,mDAAiC;AACjC,iDAA+B;AAC/B,4CAA0B;AAC1B,0CAAwB;AACxB,wCAAsB;AACtB,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,mCAA2D;AAAlD,oGAAA,YAAY,OAAA;AACrB,4CAA0B;AAC1B,gDAA8B;AAC9B,2CAAyB;AACzB,iDAA+B;AAC/B,0CAAwB;AACxB,0CAAwB;AACxB,2CAAyB;AACzB,mDAAiC;AACjC,iDAA+B;AAC/B,4CAA0B;AAC1B,0CAAwB;AACxB,wCAAsB;AACtB,+CAA6B"}
package/dist/rozoPay.d.ts CHANGED
@@ -44,11 +44,11 @@ export declare const zBridgeTokenOutOptions: z.ZodArray<z.ZodObject<{
44
44
  token: z.ZodEffects<z.ZodString, `0x${string}`, string>;
45
45
  amount: z.ZodEffects<z.ZodEffects<z.ZodString, `${bigint}`, string>, bigint, string>;
46
46
  }, "strip", z.ZodTypeAny, {
47
- amount: bigint;
48
47
  token: `0x${string}`;
48
+ amount: bigint;
49
49
  }, {
50
- amount: string;
51
50
  token: string;
51
+ amount: string;
52
52
  }>, "many">;
53
53
  export type BridgeTokenOutOptions = z.infer<typeof zBridgeTokenOutOptions>;
54
54
  export declare const zRozoPayOrderMetadata: z.ZodObject<{
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rozoai/intent-common",
3
- "version": "0.1.1-beta.2",
3
+ "version": "0.1.1-beta.4",
4
4
  "description": "Intent Pay shared types and utilities",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/src/api/base.ts CHANGED
@@ -35,7 +35,7 @@ export interface RequestState<T = any> extends ApiResponse<T> {
35
35
  /**
36
36
  * API Version type
37
37
  */
38
- export type ApiVersion = "v2" | "v4";
38
+ export type ApiVersion = "v1" | "v2";
39
39
 
40
40
  /**
41
41
  * API Configuration
@@ -47,11 +47,21 @@ export interface ApiConfig {
47
47
  }
48
48
 
49
49
  // Default configuration (can be overridden via setApiConfig)
50
- // v4 is the default API version
51
- let apiConfig: ApiConfig = {
52
- baseUrl: NEW_ROZO_API_URL,
53
- apiToken: ROZO_API_TOKEN,
54
- version: "v4",
50
+ // v2 is the default API version
51
+ let apiConfig: Record<ApiVersion, ApiConfig> = {
52
+ v1: { baseUrl: ROZO_API_URL, apiToken: ROZO_API_TOKEN, version: "v1" },
53
+ v2: { baseUrl: NEW_ROZO_API_URL, apiToken: ROZO_API_TOKEN, version: "v2" },
54
+ };
55
+
56
+ // Current active API version
57
+ let activeVersion: ApiVersion = "v2";
58
+
59
+ /**
60
+ * Gets the current active API configuration
61
+ * @returns Current API configuration
62
+ */
63
+ export const getApiConfig = (): ApiConfig => {
64
+ return apiConfig[activeVersion];
55
65
  };
56
66
 
57
67
  /**
@@ -59,41 +69,40 @@ let apiConfig: ApiConfig = {
59
69
  * @param config - Partial API configuration to override defaults
60
70
  * @example
61
71
  * ```typescript
62
- * // Use v2 API
72
+ * // Use v2 API (default)
63
73
  * setApiConfig({ version: "v2" });
64
74
  *
65
- * // Use v4 API (default)
66
- * setApiConfig({ version: "v4" });
75
+ * // Use v1 API
76
+ * setApiConfig({ version: "v1" });
67
77
  *
68
- * // Custom configuration
78
+ * // Custom configuration for a specific version
69
79
  * setApiConfig({
70
80
  * baseUrl: "https://custom-api.com",
71
81
  * apiToken: "custom-token",
72
- * version: "v4"
82
+ * version: "v2"
73
83
  * });
74
84
  * ```
75
85
  */
76
86
  export const setApiConfig = (config: Partial<ApiConfig>): void => {
77
87
  if (config.version) {
78
- // Auto-set baseUrl based on version if not explicitly provided
79
- if (!config.baseUrl) {
80
- config.baseUrl =
81
- config.version === "v4" ? NEW_ROZO_API_URL : ROZO_API_URL;
88
+ activeVersion = config.version;
89
+
90
+ // Update the specific version's config if baseUrl or apiToken provided
91
+ if (config.baseUrl || config.apiToken) {
92
+ apiConfig[activeVersion] = {
93
+ ...apiConfig[activeVersion],
94
+ ...(config.baseUrl && { baseUrl: config.baseUrl }),
95
+ ...(config.apiToken && { apiToken: config.apiToken }),
96
+ };
82
97
  }
98
+ } else {
99
+ // Update current active version with provided config
100
+ apiConfig[activeVersion] = {
101
+ ...apiConfig[activeVersion],
102
+ ...(config.baseUrl && { baseUrl: config.baseUrl }),
103
+ ...(config.apiToken && { apiToken: config.apiToken }),
104
+ };
83
105
  }
84
-
85
- apiConfig = {
86
- ...apiConfig,
87
- ...config,
88
- };
89
- };
90
-
91
- /**
92
- * Gets the current API configuration
93
- * @returns Current API configuration
94
- */
95
- export const getApiConfig = (): Readonly<ApiConfig> => {
96
- return { ...apiConfig };
97
106
  };
98
107
 
99
108
  /**
@@ -103,9 +112,10 @@ export const getApiConfig = (): Readonly<ApiConfig> => {
103
112
  * @returns Full URL with query parameters
104
113
  */
105
114
  const createUrl = (url: string, params?: Record<string, string>): string => {
115
+ const config = getApiConfig();
106
116
  const fullUrl = url.startsWith("/")
107
- ? `${apiConfig.baseUrl}${url}`
108
- : `${apiConfig.baseUrl}/${url}`;
117
+ ? `${config.baseUrl}${url}`
118
+ : `${config.baseUrl}/${url}`;
109
119
 
110
120
  if (!params) return fullUrl;
111
121
 
@@ -135,10 +145,11 @@ export const fetchApi = async <T = any>(
135
145
  try {
136
146
  const fullUrl = createUrl(url, params);
137
147
 
148
+ const config = getApiConfig();
138
149
  const requestHeaders: Record<string, string> = {
139
150
  "Content-Type": "application/json",
140
151
  ...headers,
141
- Authorization: `Bearer ${apiConfig.apiToken}`,
152
+ Authorization: `Bearer ${config.apiToken}`,
142
153
  };
143
154
 
144
155
  const requestOptions: {
package/src/api/fee.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { getChainById } from "../chain";
2
- import { ApiResponse, ApiVersion, setApiConfig } from "./base";
2
+ import { ApiResponse } from "./base";
3
+ import { FeeType } from "./payment";
3
4
 
4
5
  /**
5
6
  * Fee response data type (success case)
@@ -8,10 +9,14 @@ export interface FeeResponseData {
8
9
  appId: string;
9
10
  amount: number;
10
11
  currency: string;
12
+ type: string;
11
13
  fee: number;
12
14
  feePercentage: string;
13
15
  minimumFee: string;
16
+ amountIn: number;
17
+ amountOut: number;
14
18
  amount_out: number;
19
+ amount_in: number;
15
20
  }
16
21
 
17
22
  /**
@@ -28,12 +33,11 @@ export interface FeeErrorData {
28
33
  * Fee request parameters
29
34
  */
30
35
  export interface GetFeeParams {
31
- appId: string;
32
- amount: number;
33
- toChain: number;
36
+ appId?: string;
34
37
  currency?: string;
35
- /** API version to use (v2 or v4). Defaults to v4 */
36
- apiVersion?: ApiVersion;
38
+ toUnits: string;
39
+ toChain: number;
40
+ type: FeeType;
37
41
  }
38
42
 
39
43
  /**
@@ -44,20 +48,18 @@ export interface GetFeeParams {
44
48
  export const getFee = async (
45
49
  params: GetFeeParams
46
50
  ): Promise<ApiResponse<FeeResponseData>> => {
47
- const { amount, appId, currency = "USDC", toChain, apiVersion } = params;
48
-
49
- // Set API version if provided
50
- if (apiVersion) {
51
- setApiConfig({ version: apiVersion });
52
- }
51
+ const { toUnits, appId, currency = "USDC", toChain, type } = params;
53
52
 
54
53
  try {
55
- const chain = getChainById(toChain);
54
+ const chain = getChainById(Number(toChain));
56
55
  const toChainName = chain.name.toLowerCase();
57
56
 
58
57
  const queryParams = new URLSearchParams({
59
- amount: amount.toString(),
60
- appId,
58
+ ...(appId ? { appId } : {}),
59
+ ...(type === FeeType.ExactIn
60
+ ? { type: "exactIn" }
61
+ : { type: "exactOut" }),
62
+ amount: toUnits,
61
63
  currency,
62
64
  tochain: toChainName,
63
65
  });
@@ -294,7 +294,7 @@ export interface CreateNewPaymentParams {
294
294
  /** Order reference ID (for idempotency) */
295
295
  orderId?: string;
296
296
  /** Fee calculation type (exactIn or exactOut) */
297
- type?: FeeType;
297
+ feeType?: FeeType;
298
298
  /** Webhook URL to receive payment status updates */
299
299
  webhookUrl?: string;
300
300
  /** Secret for HMAC-SHA256 signature verification */
@@ -345,7 +345,7 @@ export async function createPayment(
345
345
  title,
346
346
  description,
347
347
  orderId,
348
- type,
348
+ feeType,
349
349
  webhookUrl,
350
350
  webhookSecret,
351
351
  receiverMemo,
@@ -388,7 +388,7 @@ export async function createPayment(
388
388
  // Build payment request data matching new backend interface
389
389
  const paymentData: CreatePaymentRequest = {
390
390
  appId,
391
- type: type ?? FeeType.ExactIn,
391
+ type: feeType ?? FeeType.ExactIn,
392
392
  ...(orderId ? { orderId } : {}),
393
393
  source: {
394
394
  chainId: sourceChain.chainId,
@@ -421,7 +421,7 @@ export async function createPayment(
421
421
  ...(webhookSecret ? { webhookSecret } : {}),
422
422
  };
423
423
 
424
- if (apiVersion === "v2") {
424
+ if (apiVersion === "v1") {
425
425
  paymentData.display.intent = title ?? "Pay";
426
426
  paymentData.destination.amountUnits = destination.amountUnits;
427
427
  paymentData.destination.destinationAddress = destinationAddress;
@@ -458,7 +458,7 @@ export const getPayment = (
458
458
  setApiConfig({ version: apiVersion });
459
459
  }
460
460
 
461
- if (apiVersion === "v2") {
461
+ if (apiVersion === "v1") {
462
462
  const isMugglePay = paymentId.includes("mugglepay_order");
463
463
  const endpoint = isMugglePay
464
464
  ? `/payment-api/${paymentId}`
package/src/index.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export { setApiConfig, type ApiVersion } from "./api/base";
1
2
  export * from "./api/fee";
2
3
  export * from "./api/payment";
3
4
  export * from "./assert";