@andrewkimjoseph/celina-sdk 0.7.13 → 0.8.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.
Files changed (67) hide show
  1. package/README.md +6 -39
  2. package/build/analytics/mcp-tool-events.js +0 -12
  3. package/build/analytics/mcp-tool-events.js.map +1 -1
  4. package/build/analytics/wallet-extract.js +0 -2
  5. package/build/analytics/wallet-extract.js.map +1 -1
  6. package/build/config/sdk-config.d.ts +0 -4
  7. package/build/config/sdk-config.js +0 -4
  8. package/build/config/sdk-config.js.map +1 -1
  9. package/build/index.d.ts +0 -10
  10. package/build/index.js +0 -7
  11. package/build/index.js.map +1 -1
  12. package/build/tools/domains/index.js +0 -2
  13. package/build/tools/domains/index.js.map +1 -1
  14. package/build/tools/filter.js +0 -8
  15. package/build/tools/filter.js.map +1 -1
  16. package/build/tools/index.d.ts +0 -1
  17. package/build/tools/index.js +0 -1
  18. package/build/tools/index.js.map +1 -1
  19. package/build/tools/schemas/common.d.ts +0 -10
  20. package/build/tools/schemas/common.js +0 -6
  21. package/build/tools/schemas/common.js.map +1 -1
  22. package/build/tools/schemas/wallet-params.d.ts +2 -0
  23. package/build/tools/schemas/wallet-params.js +27 -1
  24. package/build/tools/schemas/wallet-params.js.map +1 -1
  25. package/build/tools/types.d.ts +0 -26
  26. package/package.json +1 -2
  27. package/tests/catalog/operations.ts +2 -7
  28. package/build/clients/carbon-rest.d.ts +0 -17
  29. package/build/clients/carbon-rest.js +0 -59
  30. package/build/clients/carbon-rest.js.map +0 -1
  31. package/build/clients/carbon-sdk.d.ts +0 -31
  32. package/build/clients/carbon-sdk.js +0 -48
  33. package/build/clients/carbon-sdk.js.map +0 -1
  34. package/build/config/carbon.d.ts +0 -15
  35. package/build/config/carbon.js +0 -18
  36. package/build/config/carbon.js.map +0 -1
  37. package/build/services/carbon.service.d.ts +0 -73
  38. package/build/services/carbon.service.js +0 -204
  39. package/build/services/carbon.service.js.map +0 -1
  40. package/build/tools/domains/carbon.d.ts +0 -2
  41. package/build/tools/domains/carbon.js +0 -187
  42. package/build/tools/domains/carbon.js.map +0 -1
  43. package/build/tools/utils/carbon-prepare-handler.d.ts +0 -6
  44. package/build/tools/utils/carbon-prepare-handler.js +0 -17
  45. package/build/tools/utils/carbon-prepare-handler.js.map +0 -1
  46. package/build/types/carbon.d.ts +0 -31
  47. package/build/types/carbon.js +0 -2
  48. package/build/types/carbon.js.map +0 -1
  49. package/build/utils/carbon-execution.d.ts +0 -11
  50. package/build/utils/carbon-execution.js +0 -106
  51. package/build/utils/carbon-execution.js.map +0 -1
  52. package/build/utils/carbon-prepared-flow.d.ts +0 -11
  53. package/build/utils/carbon-prepared-flow.js +0 -28
  54. package/build/utils/carbon-prepared-flow.js.map +0 -1
  55. package/build/utils/carbon-rest-adapter.d.ts +0 -8
  56. package/build/utils/carbon-rest-adapter.js +0 -79
  57. package/build/utils/carbon-rest-adapter.js.map +0 -1
  58. package/build/utils/carbon-step-labels.d.ts +0 -12
  59. package/build/utils/carbon-step-labels.js +0 -180
  60. package/build/utils/carbon-step-labels.js.map +0 -1
  61. package/build/utils/carbon-token.d.ts +0 -10
  62. package/build/utils/carbon-token.js +0 -39
  63. package/build/utils/carbon-token.js.map +0 -1
  64. package/build/utils/finalize-carbon-prepare.d.ts +0 -10
  65. package/build/utils/finalize-carbon-prepare.js +0 -17
  66. package/build/utils/finalize-carbon-prepare.js.map +0 -1
  67. package/tests/catalog/domains/carbon.ts +0 -547
