@ottocode/web-sdk 0.1.213 → 0.1.215

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 (71) hide show
  1. package/dist/components/git/GitSidebar.js +1 -1
  2. package/dist/components/git/GitSidebar.js.map +1 -1
  3. package/dist/components/messages/renderers/shared/ImagePreview.js +1 -1
  4. package/dist/components/messages/renderers/shared/ImagePreview.js.map +1 -1
  5. package/dist/components/research/ResearchSidebar.js +1 -1
  6. package/dist/components/research/ResearchSidebar.js.map +1 -1
  7. package/dist/components/sessions/SessionListContainer.d.ts.map +1 -1
  8. package/dist/components/sessions/SessionListContainer.js +6 -9
  9. package/dist/components/sessions/SessionListContainer.js.map +1 -1
  10. package/dist/components/terminals/TerminalViewer.d.ts +2 -1
  11. package/dist/components/terminals/TerminalViewer.d.ts.map +1 -1
  12. package/dist/components/terminals/TerminalViewer.js +81 -3
  13. package/dist/components/terminals/TerminalViewer.js.map +1 -1
  14. package/dist/components/terminals/TerminalsPanel.d.ts.map +1 -1
  15. package/dist/components/terminals/TerminalsPanel.js +1 -3
  16. package/dist/components/terminals/TerminalsPanel.js.map +1 -1
  17. package/dist/hooks/useAuthStatus.d.ts.map +1 -1
  18. package/dist/hooks/useConfig.d.ts.map +1 -1
  19. package/dist/hooks/useFileBrowser.d.ts.map +1 -1
  20. package/dist/hooks/useFiles.d.ts +2 -2
  21. package/dist/hooks/useMCP.d.ts +23 -11
  22. package/dist/hooks/useMCP.d.ts.map +1 -1
  23. package/dist/hooks/useMCP.js +68 -50
  24. package/dist/hooks/useMCP.js.map +1 -1
  25. package/dist/hooks/useTerminals.js +2 -2
  26. package/dist/hooks/useTerminals.js.map +1 -1
  27. package/dist/lib/api-client/approval.d.ts +18 -0
  28. package/dist/lib/api-client/approval.d.ts.map +1 -0
  29. package/dist/lib/api-client/approval.js +25 -0
  30. package/dist/lib/api-client/approval.js.map +1 -0
  31. package/dist/lib/api-client/auth.d.ts +74 -0
  32. package/dist/lib/api-client/auth.d.ts.map +1 -0
  33. package/dist/lib/api-client/auth.js +111 -0
  34. package/dist/lib/api-client/auth.js.map +1 -0
  35. package/dist/lib/api-client/branches.d.ts +10 -0
  36. package/dist/lib/api-client/branches.d.ts.map +1 -0
  37. package/dist/lib/api-client/branches.js +45 -0
  38. package/dist/lib/api-client/branches.js.map +1 -0
  39. package/dist/lib/api-client/config.d.ts +41 -0
  40. package/dist/lib/api-client/config.d.ts.map +1 -0
  41. package/dist/lib/api-client/config.js +38 -0
  42. package/dist/lib/api-client/config.js.map +1 -0
  43. package/dist/lib/api-client/files.d.ts +29 -0
  44. package/dist/lib/api-client/files.d.ts.map +1 -0
  45. package/dist/lib/api-client/files.js +35 -0
  46. package/dist/lib/api-client/files.js.map +1 -0
  47. package/dist/lib/api-client/git.d.ts +32 -0
  48. package/dist/lib/api-client/git.d.ts.map +1 -0
  49. package/dist/lib/api-client/git.js +154 -0
  50. package/dist/lib/api-client/git.js.map +1 -0
  51. package/dist/lib/api-client/index.d.ts +281 -0
  52. package/dist/lib/api-client/index.d.ts.map +1 -0
  53. package/dist/lib/api-client/index.js +80 -0
  54. package/dist/lib/api-client/index.js.map +1 -0
  55. package/dist/lib/api-client/sessions.d.ts +43 -0
  56. package/dist/lib/api-client/sessions.d.ts.map +1 -0
  57. package/dist/lib/api-client/sessions.js +108 -0
  58. package/dist/lib/api-client/sessions.js.map +1 -0
  59. package/dist/lib/api-client/setu.d.ts +59 -0
  60. package/dist/lib/api-client/setu.d.ts.map +1 -0
  61. package/dist/lib/api-client/setu.js +112 -0
  62. package/dist/lib/api-client/setu.js.map +1 -0
  63. package/dist/lib/api-client/utils.d.ts +8 -0
  64. package/dist/lib/api-client/utils.d.ts.map +1 -0
  65. package/dist/lib/api-client/utils.js +65 -0
  66. package/dist/lib/api-client/utils.js.map +1 -0
  67. package/package.json +6 -6
  68. package/dist/lib/api-client.d.ts +0 -288
  69. package/dist/lib/api-client.d.ts.map +0 -1
  70. package/dist/lib/api-client.js +0 -936
  71. package/dist/lib/api-client.js.map +0 -1
