@great-detail/support-sdk 0.14.2 → 0.14.3

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.
@@ -0,0 +1 @@
1
+ var ce=Object.defineProperty;var me=(o,t)=>{for(var e in t)ce(o,e,{get:t[e],enumerable:!0})};var u=class{getHeaders(){return{}}};var ee="SUPPORT_ACCESS_TOKEN",oe="SUPPORT_KEY_NAME",re="SUPPORT_KEY_PASSWORD",Zt="SUPPORT_SIGNING_KEY",ne="SUPPORT_BASE_URL";var m=class{name;#t;constructor({name:t=process.env[oe],password:e=process.env[re]}={}){if(!t)throw new Error("Name option must be specified when using Basic Authentication");if(!e)throw new Error("Password option must be specified when using Basic Authentication");this.name=t,this.#t=e}getHeaders(){return{Authorization:`Basic ${btoa(this.name+":"+this.#t)}`}}};var h=class{#t;constructor({token:t=process.env[ee]}={}){if(!t)throw new Error("Access Token option must be specified when using Token Authentication");this.#t=t}getHeaders(){return{Authorization:`Bearer ${this.#t}`}}};var se="https://api.support.greatdetail.com",ie={"X-Powered-By":"GDSupport/JavaScript"};import{z as n}from"zod";var f=class o{constructor(t){this._client=t}static SCHEMA=n.object({data:n.object({event:n.intersection(n.object({id:n.string(),createdAt:n.string().datetime()}),n.union([n.object({type:n.union([n.literal("account.created"),n.literal("account.updated")]),payload:n.object({account:n.string()})}),n.object({type:n.union([n.literal("accountAccessToken.created"),n.literal("accountAccessToken.deleted")]),payload:n.object({accountAccessToken:n.string()})}),n.object({type:n.union([n.literal("contact.created"),n.literal("contact.updated")]),payload:n.object({contact:n.string()})}),n.object({type:n.union([n.literal("conversation.created"),n.literal("conversation.updated"),n.literal("conversation.closed"),n.literal("conversation.received"),n.literal("conversation.resolved"),n.literal("conversation.sent")]),payload:n.object({conversation:n.string()})}),n.object({type:n.union([n.literal("message.created"),n.literal("message.updated"),n.literal("message.delivered"),n.literal("message.failed"),n.literal("message.read"),n.literal("message.received"),n.literal("message.sent")]),payload:n.object({message:n.string()})})]))})});async event({key:t=process.env[Zt],maxSignatures:e=3,request:r}){let s=r.headers["gds-signature"];if(t!==!1){if(t===void 0)throw new Error("Missing webhook signing key in process.env."+Zt);if(!s)throw new Error("Missing signature header");if(!this._verifySignature(t,r.body,Array.isArray(s)?s.slice(0,e):[s]))throw new Error("Untrusted signature")}let{data:i}=o.SCHEMA.parse(r.body);return{event:i.event}}async _verifySignature(t,e,r){let s=await crypto.subtle.importKey("raw",new TextEncoder().encode(t),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"]);for(let i of r)if(await crypto.subtle.verify("HMAC",s,new TextEncoder().encode(atob(i)),new TextEncoder().encode(JSON.stringify(e))))return!0;return!1}};var C=class o{constructor(t=o.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=ie;async filter(){return{headers:this.getHeaders()}}getHeaders(){return this._standardHeaders}};import le from"is-network-error";import de,{HTTPError as ue}from"ky";var p=class extends Error{static serverError(t){return new this("Server Error: "+t)}};var c=class extends p{};var b=class extends c{static unauthenticated(){return new this("An unauthenticated request occurred")}};var g=class extends c{static forbidden(){return new this("A forbidden request occurred")}};var a=class extends p{static notFound(t){return new this(`Record not found for request: ${t}`)}static forbiddenMethod(t,e){return new this(`Forbidden method for request: ${t} ${e}`)}static teapot(){return new this("I'm a teapot")}static rateLimited(){return new this("Request has been rate-limited")}};var _=class extends p{};var l=class extends p{static badRequest(){return new this("Bad request")}static unsupportedMediaType(){return new this("Unsupported Media Type")}};var O=class{client;options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t},this.client=de.create({prefixUrl:this.options.baseURL,timeout:12e3,hooks:{beforeRequest:[r=>{for(let s of this.options.requestFilterables){let i=s.getHeaders();for(let[Xt,ae]of Object.entries(i))r.headers.has(Xt)||r.headers.set(Xt,ae)}}]}})}getURL(t){return new URL(t,this.options.baseURL).toString()}sortQuery(t){let e=[];if(t===void 0)return e;for(let[r,s]of Object.entries(t))s!==void 0&&e.push(["sort",s+r]);return e}limitQuery(t){let e=[];return t===void 0||e.push(["limit",t.toString()]),e}includeQuery(t){let e=[];if(t===void 0)return e;for(let r of Object.keys(t))e.push(["include",r]);return e}queryQuery(t){let e=[];return t===void 0||e.push(["query",t]),e}send(t,e={}){let r=this.client(t,e).catch(s=>{if(le(s))throw new _("A network error occurred",{cause:s});if(s instanceof ue){let i=s.response.status;switch(console.error(JSON.stringify(s.response)),i){case 400:throw l.badRequest();case 401:throw b.unauthenticated();case 403:throw g.forbidden();case 404:throw a.notFound(t);case 405:throw a.forbiddenMethod(t,e.method??"GET");case 415:throw l.unsupportedMediaType();case 418:throw a.teapot();case 429:throw a.rateLimited()}if(i>=500&&i<600)throw p.serverError(i)}throw s});return{response:()=>r,json:async()=>(await r).json()}}};var y=class{constructor(t){this._transport=t}send(t,{body:e={},request:r={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens",{...r,method:"POST",json:e})}};var x=class{constructor(t){this._transport=t}send(t,e,{body:r,request:s={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens/"+encodeURIComponent(e),{...s,method:"DELETE",json:r})}};var S=class{constructor(t){this._transport=t}send(t,e,{request:r={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens/"+encodeURIComponent(e),{...r,method:"GET"})}};var T=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens",{...e,method:"GET"})}};var R=class{constructor(t){this._transport=t}get api(){return{get:new S(this._transport),list:new T(this._transport),create:new y(this._transport),delete:new x(this._transport)}}};var v=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t),{...e,method:"GET"})}};var F=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/accounts/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var A=class{constructor(t){this._transport=t}get api(){return{get:new v(this._transport),update:new F(this._transport)}}};var w=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/conversation-settings",{...e,method:"GET"})}};var L=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/conversation-settings",{...r,method:"PATCH",json:e})}};var U=class{constructor(t){this._transport=t}get api(){return{get:new w(this._transport),update:new L(this._transport)}}};var E=class{constructor(t){this._transport=t}send({limit:t,sort:e,request:r={}}={}){return this._transport.send("v1/actions",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.sortQuery(e)]})}};var N=class{constructor(t){this._transport=t}get api(){return{list:new E(this._transport)}}};var G=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/boilerplates/categories",{...e,method:"POST",json:t})}};var P=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t),{...e,method:"GET"})}};var q=class{constructor(t){this._transport=t}send({limit:t,include:e,request:r={}}={}){return this._transport.send("v1/boilerplates/categories",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.includeQuery(e)]})}};var I=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var B=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t)+"/contents",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var k=class{constructor(t){this._transport=t}get api(){return{get:new P(this._transport),list:new q(this._transport),create:new G(this._transport),update:new I(this._transport),boilerplate:{list:new B(this._transport)}}}};var M=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/boilerplates/contents",{...e,method:"POST",json:t})}};var j=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/boilerplates/contents/"+encodeURIComponent(t),{...e,method:"GET"})}};var Q=class{constructor(t){this._transport=t}send({limit:t,query:e,request:r={}}={}){return this._transport.send("v1/boilerplates/contents",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e)]})}};var D=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/boilerplates/contents/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var H=class{constructor(t){this._transport=t}get api(){return{get:new j(this._transport),list:new Q(this._transport),update:new D(this._transport),create:new M(this._transport)}}};var K=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/channels",{...e,method:"POST",json:t})}};var V=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...e,method:"GET"})}};var W=class{constructor(t){this._transport=t}send({limit:t,request:e={}}={}){return this._transport.send("v1/channels",{...e,method:"GET",searchParams:[...this._transport.limitQuery(t)]})}};import{z as pe}from"zod";var Y=class o{constructor(t){this._transport=t}static SCHEMA=pe.object({overwrite:pe.boolean().optional()});send(t,{body:e,request:r={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/twilio-sendgrid/sync",{...r,method:"POST",json:o.SCHEMA.parse(e)})}};var z=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var $=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/composition-sections",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var J=class{constructor(t){this._transport=t}send(t,{limit:e,include:r,request:s={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/messages",{...s,method:"GET",searchParams:[...this._transport.limitQuery(e),...this._transport.includeQuery(r)]})}};var X=class{constructor(t){this._transport=t}get api(){return{get:new V(this._transport),list:new W(this._transport),update:new z(this._transport),create:new K(this._transport),compositionSection:{list:new $(this._transport)},message:{list:new J(this._transport)},twilioSendgrid:{sync:new Y(this._transport)}}}};var Z=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/composition-sections",{...e,method:"POST",json:t})}};var tt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...e,method:"GET"})}};var et=class{constructor(t){this._transport=t}send({limit:t,request:e={}}={}){return this._transport.send("v1/composition-sections",{...e,method:"GET",searchParams:[...this._transport.limitQuery(t)]})}};var ot=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var rt=class{constructor(t){this._transport=t}get api(){return{get:new tt(this._transport),list:new et(this._transport),create:new Z(this._transport),update:new ot(this._transport)}}};var nt=class{constructor(t){this._transport=t}getRelativeURL({id:t,vcf:e={}}){let r=e.variant??"vcard",s=e.format??(r==="vcard"?"vcf":"json");return"v1/contacts/"+encodeURIComponent(t)+"/vcf?variant="+encodeURIComponent(r)+"&format="+encodeURIComponent(s)}getURL(t){return this._transport.getURL(this.getRelativeURL(t))}send(t){return this._transport.send(this.getURL(t),{method:"GET"})}};var st=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/contacts",{...e,method:"POST",json:t})}};var it=class{constructor(t){this._transport=t}send(t,{include:e,request:r={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...r,method:"GET",searchParams:[...this._transport.includeQuery(e??{})]})}};var pt=class{constructor(t){this._transport=t}send({limit:t,query:e,request:r={}}={}){return this._transport.send("v1/contacts",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e)]})}};var at=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var ct=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/conversations",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var lt=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/labels",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var dt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...r,method:"POST",json:e})}};var ut=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var mt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notification-subscriptions",{...r,method:"POST",json:e})}};var ht=class{constructor(t){this._transport=t}get api(){return{get:new it(this._transport),list:new pt(this._transport),update:new at(this._transport),create:new st(this._transport),conversation:{list:new ct(this._transport)},label:{list:new lt(this._transport)},note:{list:new ut(this._transport),create:new dt(this._transport)},notificationSubscription:{create:new mt(this._transport)},vcf:{get:new nt(this._transport)}}}};var ft=class{constructor(t){this._transport=t}send(t,{include:e,request:r={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...r,method:"GET",searchParams:[...this._transport.includeQuery(e??{})]})}};var Ct=class{constructor(t){this._transport=t}send({limit:t,filter:e,include:r,request:s={}}={}){return this._transport.send("v1/conversations",{...s,method:"GET",searchParams:[...this._transport.limitQuery(t),...e?[["filter",e]]:[],...this._transport.includeQuery(r??{})]})}};var bt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var gt=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/labels",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var _t=class{constructor(t){this._transport=t}send(t,{limit:e,include:r,request:s={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...s,method:"GET",searchParams:[...this._transport.limitQuery(e),...this._transport.includeQuery(r??{})]})}};var d=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...r,method:"POST",json:e})}};var Ot=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var yt=class{constructor(t){this._transport=t}get api(){return{get:new ft(this._transport),list:new Ct(this._transport),update:new bt(this._transport),create:new d(this._transport),label:{list:new gt(this._transport)},message:{list:new _t(this._transport)},note:{list:new Ot(this._transport),create:new d(this._transport)}}}};var xt=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/contacts",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var St=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var Tt=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/labels",{...e,method:"POST",json:t})}};var Rt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var vt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"})}};var Ft=class{constructor(t){this._transport=t}send({limit:t,query:e,include:r,request:s={}}={}){return this._transport.send("v1/labels",{...s,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e),...this._transport.includeQuery(r??{})]})}};var At=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var wt=class{constructor(t){this._transport=t}get api(){return{create:new Tt(this._transport),get:new vt(this._transport),list:new Ft(this._transport),update:new At(this._transport),delete:new Rt(this._transport),contact:{list:new xt(this._transport)},conversation:{list:new St(this._transport)}}}};var Lt=class{constructor(t){this._transport=t}send({limit:t,include:e,request:r={}}={}){return this._transport.send("v1/messages",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.includeQuery(e??{})]})}};var Ut=class{constructor(t){this._transport=t}get api(){return{list:new Lt(this._transport)}}};var Et=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...r,method:"POST",json:e})}};var Nt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"})}};var Gt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send("v1/models",{...t,method:"GET"})}};var Pt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...r,method:"POST",timeout:12e4,json:e})}};var qt=class{constructor(t){this._transport=t}get api(){return{get:new Nt(this._transport),list:new Gt(this._transport),response:{create:new Pt(this._transport)},correction:{create:new Et(this._transport)}}}};var It=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...e,method:"GET"})}};var Bt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var kt=class{constructor(t){this._transport=t}get api(){return{get:new It(this._transport),update:new Bt(this._transport)}}};var Mt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"})}};var jt=class{constructor(t){this._transport=t}send({category:t,request:e={}}={}){let r=[];if(t){let s=Array.isArray(t)?t:[t];for(let i of s)r.push(["category",i])}return this._transport.send("v1/sources",{...e,method:"GET",searchParams:r})}};var Qt=class{constructor(t){this._transport=t}get api(){return{get:new Mt(this._transport),list:new jt(this._transport)}}};var Dt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/statistics/message-frequency",{...e,method:"GET"})}};var Ht=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send("v1/statistics/message-frequency",{...t,method:"GET"})}};var Kt=class{constructor(t){this._transport=t}get api(){return{messageFrequency:new Ht(this._transport),channelMessageFrequency:new Dt(this._transport)}}};var Vt=class{constructor(t){this._transport=t}send({account:t,files:e,request:r={}}){let s=new FormData;for(let i of e)s.append("file",i);return this._transport.send("v1/uploads",{...r,method:"POST",body:s,searchParams:{account:t}})}};var Wt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var Yt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"GET"})}};var zt=class{constructor(t){this._transport=t}get api(){return{get:new Yt(this._transport),create:new Vt(this._transport),delete:new Wt(this._transport)}}};var $t=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send(".well-known/notifications",{...t,method:"GET"})}};var Jt=class{constructor(t){this._transport=t}get api(){return{notification:{get:new $t(this._transport)}}}};var te=class o{static DEFAULT_BASE_URL=se;static PublicAuthentication=u;static BasicAuthentication=m;static BearerAuthentication=h;_transport;_account;_accountAccessToken;_accountConversationSettings;_action;_boilerplateContent;_boilerplateCategory;_channel;_compositionSection;_contact;_conversation;_label;_message;_model;_note;_source;_statistics;_upload;_webhook;_wellKnown;constructor(t,{baseURL:e,...r}={}){this._transport=new O({requestFilterables:[new C,t],...r,baseURL:e?.toString()??o.getBaseURL()}),this._account=new A(this._transport),this._accountAccessToken=new R(this._transport),this._accountConversationSettings=new U(this._transport),this._action=new N(this._transport),this._boilerplateContent=new H(this._transport),this._boilerplateCategory=new k(this._transport),this._channel=new X(this._transport),this._compositionSection=new rt(this._transport),this._contact=new ht(this._transport),this._conversation=new yt(this._transport),this._label=new wt(this._transport),this._message=new Ut(this._transport),this._model=new qt(this._transport),this._note=new kt(this._transport),this._source=new Qt(this._transport),this._statistics=new Kt(this._transport),this._upload=new zt(this._transport),this._webhook=new f(this),this._wellKnown=new Jt(this._transport)}static getBaseURL(){return process.env[ne]??this.DEFAULT_BASE_URL}get account(){return this._account.api}get accountAccessToken(){return this._accountAccessToken.api}get accountConversationSettings(){return this._accountConversationSettings.api}get action(){return this._action.api}get boilerplate(){return this._boilerplateContent.api}get boilerplateContent(){return this._boilerplateContent.api}get boilerplateCategory(){return this._boilerplateCategory.api}get channel(){return this._channel.api}get compositionSection(){return this._compositionSection.api}get contact(){return this._contact.api}get conversation(){return this._conversation.api}get label(){return this._label.api}get message(){return this._message.api}get model(){return this._model.api}get note(){return this._note.api}get source(){return this._source.api}get statistics(){return this._statistics.api}get upload(){return this._upload.api}get webhook(){return this._webhook}get wellKnown(){return this._wellKnown.api}};export{me as a,u as b,m as c,h as d,se as e,p as f,c as g,b as h,g as i,a as j,_ as k,l,te as m};
@@ -1 +1 @@
1
- import{b as v,m as b}from"./chunk-LWJARI3P.js";import{Command as G}from"commander";import{Command as L}from"commander";import{oraPromise as N}from"ora";function r({client:t,ora:s}){let o=new L("actions").description("Actions");return o.addCommand(new L("list").description("List actions").action(async()=>{let n=await N(()=>t.action.list.send().json(),{...s,text:"Finding actions"});console.log(n)})),o}import{Command as D}from"commander";import{oraPromise as M}from"ora";function d({client:t,ora:s}){let o=new D("channels").description("Channels");return o.addCommand(new D("list").description("List channels").action(async()=>{let n=await M(()=>t.channel.list.send().json(),{...s,text:"Finding channels"});console.log(n)})),o}import{Command as a}from"commander";import{oraPromise as c}from"ora";function p({client:t,ora:s}){let o=new a("contacts").description("Contacts");return o.addCommand(new a("get").description("Find contact").argument("<contact>","Contact ID").action(async n=>{let i=await c(()=>t.contact.get.send(n).json(),{...s,text:"Finding contact"});console.log(i)})),o.addCommand(new a("list").description("List contacts").action(async()=>{let n=await c(()=>t.contact.list.send().json(),{...s,text:"Finding contacts"});console.log(n)})),o.addCommand(new a("get-vcf").description("Export Contact as VCF").argument("<contact>","Contact ID").action(async n=>{let i=await c(()=>t.contact.vcf.get.send({id:n}).response(),{...s,text:"Exporting contact"});console.log(i)})),o}import{Command as l}from"commander";import{oraPromise as I}from"ora";function f({client:t,ora:s}){let o=new l("conversations").description("Conversations");return o.addCommand(new l("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async n=>{let i=await I(()=>t.conversation.get.send(n).json(),{...s,text:"Finding conversation"});console.log(i)})),o.addCommand(new l("list").description("List conversations").action(async()=>{let n=await I(()=>t.conversation.list.send().json(),{...s,text:"Finding conversations"});console.log(n)})),o}import{Command as m}from"commander";import{oraPromise as u}from"ora";function C({client:t,ora:s}){let o=new m("labels").description("Labels");return o.addCommand(new m("get").description("Find label").argument("<label>","Label ID").action(async n=>{let i=await u(()=>t.label.get.send(n).json(),{...s,text:"Finding label"});console.log(i)})),o.addCommand(new m("list").description("List labels").action(async()=>{let n=await u(()=>t.label.list.send().json(),{...s,text:"Finding labels"});console.log(n)})),o.addCommand(new m("conversations").description("Find label conversations").argument("<label>","Label ID").action(async n=>{let i=await u(()=>t.label.conversation.list.send(n).json(),{...s,text:"Finding conversations"});console.log(i)})),o}import{Command as P}from"commander";import{oraPromise as W}from"ora";function g({client:t,ora:s}){let o=new P("messages").description("Messages");return o.addCommand(new P("list").description("List messages").action(async()=>{let n=await W(()=>t.message.list.send().json(),{...s,text:"Finding messages"});console.log(n)})),o}import{Command as w}from"commander";import{oraPromise as K}from"ora";function O({client:t,ora:s}){let o=new w("models").description("Models");return o.addCommand(new w("get").description("Find model").argument("<model>","Model ID").action(async n=>{let i=await K(()=>t.model.get.send(n).json(),{...s,text:"Finding model"});console.log(i)})),o.addCommand(new w("list").description("List models").action(async()=>{let n=await K(()=>t.model.list.send().json(),{...s,text:"Finding models"});console.log(n)})),o}import{Command as x}from"commander";import{oraPromise as h}from"ora";function y({client:t,ora:s}){let o=new x("sources").description("Sources");return o.addCommand(new x("get").description("Find source").argument("<source>","Source ID").action(async n=>{let i=await h(()=>t.source.get.send(n).json(),{...s,text:"Finding source"});console.log(i)})),o.addCommand(new x("list").description("List sources").action(async()=>{let n=await h(()=>t.source.list.send().json(),{...s,text:"Finding sources"});console.log(n)})),o}import{Command as E}from"commander";import{Command as S}from"commander";import{oraPromise as A}from"ora";function j({client:t,ora:s}){let o=new S("notifications").description("Well-Known Notifications Details");return o.addCommand(new S("get").description("Get Notifications Server Well-Known Info").action(async()=>{let n=await A(()=>t.wellKnown.notification.get.send().json(),{...s,text:"Finding Notifications Well-Known Info"});console.log(n)})),o}function F({client:t,ora:s}){let o=new E("well-known").description("Well-Known Metadata & Info");return o.addCommand(j({client:t,ora:s})),o}var e={ora:{spinner:"simpleDotsScrolling"},client:new b(new v)},k=new G("gds").description("Great Detail Support System").addCommand(r(e)).addCommand(d(e)).addCommand(p(e)).addCommand(f(e)).addCommand(C(e)).addCommand(g(e)).addCommand(O(e)).addCommand(y(e)).addCommand(F(e)),Po=k;export{Po as a};
1
+ import{b as v,m as b}from"./chunk-55BDEU3A.js";import{Command as G}from"commander";import{Command as L}from"commander";import{oraPromise as N}from"ora";function r({client:t,ora:s}){let o=new L("actions").description("Actions");return o.addCommand(new L("list").description("List actions").action(async()=>{let n=await N(()=>t.action.list.send().json(),{...s,text:"Finding actions"});console.log(n)})),o}import{Command as D}from"commander";import{oraPromise as M}from"ora";function d({client:t,ora:s}){let o=new D("channels").description("Channels");return o.addCommand(new D("list").description("List channels").action(async()=>{let n=await M(()=>t.channel.list.send().json(),{...s,text:"Finding channels"});console.log(n)})),o}import{Command as a}from"commander";import{oraPromise as c}from"ora";function p({client:t,ora:s}){let o=new a("contacts").description("Contacts");return o.addCommand(new a("get").description("Find contact").argument("<contact>","Contact ID").action(async n=>{let i=await c(()=>t.contact.get.send(n).json(),{...s,text:"Finding contact"});console.log(i)})),o.addCommand(new a("list").description("List contacts").action(async()=>{let n=await c(()=>t.contact.list.send().json(),{...s,text:"Finding contacts"});console.log(n)})),o.addCommand(new a("get-vcf").description("Export Contact as VCF").argument("<contact>","Contact ID").action(async n=>{let i=await c(()=>t.contact.vcf.get.send({id:n}).response(),{...s,text:"Exporting contact"});console.log(i)})),o}import{Command as l}from"commander";import{oraPromise as I}from"ora";function f({client:t,ora:s}){let o=new l("conversations").description("Conversations");return o.addCommand(new l("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async n=>{let i=await I(()=>t.conversation.get.send(n).json(),{...s,text:"Finding conversation"});console.log(i)})),o.addCommand(new l("list").description("List conversations").action(async()=>{let n=await I(()=>t.conversation.list.send().json(),{...s,text:"Finding conversations"});console.log(n)})),o}import{Command as m}from"commander";import{oraPromise as u}from"ora";function C({client:t,ora:s}){let o=new m("labels").description("Labels");return o.addCommand(new m("get").description("Find label").argument("<label>","Label ID").action(async n=>{let i=await u(()=>t.label.get.send(n).json(),{...s,text:"Finding label"});console.log(i)})),o.addCommand(new m("list").description("List labels").action(async()=>{let n=await u(()=>t.label.list.send().json(),{...s,text:"Finding labels"});console.log(n)})),o.addCommand(new m("conversations").description("Find label conversations").argument("<label>","Label ID").action(async n=>{let i=await u(()=>t.label.conversation.list.send(n).json(),{...s,text:"Finding conversations"});console.log(i)})),o}import{Command as P}from"commander";import{oraPromise as W}from"ora";function g({client:t,ora:s}){let o=new P("messages").description("Messages");return o.addCommand(new P("list").description("List messages").action(async()=>{let n=await W(()=>t.message.list.send().json(),{...s,text:"Finding messages"});console.log(n)})),o}import{Command as w}from"commander";import{oraPromise as K}from"ora";function O({client:t,ora:s}){let o=new w("models").description("Models");return o.addCommand(new w("get").description("Find model").argument("<model>","Model ID").action(async n=>{let i=await K(()=>t.model.get.send(n).json(),{...s,text:"Finding model"});console.log(i)})),o.addCommand(new w("list").description("List models").action(async()=>{let n=await K(()=>t.model.list.send().json(),{...s,text:"Finding models"});console.log(n)})),o}import{Command as x}from"commander";import{oraPromise as h}from"ora";function y({client:t,ora:s}){let o=new x("sources").description("Sources");return o.addCommand(new x("get").description("Find source").argument("<source>","Source ID").action(async n=>{let i=await h(()=>t.source.get.send(n).json(),{...s,text:"Finding source"});console.log(i)})),o.addCommand(new x("list").description("List sources").action(async()=>{let n=await h(()=>t.source.list.send().json(),{...s,text:"Finding sources"});console.log(n)})),o}import{Command as E}from"commander";import{Command as S}from"commander";import{oraPromise as A}from"ora";function j({client:t,ora:s}){let o=new S("notifications").description("Well-Known Notifications Details");return o.addCommand(new S("get").description("Get Notifications Server Well-Known Info").action(async()=>{let n=await A(()=>t.wellKnown.notification.get.send().json(),{...s,text:"Finding Notifications Well-Known Info"});console.log(n)})),o}function F({client:t,ora:s}){let o=new E("well-known").description("Well-Known Metadata & Info");return o.addCommand(j({client:t,ora:s})),o}var e={ora:{spinner:"simpleDotsScrolling"},client:new b(new v)},k=new G("gds").description("Great Detail Support System").addCommand(r(e)).addCommand(d(e)).addCommand(p(e)).addCommand(f(e)).addCommand(C(e)).addCommand(g(e)).addCommand(O(e)).addCommand(y(e)).addCommand(F(e)),Po=k;export{Po as a};
@@ -1 +1 @@
1
- "use strict";var Ke=Object.create;var ne=Object.defineProperty;var Ve=Object.getOwnPropertyDescriptor;var We=Object.getOwnPropertyNames;var Ye=Object.getPrototypeOf,ze=Object.prototype.hasOwnProperty;var $e=(o,t)=>{for(var e in t)ne(o,e,{get:t[e],enumerable:!0})},Ae=(o,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of We(t))!ze.call(o,r)&&r!==e&&ne(o,r,{get:()=>t[r],enumerable:!(n=Ve(t,r))||n.enumerable});return o};var Le=(o,t,e)=>(e=o!=null?Ke(Ye(o)):{},Ae(t||!o||!o.__esModule?ne(e,"default",{value:o,enumerable:!0}):e,o)),Je=o=>Ae(ne({},"__esModule",{value:!0}),o);var to={};$e(to,{default:()=>Ze});module.exports=Je(to);var Qe=require("commander");var d=class{getHeaders(){return{}}};var Ue="SUPPORT_ACCESS_TOKEN",Ne="SUPPORT_KEY_NAME",Ee="SUPPORT_KEY_PASSWORD",de="SUPPORT_SIGNING_KEY",Ge="SUPPORT_BASE_URL";var h=class{name;#t;constructor({name:t=process.env[Ne],password:e=process.env[Ee]}={}){if(!t)throw new Error("Name option must be specified when using Basic Authentication");if(!e)throw new Error("Password option must be specified when using Basic Authentication");this.name=t,this.#t=e}getHeaders(){return{Authorization:`Basic ${btoa(this.name+":"+this.#t)}`}}};var f=class{#t;constructor({token:t=process.env[Ue]}={}){if(!t)throw new Error("Access Token option must be specified when using Token Authentication");this.#t=t}getHeaders(){return{Authorization:`Bearer ${this.#t}`}}};var Pe="https://api.support.greatdetail.com",qe={"X-Powered-By":"GDSupport/JavaScript"};var C=class o{constructor(t=o.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=qe;async filter(){return{headers:this.getHeaders()}}getHeaders(){return this._standardHeaders}};var Ie=Le(require("is-network-error"),1),re=Le(require("ky"),1);var a=class extends Error{static serverError(t){return new this("Server Error: "+t)}};var l=class extends a{};var g=class extends l{static unauthenticated(){return new this("An unauthenticated request occurred")}};var b=class extends l{static forbidden(){return new this("A forbidden request occurred")}};var c=class extends a{static notFound(t){return new this(`Record not found for request: ${t}`)}static forbiddenMethod(t,e){return new this(`Forbidden method for request: ${t} ${e}`)}static teapot(){return new this("I'm a teapot")}static rateLimited(){return new this("Request has been rate-limited")}};var O=class extends a{};var m=class extends a{static badRequest(){return new this("Bad request")}static unsupportedMediaType(){return new this("Unsupported Media Type")}};var x=class{client;options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t},this.client=re.default.create({prefixUrl:this.options.baseURL,timeout:12e3,hooks:{beforeRequest:[n=>{for(let r of this.options.requestFilterables){let i=r.getHeaders();for(let[oe,He]of Object.entries(i))n.headers.has(oe)||n.headers.set(oe,He)}}]}})}getURL(t){return new URL(t,this.options.baseURL).toString()}sortQuery(t){let e=[];if(t===void 0)return e;for(let[n,r]of Object.entries(t))r!==void 0&&e.push(["sort",r+n]);return e}limitQuery(t){let e=[];return t===void 0||e.push(["limit",t.toString()]),e}includeQuery(t){let e=[];if(t===void 0)return e;for(let n of Object.keys(t))e.push(["include",n]);return e}queryQuery(t){let e=[];return t===void 0||e.push(["query",t]),e}send(t,e={}){let n=this.client(t,e).catch(r=>{if((0,Ie.default)(r))throw new O("A network error occurred",{cause:r});if(r instanceof re.HTTPError){let i=r.response.status;switch(console.error(JSON.stringify(r.response)),i){case 400:throw m.badRequest();case 401:throw g.unauthenticated();case 403:throw b.forbidden();case 404:throw c.notFound(t);case 405:throw c.forbiddenMethod(t,e.method??"GET");case 415:throw m.unsupportedMediaType();case 418:throw c.teapot();case 429:throw c.rateLimited()}if(i>=500&&i<600)throw a.serverError(i)}throw r});return{response:()=>n,json:async()=>(await n).json()}}};var s=require("zod");var y=class o{constructor(t){this._client=t}static SCHEMA=s.z.object({data:s.z.object({event:s.z.intersection(s.z.object({id:s.z.string(),createdAt:s.z.string().datetime()}),s.z.union([s.z.object({type:s.z.union([s.z.literal("account.created"),s.z.literal("account.updated")]),payload:s.z.object({account:s.z.string()})}),s.z.object({type:s.z.union([s.z.literal("accountAccessToken.created"),s.z.literal("accountAccessToken.deleted")]),payload:s.z.object({accountAccessToken:s.z.string()})}),s.z.object({type:s.z.union([s.z.literal("contact.created"),s.z.literal("contact.updated")]),payload:s.z.object({contact:s.z.string()})}),s.z.object({type:s.z.union([s.z.literal("conversation.created"),s.z.literal("conversation.updated"),s.z.literal("conversation.closed"),s.z.literal("conversation.received"),s.z.literal("conversation.resolved"),s.z.literal("conversation.sent")]),payload:s.z.object({conversation:s.z.string()})}),s.z.object({type:s.z.union([s.z.literal("message.created"),s.z.literal("message.updated"),s.z.literal("message.delivered"),s.z.literal("message.failed"),s.z.literal("message.read"),s.z.literal("message.received"),s.z.literal("message.sent")]),payload:s.z.object({message:s.z.string()})})]))})});async event({key:t=process.env[de],maxSignatures:e=3,request:n}){let r=n.headers["gds-signature"];if(t!==!1){if(t===void 0)throw new Error("Missing webhook signing key in process.env."+de);if(!r)throw new Error("Missing signature header");if(!this._verifySignature(t,n.body,Array.isArray(r)?r.slice(0,e):[r]))throw new Error("Untrusted signature")}let{data:i}=o.SCHEMA.parse(n.body);return{event:i.event}}async _verifySignature(t,e,n){let r=await crypto.subtle.importKey("raw",new TextEncoder().encode(t),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"]);for(let i of n)if(await crypto.subtle.verify("HMAC",r,new TextEncoder().encode(atob(i)),new TextEncoder().encode(JSON.stringify(e))))return!0;return!1}};var _=class{constructor(t){this._transport=t}send(t,{body:e={},request:n={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens",{...n,method:"POST",json:e})}};var S=class{constructor(t){this._transport=t}send(t,e,{body:n,request:r={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens/"+encodeURIComponent(e),{...r,method:"DELETE",json:n})}};var T=class{constructor(t){this._transport=t}send(t,e,{request:n={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens/"+encodeURIComponent(e),{...n,method:"GET"})}};var R=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens",{...e,method:"GET"})}};var v=class{constructor(t){this._transport=t}get api(){return{get:new T(this._transport),list:new R(this._transport),create:new _(this._transport),delete:new S(this._transport)}}};var w=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t),{...e,method:"GET"})}};var F=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/accounts/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var A=class{constructor(t){this._transport=t}get api(){return{get:new w(this._transport),update:new F(this._transport)}}};var L=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/conversation-settings",{...e,method:"GET"})}};var U=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/conversation-settings",{...n,method:"PATCH",json:e})}};var N=class{constructor(t){this._transport=t}get api(){return{get:new L(this._transport),update:new U(this._transport)}}};var E=class{constructor(t){this._transport=t}send({limit:t,sort:e,request:n={}}={}){return this._transport.send("v1/actions",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.sortQuery(e)]})}};var G=class{constructor(t){this._transport=t}get api(){return{list:new E(this._transport)}}};var P=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/boilerplates/categories",{...e,method:"POST",json:t})}};var q=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t),{...e,method:"GET"})}};var I=class{constructor(t){this._transport=t}send({limit:t,include:e,request:n={}}={}){return this._transport.send("v1/boilerplates/categories",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.includeQuery(e)]})}};var B=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var M=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t)+"/contents",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var k=class{constructor(t){this._transport=t}get api(){return{get:new q(this._transport),list:new I(this._transport),create:new P(this._transport),update:new B(this._transport),boilerplate:{list:new M(this._transport)}}}};var j=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/boilerplates/contents",{...e,method:"POST",json:t})}};var D=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/boilerplates/contents/"+encodeURIComponent(t),{...e,method:"GET"})}};var Q=class{constructor(t){this._transport=t}send({limit:t,query:e,request:n={}}={}){return this._transport.send("v1/boilerplates/contents",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e)]})}};var H=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/boilerplates/contents/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var K=class{constructor(t){this._transport=t}get api(){return{get:new D(this._transport),list:new Q(this._transport),update:new H(this._transport),create:new j(this._transport)}}};var V=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/channels",{...e,method:"POST",json:t})}};var W=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...e,method:"GET"})}};var Y=class{constructor(t){this._transport=t}send({limit:t,request:e={}}={}){return this._transport.send("v1/channels",{...e,method:"GET",searchParams:[...this._transport.limitQuery(t)]})}};var le=require("zod"),z=class o{constructor(t){this._transport=t}static SCHEMA=le.z.object({overwrite:le.z.boolean().optional()});send(t,{body:e,request:n={}}){return this._transport.send("v1/sources/twilio-sendgrid/channels/"+encodeURIComponent(t)+"/sync",{...n,method:"POST",json:o.SCHEMA.parse(e)})}};var $=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var J=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/composition-sections",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var X=class{constructor(t){this._transport=t}send(t,{limit:e,include:n,request:r={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/messages",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e),...this._transport.includeQuery(n)]})}};var Z=class{constructor(t){this._transport=t}get api(){return{get:new W(this._transport),list:new Y(this._transport),update:new $(this._transport),create:new V(this._transport),compositionSection:{list:new J(this._transport)},message:{list:new X(this._transport)},twilioSendgrid:{sync:new z(this._transport)}}}};var tt=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/composition-sections",{...e,method:"POST",json:t})}};var et=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...e,method:"GET"})}};var ot=class{constructor(t){this._transport=t}send({limit:t,request:e={}}={}){return this._transport.send("v1/composition-sections",{...e,method:"GET",searchParams:[...this._transport.limitQuery(t)]})}};var nt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var rt=class{constructor(t){this._transport=t}get api(){return{get:new et(this._transport),list:new ot(this._transport),create:new tt(this._transport),update:new nt(this._transport)}}};var st=class{constructor(t){this._transport=t}getRelativeURL({id:t,vcf:e={}}){let n=e.variant??"vcard",r=e.format??(n==="vcard"?"vcf":"json");return"v1/contacts/"+encodeURIComponent(t)+"/vcf?variant="+encodeURIComponent(n)+"&format="+encodeURIComponent(r)}getURL(t){return this._transport.getURL(this.getRelativeURL(t))}send(t){return this._transport.send(this.getURL(t),{method:"GET"})}};var it=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/contacts",{...e,method:"POST",json:t})}};var at=class{constructor(t){this._transport=t}send(t,{include:e,request:n={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"GET",searchParams:[...this._transport.includeQuery(e??{})]})}};var pt=class{constructor(t){this._transport=t}send({limit:t,query:e,request:n={}}={}){return this._transport.send("v1/contacts",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e)]})}};var ct=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var dt=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/conversations",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var lt=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/labels",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var mt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...n,method:"POST",json:e})}};var ut=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var ht=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notification-subscriptions",{...n,method:"POST",json:e})}};var ft=class{constructor(t){this._transport=t}get api(){return{get:new at(this._transport),list:new pt(this._transport),update:new ct(this._transport),create:new it(this._transport),conversation:{list:new dt(this._transport)},label:{list:new lt(this._transport)},note:{list:new ut(this._transport),create:new mt(this._transport)},notificationSubscription:{create:new ht(this._transport)},vcf:{get:new st(this._transport)}}}};var Ct=class{constructor(t){this._transport=t}send(t,{include:e,request:n={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"GET",searchParams:[...this._transport.includeQuery(e??{})]})}};var gt=class{constructor(t){this._transport=t}send({limit:t,filter:e,include:n,request:r={}}={}){return this._transport.send("v1/conversations",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...e?[["filter",e]]:[],...this._transport.includeQuery(n??{})]})}};var bt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var Ot=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/labels",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var xt=class{constructor(t){this._transport=t}send(t,{limit:e,include:n,request:r={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e),...this._transport.includeQuery(n??{})]})}};var u=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...n,method:"POST",json:e})}};var yt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var _t=class{constructor(t){this._transport=t}get api(){return{get:new Ct(this._transport),list:new gt(this._transport),update:new bt(this._transport),create:new u(this._transport),label:{list:new Ot(this._transport)},message:{list:new xt(this._transport)},note:{list:new yt(this._transport),create:new u(this._transport)}}}};var St=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/contacts",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var Tt=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var Rt=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/labels",{...e,method:"POST",json:t})}};var vt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var wt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"})}};var Ft=class{constructor(t){this._transport=t}send({limit:t,query:e,include:n,request:r={}}={}){return this._transport.send("v1/labels",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e),...this._transport.includeQuery(n??{})]})}};var At=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var Lt=class{constructor(t){this._transport=t}get api(){return{create:new Rt(this._transport),get:new wt(this._transport),list:new Ft(this._transport),update:new At(this._transport),delete:new vt(this._transport),contact:{list:new St(this._transport)},conversation:{list:new Tt(this._transport)}}}};var Ut=class{constructor(t){this._transport=t}send({limit:t,include:e,request:n={}}={}){return this._transport.send("v1/messages",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.includeQuery(e??{})]})}};var Nt=class{constructor(t){this._transport=t}get api(){return{list:new Ut(this._transport)}}};var Et=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...n,method:"POST",json:e})}};var Gt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"})}};var Pt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send("v1/models",{...t,method:"GET"})}};var qt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...n,method:"POST",timeout:12e4,json:e})}};var It=class{constructor(t){this._transport=t}get api(){return{get:new Gt(this._transport),list:new Pt(this._transport),response:{create:new qt(this._transport)},correction:{create:new Et(this._transport)}}}};var Bt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...e,method:"GET"})}};var Mt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var kt=class{constructor(t){this._transport=t}get api(){return{get:new Bt(this._transport),update:new Mt(this._transport)}}};var jt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"})}};var Dt=class{constructor(t){this._transport=t}send({category:t,request:e={}}={}){let n=[];if(t){let r=Array.isArray(t)?t:[t];for(let i of r)n.push(["category",i])}return this._transport.send("v1/sources",{...e,method:"GET",searchParams:n})}};var Qt=class{constructor(t){this._transport=t}get api(){return{get:new jt(this._transport),list:new Dt(this._transport)}}};var Ht=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/statistics/message-frequency",{...e,method:"GET"})}};var Kt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send("v1/statistics/message-frequency",{...t,method:"GET"})}};var Vt=class{constructor(t){this._transport=t}get api(){return{messageFrequency:new Kt(this._transport),channelMessageFrequency:new Ht(this._transport)}}};var Wt=class{constructor(t){this._transport=t}send({account:t,files:e,request:n={}}){let r=new FormData;for(let i of e)r.append("file",i);return this._transport.send("v1/uploads",{...n,method:"POST",body:r,searchParams:{account:t}})}};var Yt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var zt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"GET"})}};var $t=class{constructor(t){this._transport=t}get api(){return{get:new zt(this._transport),create:new Wt(this._transport),delete:new Yt(this._transport)}}};var Jt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send(".well-known/notifications",{...t,method:"GET"})}};var Xt=class{constructor(t){this._transport=t}get api(){return{notification:{get:new Jt(this._transport)}}}};var Zt=class o{static DEFAULT_BASE_URL=Pe;static PublicAuthentication=d;static BasicAuthentication=h;static BearerAuthentication=f;_transport;_account;_accountAccessToken;_accountConversationSettings;_action;_boilerplateContent;_boilerplateCategory;_channel;_compositionSection;_contact;_conversation;_label;_message;_model;_note;_source;_statistics;_upload;_webhook;_wellKnown;constructor(t,{baseURL:e,...n}={}){this._transport=new x({requestFilterables:[new C,t],...n,baseURL:e?.toString()??o.getBaseURL()}),this._account=new A(this._transport),this._accountAccessToken=new v(this._transport),this._accountConversationSettings=new N(this._transport),this._action=new G(this._transport),this._boilerplateContent=new K(this._transport),this._boilerplateCategory=new k(this._transport),this._channel=new Z(this._transport),this._compositionSection=new rt(this._transport),this._contact=new ft(this._transport),this._conversation=new _t(this._transport),this._label=new Lt(this._transport),this._message=new Nt(this._transport),this._model=new It(this._transport),this._note=new kt(this._transport),this._source=new Qt(this._transport),this._statistics=new Vt(this._transport),this._upload=new $t(this._transport),this._webhook=new y(this),this._wellKnown=new Xt(this._transport)}static getBaseURL(){return process.env[Ge]??this.DEFAULT_BASE_URL}get account(){return this._account.api}get accountAccessToken(){return this._accountAccessToken.api}get accountConversationSettings(){return this._accountConversationSettings.api}get action(){return this._action.api}get boilerplate(){return this._boilerplateContent.api}get boilerplateContent(){return this._boilerplateContent.api}get boilerplateCategory(){return this._boilerplateCategory.api}get channel(){return this._channel.api}get compositionSection(){return this._compositionSection.api}get contact(){return this._contact.api}get conversation(){return this._conversation.api}get label(){return this._label.api}get message(){return this._message.api}get model(){return this._model.api}get note(){return this._note.api}get source(){return this._source.api}get statistics(){return this._statistics.api}get upload(){return this._upload.api}get webhook(){return this._webhook}get wellKnown(){return this._wellKnown.api}};var me=require("commander"),Be=require("ora");function ue({client:o,ora:t}){let e=new me.Command("actions").description("Actions");return e.addCommand(new me.Command("list").description("List actions").action(async()=>{let n=await(0,Be.oraPromise)(()=>o.action.list.send().json(),{...t,text:"Finding actions"});console.log(n)})),e}var he=require("commander"),Me=require("ora");function fe({client:o,ora:t}){let e=new he.Command("channels").description("Channels");return e.addCommand(new he.Command("list").description("List channels").action(async()=>{let n=await(0,Me.oraPromise)(()=>o.channel.list.send().json(),{...t,text:"Finding channels"});console.log(n)})),e}var te=require("commander"),se=require("ora");function Ce({client:o,ora:t}){let e=new te.Command("contacts").description("Contacts");return e.addCommand(new te.Command("get").description("Find contact").argument("<contact>","Contact ID").action(async n=>{let r=await(0,se.oraPromise)(()=>o.contact.get.send(n).json(),{...t,text:"Finding contact"});console.log(r)})),e.addCommand(new te.Command("list").description("List contacts").action(async()=>{let n=await(0,se.oraPromise)(()=>o.contact.list.send().json(),{...t,text:"Finding contacts"});console.log(n)})),e.addCommand(new te.Command("get-vcf").description("Export Contact as VCF").argument("<contact>","Contact ID").action(async n=>{let r=await(0,se.oraPromise)(()=>o.contact.vcf.get.send({id:n}).response(),{...t,text:"Exporting contact"});console.log(r)})),e}var ie=require("commander"),ge=require("ora");function be({client:o,ora:t}){let e=new ie.Command("conversations").description("Conversations");return e.addCommand(new ie.Command("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async n=>{let r=await(0,ge.oraPromise)(()=>o.conversation.get.send(n).json(),{...t,text:"Finding conversation"});console.log(r)})),e.addCommand(new ie.Command("list").description("List conversations").action(async()=>{let n=await(0,ge.oraPromise)(()=>o.conversation.list.send().json(),{...t,text:"Finding conversations"});console.log(n)})),e}var ee=require("commander"),ae=require("ora");function Oe({client:o,ora:t}){let e=new ee.Command("labels").description("Labels");return e.addCommand(new ee.Command("get").description("Find label").argument("<label>","Label ID").action(async n=>{let r=await(0,ae.oraPromise)(()=>o.label.get.send(n).json(),{...t,text:"Finding label"});console.log(r)})),e.addCommand(new ee.Command("list").description("List labels").action(async()=>{let n=await(0,ae.oraPromise)(()=>o.label.list.send().json(),{...t,text:"Finding labels"});console.log(n)})),e.addCommand(new ee.Command("conversations").description("Find label conversations").argument("<label>","Label ID").action(async n=>{let r=await(0,ae.oraPromise)(()=>o.label.conversation.list.send(n).json(),{...t,text:"Finding conversations"});console.log(r)})),e}var xe=require("commander"),ke=require("ora");function ye({client:o,ora:t}){let e=new xe.Command("messages").description("Messages");return e.addCommand(new xe.Command("list").description("List messages").action(async()=>{let n=await(0,ke.oraPromise)(()=>o.message.list.send().json(),{...t,text:"Finding messages"});console.log(n)})),e}var pe=require("commander"),_e=require("ora");function Se({client:o,ora:t}){let e=new pe.Command("models").description("Models");return e.addCommand(new pe.Command("get").description("Find model").argument("<model>","Model ID").action(async n=>{let r=await(0,_e.oraPromise)(()=>o.model.get.send(n).json(),{...t,text:"Finding model"});console.log(r)})),e.addCommand(new pe.Command("list").description("List models").action(async()=>{let n=await(0,_e.oraPromise)(()=>o.model.list.send().json(),{...t,text:"Finding models"});console.log(n)})),e}var ce=require("commander"),Te=require("ora");function Re({client:o,ora:t}){let e=new ce.Command("sources").description("Sources");return e.addCommand(new ce.Command("get").description("Find source").argument("<source>","Source ID").action(async n=>{let r=await(0,Te.oraPromise)(()=>o.source.get.send(n).json(),{...t,text:"Finding source"});console.log(r)})),e.addCommand(new ce.Command("list").description("List sources").action(async()=>{let n=await(0,Te.oraPromise)(()=>o.source.list.send().json(),{...t,text:"Finding sources"});console.log(n)})),e}var De=require("commander");var ve=require("commander"),je=require("ora");function we({client:o,ora:t}){let e=new ve.Command("notifications").description("Well-Known Notifications Details");return e.addCommand(new ve.Command("get").description("Get Notifications Server Well-Known Info").action(async()=>{let n=await(0,je.oraPromise)(()=>o.wellKnown.notification.get.send().json(),{...t,text:"Finding Notifications Well-Known Info"});console.log(n)})),e}function Fe({client:o,ora:t}){let e=new De.Command("well-known").description("Well-Known Metadata & Info");return e.addCommand(we({client:o,ora:t})),e}var p={ora:{spinner:"simpleDotsScrolling"},client:new Zt(new d)},Xe=new Qe.Command("gds").description("Great Detail Support System").addCommand(ue(p)).addCommand(fe(p)).addCommand(Ce(p)).addCommand(be(p)).addCommand(Oe(p)).addCommand(ye(p)).addCommand(Se(p)).addCommand(Re(p)).addCommand(Fe(p)),Ze=Xe;
1
+ "use strict";var Ke=Object.create;var ne=Object.defineProperty;var Ve=Object.getOwnPropertyDescriptor;var We=Object.getOwnPropertyNames;var Ye=Object.getPrototypeOf,ze=Object.prototype.hasOwnProperty;var $e=(o,t)=>{for(var e in t)ne(o,e,{get:t[e],enumerable:!0})},Ae=(o,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of We(t))!ze.call(o,r)&&r!==e&&ne(o,r,{get:()=>t[r],enumerable:!(n=Ve(t,r))||n.enumerable});return o};var Le=(o,t,e)=>(e=o!=null?Ke(Ye(o)):{},Ae(t||!o||!o.__esModule?ne(e,"default",{value:o,enumerable:!0}):e,o)),Je=o=>Ae(ne({},"__esModule",{value:!0}),o);var to={};$e(to,{default:()=>Ze});module.exports=Je(to);var Qe=require("commander");var d=class{getHeaders(){return{}}};var Ue="SUPPORT_ACCESS_TOKEN",Ne="SUPPORT_KEY_NAME",Ee="SUPPORT_KEY_PASSWORD",de="SUPPORT_SIGNING_KEY",Ge="SUPPORT_BASE_URL";var h=class{name;#t;constructor({name:t=process.env[Ne],password:e=process.env[Ee]}={}){if(!t)throw new Error("Name option must be specified when using Basic Authentication");if(!e)throw new Error("Password option must be specified when using Basic Authentication");this.name=t,this.#t=e}getHeaders(){return{Authorization:`Basic ${btoa(this.name+":"+this.#t)}`}}};var f=class{#t;constructor({token:t=process.env[Ue]}={}){if(!t)throw new Error("Access Token option must be specified when using Token Authentication");this.#t=t}getHeaders(){return{Authorization:`Bearer ${this.#t}`}}};var Pe="https://api.support.greatdetail.com",qe={"X-Powered-By":"GDSupport/JavaScript"};var C=class o{constructor(t=o.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=qe;async filter(){return{headers:this.getHeaders()}}getHeaders(){return this._standardHeaders}};var Ie=Le(require("is-network-error"),1),re=Le(require("ky"),1);var a=class extends Error{static serverError(t){return new this("Server Error: "+t)}};var l=class extends a{};var g=class extends l{static unauthenticated(){return new this("An unauthenticated request occurred")}};var b=class extends l{static forbidden(){return new this("A forbidden request occurred")}};var c=class extends a{static notFound(t){return new this(`Record not found for request: ${t}`)}static forbiddenMethod(t,e){return new this(`Forbidden method for request: ${t} ${e}`)}static teapot(){return new this("I'm a teapot")}static rateLimited(){return new this("Request has been rate-limited")}};var O=class extends a{};var m=class extends a{static badRequest(){return new this("Bad request")}static unsupportedMediaType(){return new this("Unsupported Media Type")}};var x=class{client;options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t},this.client=re.default.create({prefixUrl:this.options.baseURL,timeout:12e3,hooks:{beforeRequest:[n=>{for(let r of this.options.requestFilterables){let i=r.getHeaders();for(let[oe,He]of Object.entries(i))n.headers.has(oe)||n.headers.set(oe,He)}}]}})}getURL(t){return new URL(t,this.options.baseURL).toString()}sortQuery(t){let e=[];if(t===void 0)return e;for(let[n,r]of Object.entries(t))r!==void 0&&e.push(["sort",r+n]);return e}limitQuery(t){let e=[];return t===void 0||e.push(["limit",t.toString()]),e}includeQuery(t){let e=[];if(t===void 0)return e;for(let n of Object.keys(t))e.push(["include",n]);return e}queryQuery(t){let e=[];return t===void 0||e.push(["query",t]),e}send(t,e={}){let n=this.client(t,e).catch(r=>{if((0,Ie.default)(r))throw new O("A network error occurred",{cause:r});if(r instanceof re.HTTPError){let i=r.response.status;switch(console.error(JSON.stringify(r.response)),i){case 400:throw m.badRequest();case 401:throw g.unauthenticated();case 403:throw b.forbidden();case 404:throw c.notFound(t);case 405:throw c.forbiddenMethod(t,e.method??"GET");case 415:throw m.unsupportedMediaType();case 418:throw c.teapot();case 429:throw c.rateLimited()}if(i>=500&&i<600)throw a.serverError(i)}throw r});return{response:()=>n,json:async()=>(await n).json()}}};var s=require("zod");var y=class o{constructor(t){this._client=t}static SCHEMA=s.z.object({data:s.z.object({event:s.z.intersection(s.z.object({id:s.z.string(),createdAt:s.z.string().datetime()}),s.z.union([s.z.object({type:s.z.union([s.z.literal("account.created"),s.z.literal("account.updated")]),payload:s.z.object({account:s.z.string()})}),s.z.object({type:s.z.union([s.z.literal("accountAccessToken.created"),s.z.literal("accountAccessToken.deleted")]),payload:s.z.object({accountAccessToken:s.z.string()})}),s.z.object({type:s.z.union([s.z.literal("contact.created"),s.z.literal("contact.updated")]),payload:s.z.object({contact:s.z.string()})}),s.z.object({type:s.z.union([s.z.literal("conversation.created"),s.z.literal("conversation.updated"),s.z.literal("conversation.closed"),s.z.literal("conversation.received"),s.z.literal("conversation.resolved"),s.z.literal("conversation.sent")]),payload:s.z.object({conversation:s.z.string()})}),s.z.object({type:s.z.union([s.z.literal("message.created"),s.z.literal("message.updated"),s.z.literal("message.delivered"),s.z.literal("message.failed"),s.z.literal("message.read"),s.z.literal("message.received"),s.z.literal("message.sent")]),payload:s.z.object({message:s.z.string()})})]))})});async event({key:t=process.env[de],maxSignatures:e=3,request:n}){let r=n.headers["gds-signature"];if(t!==!1){if(t===void 0)throw new Error("Missing webhook signing key in process.env."+de);if(!r)throw new Error("Missing signature header");if(!this._verifySignature(t,n.body,Array.isArray(r)?r.slice(0,e):[r]))throw new Error("Untrusted signature")}let{data:i}=o.SCHEMA.parse(n.body);return{event:i.event}}async _verifySignature(t,e,n){let r=await crypto.subtle.importKey("raw",new TextEncoder().encode(t),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"]);for(let i of n)if(await crypto.subtle.verify("HMAC",r,new TextEncoder().encode(atob(i)),new TextEncoder().encode(JSON.stringify(e))))return!0;return!1}};var _=class{constructor(t){this._transport=t}send(t,{body:e={},request:n={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens",{...n,method:"POST",json:e})}};var S=class{constructor(t){this._transport=t}send(t,e,{body:n,request:r={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens/"+encodeURIComponent(e),{...r,method:"DELETE",json:n})}};var T=class{constructor(t){this._transport=t}send(t,e,{request:n={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens/"+encodeURIComponent(e),{...n,method:"GET"})}};var R=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens",{...e,method:"GET"})}};var v=class{constructor(t){this._transport=t}get api(){return{get:new T(this._transport),list:new R(this._transport),create:new _(this._transport),delete:new S(this._transport)}}};var w=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t),{...e,method:"GET"})}};var F=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/accounts/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var A=class{constructor(t){this._transport=t}get api(){return{get:new w(this._transport),update:new F(this._transport)}}};var L=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/conversation-settings",{...e,method:"GET"})}};var U=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/conversation-settings",{...n,method:"PATCH",json:e})}};var N=class{constructor(t){this._transport=t}get api(){return{get:new L(this._transport),update:new U(this._transport)}}};var E=class{constructor(t){this._transport=t}send({limit:t,sort:e,request:n={}}={}){return this._transport.send("v1/actions",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.sortQuery(e)]})}};var G=class{constructor(t){this._transport=t}get api(){return{list:new E(this._transport)}}};var P=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/boilerplates/categories",{...e,method:"POST",json:t})}};var q=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t),{...e,method:"GET"})}};var I=class{constructor(t){this._transport=t}send({limit:t,include:e,request:n={}}={}){return this._transport.send("v1/boilerplates/categories",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.includeQuery(e)]})}};var B=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var M=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t)+"/contents",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var k=class{constructor(t){this._transport=t}get api(){return{get:new q(this._transport),list:new I(this._transport),create:new P(this._transport),update:new B(this._transport),boilerplate:{list:new M(this._transport)}}}};var j=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/boilerplates/contents",{...e,method:"POST",json:t})}};var D=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/boilerplates/contents/"+encodeURIComponent(t),{...e,method:"GET"})}};var Q=class{constructor(t){this._transport=t}send({limit:t,query:e,request:n={}}={}){return this._transport.send("v1/boilerplates/contents",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e)]})}};var H=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/boilerplates/contents/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var K=class{constructor(t){this._transport=t}get api(){return{get:new D(this._transport),list:new Q(this._transport),update:new H(this._transport),create:new j(this._transport)}}};var V=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/channels",{...e,method:"POST",json:t})}};var W=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...e,method:"GET"})}};var Y=class{constructor(t){this._transport=t}send({limit:t,request:e={}}={}){return this._transport.send("v1/channels",{...e,method:"GET",searchParams:[...this._transport.limitQuery(t)]})}};var le=require("zod"),z=class o{constructor(t){this._transport=t}static SCHEMA=le.z.object({overwrite:le.z.boolean().optional()});send(t,{body:e,request:n={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/twilio-sendgrid/sync",{...n,method:"POST",json:o.SCHEMA.parse(e)})}};var $=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var J=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/composition-sections",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var X=class{constructor(t){this._transport=t}send(t,{limit:e,include:n,request:r={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/messages",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e),...this._transport.includeQuery(n)]})}};var Z=class{constructor(t){this._transport=t}get api(){return{get:new W(this._transport),list:new Y(this._transport),update:new $(this._transport),create:new V(this._transport),compositionSection:{list:new J(this._transport)},message:{list:new X(this._transport)},twilioSendgrid:{sync:new z(this._transport)}}}};var tt=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/composition-sections",{...e,method:"POST",json:t})}};var et=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...e,method:"GET"})}};var ot=class{constructor(t){this._transport=t}send({limit:t,request:e={}}={}){return this._transport.send("v1/composition-sections",{...e,method:"GET",searchParams:[...this._transport.limitQuery(t)]})}};var nt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var rt=class{constructor(t){this._transport=t}get api(){return{get:new et(this._transport),list:new ot(this._transport),create:new tt(this._transport),update:new nt(this._transport)}}};var st=class{constructor(t){this._transport=t}getRelativeURL({id:t,vcf:e={}}){let n=e.variant??"vcard",r=e.format??(n==="vcard"?"vcf":"json");return"v1/contacts/"+encodeURIComponent(t)+"/vcf?variant="+encodeURIComponent(n)+"&format="+encodeURIComponent(r)}getURL(t){return this._transport.getURL(this.getRelativeURL(t))}send(t){return this._transport.send(this.getURL(t),{method:"GET"})}};var it=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/contacts",{...e,method:"POST",json:t})}};var at=class{constructor(t){this._transport=t}send(t,{include:e,request:n={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"GET",searchParams:[...this._transport.includeQuery(e??{})]})}};var pt=class{constructor(t){this._transport=t}send({limit:t,query:e,request:n={}}={}){return this._transport.send("v1/contacts",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e)]})}};var ct=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var dt=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/conversations",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var lt=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/labels",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var mt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...n,method:"POST",json:e})}};var ut=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var ht=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notification-subscriptions",{...n,method:"POST",json:e})}};var ft=class{constructor(t){this._transport=t}get api(){return{get:new at(this._transport),list:new pt(this._transport),update:new ct(this._transport),create:new it(this._transport),conversation:{list:new dt(this._transport)},label:{list:new lt(this._transport)},note:{list:new ut(this._transport),create:new mt(this._transport)},notificationSubscription:{create:new ht(this._transport)},vcf:{get:new st(this._transport)}}}};var Ct=class{constructor(t){this._transport=t}send(t,{include:e,request:n={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"GET",searchParams:[...this._transport.includeQuery(e??{})]})}};var gt=class{constructor(t){this._transport=t}send({limit:t,filter:e,include:n,request:r={}}={}){return this._transport.send("v1/conversations",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...e?[["filter",e]]:[],...this._transport.includeQuery(n??{})]})}};var bt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var Ot=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/labels",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var xt=class{constructor(t){this._transport=t}send(t,{limit:e,include:n,request:r={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e),...this._transport.includeQuery(n??{})]})}};var u=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...n,method:"POST",json:e})}};var yt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var _t=class{constructor(t){this._transport=t}get api(){return{get:new Ct(this._transport),list:new gt(this._transport),update:new bt(this._transport),create:new u(this._transport),label:{list:new Ot(this._transport)},message:{list:new xt(this._transport)},note:{list:new yt(this._transport),create:new u(this._transport)}}}};var St=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/contacts",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var Tt=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var Rt=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/labels",{...e,method:"POST",json:t})}};var vt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var wt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"})}};var Ft=class{constructor(t){this._transport=t}send({limit:t,query:e,include:n,request:r={}}={}){return this._transport.send("v1/labels",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e),...this._transport.includeQuery(n??{})]})}};var At=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var Lt=class{constructor(t){this._transport=t}get api(){return{create:new Rt(this._transport),get:new wt(this._transport),list:new Ft(this._transport),update:new At(this._transport),delete:new vt(this._transport),contact:{list:new St(this._transport)},conversation:{list:new Tt(this._transport)}}}};var Ut=class{constructor(t){this._transport=t}send({limit:t,include:e,request:n={}}={}){return this._transport.send("v1/messages",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.includeQuery(e??{})]})}};var Nt=class{constructor(t){this._transport=t}get api(){return{list:new Ut(this._transport)}}};var Et=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...n,method:"POST",json:e})}};var Gt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"})}};var Pt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send("v1/models",{...t,method:"GET"})}};var qt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...n,method:"POST",timeout:12e4,json:e})}};var It=class{constructor(t){this._transport=t}get api(){return{get:new Gt(this._transport),list:new Pt(this._transport),response:{create:new qt(this._transport)},correction:{create:new Et(this._transport)}}}};var Bt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...e,method:"GET"})}};var Mt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var kt=class{constructor(t){this._transport=t}get api(){return{get:new Bt(this._transport),update:new Mt(this._transport)}}};var jt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"})}};var Dt=class{constructor(t){this._transport=t}send({category:t,request:e={}}={}){let n=[];if(t){let r=Array.isArray(t)?t:[t];for(let i of r)n.push(["category",i])}return this._transport.send("v1/sources",{...e,method:"GET",searchParams:n})}};var Qt=class{constructor(t){this._transport=t}get api(){return{get:new jt(this._transport),list:new Dt(this._transport)}}};var Ht=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/statistics/message-frequency",{...e,method:"GET"})}};var Kt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send("v1/statistics/message-frequency",{...t,method:"GET"})}};var Vt=class{constructor(t){this._transport=t}get api(){return{messageFrequency:new Kt(this._transport),channelMessageFrequency:new Ht(this._transport)}}};var Wt=class{constructor(t){this._transport=t}send({account:t,files:e,request:n={}}){let r=new FormData;for(let i of e)r.append("file",i);return this._transport.send("v1/uploads",{...n,method:"POST",body:r,searchParams:{account:t}})}};var Yt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var zt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"GET"})}};var $t=class{constructor(t){this._transport=t}get api(){return{get:new zt(this._transport),create:new Wt(this._transport),delete:new Yt(this._transport)}}};var Jt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send(".well-known/notifications",{...t,method:"GET"})}};var Xt=class{constructor(t){this._transport=t}get api(){return{notification:{get:new Jt(this._transport)}}}};var Zt=class o{static DEFAULT_BASE_URL=Pe;static PublicAuthentication=d;static BasicAuthentication=h;static BearerAuthentication=f;_transport;_account;_accountAccessToken;_accountConversationSettings;_action;_boilerplateContent;_boilerplateCategory;_channel;_compositionSection;_contact;_conversation;_label;_message;_model;_note;_source;_statistics;_upload;_webhook;_wellKnown;constructor(t,{baseURL:e,...n}={}){this._transport=new x({requestFilterables:[new C,t],...n,baseURL:e?.toString()??o.getBaseURL()}),this._account=new A(this._transport),this._accountAccessToken=new v(this._transport),this._accountConversationSettings=new N(this._transport),this._action=new G(this._transport),this._boilerplateContent=new K(this._transport),this._boilerplateCategory=new k(this._transport),this._channel=new Z(this._transport),this._compositionSection=new rt(this._transport),this._contact=new ft(this._transport),this._conversation=new _t(this._transport),this._label=new Lt(this._transport),this._message=new Nt(this._transport),this._model=new It(this._transport),this._note=new kt(this._transport),this._source=new Qt(this._transport),this._statistics=new Vt(this._transport),this._upload=new $t(this._transport),this._webhook=new y(this),this._wellKnown=new Xt(this._transport)}static getBaseURL(){return process.env[Ge]??this.DEFAULT_BASE_URL}get account(){return this._account.api}get accountAccessToken(){return this._accountAccessToken.api}get accountConversationSettings(){return this._accountConversationSettings.api}get action(){return this._action.api}get boilerplate(){return this._boilerplateContent.api}get boilerplateContent(){return this._boilerplateContent.api}get boilerplateCategory(){return this._boilerplateCategory.api}get channel(){return this._channel.api}get compositionSection(){return this._compositionSection.api}get contact(){return this._contact.api}get conversation(){return this._conversation.api}get label(){return this._label.api}get message(){return this._message.api}get model(){return this._model.api}get note(){return this._note.api}get source(){return this._source.api}get statistics(){return this._statistics.api}get upload(){return this._upload.api}get webhook(){return this._webhook}get wellKnown(){return this._wellKnown.api}};var me=require("commander"),Be=require("ora");function ue({client:o,ora:t}){let e=new me.Command("actions").description("Actions");return e.addCommand(new me.Command("list").description("List actions").action(async()=>{let n=await(0,Be.oraPromise)(()=>o.action.list.send().json(),{...t,text:"Finding actions"});console.log(n)})),e}var he=require("commander"),Me=require("ora");function fe({client:o,ora:t}){let e=new he.Command("channels").description("Channels");return e.addCommand(new he.Command("list").description("List channels").action(async()=>{let n=await(0,Me.oraPromise)(()=>o.channel.list.send().json(),{...t,text:"Finding channels"});console.log(n)})),e}var te=require("commander"),se=require("ora");function Ce({client:o,ora:t}){let e=new te.Command("contacts").description("Contacts");return e.addCommand(new te.Command("get").description("Find contact").argument("<contact>","Contact ID").action(async n=>{let r=await(0,se.oraPromise)(()=>o.contact.get.send(n).json(),{...t,text:"Finding contact"});console.log(r)})),e.addCommand(new te.Command("list").description("List contacts").action(async()=>{let n=await(0,se.oraPromise)(()=>o.contact.list.send().json(),{...t,text:"Finding contacts"});console.log(n)})),e.addCommand(new te.Command("get-vcf").description("Export Contact as VCF").argument("<contact>","Contact ID").action(async n=>{let r=await(0,se.oraPromise)(()=>o.contact.vcf.get.send({id:n}).response(),{...t,text:"Exporting contact"});console.log(r)})),e}var ie=require("commander"),ge=require("ora");function be({client:o,ora:t}){let e=new ie.Command("conversations").description("Conversations");return e.addCommand(new ie.Command("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async n=>{let r=await(0,ge.oraPromise)(()=>o.conversation.get.send(n).json(),{...t,text:"Finding conversation"});console.log(r)})),e.addCommand(new ie.Command("list").description("List conversations").action(async()=>{let n=await(0,ge.oraPromise)(()=>o.conversation.list.send().json(),{...t,text:"Finding conversations"});console.log(n)})),e}var ee=require("commander"),ae=require("ora");function Oe({client:o,ora:t}){let e=new ee.Command("labels").description("Labels");return e.addCommand(new ee.Command("get").description("Find label").argument("<label>","Label ID").action(async n=>{let r=await(0,ae.oraPromise)(()=>o.label.get.send(n).json(),{...t,text:"Finding label"});console.log(r)})),e.addCommand(new ee.Command("list").description("List labels").action(async()=>{let n=await(0,ae.oraPromise)(()=>o.label.list.send().json(),{...t,text:"Finding labels"});console.log(n)})),e.addCommand(new ee.Command("conversations").description("Find label conversations").argument("<label>","Label ID").action(async n=>{let r=await(0,ae.oraPromise)(()=>o.label.conversation.list.send(n).json(),{...t,text:"Finding conversations"});console.log(r)})),e}var xe=require("commander"),ke=require("ora");function ye({client:o,ora:t}){let e=new xe.Command("messages").description("Messages");return e.addCommand(new xe.Command("list").description("List messages").action(async()=>{let n=await(0,ke.oraPromise)(()=>o.message.list.send().json(),{...t,text:"Finding messages"});console.log(n)})),e}var pe=require("commander"),_e=require("ora");function Se({client:o,ora:t}){let e=new pe.Command("models").description("Models");return e.addCommand(new pe.Command("get").description("Find model").argument("<model>","Model ID").action(async n=>{let r=await(0,_e.oraPromise)(()=>o.model.get.send(n).json(),{...t,text:"Finding model"});console.log(r)})),e.addCommand(new pe.Command("list").description("List models").action(async()=>{let n=await(0,_e.oraPromise)(()=>o.model.list.send().json(),{...t,text:"Finding models"});console.log(n)})),e}var ce=require("commander"),Te=require("ora");function Re({client:o,ora:t}){let e=new ce.Command("sources").description("Sources");return e.addCommand(new ce.Command("get").description("Find source").argument("<source>","Source ID").action(async n=>{let r=await(0,Te.oraPromise)(()=>o.source.get.send(n).json(),{...t,text:"Finding source"});console.log(r)})),e.addCommand(new ce.Command("list").description("List sources").action(async()=>{let n=await(0,Te.oraPromise)(()=>o.source.list.send().json(),{...t,text:"Finding sources"});console.log(n)})),e}var De=require("commander");var ve=require("commander"),je=require("ora");function we({client:o,ora:t}){let e=new ve.Command("notifications").description("Well-Known Notifications Details");return e.addCommand(new ve.Command("get").description("Get Notifications Server Well-Known Info").action(async()=>{let n=await(0,je.oraPromise)(()=>o.wellKnown.notification.get.send().json(),{...t,text:"Finding Notifications Well-Known Info"});console.log(n)})),e}function Fe({client:o,ora:t}){let e=new De.Command("well-known").description("Well-Known Metadata & Info");return e.addCommand(we({client:o,ora:t})),e}var p={ora:{spinner:"simpleDotsScrolling"},client:new Zt(new d)},Xe=new Qe.Command("gds").description("Great Detail Support System").addCommand(ue(p)).addCommand(fe(p)).addCommand(Ce(p)).addCommand(be(p)).addCommand(Oe(p)).addCommand(ye(p)).addCommand(Se(p)).addCommand(Re(p)).addCommand(Fe(p)),Ze=Xe;
package/dist/cli/index.js CHANGED
@@ -1 +1 @@
1
- import{a}from"../chunk-5RA6LABL.js";import"../chunk-LWJARI3P.js";export{a as default};
1
+ import{a}from"../chunk-QIKMCXZE.js";import"../chunk-55BDEU3A.js";export{a as default};
package/dist/cli.cjs CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- "use strict";var Ke=Object.create;var Fe=Object.defineProperty;var Ve=Object.getOwnPropertyDescriptor;var We=Object.getOwnPropertyNames;var Ye=Object.getPrototypeOf,ze=Object.prototype.hasOwnProperty;var $e=(o,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of We(t))!ze.call(o,r)&&r!==e&&Fe(o,r,{get:()=>t[r],enumerable:!(n=Ve(t,r))||n.enumerable});return o};var Ae=(o,t,e)=>(e=o!=null?Ke(Ye(o)):{},$e(t||!o||!o.__esModule?Fe(e,"default",{value:o,enumerable:!0}):e,o));var De=require("commander");var d=class{getHeaders(){return{}}};var Le="SUPPORT_ACCESS_TOKEN",Ue="SUPPORT_KEY_NAME",Ne="SUPPORT_KEY_PASSWORD",ce="SUPPORT_SIGNING_KEY",Ee="SUPPORT_BASE_URL";var h=class{name;#t;constructor({name:t=process.env[Ue],password:e=process.env[Ne]}={}){if(!t)throw new Error("Name option must be specified when using Basic Authentication");if(!e)throw new Error("Password option must be specified when using Basic Authentication");this.name=t,this.#t=e}getHeaders(){return{Authorization:`Basic ${btoa(this.name+":"+this.#t)}`}}};var f=class{#t;constructor({token:t=process.env[Le]}={}){if(!t)throw new Error("Access Token option must be specified when using Token Authentication");this.#t=t}getHeaders(){return{Authorization:`Bearer ${this.#t}`}}};var Ge="https://api.support.greatdetail.com",Pe={"X-Powered-By":"GDSupport/JavaScript"};var C=class o{constructor(t=o.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=Pe;async filter(){return{headers:this.getHeaders()}}getHeaders(){return this._standardHeaders}};var qe=Ae(require("is-network-error"),1),ne=Ae(require("ky"),1);var a=class extends Error{static serverError(t){return new this("Server Error: "+t)}};var l=class extends a{};var g=class extends l{static unauthenticated(){return new this("An unauthenticated request occurred")}};var b=class extends l{static forbidden(){return new this("A forbidden request occurred")}};var c=class extends a{static notFound(t){return new this(`Record not found for request: ${t}`)}static forbiddenMethod(t,e){return new this(`Forbidden method for request: ${t} ${e}`)}static teapot(){return new this("I'm a teapot")}static rateLimited(){return new this("Request has been rate-limited")}};var O=class extends a{};var m=class extends a{static badRequest(){return new this("Bad request")}static unsupportedMediaType(){return new this("Unsupported Media Type")}};var x=class{client;options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t},this.client=ne.default.create({prefixUrl:this.options.baseURL,timeout:12e3,hooks:{beforeRequest:[n=>{for(let r of this.options.requestFilterables){let i=r.getHeaders();for(let[oe,He]of Object.entries(i))n.headers.has(oe)||n.headers.set(oe,He)}}]}})}getURL(t){return new URL(t,this.options.baseURL).toString()}sortQuery(t){let e=[];if(t===void 0)return e;for(let[n,r]of Object.entries(t))r!==void 0&&e.push(["sort",r+n]);return e}limitQuery(t){let e=[];return t===void 0||e.push(["limit",t.toString()]),e}includeQuery(t){let e=[];if(t===void 0)return e;for(let n of Object.keys(t))e.push(["include",n]);return e}queryQuery(t){let e=[];return t===void 0||e.push(["query",t]),e}send(t,e={}){let n=this.client(t,e).catch(r=>{if((0,qe.default)(r))throw new O("A network error occurred",{cause:r});if(r instanceof ne.HTTPError){let i=r.response.status;switch(console.error(JSON.stringify(r.response)),i){case 400:throw m.badRequest();case 401:throw g.unauthenticated();case 403:throw b.forbidden();case 404:throw c.notFound(t);case 405:throw c.forbiddenMethod(t,e.method??"GET");case 415:throw m.unsupportedMediaType();case 418:throw c.teapot();case 429:throw c.rateLimited()}if(i>=500&&i<600)throw a.serverError(i)}throw r});return{response:()=>n,json:async()=>(await n).json()}}};var s=require("zod");var y=class o{constructor(t){this._client=t}static SCHEMA=s.z.object({data:s.z.object({event:s.z.intersection(s.z.object({id:s.z.string(),createdAt:s.z.string().datetime()}),s.z.union([s.z.object({type:s.z.union([s.z.literal("account.created"),s.z.literal("account.updated")]),payload:s.z.object({account:s.z.string()})}),s.z.object({type:s.z.union([s.z.literal("accountAccessToken.created"),s.z.literal("accountAccessToken.deleted")]),payload:s.z.object({accountAccessToken:s.z.string()})}),s.z.object({type:s.z.union([s.z.literal("contact.created"),s.z.literal("contact.updated")]),payload:s.z.object({contact:s.z.string()})}),s.z.object({type:s.z.union([s.z.literal("conversation.created"),s.z.literal("conversation.updated"),s.z.literal("conversation.closed"),s.z.literal("conversation.received"),s.z.literal("conversation.resolved"),s.z.literal("conversation.sent")]),payload:s.z.object({conversation:s.z.string()})}),s.z.object({type:s.z.union([s.z.literal("message.created"),s.z.literal("message.updated"),s.z.literal("message.delivered"),s.z.literal("message.failed"),s.z.literal("message.read"),s.z.literal("message.received"),s.z.literal("message.sent")]),payload:s.z.object({message:s.z.string()})})]))})});async event({key:t=process.env[ce],maxSignatures:e=3,request:n}){let r=n.headers["gds-signature"];if(t!==!1){if(t===void 0)throw new Error("Missing webhook signing key in process.env."+ce);if(!r)throw new Error("Missing signature header");if(!this._verifySignature(t,n.body,Array.isArray(r)?r.slice(0,e):[r]))throw new Error("Untrusted signature")}let{data:i}=o.SCHEMA.parse(n.body);return{event:i.event}}async _verifySignature(t,e,n){let r=await crypto.subtle.importKey("raw",new TextEncoder().encode(t),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"]);for(let i of n)if(await crypto.subtle.verify("HMAC",r,new TextEncoder().encode(atob(i)),new TextEncoder().encode(JSON.stringify(e))))return!0;return!1}};var _=class{constructor(t){this._transport=t}send(t,{body:e={},request:n={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens",{...n,method:"POST",json:e})}};var S=class{constructor(t){this._transport=t}send(t,e,{body:n,request:r={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens/"+encodeURIComponent(e),{...r,method:"DELETE",json:n})}};var T=class{constructor(t){this._transport=t}send(t,e,{request:n={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens/"+encodeURIComponent(e),{...n,method:"GET"})}};var R=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens",{...e,method:"GET"})}};var v=class{constructor(t){this._transport=t}get api(){return{get:new T(this._transport),list:new R(this._transport),create:new _(this._transport),delete:new S(this._transport)}}};var w=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t),{...e,method:"GET"})}};var F=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/accounts/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var A=class{constructor(t){this._transport=t}get api(){return{get:new w(this._transport),update:new F(this._transport)}}};var L=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/conversation-settings",{...e,method:"GET"})}};var U=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/conversation-settings",{...n,method:"PATCH",json:e})}};var N=class{constructor(t){this._transport=t}get api(){return{get:new L(this._transport),update:new U(this._transport)}}};var E=class{constructor(t){this._transport=t}send({limit:t,sort:e,request:n={}}={}){return this._transport.send("v1/actions",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.sortQuery(e)]})}};var G=class{constructor(t){this._transport=t}get api(){return{list:new E(this._transport)}}};var P=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/boilerplates/categories",{...e,method:"POST",json:t})}};var q=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t),{...e,method:"GET"})}};var I=class{constructor(t){this._transport=t}send({limit:t,include:e,request:n={}}={}){return this._transport.send("v1/boilerplates/categories",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.includeQuery(e)]})}};var B=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var M=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t)+"/contents",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var k=class{constructor(t){this._transport=t}get api(){return{get:new q(this._transport),list:new I(this._transport),create:new P(this._transport),update:new B(this._transport),boilerplate:{list:new M(this._transport)}}}};var j=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/boilerplates/contents",{...e,method:"POST",json:t})}};var D=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/boilerplates/contents/"+encodeURIComponent(t),{...e,method:"GET"})}};var Q=class{constructor(t){this._transport=t}send({limit:t,query:e,request:n={}}={}){return this._transport.send("v1/boilerplates/contents",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e)]})}};var H=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/boilerplates/contents/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var K=class{constructor(t){this._transport=t}get api(){return{get:new D(this._transport),list:new Q(this._transport),update:new H(this._transport),create:new j(this._transport)}}};var V=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/channels",{...e,method:"POST",json:t})}};var W=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...e,method:"GET"})}};var Y=class{constructor(t){this._transport=t}send({limit:t,request:e={}}={}){return this._transport.send("v1/channels",{...e,method:"GET",searchParams:[...this._transport.limitQuery(t)]})}};var de=require("zod"),z=class o{constructor(t){this._transport=t}static SCHEMA=de.z.object({overwrite:de.z.boolean().optional()});send(t,{body:e,request:n={}}){return this._transport.send("v1/sources/twilio-sendgrid/channels/"+encodeURIComponent(t)+"/sync",{...n,method:"POST",json:o.SCHEMA.parse(e)})}};var $=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var J=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/composition-sections",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var X=class{constructor(t){this._transport=t}send(t,{limit:e,include:n,request:r={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/messages",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e),...this._transport.includeQuery(n)]})}};var Z=class{constructor(t){this._transport=t}get api(){return{get:new W(this._transport),list:new Y(this._transport),update:new $(this._transport),create:new V(this._transport),compositionSection:{list:new J(this._transport)},message:{list:new X(this._transport)},twilioSendgrid:{sync:new z(this._transport)}}}};var tt=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/composition-sections",{...e,method:"POST",json:t})}};var et=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...e,method:"GET"})}};var ot=class{constructor(t){this._transport=t}send({limit:t,request:e={}}={}){return this._transport.send("v1/composition-sections",{...e,method:"GET",searchParams:[...this._transport.limitQuery(t)]})}};var nt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var rt=class{constructor(t){this._transport=t}get api(){return{get:new et(this._transport),list:new ot(this._transport),create:new tt(this._transport),update:new nt(this._transport)}}};var st=class{constructor(t){this._transport=t}getRelativeURL({id:t,vcf:e={}}){let n=e.variant??"vcard",r=e.format??(n==="vcard"?"vcf":"json");return"v1/contacts/"+encodeURIComponent(t)+"/vcf?variant="+encodeURIComponent(n)+"&format="+encodeURIComponent(r)}getURL(t){return this._transport.getURL(this.getRelativeURL(t))}send(t){return this._transport.send(this.getURL(t),{method:"GET"})}};var it=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/contacts",{...e,method:"POST",json:t})}};var at=class{constructor(t){this._transport=t}send(t,{include:e,request:n={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"GET",searchParams:[...this._transport.includeQuery(e??{})]})}};var pt=class{constructor(t){this._transport=t}send({limit:t,query:e,request:n={}}={}){return this._transport.send("v1/contacts",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e)]})}};var ct=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var dt=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/conversations",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var lt=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/labels",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var mt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...n,method:"POST",json:e})}};var ut=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var ht=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notification-subscriptions",{...n,method:"POST",json:e})}};var ft=class{constructor(t){this._transport=t}get api(){return{get:new at(this._transport),list:new pt(this._transport),update:new ct(this._transport),create:new it(this._transport),conversation:{list:new dt(this._transport)},label:{list:new lt(this._transport)},note:{list:new ut(this._transport),create:new mt(this._transport)},notificationSubscription:{create:new ht(this._transport)},vcf:{get:new st(this._transport)}}}};var Ct=class{constructor(t){this._transport=t}send(t,{include:e,request:n={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"GET",searchParams:[...this._transport.includeQuery(e??{})]})}};var gt=class{constructor(t){this._transport=t}send({limit:t,filter:e,include:n,request:r={}}={}){return this._transport.send("v1/conversations",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...e?[["filter",e]]:[],...this._transport.includeQuery(n??{})]})}};var bt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var Ot=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/labels",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var xt=class{constructor(t){this._transport=t}send(t,{limit:e,include:n,request:r={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e),...this._transport.includeQuery(n??{})]})}};var u=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...n,method:"POST",json:e})}};var yt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var _t=class{constructor(t){this._transport=t}get api(){return{get:new Ct(this._transport),list:new gt(this._transport),update:new bt(this._transport),create:new u(this._transport),label:{list:new Ot(this._transport)},message:{list:new xt(this._transport)},note:{list:new yt(this._transport),create:new u(this._transport)}}}};var St=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/contacts",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var Tt=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var Rt=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/labels",{...e,method:"POST",json:t})}};var vt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var wt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"})}};var Ft=class{constructor(t){this._transport=t}send({limit:t,query:e,include:n,request:r={}}={}){return this._transport.send("v1/labels",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e),...this._transport.includeQuery(n??{})]})}};var At=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var Lt=class{constructor(t){this._transport=t}get api(){return{create:new Rt(this._transport),get:new wt(this._transport),list:new Ft(this._transport),update:new At(this._transport),delete:new vt(this._transport),contact:{list:new St(this._transport)},conversation:{list:new Tt(this._transport)}}}};var Ut=class{constructor(t){this._transport=t}send({limit:t,include:e,request:n={}}={}){return this._transport.send("v1/messages",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.includeQuery(e??{})]})}};var Nt=class{constructor(t){this._transport=t}get api(){return{list:new Ut(this._transport)}}};var Et=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...n,method:"POST",json:e})}};var Gt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"})}};var Pt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send("v1/models",{...t,method:"GET"})}};var qt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...n,method:"POST",timeout:12e4,json:e})}};var It=class{constructor(t){this._transport=t}get api(){return{get:new Gt(this._transport),list:new Pt(this._transport),response:{create:new qt(this._transport)},correction:{create:new Et(this._transport)}}}};var Bt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...e,method:"GET"})}};var Mt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var kt=class{constructor(t){this._transport=t}get api(){return{get:new Bt(this._transport),update:new Mt(this._transport)}}};var jt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"})}};var Dt=class{constructor(t){this._transport=t}send({category:t,request:e={}}={}){let n=[];if(t){let r=Array.isArray(t)?t:[t];for(let i of r)n.push(["category",i])}return this._transport.send("v1/sources",{...e,method:"GET",searchParams:n})}};var Qt=class{constructor(t){this._transport=t}get api(){return{get:new jt(this._transport),list:new Dt(this._transport)}}};var Ht=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/statistics/message-frequency",{...e,method:"GET"})}};var Kt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send("v1/statistics/message-frequency",{...t,method:"GET"})}};var Vt=class{constructor(t){this._transport=t}get api(){return{messageFrequency:new Kt(this._transport),channelMessageFrequency:new Ht(this._transport)}}};var Wt=class{constructor(t){this._transport=t}send({account:t,files:e,request:n={}}){let r=new FormData;for(let i of e)r.append("file",i);return this._transport.send("v1/uploads",{...n,method:"POST",body:r,searchParams:{account:t}})}};var Yt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var zt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"GET"})}};var $t=class{constructor(t){this._transport=t}get api(){return{get:new zt(this._transport),create:new Wt(this._transport),delete:new Yt(this._transport)}}};var Jt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send(".well-known/notifications",{...t,method:"GET"})}};var Xt=class{constructor(t){this._transport=t}get api(){return{notification:{get:new Jt(this._transport)}}}};var Zt=class o{static DEFAULT_BASE_URL=Ge;static PublicAuthentication=d;static BasicAuthentication=h;static BearerAuthentication=f;_transport;_account;_accountAccessToken;_accountConversationSettings;_action;_boilerplateContent;_boilerplateCategory;_channel;_compositionSection;_contact;_conversation;_label;_message;_model;_note;_source;_statistics;_upload;_webhook;_wellKnown;constructor(t,{baseURL:e,...n}={}){this._transport=new x({requestFilterables:[new C,t],...n,baseURL:e?.toString()??o.getBaseURL()}),this._account=new A(this._transport),this._accountAccessToken=new v(this._transport),this._accountConversationSettings=new N(this._transport),this._action=new G(this._transport),this._boilerplateContent=new K(this._transport),this._boilerplateCategory=new k(this._transport),this._channel=new Z(this._transport),this._compositionSection=new rt(this._transport),this._contact=new ft(this._transport),this._conversation=new _t(this._transport),this._label=new Lt(this._transport),this._message=new Nt(this._transport),this._model=new It(this._transport),this._note=new kt(this._transport),this._source=new Qt(this._transport),this._statistics=new Vt(this._transport),this._upload=new $t(this._transport),this._webhook=new y(this),this._wellKnown=new Xt(this._transport)}static getBaseURL(){return process.env[Ee]??this.DEFAULT_BASE_URL}get account(){return this._account.api}get accountAccessToken(){return this._accountAccessToken.api}get accountConversationSettings(){return this._accountConversationSettings.api}get action(){return this._action.api}get boilerplate(){return this._boilerplateContent.api}get boilerplateContent(){return this._boilerplateContent.api}get boilerplateCategory(){return this._boilerplateCategory.api}get channel(){return this._channel.api}get compositionSection(){return this._compositionSection.api}get contact(){return this._contact.api}get conversation(){return this._conversation.api}get label(){return this._label.api}get message(){return this._message.api}get model(){return this._model.api}get note(){return this._note.api}get source(){return this._source.api}get statistics(){return this._statistics.api}get upload(){return this._upload.api}get webhook(){return this._webhook}get wellKnown(){return this._wellKnown.api}};var le=require("commander"),Ie=require("ora");function me({client:o,ora:t}){let e=new le.Command("actions").description("Actions");return e.addCommand(new le.Command("list").description("List actions").action(async()=>{let n=await(0,Ie.oraPromise)(()=>o.action.list.send().json(),{...t,text:"Finding actions"});console.log(n)})),e}var ue=require("commander"),Be=require("ora");function he({client:o,ora:t}){let e=new ue.Command("channels").description("Channels");return e.addCommand(new ue.Command("list").description("List channels").action(async()=>{let n=await(0,Be.oraPromise)(()=>o.channel.list.send().json(),{...t,text:"Finding channels"});console.log(n)})),e}var te=require("commander"),re=require("ora");function fe({client:o,ora:t}){let e=new te.Command("contacts").description("Contacts");return e.addCommand(new te.Command("get").description("Find contact").argument("<contact>","Contact ID").action(async n=>{let r=await(0,re.oraPromise)(()=>o.contact.get.send(n).json(),{...t,text:"Finding contact"});console.log(r)})),e.addCommand(new te.Command("list").description("List contacts").action(async()=>{let n=await(0,re.oraPromise)(()=>o.contact.list.send().json(),{...t,text:"Finding contacts"});console.log(n)})),e.addCommand(new te.Command("get-vcf").description("Export Contact as VCF").argument("<contact>","Contact ID").action(async n=>{let r=await(0,re.oraPromise)(()=>o.contact.vcf.get.send({id:n}).response(),{...t,text:"Exporting contact"});console.log(r)})),e}var se=require("commander"),Ce=require("ora");function ge({client:o,ora:t}){let e=new se.Command("conversations").description("Conversations");return e.addCommand(new se.Command("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async n=>{let r=await(0,Ce.oraPromise)(()=>o.conversation.get.send(n).json(),{...t,text:"Finding conversation"});console.log(r)})),e.addCommand(new se.Command("list").description("List conversations").action(async()=>{let n=await(0,Ce.oraPromise)(()=>o.conversation.list.send().json(),{...t,text:"Finding conversations"});console.log(n)})),e}var ee=require("commander"),ie=require("ora");function be({client:o,ora:t}){let e=new ee.Command("labels").description("Labels");return e.addCommand(new ee.Command("get").description("Find label").argument("<label>","Label ID").action(async n=>{let r=await(0,ie.oraPromise)(()=>o.label.get.send(n).json(),{...t,text:"Finding label"});console.log(r)})),e.addCommand(new ee.Command("list").description("List labels").action(async()=>{let n=await(0,ie.oraPromise)(()=>o.label.list.send().json(),{...t,text:"Finding labels"});console.log(n)})),e.addCommand(new ee.Command("conversations").description("Find label conversations").argument("<label>","Label ID").action(async n=>{let r=await(0,ie.oraPromise)(()=>o.label.conversation.list.send(n).json(),{...t,text:"Finding conversations"});console.log(r)})),e}var Oe=require("commander"),Me=require("ora");function xe({client:o,ora:t}){let e=new Oe.Command("messages").description("Messages");return e.addCommand(new Oe.Command("list").description("List messages").action(async()=>{let n=await(0,Me.oraPromise)(()=>o.message.list.send().json(),{...t,text:"Finding messages"});console.log(n)})),e}var ae=require("commander"),ye=require("ora");function _e({client:o,ora:t}){let e=new ae.Command("models").description("Models");return e.addCommand(new ae.Command("get").description("Find model").argument("<model>","Model ID").action(async n=>{let r=await(0,ye.oraPromise)(()=>o.model.get.send(n).json(),{...t,text:"Finding model"});console.log(r)})),e.addCommand(new ae.Command("list").description("List models").action(async()=>{let n=await(0,ye.oraPromise)(()=>o.model.list.send().json(),{...t,text:"Finding models"});console.log(n)})),e}var pe=require("commander"),Se=require("ora");function Te({client:o,ora:t}){let e=new pe.Command("sources").description("Sources");return e.addCommand(new pe.Command("get").description("Find source").argument("<source>","Source ID").action(async n=>{let r=await(0,Se.oraPromise)(()=>o.source.get.send(n).json(),{...t,text:"Finding source"});console.log(r)})),e.addCommand(new pe.Command("list").description("List sources").action(async()=>{let n=await(0,Se.oraPromise)(()=>o.source.list.send().json(),{...t,text:"Finding sources"});console.log(n)})),e}var je=require("commander");var Re=require("commander"),ke=require("ora");function ve({client:o,ora:t}){let e=new Re.Command("notifications").description("Well-Known Notifications Details");return e.addCommand(new Re.Command("get").description("Get Notifications Server Well-Known Info").action(async()=>{let n=await(0,ke.oraPromise)(()=>o.wellKnown.notification.get.send().json(),{...t,text:"Finding Notifications Well-Known Info"});console.log(n)})),e}function we({client:o,ora:t}){let e=new je.Command("well-known").description("Well-Known Metadata & Info");return e.addCommand(ve({client:o,ora:t})),e}var p={ora:{spinner:"simpleDotsScrolling"},client:new Zt(new d)},Je=new De.Command("gds").description("Great Detail Support System").addCommand(me(p)).addCommand(he(p)).addCommand(fe(p)).addCommand(ge(p)).addCommand(be(p)).addCommand(xe(p)).addCommand(_e(p)).addCommand(Te(p)).addCommand(we(p)),Qe=Je;Qe.parseAsync(process.argv);
2
+ "use strict";var Ke=Object.create;var Fe=Object.defineProperty;var Ve=Object.getOwnPropertyDescriptor;var We=Object.getOwnPropertyNames;var Ye=Object.getPrototypeOf,ze=Object.prototype.hasOwnProperty;var $e=(o,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of We(t))!ze.call(o,r)&&r!==e&&Fe(o,r,{get:()=>t[r],enumerable:!(n=Ve(t,r))||n.enumerable});return o};var Ae=(o,t,e)=>(e=o!=null?Ke(Ye(o)):{},$e(t||!o||!o.__esModule?Fe(e,"default",{value:o,enumerable:!0}):e,o));var De=require("commander");var d=class{getHeaders(){return{}}};var Le="SUPPORT_ACCESS_TOKEN",Ue="SUPPORT_KEY_NAME",Ne="SUPPORT_KEY_PASSWORD",ce="SUPPORT_SIGNING_KEY",Ee="SUPPORT_BASE_URL";var h=class{name;#t;constructor({name:t=process.env[Ue],password:e=process.env[Ne]}={}){if(!t)throw new Error("Name option must be specified when using Basic Authentication");if(!e)throw new Error("Password option must be specified when using Basic Authentication");this.name=t,this.#t=e}getHeaders(){return{Authorization:`Basic ${btoa(this.name+":"+this.#t)}`}}};var f=class{#t;constructor({token:t=process.env[Le]}={}){if(!t)throw new Error("Access Token option must be specified when using Token Authentication");this.#t=t}getHeaders(){return{Authorization:`Bearer ${this.#t}`}}};var Ge="https://api.support.greatdetail.com",Pe={"X-Powered-By":"GDSupport/JavaScript"};var C=class o{constructor(t=o.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=Pe;async filter(){return{headers:this.getHeaders()}}getHeaders(){return this._standardHeaders}};var qe=Ae(require("is-network-error"),1),ne=Ae(require("ky"),1);var a=class extends Error{static serverError(t){return new this("Server Error: "+t)}};var l=class extends a{};var g=class extends l{static unauthenticated(){return new this("An unauthenticated request occurred")}};var b=class extends l{static forbidden(){return new this("A forbidden request occurred")}};var c=class extends a{static notFound(t){return new this(`Record not found for request: ${t}`)}static forbiddenMethod(t,e){return new this(`Forbidden method for request: ${t} ${e}`)}static teapot(){return new this("I'm a teapot")}static rateLimited(){return new this("Request has been rate-limited")}};var O=class extends a{};var m=class extends a{static badRequest(){return new this("Bad request")}static unsupportedMediaType(){return new this("Unsupported Media Type")}};var x=class{client;options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t},this.client=ne.default.create({prefixUrl:this.options.baseURL,timeout:12e3,hooks:{beforeRequest:[n=>{for(let r of this.options.requestFilterables){let i=r.getHeaders();for(let[oe,He]of Object.entries(i))n.headers.has(oe)||n.headers.set(oe,He)}}]}})}getURL(t){return new URL(t,this.options.baseURL).toString()}sortQuery(t){let e=[];if(t===void 0)return e;for(let[n,r]of Object.entries(t))r!==void 0&&e.push(["sort",r+n]);return e}limitQuery(t){let e=[];return t===void 0||e.push(["limit",t.toString()]),e}includeQuery(t){let e=[];if(t===void 0)return e;for(let n of Object.keys(t))e.push(["include",n]);return e}queryQuery(t){let e=[];return t===void 0||e.push(["query",t]),e}send(t,e={}){let n=this.client(t,e).catch(r=>{if((0,qe.default)(r))throw new O("A network error occurred",{cause:r});if(r instanceof ne.HTTPError){let i=r.response.status;switch(console.error(JSON.stringify(r.response)),i){case 400:throw m.badRequest();case 401:throw g.unauthenticated();case 403:throw b.forbidden();case 404:throw c.notFound(t);case 405:throw c.forbiddenMethod(t,e.method??"GET");case 415:throw m.unsupportedMediaType();case 418:throw c.teapot();case 429:throw c.rateLimited()}if(i>=500&&i<600)throw a.serverError(i)}throw r});return{response:()=>n,json:async()=>(await n).json()}}};var s=require("zod");var y=class o{constructor(t){this._client=t}static SCHEMA=s.z.object({data:s.z.object({event:s.z.intersection(s.z.object({id:s.z.string(),createdAt:s.z.string().datetime()}),s.z.union([s.z.object({type:s.z.union([s.z.literal("account.created"),s.z.literal("account.updated")]),payload:s.z.object({account:s.z.string()})}),s.z.object({type:s.z.union([s.z.literal("accountAccessToken.created"),s.z.literal("accountAccessToken.deleted")]),payload:s.z.object({accountAccessToken:s.z.string()})}),s.z.object({type:s.z.union([s.z.literal("contact.created"),s.z.literal("contact.updated")]),payload:s.z.object({contact:s.z.string()})}),s.z.object({type:s.z.union([s.z.literal("conversation.created"),s.z.literal("conversation.updated"),s.z.literal("conversation.closed"),s.z.literal("conversation.received"),s.z.literal("conversation.resolved"),s.z.literal("conversation.sent")]),payload:s.z.object({conversation:s.z.string()})}),s.z.object({type:s.z.union([s.z.literal("message.created"),s.z.literal("message.updated"),s.z.literal("message.delivered"),s.z.literal("message.failed"),s.z.literal("message.read"),s.z.literal("message.received"),s.z.literal("message.sent")]),payload:s.z.object({message:s.z.string()})})]))})});async event({key:t=process.env[ce],maxSignatures:e=3,request:n}){let r=n.headers["gds-signature"];if(t!==!1){if(t===void 0)throw new Error("Missing webhook signing key in process.env."+ce);if(!r)throw new Error("Missing signature header");if(!this._verifySignature(t,n.body,Array.isArray(r)?r.slice(0,e):[r]))throw new Error("Untrusted signature")}let{data:i}=o.SCHEMA.parse(n.body);return{event:i.event}}async _verifySignature(t,e,n){let r=await crypto.subtle.importKey("raw",new TextEncoder().encode(t),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"]);for(let i of n)if(await crypto.subtle.verify("HMAC",r,new TextEncoder().encode(atob(i)),new TextEncoder().encode(JSON.stringify(e))))return!0;return!1}};var _=class{constructor(t){this._transport=t}send(t,{body:e={},request:n={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens",{...n,method:"POST",json:e})}};var S=class{constructor(t){this._transport=t}send(t,e,{body:n,request:r={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens/"+encodeURIComponent(e),{...r,method:"DELETE",json:n})}};var T=class{constructor(t){this._transport=t}send(t,e,{request:n={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens/"+encodeURIComponent(e),{...n,method:"GET"})}};var R=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens",{...e,method:"GET"})}};var v=class{constructor(t){this._transport=t}get api(){return{get:new T(this._transport),list:new R(this._transport),create:new _(this._transport),delete:new S(this._transport)}}};var w=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t),{...e,method:"GET"})}};var F=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/accounts/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var A=class{constructor(t){this._transport=t}get api(){return{get:new w(this._transport),update:new F(this._transport)}}};var L=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/conversation-settings",{...e,method:"GET"})}};var U=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/conversation-settings",{...n,method:"PATCH",json:e})}};var N=class{constructor(t){this._transport=t}get api(){return{get:new L(this._transport),update:new U(this._transport)}}};var E=class{constructor(t){this._transport=t}send({limit:t,sort:e,request:n={}}={}){return this._transport.send("v1/actions",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.sortQuery(e)]})}};var G=class{constructor(t){this._transport=t}get api(){return{list:new E(this._transport)}}};var P=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/boilerplates/categories",{...e,method:"POST",json:t})}};var q=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t),{...e,method:"GET"})}};var I=class{constructor(t){this._transport=t}send({limit:t,include:e,request:n={}}={}){return this._transport.send("v1/boilerplates/categories",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.includeQuery(e)]})}};var B=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var M=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t)+"/contents",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var k=class{constructor(t){this._transport=t}get api(){return{get:new q(this._transport),list:new I(this._transport),create:new P(this._transport),update:new B(this._transport),boilerplate:{list:new M(this._transport)}}}};var j=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/boilerplates/contents",{...e,method:"POST",json:t})}};var D=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/boilerplates/contents/"+encodeURIComponent(t),{...e,method:"GET"})}};var Q=class{constructor(t){this._transport=t}send({limit:t,query:e,request:n={}}={}){return this._transport.send("v1/boilerplates/contents",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e)]})}};var H=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/boilerplates/contents/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var K=class{constructor(t){this._transport=t}get api(){return{get:new D(this._transport),list:new Q(this._transport),update:new H(this._transport),create:new j(this._transport)}}};var V=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/channels",{...e,method:"POST",json:t})}};var W=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...e,method:"GET"})}};var Y=class{constructor(t){this._transport=t}send({limit:t,request:e={}}={}){return this._transport.send("v1/channels",{...e,method:"GET",searchParams:[...this._transport.limitQuery(t)]})}};var de=require("zod"),z=class o{constructor(t){this._transport=t}static SCHEMA=de.z.object({overwrite:de.z.boolean().optional()});send(t,{body:e,request:n={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/twilio-sendgrid/sync",{...n,method:"POST",json:o.SCHEMA.parse(e)})}};var $=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var J=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/composition-sections",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var X=class{constructor(t){this._transport=t}send(t,{limit:e,include:n,request:r={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/messages",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e),...this._transport.includeQuery(n)]})}};var Z=class{constructor(t){this._transport=t}get api(){return{get:new W(this._transport),list:new Y(this._transport),update:new $(this._transport),create:new V(this._transport),compositionSection:{list:new J(this._transport)},message:{list:new X(this._transport)},twilioSendgrid:{sync:new z(this._transport)}}}};var tt=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/composition-sections",{...e,method:"POST",json:t})}};var et=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...e,method:"GET"})}};var ot=class{constructor(t){this._transport=t}send({limit:t,request:e={}}={}){return this._transport.send("v1/composition-sections",{...e,method:"GET",searchParams:[...this._transport.limitQuery(t)]})}};var nt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var rt=class{constructor(t){this._transport=t}get api(){return{get:new et(this._transport),list:new ot(this._transport),create:new tt(this._transport),update:new nt(this._transport)}}};var st=class{constructor(t){this._transport=t}getRelativeURL({id:t,vcf:e={}}){let n=e.variant??"vcard",r=e.format??(n==="vcard"?"vcf":"json");return"v1/contacts/"+encodeURIComponent(t)+"/vcf?variant="+encodeURIComponent(n)+"&format="+encodeURIComponent(r)}getURL(t){return this._transport.getURL(this.getRelativeURL(t))}send(t){return this._transport.send(this.getURL(t),{method:"GET"})}};var it=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/contacts",{...e,method:"POST",json:t})}};var at=class{constructor(t){this._transport=t}send(t,{include:e,request:n={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"GET",searchParams:[...this._transport.includeQuery(e??{})]})}};var pt=class{constructor(t){this._transport=t}send({limit:t,query:e,request:n={}}={}){return this._transport.send("v1/contacts",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e)]})}};var ct=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var dt=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/conversations",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var lt=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/labels",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var mt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...n,method:"POST",json:e})}};var ut=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var ht=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notification-subscriptions",{...n,method:"POST",json:e})}};var ft=class{constructor(t){this._transport=t}get api(){return{get:new at(this._transport),list:new pt(this._transport),update:new ct(this._transport),create:new it(this._transport),conversation:{list:new dt(this._transport)},label:{list:new lt(this._transport)},note:{list:new ut(this._transport),create:new mt(this._transport)},notificationSubscription:{create:new ht(this._transport)},vcf:{get:new st(this._transport)}}}};var Ct=class{constructor(t){this._transport=t}send(t,{include:e,request:n={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"GET",searchParams:[...this._transport.includeQuery(e??{})]})}};var gt=class{constructor(t){this._transport=t}send({limit:t,filter:e,include:n,request:r={}}={}){return this._transport.send("v1/conversations",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...e?[["filter",e]]:[],...this._transport.includeQuery(n??{})]})}};var bt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var Ot=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/labels",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var xt=class{constructor(t){this._transport=t}send(t,{limit:e,include:n,request:r={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e),...this._transport.includeQuery(n??{})]})}};var u=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...n,method:"POST",json:e})}};var yt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var _t=class{constructor(t){this._transport=t}get api(){return{get:new Ct(this._transport),list:new gt(this._transport),update:new bt(this._transport),create:new u(this._transport),label:{list:new Ot(this._transport)},message:{list:new xt(this._transport)},note:{list:new yt(this._transport),create:new u(this._transport)}}}};var St=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/contacts",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var Tt=class{constructor(t){this._transport=t}send(t,{limit:e,request:n={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...n,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var Rt=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/labels",{...e,method:"POST",json:t})}};var vt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var wt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"})}};var Ft=class{constructor(t){this._transport=t}send({limit:t,query:e,include:n,request:r={}}={}){return this._transport.send("v1/labels",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e),...this._transport.includeQuery(n??{})]})}};var At=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var Lt=class{constructor(t){this._transport=t}get api(){return{create:new Rt(this._transport),get:new wt(this._transport),list:new Ft(this._transport),update:new At(this._transport),delete:new vt(this._transport),contact:{list:new St(this._transport)},conversation:{list:new Tt(this._transport)}}}};var Ut=class{constructor(t){this._transport=t}send({limit:t,include:e,request:n={}}={}){return this._transport.send("v1/messages",{...n,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.includeQuery(e??{})]})}};var Nt=class{constructor(t){this._transport=t}get api(){return{list:new Ut(this._transport)}}};var Et=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...n,method:"POST",json:e})}};var Gt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"})}};var Pt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send("v1/models",{...t,method:"GET"})}};var qt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...n,method:"POST",timeout:12e4,json:e})}};var It=class{constructor(t){this._transport=t}get api(){return{get:new Gt(this._transport),list:new Pt(this._transport),response:{create:new qt(this._transport)},correction:{create:new Et(this._transport)}}}};var Bt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...e,method:"GET"})}};var Mt=class{constructor(t){this._transport=t}send(t,{body:e,request:n={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...n,method:"PATCH",json:e})}};var kt=class{constructor(t){this._transport=t}get api(){return{get:new Bt(this._transport),update:new Mt(this._transport)}}};var jt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"})}};var Dt=class{constructor(t){this._transport=t}send({category:t,request:e={}}={}){let n=[];if(t){let r=Array.isArray(t)?t:[t];for(let i of r)n.push(["category",i])}return this._transport.send("v1/sources",{...e,method:"GET",searchParams:n})}};var Qt=class{constructor(t){this._transport=t}get api(){return{get:new jt(this._transport),list:new Dt(this._transport)}}};var Ht=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/statistics/message-frequency",{...e,method:"GET"})}};var Kt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send("v1/statistics/message-frequency",{...t,method:"GET"})}};var Vt=class{constructor(t){this._transport=t}get api(){return{messageFrequency:new Kt(this._transport),channelMessageFrequency:new Ht(this._transport)}}};var Wt=class{constructor(t){this._transport=t}send({account:t,files:e,request:n={}}){let r=new FormData;for(let i of e)r.append("file",i);return this._transport.send("v1/uploads",{...n,method:"POST",body:r,searchParams:{account:t}})}};var Yt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var zt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"GET"})}};var $t=class{constructor(t){this._transport=t}get api(){return{get:new zt(this._transport),create:new Wt(this._transport),delete:new Yt(this._transport)}}};var Jt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send(".well-known/notifications",{...t,method:"GET"})}};var Xt=class{constructor(t){this._transport=t}get api(){return{notification:{get:new Jt(this._transport)}}}};var Zt=class o{static DEFAULT_BASE_URL=Ge;static PublicAuthentication=d;static BasicAuthentication=h;static BearerAuthentication=f;_transport;_account;_accountAccessToken;_accountConversationSettings;_action;_boilerplateContent;_boilerplateCategory;_channel;_compositionSection;_contact;_conversation;_label;_message;_model;_note;_source;_statistics;_upload;_webhook;_wellKnown;constructor(t,{baseURL:e,...n}={}){this._transport=new x({requestFilterables:[new C,t],...n,baseURL:e?.toString()??o.getBaseURL()}),this._account=new A(this._transport),this._accountAccessToken=new v(this._transport),this._accountConversationSettings=new N(this._transport),this._action=new G(this._transport),this._boilerplateContent=new K(this._transport),this._boilerplateCategory=new k(this._transport),this._channel=new Z(this._transport),this._compositionSection=new rt(this._transport),this._contact=new ft(this._transport),this._conversation=new _t(this._transport),this._label=new Lt(this._transport),this._message=new Nt(this._transport),this._model=new It(this._transport),this._note=new kt(this._transport),this._source=new Qt(this._transport),this._statistics=new Vt(this._transport),this._upload=new $t(this._transport),this._webhook=new y(this),this._wellKnown=new Xt(this._transport)}static getBaseURL(){return process.env[Ee]??this.DEFAULT_BASE_URL}get account(){return this._account.api}get accountAccessToken(){return this._accountAccessToken.api}get accountConversationSettings(){return this._accountConversationSettings.api}get action(){return this._action.api}get boilerplate(){return this._boilerplateContent.api}get boilerplateContent(){return this._boilerplateContent.api}get boilerplateCategory(){return this._boilerplateCategory.api}get channel(){return this._channel.api}get compositionSection(){return this._compositionSection.api}get contact(){return this._contact.api}get conversation(){return this._conversation.api}get label(){return this._label.api}get message(){return this._message.api}get model(){return this._model.api}get note(){return this._note.api}get source(){return this._source.api}get statistics(){return this._statistics.api}get upload(){return this._upload.api}get webhook(){return this._webhook}get wellKnown(){return this._wellKnown.api}};var le=require("commander"),Ie=require("ora");function me({client:o,ora:t}){let e=new le.Command("actions").description("Actions");return e.addCommand(new le.Command("list").description("List actions").action(async()=>{let n=await(0,Ie.oraPromise)(()=>o.action.list.send().json(),{...t,text:"Finding actions"});console.log(n)})),e}var ue=require("commander"),Be=require("ora");function he({client:o,ora:t}){let e=new ue.Command("channels").description("Channels");return e.addCommand(new ue.Command("list").description("List channels").action(async()=>{let n=await(0,Be.oraPromise)(()=>o.channel.list.send().json(),{...t,text:"Finding channels"});console.log(n)})),e}var te=require("commander"),re=require("ora");function fe({client:o,ora:t}){let e=new te.Command("contacts").description("Contacts");return e.addCommand(new te.Command("get").description("Find contact").argument("<contact>","Contact ID").action(async n=>{let r=await(0,re.oraPromise)(()=>o.contact.get.send(n).json(),{...t,text:"Finding contact"});console.log(r)})),e.addCommand(new te.Command("list").description("List contacts").action(async()=>{let n=await(0,re.oraPromise)(()=>o.contact.list.send().json(),{...t,text:"Finding contacts"});console.log(n)})),e.addCommand(new te.Command("get-vcf").description("Export Contact as VCF").argument("<contact>","Contact ID").action(async n=>{let r=await(0,re.oraPromise)(()=>o.contact.vcf.get.send({id:n}).response(),{...t,text:"Exporting contact"});console.log(r)})),e}var se=require("commander"),Ce=require("ora");function ge({client:o,ora:t}){let e=new se.Command("conversations").description("Conversations");return e.addCommand(new se.Command("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async n=>{let r=await(0,Ce.oraPromise)(()=>o.conversation.get.send(n).json(),{...t,text:"Finding conversation"});console.log(r)})),e.addCommand(new se.Command("list").description("List conversations").action(async()=>{let n=await(0,Ce.oraPromise)(()=>o.conversation.list.send().json(),{...t,text:"Finding conversations"});console.log(n)})),e}var ee=require("commander"),ie=require("ora");function be({client:o,ora:t}){let e=new ee.Command("labels").description("Labels");return e.addCommand(new ee.Command("get").description("Find label").argument("<label>","Label ID").action(async n=>{let r=await(0,ie.oraPromise)(()=>o.label.get.send(n).json(),{...t,text:"Finding label"});console.log(r)})),e.addCommand(new ee.Command("list").description("List labels").action(async()=>{let n=await(0,ie.oraPromise)(()=>o.label.list.send().json(),{...t,text:"Finding labels"});console.log(n)})),e.addCommand(new ee.Command("conversations").description("Find label conversations").argument("<label>","Label ID").action(async n=>{let r=await(0,ie.oraPromise)(()=>o.label.conversation.list.send(n).json(),{...t,text:"Finding conversations"});console.log(r)})),e}var Oe=require("commander"),Me=require("ora");function xe({client:o,ora:t}){let e=new Oe.Command("messages").description("Messages");return e.addCommand(new Oe.Command("list").description("List messages").action(async()=>{let n=await(0,Me.oraPromise)(()=>o.message.list.send().json(),{...t,text:"Finding messages"});console.log(n)})),e}var ae=require("commander"),ye=require("ora");function _e({client:o,ora:t}){let e=new ae.Command("models").description("Models");return e.addCommand(new ae.Command("get").description("Find model").argument("<model>","Model ID").action(async n=>{let r=await(0,ye.oraPromise)(()=>o.model.get.send(n).json(),{...t,text:"Finding model"});console.log(r)})),e.addCommand(new ae.Command("list").description("List models").action(async()=>{let n=await(0,ye.oraPromise)(()=>o.model.list.send().json(),{...t,text:"Finding models"});console.log(n)})),e}var pe=require("commander"),Se=require("ora");function Te({client:o,ora:t}){let e=new pe.Command("sources").description("Sources");return e.addCommand(new pe.Command("get").description("Find source").argument("<source>","Source ID").action(async n=>{let r=await(0,Se.oraPromise)(()=>o.source.get.send(n).json(),{...t,text:"Finding source"});console.log(r)})),e.addCommand(new pe.Command("list").description("List sources").action(async()=>{let n=await(0,Se.oraPromise)(()=>o.source.list.send().json(),{...t,text:"Finding sources"});console.log(n)})),e}var je=require("commander");var Re=require("commander"),ke=require("ora");function ve({client:o,ora:t}){let e=new Re.Command("notifications").description("Well-Known Notifications Details");return e.addCommand(new Re.Command("get").description("Get Notifications Server Well-Known Info").action(async()=>{let n=await(0,ke.oraPromise)(()=>o.wellKnown.notification.get.send().json(),{...t,text:"Finding Notifications Well-Known Info"});console.log(n)})),e}function we({client:o,ora:t}){let e=new je.Command("well-known").description("Well-Known Metadata & Info");return e.addCommand(ve({client:o,ora:t})),e}var p={ora:{spinner:"simpleDotsScrolling"},client:new Zt(new d)},Je=new De.Command("gds").description("Great Detail Support System").addCommand(me(p)).addCommand(he(p)).addCommand(fe(p)).addCommand(ge(p)).addCommand(be(p)).addCommand(xe(p)).addCommand(_e(p)).addCommand(Te(p)).addCommand(we(p)),Qe=Je;Qe.parseAsync(process.argv);
package/dist/cli.js CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- import{a as r}from"./chunk-5RA6LABL.js";import"./chunk-LWJARI3P.js";r.parseAsync(process.argv);
2
+ import{a as r}from"./chunk-QIKMCXZE.js";import"./chunk-55BDEU3A.js";r.parseAsync(process.argv);
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var Ce=Object.create;var te=Object.defineProperty;var be=Object.getOwnPropertyDescriptor;var ge=Object.getOwnPropertyNames;var _e=Object.getPrototypeOf,Oe=Object.prototype.hasOwnProperty;var ie=(o,t)=>{for(var e in t)te(o,e,{get:t[e],enumerable:!0})},pe=(o,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of ge(t))!Oe.call(o,s)&&s!==e&&te(o,s,{get:()=>t[s],enumerable:!(r=be(t,s))||r.enumerable});return o};var ae=(o,t,e)=>(e=o!=null?Ce(_e(o)):{},pe(t||!o||!o.__esModule?te(e,"default",{value:o,enumerable:!0}):e,o)),xe=o=>pe(te({},"__esModule",{value:!0}),o);var ye={};ie(ye,{BasicAuthentication:()=>l,BearerAuthentication:()=>u,Client:()=>g,DEFAULT_SUPPORT_BASE_URL:()=>ee,Error:()=>se,KeyAuthentication:()=>l,PublicAuthentication:()=>m,default:()=>g});module.exports=xe(ye);var ee="https://api.support.greatdetail.com",ce={"X-Powered-By":"GDSupport/JavaScript"};var le="SUPPORT_ACCESS_TOKEN",de="SUPPORT_KEY_NAME",ue="SUPPORT_KEY_PASSWORD",re="SUPPORT_SIGNING_KEY",me="SUPPORT_BASE_URL";var l=class{name;#t;constructor({name:t=process.env[de],password:e=process.env[ue]}={}){if(!t)throw new Error("Name option must be specified when using Basic Authentication");if(!e)throw new Error("Password option must be specified when using Basic Authentication");this.name=t,this.#t=e}getHeaders(){return{Authorization:`Basic ${btoa(this.name+":"+this.#t)}`}}};var u=class{#t;constructor({token:t=process.env[le]}={}){if(!t)throw new Error("Access Token option must be specified when using Token Authentication");this.#t=t}getHeaders(){return{Authorization:`Bearer ${this.#t}`}}};var m=class{getHeaders(){return{}}};var _=class o{constructor(t=o.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=ce;async filter(){return{headers:this.getHeaders()}}getHeaders(){return this._standardHeaders}};var he=ae(require("is-network-error"),1),oe=ae(require("ky"),1);var i=class extends Error{static serverError(t){return new this("Server Error: "+t)}};var c=class extends i{};var h=class extends c{static unauthenticated(){return new this("An unauthenticated request occurred")}};var f=class extends c{static forbidden(){return new this("A forbidden request occurred")}};var a=class extends i{static notFound(t){return new this(`Record not found for request: ${t}`)}static forbiddenMethod(t,e){return new this(`Forbidden method for request: ${t} ${e}`)}static teapot(){return new this("I'm a teapot")}static rateLimited(){return new this("Request has been rate-limited")}};var C=class extends i{};var d=class extends i{static badRequest(){return new this("Bad request")}static unsupportedMediaType(){return new this("Unsupported Media Type")}};var O=class{client;options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t},this.client=oe.default.create({prefixUrl:this.options.baseURL,timeout:12e3,hooks:{beforeRequest:[r=>{for(let s of this.options.requestFilterables){let p=s.getHeaders();for(let[Zt,fe]of Object.entries(p))r.headers.has(Zt)||r.headers.set(Zt,fe)}}]}})}getURL(t){return new URL(t,this.options.baseURL).toString()}sortQuery(t){let e=[];if(t===void 0)return e;for(let[r,s]of Object.entries(t))s!==void 0&&e.push(["sort",s+r]);return e}limitQuery(t){let e=[];return t===void 0||e.push(["limit",t.toString()]),e}includeQuery(t){let e=[];if(t===void 0)return e;for(let r of Object.keys(t))e.push(["include",r]);return e}queryQuery(t){let e=[];return t===void 0||e.push(["query",t]),e}send(t,e={}){let r=this.client(t,e).catch(s=>{if((0,he.default)(s))throw new C("A network error occurred",{cause:s});if(s instanceof oe.HTTPError){let p=s.response.status;switch(console.error(JSON.stringify(s.response)),p){case 400:throw d.badRequest();case 401:throw h.unauthenticated();case 403:throw f.forbidden();case 404:throw a.notFound(t);case 405:throw a.forbiddenMethod(t,e.method??"GET");case 415:throw d.unsupportedMediaType();case 418:throw a.teapot();case 429:throw a.rateLimited()}if(p>=500&&p<600)throw i.serverError(p)}throw s});return{response:()=>r,json:async()=>(await r).json()}}};var n=require("zod");var x=class o{constructor(t){this._client=t}static SCHEMA=n.z.object({data:n.z.object({event:n.z.intersection(n.z.object({id:n.z.string(),createdAt:n.z.string().datetime()}),n.z.union([n.z.object({type:n.z.union([n.z.literal("account.created"),n.z.literal("account.updated")]),payload:n.z.object({account:n.z.string()})}),n.z.object({type:n.z.union([n.z.literal("accountAccessToken.created"),n.z.literal("accountAccessToken.deleted")]),payload:n.z.object({accountAccessToken:n.z.string()})}),n.z.object({type:n.z.union([n.z.literal("contact.created"),n.z.literal("contact.updated")]),payload:n.z.object({contact:n.z.string()})}),n.z.object({type:n.z.union([n.z.literal("conversation.created"),n.z.literal("conversation.updated"),n.z.literal("conversation.closed"),n.z.literal("conversation.received"),n.z.literal("conversation.resolved"),n.z.literal("conversation.sent")]),payload:n.z.object({conversation:n.z.string()})}),n.z.object({type:n.z.union([n.z.literal("message.created"),n.z.literal("message.updated"),n.z.literal("message.delivered"),n.z.literal("message.failed"),n.z.literal("message.read"),n.z.literal("message.received"),n.z.literal("message.sent")]),payload:n.z.object({message:n.z.string()})})]))})});async event({key:t=process.env[re],maxSignatures:e=3,request:r}){let s=r.headers["gds-signature"];if(t!==!1){if(t===void 0)throw new Error("Missing webhook signing key in process.env."+re);if(!s)throw new Error("Missing signature header");if(!this._verifySignature(t,r.body,Array.isArray(s)?s.slice(0,e):[s]))throw new Error("Untrusted signature")}let{data:p}=o.SCHEMA.parse(r.body);return{event:p.event}}async _verifySignature(t,e,r){let s=await crypto.subtle.importKey("raw",new TextEncoder().encode(t),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"]);for(let p of r)if(await crypto.subtle.verify("HMAC",s,new TextEncoder().encode(atob(p)),new TextEncoder().encode(JSON.stringify(e))))return!0;return!1}};var y=class{constructor(t){this._transport=t}send(t,{body:e={},request:r={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens",{...r,method:"POST",json:e})}};var S=class{constructor(t){this._transport=t}send(t,e,{body:r,request:s={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens/"+encodeURIComponent(e),{...s,method:"DELETE",json:r})}};var T=class{constructor(t){this._transport=t}send(t,e,{request:r={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens/"+encodeURIComponent(e),{...r,method:"GET"})}};var R=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens",{...e,method:"GET"})}};var v=class{constructor(t){this._transport=t}get api(){return{get:new T(this._transport),list:new R(this._transport),create:new y(this._transport),delete:new S(this._transport)}}};var F=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t),{...e,method:"GET"})}};var A=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/accounts/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var w=class{constructor(t){this._transport=t}get api(){return{get:new F(this._transport),update:new A(this._transport)}}};var L=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/conversation-settings",{...e,method:"GET"})}};var U=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/conversation-settings",{...r,method:"PATCH",json:e})}};var E=class{constructor(t){this._transport=t}get api(){return{get:new L(this._transport),update:new U(this._transport)}}};var N=class{constructor(t){this._transport=t}send({limit:t,sort:e,request:r={}}={}){return this._transport.send("v1/actions",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.sortQuery(e)]})}};var G=class{constructor(t){this._transport=t}get api(){return{list:new N(this._transport)}}};var P=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/boilerplates/categories",{...e,method:"POST",json:t})}};var q=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t),{...e,method:"GET"})}};var I=class{constructor(t){this._transport=t}send({limit:t,include:e,request:r={}}={}){return this._transport.send("v1/boilerplates/categories",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.includeQuery(e)]})}};var B=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var k=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t)+"/contents",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var M=class{constructor(t){this._transport=t}get api(){return{get:new q(this._transport),list:new I(this._transport),create:new P(this._transport),update:new B(this._transport),boilerplate:{list:new k(this._transport)}}}};var j=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/boilerplates/contents",{...e,method:"POST",json:t})}};var Q=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/boilerplates/contents/"+encodeURIComponent(t),{...e,method:"GET"})}};var D=class{constructor(t){this._transport=t}send({limit:t,query:e,request:r={}}={}){return this._transport.send("v1/boilerplates/contents",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e)]})}};var H=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/boilerplates/contents/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var K=class{constructor(t){this._transport=t}get api(){return{get:new Q(this._transport),list:new D(this._transport),update:new H(this._transport),create:new j(this._transport)}}};var V=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/channels",{...e,method:"POST",json:t})}};var W=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...e,method:"GET"})}};var z=class{constructor(t){this._transport=t}send({limit:t,request:e={}}={}){return this._transport.send("v1/channels",{...e,method:"GET",searchParams:[...this._transport.limitQuery(t)]})}};var ne=require("zod"),Y=class o{constructor(t){this._transport=t}static SCHEMA=ne.z.object({overwrite:ne.z.boolean().optional()});send(t,{body:e,request:r={}}){return this._transport.send("v1/sources/twilio-sendgrid/channels/"+encodeURIComponent(t)+"/sync",{...r,method:"POST",json:o.SCHEMA.parse(e)})}};var $=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var J=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/composition-sections",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var X=class{constructor(t){this._transport=t}send(t,{limit:e,include:r,request:s={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/messages",{...s,method:"GET",searchParams:[...this._transport.limitQuery(e),...this._transport.includeQuery(r)]})}};var Z=class{constructor(t){this._transport=t}get api(){return{get:new W(this._transport),list:new z(this._transport),update:new $(this._transport),create:new V(this._transport),compositionSection:{list:new J(this._transport)},message:{list:new X(this._transport)},twilioSendgrid:{sync:new Y(this._transport)}}}};var tt=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/composition-sections",{...e,method:"POST",json:t})}};var et=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...e,method:"GET"})}};var ot=class{constructor(t){this._transport=t}send({limit:t,request:e={}}={}){return this._transport.send("v1/composition-sections",{...e,method:"GET",searchParams:[...this._transport.limitQuery(t)]})}};var rt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var nt=class{constructor(t){this._transport=t}get api(){return{get:new et(this._transport),list:new ot(this._transport),create:new tt(this._transport),update:new rt(this._transport)}}};var st=class{constructor(t){this._transport=t}getRelativeURL({id:t,vcf:e={}}){let r=e.variant??"vcard",s=e.format??(r==="vcard"?"vcf":"json");return"v1/contacts/"+encodeURIComponent(t)+"/vcf?variant="+encodeURIComponent(r)+"&format="+encodeURIComponent(s)}getURL(t){return this._transport.getURL(this.getRelativeURL(t))}send(t){return this._transport.send(this.getURL(t),{method:"GET"})}};var it=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/contacts",{...e,method:"POST",json:t})}};var pt=class{constructor(t){this._transport=t}send(t,{include:e,request:r={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...r,method:"GET",searchParams:[...this._transport.includeQuery(e??{})]})}};var at=class{constructor(t){this._transport=t}send({limit:t,query:e,request:r={}}={}){return this._transport.send("v1/contacts",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e)]})}};var ct=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var lt=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/conversations",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var dt=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/labels",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var ut=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...r,method:"POST",json:e})}};var mt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var ht=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notification-subscriptions",{...r,method:"POST",json:e})}};var ft=class{constructor(t){this._transport=t}get api(){return{get:new pt(this._transport),list:new at(this._transport),update:new ct(this._transport),create:new it(this._transport),conversation:{list:new lt(this._transport)},label:{list:new dt(this._transport)},note:{list:new mt(this._transport),create:new ut(this._transport)},notificationSubscription:{create:new ht(this._transport)},vcf:{get:new st(this._transport)}}}};var Ct=class{constructor(t){this._transport=t}send(t,{include:e,request:r={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...r,method:"GET",searchParams:[...this._transport.includeQuery(e??{})]})}};var bt=class{constructor(t){this._transport=t}send({limit:t,filter:e,include:r,request:s={}}={}){return this._transport.send("v1/conversations",{...s,method:"GET",searchParams:[...this._transport.limitQuery(t),...e?[["filter",e]]:[],...this._transport.includeQuery(r??{})]})}};var gt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var _t=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/labels",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var Ot=class{constructor(t){this._transport=t}send(t,{limit:e,include:r,request:s={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...s,method:"GET",searchParams:[...this._transport.limitQuery(e),...this._transport.includeQuery(r??{})]})}};var b=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...r,method:"POST",json:e})}};var xt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var yt=class{constructor(t){this._transport=t}get api(){return{get:new Ct(this._transport),list:new bt(this._transport),update:new gt(this._transport),create:new b(this._transport),label:{list:new _t(this._transport)},message:{list:new Ot(this._transport)},note:{list:new xt(this._transport),create:new b(this._transport)}}}};var St=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/contacts",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var Tt=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var Rt=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/labels",{...e,method:"POST",json:t})}};var vt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var Ft=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"})}};var At=class{constructor(t){this._transport=t}send({limit:t,query:e,include:r,request:s={}}={}){return this._transport.send("v1/labels",{...s,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e),...this._transport.includeQuery(r??{})]})}};var wt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var Lt=class{constructor(t){this._transport=t}get api(){return{create:new Rt(this._transport),get:new Ft(this._transport),list:new At(this._transport),update:new wt(this._transport),delete:new vt(this._transport),contact:{list:new St(this._transport)},conversation:{list:new Tt(this._transport)}}}};var Ut=class{constructor(t){this._transport=t}send({limit:t,include:e,request:r={}}={}){return this._transport.send("v1/messages",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.includeQuery(e??{})]})}};var Et=class{constructor(t){this._transport=t}get api(){return{list:new Ut(this._transport)}}};var Nt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...r,method:"POST",json:e})}};var Gt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"})}};var Pt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send("v1/models",{...t,method:"GET"})}};var qt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...r,method:"POST",timeout:12e4,json:e})}};var It=class{constructor(t){this._transport=t}get api(){return{get:new Gt(this._transport),list:new Pt(this._transport),response:{create:new qt(this._transport)},correction:{create:new Nt(this._transport)}}}};var Bt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...e,method:"GET"})}};var kt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var Mt=class{constructor(t){this._transport=t}get api(){return{get:new Bt(this._transport),update:new kt(this._transport)}}};var jt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"})}};var Qt=class{constructor(t){this._transport=t}send({category:t,request:e={}}={}){let r=[];if(t){let s=Array.isArray(t)?t:[t];for(let p of s)r.push(["category",p])}return this._transport.send("v1/sources",{...e,method:"GET",searchParams:r})}};var Dt=class{constructor(t){this._transport=t}get api(){return{get:new jt(this._transport),list:new Qt(this._transport)}}};var Ht=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/statistics/message-frequency",{...e,method:"GET"})}};var Kt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send("v1/statistics/message-frequency",{...t,method:"GET"})}};var Vt=class{constructor(t){this._transport=t}get api(){return{messageFrequency:new Kt(this._transport),channelMessageFrequency:new Ht(this._transport)}}};var Wt=class{constructor(t){this._transport=t}send({account:t,files:e,request:r={}}){let s=new FormData;for(let p of e)s.append("file",p);return this._transport.send("v1/uploads",{...r,method:"POST",body:s,searchParams:{account:t}})}};var zt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var Yt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"GET"})}};var $t=class{constructor(t){this._transport=t}get api(){return{get:new Yt(this._transport),create:new Wt(this._transport),delete:new zt(this._transport)}}};var Jt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send(".well-known/notifications",{...t,method:"GET"})}};var Xt=class{constructor(t){this._transport=t}get api(){return{notification:{get:new Jt(this._transport)}}}};var g=class o{static DEFAULT_BASE_URL=ee;static PublicAuthentication=m;static BasicAuthentication=l;static BearerAuthentication=u;_transport;_account;_accountAccessToken;_accountConversationSettings;_action;_boilerplateContent;_boilerplateCategory;_channel;_compositionSection;_contact;_conversation;_label;_message;_model;_note;_source;_statistics;_upload;_webhook;_wellKnown;constructor(t,{baseURL:e,...r}={}){this._transport=new O({requestFilterables:[new _,t],...r,baseURL:e?.toString()??o.getBaseURL()}),this._account=new w(this._transport),this._accountAccessToken=new v(this._transport),this._accountConversationSettings=new E(this._transport),this._action=new G(this._transport),this._boilerplateContent=new K(this._transport),this._boilerplateCategory=new M(this._transport),this._channel=new Z(this._transport),this._compositionSection=new nt(this._transport),this._contact=new ft(this._transport),this._conversation=new yt(this._transport),this._label=new Lt(this._transport),this._message=new Et(this._transport),this._model=new It(this._transport),this._note=new Mt(this._transport),this._source=new Dt(this._transport),this._statistics=new Vt(this._transport),this._upload=new $t(this._transport),this._webhook=new x(this),this._wellKnown=new Xt(this._transport)}static getBaseURL(){return process.env[me]??this.DEFAULT_BASE_URL}get account(){return this._account.api}get accountAccessToken(){return this._accountAccessToken.api}get accountConversationSettings(){return this._accountConversationSettings.api}get action(){return this._action.api}get boilerplate(){return this._boilerplateContent.api}get boilerplateContent(){return this._boilerplateContent.api}get boilerplateCategory(){return this._boilerplateCategory.api}get channel(){return this._channel.api}get compositionSection(){return this._compositionSection.api}get contact(){return this._contact.api}get conversation(){return this._conversation.api}get label(){return this._label.api}get message(){return this._message.api}get model(){return this._model.api}get note(){return this._note.api}get source(){return this._source.api}get statistics(){return this._statistics.api}get upload(){return this._upload.api}get webhook(){return this._webhook}get wellKnown(){return this._wellKnown.api}};var se={};ie(se,{AuthError:()=>c,AuthenticationError:()=>h,AuthorizationError:()=>f,LogicError:()=>a,NetworkError:()=>C,SupportError:()=>i,ValidationError:()=>d});0&&(module.exports={BasicAuthentication,BearerAuthentication,Client,DEFAULT_SUPPORT_BASE_URL,Error,KeyAuthentication,PublicAuthentication});
1
+ "use strict";var Ce=Object.create;var te=Object.defineProperty;var be=Object.getOwnPropertyDescriptor;var ge=Object.getOwnPropertyNames;var _e=Object.getPrototypeOf,Oe=Object.prototype.hasOwnProperty;var ie=(o,t)=>{for(var e in t)te(o,e,{get:t[e],enumerable:!0})},pe=(o,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of ge(t))!Oe.call(o,s)&&s!==e&&te(o,s,{get:()=>t[s],enumerable:!(r=be(t,s))||r.enumerable});return o};var ae=(o,t,e)=>(e=o!=null?Ce(_e(o)):{},pe(t||!o||!o.__esModule?te(e,"default",{value:o,enumerable:!0}):e,o)),xe=o=>pe(te({},"__esModule",{value:!0}),o);var ye={};ie(ye,{BasicAuthentication:()=>l,BearerAuthentication:()=>u,Client:()=>g,DEFAULT_SUPPORT_BASE_URL:()=>ee,Error:()=>se,KeyAuthentication:()=>l,PublicAuthentication:()=>m,default:()=>g});module.exports=xe(ye);var ee="https://api.support.greatdetail.com",ce={"X-Powered-By":"GDSupport/JavaScript"};var le="SUPPORT_ACCESS_TOKEN",de="SUPPORT_KEY_NAME",ue="SUPPORT_KEY_PASSWORD",re="SUPPORT_SIGNING_KEY",me="SUPPORT_BASE_URL";var l=class{name;#t;constructor({name:t=process.env[de],password:e=process.env[ue]}={}){if(!t)throw new Error("Name option must be specified when using Basic Authentication");if(!e)throw new Error("Password option must be specified when using Basic Authentication");this.name=t,this.#t=e}getHeaders(){return{Authorization:`Basic ${btoa(this.name+":"+this.#t)}`}}};var u=class{#t;constructor({token:t=process.env[le]}={}){if(!t)throw new Error("Access Token option must be specified when using Token Authentication");this.#t=t}getHeaders(){return{Authorization:`Bearer ${this.#t}`}}};var m=class{getHeaders(){return{}}};var _=class o{constructor(t=o.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=ce;async filter(){return{headers:this.getHeaders()}}getHeaders(){return this._standardHeaders}};var he=ae(require("is-network-error"),1),oe=ae(require("ky"),1);var i=class extends Error{static serverError(t){return new this("Server Error: "+t)}};var c=class extends i{};var h=class extends c{static unauthenticated(){return new this("An unauthenticated request occurred")}};var f=class extends c{static forbidden(){return new this("A forbidden request occurred")}};var a=class extends i{static notFound(t){return new this(`Record not found for request: ${t}`)}static forbiddenMethod(t,e){return new this(`Forbidden method for request: ${t} ${e}`)}static teapot(){return new this("I'm a teapot")}static rateLimited(){return new this("Request has been rate-limited")}};var C=class extends i{};var d=class extends i{static badRequest(){return new this("Bad request")}static unsupportedMediaType(){return new this("Unsupported Media Type")}};var O=class{client;options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t},this.client=oe.default.create({prefixUrl:this.options.baseURL,timeout:12e3,hooks:{beforeRequest:[r=>{for(let s of this.options.requestFilterables){let p=s.getHeaders();for(let[Zt,fe]of Object.entries(p))r.headers.has(Zt)||r.headers.set(Zt,fe)}}]}})}getURL(t){return new URL(t,this.options.baseURL).toString()}sortQuery(t){let e=[];if(t===void 0)return e;for(let[r,s]of Object.entries(t))s!==void 0&&e.push(["sort",s+r]);return e}limitQuery(t){let e=[];return t===void 0||e.push(["limit",t.toString()]),e}includeQuery(t){let e=[];if(t===void 0)return e;for(let r of Object.keys(t))e.push(["include",r]);return e}queryQuery(t){let e=[];return t===void 0||e.push(["query",t]),e}send(t,e={}){let r=this.client(t,e).catch(s=>{if((0,he.default)(s))throw new C("A network error occurred",{cause:s});if(s instanceof oe.HTTPError){let p=s.response.status;switch(console.error(JSON.stringify(s.response)),p){case 400:throw d.badRequest();case 401:throw h.unauthenticated();case 403:throw f.forbidden();case 404:throw a.notFound(t);case 405:throw a.forbiddenMethod(t,e.method??"GET");case 415:throw d.unsupportedMediaType();case 418:throw a.teapot();case 429:throw a.rateLimited()}if(p>=500&&p<600)throw i.serverError(p)}throw s});return{response:()=>r,json:async()=>(await r).json()}}};var n=require("zod");var x=class o{constructor(t){this._client=t}static SCHEMA=n.z.object({data:n.z.object({event:n.z.intersection(n.z.object({id:n.z.string(),createdAt:n.z.string().datetime()}),n.z.union([n.z.object({type:n.z.union([n.z.literal("account.created"),n.z.literal("account.updated")]),payload:n.z.object({account:n.z.string()})}),n.z.object({type:n.z.union([n.z.literal("accountAccessToken.created"),n.z.literal("accountAccessToken.deleted")]),payload:n.z.object({accountAccessToken:n.z.string()})}),n.z.object({type:n.z.union([n.z.literal("contact.created"),n.z.literal("contact.updated")]),payload:n.z.object({contact:n.z.string()})}),n.z.object({type:n.z.union([n.z.literal("conversation.created"),n.z.literal("conversation.updated"),n.z.literal("conversation.closed"),n.z.literal("conversation.received"),n.z.literal("conversation.resolved"),n.z.literal("conversation.sent")]),payload:n.z.object({conversation:n.z.string()})}),n.z.object({type:n.z.union([n.z.literal("message.created"),n.z.literal("message.updated"),n.z.literal("message.delivered"),n.z.literal("message.failed"),n.z.literal("message.read"),n.z.literal("message.received"),n.z.literal("message.sent")]),payload:n.z.object({message:n.z.string()})})]))})});async event({key:t=process.env[re],maxSignatures:e=3,request:r}){let s=r.headers["gds-signature"];if(t!==!1){if(t===void 0)throw new Error("Missing webhook signing key in process.env."+re);if(!s)throw new Error("Missing signature header");if(!this._verifySignature(t,r.body,Array.isArray(s)?s.slice(0,e):[s]))throw new Error("Untrusted signature")}let{data:p}=o.SCHEMA.parse(r.body);return{event:p.event}}async _verifySignature(t,e,r){let s=await crypto.subtle.importKey("raw",new TextEncoder().encode(t),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"]);for(let p of r)if(await crypto.subtle.verify("HMAC",s,new TextEncoder().encode(atob(p)),new TextEncoder().encode(JSON.stringify(e))))return!0;return!1}};var y=class{constructor(t){this._transport=t}send(t,{body:e={},request:r={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens",{...r,method:"POST",json:e})}};var S=class{constructor(t){this._transport=t}send(t,e,{body:r,request:s={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens/"+encodeURIComponent(e),{...s,method:"DELETE",json:r})}};var T=class{constructor(t){this._transport=t}send(t,e,{request:r={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens/"+encodeURIComponent(e),{...r,method:"GET"})}};var R=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens",{...e,method:"GET"})}};var v=class{constructor(t){this._transport=t}get api(){return{get:new T(this._transport),list:new R(this._transport),create:new y(this._transport),delete:new S(this._transport)}}};var F=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t),{...e,method:"GET"})}};var A=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/accounts/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var w=class{constructor(t){this._transport=t}get api(){return{get:new F(this._transport),update:new A(this._transport)}}};var L=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/conversation-settings",{...e,method:"GET"})}};var U=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/conversation-settings",{...r,method:"PATCH",json:e})}};var E=class{constructor(t){this._transport=t}get api(){return{get:new L(this._transport),update:new U(this._transport)}}};var N=class{constructor(t){this._transport=t}send({limit:t,sort:e,request:r={}}={}){return this._transport.send("v1/actions",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.sortQuery(e)]})}};var G=class{constructor(t){this._transport=t}get api(){return{list:new N(this._transport)}}};var P=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/boilerplates/categories",{...e,method:"POST",json:t})}};var q=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t),{...e,method:"GET"})}};var I=class{constructor(t){this._transport=t}send({limit:t,include:e,request:r={}}={}){return this._transport.send("v1/boilerplates/categories",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.includeQuery(e)]})}};var B=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var k=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t)+"/contents",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var M=class{constructor(t){this._transport=t}get api(){return{get:new q(this._transport),list:new I(this._transport),create:new P(this._transport),update:new B(this._transport),boilerplate:{list:new k(this._transport)}}}};var j=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/boilerplates/contents",{...e,method:"POST",json:t})}};var Q=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/boilerplates/contents/"+encodeURIComponent(t),{...e,method:"GET"})}};var D=class{constructor(t){this._transport=t}send({limit:t,query:e,request:r={}}={}){return this._transport.send("v1/boilerplates/contents",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e)]})}};var H=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/boilerplates/contents/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var K=class{constructor(t){this._transport=t}get api(){return{get:new Q(this._transport),list:new D(this._transport),update:new H(this._transport),create:new j(this._transport)}}};var V=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/channels",{...e,method:"POST",json:t})}};var W=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...e,method:"GET"})}};var z=class{constructor(t){this._transport=t}send({limit:t,request:e={}}={}){return this._transport.send("v1/channels",{...e,method:"GET",searchParams:[...this._transport.limitQuery(t)]})}};var ne=require("zod"),Y=class o{constructor(t){this._transport=t}static SCHEMA=ne.z.object({overwrite:ne.z.boolean().optional()});send(t,{body:e,request:r={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/twilio-sendgrid/sync",{...r,method:"POST",json:o.SCHEMA.parse(e)})}};var $=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var J=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/composition-sections",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var X=class{constructor(t){this._transport=t}send(t,{limit:e,include:r,request:s={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/messages",{...s,method:"GET",searchParams:[...this._transport.limitQuery(e),...this._transport.includeQuery(r)]})}};var Z=class{constructor(t){this._transport=t}get api(){return{get:new W(this._transport),list:new z(this._transport),update:new $(this._transport),create:new V(this._transport),compositionSection:{list:new J(this._transport)},message:{list:new X(this._transport)},twilioSendgrid:{sync:new Y(this._transport)}}}};var tt=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/composition-sections",{...e,method:"POST",json:t})}};var et=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...e,method:"GET"})}};var ot=class{constructor(t){this._transport=t}send({limit:t,request:e={}}={}){return this._transport.send("v1/composition-sections",{...e,method:"GET",searchParams:[...this._transport.limitQuery(t)]})}};var rt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var nt=class{constructor(t){this._transport=t}get api(){return{get:new et(this._transport),list:new ot(this._transport),create:new tt(this._transport),update:new rt(this._transport)}}};var st=class{constructor(t){this._transport=t}getRelativeURL({id:t,vcf:e={}}){let r=e.variant??"vcard",s=e.format??(r==="vcard"?"vcf":"json");return"v1/contacts/"+encodeURIComponent(t)+"/vcf?variant="+encodeURIComponent(r)+"&format="+encodeURIComponent(s)}getURL(t){return this._transport.getURL(this.getRelativeURL(t))}send(t){return this._transport.send(this.getURL(t),{method:"GET"})}};var it=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/contacts",{...e,method:"POST",json:t})}};var pt=class{constructor(t){this._transport=t}send(t,{include:e,request:r={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...r,method:"GET",searchParams:[...this._transport.includeQuery(e??{})]})}};var at=class{constructor(t){this._transport=t}send({limit:t,query:e,request:r={}}={}){return this._transport.send("v1/contacts",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e)]})}};var ct=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var lt=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/conversations",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var dt=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/labels",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var ut=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...r,method:"POST",json:e})}};var mt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var ht=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notification-subscriptions",{...r,method:"POST",json:e})}};var ft=class{constructor(t){this._transport=t}get api(){return{get:new pt(this._transport),list:new at(this._transport),update:new ct(this._transport),create:new it(this._transport),conversation:{list:new lt(this._transport)},label:{list:new dt(this._transport)},note:{list:new mt(this._transport),create:new ut(this._transport)},notificationSubscription:{create:new ht(this._transport)},vcf:{get:new st(this._transport)}}}};var Ct=class{constructor(t){this._transport=t}send(t,{include:e,request:r={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...r,method:"GET",searchParams:[...this._transport.includeQuery(e??{})]})}};var bt=class{constructor(t){this._transport=t}send({limit:t,filter:e,include:r,request:s={}}={}){return this._transport.send("v1/conversations",{...s,method:"GET",searchParams:[...this._transport.limitQuery(t),...e?[["filter",e]]:[],...this._transport.includeQuery(r??{})]})}};var gt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var _t=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/labels",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var Ot=class{constructor(t){this._transport=t}send(t,{limit:e,include:r,request:s={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...s,method:"GET",searchParams:[...this._transport.limitQuery(e),...this._transport.includeQuery(r??{})]})}};var b=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...r,method:"POST",json:e})}};var xt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var yt=class{constructor(t){this._transport=t}get api(){return{get:new Ct(this._transport),list:new bt(this._transport),update:new gt(this._transport),create:new b(this._transport),label:{list:new _t(this._transport)},message:{list:new Ot(this._transport)},note:{list:new xt(this._transport),create:new b(this._transport)}}}};var St=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/contacts",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var Tt=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var Rt=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/labels",{...e,method:"POST",json:t})}};var vt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var Ft=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"})}};var At=class{constructor(t){this._transport=t}send({limit:t,query:e,include:r,request:s={}}={}){return this._transport.send("v1/labels",{...s,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e),...this._transport.includeQuery(r??{})]})}};var wt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var Lt=class{constructor(t){this._transport=t}get api(){return{create:new Rt(this._transport),get:new Ft(this._transport),list:new At(this._transport),update:new wt(this._transport),delete:new vt(this._transport),contact:{list:new St(this._transport)},conversation:{list:new Tt(this._transport)}}}};var Ut=class{constructor(t){this._transport=t}send({limit:t,include:e,request:r={}}={}){return this._transport.send("v1/messages",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.includeQuery(e??{})]})}};var Et=class{constructor(t){this._transport=t}get api(){return{list:new Ut(this._transport)}}};var Nt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...r,method:"POST",json:e})}};var Gt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"})}};var Pt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send("v1/models",{...t,method:"GET"})}};var qt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...r,method:"POST",timeout:12e4,json:e})}};var It=class{constructor(t){this._transport=t}get api(){return{get:new Gt(this._transport),list:new Pt(this._transport),response:{create:new qt(this._transport)},correction:{create:new Nt(this._transport)}}}};var Bt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...e,method:"GET"})}};var kt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var Mt=class{constructor(t){this._transport=t}get api(){return{get:new Bt(this._transport),update:new kt(this._transport)}}};var jt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"})}};var Qt=class{constructor(t){this._transport=t}send({category:t,request:e={}}={}){let r=[];if(t){let s=Array.isArray(t)?t:[t];for(let p of s)r.push(["category",p])}return this._transport.send("v1/sources",{...e,method:"GET",searchParams:r})}};var Dt=class{constructor(t){this._transport=t}get api(){return{get:new jt(this._transport),list:new Qt(this._transport)}}};var Ht=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/statistics/message-frequency",{...e,method:"GET"})}};var Kt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send("v1/statistics/message-frequency",{...t,method:"GET"})}};var Vt=class{constructor(t){this._transport=t}get api(){return{messageFrequency:new Kt(this._transport),channelMessageFrequency:new Ht(this._transport)}}};var Wt=class{constructor(t){this._transport=t}send({account:t,files:e,request:r={}}){let s=new FormData;for(let p of e)s.append("file",p);return this._transport.send("v1/uploads",{...r,method:"POST",body:s,searchParams:{account:t}})}};var zt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var Yt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"GET"})}};var $t=class{constructor(t){this._transport=t}get api(){return{get:new Yt(this._transport),create:new Wt(this._transport),delete:new zt(this._transport)}}};var Jt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send(".well-known/notifications",{...t,method:"GET"})}};var Xt=class{constructor(t){this._transport=t}get api(){return{notification:{get:new Jt(this._transport)}}}};var g=class o{static DEFAULT_BASE_URL=ee;static PublicAuthentication=m;static BasicAuthentication=l;static BearerAuthentication=u;_transport;_account;_accountAccessToken;_accountConversationSettings;_action;_boilerplateContent;_boilerplateCategory;_channel;_compositionSection;_contact;_conversation;_label;_message;_model;_note;_source;_statistics;_upload;_webhook;_wellKnown;constructor(t,{baseURL:e,...r}={}){this._transport=new O({requestFilterables:[new _,t],...r,baseURL:e?.toString()??o.getBaseURL()}),this._account=new w(this._transport),this._accountAccessToken=new v(this._transport),this._accountConversationSettings=new E(this._transport),this._action=new G(this._transport),this._boilerplateContent=new K(this._transport),this._boilerplateCategory=new M(this._transport),this._channel=new Z(this._transport),this._compositionSection=new nt(this._transport),this._contact=new ft(this._transport),this._conversation=new yt(this._transport),this._label=new Lt(this._transport),this._message=new Et(this._transport),this._model=new It(this._transport),this._note=new Mt(this._transport),this._source=new Dt(this._transport),this._statistics=new Vt(this._transport),this._upload=new $t(this._transport),this._webhook=new x(this),this._wellKnown=new Xt(this._transport)}static getBaseURL(){return process.env[me]??this.DEFAULT_BASE_URL}get account(){return this._account.api}get accountAccessToken(){return this._accountAccessToken.api}get accountConversationSettings(){return this._accountConversationSettings.api}get action(){return this._action.api}get boilerplate(){return this._boilerplateContent.api}get boilerplateContent(){return this._boilerplateContent.api}get boilerplateCategory(){return this._boilerplateCategory.api}get channel(){return this._channel.api}get compositionSection(){return this._compositionSection.api}get contact(){return this._contact.api}get conversation(){return this._conversation.api}get label(){return this._label.api}get message(){return this._message.api}get model(){return this._model.api}get note(){return this._note.api}get source(){return this._source.api}get statistics(){return this._statistics.api}get upload(){return this._upload.api}get webhook(){return this._webhook}get wellKnown(){return this._wellKnown.api}};var se={};ie(se,{AuthError:()=>c,AuthenticationError:()=>h,AuthorizationError:()=>f,LogicError:()=>a,NetworkError:()=>C,SupportError:()=>i,ValidationError:()=>d});0&&(module.exports={BasicAuthentication,BearerAuthentication,Client,DEFAULT_SUPPORT_BASE_URL,Error,KeyAuthentication,PublicAuthentication});
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import{a as s,b as i,c as r,d as l,e as n,f as o,g as t,h as e,i as f,j as p,k as a,l as m,m as x}from"./chunk-LWJARI3P.js";var u={};s(u,{AuthError:()=>t,AuthenticationError:()=>e,AuthorizationError:()=>f,LogicError:()=>p,NetworkError:()=>a,SupportError:()=>o,ValidationError:()=>m});export{r as BasicAuthentication,l as BearerAuthentication,x as Client,n as DEFAULT_SUPPORT_BASE_URL,u as Error,r as KeyAuthentication,i as PublicAuthentication,x as default};
1
+ import{a as s,b as i,c as r,d as l,e as n,f as o,g as t,h as e,i as f,j as p,k as a,l as m,m as x}from"./chunk-55BDEU3A.js";var u={};s(u,{AuthError:()=>t,AuthenticationError:()=>e,AuthorizationError:()=>f,LogicError:()=>p,NetworkError:()=>a,SupportError:()=>o,ValidationError:()=>m});export{r as BasicAuthentication,l as BearerAuthentication,x as Client,n as DEFAULT_SUPPORT_BASE_URL,u as Error,r as KeyAuthentication,i as PublicAuthentication,x as default};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@great-detail/support-sdk",
3
- "version": "0.14.2",
3
+ "version": "0.14.3",
4
4
  "type": "module",
5
5
  "description": "JavaScript SDK for the Great Detail Support System",
6
6
  "author": "Great Detail Ltd <info@greatdetail.com>",
@@ -1 +0,0 @@
1
- var ce=Object.defineProperty;var me=(o,t)=>{for(var e in t)ce(o,e,{get:t[e],enumerable:!0})};var u=class{getHeaders(){return{}}};var ee="SUPPORT_ACCESS_TOKEN",oe="SUPPORT_KEY_NAME",re="SUPPORT_KEY_PASSWORD",Zt="SUPPORT_SIGNING_KEY",ne="SUPPORT_BASE_URL";var m=class{name;#t;constructor({name:t=process.env[oe],password:e=process.env[re]}={}){if(!t)throw new Error("Name option must be specified when using Basic Authentication");if(!e)throw new Error("Password option must be specified when using Basic Authentication");this.name=t,this.#t=e}getHeaders(){return{Authorization:`Basic ${btoa(this.name+":"+this.#t)}`}}};var h=class{#t;constructor({token:t=process.env[ee]}={}){if(!t)throw new Error("Access Token option must be specified when using Token Authentication");this.#t=t}getHeaders(){return{Authorization:`Bearer ${this.#t}`}}};var se="https://api.support.greatdetail.com",ie={"X-Powered-By":"GDSupport/JavaScript"};import{z as n}from"zod";var f=class o{constructor(t){this._client=t}static SCHEMA=n.object({data:n.object({event:n.intersection(n.object({id:n.string(),createdAt:n.string().datetime()}),n.union([n.object({type:n.union([n.literal("account.created"),n.literal("account.updated")]),payload:n.object({account:n.string()})}),n.object({type:n.union([n.literal("accountAccessToken.created"),n.literal("accountAccessToken.deleted")]),payload:n.object({accountAccessToken:n.string()})}),n.object({type:n.union([n.literal("contact.created"),n.literal("contact.updated")]),payload:n.object({contact:n.string()})}),n.object({type:n.union([n.literal("conversation.created"),n.literal("conversation.updated"),n.literal("conversation.closed"),n.literal("conversation.received"),n.literal("conversation.resolved"),n.literal("conversation.sent")]),payload:n.object({conversation:n.string()})}),n.object({type:n.union([n.literal("message.created"),n.literal("message.updated"),n.literal("message.delivered"),n.literal("message.failed"),n.literal("message.read"),n.literal("message.received"),n.literal("message.sent")]),payload:n.object({message:n.string()})})]))})});async event({key:t=process.env[Zt],maxSignatures:e=3,request:r}){let s=r.headers["gds-signature"];if(t!==!1){if(t===void 0)throw new Error("Missing webhook signing key in process.env."+Zt);if(!s)throw new Error("Missing signature header");if(!this._verifySignature(t,r.body,Array.isArray(s)?s.slice(0,e):[s]))throw new Error("Untrusted signature")}let{data:i}=o.SCHEMA.parse(r.body);return{event:i.event}}async _verifySignature(t,e,r){let s=await crypto.subtle.importKey("raw",new TextEncoder().encode(t),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"]);for(let i of r)if(await crypto.subtle.verify("HMAC",s,new TextEncoder().encode(atob(i)),new TextEncoder().encode(JSON.stringify(e))))return!0;return!1}};var C=class o{constructor(t=o.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=ie;async filter(){return{headers:this.getHeaders()}}getHeaders(){return this._standardHeaders}};import le from"is-network-error";import de,{HTTPError as ue}from"ky";var p=class extends Error{static serverError(t){return new this("Server Error: "+t)}};var c=class extends p{};var b=class extends c{static unauthenticated(){return new this("An unauthenticated request occurred")}};var g=class extends c{static forbidden(){return new this("A forbidden request occurred")}};var a=class extends p{static notFound(t){return new this(`Record not found for request: ${t}`)}static forbiddenMethod(t,e){return new this(`Forbidden method for request: ${t} ${e}`)}static teapot(){return new this("I'm a teapot")}static rateLimited(){return new this("Request has been rate-limited")}};var _=class extends p{};var l=class extends p{static badRequest(){return new this("Bad request")}static unsupportedMediaType(){return new this("Unsupported Media Type")}};var O=class{client;options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t},this.client=de.create({prefixUrl:this.options.baseURL,timeout:12e3,hooks:{beforeRequest:[r=>{for(let s of this.options.requestFilterables){let i=s.getHeaders();for(let[Xt,ae]of Object.entries(i))r.headers.has(Xt)||r.headers.set(Xt,ae)}}]}})}getURL(t){return new URL(t,this.options.baseURL).toString()}sortQuery(t){let e=[];if(t===void 0)return e;for(let[r,s]of Object.entries(t))s!==void 0&&e.push(["sort",s+r]);return e}limitQuery(t){let e=[];return t===void 0||e.push(["limit",t.toString()]),e}includeQuery(t){let e=[];if(t===void 0)return e;for(let r of Object.keys(t))e.push(["include",r]);return e}queryQuery(t){let e=[];return t===void 0||e.push(["query",t]),e}send(t,e={}){let r=this.client(t,e).catch(s=>{if(le(s))throw new _("A network error occurred",{cause:s});if(s instanceof ue){let i=s.response.status;switch(console.error(JSON.stringify(s.response)),i){case 400:throw l.badRequest();case 401:throw b.unauthenticated();case 403:throw g.forbidden();case 404:throw a.notFound(t);case 405:throw a.forbiddenMethod(t,e.method??"GET");case 415:throw l.unsupportedMediaType();case 418:throw a.teapot();case 429:throw a.rateLimited()}if(i>=500&&i<600)throw p.serverError(i)}throw s});return{response:()=>r,json:async()=>(await r).json()}}};var y=class{constructor(t){this._transport=t}send(t,{body:e={},request:r={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens",{...r,method:"POST",json:e})}};var x=class{constructor(t){this._transport=t}send(t,e,{body:r,request:s={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens/"+encodeURIComponent(e),{...s,method:"DELETE",json:r})}};var S=class{constructor(t){this._transport=t}send(t,e,{request:r={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens/"+encodeURIComponent(e),{...r,method:"GET"})}};var T=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/access-tokens",{...e,method:"GET"})}};var R=class{constructor(t){this._transport=t}get api(){return{get:new S(this._transport),list:new T(this._transport),create:new y(this._transport),delete:new x(this._transport)}}};var v=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t),{...e,method:"GET"})}};var F=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/accounts/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var A=class{constructor(t){this._transport=t}get api(){return{get:new v(this._transport),update:new F(this._transport)}}};var w=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/conversation-settings",{...e,method:"GET"})}};var L=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/accounts/"+encodeURIComponent(t)+"/conversation-settings",{...r,method:"PATCH",json:e})}};var U=class{constructor(t){this._transport=t}get api(){return{get:new w(this._transport),update:new L(this._transport)}}};var E=class{constructor(t){this._transport=t}send({limit:t,sort:e,request:r={}}={}){return this._transport.send("v1/actions",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.sortQuery(e)]})}};var N=class{constructor(t){this._transport=t}get api(){return{list:new E(this._transport)}}};var G=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/boilerplates/categories",{...e,method:"POST",json:t})}};var P=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t),{...e,method:"GET"})}};var q=class{constructor(t){this._transport=t}send({limit:t,include:e,request:r={}}={}){return this._transport.send("v1/boilerplates/categories",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.includeQuery(e)]})}};var I=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var B=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/boilerplates/categories/"+encodeURIComponent(t)+"/contents",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var k=class{constructor(t){this._transport=t}get api(){return{get:new P(this._transport),list:new q(this._transport),create:new G(this._transport),update:new I(this._transport),boilerplate:{list:new B(this._transport)}}}};var M=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/boilerplates/contents",{...e,method:"POST",json:t})}};var j=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/boilerplates/contents/"+encodeURIComponent(t),{...e,method:"GET"})}};var Q=class{constructor(t){this._transport=t}send({limit:t,query:e,request:r={}}={}){return this._transport.send("v1/boilerplates/contents",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e)]})}};var D=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/boilerplates/contents/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var H=class{constructor(t){this._transport=t}get api(){return{get:new j(this._transport),list:new Q(this._transport),update:new D(this._transport),create:new M(this._transport)}}};var K=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/channels",{...e,method:"POST",json:t})}};var V=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...e,method:"GET"})}};var W=class{constructor(t){this._transport=t}send({limit:t,request:e={}}={}){return this._transport.send("v1/channels",{...e,method:"GET",searchParams:[...this._transport.limitQuery(t)]})}};import{z as pe}from"zod";var Y=class o{constructor(t){this._transport=t}static SCHEMA=pe.object({overwrite:pe.boolean().optional()});send(t,{body:e,request:r={}}){return this._transport.send("v1/sources/twilio-sendgrid/channels/"+encodeURIComponent(t)+"/sync",{...r,method:"POST",json:o.SCHEMA.parse(e)})}};var z=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var $=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/composition-sections",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var J=class{constructor(t){this._transport=t}send(t,{limit:e,include:r,request:s={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/messages",{...s,method:"GET",searchParams:[...this._transport.limitQuery(e),...this._transport.includeQuery(r)]})}};var X=class{constructor(t){this._transport=t}get api(){return{get:new V(this._transport),list:new W(this._transport),update:new z(this._transport),create:new K(this._transport),compositionSection:{list:new $(this._transport)},message:{list:new J(this._transport)},twilioSendgrid:{sync:new Y(this._transport)}}}};var Z=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/composition-sections",{...e,method:"POST",json:t})}};var tt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...e,method:"GET"})}};var et=class{constructor(t){this._transport=t}send({limit:t,request:e={}}={}){return this._transport.send("v1/composition-sections",{...e,method:"GET",searchParams:[...this._transport.limitQuery(t)]})}};var ot=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var rt=class{constructor(t){this._transport=t}get api(){return{get:new tt(this._transport),list:new et(this._transport),create:new Z(this._transport),update:new ot(this._transport)}}};var nt=class{constructor(t){this._transport=t}getRelativeURL({id:t,vcf:e={}}){let r=e.variant??"vcard",s=e.format??(r==="vcard"?"vcf":"json");return"v1/contacts/"+encodeURIComponent(t)+"/vcf?variant="+encodeURIComponent(r)+"&format="+encodeURIComponent(s)}getURL(t){return this._transport.getURL(this.getRelativeURL(t))}send(t){return this._transport.send(this.getURL(t),{method:"GET"})}};var st=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/contacts",{...e,method:"POST",json:t})}};var it=class{constructor(t){this._transport=t}send(t,{include:e,request:r={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...r,method:"GET",searchParams:[...this._transport.includeQuery(e??{})]})}};var pt=class{constructor(t){this._transport=t}send({limit:t,query:e,request:r={}}={}){return this._transport.send("v1/contacts",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e)]})}};var at=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var ct=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/conversations",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var lt=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/labels",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var dt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...r,method:"POST",json:e})}};var ut=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var mt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notification-subscriptions",{...r,method:"POST",json:e})}};var ht=class{constructor(t){this._transport=t}get api(){return{get:new it(this._transport),list:new pt(this._transport),update:new at(this._transport),create:new st(this._transport),conversation:{list:new ct(this._transport)},label:{list:new lt(this._transport)},note:{list:new ut(this._transport),create:new dt(this._transport)},notificationSubscription:{create:new mt(this._transport)},vcf:{get:new nt(this._transport)}}}};var ft=class{constructor(t){this._transport=t}send(t,{include:e,request:r={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...r,method:"GET",searchParams:[...this._transport.includeQuery(e??{})]})}};var Ct=class{constructor(t){this._transport=t}send({limit:t,filter:e,include:r,request:s={}}={}){return this._transport.send("v1/conversations",{...s,method:"GET",searchParams:[...this._transport.limitQuery(t),...e?[["filter",e]]:[],...this._transport.includeQuery(r??{})]})}};var bt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var gt=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/labels",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var _t=class{constructor(t){this._transport=t}send(t,{limit:e,include:r,request:s={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...s,method:"GET",searchParams:[...this._transport.limitQuery(e),...this._transport.includeQuery(r??{})]})}};var d=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...r,method:"POST",json:e})}};var Ot=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var yt=class{constructor(t){this._transport=t}get api(){return{get:new ft(this._transport),list:new Ct(this._transport),update:new bt(this._transport),create:new d(this._transport),label:{list:new gt(this._transport)},message:{list:new _t(this._transport)},note:{list:new Ot(this._transport),create:new d(this._transport)}}}};var xt=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/contacts",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var St=class{constructor(t){this._transport=t}send(t,{limit:e,request:r={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...r,method:"GET",searchParams:[...this._transport.limitQuery(e)]})}};var Tt=class{constructor(t){this._transport=t}send({body:t,request:e={}}){return this._transport.send("v1/labels",{...e,method:"POST",json:t})}};var Rt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var vt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"})}};var Ft=class{constructor(t){this._transport=t}send({limit:t,query:e,include:r,request:s={}}={}){return this._transport.send("v1/labels",{...s,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.queryQuery(e),...this._transport.includeQuery(r??{})]})}};var At=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var wt=class{constructor(t){this._transport=t}get api(){return{create:new Tt(this._transport),get:new vt(this._transport),list:new Ft(this._transport),update:new At(this._transport),delete:new Rt(this._transport),contact:{list:new xt(this._transport)},conversation:{list:new St(this._transport)}}}};var Lt=class{constructor(t){this._transport=t}send({limit:t,include:e,request:r={}}={}){return this._transport.send("v1/messages",{...r,method:"GET",searchParams:[...this._transport.limitQuery(t),...this._transport.includeQuery(e??{})]})}};var Ut=class{constructor(t){this._transport=t}get api(){return{list:new Lt(this._transport)}}};var Et=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...r,method:"POST",json:e})}};var Nt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"})}};var Gt=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send("v1/models",{...t,method:"GET"})}};var Pt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...r,method:"POST",timeout:12e4,json:e})}};var qt=class{constructor(t){this._transport=t}get api(){return{get:new Nt(this._transport),list:new Gt(this._transport),response:{create:new Pt(this._transport)},correction:{create:new Et(this._transport)}}}};var It=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...e,method:"GET"})}};var Bt=class{constructor(t){this._transport=t}send(t,{body:e,request:r={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...r,method:"PATCH",json:e})}};var kt=class{constructor(t){this._transport=t}get api(){return{get:new It(this._transport),update:new Bt(this._transport)}}};var Mt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"})}};var jt=class{constructor(t){this._transport=t}send({category:t,request:e={}}={}){let r=[];if(t){let s=Array.isArray(t)?t:[t];for(let i of s)r.push(["category",i])}return this._transport.send("v1/sources",{...e,method:"GET",searchParams:r})}};var Qt=class{constructor(t){this._transport=t}get api(){return{get:new Mt(this._transport),list:new jt(this._transport)}}};var Dt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/statistics/message-frequency",{...e,method:"GET"})}};var Ht=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send("v1/statistics/message-frequency",{...t,method:"GET"})}};var Kt=class{constructor(t){this._transport=t}get api(){return{messageFrequency:new Ht(this._transport),channelMessageFrequency:new Dt(this._transport)}}};var Vt=class{constructor(t){this._transport=t}send({account:t,files:e,request:r={}}){let s=new FormData;for(let i of e)s.append("file",i);return this._transport.send("v1/uploads",{...r,method:"POST",body:s,searchParams:{account:t}})}};var Wt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var Yt=class{constructor(t){this._transport=t}send(t,{request:e={}}={}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"GET"})}};var zt=class{constructor(t){this._transport=t}get api(){return{get:new Yt(this._transport),create:new Vt(this._transport),delete:new Wt(this._transport)}}};var $t=class{constructor(t){this._transport=t}send({request:t={}}={}){return this._transport.send(".well-known/notifications",{...t,method:"GET"})}};var Jt=class{constructor(t){this._transport=t}get api(){return{notification:{get:new $t(this._transport)}}}};var te=class o{static DEFAULT_BASE_URL=se;static PublicAuthentication=u;static BasicAuthentication=m;static BearerAuthentication=h;_transport;_account;_accountAccessToken;_accountConversationSettings;_action;_boilerplateContent;_boilerplateCategory;_channel;_compositionSection;_contact;_conversation;_label;_message;_model;_note;_source;_statistics;_upload;_webhook;_wellKnown;constructor(t,{baseURL:e,...r}={}){this._transport=new O({requestFilterables:[new C,t],...r,baseURL:e?.toString()??o.getBaseURL()}),this._account=new A(this._transport),this._accountAccessToken=new R(this._transport),this._accountConversationSettings=new U(this._transport),this._action=new N(this._transport),this._boilerplateContent=new H(this._transport),this._boilerplateCategory=new k(this._transport),this._channel=new X(this._transport),this._compositionSection=new rt(this._transport),this._contact=new ht(this._transport),this._conversation=new yt(this._transport),this._label=new wt(this._transport),this._message=new Ut(this._transport),this._model=new qt(this._transport),this._note=new kt(this._transport),this._source=new Qt(this._transport),this._statistics=new Kt(this._transport),this._upload=new zt(this._transport),this._webhook=new f(this),this._wellKnown=new Jt(this._transport)}static getBaseURL(){return process.env[ne]??this.DEFAULT_BASE_URL}get account(){return this._account.api}get accountAccessToken(){return this._accountAccessToken.api}get accountConversationSettings(){return this._accountConversationSettings.api}get action(){return this._action.api}get boilerplate(){return this._boilerplateContent.api}get boilerplateContent(){return this._boilerplateContent.api}get boilerplateCategory(){return this._boilerplateCategory.api}get channel(){return this._channel.api}get compositionSection(){return this._compositionSection.api}get contact(){return this._contact.api}get conversation(){return this._conversation.api}get label(){return this._label.api}get message(){return this._message.api}get model(){return this._model.api}get note(){return this._note.api}get source(){return this._source.api}get statistics(){return this._statistics.api}get upload(){return this._upload.api}get webhook(){return this._webhook}get wellKnown(){return this._wellKnown.api}};export{me as a,u as b,m as c,h as d,se as e,p as f,c as g,b as h,g as i,a as j,_ as k,l,te as m};