@swishapp/api-client 0.25.0 → 0.27.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.d.ts +16 -6
- package/dist/index.js +4 -4
- package/dist/openapi/sdk.gen.d.ts +8 -1
- package/dist/openapi/types.gen.d.ts +336 -8
- package/dist/types.d.ts +6 -1
- package/package.json +1 -1
package/dist/client.d.ts
CHANGED
|
@@ -1,19 +1,23 @@
|
|
|
1
1
|
import type { SwishClientConfig, SwishClientOptions, ApiResponse, PaginatedApiResponse } from "./types";
|
|
2
2
|
import type * as types from "./openapi/types.gen";
|
|
3
|
-
export declare const
|
|
4
|
-
export declare const
|
|
3
|
+
export declare const defaultApiVersion = "2026-01";
|
|
4
|
+
export declare const defaultProxyBaseUrl = "/apps/wishlist/api";
|
|
5
5
|
export declare const createApiClient: (options: SwishClientOptions) => SwishClient;
|
|
6
6
|
export type { SwishClient };
|
|
7
7
|
declare class SwishClient {
|
|
8
8
|
private authToken?;
|
|
9
9
|
private profile?;
|
|
10
|
-
private
|
|
10
|
+
private useProxy;
|
|
11
|
+
private version;
|
|
12
|
+
private readonly proxyClient;
|
|
13
|
+
private readonly directClient;
|
|
11
14
|
constructor(options: SwishClientOptions);
|
|
12
15
|
setProfile(profile: string): void;
|
|
13
16
|
getProfile(): string | undefined;
|
|
14
17
|
setAuthToken(authToken: string): void;
|
|
15
|
-
setConfig(config: SwishClientConfig): void;
|
|
16
|
-
|
|
18
|
+
setConfig({ proxyBaseUrl, baseUrl, useProxy, ...config }: SwishClientConfig): void;
|
|
19
|
+
proxyRequestInterceptor(request: Request): Request;
|
|
20
|
+
directRequestInterceptor(request: Request): Request;
|
|
17
21
|
readonly items: {
|
|
18
22
|
list: (query?: types.ItemControllerFindData["query"]) => Promise<PaginatedApiResponse<types.Item>>;
|
|
19
23
|
create: (items: types.CreateItemInput) => Promise<ApiResponse<types.Item>>;
|
|
@@ -36,9 +40,15 @@ declare class SwishClient {
|
|
|
36
40
|
};
|
|
37
41
|
readonly profiles: {
|
|
38
42
|
customerAccountsVersion: () => Promise<ApiResponse<types.AccountsVersionResult>>;
|
|
39
|
-
createToken: (body?: types.CreateProfileTokenInput
|
|
43
|
+
createToken: (body?: types.CreateProfileTokenInput, options?: {
|
|
44
|
+
useProxy?: boolean;
|
|
45
|
+
}) => Promise<ApiResponse<types.CreateProfileTokenResult>>;
|
|
40
46
|
identify: (body: types.IdentifyProfileInput) => Promise<ApiResponse<types.IdentifyProfileResult>>;
|
|
41
47
|
};
|
|
48
|
+
readonly orders: {
|
|
49
|
+
list: (query?: types.OrdersControllerFindData["query"]) => Promise<PaginatedApiResponse<types.OrderDto>>;
|
|
50
|
+
findById: (orderId: number) => Promise<ApiResponse<types.OrderDetailDto>>;
|
|
51
|
+
};
|
|
42
52
|
private readonly handleRequest;
|
|
43
53
|
private readonly handlePaginatedRequest;
|
|
44
54
|
}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
var
|
|
1
|
+
var ke=Object.defineProperty;var n=(e,r)=>ke(e,"name",{value:r,configurable:!0});var j={bodySerializer:n(e=>JSON.stringify(e,(r,t)=>typeof t=="bigint"?t.toString():t),"bodySerializer")};var De={$body_:"body",$headers_:"headers",$path_:"path",$query_:"query"},Me=Object.entries(De);var _=n(({onRequest:e,onSseError:r,onSseEvent:t,responseTransformer:o,responseValidator:s,sseDefaultRetryDelay:p,sseMaxRetryAttempts:d,sseMaxRetryDelay:a,sseSleepFn:l,url:u,...i})=>{let h,k=l??(c=>new Promise(C=>setTimeout(C,c)));return{stream:n(async function*(){let c=p??3e3,C=0,R=i.signal??new AbortController().signal;for(;!R.aborted;){C++;let D=i.headers instanceof Headers?i.headers:new Headers(i.headers);h!==void 0&&D.set("Last-Event-ID",h);try{let T={redirect:"follow",...i,body:i.serializedBody,headers:D,signal:R},I=new Request(u,T);e&&(I=await e(u,T));let m=await(i.fetch??globalThis.fetch)(I);if(!m.ok)throw new Error(`SSE failed: ${m.status} ${m.statusText}`);if(!m.body)throw new Error("No body in SSE response");let g=m.body.pipeThrough(new TextDecoderStream).getReader(),F="",V=n(()=>{try{g.cancel()}catch{}},"abortHandler");R.addEventListener("abort",V);try{for(;;){let{done:Te,value:we}=await g.read();if(Te)break;F+=we;let M=F.split(`
|
|
2
2
|
|
|
3
|
-
`);
|
|
4
|
-
`),
|
|
5
|
-
`);try{w=JSON.parse(I),Q=!0}catch{w=I}}Q&&(i&&await i(w),o&&(w=await o(w))),r==null||r({data:w,event:W,id:f,retry:c}),A.length&&(yield w)}}}finally{R.removeEventListener("abort",V),O.releaseLock()}break}catch(T){if(t==null||t(T),d!==void 0&&m>=d)break;let g=Math.min(c*2**(m-1),a??3e4);await E(g)}}},"createStream")()}},"createSseClient");var Ee=n(e=>{switch(e){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},"separatorArrayExplode"),Le=n(e=>{switch(e){case"form":return",";case"pipeDelimited":return"|";case"spaceDelimited":return"%20";default:return","}},"separatorArrayNoExplode"),De=n(e=>{switch(e){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},"separatorObjectExplode"),B=n(({allowReserved:e,explode:t,name:r,style:o,value:i})=>{if(!t){let a=(e?i:i.map(l=>encodeURIComponent(l))).join(Le(o));switch(o){case"label":return`.${a}`;case"matrix":return`;${r}=${a}`;case"simple":return a;default:return`${r}=${a}`}}let p=Ee(o),d=i.map(a=>o==="label"||o==="simple"?e?a:encodeURIComponent(a):x({allowReserved:e,name:r,value:a})).join(p);return o==="label"||o==="matrix"?p+d:d},"serializeArrayParam"),x=n(({allowReserved:e,name:t,value:r})=>{if(r==null)return"";if(typeof r=="object")throw new Error("Deeply-nested arrays/objects aren\u2019t supported. Provide your own `querySerializer()` to handle these.");return`${t}=${e?r:encodeURIComponent(r)}`},"serializePrimitiveParam"),P=n(({allowReserved:e,explode:t,name:r,style:o,value:i,valueOnly:p})=>{if(i instanceof Date)return p?i.toISOString():`${r}=${i.toISOString()}`;if(o!=="deepObject"&&!t){let l=[];Object.entries(i).forEach(([s,f])=>{l=[...l,s,e?f:encodeURIComponent(f)]});let u=l.join(",");switch(o){case"form":return`${r}=${u}`;case"label":return`.${u}`;case"matrix":return`;${r}=${u}`;default:return u}}let d=De(o),a=Object.entries(i).map(([l,u])=>x({allowReserved:e,name:o==="deepObject"?`${r}[${l}]`:l,value:u})).join(d);return o==="label"||o==="matrix"?d+a:a},"serializeObjectParam");var qe=/\{[^{}]+\}/g,ke=n(({path:e,url:t})=>{let r=t,o=t.match(qe);if(o)for(let i of o){let p=!1,d=i.substring(1,i.length-1),a="simple";d.endsWith("*")&&(p=!0,d=d.substring(0,d.length-1)),d.startsWith(".")?(d=d.substring(1),a="label"):d.startsWith(";")&&(d=d.substring(1),a="matrix");let l=e[d];if(l==null)continue;if(Array.isArray(l)){r=r.replace(i,B({explode:p,name:d,style:a,value:l}));continue}if(typeof l=="object"){r=r.replace(i,P({explode:p,name:d,style:a,value:l,valueOnly:!0}));continue}if(a==="matrix"){r=r.replace(i,`;${x({name:d,value:l})}`);continue}let u=encodeURIComponent(a==="label"?`.${l}`:l);r=r.replace(i,u)}return r},"defaultPathSerializer"),K=n(({baseUrl:e,path:t,query:r,querySerializer:o,url:i})=>{let p=i.startsWith("/")?i:`/${i}`,d=(e??"")+p;t&&(d=ke({path:t,url:d}));let a=r?o(r):"";return a.startsWith("?")&&(a=a.substring(1)),a&&(d+=`?${a}`),d},"getUrl");function G(e){let t=e.body!==void 0;if(t&&e.bodySerializer)return"serializedBody"in e?e.serializedBody!==void 0&&e.serializedBody!==""?e.serializedBody:null:e.body!==""?e.body:null;if(t)return e.body}n(G,"getValidRequestBody");var X=n(async(e,t)=>{let r=typeof t=="function"?await t(e):t;if(r)return e.scheme==="bearer"?`Bearer ${r}`:e.scheme==="basic"?`Basic ${btoa(r)}`:r},"getAuthToken");var Y=n(({allowReserved:e,array:t,object:r}={})=>n(i=>{let p=[];if(i&&typeof i=="object")for(let d in i){let a=i[d];if(a!=null)if(Array.isArray(a)){let l=B({allowReserved:e,explode:!0,name:d,style:"form",value:a,...t});l&&p.push(l)}else if(typeof a=="object"){let l=P({allowReserved:e,explode:!0,name:d,style:"deepObject",value:a,...r});l&&p.push(l)}else{let l=x({allowReserved:e,name:d,value:a});l&&p.push(l)}}return p.join("&")},"querySerializer"),"createQuerySerializer"),Z=n(e=>{var r;if(!e)return"stream";let t=(r=e.split(";")[0])==null?void 0:r.trim();if(t){if(t.startsWith("application/json")||t.endsWith("+json"))return"json";if(t==="multipart/form-data")return"formData";if(["application/","audio/","image/","video/"].some(o=>t.startsWith(o)))return"blob";if(t.startsWith("text/"))return"text"}},"getParseAs"),Ae=n((e,t)=>{var r,o;return t?!!(e.headers.has(t)||(r=e.query)!=null&&r[t]||(o=e.headers.get("Cookie"))!=null&&o.includes(`${t}=`)):!1},"checkForExistence"),ee=n(async({security:e,...t})=>{for(let r of e){if(Ae(t,r.name))continue;let o=await X(r,t.auth);if(!o)continue;let i=r.name??"Authorization";switch(r.in){case"query":t.query||(t.query={}),t.query[i]=o;break;case"cookie":t.headers.append("Cookie",`${i}=${o}`);break;case"header":default:t.headers.set(i,o);break}}},"setAuthParams"),v=n(e=>K({baseUrl:e.baseUrl,path:e.path,query:e.query,querySerializer:typeof e.querySerializer=="function"?e.querySerializer:Y(e.querySerializer),url:e.url}),"buildUrl"),U=n((e,t)=>{var o;let r={...e,...t};return(o=r.baseUrl)!=null&&o.endsWith("/")&&(r.baseUrl=r.baseUrl.substring(0,r.baseUrl.length-1)),r.headers=z(e.headers,t.headers),r},"mergeConfigs"),Be=n(e=>{let t=[];return e.forEach((r,o)=>{t.push([o,r])}),t},"headersEntries"),z=n((...e)=>{let t=new Headers;for(let r of e){if(!r)continue;let o=r instanceof Headers?Be(r):Object.entries(r);for(let[i,p]of o)if(p===null)t.delete(i);else if(Array.isArray(p))for(let d of p)t.append(i,d);else p!==void 0&&t.set(i,typeof p=="object"?JSON.stringify(p):p)}return t},"mergeHeaders"),$=class ${constructor(){this.fns=[]}clear(){this.fns=[]}eject(t){let r=this.getInterceptorIndex(t);this.fns[r]&&(this.fns[r]=null)}exists(t){let r=this.getInterceptorIndex(t);return!!this.fns[r]}getInterceptorIndex(t){return typeof t=="number"?this.fns[t]?t:-1:this.fns.indexOf(t)}update(t,r){let o=this.getInterceptorIndex(t);return this.fns[o]?(this.fns[o]=r,t):!1}use(t){return this.fns.push(t),this.fns.length-1}};n($,"Interceptors");var D=$,te=n(()=>({error:new D,request:new D,response:new D}),"createInterceptors"),Pe=Y({allowReserved:!1,array:{explode:!0,style:"form"},object:{explode:!0,style:"deepObject"}}),ze={"Content-Type":"application/json"},S=n((e={})=>({...F,headers:ze,parseAs:"auto",querySerializer:Pe,...e}),"createConfig");var q=n((e={})=>{let t=U(S(),e),r=n(()=>({...t}),"getConfig"),o=n(u=>(t=U(t,u),r()),"setConfig"),i=te(),p=n(async u=>{let s={...t,...u,fetch:u.fetch??t.fetch??globalThis.fetch,headers:z(t.headers,u.headers),serializedBody:void 0};s.security&&await ee({...s,security:s.security}),s.requestValidator&&await s.requestValidator(s),s.body!==void 0&&s.bodySerializer&&(s.serializedBody=s.bodySerializer(s.body)),(s.body===void 0||s.serializedBody==="")&&s.headers.delete("Content-Type");let f=v(s);return{opts:s,url:f}},"beforeRequest"),d=n(async u=>{let{opts:s,url:f}=await p(u),E={redirect:"follow",...s,body:G(s)},b=new Request(f,E);for(let h of i.request.fns)h&&(b=await h(b,s));let k=s.fetch,c=await k(b);for(let h of i.response.fns)h&&(c=await h(c,b,s));let m={request:b,response:c};if(c.ok){let h=(s.parseAs==="auto"?Z(c.headers.get("Content-Type")):s.parseAs)??"json";if(c.status===204||c.headers.get("Content-Length")==="0"){let O;switch(h){case"arrayBuffer":case"blob":case"text":O=await c[h]();break;case"formData":O=new FormData;break;case"stream":O=c.body;break;case"json":default:O={};break}return s.responseStyle==="data"?O:{data:O,...m}}let C;switch(h){case"arrayBuffer":case"blob":case"formData":case"json":case"text":C=await c[h]();break;case"stream":return s.responseStyle==="data"?c.body:{data:c.body,...m}}return h==="json"&&(s.responseValidator&&await s.responseValidator(C),s.responseTransformer&&(C=await s.responseTransformer(C))),s.responseStyle==="data"?C:{data:C,...m}}let R=await c.text(),L;try{L=JSON.parse(R)}catch{}let T=L??R,g=T;for(let h of i.error.fns)h&&(g=await h(T,c,b,s));if(g=g||{},s.throwOnError)throw g;return s.responseStyle==="data"?void 0:{error:g,...m}},"request"),a=n(u=>s=>d({...s,method:u}),"makeMethodFn"),l=n(u=>async s=>{let{opts:f,url:E}=await p(s);return _({...f,body:f.body,headers:f.headers,method:u,onRequest:n(async(b,k)=>{let c=new Request(b,k);for(let m of i.request.fns)m&&(c=await m(c,f));return c},"onRequest"),url:E})},"makeSseFn");return{buildUrl:v,connect:a("CONNECT"),delete:a("DELETE"),get:a("GET"),getConfig:r,head:a("HEAD"),interceptors:i,options:a("OPTIONS"),patch:a("PATCH"),post:a("POST"),put:a("PUT"),request:d,setConfig:o,sse:{connect:l("CONNECT"),delete:l("DELETE"),get:l("GET"),head:l("HEAD"),options:l("OPTIONS"),patch:l("PATCH"),post:l("POST"),put:l("PUT"),trace:l("TRACE")},trace:a("TRACE")}},"createClient");var y=q(S({baseUrl:"https://swish.app/api/2025-10"}));var re=n(e=>((e==null?void 0:e.client)??y).get({security:[{scheme:"bearer",type:"http"}],url:"/lists",...e}),"listControllerFind"),ne=n(e=>(e.client??y).post({security:[{scheme:"bearer",type:"http"}],url:"/lists",...e,headers:{"Content-Type":"application/json",...e.headers}}),"listControllerCreate"),oe=n(e=>(e.client??y).delete({security:[{scheme:"bearer",type:"http"}],url:"/lists/{listId}",...e}),"listControllerDeleteById"),se=n(e=>(e.client??y).get({security:[{scheme:"bearer",type:"http"}],url:"/lists/{listId}",...e}),"listControllerFindById"),ie=n(e=>(e.client??y).patch({security:[{scheme:"bearer",type:"http"}],url:"/lists/{listId}",...e,headers:{"Content-Type":"application/json",...e.headers}}),"listControllerUpdateById"),ae=n(e=>(e.client??y).put({security:[{scheme:"bearer",type:"http"}],url:"/lists/{listId}/items/order",...e,headers:{"Content-Type":"application/json",...e.headers}}),"listControllerSetListItemsOrder"),le=n(e=>(e.client??y).post({security:[{scheme:"bearer",type:"http"}],url:"/lists/{listId}/items",...e,headers:{"Content-Type":"application/json",...e.headers}}),"listControllerAddItemsToList"),de=n(e=>(e.client??y).delete({security:[{scheme:"bearer",type:"http"}],url:"/lists/{listId}/items/{itemId}",...e}),"listControllerRemoveItemFromList"),pe=n(e=>(e.client??y).delete({security:[{scheme:"bearer",type:"http"}],url:"/items",...e,headers:{"Content-Type":"application/json",...e.headers}}),"itemControllerDelete"),ce=n(e=>((e==null?void 0:e.client)??y).get({security:[{scheme:"bearer",type:"http"}],url:"/items",...e}),"itemControllerFind"),ue=n(e=>(e.client??y).post({security:[{scheme:"bearer",type:"http"}],url:"/items",...e,headers:{"Content-Type":"application/json",...e.headers}}),"itemControllerCreate"),ye=n(e=>((e==null?void 0:e.client)??y).get({security:[{scheme:"bearer",type:"http"}],url:"/items/count",...e}),"itemControllerCount"),fe=n(e=>(e.client??y).delete({security:[{scheme:"bearer",type:"http"}],url:"/items/{itemId}",...e}),"itemControllerDeleteById"),he=n(e=>(e.client??y).get({security:[{scheme:"bearer",type:"http"}],url:"/items/{itemId}",...e}),"itemControllerFindById"),me=n(e=>(e.client??y).patch({security:[{scheme:"bearer",type:"http"}],url:"/items/{itemId}",...e,headers:{"Content-Type":"application/json",...e.headers}}),"itemControllerUpdateById"),Ce=n(e=>(e.client??y).put({security:[{scheme:"bearer",type:"http"}],url:"/items/{itemId}/lists",...e,headers:{"Content-Type":"application/json",...e.headers}}),"itemControllerSetListsById"),Ie=n(e=>((e==null?void 0:e.client)??y).get({security:[{scheme:"bearer",type:"http"}],url:"/profiles/accounts-version",...e}),"profileControllerCustomerAccountsVersion"),ge=n(e=>(e.client??y).post({security:[{scheme:"bearer",type:"http"}],url:"/profiles/identify",...e,headers:{"Content-Type":"application/json",...e.headers}}),"profileControllerIdentify"),Oe=n(e=>(e.client??y).post({security:[{scheme:"bearer",type:"http"}],url:"/profiles/token",...e,headers:{"Content-Type":"application/json",...e.headers}}),"profileControllerCreateToken");var Fe="2025-10",ve=`https://swish.app/api/${Fe}`,xt=n(e=>new N(e),"createApiClient"),H=class H{constructor(t){this.client=q(S({baseUrl:ve}));this.items={list:n(t=>this.handlePaginatedRequest(ce({query:t,client:this.client})),"list"),create:n(t=>this.handleRequest(ue({body:t,client:this.client})),"create"),delete:n(t=>this.handleRequest(pe({body:{itemIds:t},client:this.client})),"delete"),findById:n(t=>this.handleRequest(he({path:{itemId:t},client:this.client})),"findById"),updateById:n((t,r)=>this.handleRequest(me({body:r,path:{itemId:t},client:this.client})),"updateById"),deleteById:n(t=>this.handleRequest(fe({path:{itemId:t},client:this.client})),"deleteById"),setListsById:n((t,r)=>this.handleRequest(Ce({body:{listIds:r},path:{itemId:t},client:this.client})),"setListsById"),count:n(()=>this.handleRequest(ye({client:this.client})),"count")};this.lists={list:n(t=>this.handlePaginatedRequest(re({query:t,client:this.client})),"list"),create:n(t=>this.handleRequest(ne({body:t,client:this.client})),"create"),findById:n(t=>this.handleRequest(se({path:{listId:t},client:this.client})),"findById"),updateById:n((t,r)=>this.handleRequest(ie({body:r,path:{listId:t},client:this.client})),"updateById"),deleteById:n(t=>this.handleRequest(oe({path:{listId:t},client:this.client})),"deleteById"),orderItems:n((t,r)=>this.handleRequest(ae({body:{itemIds:r},path:{listId:t},client:this.client})),"orderItems"),addItemsToList:n((t,r)=>this.handleRequest(le({body:{itemIds:r},path:{listId:t},client:this.client})),"addItemsToList"),removeItemFromList:n((t,r)=>this.handleRequest(de({path:{listId:t,itemId:r},client:this.client})),"removeItemFromList")};this.profiles={customerAccountsVersion:n(()=>this.handleRequest(Ie({client:this.client})),"customerAccountsVersion"),createToken:n((t={})=>this.handleRequest(Oe({body:t,client:this.client})),"createToken"),identify:n(t=>this.handleRequest(ge({body:t,client:this.client})),"identify")};this.handleRequest=n(async t=>{let{data:r,error:o}=await t;return o!=null&&o.error?{error:o.error}:{data:r==null?void 0:r.data}},"handleRequest");this.handlePaginatedRequest=n(async t=>{var i;let{data:r,error:o}=await t;return o!=null&&o.error?{error:o.error}:{data:(r==null?void 0:r.data)??[],pageInfo:(r==null?void 0:r.pageInfo)??{next:null,previous:null,totalCount:((i=r==null?void 0:r.data)==null?void 0:i.length)??0}}},"handlePaginatedRequest");this.profile=t.profile,t.authToken&&(this.authToken=t.authToken),t.config&&this.client.setConfig(t.config),this.client.interceptors.request.use(this.requestInterceptor.bind(this)),t.requestInterceptor&&this.client.interceptors.request.use(t.requestInterceptor),t.responseInterceptor&&this.client.interceptors.response.use(t.responseInterceptor)}setProfile(t){this.profile=t}getProfile(){return this.profile}setAuthToken(t){this.authToken=t}setConfig(t){this.client.setConfig(t)}requestInterceptor(t){return this.authToken&&t.headers.set("Authorization",`Bearer ${this.authToken}`),this.profile&&t.headers.set("Profile",this.profile),t}};n(H,"SwishClient");var N=H;export{Fe as apiVersion,ve as baseUrl,xt as createApiClient};
|
|
3
|
+
`);F=M.pop()??"";for(let Ee of M){let Se=Ee.split(`
|
|
4
|
+
`),P=[],W;for(let O of Se)if(O.startsWith("data:"))P.push(O.replace(/^data:\s*/,""));else if(O.startsWith("event:"))W=O.replace(/^event:\s*/,"");else if(O.startsWith("id:"))h=O.replace(/^id:\s*/,"");else if(O.startsWith("retry:")){let J=Number.parseInt(O.replace(/^retry:\s*/,""),10);Number.isNaN(J)||(c=J)}let w,Q=!1;if(P.length){let O=P.join(`
|
|
5
|
+
`);try{w=JSON.parse(O),Q=!0}catch{w=O}}Q&&(s&&await s(w),o&&(w=await o(w))),t==null||t({data:w,event:W,id:h,retry:c}),P.length&&(yield w)}}}finally{R.removeEventListener("abort",V),g.releaseLock()}break}catch(T){if(r==null||r(T),d!==void 0&&C>=d)break;let I=Math.min(c*2**(C-1),a??3e4);await k(I)}}},"createStream")()}},"createSseClient");var qe=n(e=>{switch(e){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},"separatorArrayExplode"),Le=n(e=>{switch(e){case"form":return",";case"pipeDelimited":return"|";case"spaceDelimited":return"%20";default:return","}},"separatorArrayNoExplode"),Pe=n(e=>{switch(e){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},"separatorObjectExplode"),A=n(({allowReserved:e,explode:r,name:t,style:o,value:s})=>{if(!r){let a=(e?s:s.map(l=>encodeURIComponent(l))).join(Le(o));switch(o){case"label":return`.${a}`;case"matrix":return`;${t}=${a}`;case"simple":return a;default:return`${t}=${a}`}}let p=qe(o),d=s.map(a=>o==="label"||o==="simple"?e?a:encodeURIComponent(a):E({allowReserved:e,name:t,value:a})).join(p);return o==="label"||o==="matrix"?p+d:d},"serializeArrayParam"),E=n(({allowReserved:e,name:r,value:t})=>{if(t==null)return"";if(typeof t=="object")throw new Error("Deeply-nested arrays/objects aren\u2019t supported. Provide your own `querySerializer()` to handle these.");return`${r}=${e?t:encodeURIComponent(t)}`},"serializePrimitiveParam"),B=n(({allowReserved:e,explode:r,name:t,style:o,value:s,valueOnly:p})=>{if(s instanceof Date)return p?s.toISOString():`${t}=${s.toISOString()}`;if(o!=="deepObject"&&!r){let l=[];Object.entries(s).forEach(([i,h])=>{l=[...l,i,e?h:encodeURIComponent(h)]});let u=l.join(",");switch(o){case"form":return`${t}=${u}`;case"label":return`.${u}`;case"matrix":return`;${t}=${u}`;default:return u}}let d=Pe(o),a=Object.entries(s).map(([l,u])=>E({allowReserved:e,name:o==="deepObject"?`${t}[${l}]`:l,value:u})).join(d);return o==="label"||o==="matrix"?d+a:a},"serializeObjectParam");var Ae=/\{[^{}]+\}/g,Be=n(({path:e,url:r})=>{let t=r,o=r.match(Ae);if(o)for(let s of o){let p=!1,d=s.substring(1,s.length-1),a="simple";d.endsWith("*")&&(p=!0,d=d.substring(0,d.length-1)),d.startsWith(".")?(d=d.substring(1),a="label"):d.startsWith(";")&&(d=d.substring(1),a="matrix");let l=e[d];if(l==null)continue;if(Array.isArray(l)){t=t.replace(s,A({explode:p,name:d,style:a,value:l}));continue}if(typeof l=="object"){t=t.replace(s,B({explode:p,name:d,style:a,value:l,valueOnly:!0}));continue}if(a==="matrix"){t=t.replace(s,`;${E({name:d,value:l})}`);continue}let u=encodeURIComponent(a==="label"?`.${l}`:l);t=t.replace(s,u)}return t},"defaultPathSerializer"),K=n(({baseUrl:e,path:r,query:t,querySerializer:o,url:s})=>{let p=s.startsWith("/")?s:`/${s}`,d=(e??"")+p;r&&(d=Be({path:r,url:d}));let a=t?o(t):"";return a.startsWith("?")&&(a=a.substring(1)),a&&(d+=`?${a}`),d},"getUrl");function G(e){let r=e.body!==void 0;if(r&&e.bodySerializer)return"serializedBody"in e?e.serializedBody!==void 0&&e.serializedBody!==""?e.serializedBody:null:e.body!==""?e.body:null;if(r)return e.body}n(G,"getValidRequestBody");var X=n(async(e,r)=>{let t=typeof r=="function"?await r(e):r;if(t)return e.scheme==="bearer"?`Bearer ${t}`:e.scheme==="basic"?`Basic ${btoa(t)}`:t},"getAuthToken");var Y=n(({allowReserved:e,array:r,object:t}={})=>n(s=>{let p=[];if(s&&typeof s=="object")for(let d in s){let a=s[d];if(a!=null)if(Array.isArray(a)){let l=A({allowReserved:e,explode:!0,name:d,style:"form",value:a,...r});l&&p.push(l)}else if(typeof a=="object"){let l=B({allowReserved:e,explode:!0,name:d,style:"deepObject",value:a,...t});l&&p.push(l)}else{let l=E({allowReserved:e,name:d,value:a});l&&p.push(l)}}return p.join("&")},"querySerializer"),"createQuerySerializer"),Z=n(e=>{var t;if(!e)return"stream";let r=(t=e.split(";")[0])==null?void 0:t.trim();if(r){if(r.startsWith("application/json")||r.endsWith("+json"))return"json";if(r==="multipart/form-data")return"formData";if(["application/","audio/","image/","video/"].some(o=>r.startsWith(o)))return"blob";if(r.startsWith("text/"))return"text"}},"getParseAs"),ze=n((e,r)=>{var t,o;return r?!!(e.headers.has(r)||(t=e.query)!=null&&t[r]||(o=e.headers.get("Cookie"))!=null&&o.includes(`${r}=`)):!1},"checkForExistence"),ee=n(async({security:e,...r})=>{for(let t of e){if(ze(r,t.name))continue;let o=await X(t,r.auth);if(!o)continue;let s=t.name??"Authorization";switch(t.in){case"query":r.query||(r.query={}),r.query[s]=o;break;case"cookie":r.headers.append("Cookie",`${s}=${o}`);break;case"header":default:r.headers.set(s,o);break}}},"setAuthParams"),v=n(e=>K({baseUrl:e.baseUrl,path:e.path,query:e.query,querySerializer:typeof e.querySerializer=="function"?e.querySerializer:Y(e.querySerializer),url:e.url}),"buildUrl"),U=n((e,r)=>{var o;let t={...e,...r};return(o=t.baseUrl)!=null&&o.endsWith("/")&&(t.baseUrl=t.baseUrl.substring(0,t.baseUrl.length-1)),t.headers=z(e.headers,r.headers),t},"mergeConfigs"),Fe=n(e=>{let r=[];return e.forEach((t,o)=>{r.push([o,t])}),r},"headersEntries"),z=n((...e)=>{let r=new Headers;for(let t of e){if(!t)continue;let o=t instanceof Headers?Fe(t):Object.entries(t);for(let[s,p]of o)if(p===null)r.delete(s);else if(Array.isArray(p))for(let d of p)r.append(s,d);else p!==void 0&&r.set(s,typeof p=="object"?JSON.stringify(p):p)}return r},"mergeHeaders"),$=class ${constructor(){this.fns=[]}clear(){this.fns=[]}eject(r){let t=this.getInterceptorIndex(r);this.fns[t]&&(this.fns[t]=null)}exists(r){let t=this.getInterceptorIndex(r);return!!this.fns[t]}getInterceptorIndex(r){return typeof r=="number"?this.fns[r]?r:-1:this.fns.indexOf(r)}update(r,t){let o=this.getInterceptorIndex(r);return this.fns[o]?(this.fns[o]=t,r):!1}use(r){return this.fns.push(r),this.fns.length-1}};n($,"Interceptors");var q=$,re=n(()=>({error:new q,request:new q,response:new q}),"createInterceptors"),je=Y({allowReserved:!1,array:{explode:!0,style:"form"},object:{explode:!0,style:"deepObject"}}),ve={"Content-Type":"application/json"},x=n((e={})=>({...j,headers:ve,parseAs:"auto",querySerializer:je,...e}),"createConfig");var S=n((e={})=>{let r=U(x(),e),t=n(()=>({...r}),"getConfig"),o=n(u=>(r=U(r,u),t()),"setConfig"),s=re(),p=n(async u=>{let i={...r,...u,fetch:u.fetch??r.fetch??globalThis.fetch,headers:z(r.headers,u.headers),serializedBody:void 0};i.security&&await ee({...i,security:i.security}),i.requestValidator&&await i.requestValidator(i),i.body!==void 0&&i.bodySerializer&&(i.serializedBody=i.bodySerializer(i.body)),(i.body===void 0||i.serializedBody==="")&&i.headers.delete("Content-Type");let h=v(i);return{opts:i,url:h}},"beforeRequest"),d=n(async u=>{let{opts:i,url:h}=await p(u),k={redirect:"follow",...i,body:G(i)},b=new Request(h,k);for(let f of s.request.fns)f&&(b=await f(b,i));let L=i.fetch,c=await L(b);for(let f of s.response.fns)f&&(c=await f(c,b,i));let C={request:b,response:c};if(c.ok){let f=(i.parseAs==="auto"?Z(c.headers.get("Content-Type")):i.parseAs)??"json";if(c.status===204||c.headers.get("Content-Length")==="0"){let g;switch(f){case"arrayBuffer":case"blob":case"text":g=await c[f]();break;case"formData":g=new FormData;break;case"stream":g=c.body;break;case"json":default:g={};break}return i.responseStyle==="data"?g:{data:g,...C}}let m;switch(f){case"arrayBuffer":case"blob":case"formData":case"json":case"text":m=await c[f]();break;case"stream":return i.responseStyle==="data"?c.body:{data:c.body,...C}}return f==="json"&&(i.responseValidator&&await i.responseValidator(m),i.responseTransformer&&(m=await i.responseTransformer(m))),i.responseStyle==="data"?m:{data:m,...C}}let R=await c.text(),D;try{D=JSON.parse(R)}catch{}let T=D??R,I=T;for(let f of s.error.fns)f&&(I=await f(T,c,b,i));if(I=I||{},i.throwOnError)throw I;return i.responseStyle==="data"?void 0:{error:I,...C}},"request"),a=n(u=>i=>d({...i,method:u}),"makeMethodFn"),l=n(u=>async i=>{let{opts:h,url:k}=await p(i);return _({...h,body:h.body,headers:h.headers,method:u,onRequest:n(async(b,L)=>{let c=new Request(b,L);for(let C of s.request.fns)C&&(c=await C(c,h));return c},"onRequest"),url:k})},"makeSseFn");return{buildUrl:v,connect:a("CONNECT"),delete:a("DELETE"),get:a("GET"),getConfig:t,head:a("HEAD"),interceptors:s,options:a("OPTIONS"),patch:a("PATCH"),post:a("POST"),put:a("PUT"),request:d,setConfig:o,sse:{connect:l("CONNECT"),delete:l("DELETE"),get:l("GET"),head:l("HEAD"),options:l("OPTIONS"),patch:l("PATCH"),post:l("POST"),put:l("PUT"),trace:l("TRACE")},trace:a("TRACE")}},"createClient");var y=S(x({baseUrl:"https://swish.app/api/2026-01"}));var te=n(e=>((e==null?void 0:e.client)??y).get({security:[{scheme:"bearer",type:"http"}],url:"/lists",...e}),"listControllerFind"),ne=n(e=>(e.client??y).post({security:[{scheme:"bearer",type:"http"}],url:"/lists",...e,headers:{"Content-Type":"application/json",...e.headers}}),"listControllerCreate"),oe=n(e=>(e.client??y).delete({security:[{scheme:"bearer",type:"http"}],url:"/lists/{listId}",...e}),"listControllerDeleteById"),se=n(e=>(e.client??y).get({security:[{scheme:"bearer",type:"http"}],url:"/lists/{listId}",...e}),"listControllerFindById"),ie=n(e=>(e.client??y).patch({security:[{scheme:"bearer",type:"http"}],url:"/lists/{listId}",...e,headers:{"Content-Type":"application/json",...e.headers}}),"listControllerUpdateById"),ae=n(e=>(e.client??y).put({security:[{scheme:"bearer",type:"http"}],url:"/lists/{listId}/items/order",...e,headers:{"Content-Type":"application/json",...e.headers}}),"listControllerSetListItemsOrder"),le=n(e=>(e.client??y).post({security:[{scheme:"bearer",type:"http"}],url:"/lists/{listId}/items",...e,headers:{"Content-Type":"application/json",...e.headers}}),"listControllerAddItemsToList"),de=n(e=>(e.client??y).delete({security:[{scheme:"bearer",type:"http"}],url:"/lists/{listId}/items/{itemId}",...e}),"listControllerRemoveItemFromList"),pe=n(e=>(e.client??y).delete({security:[{scheme:"bearer",type:"http"}],url:"/items",...e,headers:{"Content-Type":"application/json",...e.headers}}),"itemControllerDelete"),ce=n(e=>((e==null?void 0:e.client)??y).get({security:[{scheme:"bearer",type:"http"}],url:"/items",...e}),"itemControllerFind"),ue=n(e=>(e.client??y).post({security:[{scheme:"bearer",type:"http"}],url:"/items",...e,headers:{"Content-Type":"application/json",...e.headers}}),"itemControllerCreate"),ye=n(e=>((e==null?void 0:e.client)??y).get({security:[{scheme:"bearer",type:"http"}],url:"/items/count",...e}),"itemControllerCount"),he=n(e=>(e.client??y).delete({security:[{scheme:"bearer",type:"http"}],url:"/items/{itemId}",...e}),"itemControllerDeleteById"),fe=n(e=>(e.client??y).get({security:[{scheme:"bearer",type:"http"}],url:"/items/{itemId}",...e}),"itemControllerFindById"),Ce=n(e=>(e.client??y).patch({security:[{scheme:"bearer",type:"http"}],url:"/items/{itemId}",...e,headers:{"Content-Type":"application/json",...e.headers}}),"itemControllerUpdateById"),me=n(e=>(e.client??y).put({security:[{scheme:"bearer",type:"http"}],url:"/items/{itemId}/lists",...e,headers:{"Content-Type":"application/json",...e.headers}}),"itemControllerSetListsById"),Oe=n(e=>((e==null?void 0:e.client)??y).get({security:[{scheme:"bearer",type:"http"}],url:"/profiles/accounts-version",...e}),"profileControllerCustomerAccountsVersion"),Ie=n(e=>(e.client??y).post({security:[{scheme:"bearer",type:"http"}],url:"/profiles/identify",...e,headers:{"Content-Type":"application/json",...e.headers}}),"profileControllerIdentify"),ge=n(e=>(e.client??y).post({security:[{scheme:"bearer",type:"http"}],url:"/profiles/token",...e,headers:{"Content-Type":"application/json",...e.headers}}),"profileControllerCreateToken");var be=n(e=>((e==null?void 0:e.client)??y).get({security:[{scheme:"bearer",type:"http"}],url:"/orders",...e}),"ordersControllerFind"),xe=n(e=>(e.client??y).get({security:[{scheme:"bearer",type:"http"}],url:"/orders/{orderId}",...e}),"ordersControllerFindOne");var $e="2026-01",Re="/apps/wishlist/api",Dr=n(e=>new N(e),"createApiClient"),H=class H{constructor(r){this.useProxy=!1;this.version=$e;this.items={list:n(r=>this.handlePaginatedRequest(ce({query:r,client:this.useProxy?this.proxyClient:this.directClient})),"list"),create:n(r=>this.handleRequest(ue({body:r,client:this.useProxy?this.proxyClient:this.directClient})),"create"),delete:n(r=>this.handleRequest(pe({body:{itemIds:r},client:this.useProxy?this.proxyClient:this.directClient})),"delete"),findById:n(r=>this.handleRequest(fe({path:{itemId:r},client:this.useProxy?this.proxyClient:this.directClient})),"findById"),updateById:n((r,t)=>this.handleRequest(Ce({body:t,path:{itemId:r},client:this.useProxy?this.proxyClient:this.directClient})),"updateById"),deleteById:n(r=>this.handleRequest(he({path:{itemId:r},client:this.useProxy?this.proxyClient:this.directClient})),"deleteById"),setListsById:n((r,t)=>this.handleRequest(me({body:{listIds:t},path:{itemId:r},client:this.useProxy?this.proxyClient:this.directClient})),"setListsById"),count:n(()=>this.handleRequest(ye({client:this.useProxy?this.proxyClient:this.directClient})),"count")};this.lists={list:n(r=>this.handlePaginatedRequest(te({query:r,client:this.useProxy?this.proxyClient:this.directClient})),"list"),create:n(r=>this.handleRequest(ne({body:r,client:this.useProxy?this.proxyClient:this.directClient})),"create"),findById:n(r=>this.handleRequest(se({path:{listId:r},client:this.useProxy?this.proxyClient:this.directClient})),"findById"),updateById:n((r,t)=>this.handleRequest(ie({body:t,path:{listId:r},client:this.useProxy?this.proxyClient:this.directClient})),"updateById"),deleteById:n(r=>this.handleRequest(oe({path:{listId:r},client:this.useProxy?this.proxyClient:this.directClient})),"deleteById"),orderItems:n((r,t)=>this.handleRequest(ae({body:{itemIds:t},path:{listId:r},client:this.useProxy?this.proxyClient:this.directClient})),"orderItems"),addItemsToList:n((r,t)=>this.handleRequest(le({body:{itemIds:t},path:{listId:r},client:this.useProxy?this.proxyClient:this.directClient})),"addItemsToList"),removeItemFromList:n((r,t)=>this.handleRequest(de({path:{listId:r,itemId:t},client:this.useProxy?this.proxyClient:this.directClient})),"removeItemFromList")};this.profiles={customerAccountsVersion:n(()=>this.handleRequest(Oe({client:this.useProxy?this.proxyClient:this.directClient})),"customerAccountsVersion"),createToken:n((r={},t)=>this.handleRequest(ge({body:r,client:this.useProxy||t!=null&&t.useProxy?this.proxyClient:this.directClient})),"createToken"),identify:n(r=>this.handleRequest(Ie({body:r,client:this.useProxy?this.proxyClient:this.directClient})),"identify")};this.orders={list:n(r=>this.handlePaginatedRequest(be({query:r,client:this.useProxy?this.proxyClient:this.directClient})),"list"),findById:n(r=>this.handleRequest(xe({path:{orderId:r},client:this.useProxy?this.proxyClient:this.directClient})),"findById")};this.handleRequest=n(async r=>{let{data:t,error:o}=await r;return o!=null&&o.error?{error:o.error}:{data:t==null?void 0:t.data}},"handleRequest");this.handlePaginatedRequest=n(async r=>{var s;let{data:t,error:o}=await r;return o!=null&&o.error?{error:o.error}:{data:(t==null?void 0:t.data)??[],pageInfo:(t==null?void 0:t.pageInfo)??{next:null,previous:null,totalCount:((s=t==null?void 0:t.data)==null?void 0:s.length)??0}}},"handlePaginatedRequest");var t;this.profile=r.profile,(t=r.config)!=null&&t.version&&(this.version=r.config.version),this.directClient=S(x({baseUrl:`https://swish.app/api/${this.version}`})),this.proxyClient=S(x({baseUrl:Re})),r.authToken&&(this.authToken=r.authToken),r.config&&this.setConfig(r.config),r.requestInterceptor&&(this.proxyClient.interceptors.request.use(r.requestInterceptor),this.directClient.interceptors.request.use(r.requestInterceptor)),r.responseInterceptor&&(this.proxyClient.interceptors.response.use(r.responseInterceptor),this.directClient.interceptors.response.use(r.responseInterceptor)),this.proxyClient.interceptors.request.use(this.proxyRequestInterceptor.bind(this)),this.directClient.interceptors.request.use(this.directRequestInterceptor.bind(this))}setProfile(r){this.profile=r}getProfile(){return this.profile}setAuthToken(r){this.authToken=r}setConfig({proxyBaseUrl:r=Re,baseUrl:t,useProxy:o=!1,...s}){this.useProxy=o,this.proxyClient.setConfig({...s,baseUrl:r}),this.directClient.setConfig({...s})}proxyRequestInterceptor(r){return this.profile&&(r.headers.set("Profile",this.profile),r.headers.set("Swish-Api-Version",this.version)),r}directRequestInterceptor(r){return this.authToken&&r.headers.set("Authorization",`Bearer ${this.authToken}`),r}};n(H,"SwishClient");var N=H;export{Dr as createApiClient,$e as defaultApiVersion,Re as defaultProxyBaseUrl};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Client, Options as Options2, TDataShape } from './client';
|
|
2
|
-
import type { AnalyticsControllerLoadNewListsData, AnalyticsControllerLoadNewListsErrors, AnalyticsControllerLoadNewListsResponses, AnalyticsControllerLoadSavedItemsData, AnalyticsControllerLoadSavedItemsErrors, AnalyticsControllerLoadSavedItemsResponses, AnalyticsControllerLoadSessionsData, AnalyticsControllerLoadSessionsErrors, AnalyticsControllerLoadSessionsResponses, ItemControllerCountData, ItemControllerCountErrors, ItemControllerCountResponses, ItemControllerCreateData, ItemControllerCreateErrors, ItemControllerCreateResponses, ItemControllerDeleteByIdData, ItemControllerDeleteByIdErrors, ItemControllerDeleteByIdResponses, ItemControllerDeleteData, ItemControllerDeleteErrors, ItemControllerDeleteResponses, ItemControllerFindByIdData, ItemControllerFindByIdErrors, ItemControllerFindByIdResponses, ItemControllerFindData, ItemControllerFindErrors, ItemControllerFindResponses, ItemControllerSetListsByIdData, ItemControllerSetListsByIdErrors, ItemControllerSetListsByIdResponses, ItemControllerUpdateByIdData, ItemControllerUpdateByIdErrors, ItemControllerUpdateByIdResponses, ListControllerAddItemsToListData, ListControllerAddItemsToListErrors, ListControllerAddItemsToListResponses, ListControllerCreateData, ListControllerCreateErrors, ListControllerCreateResponses, ListControllerDeleteByIdData, ListControllerDeleteByIdErrors, ListControllerDeleteByIdResponses, ListControllerFindByIdData, ListControllerFindByIdErrors, ListControllerFindByIdResponses, ListControllerFindData, ListControllerFindErrors, ListControllerFindResponses, ListControllerRemoveItemFromListData, ListControllerRemoveItemFromListErrors, ListControllerRemoveItemFromListResponses, ListControllerSetListItemsOrderData, ListControllerSetListItemsOrderErrors, ListControllerSetListItemsOrderResponses, ListControllerUpdateByIdData, ListControllerUpdateByIdErrors, ListControllerUpdateByIdResponses, ProfileControllerCreateTokenData, ProfileControllerCreateTokenErrors, ProfileControllerCreateTokenResponses, ProfileControllerCustomerAccountsVersionData, ProfileControllerCustomerAccountsVersionErrors, ProfileControllerCustomerAccountsVersionResponses, ProfileControllerIdentifyData, ProfileControllerIdentifyErrors, ProfileControllerIdentifyResponses } from './types.gen';
|
|
2
|
+
import type { AnalyticsControllerLoadNewListsData, AnalyticsControllerLoadNewListsErrors, AnalyticsControllerLoadNewListsResponses, AnalyticsControllerLoadSavedItemsData, AnalyticsControllerLoadSavedItemsErrors, AnalyticsControllerLoadSavedItemsResponses, AnalyticsControllerLoadSessionsData, AnalyticsControllerLoadSessionsErrors, AnalyticsControllerLoadSessionsResponses, ItemControllerCountData, ItemControllerCountErrors, ItemControllerCountResponses, ItemControllerCreateData, ItemControllerCreateErrors, ItemControllerCreateResponses, ItemControllerDeleteByIdData, ItemControllerDeleteByIdErrors, ItemControllerDeleteByIdResponses, ItemControllerDeleteData, ItemControllerDeleteErrors, ItemControllerDeleteResponses, ItemControllerFindByIdData, ItemControllerFindByIdErrors, ItemControllerFindByIdResponses, ItemControllerFindData, ItemControllerFindErrors, ItemControllerFindResponses, ItemControllerSetListsByIdData, ItemControllerSetListsByIdErrors, ItemControllerSetListsByIdResponses, ItemControllerUpdateByIdData, ItemControllerUpdateByIdErrors, ItemControllerUpdateByIdResponses, ListControllerAddItemsToListData, ListControllerAddItemsToListErrors, ListControllerAddItemsToListResponses, ListControllerCreateData, ListControllerCreateErrors, ListControllerCreateResponses, ListControllerDeleteByIdData, ListControllerDeleteByIdErrors, ListControllerDeleteByIdResponses, ListControllerFindByIdData, ListControllerFindByIdErrors, ListControllerFindByIdResponses, ListControllerFindData, ListControllerFindErrors, ListControllerFindResponses, ListControllerRemoveItemFromListData, ListControllerRemoveItemFromListErrors, ListControllerRemoveItemFromListResponses, ListControllerSetListItemsOrderData, ListControllerSetListItemsOrderErrors, ListControllerSetListItemsOrderResponses, ListControllerUpdateByIdData, ListControllerUpdateByIdErrors, ListControllerUpdateByIdResponses, OrdersControllerFindData, OrdersControllerFindErrors, OrdersControllerFindOneData, OrdersControllerFindOneErrors, OrdersControllerFindOneResponses, OrdersControllerFindResponses, ProfileControllerCreateTokenData, ProfileControllerCreateTokenErrors, ProfileControllerCreateTokenResponses, ProfileControllerCustomerAccountsVersionData, ProfileControllerCustomerAccountsVersionErrors, ProfileControllerCustomerAccountsVersionResponses, ProfileControllerIdentifyData, ProfileControllerIdentifyErrors, ProfileControllerIdentifyResponses, TrackingControllerTrackData, TrackingControllerTrackErrors, TrackingControllerTrackResponses } from './types.gen';
|
|
3
3
|
export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = Options2<TData, ThrowOnError> & {
|
|
4
4
|
/**
|
|
5
5
|
* You can provide a client instance returned by `createClient()` instead of
|
|
@@ -35,3 +35,10 @@ export declare const profileControllerCreateToken: <ThrowOnError extends boolean
|
|
|
35
35
|
export declare const analyticsControllerLoadSavedItems: <ThrowOnError extends boolean = false>(options: Options<AnalyticsControllerLoadSavedItemsData, ThrowOnError>) => import("./client").RequestResult<AnalyticsControllerLoadSavedItemsResponses, AnalyticsControllerLoadSavedItemsErrors, ThrowOnError, "fields">;
|
|
36
36
|
export declare const analyticsControllerLoadSessions: <ThrowOnError extends boolean = false>(options: Options<AnalyticsControllerLoadSessionsData, ThrowOnError>) => import("./client").RequestResult<AnalyticsControllerLoadSessionsResponses, AnalyticsControllerLoadSessionsErrors, ThrowOnError, "fields">;
|
|
37
37
|
export declare const analyticsControllerLoadNewLists: <ThrowOnError extends boolean = false>(options: Options<AnalyticsControllerLoadNewListsData, ThrowOnError>) => import("./client").RequestResult<AnalyticsControllerLoadNewListsResponses, AnalyticsControllerLoadNewListsErrors, ThrowOnError, "fields">;
|
|
38
|
+
/**
|
|
39
|
+
* Track user behavior events
|
|
40
|
+
* Endpoint for tracking user behavior events.
|
|
41
|
+
*/
|
|
42
|
+
export declare const trackingControllerTrack: <ThrowOnError extends boolean = false>(options: Options<TrackingControllerTrackData, ThrowOnError>) => import("./client").RequestResult<TrackingControllerTrackResponses, TrackingControllerTrackErrors, ThrowOnError, "fields">;
|
|
43
|
+
export declare const ordersControllerFind: <ThrowOnError extends boolean = false>(options?: Options<OrdersControllerFindData, ThrowOnError>) => import("./client").RequestResult<OrdersControllerFindResponses, OrdersControllerFindErrors, ThrowOnError, "fields">;
|
|
44
|
+
export declare const ordersControllerFindOne: <ThrowOnError extends boolean = false>(options: Options<OrdersControllerFindOneData, ThrowOnError>) => import("./client").RequestResult<OrdersControllerFindOneResponses, OrdersControllerFindOneErrors, ThrowOnError, "fields">;
|
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
export type ClientOptions = {
|
|
2
|
-
baseUrl: 'https://swish.app/api/
|
|
2
|
+
baseUrl: 'https://swish.app/api/2026-01' | (string & {});
|
|
3
|
+
};
|
|
4
|
+
export type PreviewImageDto = {
|
|
5
|
+
/**
|
|
6
|
+
* Unique identifier for the image
|
|
7
|
+
*/
|
|
8
|
+
id: string;
|
|
9
|
+
/**
|
|
10
|
+
* Alt text for the image
|
|
11
|
+
*/
|
|
12
|
+
altText: string;
|
|
13
|
+
/**
|
|
14
|
+
* URL of the image
|
|
15
|
+
*/
|
|
16
|
+
url: string;
|
|
17
|
+
/**
|
|
18
|
+
* Thumbhash for the image
|
|
19
|
+
*/
|
|
20
|
+
thumbhash: string;
|
|
3
21
|
};
|
|
4
22
|
export type ListDetail = {
|
|
5
23
|
/**
|
|
@@ -18,6 +36,10 @@ export type ListDetail = {
|
|
|
18
36
|
* The date and time the list was updated
|
|
19
37
|
*/
|
|
20
38
|
updatedAt: string;
|
|
39
|
+
/**
|
|
40
|
+
* The access level of the list
|
|
41
|
+
*/
|
|
42
|
+
access: 'private' | 'public';
|
|
21
43
|
/**
|
|
22
44
|
* The number of items in the list
|
|
23
45
|
*/
|
|
@@ -26,6 +48,10 @@ export type ListDetail = {
|
|
|
26
48
|
* Array of image URLs for the first 4 items in the list
|
|
27
49
|
*/
|
|
28
50
|
imageUrls: Array<string>;
|
|
51
|
+
/**
|
|
52
|
+
* Array of preview image objects for the first 4 items in the list
|
|
53
|
+
*/
|
|
54
|
+
previewImages: Array<PreviewImageDto>;
|
|
29
55
|
/**
|
|
30
56
|
* Array of item IDs in the list
|
|
31
57
|
*/
|
|
@@ -48,6 +74,10 @@ export type List = {
|
|
|
48
74
|
* The date and time the list was updated
|
|
49
75
|
*/
|
|
50
76
|
updatedAt: string;
|
|
77
|
+
/**
|
|
78
|
+
* The access level of the list
|
|
79
|
+
*/
|
|
80
|
+
access: 'private' | 'public';
|
|
51
81
|
};
|
|
52
82
|
export type _Error = {
|
|
53
83
|
/**
|
|
@@ -103,7 +133,11 @@ export type UpdateListInput = {
|
|
|
103
133
|
/**
|
|
104
134
|
* The name of the list
|
|
105
135
|
*/
|
|
106
|
-
name
|
|
136
|
+
name?: string;
|
|
137
|
+
/**
|
|
138
|
+
* The access level of the list
|
|
139
|
+
*/
|
|
140
|
+
access?: 'private' | 'public';
|
|
107
141
|
};
|
|
108
142
|
export type SetListItemsOrderInput = {
|
|
109
143
|
/**
|
|
@@ -271,10 +305,136 @@ export type Analytics = {
|
|
|
271
305
|
*/
|
|
272
306
|
total: number;
|
|
273
307
|
};
|
|
308
|
+
export type TrackingEventRequestDto = {
|
|
309
|
+
[key: string]: unknown;
|
|
310
|
+
};
|
|
311
|
+
export type ProductVariantDto = {
|
|
312
|
+
/**
|
|
313
|
+
* The product variant’s title
|
|
314
|
+
*/
|
|
315
|
+
title: string;
|
|
316
|
+
/**
|
|
317
|
+
* The image of the variant
|
|
318
|
+
*/
|
|
319
|
+
image?: PreviewImageDto;
|
|
320
|
+
};
|
|
321
|
+
export type Money = {
|
|
322
|
+
/**
|
|
323
|
+
* The currency code
|
|
324
|
+
*/
|
|
325
|
+
currencyCode: string;
|
|
326
|
+
/**
|
|
327
|
+
* The amount
|
|
328
|
+
*/
|
|
329
|
+
amount: number;
|
|
330
|
+
};
|
|
331
|
+
export type OrderLineItem = {
|
|
332
|
+
/**
|
|
333
|
+
* The order line item ID
|
|
334
|
+
*/
|
|
335
|
+
id: string;
|
|
336
|
+
/**
|
|
337
|
+
* The title of the product combined with title of the variant.
|
|
338
|
+
*/
|
|
339
|
+
title: string;
|
|
340
|
+
/**
|
|
341
|
+
* The product variant associated to the line item.
|
|
342
|
+
*/
|
|
343
|
+
variant?: ProductVariantDto;
|
|
344
|
+
/**
|
|
345
|
+
* The quantity of items
|
|
346
|
+
*/
|
|
347
|
+
quantity: number;
|
|
348
|
+
/**
|
|
349
|
+
* The original total price for this order item
|
|
350
|
+
*/
|
|
351
|
+
originalTotalPrice: Money;
|
|
352
|
+
/**
|
|
353
|
+
* The discounted total price for this order item
|
|
354
|
+
*/
|
|
355
|
+
discountedTotalPrice: Money;
|
|
356
|
+
/**
|
|
357
|
+
* The fulfillment status of this order item
|
|
358
|
+
*/
|
|
359
|
+
fulfillmentStatus: string;
|
|
360
|
+
};
|
|
361
|
+
export type OrderDetailDto = {
|
|
362
|
+
/**
|
|
363
|
+
* The order ID
|
|
364
|
+
*/
|
|
365
|
+
id: string;
|
|
366
|
+
/**
|
|
367
|
+
* The order name
|
|
368
|
+
*/
|
|
369
|
+
name: string;
|
|
370
|
+
/**
|
|
371
|
+
* The date and time when the order was created
|
|
372
|
+
*/
|
|
373
|
+
createdAt: string;
|
|
374
|
+
/**
|
|
375
|
+
* The total number of items in the order
|
|
376
|
+
*/
|
|
377
|
+
itemCount: number;
|
|
378
|
+
/**
|
|
379
|
+
* The total price of the order
|
|
380
|
+
*/
|
|
381
|
+
totalPrice: Money;
|
|
382
|
+
/**
|
|
383
|
+
* The main fulfillment status of the order
|
|
384
|
+
*/
|
|
385
|
+
displayStatus: string;
|
|
386
|
+
/**
|
|
387
|
+
* Array of order line items
|
|
388
|
+
*/
|
|
389
|
+
lineItems: Array<OrderLineItem>;
|
|
390
|
+
};
|
|
391
|
+
export type OrderDto = {
|
|
392
|
+
/**
|
|
393
|
+
* The order ID
|
|
394
|
+
*/
|
|
395
|
+
id: string;
|
|
396
|
+
/**
|
|
397
|
+
* The order number
|
|
398
|
+
*/
|
|
399
|
+
name: string;
|
|
400
|
+
/**
|
|
401
|
+
* The date and time when the order was created
|
|
402
|
+
*/
|
|
403
|
+
createdAt: string;
|
|
404
|
+
/**
|
|
405
|
+
* Human-readable display status
|
|
406
|
+
*/
|
|
407
|
+
displayStatus: string;
|
|
408
|
+
/**
|
|
409
|
+
* The number of line items in the order
|
|
410
|
+
*/
|
|
411
|
+
itemCount: number;
|
|
412
|
+
/**
|
|
413
|
+
* The total price of the order
|
|
414
|
+
*/
|
|
415
|
+
totalPrice: Money;
|
|
416
|
+
/**
|
|
417
|
+
* Preview images from the order line items
|
|
418
|
+
*/
|
|
419
|
+
previewImages?: Array<PreviewImageDto>;
|
|
420
|
+
};
|
|
274
421
|
export type ListControllerFindData = {
|
|
275
422
|
body?: never;
|
|
276
423
|
path?: never;
|
|
277
|
-
query?:
|
|
424
|
+
query?: {
|
|
425
|
+
/**
|
|
426
|
+
* The page cursor
|
|
427
|
+
*/
|
|
428
|
+
page?: string;
|
|
429
|
+
/**
|
|
430
|
+
* Number of lists/items to return
|
|
431
|
+
*/
|
|
432
|
+
limit?: number;
|
|
433
|
+
/**
|
|
434
|
+
* The sort order of the lists
|
|
435
|
+
*/
|
|
436
|
+
sort?: 'recently_updated' | 'custom';
|
|
437
|
+
};
|
|
278
438
|
url: '/lists';
|
|
279
439
|
};
|
|
280
440
|
export type ListControllerFindErrors = {
|
|
@@ -320,7 +480,7 @@ export type ListControllerFindResponses = {
|
|
|
320
480
|
/**
|
|
321
481
|
* Returns all lists as paginated response
|
|
322
482
|
*/
|
|
323
|
-
200:
|
|
483
|
+
200: PaginatedResponse & {
|
|
324
484
|
data?: Array<ListDetail>;
|
|
325
485
|
};
|
|
326
486
|
};
|
|
@@ -798,14 +958,14 @@ export type ItemControllerFindData = {
|
|
|
798
958
|
* Item search query
|
|
799
959
|
*/
|
|
800
960
|
query?: string;
|
|
801
|
-
/**
|
|
802
|
-
* The sort order of the items in the list
|
|
803
|
-
*/
|
|
804
|
-
sort?: 'recently_saved' | 'custom';
|
|
805
961
|
/**
|
|
806
962
|
* List ID to filter items by specific list
|
|
807
963
|
*/
|
|
808
964
|
listId?: string;
|
|
965
|
+
/**
|
|
966
|
+
* The sort order of the items
|
|
967
|
+
*/
|
|
968
|
+
sort?: 'recently_saved' | 'custom';
|
|
809
969
|
};
|
|
810
970
|
url: '/items';
|
|
811
971
|
};
|
|
@@ -1588,3 +1748,171 @@ export type AnalyticsControllerLoadNewListsResponses = {
|
|
|
1588
1748
|
};
|
|
1589
1749
|
};
|
|
1590
1750
|
export type AnalyticsControllerLoadNewListsResponse = AnalyticsControllerLoadNewListsResponses[keyof AnalyticsControllerLoadNewListsResponses];
|
|
1751
|
+
export type TrackingControllerTrackData = {
|
|
1752
|
+
body: TrackingEventRequestDto;
|
|
1753
|
+
headers: {
|
|
1754
|
+
referer: string;
|
|
1755
|
+
};
|
|
1756
|
+
path?: never;
|
|
1757
|
+
query?: never;
|
|
1758
|
+
url: '/tracking';
|
|
1759
|
+
};
|
|
1760
|
+
export type TrackingControllerTrackErrors = {
|
|
1761
|
+
/**
|
|
1762
|
+
* Bad Request
|
|
1763
|
+
*/
|
|
1764
|
+
400: ErrorResponse & {
|
|
1765
|
+
error?: {
|
|
1766
|
+
statusCode?: number;
|
|
1767
|
+
error?: string;
|
|
1768
|
+
};
|
|
1769
|
+
};
|
|
1770
|
+
/**
|
|
1771
|
+
* Unauthorized
|
|
1772
|
+
*/
|
|
1773
|
+
401: ErrorResponse & {
|
|
1774
|
+
error?: {
|
|
1775
|
+
statusCode?: number;
|
|
1776
|
+
error?: string;
|
|
1777
|
+
};
|
|
1778
|
+
};
|
|
1779
|
+
/**
|
|
1780
|
+
* Forbidden
|
|
1781
|
+
*/
|
|
1782
|
+
403: ErrorResponse & {
|
|
1783
|
+
error?: {
|
|
1784
|
+
statusCode?: number;
|
|
1785
|
+
error?: string;
|
|
1786
|
+
};
|
|
1787
|
+
};
|
|
1788
|
+
};
|
|
1789
|
+
export type TrackingControllerTrackError = TrackingControllerTrackErrors[keyof TrackingControllerTrackErrors];
|
|
1790
|
+
export type TrackingControllerTrackResponses = {
|
|
1791
|
+
/**
|
|
1792
|
+
* Event tracked successfully
|
|
1793
|
+
*/
|
|
1794
|
+
204: void;
|
|
1795
|
+
};
|
|
1796
|
+
export type TrackingControllerTrackResponse = TrackingControllerTrackResponses[keyof TrackingControllerTrackResponses];
|
|
1797
|
+
export type OrdersControllerFindData = {
|
|
1798
|
+
body?: never;
|
|
1799
|
+
path?: never;
|
|
1800
|
+
query?: {
|
|
1801
|
+
/**
|
|
1802
|
+
* Pagination cursor for next or previous page
|
|
1803
|
+
*/
|
|
1804
|
+
page?: string;
|
|
1805
|
+
/**
|
|
1806
|
+
* Number of orders to return per page
|
|
1807
|
+
*/
|
|
1808
|
+
limit?: number;
|
|
1809
|
+
};
|
|
1810
|
+
url: '/orders';
|
|
1811
|
+
};
|
|
1812
|
+
export type OrdersControllerFindErrors = {
|
|
1813
|
+
/**
|
|
1814
|
+
* Bad Request
|
|
1815
|
+
*/
|
|
1816
|
+
400: ErrorResponse & {
|
|
1817
|
+
error?: {
|
|
1818
|
+
statusCode?: number;
|
|
1819
|
+
error?: string;
|
|
1820
|
+
};
|
|
1821
|
+
};
|
|
1822
|
+
/**
|
|
1823
|
+
* Unauthorized
|
|
1824
|
+
*/
|
|
1825
|
+
401: ErrorResponse & {
|
|
1826
|
+
error?: {
|
|
1827
|
+
statusCode?: number;
|
|
1828
|
+
error?: string;
|
|
1829
|
+
};
|
|
1830
|
+
};
|
|
1831
|
+
/**
|
|
1832
|
+
* Forbidden
|
|
1833
|
+
*/
|
|
1834
|
+
403: ErrorResponse & {
|
|
1835
|
+
error?: {
|
|
1836
|
+
statusCode?: number;
|
|
1837
|
+
error?: string;
|
|
1838
|
+
};
|
|
1839
|
+
};
|
|
1840
|
+
/**
|
|
1841
|
+
* Not Found
|
|
1842
|
+
*/
|
|
1843
|
+
404: ErrorResponse & {
|
|
1844
|
+
error?: {
|
|
1845
|
+
statusCode?: number;
|
|
1846
|
+
error?: string;
|
|
1847
|
+
};
|
|
1848
|
+
};
|
|
1849
|
+
};
|
|
1850
|
+
export type OrdersControllerFindError = OrdersControllerFindErrors[keyof OrdersControllerFindErrors];
|
|
1851
|
+
export type OrdersControllerFindResponses = {
|
|
1852
|
+
/**
|
|
1853
|
+
* Returns all orders as paginated response
|
|
1854
|
+
*/
|
|
1855
|
+
200: PaginatedResponse & {
|
|
1856
|
+
data?: Array<OrderDto>;
|
|
1857
|
+
};
|
|
1858
|
+
};
|
|
1859
|
+
export type OrdersControllerFindResponse = OrdersControllerFindResponses[keyof OrdersControllerFindResponses];
|
|
1860
|
+
export type OrdersControllerFindOneData = {
|
|
1861
|
+
body?: never;
|
|
1862
|
+
path: {
|
|
1863
|
+
/**
|
|
1864
|
+
* The ID of the order
|
|
1865
|
+
*/
|
|
1866
|
+
orderId: number;
|
|
1867
|
+
};
|
|
1868
|
+
query?: never;
|
|
1869
|
+
url: '/orders/{orderId}';
|
|
1870
|
+
};
|
|
1871
|
+
export type OrdersControllerFindOneErrors = {
|
|
1872
|
+
/**
|
|
1873
|
+
* Bad Request
|
|
1874
|
+
*/
|
|
1875
|
+
400: ErrorResponse & {
|
|
1876
|
+
error?: {
|
|
1877
|
+
statusCode?: number;
|
|
1878
|
+
error?: string;
|
|
1879
|
+
};
|
|
1880
|
+
};
|
|
1881
|
+
/**
|
|
1882
|
+
* Unauthorized
|
|
1883
|
+
*/
|
|
1884
|
+
401: ErrorResponse & {
|
|
1885
|
+
error?: {
|
|
1886
|
+
statusCode?: number;
|
|
1887
|
+
error?: string;
|
|
1888
|
+
};
|
|
1889
|
+
};
|
|
1890
|
+
/**
|
|
1891
|
+
* Forbidden
|
|
1892
|
+
*/
|
|
1893
|
+
403: ErrorResponse & {
|
|
1894
|
+
error?: {
|
|
1895
|
+
statusCode?: number;
|
|
1896
|
+
error?: string;
|
|
1897
|
+
};
|
|
1898
|
+
};
|
|
1899
|
+
/**
|
|
1900
|
+
* Not Found
|
|
1901
|
+
*/
|
|
1902
|
+
404: ErrorResponse & {
|
|
1903
|
+
error?: {
|
|
1904
|
+
statusCode?: number;
|
|
1905
|
+
error?: string;
|
|
1906
|
+
};
|
|
1907
|
+
};
|
|
1908
|
+
};
|
|
1909
|
+
export type OrdersControllerFindOneError = OrdersControllerFindOneErrors[keyof OrdersControllerFindOneErrors];
|
|
1910
|
+
export type OrdersControllerFindOneResponses = {
|
|
1911
|
+
/**
|
|
1912
|
+
* Returns order detail with line items and tracking information
|
|
1913
|
+
*/
|
|
1914
|
+
200: Response & {
|
|
1915
|
+
data?: OrderDetailDto;
|
|
1916
|
+
};
|
|
1917
|
+
};
|
|
1918
|
+
export type OrdersControllerFindOneResponse = OrdersControllerFindOneResponses[keyof OrdersControllerFindOneResponses];
|
package/dist/types.d.ts
CHANGED
|
@@ -5,11 +5,16 @@ export type { SwishClient };
|
|
|
5
5
|
export interface SwishClientOptions {
|
|
6
6
|
authToken?: string;
|
|
7
7
|
profile?: string;
|
|
8
|
+
proxyMode?: boolean;
|
|
8
9
|
config?: SwishClientConfig;
|
|
9
10
|
requestInterceptor?: Parameters<Client["interceptors"]["request"]["use"]>[0];
|
|
10
11
|
responseInterceptor?: Parameters<Client["interceptors"]["response"]["use"]>[0];
|
|
11
12
|
}
|
|
12
|
-
export type SwishClientConfig = Config<ClientOptions
|
|
13
|
+
export type SwishClientConfig = Config<ClientOptions> & {
|
|
14
|
+
proxyBaseUrl?: string;
|
|
15
|
+
useProxy?: boolean;
|
|
16
|
+
version?: string;
|
|
17
|
+
};
|
|
13
18
|
export type ListItemsResponse = Awaited<ReturnType<SwishClient["items"]["list"]>>;
|
|
14
19
|
export type CreateItemResponse = Awaited<ReturnType<SwishClient["items"]["create"]>>;
|
|
15
20
|
export type DeleteItemsResponse = Awaited<ReturnType<SwishClient["items"]["delete"]>>;
|