@adaptive-ai/sdk 0.0.9 → 0.1.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.
- package/dist/client/index.d.ts +5 -0
- package/dist/server/index.d.ts +11 -1
- package/dist/server/index.js +2 -2
- package/package.json +1 -1
package/dist/client/index.d.ts
CHANGED
|
@@ -62,6 +62,11 @@ declare global {
|
|
|
62
62
|
__REALTIME_DOMAIN__: string;
|
|
63
63
|
__OPEN_AUTH_DRAWER__: (url: string) => void;
|
|
64
64
|
}
|
|
65
|
+
var env: {
|
|
66
|
+
BASE_URL: string;
|
|
67
|
+
REALTIME_DOMAIN: string;
|
|
68
|
+
GUEST_SERVICES_URL: string;
|
|
69
|
+
};
|
|
65
70
|
}
|
|
66
71
|
|
|
67
72
|
declare function encodeFileAsBase64DataURL(file: File): Promise<string>;
|
package/dist/server/index.d.ts
CHANGED
|
@@ -128,6 +128,11 @@ declare global {
|
|
|
128
128
|
__REALTIME_DOMAIN__: string;
|
|
129
129
|
__OPEN_AUTH_DRAWER__: (url: string) => void;
|
|
130
130
|
}
|
|
131
|
+
var env: {
|
|
132
|
+
BASE_URL: string;
|
|
133
|
+
REALTIME_DOMAIN: string;
|
|
134
|
+
GUEST_SERVICES_URL: string;
|
|
135
|
+
};
|
|
131
136
|
}
|
|
132
137
|
|
|
133
138
|
interface RequestContext {
|
|
@@ -135,6 +140,11 @@ interface RequestContext {
|
|
|
135
140
|
channelId?: string;
|
|
136
141
|
hasTasks?: boolean;
|
|
137
142
|
}
|
|
143
|
+
declare function initializeServerEnvironment({ baseUrl, realtimeDomain, guestServicesUrl, }: {
|
|
144
|
+
baseUrl: string;
|
|
145
|
+
realtimeDomain: string;
|
|
146
|
+
guestServicesUrl: string;
|
|
147
|
+
}): void;
|
|
138
148
|
declare function getRequestContext(): RequestContext | undefined;
|
|
139
149
|
declare function setRequestContext(context: Partial<RequestContext>): void;
|
|
140
150
|
declare function runWithContext<T>(context: RequestContext, fn: () => Promise<T>): Promise<T>;
|
|
@@ -379,4 +389,4 @@ declare function getImageModelsCatalog(input: {
|
|
|
379
389
|
declare function getBaseUrl(): string;
|
|
380
390
|
declare function getLastStreamTime(): number | null;
|
|
381
391
|
|
|
382
|
-
export { createProduct, deleteOAuthConnection, discontinueProduct, extractTextFromContent, generateCrossAppToken, generateDialogue, generateMusic, generateSoundEffect, getAuth, getBaseUrl, getDialogueVoicesCatalog, getImageModelsCatalog, getLastStreamTime, getOAuthConnection, getOAuthConnectionForCurrentUser, getOAuthToken, getRealtimeStore, getRequestContext, getStructuredDataFromContent, getTTSVoicesCatalog, getTaskStatus, getUserId, inviteUser, isAppOwner, listProducts, listUserPurchases, queryOAuthConnections, queueTask, requestMultimodalModel, runWithContext, searchWithGoogle, sendEmail, setRealtimeStore, setRequestContext, startRealtimeResponse, textToImage, textToSpeech, upload };
|
|
392
|
+
export { createProduct, deleteOAuthConnection, discontinueProduct, extractTextFromContent, generateCrossAppToken, generateDialogue, generateMusic, generateSoundEffect, getAuth, getBaseUrl, getDialogueVoicesCatalog, getImageModelsCatalog, getLastStreamTime, getOAuthConnection, getOAuthConnectionForCurrentUser, getOAuthToken, getRealtimeStore, getRequestContext, getStructuredDataFromContent, getTTSVoicesCatalog, getTaskStatus, getUserId, initializeServerEnvironment, inviteUser, isAppOwner, listProducts, listUserPurchases, queryOAuthConnections, queueTask, requestMultimodalModel, runWithContext, searchWithGoogle, sendEmail, setRealtimeStore, setRequestContext, startRealtimeResponse, textToImage, textToSpeech, upload };
|
package/dist/server/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {createTRPCProxyClient,httpLink}from'@trpc/client';import {AsyncLocalStorage}from'async_hooks';import {nanoid}from'nanoid';import
|
|
2
|
-
export{
|
|
1
|
+
import {createTRPCProxyClient,httpLink}from'@trpc/client';import {AsyncLocalStorage}from'async_hooks';import {nanoid}from'nanoid';import _ from'superjson';import*as S from'zod';function O(e){let t=Object.create(null);for(let r in e){let n=e[r];t[n]=r;}return t}var y={PARSE_ERROR:-32700,BAD_REQUEST:-32600,INTERNAL_SERVER_ERROR:-32603,NOT_IMPLEMENTED:-32603,UNAUTHORIZED:-32001,FORBIDDEN:-32003,NOT_FOUND:-32004,METHOD_NOT_SUPPORTED:-32005,TIMEOUT:-32008,CONFLICT:-32009,PRECONDITION_FAILED:-32012,PAYLOAD_TOO_LARGE:-32013,UNPROCESSABLE_CONTENT:-32022,TOO_MANY_REQUESTS:-32029,CLIENT_CLOSED_REQUEST:-32099};O(y);O(y);typeof window>"u"||"Deno"in window||globalThis.process?.env?.NODE_ENV==="test"||!!globalThis.process?.env?.JEST_WORKER_ID||!!globalThis.process?.env?.VITEST_WORKER_ID;var h=class e extends Error{static prefix="__MISSING AUTH FOR SCOPE";static jsonRpcCode=-32001;constructor({provider:t,scope:r,accountId:n,popup:o=false}){let s=btoa(JSON.stringify({provider:t,scope:r,accountId:n}));super(`${e.prefix}: ${s}${o?" --popup":" end"}`);}jsonRpcError(){return {code:e.jsonRpcCode,message:this.message}}static check(t){return t?.message?.startsWith(e.prefix)}};function Ge({baseUrl:e,realtimeDomain:t,guestServicesUrl:r}){globalThis.env||(globalThis.env={},globalThis.env.BASE_URL=e,globalThis.env.REALTIME_DOMAIN=t,globalThis.env.GUEST_SERVICES_URL=r,console.log("Adaptive SDK server environment initialized"));}var Q=new AsyncLocalStorage,k=null,K=new Set,P=null;function u(){return k||(k=createTRPCProxyClient({transformer:_,links:[httpLink({url:env.GUEST_SERVICES_URL,transformer:_,headers:()=>{let e=M();if(!e)throw new Error("Missing request context");return {"x-request-id":e.requestId}}})]})),k}function M(){return Q.getStore()}function he(e){let t=M();t&&Object.assign(t,e);}async function We(e,t){return Q.run(e,t)}function J(e){throw new h({provider:e?.provider??"AC1",popup:true})}async function Ke(e){let r=await u().getCurrentUser.mutate(e);if(r?.error==="SEED")throw new Error('Call to "getUserId" in seed function is not allowed. Seed functions should not depend on user data.');if(!r?.userId){if(e?.throwIfNotLoggedIn??true)throw new h({provider:"AC1"});return null}return r.userId}async function Je(e){let r=await u().getCurrentUser.mutate({throwIfNotLoggedIn:e?.required});if(r?.error==="SEED")throw new Error('Call to "getAuth" in seed function is not allowed. Seed functions should not depend on user data.');if(r.userId)return {userId:r.userId,status:"authenticated",signIn:J,providers:r.providers};if(e?.required)throw new h({provider:"AC1"});return {userId:null,status:"unauthenticated",signIn:J,providers:[]}}async function He(e){let t=u(),r=await t.upsertTaskStatus.mutate({status:"RUNNING"});return K.add(r.id),he({hasTasks:true}),(async()=>{let n=r.id;try{await e(),await t.upsertTaskStatus.mutate({id:n,status:"COMPLETED"});}catch(o){console.error(`Task ${n} failed:`,o.message),await t.upsertTaskStatus.mutate({id:n,status:"FAILED",error:o});}finally{K.delete(r.id);}})(),r}async function Qe(e){return await u().getTaskStatus.mutate({id:e})}async function Ze(e){let t=u(),r={...e,schema:S.toJSONSchema(e.schema)};return await t.extractStructuredDataFromContent.mutate(r)}async function Xe(e){return await u().extractTextFromContent.mutate(e)}async function et(e){let t=u(),{stream:r,onProgress:n,...o}=e,s={...o,returnType:S.toJSONSchema(e.returnType),customTools:e.customTools?.map(d=>({...d,inputSchema:S.toJSONSchema(d.inputSchema)}))};if(r??n){let d=nanoid(32),a=new WebSocket(`wss://${env.REALTIME_DOMAIN}/${d}`),l=-1,c=p=>{P=Date.now();try{let g=JSON.parse(p.data.toString());if(g?.id&&g.id>l){let Z=_.parse(g.payload);g.requestAgentToolCalls instanceof Array?n?.(g.requestAgentToolCalls):r?.(Z),l=g.id;}}catch{}};a.addEventListener("message",c);let m=await t.requestMultimodalModel.mutate({...s,realtimeChannelId:d});return r&&r(m),a.close(),a.removeEventListener("message",c),m}return await t.requestMultimodalModel.mutate(s)}async function tt(e){return await u().textToImage.mutate(e)}async function rt(e){return await u().textToSpeech.mutate(e)}async function nt(e){return await u().generateSoundEffect.mutate(e)}async function ot(e){return await u().generateDialogue.mutate(e)}async function st(e){return await u().generateMusic.mutate(e)}async function it(e){let t=u(),r;return typeof e.bufferOrBase64=="string"?r=e.bufferOrBase64:r=e.bufferOrBase64.toString("base64"),await t.uploadToBucket.mutate({base64:r,fileName:e.fileName})}async function at(e){return await u().getOAuthToken.mutate({connectionId:e.connectionId})}async function ut(e){let r=await u().getOAuthConnectionForCurrentUser.mutate({...e,scope:e.scope??[]});if(!r&&e.required)throw new h({provider:e.provider,scope:e.scope,popup:true});return r}async function ct(e){return await u().getOAuthConnection.mutate(e)}async function dt(e){return await u().queryOAuthConnections.mutate(e)}async function lt(e){return await u().deleteOAuthConnection.mutate(e)}async function ft(e){await u().sendEmail.mutate(e);}async function pt(e){let t=u();if(!e.email)throw new Error("Email is required");if(!e.markdown)throw new Error("`markdown` content is required when inviting by email");return await t.inviteUser.mutate(e)}async function mt(e){return await u().searchWithGoogle.mutate(e)}async function gt(){return await u().isAppOwner.mutate()}async function wt(e){return await u().generateCrossAppToken.mutate(e)}async function ht(e){return await u().createProduct.mutate(e)}async function yt(){return await u().listProducts.mutate()}async function Et(e){return await u().listUserPurchases.mutate(e)}async function Tt(e){await u().discontinueProduct.mutate(e);}function _t({channelId:e,onUpdate:t}){let r=new WebSocket(`wss://${env.REALTIME_DOMAIN}/${e}`),n=-1;function o(s){t&&(P=Date.now());try{let i=JSON.parse(s.data.toString());if(i?.id&&i.id>n){let d=_.parse(i.payload);t?.(d),n=i.id;}}catch{}}return r.addEventListener("message",o),{destroy(){r.close(),r.removeEventListener("message",o);}}}async function H({channelId:e,data:t}){P=Date.now(),await fetch(`https://${env.REALTIME_DOMAIN}/${e}`,{method:"POST",body:_.stringify(t)}).catch(console.error);}async function Rt(){let e,t=M()?.channelId;if(!t)throw new Error("API's using `startRealtimeResponse` must be called via `useRealtimeMutation`.");return {next(r){e=r,H({channelId:t,data:r});},end(){return H({channelId:t,data:e}),e}}}async function St(e){return await u().getTTSVoicesCatalog.mutate(e)}async function Pt(e){return await u().getDialogueVoicesCatalog.mutate(e)}async function vt(e){return await u().getImageModelsCatalog.mutate(e)}function xt(){return env.BASE_URL}function Ot(){return P}
|
|
2
|
+
export{ht as createProduct,lt as deleteOAuthConnection,Tt as discontinueProduct,Xe as extractTextFromContent,wt as generateCrossAppToken,ot as generateDialogue,st as generateMusic,nt as generateSoundEffect,Je as getAuth,xt as getBaseUrl,Pt as getDialogueVoicesCatalog,vt as getImageModelsCatalog,Ot as getLastStreamTime,ct as getOAuthConnection,ut as getOAuthConnectionForCurrentUser,at as getOAuthToken,_t as getRealtimeStore,M as getRequestContext,Ze as getStructuredDataFromContent,St as getTTSVoicesCatalog,Qe as getTaskStatus,Ke as getUserId,Ge as initializeServerEnvironment,pt as inviteUser,gt as isAppOwner,yt as listProducts,Et as listUserPurchases,dt as queryOAuthConnections,He as queueTask,et as requestMultimodalModel,We as runWithContext,mt as searchWithGoogle,ft as sendEmail,H as setRealtimeStore,he as setRequestContext,Rt as startRealtimeResponse,tt as textToImage,rt as textToSpeech,it as upload};
|