@@ -1,180 +0,0 @@
1
- const GENERIC_CARBON_STEP = /^Carbon transaction step \d+$/;
2
- function readRecord(value) {
3
- return value && typeof value === "object"
4
- ? value
5
- : {};
6
- }
7
- function readPositive(value) {
8
- if (value === undefined || value === null || value === "") {
9
- return null;
10
- }
11
- const n = typeof value === "number" ? value : Number(String(value).replace(/,/g, ""));
12
- return Number.isFinite(n) && n > 0 ? n : null;
13
- }
14
- function resolveSymbol(tokenService, token) {
15
- if (token === undefined || token === null || token === "") {
16
- return "?";
17
- }
18
- try {
19
- return tokenService.resolveToken(String(token)).symbol;
20
- }
21
- catch {
22
- return String(token).trim();
23
- }
24
- }
25
- function formatAmount(value) {
26
- if (value >= 1) {
27
- return value.toLocaleString(undefined, { maximumFractionDigits: 4 });
28
- }
29
- return value.toLocaleString(undefined, { maximumFractionDigits: 6 });
30
- }
31
- function pairLabel(ctx) {
32
- const meta = ctx.orderMeta;
33
- const base = resolveSymbol(ctx.tokenService, meta.base_token ?? meta.base);
34
- const quote = resolveSymbol(ctx.tokenService, meta.quote_token ?? meta.quote);
35
- return `${base} / ${quote}`;
36
- }
37
- function directionFrom(ctx) {
38
- const meta = ctx.orderMeta;
39
- const preview = readRecord(ctx.strategyPreview);
40
- const raw = String(preview.direction ?? meta.direction ?? "buy").toLowerCase();
41
- return raw === "sell" ? "sell" : "buy";
42
- }
43
- function budgetLabel(ctx) {
44
- const meta = ctx.orderMeta;
45
- const preview = readRecord(ctx.strategyPreview);
46
- const direction = directionFrom(ctx);
47
- const amount = readPositive(preview.budget) ??
48
- readPositive(meta.budget) ??
49
- (direction === "sell"
50
- ? readPositive(meta.sell_budget)
51
- : readPositive(meta.buy_budget));
52
- if (amount === null) {
53
- return null;
54
- }
55
- const token = direction === "sell"
56
- ? resolveSymbol(ctx.tokenService, meta.base_token ?? meta.base)
57
- : resolveSymbol(ctx.tokenService, meta.quote_token ?? meta.quote);
58
- return `${formatAmount(amount)} ${token}`;
59
- }
60
- function actionFromSummary(summary) {
61
- const normalized = summary.trim().toLowerCase();
62
- if (normalized.includes("limit order"))
63
- return "limit";
64
- if (normalized.includes("range order"))
65
- return "range";
66
- if (normalized.includes("recurring strategy"))
67
- return "recurring";
68
- if (normalized.includes("concentrated strategy"))
69
- return "concentrated";
70
- if (normalized.includes("full-range strategy"))
71
- return "full-range";
72
- if (normalized.includes("reprice strategy"))
73
- return "reprice";
74
- if (normalized.includes("edit strategy"))
75
- return "edit";
76
- if (normalized.includes("deposit budget"))
77
- return "deposit";
78
- if (normalized.includes("withdraw budget"))
79
- return "withdraw";
80
- if (normalized.includes("pause strategy"))
81
- return "pause";
82
- if (normalized.includes("resume strategy"))
83
- return "resume";
84
- if (normalized.includes("delete strategy"))
85
- return "delete";
86
- if (normalized.includes("taker swap"))
87
- return "swap";
88
- return null;
89
- }
90
- function actionFromPreview(preview) {
91
- const type = String(preview.type ?? "").toLowerCase();
92
- if (type.includes("limit"))
93
- return "limit";
94
- if (type.includes("range"))
95
- return "range";
96
- if (type.includes("recurring"))
97
- return "recurring";
98
- if (type.includes("concentrated"))
99
- return "concentrated";
100
- if (type.includes("full"))
101
- return "full-range";
102
- return null;
103
- }
104
- function createActionLabel(ctx) {
105
- const preview = readRecord(ctx.strategyPreview);
106
- const action = actionFromPreview(preview) ?? actionFromSummary(ctx.summary) ?? "strategy";
107
- const direction = directionFrom(ctx);
108
- const pair = pairLabel(ctx);
109
- const budget = budgetLabel(ctx);
110
- if (action === "swap") {
111
- return "Swap via Carbon DeFi";
112
- }
113
- if (action === "reprice")
114
- return "Reprice Carbon strategy";
115
- if (action === "edit")
116
- return "Edit Carbon strategy";
117
- if (action === "deposit")
118
- return "Deposit to Carbon strategy";
119
- if (action === "withdraw")
120
- return "Withdraw from Carbon strategy";
121
- if (action === "pause")
122
- return "Pause Carbon strategy";
123
- if (action === "resume")
124
- return "Resume Carbon strategy";
125
- if (action === "delete")
126
- return "Close Carbon strategy";
127
- if (action === "recurring") {
128
- return budget
129
- ? `Create recurring strategy — ${budget} on ${pair}`
130
- : `Create recurring strategy — ${pair}`;
131
- }
132
- if (action === "concentrated" || action === "full-range") {
133
- const kind = action === "concentrated" ? "concentrated" : "full-range";
134
- return budget
135
- ? `Create ${kind} strategy — ${budget} on ${pair}`
136
- : `Create ${kind} strategy — ${pair}`;
137
- }
138
- const side = action === "range" ? "range" : "limit";
139
- const sideLabel = `${side} ${direction}`;
140
- return budget
141
- ? `Create ${sideLabel} — ${budget} on ${pair}`
142
- : `Create ${sideLabel} on ${pair}`;
143
- }
144
- /** Human-readable label for a Carbon controller transaction step. */
145
- export function describeCarbonControllerStep(ctx, index, total) {
146
- const base = createActionLabel(ctx);
147
- if (total <= 1) {
148
- return base;
149
- }
150
- return `${base} (step ${index + 1} of ${total})`;
151
- }
152
- function isApprovalStep(step) {
153
- return (step.kind === "erc20" ||
154
- step.description.startsWith("Approve "));
155
- }
156
- function isGenericCarbonStep(step) {
157
- return GENERIC_CARBON_STEP.test(step.description);
158
- }
159
- /** Replace generic Carbon REST step descriptions with human-readable labels. */
160
- export function applyCarbonStepLabels(steps, ctx) {
161
- const controllerIndexes = steps
162
- .map((step, index) => ({ step, index }))
163
- .filter(({ step }) => !isApprovalStep(step) && isGenericCarbonStep(step));
164
- if (controllerIndexes.length === 0) {
165
- return steps;
166
- }
167
- const total = controllerIndexes.length;
168
- const labels = new Map();
169
- controllerIndexes.forEach(({ index }, controllerIndex) => {
170
- labels.set(index, describeCarbonControllerStep(ctx, controllerIndex, total));
171
- });
172
- return steps.map((step, index) => {
173
- const label = labels.get(index);
174
- if (!label) {
175
- return step;
176
- }
177
- return { ...step, description: label };
178
- });
179
- }
180
- //# sourceMappingURL=carbon-step-labels.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"carbon-step-labels.js","sourceRoot":"","sources":["../../src/utils/carbon-step-labels.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import type { TokenService } from "../services/token.service.js";
2
- /** Token fields normalized before Carbon REST write calls. */
3
- export declare const CARBON_WRITE_TOKEN_FIELDS: readonly ["base_token", "quote_token", "source_token", "target_token", "token_in", "token_out", "token"];
4
- /**
5
- * Resolve a Carbon token symbol or address to a concrete `0x` ERC-20 address.
6
- * CELO registry entries map to WCELO/MENTO collateral (Carbon does not accept `"native"`).
7
- */
8
- export declare function resolveCarbonTokenAddress(tokenService: TokenService, tokenOrAddress: string): `0x${string}`;
9
- /** Normalize token symbol fields in a Carbon write body before REST POST. */
10
- export declare function normalizeCarbonWriteBody(tokenService: TokenService, body: Record<string, unknown>): Record<string, unknown>;
@@ -1,39 +0,0 @@
1
- import { MENTO_CELO_ADDRESS } from "../config/chains.js";
2
- const ADDRESS_RE = /^0x[a-fA-F0-9]{40}$/i;
3
- /** Token fields normalized before Carbon REST write calls. */
4
- export const CARBON_WRITE_TOKEN_FIELDS = [
5
- "base_token",
6
- "quote_token",
7
- "source_token",
8
- "target_token",
9
- "token_in",
10
- "token_out",
11
- "token",
12
- ];
13
- /**
14
- * Resolve a Carbon token symbol or address to a concrete `0x` ERC-20 address.
15
- * CELO registry entries map to WCELO/MENTO collateral (Carbon does not accept `"native"`).
16
- */
17
- export function resolveCarbonTokenAddress(tokenService, tokenOrAddress) {
18
- const trimmed = tokenOrAddress.trim();
19
- if (ADDRESS_RE.test(trimmed)) {
20
- return trimmed;
21
- }
22
- const resolved = tokenService.resolveToken(trimmed);
23
- if (resolved.address === "native") {
24
- return MENTO_CELO_ADDRESS;
25
- }
26
- return resolved.address;
27
- }
28
- /** Normalize token symbol fields in a Carbon write body before REST POST. */
29
- export function normalizeCarbonWriteBody(tokenService, body) {
30
- const out = { ...body };
31
- for (const key of CARBON_WRITE_TOKEN_FIELDS) {
32
- const value = out[key];
33
- if (typeof value === "string" && value.trim()) {
34
- out[key] = resolveCarbonTokenAddress(tokenService, value);
35
- }
36
- }
37
- return out;
38
- }
39
- //# sourceMappingURL=carbon-token.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"carbon-token.js","sourceRoot":"","sources":["../../src/utils/carbon-token.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGzD,MAAM,UAAU,GAAG,sBAAsB,CAAC;AAE1C,8DAA8D;AAC9D,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,YAAY;IACZ,aAAa;IACb,cAAc;IACd,cAAc;IACd,UAAU;IACV,WAAW;IACX,OAAO;CACC,CAAC;AAEX;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CACvC,YAA0B,EAC1B,cAAsB;IAEtB,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC;IACtC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,OAAO,OAAwB,CAAC;IAClC,CAAC;IACD,MAAM,QAAQ,GAAG,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IACpD,IAAI,QAAQ,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IACD,OAAO,QAAQ,CAAC,OAAO,CAAC;AAC1B,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,wBAAwB,CACtC,YAA0B,EAC1B,IAA6B;IAE7B,MAAM,GAAG,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;IACxB,KAAK,MAAM,GAAG,IAAI,yBAAyB,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACvB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YAC9C,GAAG,CAAC,GAAG,CAAC,GAAG,yBAAyB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1,10 +0,0 @@
1
- import type { CarbonService } from "../services/carbon.service.js";
2
- import type { CarbonPrepareResult } from "../types/carbon.js";
3
- import type { SerializedPreparedFlow } from "../types/prepared.js";
4
- export type FinalizedCarbonPrepareFlow = SerializedPreparedFlow & {
5
- deep_link?: string;
6
- warnings?: string[];
7
- strategyPreview?: unknown;
8
- };
9
- /** Merge Carbon REST prepare + ERC-20 approve steps for external wallet signing. */
10
- export declare function finalizeCarbonPrepare(carbon: Pick<CarbonService, "buildExecutionSteps">, from: `0x${string}`, prepared: CarbonPrepareResult, orderMeta: Record<string, unknown>): Promise<FinalizedCarbonPrepareFlow>;
@@ -1,17 +0,0 @@
1
- /** Merge Carbon REST prepare + ERC-20 approve steps for external wallet signing. */
2
- export async function finalizeCarbonPrepare(carbon, from, prepared, orderMeta) {
3
- const steps = await carbon.buildExecutionSteps(from, prepared, orderMeta);
4
- if (!prepared.preparedFlow) {
5
- throw new Error("Carbon prepare returned no transaction steps.");
6
- }
7
- return {
8
- ...prepared.preparedFlow,
9
- steps,
10
- ...(prepared.deep_link ? { deep_link: String(prepared.deep_link) } : {}),
11
- ...(prepared.warnings?.length ? { warnings: prepared.warnings } : {}),
12
- ...(prepared.strategyPreview !== undefined
13
- ? { strategyPreview: prepared.strategyPreview }
14
- : {}),
15
- };
16
- }
17
- //# sourceMappingURL=finalize-carbon-prepare.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"finalize-carbon-prepare.js","sourceRoot":"","sources":["../../src/utils/finalize-carbon-prepare.ts"],"names":[],"mappings":"AAUA,oFAAoF;AACpF,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAkD,EAClD,IAAmB,EACnB,QAA6B,EAC7B,SAAkC;IAElC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAC1E,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;IAED,OAAO;QACL,GAAG,QAAQ,CAAC,YAAY;QACxB,KAAK;QACL,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,GAAG,CAAC,QAAQ,CAAC,eAAe,KAAK,SAAS;YACxC,CAAC,CAAC,EAAE,eAAe,EAAE,QAAQ,CAAC,eAAe,EAAE;YAC/C,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC"}