@@ -0,0 +1,281 @@
1
+ export { configureApiClient } from './utils';
2
+ declare class ApiClient {
3
+ getSessions: () => Promise<import("../..").Session[]>;
4
+ getSessionsPage: (params?: {
5
+ limit?: number;
6
+ offset?: number;
7
+ }) => Promise<import("../..").SessionsPage>;
8
+ createSession: (data: import("../..").CreateSessionRequest) => Promise<import("../..").Session>;
9
+ updateSession: (sessionId: string, data: import("../..").UpdateSessionRequest) => Promise<import("../..").Session>;
10
+ deleteSession: (sessionId: string) => Promise<{
11
+ success: boolean;
12
+ }>;
13
+ abortSession: (sessionId: string) => Promise<{
14
+ success: boolean;
15
+ }>;
16
+ abortMessage: (sessionId: string, _messageId: string) => Promise<{
17
+ success: boolean;
18
+ wasRunning: boolean;
19
+ messageId: string;
20
+ }>;
21
+ getQueueState: (sessionId: string) => Promise<{
22
+ currentMessageId: string | null;
23
+ queuedMessages: Array<{
24
+ messageId: string;
25
+ position: number;
26
+ }>;
27
+ isRunning: boolean;
28
+ }>;
29
+ removeFromQueue: (sessionId: string, messageId: string) => Promise<{
30
+ success: boolean;
31
+ removed: boolean;
32
+ wasQueued?: boolean;
33
+ wasRunning?: boolean;
34
+ }>;
35
+ getMessages: (sessionId: string) => Promise<import("../..").Message[]>;
36
+ sendMessage: (sessionId: string, data: import("../..").SendMessageRequest) => Promise<import("../..").SendMessageResponse>;
37
+ getStreamUrl: (sessionId: string) => string;
38
+ retryMessage: (sessionId: string, messageId: string) => Promise<{
39
+ success: boolean;
40
+ messageId: string;
41
+ }>;
42
+ initGitRepo: () => Promise<{
43
+ initialized: boolean;
44
+ path: string;
45
+ }>;
46
+ getGitStatus: () => Promise<import("../..").GitStatusResponse>;
47
+ getGitDiff: (file: string, staged?: boolean) => Promise<import("../..").GitDiffResponse>;
48
+ getGitDiffFullFile: (file: string, staged?: boolean) => Promise<import("../..").GitDiffResponse>;
49
+ generateCommitMessage: (sessionId?: string) => Promise<import("../..").GitGenerateCommitMessageResponse>;
50
+ stageFiles: (files: string[]) => Promise<import("../..").GitStageResponse>;
51
+ unstageFiles: (files: string[]) => Promise<import("../..").GitUnstageResponse>;
52
+ restoreFiles: (files: string[]) => Promise<{
53
+ restored: string[];
54
+ }>;
55
+ deleteFiles: (files: string[]) => Promise<{
56
+ deleted: string[];
57
+ }>;
58
+ commitChanges: (message: string) => Promise<import("../..").GitCommitResponse>;
59
+ getGitBranch: () => Promise<import("../..").GitBranchInfo>;
60
+ pushCommits: () => Promise<import("../..").GitPushResponse>;
61
+ pullChanges: () => Promise<import("../..").GitPullResponse>;
62
+ getRemotes: () => Promise<import("../..").GitRemoteInfo[]>;
63
+ addRemote: (name: string, url: string) => Promise<{
64
+ name: string;
65
+ url: string;
66
+ }>;
67
+ removeRemote: (name: string) => Promise<{
68
+ removed: string;
69
+ }>;
70
+ getConfig: () => Promise<{
71
+ agents: string[];
72
+ providers: string[];
73
+ defaults: {
74
+ agent: string;
75
+ provider: string;
76
+ model: string;
77
+ toolApproval?: "auto" | "dangerous" | "all";
78
+ guidedMode?: boolean;
79
+ };
80
+ }>;
81
+ getModels: (providerId: string) => Promise<{
82
+ models: Array<{
83
+ id: string;
84
+ label: string;
85
+ toolCall?: boolean;
86
+ }>;
87
+ default: string;
88
+ }>;
89
+ getAllModels: () => Promise<import("../..").AllModelsResponse>;
90
+ updateDefaults: (data: {
91
+ agent?: string;
92
+ provider?: string;
93
+ model?: string;
94
+ toolApproval?: "auto" | "dangerous" | "all";
95
+ guidedMode?: boolean;
96
+ scope?: "global" | "local";
97
+ }) => Promise<{
98
+ success: boolean;
99
+ defaults: {
100
+ agent: string;
101
+ provider: string;
102
+ model: string;
103
+ toolApproval?: "auto" | "dangerous" | "all";
104
+ guidedMode?: boolean;
105
+ };
106
+ }>;
107
+ listFiles: () => Promise<{
108
+ files: string[];
109
+ ignoredFiles?: string[];
110
+ changedFiles: Array<{
111
+ path: string;
112
+ status: string;
113
+ }>;
114
+ truncated: boolean;
115
+ }>;
116
+ getFileTree: (dirPath?: string) => Promise<{
117
+ items: Array<{
118
+ name: string;
119
+ path: string;
120
+ type: "file" | "directory";
121
+ gitignored?: boolean;
122
+ }>;
123
+ path: string;
124
+ }>;
125
+ readFileContent: (filePath: string) => Promise<{
126
+ content: string;
127
+ path: string;
128
+ extension: string;
129
+ lineCount: number;
130
+ }>;
131
+ getSessionFiles: (sessionId: string) => Promise<import("../..").SessionFilesResponse>;
132
+ createBranch: (sessionId: string, data: import("../..").CreateBranchRequest) => Promise<import("../..").BranchResult>;
133
+ listBranches: (sessionId: string) => Promise<import("../..").ListBranchesResponse>;
134
+ getParentSession: (sessionId: string) => Promise<import("../..").ParentSessionResponse>;
135
+ getShareStatus: (sessionId: string) => Promise<import("../..").ShareStatus>;
136
+ shareSession: (sessionId: string) => Promise<import("../..").ShareSessionResponse>;
137
+ syncSession: (sessionId: string) => Promise<import("../..").SyncSessionResponse>;
138
+ approveToolCall: (sessionId: string, callId: string, approved: boolean) => Promise<{
139
+ ok: boolean;
140
+ callId: string;
141
+ approved: boolean;
142
+ }>;
143
+ getPendingApprovals: (sessionId: string) => Promise<{
144
+ ok: boolean;
145
+ pending: Array<{
146
+ callId: string;
147
+ toolName: string;
148
+ args: unknown;
149
+ messageId: string;
150
+ createdAt: number;
151
+ }>;
152
+ }>;
153
+ getSetuBalance: () => Promise<{
154
+ walletAddress: string;
155
+ balance: number;
156
+ totalSpent: number;
157
+ totalTopups: number;
158
+ requestCount: number;
159
+ } | null>;
160
+ getSetuWallet: () => Promise<{
161
+ configured: boolean;
162
+ publicKey?: string;
163
+ error?: string;
164
+ }>;
165
+ getSetuUsdcBalance: (network?: "mainnet" | "devnet") => Promise<{
166
+ walletAddress: string;
167
+ usdcBalance: number;
168
+ network: "mainnet" | "devnet";
169
+ } | null>;
170
+ getPolarTopupEstimate: (amount: number) => Promise<{
171
+ creditAmount: number;
172
+ chargeAmount: number;
173
+ feeAmount: number;
174
+ feeBreakdown: {
175
+ basePercent: number;
176
+ internationalPercent: number;
177
+ fixedCents: number;
178
+ };
179
+ } | null>;
180
+ createPolarCheckout: (amount: number, successUrl: string) => Promise<{
181
+ success: boolean;
182
+ checkoutId: string;
183
+ checkoutUrl: string;
184
+ creditAmount: number;
185
+ chargeAmount: number;
186
+ feeAmount: number;
187
+ }>;
188
+ selectTopupMethod: (sessionId: string, method: "crypto" | "fiat") => Promise<{
189
+ success: boolean;
190
+ method: string;
191
+ }>;
192
+ cancelTopup: (sessionId: string, reason?: string) => Promise<{
193
+ success: boolean;
194
+ }>;
195
+ getPendingTopup: (sessionId: string) => Promise<{
196
+ hasPending: boolean;
197
+ sessionId?: string;
198
+ messageId?: string;
199
+ amountUsd?: number;
200
+ currentBalance?: number;
201
+ createdAt?: number;
202
+ }>;
203
+ getPolarTopupStatus: (checkoutId: string) => Promise<{
204
+ checkoutId: string;
205
+ confirmed: boolean;
206
+ amountUsd: number | null;
207
+ confirmedAt: string | null;
208
+ } | null>;
209
+ getAuthStatus: () => Promise<{
210
+ onboardingComplete: boolean;
211
+ setu: {
212
+ configured: boolean;
213
+ publicKey?: string;
214
+ };
215
+ providers: Record<string, {
216
+ configured: boolean;
217
+ type?: "api" | "oauth" | "wallet";
218
+ label: string;
219
+ supportsOAuth: boolean;
220
+ modelCount: number;
221
+ costRange?: {
222
+ min: number;
223
+ max: number;
224
+ };
225
+ }>;
226
+ defaults: {
227
+ agent: string;
228
+ provider: string;
229
+ model: string;
230
+ toolApproval?: "auto" | "dangerous" | "all";
231
+ };
232
+ }>;
233
+ setupSetuWallet: () => Promise<{
234
+ success: boolean;
235
+ publicKey: string;
236
+ isNew: boolean;
237
+ }>;
238
+ importSetuWallet: (privateKey: string) => Promise<{
239
+ success: boolean;
240
+ publicKey: string;
241
+ }>;
242
+ exportSetuWallet: () => Promise<{
243
+ success: boolean;
244
+ publicKey: string;
245
+ privateKey: string;
246
+ }>;
247
+ addProvider: (provider: string, apiKey: string) => Promise<{
248
+ success: boolean;
249
+ provider: string;
250
+ }>;
251
+ removeProvider: (provider: string) => Promise<{
252
+ success: boolean;
253
+ provider: string;
254
+ }>;
255
+ completeOnboarding: () => Promise<{
256
+ success: boolean;
257
+ }>;
258
+ getOAuthStartUrl: (provider: string, mode?: string) => string;
259
+ getOAuthUrl: (provider: string, mode?: string) => Promise<{
260
+ url: string;
261
+ sessionId: string;
262
+ provider: string;
263
+ }>;
264
+ exchangeOAuthCode: (provider: string, code: string, sessionId: string) => Promise<{
265
+ success: boolean;
266
+ provider: string;
267
+ }>;
268
+ startCopilotDeviceFlow: () => Promise<{
269
+ sessionId: string;
270
+ userCode: string;
271
+ verificationUri: string;
272
+ interval: number;
273
+ }>;
274
+ pollCopilotDeviceFlow: (sessionId: string) => Promise<{
275
+ status: "complete" | "pending" | "error";
276
+ error?: string;
277
+ }>;
278
+ getProviderUsage: (provider: string) => Promise<import("../..").ProviderUsageResponse>;
279
+ }
280
+ export declare const apiClient: ApiClient;
281
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/api-client/index.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE7C,cAAM,SAAS;IACd,WAAW,2CAA6B;IACxC,eAAe;aAWP,CAAC;cAAgB,CAAC;gDAXsB;IAChD,aAAa,mFAA+B;IAC5C,aAAa,sGAA+B;IAC5C,aAAa;;OAA+B;IAC5C,YAAY;;OAA8B;IAC1C,YAAY;;;;OAA8B;IAC1C,aAAa;;;;;;;OAA+B;IAC5C,eAAe;;;iBAqEmY,CAAC;kBAAuB,CAAC;OArE3X;IAChD,WAAW,4DAA6B;IACxC,WAAW,gHAA6B;IACxC,YAAY,gCAA8B;IAC1C,YAAY;;;OAA8B;IAE1C,WAAW;;;OAAwB;IACnC,YAAY,mDAAyB;IACrC,UAAU,+EAAuB;IACjC,kBAAkB,+EAA+B;IACjD,qBAAqB,oFAAkC;IACvD,UAAU,iEAAuB;IACjC,YAAY,mEAAyB;IACrC,YAAY;;OAAyB;IACrC,WAAW;;OAAwB;IACnC,aAAa,kEAA0B;IACvC,YAAY,+CAAyB;IACrC,WAAW,iDAAwB;IACnC,WAAW,iDAAwB;IACnC,UAAU,iDAAuB;IACjC,SAAS;;;OAAsB;IAC/B,YAAY;;OAAyB;IAErC,SAAS;;;;;;;wBA9BqC,CAAC;sBACL,CAAC;;OA6BT;IAClC,SAAS;;;;oBAtBkB,CAAC;;;OAsBM;IAClC,YAAY,mDAA4B;IACxC,cAAc;aAPM,CAAC;gBACf,CAAC;aAAiB,CAAC;oBACT,CAAC;kBAEI,CAAC;aAClB,CAAC;;;;;;;wBAIkB,CAAC;sBACU,CAAC;;OAHS;IAE5C,SAAS;;;;;;;;OAAwB;IACjC,WAAW;;;;;sBA9B6B,CAAC;;;OA8BJ;IACrC,eAAe;;;;;OAA8B;IAC7C,eAAe,uEAA8B;IAE7C,YAAY,0GAA8B;IAC1C,YAAY,uEAA8B;IAC1C,gBAAgB,wEAAkC;IAClD,cAAc,8DAAgC;IAC9C,YAAY,uEAA8B;IAC1C,WAAW,sEAA6B;IAExC,eAAe;;;;OAAiC;IAChD,mBAAmB;;;;;;;;;OAAqC;IAExD,cAAc;;;;;;cAA4B;IAC1C,aAAa;;iBAxCgB,CAAC;aAE5B,CAAC;OAsCqC;IACxC,kBAAkB;;;;cAAgC;IAClD,qBAAqB;;;;;;;;;cAAmC;IACxD,mBAAmB;;;;;;;OAAiC;IACpD,iBAAiB;;;OAA+B;IAChD,WAAW;;OAAyB;IACpC,eAAe;;iBAmBgH,CAAC;iBAAqB,CAAC;iBAAqB,CAAC;sBAA0B,CAAC;iBAAqB,CAAC;OAnBjL;IAC5C,mBAAmB;;;;;cAAiC;IAEpD,aAAa;;;;qBApDX,CAAC;;;;gBAEF,CAAC;;;;qBAGyB,CAAC;;;;;;;;;wBAGiB,CAAC;;OA4CN;IACxC,eAAe;;;;OAA6B;IAC5C,gBAAgB;;;OAA8B;IAC9C,gBAAgB;;;;OAA8B;IAC9C,WAAW;;;OAAyB;IACpC,cAAc;;;OAA4B;IAC1C,kBAAkB;;OAAgC;IAClD,gBAAgB,8CAA8B;IAC9C,WAAW;;;;OAAyB;IACpC,iBAAiB;;;OAA+B;IAChD,sBAAsB;;;;;OAAoC;IAC1D,qBAAqB;;aAKmlD,CAAC;OALjjD;IACxD,gBAAgB,uEAA8B;CAC9C;AAED,eAAO,MAAM,SAAS,WAAkB,CAAC"}
@@ -0,0 +1,80 @@
1
+ import { sessionsMixin } from './sessions';
2
+ import { gitMixin } from './git';
3
+ import { configMixin } from './config';
4
+ import { filesMixin } from './files';
5
+ import { branchesMixin } from './branches';
6
+ import { approvalMixin } from './approval';
7
+ import { setuMixin } from './setu';
8
+ import { authMixin } from './auth';
9
+ export { configureApiClient } from './utils';
10
+ class ApiClient {
11
+ getSessions = sessionsMixin.getSessions;
12
+ getSessionsPage = sessionsMixin.getSessionsPage;
13
+ createSession = sessionsMixin.createSession;
14
+ updateSession = sessionsMixin.updateSession;
15
+ deleteSession = sessionsMixin.deleteSession;
16
+ abortSession = sessionsMixin.abortSession;
17
+ abortMessage = sessionsMixin.abortMessage;
18
+ getQueueState = sessionsMixin.getQueueState;
19
+ removeFromQueue = sessionsMixin.removeFromQueue;
20
+ getMessages = sessionsMixin.getMessages;
21
+ sendMessage = sessionsMixin.sendMessage;
22
+ getStreamUrl = sessionsMixin.getStreamUrl;
23
+ retryMessage = sessionsMixin.retryMessage;
24
+ initGitRepo = gitMixin.initGitRepo;
25
+ getGitStatus = gitMixin.getGitStatus;
26
+ getGitDiff = gitMixin.getGitDiff;
27
+ getGitDiffFullFile = gitMixin.getGitDiffFullFile;
28
+ generateCommitMessage = gitMixin.generateCommitMessage;
29
+ stageFiles = gitMixin.stageFiles;
30
+ unstageFiles = gitMixin.unstageFiles;
31
+ restoreFiles = gitMixin.restoreFiles;
32
+ deleteFiles = gitMixin.deleteFiles;
33
+ commitChanges = gitMixin.commitChanges;
34
+ getGitBranch = gitMixin.getGitBranch;
35
+ pushCommits = gitMixin.pushCommits;
36
+ pullChanges = gitMixin.pullChanges;
37
+ getRemotes = gitMixin.getRemotes;
38
+ addRemote = gitMixin.addRemote;
39
+ removeRemote = gitMixin.removeRemote;
40
+ getConfig = configMixin.getConfig;
41
+ getModels = configMixin.getModels;
42
+ getAllModels = configMixin.getAllModels;
43
+ updateDefaults = configMixin.updateDefaults;
44
+ listFiles = filesMixin.listFiles;
45
+ getFileTree = filesMixin.getFileTree;
46
+ readFileContent = filesMixin.readFileContent;
47
+ getSessionFiles = filesMixin.getSessionFiles;
48
+ createBranch = branchesMixin.createBranch;
49
+ listBranches = branchesMixin.listBranches;
50
+ getParentSession = branchesMixin.getParentSession;
51
+ getShareStatus = branchesMixin.getShareStatus;
52
+ shareSession = branchesMixin.shareSession;
53
+ syncSession = branchesMixin.syncSession;
54
+ approveToolCall = approvalMixin.approveToolCall;
55
+ getPendingApprovals = approvalMixin.getPendingApprovals;
56
+ getSetuBalance = setuMixin.getSetuBalance;
57
+ getSetuWallet = setuMixin.getSetuWallet;
58
+ getSetuUsdcBalance = setuMixin.getSetuUsdcBalance;
59
+ getPolarTopupEstimate = setuMixin.getPolarTopupEstimate;
60
+ createPolarCheckout = setuMixin.createPolarCheckout;
61
+ selectTopupMethod = setuMixin.selectTopupMethod;
62
+ cancelTopup = setuMixin.cancelTopup;
63
+ getPendingTopup = setuMixin.getPendingTopup;
64
+ getPolarTopupStatus = setuMixin.getPolarTopupStatus;
65
+ getAuthStatus = authMixin.getAuthStatus;
66
+ setupSetuWallet = authMixin.setupSetuWallet;
67
+ importSetuWallet = authMixin.importSetuWallet;
68
+ exportSetuWallet = authMixin.exportSetuWallet;
69
+ addProvider = authMixin.addProvider;
70
+ removeProvider = authMixin.removeProvider;
71
+ completeOnboarding = authMixin.completeOnboarding;
72
+ getOAuthStartUrl = authMixin.getOAuthStartUrl;
73
+ getOAuthUrl = authMixin.getOAuthUrl;
74
+ exchangeOAuthCode = authMixin.exchangeOAuthCode;
75
+ startCopilotDeviceFlow = authMixin.startCopilotDeviceFlow;
76
+ pollCopilotDeviceFlow = authMixin.pollCopilotDeviceFlow;
77
+ getProviderUsage = authMixin.getProviderUsage;
78
+ }
79
+ export const apiClient = new ApiClient();
80
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/api-client/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import type { Session, Message, CreateSessionRequest, SendMessageRequest, SendMessageResponse, UpdateSessionRequest, SessionsPage } from '../../types/api';
2
+ export declare const sessionsMixin: {
3
+ getSessions(): Promise<Session[]>;
4
+ getSessionsPage(params?: {
5
+ limit?: number;
6
+ offset?: number;
7
+ }): Promise<SessionsPage>;
8
+ createSession(data: CreateSessionRequest): Promise<Session>;
9
+ updateSession(sessionId: string, data: UpdateSessionRequest): Promise<Session>;
10
+ deleteSession(sessionId: string): Promise<{
11
+ success: boolean;
12
+ }>;
13
+ abortSession(sessionId: string): Promise<{
14
+ success: boolean;
15
+ }>;
16
+ abortMessage(sessionId: string, _messageId: string): Promise<{
17
+ success: boolean;
18
+ wasRunning: boolean;
19
+ messageId: string;
20
+ }>;
21
+ getQueueState(sessionId: string): Promise<{
22
+ currentMessageId: string | null;
23
+ queuedMessages: Array<{
24
+ messageId: string;
25
+ position: number;
26
+ }>;
27
+ isRunning: boolean;
28
+ }>;
29
+ removeFromQueue(sessionId: string, messageId: string): Promise<{
30
+ success: boolean;
31
+ removed: boolean;
32
+ wasQueued?: boolean;
33
+ wasRunning?: boolean;
34
+ }>;
35
+ getMessages(sessionId: string): Promise<Message[]>;
36
+ sendMessage(sessionId: string, data: SendMessageRequest): Promise<SendMessageResponse>;
37
+ getStreamUrl(sessionId: string): string;
38
+ retryMessage(sessionId: string, messageId: string): Promise<{
39
+ success: boolean;
40
+ messageId: string;
41
+ }>;
42
+ };
43
+ //# sourceMappingURL=sessions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../../src/lib/api-client/sessions.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACX,OAAO,EACP,OAAO,EACP,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,MAAM,iBAAiB,CAAC;AAQzB,eAAO,MAAM,aAAa;mBACJ,OAAO,CAAC,OAAO,EAAE,CAAC;6BAM9B;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GACzC,OAAO,CAAC,YAAY,CAAC;wBAkBE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;6BAUrD,MAAM,QACX,oBAAoB,GACxB,OAAO,CAAC,OAAO,CAAC;6BAUY,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;4BAMvC,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;4BAOxD,MAAM,cACL,MAAM,GAChB,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,UAAU,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;6BAYzC,MAAM,GAAG,OAAO,CAAC;QAC/C,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;QAChC,cAAc,EAAE,KAAK,CAAC;YAAE,SAAS,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC/D,SAAS,EAAE,OAAO,CAAC;KACnB,CAAC;+BAQU,MAAM,aACN,MAAM,GACf,OAAO,CAAC;QACV,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,UAAU,CAAC,EAAE,OAAO,CAAC;KACrB,CAAC;2BAS2B,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;2BAO5C,MAAM,QACX,kBAAkB,GACtB,OAAO,CAAC,mBAAmB,CAAC;4BASP,MAAM,GAAG,MAAM;4BAK3B,MAAM,aACN,MAAM,GACf,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CAQnD,CAAC"}
@@ -0,0 +1,108 @@
1
+ import { createSession as apiCreateSession, listSessions as apiListSessions, listMessages as apiListMessages, createMessage as apiCreateMessage, abortSession as apiAbortSession, deleteSession as apiDeleteSession, updateSession as apiUpdateSession, getSessionQueue as apiGetSessionQueue, removeFromQueue as apiRemoveFromQueue, retryMessage as apiRetryMessage, } from '@ottocode/api';
2
+ import { extractErrorMessage, convertSession, convertMessage, getBaseUrl, } from './utils';
3
+ export const sessionsMixin = {
4
+ async getSessions() {
5
+ const page = await this.getSessionsPage({ limit: 200 });
6
+ return page.items;
7
+ },
8
+ async getSessionsPage(params = {}) {
9
+ const { limit = 50, offset = 0 } = params;
10
+ const response = await apiListSessions({
11
+ // biome-ignore lint/suspicious/noExplicitAny: API query type mismatch
12
+ query: { limit, offset },
13
+ });
14
+ if (response.error)
15
+ throw new Error(extractErrorMessage(response.error));
16
+ // biome-ignore lint/suspicious/noExplicitAny: API response structure
17
+ const data = response.data;
18
+ return {
19
+ items: (data?.items || data || []).map((s) => convertSession(s)),
20
+ hasMore: data?.hasMore ?? false,
21
+ nextOffset: data?.nextOffset ?? null,
22
+ };
23
+ },
24
+ async createSession(data) {
25
+ const response = await apiCreateSession({
26
+ body: data,
27
+ });
28
+ if (response.error)
29
+ throw new Error(extractErrorMessage(response.error));
30
+ if (!response.data)
31
+ throw new Error('No data returned from create session');
32
+ return convertSession(response.data);
33
+ },
34
+ async updateSession(sessionId, data) {
35
+ const response = await apiUpdateSession({
36
+ path: { sessionId },
37
+ // biome-ignore lint/suspicious/noExplicitAny: API type mismatch
38
+ body: data,
39
+ });
40
+ if (response.error)
41
+ throw new Error(extractErrorMessage(response.error));
42
+ return convertSession(response.data);
43
+ },
44
+ async deleteSession(sessionId) {
45
+ const response = await apiDeleteSession({ path: { sessionId } });
46
+ if (response.error)
47
+ throw new Error(extractErrorMessage(response.error));
48
+ return response.data;
49
+ },
50
+ async abortSession(sessionId) {
51
+ const response = await apiAbortSession({ path: { sessionId } });
52
+ if (response.error)
53
+ throw new Error(extractErrorMessage(response.error));
54
+ return response.data;
55
+ },
56
+ async abortMessage(sessionId, _messageId) {
57
+ const response = await apiAbortSession({
58
+ path: { sessionId },
59
+ });
60
+ if (response.error)
61
+ throw new Error('Failed to abort message');
62
+ return response.data;
63
+ },
64
+ async getQueueState(sessionId) {
65
+ const response = await apiGetSessionQueue({ path: { sessionId } });
66
+ if (response.error)
67
+ throw new Error('Failed to get queue state');
68
+ // biome-ignore lint/suspicious/noExplicitAny: API response structure
69
+ return response.data;
70
+ },
71
+ async removeFromQueue(sessionId, messageId) {
72
+ const response = await apiRemoveFromQueue({
73
+ path: { sessionId, messageId },
74
+ });
75
+ if (response.error)
76
+ throw new Error('Failed to remove from queue');
77
+ // biome-ignore lint/suspicious/noExplicitAny: API response structure
78
+ return response.data;
79
+ },
80
+ async getMessages(sessionId) {
81
+ const response = await apiListMessages({ path: { id: sessionId } });
82
+ if (response.error)
83
+ throw new Error(extractErrorMessage(response.error));
84
+ return (response.data || []).map(convertMessage);
85
+ },
86
+ async sendMessage(sessionId, data) {
87
+ const response = await apiCreateMessage({
88
+ path: { id: sessionId },
89
+ body: data,
90
+ });
91
+ if (response.error)
92
+ throw new Error(extractErrorMessage(response.error));
93
+ return response.data;
94
+ },
95
+ getStreamUrl(sessionId) {
96
+ return `${getBaseUrl()}/v1/sessions/${sessionId}/stream`;
97
+ },
98
+ async retryMessage(sessionId, messageId) {
99
+ const response = await apiRetryMessage({
100
+ path: { sessionId, messageId },
101
+ });
102
+ if (response.error)
103
+ throw new Error(extractErrorMessage(response.error));
104
+ // biome-ignore lint/suspicious/noExplicitAny: API response structure
105
+ return response.data;
106
+ },
107
+ };
108
+ //# sourceMappingURL=sessions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../../src/lib/api-client/sessions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ export declare const setuMixin: {
2
+ getSetuBalance(): Promise<{
3
+ walletAddress: string;
4
+ balance: number;
5
+ totalSpent: number;
6
+ totalTopups: number;
7
+ requestCount: number;
8
+ } | null>;
9
+ getSetuWallet(): Promise<{
10
+ configured: boolean;
11
+ publicKey?: string;
12
+ error?: string;
13
+ }>;
14
+ getSetuUsdcBalance(network?: "mainnet" | "devnet"): Promise<{
15
+ walletAddress: string;
16
+ usdcBalance: number;
17
+ network: "mainnet" | "devnet";
18
+ } | null>;
19
+ getPolarTopupEstimate(amount: number): Promise<{
20
+ creditAmount: number;
21
+ chargeAmount: number;
22
+ feeAmount: number;
23
+ feeBreakdown: {
24
+ basePercent: number;
25
+ internationalPercent: number;
26
+ fixedCents: number;
27
+ };
28
+ } | null>;
29
+ createPolarCheckout(amount: number, successUrl: string): Promise<{
30
+ success: boolean;
31
+ checkoutId: string;
32
+ checkoutUrl: string;
33
+ creditAmount: number;
34
+ chargeAmount: number;
35
+ feeAmount: number;
36
+ }>;
37
+ selectTopupMethod(sessionId: string, method: "crypto" | "fiat"): Promise<{
38
+ success: boolean;
39
+ method: string;
40
+ }>;
41
+ cancelTopup(sessionId: string, reason?: string): Promise<{
42
+ success: boolean;
43
+ }>;
44
+ getPendingTopup(sessionId: string): Promise<{
45
+ hasPending: boolean;
46
+ sessionId?: string;
47
+ messageId?: string;
48
+ amountUsd?: number;
49
+ currentBalance?: number;
50
+ createdAt?: number;
51
+ }>;
52
+ getPolarTopupStatus(checkoutId: string): Promise<{
53
+ checkoutId: string;
54
+ confirmed: boolean;
55
+ amountUsd: number | null;
56
+ confirmedAt: string | null;
57
+ } | null>;
58
+ };
59
+ //# sourceMappingURL=setu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setu.d.ts","sourceRoot":"","sources":["../../../src/lib/api-client/setu.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,SAAS;sBACG,OAAO,CAAC;QAC/B,aAAa,EAAE,MAAM,CAAC;QACtB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;KACrB,GAAG,IAAI,CAAC;qBAWc,OAAO,CAAC;QAC9B,UAAU,EAAE,OAAO,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;iCAWgC,SAAS,GAAG,QAAQ,GAAe,OAAO,CAAC;QAC5E,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,SAAS,GAAG,QAAQ,CAAC;KAC9B,GAAG,IAAI,CAAC;kCAa2B,MAAM,GAAG,OAAO,CAAC;QACpD,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE;YACb,WAAW,EAAE,MAAM,CAAC;YACpB,oBAAoB,EAAE,MAAM,CAAC;YAC7B,UAAU,EAAE,MAAM,CAAC;SACnB,CAAC;KACF,GAAG,IAAI,CAAC;gCAcA,MAAM,cACF,MAAM,GAChB,OAAO,CAAC;QACV,OAAO,EAAE,OAAO,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;KAClB,CAAC;iCAUU,MAAM,UACT,QAAQ,GAAG,MAAM,GACvB,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;2BAUpC,MAAM,WACR,MAAM,GACb,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;+BASC,MAAM,GAAG,OAAO,CAAC;QACjD,UAAU,EAAE,OAAO,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;oCAaoC,MAAM,GAAG,OAAO,CAAC;QACtD,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,OAAO,CAAC;QACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;KAC3B,GAAG,IAAI,CAAC;CAYT,CAAC"}