@great-detail/support-sdk 0.6.0 → 0.6.2

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 Dt=Object.defineProperty;var Wt=(r,t)=>{for(var e in t)Dt(r,e,{get:t[e],enumerable:!0})};var Ot=class{async filter(){return{headers:this.getHeaders()}}getHeaders(){return{}}};var Lt="https://api.support.greatdetail.com",Mt={"X-Powered-By":"GDSupport/JavaScript"},Jt="api-key";import{z as a}from"zod";var m=class r{constructor(t){this._client=t}static SCHEMA=a.object({event:a.intersection(a.object({id:a.string(),createdAt:a.string().datetime()}),a.discriminatedUnion("type",[a.object({type:a.literal("contact.created"),contact:a.string()}),a.object({type:a.literal("message.created"),message:a.string()})]))});async event({request:t}){let{event:e}=r.SCHEMA.parse(t.body);return{event:e}}};var h=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/actions",{...t,method:"GET"})}};import{z as xt}from"zod";var f=class r{constructor(t){this._transport=t}static SCHEMA=xt.object({title:xt.string(),content:xt.string(),account:xt.string()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t)+"/boilerplates",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var C=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplates/"+encodeURIComponent(t),{...e,method:"GET"})}};var b=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t)+"/boilerplates",{...e,method:"GET"})}};var A=class{constructor(t){this._transport=t}async send({query:t,request:e={}}={}){return this._transport.send("v1/boilerplates"+(t?"?query="+encodeURIComponent(t):""),{...e,method:"GET"})}};import{z as Ft}from"zod";var R=class r{constructor(t){this._transport=t}static SCHEMA=Ft.object({title:Ft.string().optional(),content:Ft.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/boilerplates/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};import{z as Tt}from"zod";var y=class r{constructor(t){this._transport=t}static SCHEMA=Tt.object({title:Tt.string(),description:Tt.string().optional(),account:Tt.string()});async send({body:t,request:e={}}){return this._transport.send("v1/boilerplate-categories",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var x=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t),{...e,method:"GET"})}};var T=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/boilerplate-categories",{...t,method:"GET"})}};import{z as wt}from"zod";var _=class r{constructor(t){this._transport=t}static SCHEMA=wt.object({title:wt.string().optional(),description:wt.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};import{z as o}from"zod";var S=class r{constructor(t){this._transport=t}static SCHEMA=o.intersection(o.object({name:o.string().optional(),account:o.string()}),o.discriminatedUnion("source",[o.object({source:o.literal("meta-whatsapp")}),o.object({source:o.literal("twilio-sendgrid"),twilioSendgrid:o.object({displayName:o.string().optional(),outboundEmailAddress:o.string().email(),replyEmailAddress:o.string().optional(),inboundHostname:o.string(),apiKey:o.string()})})]));async send({body:t,request:e={}}){return this._transport.send("v1/channels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var v=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...e,method:"GET"})}};var E=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/channels",{...t,method:"GET"})}};import{z as i}from"zod";var O=class r{constructor(t){this._transport=t}static SCHEMA=i.intersection(i.object({name:i.string().optional()}),i.discriminatedUnion("source",[i.object({source:i.literal("meta-whatsapp")}),i.object({source:i.literal("twilio-sendgrid"),twilioSendgrid:i.object({displayName:i.string().optional(),outboundEmailAddress:i.string().email().optional(),replyEmailAddress:i.string().optional(),inboundHostname:i.string().optional(),apiKey:i.string().optional()})})]));async send({id:t,body:e,request:n={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};import{z as F}from"zod";var w=class r{constructor(t){this._transport=t}static SCHEMA=F.object({account:F.string(),channel:F.string().optional(),location:F.enum(["header","footer"]),content:F.string()});async send({body:t,request:e={}}){return this._transport.send("v1/composition-sections",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var I=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...e,method:"GET"})}};var U=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/composition-sections",{...e,method:"GET"})}};var q=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/composition-sections",{...t,method:"GET"})}};import{z as jt}from"zod";var H=class r{constructor(t){this._transport=t}static SCHEMA=jt.object({content:jt.string()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var Ee="SUPPORT_ACCESS_TOKEN",Oe="SUPPORT_API_KEY",Fe="SUPPORT_KEY_NAME",Gt="SUPPORT_BASE_URL";var L=class{constructor(t){this._transport=t}getRelativeURL({id:t,vcf:e={}}){let n=e.variant??"vcard",s=e.format??(e.variant==="vcard"?"vcf":"json");return"v1/contacts/"+encodeURIComponent(t)+"/vcf?variant="+encodeURIComponent(n)+"&format="+encodeURIComponent(s)}getURL(t){return this._transport.getURL(this.getRelativeURL(t))}};import{z as M}from"zod";var j=class r{constructor(t){this._transport=t}static SCHEMA=M.object({name:M.string(),account:M.string(),emailAddress:M.string().email().optional(),telephoneNumber:M.string().optional()});async send({body:t,request:e={}}){return this._transport.send("v1/contacts",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var G=class{constructor(t){this._transport=t}async send({id:t,include:e,request:n={}}){let s=[];return e?.messageCount&&s.push(["include","messageCount"]),e?.conversationCount&&s.push(["include","conversationCount"]),this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"GET"})}};var N=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/contacts",{...t,method:"GET"})}};var P=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/contacts",{...e,method:"GET"})}};import{z as _t}from"zod";var z=class r{constructor(t){this._transport=t}static SCHEMA=_t.object({name:_t.string().optional(),emailAddress:_t.string().email().optional(),telephoneNumber:_t.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var B=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...e,method:"GET"})}};var D=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"})}};var k=class{constructor(t){this._transport=t}async send({filter:t,include:e,request:n={}}={}){let s=[];return t&&s.push(["filter",t]),e?.latestMessage&&s.push(["include","latestMessage"]),this._transport.send("v1/conversations",{...n,method:"GET",searchParams:s})}};var K=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"})}};import{z as It}from"zod";var V=class r{constructor(t){this._transport=t}static SCHEMA=It.object({status:It.enum(["AwaitingContactConversationStatus","AwaitingAgentConversationStatus","ResolvedConversationStatus","ClosedConversationStatus"]).optional(),hasEnded:It.boolean().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};import{z as St}from"zod";var W=class r{constructor(t){this._transport=t}static SCHEMA=St.object({title:St.string(),description:St.string().optional(),account:St.string()});async send({body:t,request:e={}}){return this._transport.send("v1/labels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var Y=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var $=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"})}};var J=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/labels",{...t,method:"GET"})}};import{z as Ut}from"zod";var X=class r{constructor(t){this._transport=t}static SCHEMA=Ut.object({title:Ut.string().optional(),description:Ut.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var Q=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"})}};var Z=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"})}};var tt=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/messages",{...t,method:"GET"})}};import{z as vt}from"zod";var et=class r{constructor(t){this._transport=t}static SCHEMA=vt.object({input:vt.string().max(65536),original:vt.string().max(65536),correction:vt.string().max(65536)});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var rt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"})}};var nt=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/models",{...t,method:"GET"})}};import{z as Et}from"zod";var st=class r{constructor(t){this._transport=t}static SCHEMA=Et.array(Et.object({role:Et.enum(["user","assistant"]),content:Et.string().max(65536).nullable()})).min(1);async send({id:t,body:e,request:n={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};import{z as Nt}from"zod";var ot=class r{constructor(t){this._transport=t}static SCHEMA=Nt.object({content:Nt.string()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};import{z as Pt}from"zod";var l=class r{constructor(t){this._transport=t}static SCHEMA=Pt.object({content:Pt.string()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var it=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...e,method:"GET"})}};var at=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var pt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};import{z as zt}from"zod";var ct=class r{constructor(t){this._transport=t}static SCHEMA=zt.object({content:zt.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};import{z as c}from"zod";var dt=class r{constructor(t){this._transport=t}static SCHEMA=c.discriminatedUnion("type",[c.object({type:c.literal("vapid"),endpoint:c.string().url(),keys:c.object({p256dh:c.string(),auth:c.string()})})]);async send({id:t,body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notification-subscriptions",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var lt=class r{constructor(t=r.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=Mt;async filter(){return{headers:this.getHeaders()}}getHeaders(){return this._standardHeaders}};var ut=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"})}};var gt=class{constructor(t){this._transport=t}async send({category:t,request:e={}}={}){let n=[];if(t){let s=Array.isArray(t)?t:[t];for(let g of s)n.push(["category",g])}return this._transport.send("v1/sources",{...e,method:"GET",searchParams:n})}};import kt from"is-network-error";import Kt,{HTTPError as Vt}from"ky";var p=class extends Error{};var d=class extends p{};var mt=class extends d{static unauthenticated(){return new this("An unauthenticated request occurred")}};var ht=class extends d{static forbidden(){return new this("A forbidden request occurred")}};var u=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}`)}};var ft=class extends p{};var Ct=class extends p{static badRequest(){return new this("Bad request")}};var bt=class{client;options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t},this.client=Kt.create({prefixUrl:this.options.baseURL,hooks:{beforeRequest:[n=>{for(let s of this.options.requestFilterables){let g=s.getHeaders();for(let[Ht,Bt]of Object.entries(g))n.headers.has(Ht)||n.headers.set(Ht,Bt)}}]}})}getURL(t){return new URL(t,this.options.baseURL).toString()}async send(t,e){return await this.client(t,e).catch(n=>{if(kt(n))throw new ft("A network error occurred",{cause:n});if(n instanceof Vt){let s=n.response.status;switch(console.error(JSON.stringify(n.response)),s){case 400:throw Ct.badRequest();case 401:throw mt.unauthenticated();case 403:throw ht.forbidden();case 404:throw u.notFound(t);case 405:throw u.forbiddenMethod(t,e.method??"GET")}}throw n})}};var At=class{constructor(t){this._transport=t}async send({account:t,files:e,request:n={}}){let s=new FormData;for(let g of e)s.append("file",g);return this._transport.send("v1/uploads",{...n,method:"POST",body:s,searchParams:{account:t}})}};var Rt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var yt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"GET"})}};var qt=class r{static DEFAULT_BASE_URL=Lt;_transport;constructor(t,{baseURL:e,...n}={}){this._transport=new bt({requestFilterables:[new lt,t],...n,baseURL:e?.toString()??r.getBaseURL()})}static getBaseURL(){return process.env[Gt]??this.DEFAULT_BASE_URL}get action(){return{list:new h(this._transport)}}get boilerplate(){return{get:new C(this._transport),list:new A(this._transport),update:new R(this._transport)}}get boilerplateCategory(){return{get:new x(this._transport),list:new T(this._transport),create:new y(this._transport),update:new _(this._transport),boilerplate:{list:new b(this._transport),create:new f(this._transport)}}}get channel(){return{get:new v(this._transport),list:new E(this._transport),update:new O(this._transport),create:new S(this._transport),compositionSection:{list:new U(this._transport)},message:{list:new Q(this._transport)}}}get compositionSection(){return{get:new I(this._transport),list:new q(this._transport),create:new w(this._transport),update:new H(this._transport)}}get contact(){return{get:new G(this._transport),list:new N(this._transport),update:new z(this._transport),create:new j(this._transport),conversation:{list:new D(this._transport)},note:{list:new at(this._transport),create:new ot(this._transport)},notificationSubscription:{create:new dt(this._transport)},vcf:{get:new L(this._transport)}}}get conversation(){return{get:new B(this._transport),list:new k(this._transport),update:new V(this._transport),create:new l(this._transport),message:{list:new Z(this._transport)},note:{list:new pt(this._transport),create:new l(this._transport)}}}get label(){return{create:new W(this._transport),get:new $(this._transport),list:new J(this._transport),update:new X(this._transport),delete:new Y(this._transport),contact:{list:new P(this._transport)},conversation:{list:new K(this._transport)}}}get message(){return{list:new tt(this._transport)}}get model(){return{get:new rt(this._transport),list:new nt(this._transport),response:{create:new st(this._transport)},correction:{create:new et(this._transport)}}}get note(){return{get:new it(this._transport),update:new ct(this._transport)}}get source(){return{get:new ut(this._transport),list:new gt(this._transport)}}get upload(){return{get:new yt(this._transport),create:new At(this._transport),delete:new Rt(this._transport)}}get webhook(){return new m(this)}};export{Wt as a,Ot as b,Ee as c,Oe as d,Fe as e,Lt as f,Jt as g,p as h,d as i,mt as j,ht as k,u as l,ft as m,Ct as n,qt as o};
@@ -1 +1 @@
1
- import{b as y,o as j}from"./chunk-WRKUF6W4.js";import{Command as A}from"commander";import{Command as F}from"commander";import{oraPromise as I}from"ora";function m({client:t,ora:s}){let o=new F("actions").description("Actions");return o.addCommand(new F("list").description("List actions").action(async()=>{let n=await I(()=>t.action.list.send(),{...s,text:"Finding actions"});console.log(await n.json())})),o}import{Command as b}from"commander";import{oraPromise as S}from"ora";function r({client:t,ora:s}){let o=new b("channels").description("Channels");return o.addCommand(new b("list").description("List channels").action(async()=>{let n=await S(()=>t.channel.list.send(),{...s,text:"Finding channels"});console.log(await n.json())})),o}import{Command as d}from"commander";import{oraPromise as v}from"ora";function c({client:t,ora:s}){let o=new d("contacts").description("Contacts");return o.addCommand(new d("get").description("Find contact").argument("<contact>","Contact ID").action(async n=>{let i=await v(()=>t.contact.get.send({id:n}),{...s,text:"Finding contact"});console.log(await i.json())})),o.addCommand(new d("list").description("List contacts").action(async()=>{let n=await v(()=>t.contact.list.send(),{...s,text:"Finding contacts"});console.log(await n.json())})),o}import{Command as p}from"commander";import{oraPromise as L}from"ora";function l({client:t,ora:s}){let o=new p("conversations").description("Conversations");return o.addCommand(new p("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async n=>{let i=await L(()=>t.conversation.get.send({id:n}),{...s,text:"Finding conversation"});console.log(await i.json())})),o.addCommand(new p("list").description("List conversations").action(async()=>{let n=await L(()=>t.conversation.list.send(),{...s,text:"Finding conversations"});console.log(await n.json())})),o}import{Command as a}from"commander";import{oraPromise as u}from"ora";function f({client:t,ora:s}){let o=new a("labels").description("Labels");return o.addCommand(new a("get").description("Find label").argument("<label>","Label ID").action(async n=>{let i=await u(()=>t.label.get.send({id:n}),{...s,text:"Finding label"});console.log(await i.json())})),o.addCommand(new a("list").description("List labels").action(async()=>{let n=await u(()=>t.label.list.send(),{...s,text:"Finding labels"});console.log(await n.json())})),o.addCommand(new a("conversations").description("Find label conversations").argument("<label>","Label ID").action(async n=>{let i=await u(()=>t.label.conversation.list.send({id:n}),{...s,text:"Finding conversations"});console.log(await i.json())})),o}import{Command as P}from"commander";import{oraPromise as M}from"ora";function C({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 M(()=>t.message.list.send(),{...s,text:"Finding messages"});console.log(await n.json())})),o}import{Command as g}from"commander";import{oraPromise as h}from"ora";function w({client:t,ora:s}){let o=new g("models").description("Models");return o.addCommand(new g("get").description("Find model").argument("<model>","Model ID").action(async n=>{let i=await h(()=>t.model.get.send({id:n}),{...s,text:"Finding model"});console.log(await i.json())})),o.addCommand(new g("list").description("List models").action(async()=>{let n=await h(()=>t.model.list.send(),{...s,text:"Finding models"});console.log(await n.json())})),o}import{Command as O}from"commander";import{oraPromise as D}from"ora";function x({client:t,ora:s}){let o=new O("sources").description("Sources");return o.addCommand(new O("get").description("Find source").argument("<source>","Source ID").action(async n=>{let i=await D(()=>t.source.get.send({id:n}),{...s,text:"Finding source"});console.log(await i.json())})),o.addCommand(new O("list").description("List sources").action(async()=>{let n=await D(()=>t.source.list.send(),{...s,text:"Finding sources"});console.log(await n.json())})),o}var e={ora:{spinner:"simpleDotsScrolling"},client:new j(new y)},G=new A("gds").description("Great Detail Support System").addCommand(m(e)).addCommand(r(e)).addCommand(c(e)).addCommand(l(e)).addCommand(f(e)).addCommand(C(e)).addCommand(w(e)).addCommand(x(e)),go=G;export{go as a};
1
+ import{b as y,o as j}from"./chunk-HE2I6XXS.js";import{Command as A}from"commander";import{Command as F}from"commander";import{oraPromise as I}from"ora";function m({client:t,ora:s}){let o=new F("actions").description("Actions");return o.addCommand(new F("list").description("List actions").action(async()=>{let n=await I(()=>t.action.list.send(),{...s,text:"Finding actions"});console.log(await n.json())})),o}import{Command as b}from"commander";import{oraPromise as S}from"ora";function r({client:t,ora:s}){let o=new b("channels").description("Channels");return o.addCommand(new b("list").description("List channels").action(async()=>{let n=await S(()=>t.channel.list.send(),{...s,text:"Finding channels"});console.log(await n.json())})),o}import{Command as d}from"commander";import{oraPromise as v}from"ora";function c({client:t,ora:s}){let o=new d("contacts").description("Contacts");return o.addCommand(new d("get").description("Find contact").argument("<contact>","Contact ID").action(async n=>{let i=await v(()=>t.contact.get.send({id:n}),{...s,text:"Finding contact"});console.log(await i.json())})),o.addCommand(new d("list").description("List contacts").action(async()=>{let n=await v(()=>t.contact.list.send(),{...s,text:"Finding contacts"});console.log(await n.json())})),o}import{Command as p}from"commander";import{oraPromise as L}from"ora";function l({client:t,ora:s}){let o=new p("conversations").description("Conversations");return o.addCommand(new p("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async n=>{let i=await L(()=>t.conversation.get.send({id:n}),{...s,text:"Finding conversation"});console.log(await i.json())})),o.addCommand(new p("list").description("List conversations").action(async()=>{let n=await L(()=>t.conversation.list.send(),{...s,text:"Finding conversations"});console.log(await n.json())})),o}import{Command as a}from"commander";import{oraPromise as u}from"ora";function f({client:t,ora:s}){let o=new a("labels").description("Labels");return o.addCommand(new a("get").description("Find label").argument("<label>","Label ID").action(async n=>{let i=await u(()=>t.label.get.send({id:n}),{...s,text:"Finding label"});console.log(await i.json())})),o.addCommand(new a("list").description("List labels").action(async()=>{let n=await u(()=>t.label.list.send(),{...s,text:"Finding labels"});console.log(await n.json())})),o.addCommand(new a("conversations").description("Find label conversations").argument("<label>","Label ID").action(async n=>{let i=await u(()=>t.label.conversation.list.send({id:n}),{...s,text:"Finding conversations"});console.log(await i.json())})),o}import{Command as P}from"commander";import{oraPromise as M}from"ora";function C({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 M(()=>t.message.list.send(),{...s,text:"Finding messages"});console.log(await n.json())})),o}import{Command as g}from"commander";import{oraPromise as h}from"ora";function w({client:t,ora:s}){let o=new g("models").description("Models");return o.addCommand(new g("get").description("Find model").argument("<model>","Model ID").action(async n=>{let i=await h(()=>t.model.get.send({id:n}),{...s,text:"Finding model"});console.log(await i.json())})),o.addCommand(new g("list").description("List models").action(async()=>{let n=await h(()=>t.model.list.send(),{...s,text:"Finding models"});console.log(await n.json())})),o}import{Command as O}from"commander";import{oraPromise as D}from"ora";function x({client:t,ora:s}){let o=new O("sources").description("Sources");return o.addCommand(new O("get").description("Find source").argument("<source>","Source ID").action(async n=>{let i=await D(()=>t.source.get.send({id:n}),{...s,text:"Finding source"});console.log(await i.json())})),o.addCommand(new O("list").description("List sources").action(async()=>{let n=await D(()=>t.source.list.send(),{...s,text:"Finding sources"});console.log(await n.json())})),o}var e={ora:{spinner:"simpleDotsScrolling"},client:new j(new y)},G=new A("gds").description("Great Detail Support System").addCommand(m(e)).addCommand(r(e)).addCommand(c(e)).addCommand(l(e)).addCommand(f(e)).addCommand(C(e)).addCommand(w(e)).addCommand(x(e)),go=G;export{go as a};
@@ -1 +1 @@
1
- "use strict";var Ae=Object.create;var Ut=Object.defineProperty;var Re=Object.getOwnPropertyDescriptor;var xe=Object.getOwnPropertyNames;var Te=Object.getPrototypeOf,Oe=Object.prototype.hasOwnProperty;var _e=(n,t)=>{for(var e in t)Ut(n,e,{get:t[e],enumerable:!0})},ce=(n,t,e,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of xe(t))!Oe.call(n,r)&&r!==e&&Ut(n,r,{get:()=>t[r],enumerable:!(s=Re(t,r))||s.enumerable});return n};var de=(n,t,e)=>(e=n!=null?Ae(Te(n)):{},ce(t||!n||!n.__esModule?Ut(e,"default",{value:n,enumerable:!0}):e,n)),ve=n=>ce(Ut({},"__esModule",{value:!0}),n);var Ee={};_e(Ee,{default:()=>we});module.exports=ve(Ee);var be=require("commander");var C=class{async filter(){return{headers:this.getHeaders()}}getHeaders(){return{}}};var b=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/actions",{...t,method:"GET"})}};var y=require("zod"),A=class n{constructor(t){this._transport=t}static SCHEMA=y.z.object({title:y.z.string(),content:y.z.string(),account:y.z.string()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t)+"/boilerplates",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var R=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplates/"+encodeURIComponent(t),{...e,method:"GET"})}};var x=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t)+"/boilerplates",{...e,method:"GET"})}};var T=class{constructor(t){this._transport=t}async send({query:t,request:e={}}={}){return this._transport.send("v1/boilerplates"+(t?"?query="+encodeURIComponent(t):""),{...e,method:"GET"})}};var qt=require("zod"),O=class n{constructor(t){this._transport=t}static SCHEMA=qt.z.object({title:qt.z.string().optional(),content:qt.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/boilerplates/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var _=require("zod"),v=class n{constructor(t){this._transport=t}static SCHEMA=_.z.object({title:_.z.string(),description:_.z.string().optional(),account:_.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/boilerplate-categories",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var S=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t),{...e,method:"GET"})}};var w=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/boilerplate-categories",{...t,method:"GET"})}};var Lt=require("zod"),E=class n{constructor(t){this._transport=t}static SCHEMA=Lt.z.object({title:Lt.z.string().optional(),description:Lt.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var o=require("zod"),F=class n{constructor(t){this._transport=t}static SCHEMA=o.z.intersection(o.z.object({name:o.z.string().optional(),account:o.z.string()}),o.z.discriminatedUnion("source",[o.z.object({source:o.z.literal("meta-whatsapp")}),o.z.object({source:o.z.literal("twilio-sendgrid"),twilioSendgrid:o.z.object({displayName:o.z.string().optional(),outboundEmailAddress:o.z.string().email(),replyEmailAddress:o.z.string().optional(),inboundHostname:o.z.string(),apiKey:o.z.string()})})]));async send({body:t,request:e={}}){return this._transport.send("v1/channels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var I=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...e,method:"GET"})}};var U=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/channels",{...t,method:"GET"})}};var i=require("zod"),q=class n{constructor(t){this._transport=t}static SCHEMA=i.z.intersection(i.z.object({name:i.z.string().optional()}),i.z.discriminatedUnion("source",[i.z.object({source:i.z.literal("meta-whatsapp")}),i.z.object({source:i.z.literal("twilio-sendgrid"),twilioSendgrid:i.z.object({displayName:i.z.string().optional(),outboundEmailAddress:i.z.string().email().optional(),replyEmailAddress:i.z.string().optional(),inboundHostname:i.z.string().optional(),apiKey:i.z.string().optional()})})]));async send({id:t,body:e,request:s={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var m=require("zod"),L=class n{constructor(t){this._transport=t}static SCHEMA=m.z.object({account:m.z.string(),channel:m.z.string().optional(),location:m.z.enum(["header","footer"]),content:m.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/composition-sections",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var j=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...e,method:"GET"})}};var H=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/composition-sections",{...e,method:"GET"})}};var M=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/composition-sections",{...t,method:"GET"})}};var Bt=require("zod"),G=class n{constructor(t){this._transport=t}static SCHEMA=Bt.z.object({content:Bt.z.string()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var le="SUPPORT_BASE_URL";var me="https://api.support.greatdetail.com",ue={"X-Powered-By":"GDSupport/JavaScript"};var N=class{constructor(t){this._transport=t}getRelativeURL({id:t,vcf:e={}}){let s=e.variant??"vcard",r=e.format??(e.variant==="vcard"?"vcf":"json");return"v1/contacts/"+encodeURIComponent(t)+"/vcf?variant="+encodeURIComponent(s)+"&format="+encodeURIComponent(r)}getURL(t){return this._transport.getURL(this.getRelativeURL(t))}};var u=require("zod"),P=class n{constructor(t){this._transport=t}static SCHEMA=u.z.object({name:u.z.string(),account:u.z.string(),emailAddress:u.z.string().email().optional(),telephoneNumber:u.z.string().optional()});async send({body:t,request:e={}}){return this._transport.send("v1/contacts",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var D=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...e,method:"GET"})}};var z=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/contacts",{...t,method:"GET"})}};var B=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/contacts",{...e,method:"GET"})}};var k=require("zod"),K=class n{constructor(t){this._transport=t}static SCHEMA=k.z.object({name:k.z.string().optional(),emailAddress:k.z.string().email().optional(),telephoneNumber:k.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var V=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...e,method:"GET"})}};var W=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"})}};var Y=class{constructor(t){this._transport=t}async send({filter:t,include:e,request:s={}}={}){let r=[];return t&&r.push(["filter",t]),e?.latestMessage&&r.push(["include","latestMessage"]),this._transport.send("v1/conversations",{...s,method:"GET",searchParams:r})}};var $=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"})}};var jt=require("zod"),J=class n{constructor(t){this._transport=t}static SCHEMA=jt.z.object({status:jt.z.enum(["AwaitingContactConversationStatus","AwaitingAgentConversationStatus","ResolvedConversationStatus","ClosedConversationStatus"]).optional(),hasEnded:jt.z.boolean().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var X=require("zod"),Q=class n{constructor(t){this._transport=t}static SCHEMA=X.z.object({title:X.z.string(),description:X.z.string().optional(),account:X.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/labels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var Z=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var tt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"})}};var et=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/labels",{...t,method:"GET"})}};var Ht=require("zod"),nt=class n{constructor(t){this._transport=t}static SCHEMA=Ht.z.object({title:Ht.z.string().optional(),description:Ht.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var st=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"})}};var rt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"})}};var ot=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/messages",{...t,method:"GET"})}};var it=require("zod"),at=class n{constructor(t){this._transport=t}static SCHEMA=it.z.object({input:it.z.string().max(65536),original:it.z.string().max(65536),correction:it.z.string().max(65536)});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var pt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"})}};var ct=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/models",{...t,method:"GET"})}};var dt=require("zod"),lt=class n{constructor(t){this._transport=t}static SCHEMA=dt.z.array(dt.z.object({role:dt.z.enum(["user","assistant"]),content:dt.z.string().max(65536).nullable()})).min(1);async send({id:t,body:e,request:s={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var kt=require("zod"),mt=class n{constructor(t){this._transport=t}static SCHEMA=kt.z.object({content:kt.z.string()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var Kt=require("zod"),g=class n{constructor(t){this._transport=t}static SCHEMA=Kt.z.object({content:Kt.z.string()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var ut=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...e,method:"GET"})}};var gt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var ht=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var Vt=require("zod"),ft=class n{constructor(t){this._transport=t}static SCHEMA=Vt.z.object({content:Vt.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var c=require("zod"),Ct=class n{constructor(t){this._transport=t}static SCHEMA=c.z.discriminatedUnion("type",[c.z.object({type:c.z.literal("vapid"),endpoint:c.z.string().url(),keys:c.z.object({p256dh:c.z.string(),auth:c.z.string()})})]);async send({id:t,body:e,request:s={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notification-subscriptions",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var bt=class n{constructor(t=n.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=ue;async filter(){return{headers:this.getHeaders()}}getHeaders(){return this._standardHeaders}};var yt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"})}};var At=class{constructor(t){this._transport=t}async send({category:t,request:e={}}={}){let s=[];if(t){let r=Array.isArray(t)?t:[t];for(let f of r)s.push(["category",f])}return this._transport.send("v1/sources",{...e,method:"GET",searchParams:s})}};var ge=de(require("is-network-error"),1),Mt=de(require("ky"),1);var p=class extends Error{};var l=class extends p{};var Rt=class extends l{static unauthenticated(){return new this("An unauthenticated request occurred")}};var xt=class extends l{static forbidden(){return new this("A forbidden request occurred")}};var h=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}`)}};var Tt=class extends p{};var Ot=class extends p{static badRequest(){return new this("Bad request")}};var _t=class{client;options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t},this.client=Mt.default.create({prefixUrl:this.options.baseURL,hooks:{beforeRequest:[s=>{for(let r of this.options.requestFilterables){let f=r.getHeaders();for(let[pe,ye]of Object.entries(f))s.headers.has(pe)||s.headers.set(pe,ye)}}]}})}getURL(t){return new URL(t,this.options.baseURL).toString()}async send(t,e){return await this.client(t,e).catch(s=>{if((0,ge.default)(s))throw new Tt("A network error occurred",{cause:s});if(s instanceof Mt.HTTPError){let r=s.response.status;switch(console.error(JSON.stringify(s.response)),r){case 400:throw Ot.badRequest();case 401:throw Rt.unauthenticated();case 403:throw xt.forbidden();case 404:throw h.notFound(t);case 405:throw h.forbiddenMethod(t,e.method??"GET")}}throw s})}};var vt=class{constructor(t){this._transport=t}async send({account:t,files:e,request:s={}}){let r=new FormData;for(let f of e)r.append("file",f);return this._transport.send("v1/uploads",{...s,method:"POST",body:r,searchParams:{account:t}})}};var St=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var wt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"GET"})}};var a=require("zod"),Et=class n{constructor(t){this._client=t}static SCHEMA=a.z.object({event:a.z.intersection(a.z.object({id:a.z.string(),createdAt:a.z.string().datetime()}),a.z.discriminatedUnion("type",[a.z.object({type:a.z.literal("contact.created"),contact:a.z.string()}),a.z.object({type:a.z.literal("message.created"),message:a.z.string()})]))});async event({request:t}){let{event:e}=n.SCHEMA.parse(t.body);return{event:e}}};var Ft=class n{static DEFAULT_BASE_URL=me;_transport;constructor(t,{baseURL:e,...s}={}){this._transport=new _t({requestFilterables:[new bt,t],...s,baseURL:e?.toString()??n.getBaseURL()})}static getBaseURL(){return process.env[le]??this.DEFAULT_BASE_URL}get action(){return{list:new b(this._transport)}}get boilerplate(){return{get:new R(this._transport),list:new T(this._transport),update:new O(this._transport)}}get boilerplateCategory(){return{get:new S(this._transport),list:new w(this._transport),create:new v(this._transport),update:new E(this._transport),boilerplate:{list:new x(this._transport),create:new A(this._transport)}}}get channel(){return{get:new I(this._transport),list:new U(this._transport),update:new q(this._transport),create:new F(this._transport),compositionSection:{list:new H(this._transport)},message:{list:new st(this._transport)}}}get compositionSection(){return{get:new j(this._transport),list:new M(this._transport),create:new L(this._transport),update:new G(this._transport)}}get contact(){return{get:new D(this._transport),list:new z(this._transport),update:new K(this._transport),create:new P(this._transport),conversation:{list:new W(this._transport)},note:{list:new gt(this._transport),create:new mt(this._transport)},notificationSubscription:{create:new Ct(this._transport)},vcf:{get:new N(this._transport)}}}get conversation(){return{get:new V(this._transport),list:new Y(this._transport),update:new J(this._transport),create:new g(this._transport),message:{list:new rt(this._transport)},note:{list:new ht(this._transport),create:new g(this._transport)}}}get label(){return{create:new Q(this._transport),get:new tt(this._transport),list:new et(this._transport),update:new nt(this._transport),delete:new Z(this._transport),contact:{list:new B(this._transport)},conversation:{list:new $(this._transport)}}}get message(){return{list:new ot(this._transport)}}get model(){return{get:new pt(this._transport),list:new ct(this._transport),response:{create:new lt(this._transport)},correction:{create:new at(this._transport)}}}get note(){return{get:new ut(this._transport),update:new ft(this._transport)}}get source(){return{get:new yt(this._transport),list:new At(this._transport)}}get upload(){return{get:new wt(this._transport),create:new vt(this._transport),delete:new St(this._transport)}}get webhook(){return new Et(this)}};var Wt=require("commander"),he=require("ora");function Yt({client:n,ora:t}){let e=new Wt.Command("actions").description("Actions");return e.addCommand(new Wt.Command("list").description("List actions").action(async()=>{let s=await(0,he.oraPromise)(()=>n.action.list.send(),{...t,text:"Finding actions"});console.log(await s.json())})),e}var $t=require("commander"),fe=require("ora");function Jt({client:n,ora:t}){let e=new $t.Command("channels").description("Channels");return e.addCommand(new $t.Command("list").description("List channels").action(async()=>{let s=await(0,fe.oraPromise)(()=>n.channel.list.send(),{...t,text:"Finding channels"});console.log(await s.json())})),e}var Gt=require("commander"),Xt=require("ora");function Qt({client:n,ora:t}){let e=new Gt.Command("contacts").description("Contacts");return e.addCommand(new Gt.Command("get").description("Find contact").argument("<contact>","Contact ID").action(async s=>{let r=await(0,Xt.oraPromise)(()=>n.contact.get.send({id:s}),{...t,text:"Finding contact"});console.log(await r.json())})),e.addCommand(new Gt.Command("list").description("List contacts").action(async()=>{let s=await(0,Xt.oraPromise)(()=>n.contact.list.send(),{...t,text:"Finding contacts"});console.log(await s.json())})),e}var Nt=require("commander"),Zt=require("ora");function te({client:n,ora:t}){let e=new Nt.Command("conversations").description("Conversations");return e.addCommand(new Nt.Command("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async s=>{let r=await(0,Zt.oraPromise)(()=>n.conversation.get.send({id:s}),{...t,text:"Finding conversation"});console.log(await r.json())})),e.addCommand(new Nt.Command("list").description("List conversations").action(async()=>{let s=await(0,Zt.oraPromise)(()=>n.conversation.list.send(),{...t,text:"Finding conversations"});console.log(await s.json())})),e}var It=require("commander"),Pt=require("ora");function ee({client:n,ora:t}){let e=new It.Command("labels").description("Labels");return e.addCommand(new It.Command("get").description("Find label").argument("<label>","Label ID").action(async s=>{let r=await(0,Pt.oraPromise)(()=>n.label.get.send({id:s}),{...t,text:"Finding label"});console.log(await r.json())})),e.addCommand(new It.Command("list").description("List labels").action(async()=>{let s=await(0,Pt.oraPromise)(()=>n.label.list.send(),{...t,text:"Finding labels"});console.log(await s.json())})),e.addCommand(new It.Command("conversations").description("Find label conversations").argument("<label>","Label ID").action(async s=>{let r=await(0,Pt.oraPromise)(()=>n.label.conversation.list.send({id:s}),{...t,text:"Finding conversations"});console.log(await r.json())})),e}var ne=require("commander"),Ce=require("ora");function se({client:n,ora:t}){let e=new ne.Command("messages").description("Messages");return e.addCommand(new ne.Command("list").description("List messages").action(async()=>{let s=await(0,Ce.oraPromise)(()=>n.message.list.send(),{...t,text:"Finding messages"});console.log(await s.json())})),e}var Dt=require("commander"),re=require("ora");function oe({client:n,ora:t}){let e=new Dt.Command("models").description("Models");return e.addCommand(new Dt.Command("get").description("Find model").argument("<model>","Model ID").action(async s=>{let r=await(0,re.oraPromise)(()=>n.model.get.send({id:s}),{...t,text:"Finding model"});console.log(await r.json())})),e.addCommand(new Dt.Command("list").description("List models").action(async()=>{let s=await(0,re.oraPromise)(()=>n.model.list.send(),{...t,text:"Finding models"});console.log(await s.json())})),e}var zt=require("commander"),ie=require("ora");function ae({client:n,ora:t}){let e=new zt.Command("sources").description("Sources");return e.addCommand(new zt.Command("get").description("Find source").argument("<source>","Source ID").action(async s=>{let r=await(0,ie.oraPromise)(()=>n.source.get.send({id:s}),{...t,text:"Finding source"});console.log(await r.json())})),e.addCommand(new zt.Command("list").description("List sources").action(async()=>{let s=await(0,ie.oraPromise)(()=>n.source.list.send(),{...t,text:"Finding sources"});console.log(await s.json())})),e}var d={ora:{spinner:"simpleDotsScrolling"},client:new Ft(new C)},Se=new be.Command("gds").description("Great Detail Support System").addCommand(Yt(d)).addCommand(Jt(d)).addCommand(Qt(d)).addCommand(te(d)).addCommand(ee(d)).addCommand(se(d)).addCommand(oe(d)).addCommand(ae(d)),we=Se;
1
+ "use strict";var Ae=Object.create;var Ut=Object.defineProperty;var Re=Object.getOwnPropertyDescriptor;var xe=Object.getOwnPropertyNames;var Te=Object.getPrototypeOf,Oe=Object.prototype.hasOwnProperty;var ve=(n,t)=>{for(var e in t)Ut(n,e,{get:t[e],enumerable:!0})},ce=(n,t,e,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of xe(t))!Oe.call(n,r)&&r!==e&&Ut(n,r,{get:()=>t[r],enumerable:!(s=Re(t,r))||s.enumerable});return n};var de=(n,t,e)=>(e=n!=null?Ae(Te(n)):{},ce(t||!n||!n.__esModule?Ut(e,"default",{value:n,enumerable:!0}):e,n)),_e=n=>ce(Ut({},"__esModule",{value:!0}),n);var Ee={};ve(Ee,{default:()=>we});module.exports=_e(Ee);var be=require("commander");var C=class{async filter(){return{headers:this.getHeaders()}}getHeaders(){return{}}};var b=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/actions",{...t,method:"GET"})}};var y=require("zod"),A=class n{constructor(t){this._transport=t}static SCHEMA=y.z.object({title:y.z.string(),content:y.z.string(),account:y.z.string()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t)+"/boilerplates",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var R=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplates/"+encodeURIComponent(t),{...e,method:"GET"})}};var x=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t)+"/boilerplates",{...e,method:"GET"})}};var T=class{constructor(t){this._transport=t}async send({query:t,request:e={}}={}){return this._transport.send("v1/boilerplates"+(t?"?query="+encodeURIComponent(t):""),{...e,method:"GET"})}};var qt=require("zod"),O=class n{constructor(t){this._transport=t}static SCHEMA=qt.z.object({title:qt.z.string().optional(),content:qt.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/boilerplates/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var v=require("zod"),_=class n{constructor(t){this._transport=t}static SCHEMA=v.z.object({title:v.z.string(),description:v.z.string().optional(),account:v.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/boilerplate-categories",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var S=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t),{...e,method:"GET"})}};var w=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/boilerplate-categories",{...t,method:"GET"})}};var Lt=require("zod"),E=class n{constructor(t){this._transport=t}static SCHEMA=Lt.z.object({title:Lt.z.string().optional(),description:Lt.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var o=require("zod"),F=class n{constructor(t){this._transport=t}static SCHEMA=o.z.intersection(o.z.object({name:o.z.string().optional(),account:o.z.string()}),o.z.discriminatedUnion("source",[o.z.object({source:o.z.literal("meta-whatsapp")}),o.z.object({source:o.z.literal("twilio-sendgrid"),twilioSendgrid:o.z.object({displayName:o.z.string().optional(),outboundEmailAddress:o.z.string().email(),replyEmailAddress:o.z.string().optional(),inboundHostname:o.z.string(),apiKey:o.z.string()})})]));async send({body:t,request:e={}}){return this._transport.send("v1/channels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var I=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...e,method:"GET"})}};var U=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/channels",{...t,method:"GET"})}};var i=require("zod"),q=class n{constructor(t){this._transport=t}static SCHEMA=i.z.intersection(i.z.object({name:i.z.string().optional()}),i.z.discriminatedUnion("source",[i.z.object({source:i.z.literal("meta-whatsapp")}),i.z.object({source:i.z.literal("twilio-sendgrid"),twilioSendgrid:i.z.object({displayName:i.z.string().optional(),outboundEmailAddress:i.z.string().email().optional(),replyEmailAddress:i.z.string().optional(),inboundHostname:i.z.string().optional(),apiKey:i.z.string().optional()})})]));async send({id:t,body:e,request:s={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var m=require("zod"),L=class n{constructor(t){this._transport=t}static SCHEMA=m.z.object({account:m.z.string(),channel:m.z.string().optional(),location:m.z.enum(["header","footer"]),content:m.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/composition-sections",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var j=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...e,method:"GET"})}};var H=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/composition-sections",{...e,method:"GET"})}};var M=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/composition-sections",{...t,method:"GET"})}};var Bt=require("zod"),G=class n{constructor(t){this._transport=t}static SCHEMA=Bt.z.object({content:Bt.z.string()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var le="SUPPORT_BASE_URL";var me="https://api.support.greatdetail.com",ue={"X-Powered-By":"GDSupport/JavaScript"};var N=class{constructor(t){this._transport=t}getRelativeURL({id:t,vcf:e={}}){let s=e.variant??"vcard",r=e.format??(e.variant==="vcard"?"vcf":"json");return"v1/contacts/"+encodeURIComponent(t)+"/vcf?variant="+encodeURIComponent(s)+"&format="+encodeURIComponent(r)}getURL(t){return this._transport.getURL(this.getRelativeURL(t))}};var u=require("zod"),P=class n{constructor(t){this._transport=t}static SCHEMA=u.z.object({name:u.z.string(),account:u.z.string(),emailAddress:u.z.string().email().optional(),telephoneNumber:u.z.string().optional()});async send({body:t,request:e={}}){return this._transport.send("v1/contacts",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var D=class{constructor(t){this._transport=t}async send({id:t,include:e,request:s={}}){let r=[];return e?.messageCount&&r.push(["include","messageCount"]),e?.conversationCount&&r.push(["include","conversationCount"]),this._transport.send("v1/contacts/"+encodeURIComponent(t),{...s,method:"GET"})}};var z=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/contacts",{...t,method:"GET"})}};var B=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/contacts",{...e,method:"GET"})}};var k=require("zod"),K=class n{constructor(t){this._transport=t}static SCHEMA=k.z.object({name:k.z.string().optional(),emailAddress:k.z.string().email().optional(),telephoneNumber:k.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var V=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...e,method:"GET"})}};var W=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"})}};var Y=class{constructor(t){this._transport=t}async send({filter:t,include:e,request:s={}}={}){let r=[];return t&&r.push(["filter",t]),e?.latestMessage&&r.push(["include","latestMessage"]),this._transport.send("v1/conversations",{...s,method:"GET",searchParams:r})}};var $=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"})}};var jt=require("zod"),J=class n{constructor(t){this._transport=t}static SCHEMA=jt.z.object({status:jt.z.enum(["AwaitingContactConversationStatus","AwaitingAgentConversationStatus","ResolvedConversationStatus","ClosedConversationStatus"]).optional(),hasEnded:jt.z.boolean().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var X=require("zod"),Q=class n{constructor(t){this._transport=t}static SCHEMA=X.z.object({title:X.z.string(),description:X.z.string().optional(),account:X.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/labels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var Z=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var tt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"})}};var et=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/labels",{...t,method:"GET"})}};var Ht=require("zod"),nt=class n{constructor(t){this._transport=t}static SCHEMA=Ht.z.object({title:Ht.z.string().optional(),description:Ht.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var st=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"})}};var rt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"})}};var ot=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/messages",{...t,method:"GET"})}};var it=require("zod"),at=class n{constructor(t){this._transport=t}static SCHEMA=it.z.object({input:it.z.string().max(65536),original:it.z.string().max(65536),correction:it.z.string().max(65536)});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var pt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"})}};var ct=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/models",{...t,method:"GET"})}};var dt=require("zod"),lt=class n{constructor(t){this._transport=t}static SCHEMA=dt.z.array(dt.z.object({role:dt.z.enum(["user","assistant"]),content:dt.z.string().max(65536).nullable()})).min(1);async send({id:t,body:e,request:s={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var kt=require("zod"),mt=class n{constructor(t){this._transport=t}static SCHEMA=kt.z.object({content:kt.z.string()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var Kt=require("zod"),g=class n{constructor(t){this._transport=t}static SCHEMA=Kt.z.object({content:Kt.z.string()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var ut=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...e,method:"GET"})}};var gt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var ht=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var Vt=require("zod"),ft=class n{constructor(t){this._transport=t}static SCHEMA=Vt.z.object({content:Vt.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var c=require("zod"),Ct=class n{constructor(t){this._transport=t}static SCHEMA=c.z.discriminatedUnion("type",[c.z.object({type:c.z.literal("vapid"),endpoint:c.z.string().url(),keys:c.z.object({p256dh:c.z.string(),auth:c.z.string()})})]);async send({id:t,body:e,request:s={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notification-subscriptions",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var bt=class n{constructor(t=n.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=ue;async filter(){return{headers:this.getHeaders()}}getHeaders(){return this._standardHeaders}};var yt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"})}};var At=class{constructor(t){this._transport=t}async send({category:t,request:e={}}={}){let s=[];if(t){let r=Array.isArray(t)?t:[t];for(let f of r)s.push(["category",f])}return this._transport.send("v1/sources",{...e,method:"GET",searchParams:s})}};var ge=de(require("is-network-error"),1),Mt=de(require("ky"),1);var p=class extends Error{};var l=class extends p{};var Rt=class extends l{static unauthenticated(){return new this("An unauthenticated request occurred")}};var xt=class extends l{static forbidden(){return new this("A forbidden request occurred")}};var h=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}`)}};var Tt=class extends p{};var Ot=class extends p{static badRequest(){return new this("Bad request")}};var vt=class{client;options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t},this.client=Mt.default.create({prefixUrl:this.options.baseURL,hooks:{beforeRequest:[s=>{for(let r of this.options.requestFilterables){let f=r.getHeaders();for(let[pe,ye]of Object.entries(f))s.headers.has(pe)||s.headers.set(pe,ye)}}]}})}getURL(t){return new URL(t,this.options.baseURL).toString()}async send(t,e){return await this.client(t,e).catch(s=>{if((0,ge.default)(s))throw new Tt("A network error occurred",{cause:s});if(s instanceof Mt.HTTPError){let r=s.response.status;switch(console.error(JSON.stringify(s.response)),r){case 400:throw Ot.badRequest();case 401:throw Rt.unauthenticated();case 403:throw xt.forbidden();case 404:throw h.notFound(t);case 405:throw h.forbiddenMethod(t,e.method??"GET")}}throw s})}};var _t=class{constructor(t){this._transport=t}async send({account:t,files:e,request:s={}}){let r=new FormData;for(let f of e)r.append("file",f);return this._transport.send("v1/uploads",{...s,method:"POST",body:r,searchParams:{account:t}})}};var St=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var wt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"GET"})}};var a=require("zod"),Et=class n{constructor(t){this._client=t}static SCHEMA=a.z.object({event:a.z.intersection(a.z.object({id:a.z.string(),createdAt:a.z.string().datetime()}),a.z.discriminatedUnion("type",[a.z.object({type:a.z.literal("contact.created"),contact:a.z.string()}),a.z.object({type:a.z.literal("message.created"),message:a.z.string()})]))});async event({request:t}){let{event:e}=n.SCHEMA.parse(t.body);return{event:e}}};var Ft=class n{static DEFAULT_BASE_URL=me;_transport;constructor(t,{baseURL:e,...s}={}){this._transport=new vt({requestFilterables:[new bt,t],...s,baseURL:e?.toString()??n.getBaseURL()})}static getBaseURL(){return process.env[le]??this.DEFAULT_BASE_URL}get action(){return{list:new b(this._transport)}}get boilerplate(){return{get:new R(this._transport),list:new T(this._transport),update:new O(this._transport)}}get boilerplateCategory(){return{get:new S(this._transport),list:new w(this._transport),create:new _(this._transport),update:new E(this._transport),boilerplate:{list:new x(this._transport),create:new A(this._transport)}}}get channel(){return{get:new I(this._transport),list:new U(this._transport),update:new q(this._transport),create:new F(this._transport),compositionSection:{list:new H(this._transport)},message:{list:new st(this._transport)}}}get compositionSection(){return{get:new j(this._transport),list:new M(this._transport),create:new L(this._transport),update:new G(this._transport)}}get contact(){return{get:new D(this._transport),list:new z(this._transport),update:new K(this._transport),create:new P(this._transport),conversation:{list:new W(this._transport)},note:{list:new gt(this._transport),create:new mt(this._transport)},notificationSubscription:{create:new Ct(this._transport)},vcf:{get:new N(this._transport)}}}get conversation(){return{get:new V(this._transport),list:new Y(this._transport),update:new J(this._transport),create:new g(this._transport),message:{list:new rt(this._transport)},note:{list:new ht(this._transport),create:new g(this._transport)}}}get label(){return{create:new Q(this._transport),get:new tt(this._transport),list:new et(this._transport),update:new nt(this._transport),delete:new Z(this._transport),contact:{list:new B(this._transport)},conversation:{list:new $(this._transport)}}}get message(){return{list:new ot(this._transport)}}get model(){return{get:new pt(this._transport),list:new ct(this._transport),response:{create:new lt(this._transport)},correction:{create:new at(this._transport)}}}get note(){return{get:new ut(this._transport),update:new ft(this._transport)}}get source(){return{get:new yt(this._transport),list:new At(this._transport)}}get upload(){return{get:new wt(this._transport),create:new _t(this._transport),delete:new St(this._transport)}}get webhook(){return new Et(this)}};var Wt=require("commander"),he=require("ora");function Yt({client:n,ora:t}){let e=new Wt.Command("actions").description("Actions");return e.addCommand(new Wt.Command("list").description("List actions").action(async()=>{let s=await(0,he.oraPromise)(()=>n.action.list.send(),{...t,text:"Finding actions"});console.log(await s.json())})),e}var $t=require("commander"),fe=require("ora");function Jt({client:n,ora:t}){let e=new $t.Command("channels").description("Channels");return e.addCommand(new $t.Command("list").description("List channels").action(async()=>{let s=await(0,fe.oraPromise)(()=>n.channel.list.send(),{...t,text:"Finding channels"});console.log(await s.json())})),e}var Gt=require("commander"),Xt=require("ora");function Qt({client:n,ora:t}){let e=new Gt.Command("contacts").description("Contacts");return e.addCommand(new Gt.Command("get").description("Find contact").argument("<contact>","Contact ID").action(async s=>{let r=await(0,Xt.oraPromise)(()=>n.contact.get.send({id:s}),{...t,text:"Finding contact"});console.log(await r.json())})),e.addCommand(new Gt.Command("list").description("List contacts").action(async()=>{let s=await(0,Xt.oraPromise)(()=>n.contact.list.send(),{...t,text:"Finding contacts"});console.log(await s.json())})),e}var Nt=require("commander"),Zt=require("ora");function te({client:n,ora:t}){let e=new Nt.Command("conversations").description("Conversations");return e.addCommand(new Nt.Command("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async s=>{let r=await(0,Zt.oraPromise)(()=>n.conversation.get.send({id:s}),{...t,text:"Finding conversation"});console.log(await r.json())})),e.addCommand(new Nt.Command("list").description("List conversations").action(async()=>{let s=await(0,Zt.oraPromise)(()=>n.conversation.list.send(),{...t,text:"Finding conversations"});console.log(await s.json())})),e}var It=require("commander"),Pt=require("ora");function ee({client:n,ora:t}){let e=new It.Command("labels").description("Labels");return e.addCommand(new It.Command("get").description("Find label").argument("<label>","Label ID").action(async s=>{let r=await(0,Pt.oraPromise)(()=>n.label.get.send({id:s}),{...t,text:"Finding label"});console.log(await r.json())})),e.addCommand(new It.Command("list").description("List labels").action(async()=>{let s=await(0,Pt.oraPromise)(()=>n.label.list.send(),{...t,text:"Finding labels"});console.log(await s.json())})),e.addCommand(new It.Command("conversations").description("Find label conversations").argument("<label>","Label ID").action(async s=>{let r=await(0,Pt.oraPromise)(()=>n.label.conversation.list.send({id:s}),{...t,text:"Finding conversations"});console.log(await r.json())})),e}var ne=require("commander"),Ce=require("ora");function se({client:n,ora:t}){let e=new ne.Command("messages").description("Messages");return e.addCommand(new ne.Command("list").description("List messages").action(async()=>{let s=await(0,Ce.oraPromise)(()=>n.message.list.send(),{...t,text:"Finding messages"});console.log(await s.json())})),e}var Dt=require("commander"),re=require("ora");function oe({client:n,ora:t}){let e=new Dt.Command("models").description("Models");return e.addCommand(new Dt.Command("get").description("Find model").argument("<model>","Model ID").action(async s=>{let r=await(0,re.oraPromise)(()=>n.model.get.send({id:s}),{...t,text:"Finding model"});console.log(await r.json())})),e.addCommand(new Dt.Command("list").description("List models").action(async()=>{let s=await(0,re.oraPromise)(()=>n.model.list.send(),{...t,text:"Finding models"});console.log(await s.json())})),e}var zt=require("commander"),ie=require("ora");function ae({client:n,ora:t}){let e=new zt.Command("sources").description("Sources");return e.addCommand(new zt.Command("get").description("Find source").argument("<source>","Source ID").action(async s=>{let r=await(0,ie.oraPromise)(()=>n.source.get.send({id:s}),{...t,text:"Finding source"});console.log(await r.json())})),e.addCommand(new zt.Command("list").description("List sources").action(async()=>{let s=await(0,ie.oraPromise)(()=>n.source.list.send(),{...t,text:"Finding sources"});console.log(await s.json())})),e}var d={ora:{spinner:"simpleDotsScrolling"},client:new Ft(new C)},Se=new be.Command("gds").description("Great Detail Support System").addCommand(Yt(d)).addCommand(Jt(d)).addCommand(Qt(d)).addCommand(te(d)).addCommand(ee(d)).addCommand(se(d)).addCommand(oe(d)).addCommand(ae(d)),we=Se;
@@ -1,5 +1,5 @@
1
1
  import { Command } from 'commander';
2
- import { C as Client } from '../index-CslpVmui.cjs';
2
+ import { C as Client } from '../index-D7GeM4Aj.cjs';
3
3
  import { Options as Options$1 } from 'ora';
4
4
  import 'ky';
5
5
  import 'zod';
@@ -1,5 +1,5 @@
1
1
  import { Command } from 'commander';
2
- import { C as Client } from '../index-CslpVmui.js';
2
+ import { C as Client } from '../index-D7GeM4Aj.js';
3
3
  import { Options as Options$1 } from 'ora';
4
4
  import 'ky';
5
5
  import 'zod';
package/dist/cli/index.js CHANGED
@@ -1 +1 @@
1
- import{a}from"../chunk-6WWQ2CHK.js";import"../chunk-WRKUF6W4.js";export{a as default};
1
+ import{a}from"../chunk-O2AKHD3M.js";import"../chunk-HE2I6XXS.js";export{a as default};
package/dist/cli.cjs CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- "use strict";var Ae=Object.create;var pe=Object.defineProperty;var Re=Object.getOwnPropertyDescriptor;var xe=Object.getOwnPropertyNames;var Te=Object.getPrototypeOf,Oe=Object.prototype.hasOwnProperty;var _e=(n,t,e,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of xe(t))!Oe.call(n,r)&&r!==e&&pe(n,r,{get:()=>t[r],enumerable:!(s=Re(t,r))||s.enumerable});return n};var ce=(n,t,e)=>(e=n!=null?Ae(Te(n)):{},_e(t||!n||!n.__esModule?pe(e,"default",{value:n,enumerable:!0}):e,n));var Ce=require("commander");var C=class{async filter(){return{headers:this.getHeaders()}}getHeaders(){return{}}};var b=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/actions",{...t,method:"GET"})}};var y=require("zod"),A=class n{constructor(t){this._transport=t}static SCHEMA=y.z.object({title:y.z.string(),content:y.z.string(),account:y.z.string()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t)+"/boilerplates",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var R=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplates/"+encodeURIComponent(t),{...e,method:"GET"})}};var x=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t)+"/boilerplates",{...e,method:"GET"})}};var T=class{constructor(t){this._transport=t}async send({query:t,request:e={}}={}){return this._transport.send("v1/boilerplates"+(t?"?query="+encodeURIComponent(t):""),{...e,method:"GET"})}};var Ut=require("zod"),O=class n{constructor(t){this._transport=t}static SCHEMA=Ut.z.object({title:Ut.z.string().optional(),content:Ut.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/boilerplates/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var _=require("zod"),v=class n{constructor(t){this._transport=t}static SCHEMA=_.z.object({title:_.z.string(),description:_.z.string().optional(),account:_.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/boilerplate-categories",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var S=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t),{...e,method:"GET"})}};var w=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/boilerplate-categories",{...t,method:"GET"})}};var qt=require("zod"),E=class n{constructor(t){this._transport=t}static SCHEMA=qt.z.object({title:qt.z.string().optional(),description:qt.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var o=require("zod"),F=class n{constructor(t){this._transport=t}static SCHEMA=o.z.intersection(o.z.object({name:o.z.string().optional(),account:o.z.string()}),o.z.discriminatedUnion("source",[o.z.object({source:o.z.literal("meta-whatsapp")}),o.z.object({source:o.z.literal("twilio-sendgrid"),twilioSendgrid:o.z.object({displayName:o.z.string().optional(),outboundEmailAddress:o.z.string().email(),replyEmailAddress:o.z.string().optional(),inboundHostname:o.z.string(),apiKey:o.z.string()})})]));async send({body:t,request:e={}}){return this._transport.send("v1/channels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var I=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...e,method:"GET"})}};var U=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/channels",{...t,method:"GET"})}};var i=require("zod"),q=class n{constructor(t){this._transport=t}static SCHEMA=i.z.intersection(i.z.object({name:i.z.string().optional()}),i.z.discriminatedUnion("source",[i.z.object({source:i.z.literal("meta-whatsapp")}),i.z.object({source:i.z.literal("twilio-sendgrid"),twilioSendgrid:i.z.object({displayName:i.z.string().optional(),outboundEmailAddress:i.z.string().email().optional(),replyEmailAddress:i.z.string().optional(),inboundHostname:i.z.string().optional(),apiKey:i.z.string().optional()})})]));async send({id:t,body:e,request:s={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var m=require("zod"),L=class n{constructor(t){this._transport=t}static SCHEMA=m.z.object({account:m.z.string(),channel:m.z.string().optional(),location:m.z.enum(["header","footer"]),content:m.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/composition-sections",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var j=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...e,method:"GET"})}};var H=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/composition-sections",{...e,method:"GET"})}};var M=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/composition-sections",{...t,method:"GET"})}};var zt=require("zod"),G=class n{constructor(t){this._transport=t}static SCHEMA=zt.z.object({content:zt.z.string()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var de="SUPPORT_BASE_URL";var le="https://api.support.greatdetail.com",me={"X-Powered-By":"GDSupport/JavaScript"};var N=class{constructor(t){this._transport=t}getRelativeURL({id:t,vcf:e={}}){let s=e.variant??"vcard",r=e.format??(e.variant==="vcard"?"vcf":"json");return"v1/contacts/"+encodeURIComponent(t)+"/vcf?variant="+encodeURIComponent(s)+"&format="+encodeURIComponent(r)}getURL(t){return this._transport.getURL(this.getRelativeURL(t))}};var u=require("zod"),P=class n{constructor(t){this._transport=t}static SCHEMA=u.z.object({name:u.z.string(),account:u.z.string(),emailAddress:u.z.string().email().optional(),telephoneNumber:u.z.string().optional()});async send({body:t,request:e={}}){return this._transport.send("v1/contacts",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var D=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...e,method:"GET"})}};var z=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/contacts",{...t,method:"GET"})}};var B=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/contacts",{...e,method:"GET"})}};var k=require("zod"),K=class n{constructor(t){this._transport=t}static SCHEMA=k.z.object({name:k.z.string().optional(),emailAddress:k.z.string().email().optional(),telephoneNumber:k.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var V=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...e,method:"GET"})}};var W=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"})}};var Y=class{constructor(t){this._transport=t}async send({filter:t,include:e,request:s={}}={}){let r=[];return t&&r.push(["filter",t]),e?.latestMessage&&r.push(["include","latestMessage"]),this._transport.send("v1/conversations",{...s,method:"GET",searchParams:r})}};var $=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"})}};var Lt=require("zod"),J=class n{constructor(t){this._transport=t}static SCHEMA=Lt.z.object({status:Lt.z.enum(["AwaitingContactConversationStatus","AwaitingAgentConversationStatus","ResolvedConversationStatus","ClosedConversationStatus"]).optional(),hasEnded:Lt.z.boolean().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var X=require("zod"),Q=class n{constructor(t){this._transport=t}static SCHEMA=X.z.object({title:X.z.string(),description:X.z.string().optional(),account:X.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/labels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var Z=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var tt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"})}};var et=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/labels",{...t,method:"GET"})}};var jt=require("zod"),nt=class n{constructor(t){this._transport=t}static SCHEMA=jt.z.object({title:jt.z.string().optional(),description:jt.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var st=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"})}};var rt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"})}};var ot=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/messages",{...t,method:"GET"})}};var it=require("zod"),at=class n{constructor(t){this._transport=t}static SCHEMA=it.z.object({input:it.z.string().max(65536),original:it.z.string().max(65536),correction:it.z.string().max(65536)});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var pt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"})}};var ct=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/models",{...t,method:"GET"})}};var dt=require("zod"),lt=class n{constructor(t){this._transport=t}static SCHEMA=dt.z.array(dt.z.object({role:dt.z.enum(["user","assistant"]),content:dt.z.string().max(65536).nullable()})).min(1);async send({id:t,body:e,request:s={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var Bt=require("zod"),mt=class n{constructor(t){this._transport=t}static SCHEMA=Bt.z.object({content:Bt.z.string()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var kt=require("zod"),g=class n{constructor(t){this._transport=t}static SCHEMA=kt.z.object({content:kt.z.string()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var ut=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...e,method:"GET"})}};var gt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var ht=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var Kt=require("zod"),ft=class n{constructor(t){this._transport=t}static SCHEMA=Kt.z.object({content:Kt.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var c=require("zod"),Ct=class n{constructor(t){this._transport=t}static SCHEMA=c.z.discriminatedUnion("type",[c.z.object({type:c.z.literal("vapid"),endpoint:c.z.string().url(),keys:c.z.object({p256dh:c.z.string(),auth:c.z.string()})})]);async send({id:t,body:e,request:s={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notification-subscriptions",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var bt=class n{constructor(t=n.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=me;async filter(){return{headers:this.getHeaders()}}getHeaders(){return this._standardHeaders}};var yt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"})}};var At=class{constructor(t){this._transport=t}async send({category:t,request:e={}}={}){let s=[];if(t){let r=Array.isArray(t)?t:[t];for(let f of r)s.push(["category",f])}return this._transport.send("v1/sources",{...e,method:"GET",searchParams:s})}};var ue=ce(require("is-network-error"),1),Ht=ce(require("ky"),1);var p=class extends Error{};var l=class extends p{};var Rt=class extends l{static unauthenticated(){return new this("An unauthenticated request occurred")}};var xt=class extends l{static forbidden(){return new this("A forbidden request occurred")}};var h=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}`)}};var Tt=class extends p{};var Ot=class extends p{static badRequest(){return new this("Bad request")}};var _t=class{client;options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t},this.client=Ht.default.create({prefixUrl:this.options.baseURL,hooks:{beforeRequest:[s=>{for(let r of this.options.requestFilterables){let f=r.getHeaders();for(let[ae,ye]of Object.entries(f))s.headers.has(ae)||s.headers.set(ae,ye)}}]}})}getURL(t){return new URL(t,this.options.baseURL).toString()}async send(t,e){return await this.client(t,e).catch(s=>{if((0,ue.default)(s))throw new Tt("A network error occurred",{cause:s});if(s instanceof Ht.HTTPError){let r=s.response.status;switch(console.error(JSON.stringify(s.response)),r){case 400:throw Ot.badRequest();case 401:throw Rt.unauthenticated();case 403:throw xt.forbidden();case 404:throw h.notFound(t);case 405:throw h.forbiddenMethod(t,e.method??"GET")}}throw s})}};var vt=class{constructor(t){this._transport=t}async send({account:t,files:e,request:s={}}){let r=new FormData;for(let f of e)r.append("file",f);return this._transport.send("v1/uploads",{...s,method:"POST",body:r,searchParams:{account:t}})}};var St=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var wt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"GET"})}};var a=require("zod"),Et=class n{constructor(t){this._client=t}static SCHEMA=a.z.object({event:a.z.intersection(a.z.object({id:a.z.string(),createdAt:a.z.string().datetime()}),a.z.discriminatedUnion("type",[a.z.object({type:a.z.literal("contact.created"),contact:a.z.string()}),a.z.object({type:a.z.literal("message.created"),message:a.z.string()})]))});async event({request:t}){let{event:e}=n.SCHEMA.parse(t.body);return{event:e}}};var Ft=class n{static DEFAULT_BASE_URL=le;_transport;constructor(t,{baseURL:e,...s}={}){this._transport=new _t({requestFilterables:[new bt,t],...s,baseURL:e?.toString()??n.getBaseURL()})}static getBaseURL(){return process.env[de]??this.DEFAULT_BASE_URL}get action(){return{list:new b(this._transport)}}get boilerplate(){return{get:new R(this._transport),list:new T(this._transport),update:new O(this._transport)}}get boilerplateCategory(){return{get:new S(this._transport),list:new w(this._transport),create:new v(this._transport),update:new E(this._transport),boilerplate:{list:new x(this._transport),create:new A(this._transport)}}}get channel(){return{get:new I(this._transport),list:new U(this._transport),update:new q(this._transport),create:new F(this._transport),compositionSection:{list:new H(this._transport)},message:{list:new st(this._transport)}}}get compositionSection(){return{get:new j(this._transport),list:new M(this._transport),create:new L(this._transport),update:new G(this._transport)}}get contact(){return{get:new D(this._transport),list:new z(this._transport),update:new K(this._transport),create:new P(this._transport),conversation:{list:new W(this._transport)},note:{list:new gt(this._transport),create:new mt(this._transport)},notificationSubscription:{create:new Ct(this._transport)},vcf:{get:new N(this._transport)}}}get conversation(){return{get:new V(this._transport),list:new Y(this._transport),update:new J(this._transport),create:new g(this._transport),message:{list:new rt(this._transport)},note:{list:new ht(this._transport),create:new g(this._transport)}}}get label(){return{create:new Q(this._transport),get:new tt(this._transport),list:new et(this._transport),update:new nt(this._transport),delete:new Z(this._transport),contact:{list:new B(this._transport)},conversation:{list:new $(this._transport)}}}get message(){return{list:new ot(this._transport)}}get model(){return{get:new pt(this._transport),list:new ct(this._transport),response:{create:new lt(this._transport)},correction:{create:new at(this._transport)}}}get note(){return{get:new ut(this._transport),update:new ft(this._transport)}}get source(){return{get:new yt(this._transport),list:new At(this._transport)}}get upload(){return{get:new wt(this._transport),create:new vt(this._transport),delete:new St(this._transport)}}get webhook(){return new Et(this)}};var Vt=require("commander"),ge=require("ora");function Wt({client:n,ora:t}){let e=new Vt.Command("actions").description("Actions");return e.addCommand(new Vt.Command("list").description("List actions").action(async()=>{let s=await(0,ge.oraPromise)(()=>n.action.list.send(),{...t,text:"Finding actions"});console.log(await s.json())})),e}var Yt=require("commander"),he=require("ora");function $t({client:n,ora:t}){let e=new Yt.Command("channels").description("Channels");return e.addCommand(new Yt.Command("list").description("List channels").action(async()=>{let s=await(0,he.oraPromise)(()=>n.channel.list.send(),{...t,text:"Finding channels"});console.log(await s.json())})),e}var Mt=require("commander"),Jt=require("ora");function Xt({client:n,ora:t}){let e=new Mt.Command("contacts").description("Contacts");return e.addCommand(new Mt.Command("get").description("Find contact").argument("<contact>","Contact ID").action(async s=>{let r=await(0,Jt.oraPromise)(()=>n.contact.get.send({id:s}),{...t,text:"Finding contact"});console.log(await r.json())})),e.addCommand(new Mt.Command("list").description("List contacts").action(async()=>{let s=await(0,Jt.oraPromise)(()=>n.contact.list.send(),{...t,text:"Finding contacts"});console.log(await s.json())})),e}var Gt=require("commander"),Qt=require("ora");function Zt({client:n,ora:t}){let e=new Gt.Command("conversations").description("Conversations");return e.addCommand(new Gt.Command("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async s=>{let r=await(0,Qt.oraPromise)(()=>n.conversation.get.send({id:s}),{...t,text:"Finding conversation"});console.log(await r.json())})),e.addCommand(new Gt.Command("list").description("List conversations").action(async()=>{let s=await(0,Qt.oraPromise)(()=>n.conversation.list.send(),{...t,text:"Finding conversations"});console.log(await s.json())})),e}var It=require("commander"),Nt=require("ora");function te({client:n,ora:t}){let e=new It.Command("labels").description("Labels");return e.addCommand(new It.Command("get").description("Find label").argument("<label>","Label ID").action(async s=>{let r=await(0,Nt.oraPromise)(()=>n.label.get.send({id:s}),{...t,text:"Finding label"});console.log(await r.json())})),e.addCommand(new It.Command("list").description("List labels").action(async()=>{let s=await(0,Nt.oraPromise)(()=>n.label.list.send(),{...t,text:"Finding labels"});console.log(await s.json())})),e.addCommand(new It.Command("conversations").description("Find label conversations").argument("<label>","Label ID").action(async s=>{let r=await(0,Nt.oraPromise)(()=>n.label.conversation.list.send({id:s}),{...t,text:"Finding conversations"});console.log(await r.json())})),e}var ee=require("commander"),fe=require("ora");function ne({client:n,ora:t}){let e=new ee.Command("messages").description("Messages");return e.addCommand(new ee.Command("list").description("List messages").action(async()=>{let s=await(0,fe.oraPromise)(()=>n.message.list.send(),{...t,text:"Finding messages"});console.log(await s.json())})),e}var Pt=require("commander"),se=require("ora");function re({client:n,ora:t}){let e=new Pt.Command("models").description("Models");return e.addCommand(new Pt.Command("get").description("Find model").argument("<model>","Model ID").action(async s=>{let r=await(0,se.oraPromise)(()=>n.model.get.send({id:s}),{...t,text:"Finding model"});console.log(await r.json())})),e.addCommand(new Pt.Command("list").description("List models").action(async()=>{let s=await(0,se.oraPromise)(()=>n.model.list.send(),{...t,text:"Finding models"});console.log(await s.json())})),e}var Dt=require("commander"),oe=require("ora");function ie({client:n,ora:t}){let e=new Dt.Command("sources").description("Sources");return e.addCommand(new Dt.Command("get").description("Find source").argument("<source>","Source ID").action(async s=>{let r=await(0,oe.oraPromise)(()=>n.source.get.send({id:s}),{...t,text:"Finding source"});console.log(await r.json())})),e.addCommand(new Dt.Command("list").description("List sources").action(async()=>{let s=await(0,oe.oraPromise)(()=>n.source.list.send(),{...t,text:"Finding sources"});console.log(await s.json())})),e}var d={ora:{spinner:"simpleDotsScrolling"},client:new Ft(new C)},ve=new Ce.Command("gds").description("Great Detail Support System").addCommand(Wt(d)).addCommand($t(d)).addCommand(Xt(d)).addCommand(Zt(d)).addCommand(te(d)).addCommand(ne(d)).addCommand(re(d)).addCommand(ie(d)),be=ve;be.parseAsync(process.argv);
2
+ "use strict";var Ae=Object.create;var pe=Object.defineProperty;var Re=Object.getOwnPropertyDescriptor;var xe=Object.getOwnPropertyNames;var Te=Object.getPrototypeOf,Oe=Object.prototype.hasOwnProperty;var ve=(n,t,e,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of xe(t))!Oe.call(n,r)&&r!==e&&pe(n,r,{get:()=>t[r],enumerable:!(s=Re(t,r))||s.enumerable});return n};var ce=(n,t,e)=>(e=n!=null?Ae(Te(n)):{},ve(t||!n||!n.__esModule?pe(e,"default",{value:n,enumerable:!0}):e,n));var Ce=require("commander");var C=class{async filter(){return{headers:this.getHeaders()}}getHeaders(){return{}}};var b=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/actions",{...t,method:"GET"})}};var y=require("zod"),A=class n{constructor(t){this._transport=t}static SCHEMA=y.z.object({title:y.z.string(),content:y.z.string(),account:y.z.string()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t)+"/boilerplates",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var R=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplates/"+encodeURIComponent(t),{...e,method:"GET"})}};var x=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t)+"/boilerplates",{...e,method:"GET"})}};var T=class{constructor(t){this._transport=t}async send({query:t,request:e={}}={}){return this._transport.send("v1/boilerplates"+(t?"?query="+encodeURIComponent(t):""),{...e,method:"GET"})}};var Ut=require("zod"),O=class n{constructor(t){this._transport=t}static SCHEMA=Ut.z.object({title:Ut.z.string().optional(),content:Ut.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/boilerplates/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var v=require("zod"),_=class n{constructor(t){this._transport=t}static SCHEMA=v.z.object({title:v.z.string(),description:v.z.string().optional(),account:v.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/boilerplate-categories",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var S=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t),{...e,method:"GET"})}};var w=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/boilerplate-categories",{...t,method:"GET"})}};var qt=require("zod"),E=class n{constructor(t){this._transport=t}static SCHEMA=qt.z.object({title:qt.z.string().optional(),description:qt.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var o=require("zod"),F=class n{constructor(t){this._transport=t}static SCHEMA=o.z.intersection(o.z.object({name:o.z.string().optional(),account:o.z.string()}),o.z.discriminatedUnion("source",[o.z.object({source:o.z.literal("meta-whatsapp")}),o.z.object({source:o.z.literal("twilio-sendgrid"),twilioSendgrid:o.z.object({displayName:o.z.string().optional(),outboundEmailAddress:o.z.string().email(),replyEmailAddress:o.z.string().optional(),inboundHostname:o.z.string(),apiKey:o.z.string()})})]));async send({body:t,request:e={}}){return this._transport.send("v1/channels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var I=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...e,method:"GET"})}};var U=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/channels",{...t,method:"GET"})}};var i=require("zod"),q=class n{constructor(t){this._transport=t}static SCHEMA=i.z.intersection(i.z.object({name:i.z.string().optional()}),i.z.discriminatedUnion("source",[i.z.object({source:i.z.literal("meta-whatsapp")}),i.z.object({source:i.z.literal("twilio-sendgrid"),twilioSendgrid:i.z.object({displayName:i.z.string().optional(),outboundEmailAddress:i.z.string().email().optional(),replyEmailAddress:i.z.string().optional(),inboundHostname:i.z.string().optional(),apiKey:i.z.string().optional()})})]));async send({id:t,body:e,request:s={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var m=require("zod"),L=class n{constructor(t){this._transport=t}static SCHEMA=m.z.object({account:m.z.string(),channel:m.z.string().optional(),location:m.z.enum(["header","footer"]),content:m.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/composition-sections",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var j=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...e,method:"GET"})}};var H=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/composition-sections",{...e,method:"GET"})}};var M=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/composition-sections",{...t,method:"GET"})}};var zt=require("zod"),G=class n{constructor(t){this._transport=t}static SCHEMA=zt.z.object({content:zt.z.string()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var de="SUPPORT_BASE_URL";var le="https://api.support.greatdetail.com",me={"X-Powered-By":"GDSupport/JavaScript"};var N=class{constructor(t){this._transport=t}getRelativeURL({id:t,vcf:e={}}){let s=e.variant??"vcard",r=e.format??(e.variant==="vcard"?"vcf":"json");return"v1/contacts/"+encodeURIComponent(t)+"/vcf?variant="+encodeURIComponent(s)+"&format="+encodeURIComponent(r)}getURL(t){return this._transport.getURL(this.getRelativeURL(t))}};var u=require("zod"),P=class n{constructor(t){this._transport=t}static SCHEMA=u.z.object({name:u.z.string(),account:u.z.string(),emailAddress:u.z.string().email().optional(),telephoneNumber:u.z.string().optional()});async send({body:t,request:e={}}){return this._transport.send("v1/contacts",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var D=class{constructor(t){this._transport=t}async send({id:t,include:e,request:s={}}){let r=[];return e?.messageCount&&r.push(["include","messageCount"]),e?.conversationCount&&r.push(["include","conversationCount"]),this._transport.send("v1/contacts/"+encodeURIComponent(t),{...s,method:"GET"})}};var z=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/contacts",{...t,method:"GET"})}};var B=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/contacts",{...e,method:"GET"})}};var k=require("zod"),K=class n{constructor(t){this._transport=t}static SCHEMA=k.z.object({name:k.z.string().optional(),emailAddress:k.z.string().email().optional(),telephoneNumber:k.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var V=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...e,method:"GET"})}};var W=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"})}};var Y=class{constructor(t){this._transport=t}async send({filter:t,include:e,request:s={}}={}){let r=[];return t&&r.push(["filter",t]),e?.latestMessage&&r.push(["include","latestMessage"]),this._transport.send("v1/conversations",{...s,method:"GET",searchParams:r})}};var $=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"})}};var Lt=require("zod"),J=class n{constructor(t){this._transport=t}static SCHEMA=Lt.z.object({status:Lt.z.enum(["AwaitingContactConversationStatus","AwaitingAgentConversationStatus","ResolvedConversationStatus","ClosedConversationStatus"]).optional(),hasEnded:Lt.z.boolean().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var X=require("zod"),Q=class n{constructor(t){this._transport=t}static SCHEMA=X.z.object({title:X.z.string(),description:X.z.string().optional(),account:X.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/labels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(t)})}};var Z=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var tt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"})}};var et=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/labels",{...t,method:"GET"})}};var jt=require("zod"),nt=class n{constructor(t){this._transport=t}static SCHEMA=jt.z.object({title:jt.z.string().optional(),description:jt.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var st=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"})}};var rt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"})}};var ot=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/messages",{...t,method:"GET"})}};var it=require("zod"),at=class n{constructor(t){this._transport=t}static SCHEMA=it.z.object({input:it.z.string().max(65536),original:it.z.string().max(65536),correction:it.z.string().max(65536)});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var pt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"})}};var ct=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/models",{...t,method:"GET"})}};var dt=require("zod"),lt=class n{constructor(t){this._transport=t}static SCHEMA=dt.z.array(dt.z.object({role:dt.z.enum(["user","assistant"]),content:dt.z.string().max(65536).nullable()})).min(1);async send({id:t,body:e,request:s={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var Bt=require("zod"),mt=class n{constructor(t){this._transport=t}static SCHEMA=Bt.z.object({content:Bt.z.string()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var kt=require("zod"),g=class n{constructor(t){this._transport=t}static SCHEMA=kt.z.object({content:kt.z.string()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var ut=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...e,method:"GET"})}};var gt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var ht=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var Kt=require("zod"),ft=class n{constructor(t){this._transport=t}static SCHEMA=Kt.z.object({content:Kt.z.string().optional()});async send({id:t,body:e,request:s={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var c=require("zod"),Ct=class n{constructor(t){this._transport=t}static SCHEMA=c.z.discriminatedUnion("type",[c.z.object({type:c.z.literal("vapid"),endpoint:c.z.string().url(),keys:c.z.object({p256dh:c.z.string(),auth:c.z.string()})})]);async send({id:t,body:e,request:s={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notification-subscriptions",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},json:n.SCHEMA.parse(e)})}};var bt=class n{constructor(t=n.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=me;async filter(){return{headers:this.getHeaders()}}getHeaders(){return this._standardHeaders}};var yt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"})}};var At=class{constructor(t){this._transport=t}async send({category:t,request:e={}}={}){let s=[];if(t){let r=Array.isArray(t)?t:[t];for(let f of r)s.push(["category",f])}return this._transport.send("v1/sources",{...e,method:"GET",searchParams:s})}};var ue=ce(require("is-network-error"),1),Ht=ce(require("ky"),1);var p=class extends Error{};var l=class extends p{};var Rt=class extends l{static unauthenticated(){return new this("An unauthenticated request occurred")}};var xt=class extends l{static forbidden(){return new this("A forbidden request occurred")}};var h=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}`)}};var Tt=class extends p{};var Ot=class extends p{static badRequest(){return new this("Bad request")}};var vt=class{client;options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t},this.client=Ht.default.create({prefixUrl:this.options.baseURL,hooks:{beforeRequest:[s=>{for(let r of this.options.requestFilterables){let f=r.getHeaders();for(let[ae,ye]of Object.entries(f))s.headers.has(ae)||s.headers.set(ae,ye)}}]}})}getURL(t){return new URL(t,this.options.baseURL).toString()}async send(t,e){return await this.client(t,e).catch(s=>{if((0,ue.default)(s))throw new Tt("A network error occurred",{cause:s});if(s instanceof Ht.HTTPError){let r=s.response.status;switch(console.error(JSON.stringify(s.response)),r){case 400:throw Ot.badRequest();case 401:throw Rt.unauthenticated();case 403:throw xt.forbidden();case 404:throw h.notFound(t);case 405:throw h.forbiddenMethod(t,e.method??"GET")}}throw s})}};var _t=class{constructor(t){this._transport=t}async send({account:t,files:e,request:s={}}){let r=new FormData;for(let f of e)r.append("file",f);return this._transport.send("v1/uploads",{...s,method:"POST",body:r,searchParams:{account:t}})}};var St=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var wt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"GET"})}};var a=require("zod"),Et=class n{constructor(t){this._client=t}static SCHEMA=a.z.object({event:a.z.intersection(a.z.object({id:a.z.string(),createdAt:a.z.string().datetime()}),a.z.discriminatedUnion("type",[a.z.object({type:a.z.literal("contact.created"),contact:a.z.string()}),a.z.object({type:a.z.literal("message.created"),message:a.z.string()})]))});async event({request:t}){let{event:e}=n.SCHEMA.parse(t.body);return{event:e}}};var Ft=class n{static DEFAULT_BASE_URL=le;_transport;constructor(t,{baseURL:e,...s}={}){this._transport=new vt({requestFilterables:[new bt,t],...s,baseURL:e?.toString()??n.getBaseURL()})}static getBaseURL(){return process.env[de]??this.DEFAULT_BASE_URL}get action(){return{list:new b(this._transport)}}get boilerplate(){return{get:new R(this._transport),list:new T(this._transport),update:new O(this._transport)}}get boilerplateCategory(){return{get:new S(this._transport),list:new w(this._transport),create:new _(this._transport),update:new E(this._transport),boilerplate:{list:new x(this._transport),create:new A(this._transport)}}}get channel(){return{get:new I(this._transport),list:new U(this._transport),update:new q(this._transport),create:new F(this._transport),compositionSection:{list:new H(this._transport)},message:{list:new st(this._transport)}}}get compositionSection(){return{get:new j(this._transport),list:new M(this._transport),create:new L(this._transport),update:new G(this._transport)}}get contact(){return{get:new D(this._transport),list:new z(this._transport),update:new K(this._transport),create:new P(this._transport),conversation:{list:new W(this._transport)},note:{list:new gt(this._transport),create:new mt(this._transport)},notificationSubscription:{create:new Ct(this._transport)},vcf:{get:new N(this._transport)}}}get conversation(){return{get:new V(this._transport),list:new Y(this._transport),update:new J(this._transport),create:new g(this._transport),message:{list:new rt(this._transport)},note:{list:new ht(this._transport),create:new g(this._transport)}}}get label(){return{create:new Q(this._transport),get:new tt(this._transport),list:new et(this._transport),update:new nt(this._transport),delete:new Z(this._transport),contact:{list:new B(this._transport)},conversation:{list:new $(this._transport)}}}get message(){return{list:new ot(this._transport)}}get model(){return{get:new pt(this._transport),list:new ct(this._transport),response:{create:new lt(this._transport)},correction:{create:new at(this._transport)}}}get note(){return{get:new ut(this._transport),update:new ft(this._transport)}}get source(){return{get:new yt(this._transport),list:new At(this._transport)}}get upload(){return{get:new wt(this._transport),create:new _t(this._transport),delete:new St(this._transport)}}get webhook(){return new Et(this)}};var Vt=require("commander"),ge=require("ora");function Wt({client:n,ora:t}){let e=new Vt.Command("actions").description("Actions");return e.addCommand(new Vt.Command("list").description("List actions").action(async()=>{let s=await(0,ge.oraPromise)(()=>n.action.list.send(),{...t,text:"Finding actions"});console.log(await s.json())})),e}var Yt=require("commander"),he=require("ora");function $t({client:n,ora:t}){let e=new Yt.Command("channels").description("Channels");return e.addCommand(new Yt.Command("list").description("List channels").action(async()=>{let s=await(0,he.oraPromise)(()=>n.channel.list.send(),{...t,text:"Finding channels"});console.log(await s.json())})),e}var Mt=require("commander"),Jt=require("ora");function Xt({client:n,ora:t}){let e=new Mt.Command("contacts").description("Contacts");return e.addCommand(new Mt.Command("get").description("Find contact").argument("<contact>","Contact ID").action(async s=>{let r=await(0,Jt.oraPromise)(()=>n.contact.get.send({id:s}),{...t,text:"Finding contact"});console.log(await r.json())})),e.addCommand(new Mt.Command("list").description("List contacts").action(async()=>{let s=await(0,Jt.oraPromise)(()=>n.contact.list.send(),{...t,text:"Finding contacts"});console.log(await s.json())})),e}var Gt=require("commander"),Qt=require("ora");function Zt({client:n,ora:t}){let e=new Gt.Command("conversations").description("Conversations");return e.addCommand(new Gt.Command("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async s=>{let r=await(0,Qt.oraPromise)(()=>n.conversation.get.send({id:s}),{...t,text:"Finding conversation"});console.log(await r.json())})),e.addCommand(new Gt.Command("list").description("List conversations").action(async()=>{let s=await(0,Qt.oraPromise)(()=>n.conversation.list.send(),{...t,text:"Finding conversations"});console.log(await s.json())})),e}var It=require("commander"),Nt=require("ora");function te({client:n,ora:t}){let e=new It.Command("labels").description("Labels");return e.addCommand(new It.Command("get").description("Find label").argument("<label>","Label ID").action(async s=>{let r=await(0,Nt.oraPromise)(()=>n.label.get.send({id:s}),{...t,text:"Finding label"});console.log(await r.json())})),e.addCommand(new It.Command("list").description("List labels").action(async()=>{let s=await(0,Nt.oraPromise)(()=>n.label.list.send(),{...t,text:"Finding labels"});console.log(await s.json())})),e.addCommand(new It.Command("conversations").description("Find label conversations").argument("<label>","Label ID").action(async s=>{let r=await(0,Nt.oraPromise)(()=>n.label.conversation.list.send({id:s}),{...t,text:"Finding conversations"});console.log(await r.json())})),e}var ee=require("commander"),fe=require("ora");function ne({client:n,ora:t}){let e=new ee.Command("messages").description("Messages");return e.addCommand(new ee.Command("list").description("List messages").action(async()=>{let s=await(0,fe.oraPromise)(()=>n.message.list.send(),{...t,text:"Finding messages"});console.log(await s.json())})),e}var Pt=require("commander"),se=require("ora");function re({client:n,ora:t}){let e=new Pt.Command("models").description("Models");return e.addCommand(new Pt.Command("get").description("Find model").argument("<model>","Model ID").action(async s=>{let r=await(0,se.oraPromise)(()=>n.model.get.send({id:s}),{...t,text:"Finding model"});console.log(await r.json())})),e.addCommand(new Pt.Command("list").description("List models").action(async()=>{let s=await(0,se.oraPromise)(()=>n.model.list.send(),{...t,text:"Finding models"});console.log(await s.json())})),e}var Dt=require("commander"),oe=require("ora");function ie({client:n,ora:t}){let e=new Dt.Command("sources").description("Sources");return e.addCommand(new Dt.Command("get").description("Find source").argument("<source>","Source ID").action(async s=>{let r=await(0,oe.oraPromise)(()=>n.source.get.send({id:s}),{...t,text:"Finding source"});console.log(await r.json())})),e.addCommand(new Dt.Command("list").description("List sources").action(async()=>{let s=await(0,oe.oraPromise)(()=>n.source.list.send(),{...t,text:"Finding sources"});console.log(await s.json())})),e}var d={ora:{spinner:"simpleDotsScrolling"},client:new Ft(new C)},_e=new Ce.Command("gds").description("Great Detail Support System").addCommand(Wt(d)).addCommand($t(d)).addCommand(Xt(d)).addCommand(Zt(d)).addCommand(te(d)).addCommand(ne(d)).addCommand(re(d)).addCommand(ie(d)),be=_e;be.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-6WWQ2CHK.js";import"./chunk-WRKUF6W4.js";r.parseAsync(process.argv);
2
+ import{a as r}from"./chunk-O2AKHD3M.js";import"./chunk-HE2I6XXS.js";r.parseAsync(process.argv);
@@ -826,11 +826,16 @@ declare class CreateContact {
826
826
  send({ body, request }: Options$z): Promise<ky.KyResponse<CreateContactResponse>>;
827
827
  }
828
828
 
829
- interface Options$y {
829
+ interface IncludeOptions$1 {
830
+ messageCount?: boolean;
831
+ conversationCount?: boolean;
832
+ }
833
+ interface Options$y<C extends IncludeOptions$1> {
830
834
  id: string;
835
+ include?: C;
831
836
  request?: RequestInit;
832
837
  }
833
- type GetContactResponse = {
838
+ type GetContactResponse<C extends IncludeOptions$1> = {
834
839
  data: {
835
840
  contact: {
836
841
  id: string;
@@ -841,12 +846,18 @@ type GetContactResponse = {
841
846
  createdAt: string;
842
847
  updatedAt?: string;
843
848
  };
849
+ messageCount?: C extends {
850
+ messageCount: true;
851
+ } ? number : never;
852
+ conversationCount?: C extends {
853
+ conversationCount: true;
854
+ } ? number : never;
844
855
  };
845
856
  };
846
857
  declare class GetContact {
847
858
  protected _transport: FetchTransport;
848
859
  constructor(_transport: FetchTransport);
849
- send({ id, request }: Options$y): Promise<ky.KyResponse<GetContactResponse>>;
860
+ send<C extends IncludeOptions$1>({ id, include, request, }: Options$y<C>): Promise<ky.KyResponse<GetContactResponse<C>>>;
850
861
  }
851
862
 
852
863
  interface Options$x {
@@ -942,7 +953,7 @@ type GetConversationResponse = {
942
953
  name?: string;
943
954
  hasEnded: boolean;
944
955
  status: "AwaitingContactConversationStatus" | "AwaitingAgentConversationStatus" | "ResolvedConversationStatus" | "ClosedConversationStatus";
945
- accountChannel: string;
956
+ channel: string;
946
957
  createdAt: string;
947
958
  updatedAt: string;
948
959
  };
@@ -965,7 +976,7 @@ type ListContactConversationsResponse = {
965
976
  name?: string;
966
977
  hasEnded: boolean;
967
978
  status: "AwaitingContactConversationStatus" | "AwaitingAgentConversationStatus" | "ResolvedConversationStatus" | "ClosedConversationStatus";
968
- accountChannel: string;
979
+ channel: string;
969
980
  createdAt: string;
970
981
  updatedAt: string;
971
982
  };
@@ -978,7 +989,7 @@ declare class ListContactConversations {
978
989
  }
979
990
 
980
991
  interface IncludeOptions {
981
- latestMessage: boolean;
992
+ latestMessage?: boolean;
982
993
  }
983
994
  interface Options$s<C extends IncludeOptions> {
984
995
  filter?: "unresolved";
@@ -992,7 +1003,7 @@ type ListConversationsResponse<C extends IncludeOptions> = {
992
1003
  name?: string;
993
1004
  hasEnded: boolean;
994
1005
  status: "AwaitingContactConversationStatus" | "AwaitingAgentConversationStatus" | "ResolvedConversationStatus" | "ClosedConversationStatus";
995
- accountChannel: string;
1006
+ channel: string;
996
1007
  createdAt: string;
997
1008
  updatedAt: string;
998
1009
  };
@@ -1034,7 +1045,7 @@ type ListLabelConversationsResponse = {
1034
1045
  name?: string;
1035
1046
  hasEnded: boolean;
1036
1047
  status: "AwaitingContactConversationStatus" | "AwaitingAgentConversationStatus" | "ResolvedConversationStatus" | "ClosedConversationStatus";
1037
- accountChannel: string;
1048
+ channel: string;
1038
1049
  createdAt: string;
1039
1050
  updatedAt: string;
1040
1051
  };
@@ -1058,7 +1069,7 @@ type UpdateConversationResponse = {
1058
1069
  name?: string;
1059
1070
  hasEnded: boolean;
1060
1071
  status: "AwaitingContactConversationStatus" | "AwaitingAgentConversationStatus" | "ResolvedConversationStatus" | "ClosedConversationStatus";
1061
- accountChannel: string;
1072
+ channel: string;
1062
1073
  createdAt: string;
1063
1074
  updatedAt: string;
1064
1075
  };
@@ -826,11 +826,16 @@ declare class CreateContact {
826
826
  send({ body, request }: Options$z): Promise<ky.KyResponse<CreateContactResponse>>;
827
827
  }
828
828
 
829
- interface Options$y {
829
+ interface IncludeOptions$1 {
830
+ messageCount?: boolean;
831
+ conversationCount?: boolean;
832
+ }
833
+ interface Options$y<C extends IncludeOptions$1> {
830
834
  id: string;
835
+ include?: C;
831
836
  request?: RequestInit;
832
837
  }
833
- type GetContactResponse = {
838
+ type GetContactResponse<C extends IncludeOptions$1> = {
834
839
  data: {
835
840
  contact: {
836
841
  id: string;
@@ -841,12 +846,18 @@ type GetContactResponse = {
841
846
  createdAt: string;
842
847
  updatedAt?: string;
843
848
  };
849
+ messageCount?: C extends {
850
+ messageCount: true;
851
+ } ? number : never;
852
+ conversationCount?: C extends {
853
+ conversationCount: true;
854
+ } ? number : never;
844
855
  };
845
856
  };
846
857
  declare class GetContact {
847
858
  protected _transport: FetchTransport;
848
859
  constructor(_transport: FetchTransport);
849
- send({ id, request }: Options$y): Promise<ky.KyResponse<GetContactResponse>>;
860
+ send<C extends IncludeOptions$1>({ id, include, request, }: Options$y<C>): Promise<ky.KyResponse<GetContactResponse<C>>>;
850
861
  }
851
862
 
852
863
  interface Options$x {
@@ -942,7 +953,7 @@ type GetConversationResponse = {
942
953
  name?: string;
943
954
  hasEnded: boolean;
944
955
  status: "AwaitingContactConversationStatus" | "AwaitingAgentConversationStatus" | "ResolvedConversationStatus" | "ClosedConversationStatus";
945
- accountChannel: string;
956
+ channel: string;
946
957
  createdAt: string;
947
958
  updatedAt: string;
948
959
  };
@@ -965,7 +976,7 @@ type ListContactConversationsResponse = {
965
976
  name?: string;
966
977
  hasEnded: boolean;
967
978
  status: "AwaitingContactConversationStatus" | "AwaitingAgentConversationStatus" | "ResolvedConversationStatus" | "ClosedConversationStatus";
968
- accountChannel: string;
979
+ channel: string;
969
980
  createdAt: string;
970
981
  updatedAt: string;
971
982
  };
@@ -978,7 +989,7 @@ declare class ListContactConversations {
978
989
  }
979
990
 
980
991
  interface IncludeOptions {
981
- latestMessage: boolean;
992
+ latestMessage?: boolean;
982
993
  }
983
994
  interface Options$s<C extends IncludeOptions> {
984
995
  filter?: "unresolved";
@@ -992,7 +1003,7 @@ type ListConversationsResponse<C extends IncludeOptions> = {
992
1003
  name?: string;
993
1004
  hasEnded: boolean;
994
1005
  status: "AwaitingContactConversationStatus" | "AwaitingAgentConversationStatus" | "ResolvedConversationStatus" | "ClosedConversationStatus";
995
- accountChannel: string;
1006
+ channel: string;
996
1007
  createdAt: string;
997
1008
  updatedAt: string;
998
1009
  };
@@ -1034,7 +1045,7 @@ type ListLabelConversationsResponse = {
1034
1045
  name?: string;
1035
1046
  hasEnded: boolean;
1036
1047
  status: "AwaitingContactConversationStatus" | "AwaitingAgentConversationStatus" | "ResolvedConversationStatus" | "ClosedConversationStatus";
1037
- accountChannel: string;
1048
+ channel: string;
1038
1049
  createdAt: string;
1039
1050
  updatedAt: string;
1040
1051
  };
@@ -1058,7 +1069,7 @@ type UpdateConversationResponse = {
1058
1069
  name?: string;
1059
1070
  hasEnded: boolean;
1060
1071
  status: "AwaitingContactConversationStatus" | "AwaitingAgentConversationStatus" | "ResolvedConversationStatus" | "ClosedConversationStatus";
1061
- accountChannel: string;
1072
+ channel: string;
1062
1073
  createdAt: string;
1063
1074
  updatedAt: string;
1064
1075
  };
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var re=Object.create;var Ut=Object.defineProperty;var ne=Object.getOwnPropertyDescriptor;var se=Object.getOwnPropertyNames;var oe=Object.getPrototypeOf,ie=Object.prototype.hasOwnProperty;var Kt=(r,t)=>{for(var e in t)Ut(r,e,{get:t[e],enumerable:!0})},Vt=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of se(t))!ie.call(r,s)&&s!==e&&Ut(r,s,{get:()=>t[s],enumerable:!(n=ne(t,s))||n.enumerable});return r};var Wt=(r,t,e)=>(e=r!=null?re(oe(r)):{},Vt(t||!r||!r.__esModule?Ut(e,"default",{value:r,enumerable:!0}):e,r)),ae=r=>Vt(Ut({},"__esModule",{value:!0}),r);var pe={};Kt(pe,{Client:()=>A,DEFAULT_SUPPORT_BASE_URL:()=>qt,Error:()=>Dt,KeyAuthentication:()=>Ft,PublicAuthentication:()=>It,TokenAuthentication:()=>wt,default:()=>A});module.exports=ae(pe);var qt="https://api.support.greatdetail.com",Yt={"X-Powered-By":"GDSupport/JavaScript"},$t="api-key";var y=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/actions",{...t,method:"GET"})}};var x=require("zod"),T=class r{constructor(t){this._transport=t}static SCHEMA=x.z.object({title:x.z.string(),content:x.z.string(),account:x.z.string()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t)+"/boilerplates",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var _=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplates/"+encodeURIComponent(t),{...e,method:"GET"})}};var E=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t)+"/boilerplates",{...e,method:"GET"})}};var S=class{constructor(t){this._transport=t}async send({query:t,request:e={}}={}){return this._transport.send("v1/boilerplates"+(t?"?query="+encodeURIComponent(t):""),{...e,method:"GET"})}};var Ht=require("zod"),v=class r{constructor(t){this._transport=t}static SCHEMA=Ht.z.object({title:Ht.z.string().optional(),content:Ht.z.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/boilerplates/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var O=require("zod"),F=class r{constructor(t){this._transport=t}static SCHEMA=O.z.object({title:O.z.string(),description:O.z.string().optional(),account:O.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/boilerplate-categories",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var w=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t),{...e,method:"GET"})}};var I=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/boilerplate-categories",{...t,method:"GET"})}};var Lt=require("zod"),U=class r{constructor(t){this._transport=t}static SCHEMA=Lt.z.object({title:Lt.z.string().optional(),description:Lt.z.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var o=require("zod"),q=class r{constructor(t){this._transport=t}static SCHEMA=o.z.intersection(o.z.object({name:o.z.string().optional(),account:o.z.string()}),o.z.discriminatedUnion("source",[o.z.object({source:o.z.literal("meta-whatsapp")}),o.z.object({source:o.z.literal("twilio-sendgrid"),twilioSendgrid:o.z.object({displayName:o.z.string().optional(),outboundEmailAddress:o.z.string().email(),replyEmailAddress:o.z.string().optional(),inboundHostname:o.z.string(),apiKey:o.z.string()})})]));async send({body:t,request:e={}}){return this._transport.send("v1/channels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var H=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...e,method:"GET"})}};var L=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/channels",{...t,method:"GET"})}};var i=require("zod"),M=class r{constructor(t){this._transport=t}static SCHEMA=i.z.intersection(i.z.object({name:i.z.string().optional()}),i.z.discriminatedUnion("source",[i.z.object({source:i.z.literal("meta-whatsapp")}),i.z.object({source:i.z.literal("twilio-sendgrid"),twilioSendgrid:i.z.object({displayName:i.z.string().optional(),outboundEmailAddress:i.z.string().email().optional(),replyEmailAddress:i.z.string().optional(),inboundHostname:i.z.string().optional(),apiKey:i.z.string().optional()})})]));async send({id:t,body:e,request:n={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var f=require("zod"),j=class r{constructor(t){this._transport=t}static SCHEMA=f.z.object({account:f.z.string(),channel:f.z.string().optional(),location:f.z.enum(["header","footer"]),content:f.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/composition-sections",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var N=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...e,method:"GET"})}};var G=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/composition-sections",{...e,method:"GET"})}};var P=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/composition-sections",{...t,method:"GET"})}};var Gt=require("zod"),z=class r{constructor(t){this._transport=t}static SCHEMA=Gt.z.object({content:Gt.z.string()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var Jt="SUPPORT_ACCESS_TOKEN",Xt="SUPPORT_API_KEY",Qt="SUPPORT_KEY_NAME",Zt="SUPPORT_BASE_URL";var B=class{constructor(t){this._transport=t}getRelativeURL({id:t,vcf:e={}}){let n=e.variant??"vcard",s=e.format??(e.variant==="vcard"?"vcf":"json");return"v1/contacts/"+encodeURIComponent(t)+"/vcf?variant="+encodeURIComponent(n)+"&format="+encodeURIComponent(s)}getURL(t){return this._transport.getURL(this.getRelativeURL(t))}};var C=require("zod"),D=class r{constructor(t){this._transport=t}static SCHEMA=C.z.object({name:C.z.string(),account:C.z.string(),emailAddress:C.z.string().email().optional(),telephoneNumber:C.z.string().optional()});async send({body:t,request:e={}}){return this._transport.send("v1/contacts",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var k=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...e,method:"GET"})}};var K=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/contacts",{...t,method:"GET"})}};var V=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/contacts",{...e,method:"GET"})}};var W=require("zod"),Y=class r{constructor(t){this._transport=t}static SCHEMA=W.z.object({name:W.z.string().optional(),emailAddress:W.z.string().email().optional(),telephoneNumber:W.z.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var $=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...e,method:"GET"})}};var J=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"})}};var X=class{constructor(t){this._transport=t}async send({filter:t,include:e,request:n={}}={}){let s=[];return t&&s.push(["filter",t]),e?.latestMessage&&s.push(["include","latestMessage"]),this._transport.send("v1/conversations",{...n,method:"GET",searchParams:s})}};var Q=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"})}};var Mt=require("zod"),Z=class r{constructor(t){this._transport=t}static SCHEMA=Mt.z.object({status:Mt.z.enum(["AwaitingContactConversationStatus","AwaitingAgentConversationStatus","ResolvedConversationStatus","ClosedConversationStatus"]).optional(),hasEnded:Mt.z.boolean().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var tt=require("zod"),et=class r{constructor(t){this._transport=t}static SCHEMA=tt.z.object({title:tt.z.string(),description:tt.z.string().optional(),account:tt.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/labels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var rt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var nt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"})}};var st=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/labels",{...t,method:"GET"})}};var jt=require("zod"),ot=class r{constructor(t){this._transport=t}static SCHEMA=jt.z.object({title:jt.z.string().optional(),description:jt.z.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var it=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"})}};var at=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"})}};var pt=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/messages",{...t,method:"GET"})}};var ct=require("zod"),dt=class r{constructor(t){this._transport=t}static SCHEMA=ct.z.object({input:ct.z.string().max(65536),original:ct.z.string().max(65536),correction:ct.z.string().max(65536)});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var lt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"})}};var ut=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/models",{...t,method:"GET"})}};var gt=require("zod"),mt=class r{constructor(t){this._transport=t}static SCHEMA=gt.z.array(gt.z.object({role:gt.z.enum(["user","assistant"]),content:gt.z.string().max(65536).nullable()})).min(1);async send({id:t,body:e,request:n={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var Pt=require("zod"),ht=class r{constructor(t){this._transport=t}static SCHEMA=Pt.z.object({content:Pt.z.string()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var zt=require("zod"),b=class r{constructor(t){this._transport=t}static SCHEMA=zt.z.object({content:zt.z.string()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var ft=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...e,method:"GET"})}};var Ct=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var bt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var Bt=require("zod"),At=class r{constructor(t){this._transport=t}static SCHEMA=Bt.z.object({content:Bt.z.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var d=require("zod"),Rt=class r{constructor(t){this._transport=t}static SCHEMA=d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("vapid"),endpoint:d.z.string().url(),keys:d.z.object({p256dh:d.z.string(),auth:d.z.string()})})]);async send({id:t,body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notification-subscriptions",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var yt=class r{constructor(t=r.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=Yt;async filter(){return{headers:this.getHeaders()}}getHeaders(){return this._standardHeaders}};var xt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"})}};var Tt=class{constructor(t){this._transport=t}async send({category:t,request:e={}}={}){let n=[];if(t){let s=Array.isArray(t)?t:[t];for(let R of s)n.push(["category",R])}return this._transport.send("v1/sources",{...e,method:"GET",searchParams:n})}};var te=Wt(require("is-network-error"),1),Nt=Wt(require("ky"),1);var a=class extends Error{};var c=class extends a{};var u=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 l=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}`)}};var m=class extends a{};var h=class extends a{static badRequest(){return new this("Bad request")}};var _t=class{client;options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t},this.client=Nt.default.create({prefixUrl:this.options.baseURL,hooks:{beforeRequest:[n=>{for(let s of this.options.requestFilterables){let R=s.getHeaders();for(let[kt,ee]of Object.entries(R))n.headers.has(kt)||n.headers.set(kt,ee)}}]}})}getURL(t){return new URL(t,this.options.baseURL).toString()}async send(t,e){return await this.client(t,e).catch(n=>{if((0,te.default)(n))throw new m("A network error occurred",{cause:n});if(n instanceof Nt.HTTPError){let s=n.response.status;switch(console.error(JSON.stringify(n.response)),s){case 400:throw h.badRequest();case 401:throw u.unauthenticated();case 403:throw g.forbidden();case 404:throw l.notFound(t);case 405:throw l.forbiddenMethod(t,e.method??"GET")}}throw n})}};var Et=class{constructor(t){this._transport=t}async send({account:t,files:e,request:n={}}){let s=new FormData;for(let R of e)s.append("file",R);return this._transport.send("v1/uploads",{...n,method:"POST",body:s,searchParams:{account:t}})}};var St=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var vt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"GET"})}};var p=require("zod"),Ot=class r{constructor(t){this._client=t}static SCHEMA=p.z.object({event:p.z.intersection(p.z.object({id:p.z.string(),createdAt:p.z.string().datetime()}),p.z.discriminatedUnion("type",[p.z.object({type:p.z.literal("contact.created"),contact:p.z.string()}),p.z.object({type:p.z.literal("message.created"),message:p.z.string()})]))});async event({request:t}){let{event:e}=r.SCHEMA.parse(t.body);return{event:e}}};var A=class r{static DEFAULT_BASE_URL=qt;_transport;constructor(t,{baseURL:e,...n}={}){this._transport=new _t({requestFilterables:[new yt,t],...n,baseURL:e?.toString()??r.getBaseURL()})}static getBaseURL(){return process.env[Zt]??this.DEFAULT_BASE_URL}get action(){return{list:new y(this._transport)}}get boilerplate(){return{get:new _(this._transport),list:new S(this._transport),update:new v(this._transport)}}get boilerplateCategory(){return{get:new w(this._transport),list:new I(this._transport),create:new F(this._transport),update:new U(this._transport),boilerplate:{list:new E(this._transport),create:new T(this._transport)}}}get channel(){return{get:new H(this._transport),list:new L(this._transport),update:new M(this._transport),create:new q(this._transport),compositionSection:{list:new G(this._transport)},message:{list:new it(this._transport)}}}get compositionSection(){return{get:new N(this._transport),list:new P(this._transport),create:new j(this._transport),update:new z(this._transport)}}get contact(){return{get:new k(this._transport),list:new K(this._transport),update:new Y(this._transport),create:new D(this._transport),conversation:{list:new J(this._transport)},note:{list:new Ct(this._transport),create:new ht(this._transport)},notificationSubscription:{create:new Rt(this._transport)},vcf:{get:new B(this._transport)}}}get conversation(){return{get:new $(this._transport),list:new X(this._transport),update:new Z(this._transport),create:new b(this._transport),message:{list:new at(this._transport)},note:{list:new bt(this._transport),create:new b(this._transport)}}}get label(){return{create:new et(this._transport),get:new nt(this._transport),list:new st(this._transport),update:new ot(this._transport),delete:new rt(this._transport),contact:{list:new V(this._transport)},conversation:{list:new Q(this._transport)}}}get message(){return{list:new pt(this._transport)}}get model(){return{get:new lt(this._transport),list:new ut(this._transport),response:{create:new mt(this._transport)},correction:{create:new dt(this._transport)}}}get note(){return{get:new ft(this._transport),update:new At(this._transport)}}get source(){return{get:new xt(this._transport),list:new Tt(this._transport)}}get upload(){return{get:new vt(this._transport),create:new Et(this._transport),delete:new St(this._transport)}}get webhook(){return new Ot(this)}};var Dt={};Kt(Dt,{AuthError:()=>c,AuthenticationError:()=>u,AuthorizationError:()=>g,LogicError:()=>l,NetworkError:()=>m,SupportError:()=>a,ValidationError:()=>h});var Ft=class r{static DEFAULT_NAME=$t;name;#t;constructor({name:t=process.env[Qt]??r.DEFAULT_NAME,key:e=process.env[Xt]}={}){if(!e)throw new Error("API Key option must be specified when using Key Authentication");this.name=t,this.#t=e}async filter(){return{headers:this.getHeaders()}}getHeaders(){return{Authorization:`Basic ${btoa(this.name+":"+this.#t)}`}}};var wt=class{#t;constructor({token:t=process.env[Jt]}={}){if(!t)throw new Error("Access Token option must be specified when using Token Authentication");this.#t=t}async filter(){return{headers:this.getHeaders()}}getHeaders(){return{Authorization:`Bearer ${this.#t}`}}};var It=class{async filter(){return{headers:this.getHeaders()}}getHeaders(){return{}}};0&&(module.exports={Client,DEFAULT_SUPPORT_BASE_URL,Error,KeyAuthentication,PublicAuthentication,TokenAuthentication});
1
+ "use strict";var re=Object.create;var Ut=Object.defineProperty;var ne=Object.getOwnPropertyDescriptor;var se=Object.getOwnPropertyNames;var oe=Object.getPrototypeOf,ie=Object.prototype.hasOwnProperty;var Kt=(r,t)=>{for(var e in t)Ut(r,e,{get:t[e],enumerable:!0})},Vt=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of se(t))!ie.call(r,s)&&s!==e&&Ut(r,s,{get:()=>t[s],enumerable:!(n=ne(t,s))||n.enumerable});return r};var Wt=(r,t,e)=>(e=r!=null?re(oe(r)):{},Vt(t||!r||!r.__esModule?Ut(e,"default",{value:r,enumerable:!0}):e,r)),ae=r=>Vt(Ut({},"__esModule",{value:!0}),r);var pe={};Kt(pe,{Client:()=>A,DEFAULT_SUPPORT_BASE_URL:()=>qt,Error:()=>Dt,KeyAuthentication:()=>Ft,PublicAuthentication:()=>It,TokenAuthentication:()=>wt,default:()=>A});module.exports=ae(pe);var qt="https://api.support.greatdetail.com",Yt={"X-Powered-By":"GDSupport/JavaScript"},$t="api-key";var x=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/actions",{...t,method:"GET"})}};var y=require("zod"),T=class r{constructor(t){this._transport=t}static SCHEMA=y.z.object({title:y.z.string(),content:y.z.string(),account:y.z.string()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t)+"/boilerplates",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var _=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplates/"+encodeURIComponent(t),{...e,method:"GET"})}};var E=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t)+"/boilerplates",{...e,method:"GET"})}};var S=class{constructor(t){this._transport=t}async send({query:t,request:e={}}={}){return this._transport.send("v1/boilerplates"+(t?"?query="+encodeURIComponent(t):""),{...e,method:"GET"})}};var Ht=require("zod"),v=class r{constructor(t){this._transport=t}static SCHEMA=Ht.z.object({title:Ht.z.string().optional(),content:Ht.z.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/boilerplates/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var O=require("zod"),F=class r{constructor(t){this._transport=t}static SCHEMA=O.z.object({title:O.z.string(),description:O.z.string().optional(),account:O.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/boilerplate-categories",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var w=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t),{...e,method:"GET"})}};var I=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/boilerplate-categories",{...t,method:"GET"})}};var Lt=require("zod"),U=class r{constructor(t){this._transport=t}static SCHEMA=Lt.z.object({title:Lt.z.string().optional(),description:Lt.z.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var o=require("zod"),q=class r{constructor(t){this._transport=t}static SCHEMA=o.z.intersection(o.z.object({name:o.z.string().optional(),account:o.z.string()}),o.z.discriminatedUnion("source",[o.z.object({source:o.z.literal("meta-whatsapp")}),o.z.object({source:o.z.literal("twilio-sendgrid"),twilioSendgrid:o.z.object({displayName:o.z.string().optional(),outboundEmailAddress:o.z.string().email(),replyEmailAddress:o.z.string().optional(),inboundHostname:o.z.string(),apiKey:o.z.string()})})]));async send({body:t,request:e={}}){return this._transport.send("v1/channels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var H=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...e,method:"GET"})}};var L=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/channels",{...t,method:"GET"})}};var i=require("zod"),M=class r{constructor(t){this._transport=t}static SCHEMA=i.z.intersection(i.z.object({name:i.z.string().optional()}),i.z.discriminatedUnion("source",[i.z.object({source:i.z.literal("meta-whatsapp")}),i.z.object({source:i.z.literal("twilio-sendgrid"),twilioSendgrid:i.z.object({displayName:i.z.string().optional(),outboundEmailAddress:i.z.string().email().optional(),replyEmailAddress:i.z.string().optional(),inboundHostname:i.z.string().optional(),apiKey:i.z.string().optional()})})]));async send({id:t,body:e,request:n={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var f=require("zod"),j=class r{constructor(t){this._transport=t}static SCHEMA=f.z.object({account:f.z.string(),channel:f.z.string().optional(),location:f.z.enum(["header","footer"]),content:f.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/composition-sections",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var N=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...e,method:"GET"})}};var G=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/composition-sections",{...e,method:"GET"})}};var P=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/composition-sections",{...t,method:"GET"})}};var Gt=require("zod"),z=class r{constructor(t){this._transport=t}static SCHEMA=Gt.z.object({content:Gt.z.string()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var Jt="SUPPORT_ACCESS_TOKEN",Xt="SUPPORT_API_KEY",Qt="SUPPORT_KEY_NAME",Zt="SUPPORT_BASE_URL";var B=class{constructor(t){this._transport=t}getRelativeURL({id:t,vcf:e={}}){let n=e.variant??"vcard",s=e.format??(e.variant==="vcard"?"vcf":"json");return"v1/contacts/"+encodeURIComponent(t)+"/vcf?variant="+encodeURIComponent(n)+"&format="+encodeURIComponent(s)}getURL(t){return this._transport.getURL(this.getRelativeURL(t))}};var C=require("zod"),D=class r{constructor(t){this._transport=t}static SCHEMA=C.z.object({name:C.z.string(),account:C.z.string(),emailAddress:C.z.string().email().optional(),telephoneNumber:C.z.string().optional()});async send({body:t,request:e={}}){return this._transport.send("v1/contacts",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var k=class{constructor(t){this._transport=t}async send({id:t,include:e,request:n={}}){let s=[];return e?.messageCount&&s.push(["include","messageCount"]),e?.conversationCount&&s.push(["include","conversationCount"]),this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"GET"})}};var K=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/contacts",{...t,method:"GET"})}};var V=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/contacts",{...e,method:"GET"})}};var W=require("zod"),Y=class r{constructor(t){this._transport=t}static SCHEMA=W.z.object({name:W.z.string().optional(),emailAddress:W.z.string().email().optional(),telephoneNumber:W.z.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var $=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...e,method:"GET"})}};var J=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"})}};var X=class{constructor(t){this._transport=t}async send({filter:t,include:e,request:n={}}={}){let s=[];return t&&s.push(["filter",t]),e?.latestMessage&&s.push(["include","latestMessage"]),this._transport.send("v1/conversations",{...n,method:"GET",searchParams:s})}};var Q=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"})}};var Mt=require("zod"),Z=class r{constructor(t){this._transport=t}static SCHEMA=Mt.z.object({status:Mt.z.enum(["AwaitingContactConversationStatus","AwaitingAgentConversationStatus","ResolvedConversationStatus","ClosedConversationStatus"]).optional(),hasEnded:Mt.z.boolean().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var tt=require("zod"),et=class r{constructor(t){this._transport=t}static SCHEMA=tt.z.object({title:tt.z.string(),description:tt.z.string().optional(),account:tt.z.string()});async send({body:t,request:e={}}){return this._transport.send("v1/labels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var rt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var nt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"})}};var st=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/labels",{...t,method:"GET"})}};var jt=require("zod"),ot=class r{constructor(t){this._transport=t}static SCHEMA=jt.z.object({title:jt.z.string().optional(),description:jt.z.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var it=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"})}};var at=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"})}};var pt=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/messages",{...t,method:"GET"})}};var ct=require("zod"),dt=class r{constructor(t){this._transport=t}static SCHEMA=ct.z.object({input:ct.z.string().max(65536),original:ct.z.string().max(65536),correction:ct.z.string().max(65536)});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var ut=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"})}};var lt=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/models",{...t,method:"GET"})}};var gt=require("zod"),mt=class r{constructor(t){this._transport=t}static SCHEMA=gt.z.array(gt.z.object({role:gt.z.enum(["user","assistant"]),content:gt.z.string().max(65536).nullable()})).min(1);async send({id:t,body:e,request:n={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var Pt=require("zod"),ht=class r{constructor(t){this._transport=t}static SCHEMA=Pt.z.object({content:Pt.z.string()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var zt=require("zod"),b=class r{constructor(t){this._transport=t}static SCHEMA=zt.z.object({content:zt.z.string()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var ft=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...e,method:"GET"})}};var Ct=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var bt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var Bt=require("zod"),At=class r{constructor(t){this._transport=t}static SCHEMA=Bt.z.object({content:Bt.z.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var d=require("zod"),Rt=class r{constructor(t){this._transport=t}static SCHEMA=d.z.discriminatedUnion("type",[d.z.object({type:d.z.literal("vapid"),endpoint:d.z.string().url(),keys:d.z.object({p256dh:d.z.string(),auth:d.z.string()})})]);async send({id:t,body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notification-subscriptions",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var xt=class r{constructor(t=r.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=Yt;async filter(){return{headers:this.getHeaders()}}getHeaders(){return this._standardHeaders}};var yt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"})}};var Tt=class{constructor(t){this._transport=t}async send({category:t,request:e={}}={}){let n=[];if(t){let s=Array.isArray(t)?t:[t];for(let R of s)n.push(["category",R])}return this._transport.send("v1/sources",{...e,method:"GET",searchParams:n})}};var te=Wt(require("is-network-error"),1),Nt=Wt(require("ky"),1);var a=class extends Error{};var c=class extends a{};var l=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 u=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}`)}};var m=class extends a{};var h=class extends a{static badRequest(){return new this("Bad request")}};var _t=class{client;options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t},this.client=Nt.default.create({prefixUrl:this.options.baseURL,hooks:{beforeRequest:[n=>{for(let s of this.options.requestFilterables){let R=s.getHeaders();for(let[kt,ee]of Object.entries(R))n.headers.has(kt)||n.headers.set(kt,ee)}}]}})}getURL(t){return new URL(t,this.options.baseURL).toString()}async send(t,e){return await this.client(t,e).catch(n=>{if((0,te.default)(n))throw new m("A network error occurred",{cause:n});if(n instanceof Nt.HTTPError){let s=n.response.status;switch(console.error(JSON.stringify(n.response)),s){case 400:throw h.badRequest();case 401:throw l.unauthenticated();case 403:throw g.forbidden();case 404:throw u.notFound(t);case 405:throw u.forbiddenMethod(t,e.method??"GET")}}throw n})}};var Et=class{constructor(t){this._transport=t}async send({account:t,files:e,request:n={}}){let s=new FormData;for(let R of e)s.append("file",R);return this._transport.send("v1/uploads",{...n,method:"POST",body:s,searchParams:{account:t}})}};var St=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var vt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"GET"})}};var p=require("zod"),Ot=class r{constructor(t){this._client=t}static SCHEMA=p.z.object({event:p.z.intersection(p.z.object({id:p.z.string(),createdAt:p.z.string().datetime()}),p.z.discriminatedUnion("type",[p.z.object({type:p.z.literal("contact.created"),contact:p.z.string()}),p.z.object({type:p.z.literal("message.created"),message:p.z.string()})]))});async event({request:t}){let{event:e}=r.SCHEMA.parse(t.body);return{event:e}}};var A=class r{static DEFAULT_BASE_URL=qt;_transport;constructor(t,{baseURL:e,...n}={}){this._transport=new _t({requestFilterables:[new xt,t],...n,baseURL:e?.toString()??r.getBaseURL()})}static getBaseURL(){return process.env[Zt]??this.DEFAULT_BASE_URL}get action(){return{list:new x(this._transport)}}get boilerplate(){return{get:new _(this._transport),list:new S(this._transport),update:new v(this._transport)}}get boilerplateCategory(){return{get:new w(this._transport),list:new I(this._transport),create:new F(this._transport),update:new U(this._transport),boilerplate:{list:new E(this._transport),create:new T(this._transport)}}}get channel(){return{get:new H(this._transport),list:new L(this._transport),update:new M(this._transport),create:new q(this._transport),compositionSection:{list:new G(this._transport)},message:{list:new it(this._transport)}}}get compositionSection(){return{get:new N(this._transport),list:new P(this._transport),create:new j(this._transport),update:new z(this._transport)}}get contact(){return{get:new k(this._transport),list:new K(this._transport),update:new Y(this._transport),create:new D(this._transport),conversation:{list:new J(this._transport)},note:{list:new Ct(this._transport),create:new ht(this._transport)},notificationSubscription:{create:new Rt(this._transport)},vcf:{get:new B(this._transport)}}}get conversation(){return{get:new $(this._transport),list:new X(this._transport),update:new Z(this._transport),create:new b(this._transport),message:{list:new at(this._transport)},note:{list:new bt(this._transport),create:new b(this._transport)}}}get label(){return{create:new et(this._transport),get:new nt(this._transport),list:new st(this._transport),update:new ot(this._transport),delete:new rt(this._transport),contact:{list:new V(this._transport)},conversation:{list:new Q(this._transport)}}}get message(){return{list:new pt(this._transport)}}get model(){return{get:new ut(this._transport),list:new lt(this._transport),response:{create:new mt(this._transport)},correction:{create:new dt(this._transport)}}}get note(){return{get:new ft(this._transport),update:new At(this._transport)}}get source(){return{get:new yt(this._transport),list:new Tt(this._transport)}}get upload(){return{get:new vt(this._transport),create:new Et(this._transport),delete:new St(this._transport)}}get webhook(){return new Ot(this)}};var Dt={};Kt(Dt,{AuthError:()=>c,AuthenticationError:()=>l,AuthorizationError:()=>g,LogicError:()=>u,NetworkError:()=>m,SupportError:()=>a,ValidationError:()=>h});var Ft=class r{static DEFAULT_NAME=$t;name;#t;constructor({name:t=process.env[Qt]??r.DEFAULT_NAME,key:e=process.env[Xt]}={}){if(!e)throw new Error("API Key option must be specified when using Key Authentication");this.name=t,this.#t=e}async filter(){return{headers:this.getHeaders()}}getHeaders(){return{Authorization:`Basic ${btoa(this.name+":"+this.#t)}`}}};var wt=class{#t;constructor({token:t=process.env[Jt]}={}){if(!t)throw new Error("Access Token option must be specified when using Token Authentication");this.#t=t}async filter(){return{headers:this.getHeaders()}}getHeaders(){return{Authorization:`Bearer ${this.#t}`}}};var It=class{async filter(){return{headers:this.getHeaders()}}getHeaders(){return{}}};0&&(module.exports={Client,DEFAULT_SUPPORT_BASE_URL,Error,KeyAuthentication,PublicAuthentication,TokenAuthentication});
package/dist/index.d.cts CHANGED
@@ -1,5 +1,5 @@
1
- import { A as Authentication } from './index-CslpVmui.cjs';
2
- export { C as Client, b as CreateBoilerplateCategoryBoilerplateResponse, e as CreateBoilerplateCategoryResponse, l as CreateChannelResponse, o as CreateCompositionSectionResponse, T as CreateContactNoteResponse, a1 as CreateContactNotificationSubscriptionResponse, r as CreateContactResponse, V as CreateConversationNoteResponse, Q as CreateCorrectionResponse, D as CreateLabelResponse, S as CreateResponseResponse, a2 as CreateUploadResponse, E as DeleteLabelResponse, a4 as DeleteUploadResponse, f as GetBoilerplateCategoryResponse, G as GetBoilerplateResponse, j as GetChannelResponse, m as GetCompositionSectionResponse, s as GetContactResponse, w as GetConversationResponse, F as GetLabelResponse, N as GetModelResponse, X as GetNoteResponse, $ as GetSourceResponse, a3 as GetUploadResponse, L as ListActionsResponse, g as ListBoilerplateCategoriesResponse, c as ListBoilerplateCategoryBoilerplatesResponse, d as ListBoilerplatesResponse, p as ListChannelCompositionSectionsResponse, M as ListChannelMessagesResponse, i as ListChannelsResponse, n as ListCompositionSectionsResponse, B as ListContactConversationsResponse, Y as ListContactNotesResponse, t as ListContactsResponse, J as ListConversationMessagesResponse, Z as ListConversationNotesResponse, x as ListConversationsResponse, u as ListLabelContactsResponse, y as ListLabelConversationsResponse, H as ListLabelsResponse, K as ListMessagesResponse, P as ListModelsResponse, a0 as ListSourcesResponse, O as Options, R as RequestFilterable, a as TransportOptions, h as UpdateBoilerplateCategoryResponse, U as UpdateBoilerplateResponse, k as UpdateChannelResponse, q as UpdateCompositionSectionResponse, v as UpdateContactResponse, z as UpdateConversationResponse, I as UpdateLabelResponse, _ as UpdateNoteResponse, W as WebhookResponse, C as default } from './index-CslpVmui.cjs';
1
+ import { A as Authentication } from './index-D7GeM4Aj.cjs';
2
+ export { C as Client, b as CreateBoilerplateCategoryBoilerplateResponse, e as CreateBoilerplateCategoryResponse, l as CreateChannelResponse, o as CreateCompositionSectionResponse, T as CreateContactNoteResponse, a1 as CreateContactNotificationSubscriptionResponse, r as CreateContactResponse, V as CreateConversationNoteResponse, Q as CreateCorrectionResponse, D as CreateLabelResponse, S as CreateResponseResponse, a2 as CreateUploadResponse, E as DeleteLabelResponse, a4 as DeleteUploadResponse, f as GetBoilerplateCategoryResponse, G as GetBoilerplateResponse, j as GetChannelResponse, m as GetCompositionSectionResponse, s as GetContactResponse, w as GetConversationResponse, F as GetLabelResponse, N as GetModelResponse, X as GetNoteResponse, $ as GetSourceResponse, a3 as GetUploadResponse, L as ListActionsResponse, g as ListBoilerplateCategoriesResponse, c as ListBoilerplateCategoryBoilerplatesResponse, d as ListBoilerplatesResponse, p as ListChannelCompositionSectionsResponse, M as ListChannelMessagesResponse, i as ListChannelsResponse, n as ListCompositionSectionsResponse, B as ListContactConversationsResponse, Y as ListContactNotesResponse, t as ListContactsResponse, J as ListConversationMessagesResponse, Z as ListConversationNotesResponse, x as ListConversationsResponse, u as ListLabelContactsResponse, y as ListLabelConversationsResponse, H as ListLabelsResponse, K as ListMessagesResponse, P as ListModelsResponse, a0 as ListSourcesResponse, O as Options, R as RequestFilterable, a as TransportOptions, h as UpdateBoilerplateCategoryResponse, U as UpdateBoilerplateResponse, k as UpdateChannelResponse, q as UpdateCompositionSectionResponse, v as UpdateContactResponse, z as UpdateConversationResponse, I as UpdateLabelResponse, _ as UpdateNoteResponse, W as WebhookResponse, C as default } from './index-D7GeM4Aj.cjs';
3
3
  import 'ky';
4
4
  import 'zod';
5
5
 
@@ -219,7 +219,7 @@ type CreateConversationResponse = {
219
219
  name?: string;
220
220
  hasEnded: boolean;
221
221
  status: "AwaitingContactConversationStatus" | "AwaitingAgentConversationStatus" | "ResolvedConversationStatus" | "ClosedConversationStatus";
222
- accountChannel: string;
222
+ channel: string;
223
223
  createdAt: string;
224
224
  updatedAt: string;
225
225
  };
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { A as Authentication } from './index-CslpVmui.js';
2
- export { C as Client, b as CreateBoilerplateCategoryBoilerplateResponse, e as CreateBoilerplateCategoryResponse, l as CreateChannelResponse, o as CreateCompositionSectionResponse, T as CreateContactNoteResponse, a1 as CreateContactNotificationSubscriptionResponse, r as CreateContactResponse, V as CreateConversationNoteResponse, Q as CreateCorrectionResponse, D as CreateLabelResponse, S as CreateResponseResponse, a2 as CreateUploadResponse, E as DeleteLabelResponse, a4 as DeleteUploadResponse, f as GetBoilerplateCategoryResponse, G as GetBoilerplateResponse, j as GetChannelResponse, m as GetCompositionSectionResponse, s as GetContactResponse, w as GetConversationResponse, F as GetLabelResponse, N as GetModelResponse, X as GetNoteResponse, $ as GetSourceResponse, a3 as GetUploadResponse, L as ListActionsResponse, g as ListBoilerplateCategoriesResponse, c as ListBoilerplateCategoryBoilerplatesResponse, d as ListBoilerplatesResponse, p as ListChannelCompositionSectionsResponse, M as ListChannelMessagesResponse, i as ListChannelsResponse, n as ListCompositionSectionsResponse, B as ListContactConversationsResponse, Y as ListContactNotesResponse, t as ListContactsResponse, J as ListConversationMessagesResponse, Z as ListConversationNotesResponse, x as ListConversationsResponse, u as ListLabelContactsResponse, y as ListLabelConversationsResponse, H as ListLabelsResponse, K as ListMessagesResponse, P as ListModelsResponse, a0 as ListSourcesResponse, O as Options, R as RequestFilterable, a as TransportOptions, h as UpdateBoilerplateCategoryResponse, U as UpdateBoilerplateResponse, k as UpdateChannelResponse, q as UpdateCompositionSectionResponse, v as UpdateContactResponse, z as UpdateConversationResponse, I as UpdateLabelResponse, _ as UpdateNoteResponse, W as WebhookResponse, C as default } from './index-CslpVmui.js';
1
+ import { A as Authentication } from './index-D7GeM4Aj.js';
2
+ export { C as Client, b as CreateBoilerplateCategoryBoilerplateResponse, e as CreateBoilerplateCategoryResponse, l as CreateChannelResponse, o as CreateCompositionSectionResponse, T as CreateContactNoteResponse, a1 as CreateContactNotificationSubscriptionResponse, r as CreateContactResponse, V as CreateConversationNoteResponse, Q as CreateCorrectionResponse, D as CreateLabelResponse, S as CreateResponseResponse, a2 as CreateUploadResponse, E as DeleteLabelResponse, a4 as DeleteUploadResponse, f as GetBoilerplateCategoryResponse, G as GetBoilerplateResponse, j as GetChannelResponse, m as GetCompositionSectionResponse, s as GetContactResponse, w as GetConversationResponse, F as GetLabelResponse, N as GetModelResponse, X as GetNoteResponse, $ as GetSourceResponse, a3 as GetUploadResponse, L as ListActionsResponse, g as ListBoilerplateCategoriesResponse, c as ListBoilerplateCategoryBoilerplatesResponse, d as ListBoilerplatesResponse, p as ListChannelCompositionSectionsResponse, M as ListChannelMessagesResponse, i as ListChannelsResponse, n as ListCompositionSectionsResponse, B as ListContactConversationsResponse, Y as ListContactNotesResponse, t as ListContactsResponse, J as ListConversationMessagesResponse, Z as ListConversationNotesResponse, x as ListConversationsResponse, u as ListLabelContactsResponse, y as ListLabelConversationsResponse, H as ListLabelsResponse, K as ListMessagesResponse, P as ListModelsResponse, a0 as ListSourcesResponse, O as Options, R as RequestFilterable, a as TransportOptions, h as UpdateBoilerplateCategoryResponse, U as UpdateBoilerplateResponse, k as UpdateChannelResponse, q as UpdateCompositionSectionResponse, v as UpdateContactResponse, z as UpdateConversationResponse, I as UpdateLabelResponse, _ as UpdateNoteResponse, W as WebhookResponse, C as default } from './index-D7GeM4Aj.js';
3
3
  import 'ky';
4
4
  import 'zod';
5
5
 
@@ -219,7 +219,7 @@ type CreateConversationResponse = {
219
219
  name?: string;
220
220
  hasEnded: boolean;
221
221
  status: "AwaitingContactConversationStatus" | "AwaitingAgentConversationStatus" | "ResolvedConversationStatus" | "ClosedConversationStatus";
222
- accountChannel: string;
222
+ channel: string;
223
223
  createdAt: string;
224
224
  updatedAt: string;
225
225
  };
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import{a as d,b as g,c as s,d as p,e as n,f as _,g as a,h as f,i as m,j as u,k as c,l as x,m as l,n as h,o as A}from"./chunk-WRKUF6W4.js";var E={};d(E,{AuthError:()=>m,AuthenticationError:()=>u,AuthorizationError:()=>c,LogicError:()=>x,NetworkError:()=>l,SupportError:()=>f,ValidationError:()=>h});var t=class e{static DEFAULT_NAME=a;name;#r;constructor({name:r=process.env[n]??e.DEFAULT_NAME,key:i=process.env[p]}={}){if(!i)throw new Error("API Key option must be specified when using Key Authentication");this.name=r,this.#r=i}async filter(){return{headers:this.getHeaders()}}getHeaders(){return{Authorization:`Basic ${btoa(this.name+":"+this.#r)}`}}};var o=class{#r;constructor({token:r=process.env[s]}={}){if(!r)throw new Error("Access Token option must be specified when using Token Authentication");this.#r=r}async filter(){return{headers:this.getHeaders()}}getHeaders(){return{Authorization:`Bearer ${this.#r}`}}};export{A as Client,_ as DEFAULT_SUPPORT_BASE_URL,E as Error,t as KeyAuthentication,g as PublicAuthentication,o as TokenAuthentication,A as default};
1
+ import{a as d,b as g,c as s,d as p,e as n,f as _,g as a,h as f,i as m,j as u,k as c,l as x,m as l,n as h,o as A}from"./chunk-HE2I6XXS.js";var E={};d(E,{AuthError:()=>m,AuthenticationError:()=>u,AuthorizationError:()=>c,LogicError:()=>x,NetworkError:()=>l,SupportError:()=>f,ValidationError:()=>h});var t=class e{static DEFAULT_NAME=a;name;#r;constructor({name:r=process.env[n]??e.DEFAULT_NAME,key:i=process.env[p]}={}){if(!i)throw new Error("API Key option must be specified when using Key Authentication");this.name=r,this.#r=i}async filter(){return{headers:this.getHeaders()}}getHeaders(){return{Authorization:`Basic ${btoa(this.name+":"+this.#r)}`}}};var o=class{#r;constructor({token:r=process.env[s]}={}){if(!r)throw new Error("Access Token option must be specified when using Token Authentication");this.#r=r}async filter(){return{headers:this.getHeaders()}}getHeaders(){return{Authorization:`Bearer ${this.#r}`}}};export{A as Client,_ as DEFAULT_SUPPORT_BASE_URL,E as Error,t as KeyAuthentication,g as PublicAuthentication,o as TokenAuthentication,A as default};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@great-detail/support-sdk",
3
- "version": "0.6.0",
3
+ "version": "0.6.2",
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 Dt=Object.defineProperty;var Wt=(r,t)=>{for(var e in t)Dt(r,e,{get:t[e],enumerable:!0})};var Ot=class{async filter(){return{headers:this.getHeaders()}}getHeaders(){return{}}};var Lt="https://api.support.greatdetail.com",Mt={"X-Powered-By":"GDSupport/JavaScript"},Jt="api-key";import{z as a}from"zod";var m=class r{constructor(t){this._client=t}static SCHEMA=a.object({event:a.intersection(a.object({id:a.string(),createdAt:a.string().datetime()}),a.discriminatedUnion("type",[a.object({type:a.literal("contact.created"),contact:a.string()}),a.object({type:a.literal("message.created"),message:a.string()})]))});async event({request:t}){let{event:e}=r.SCHEMA.parse(t.body);return{event:e}}};var h=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/actions",{...t,method:"GET"})}};import{z as Tt}from"zod";var f=class r{constructor(t){this._transport=t}static SCHEMA=Tt.object({title:Tt.string(),content:Tt.string(),account:Tt.string()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t)+"/boilerplates",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var C=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplates/"+encodeURIComponent(t),{...e,method:"GET"})}};var b=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t)+"/boilerplates",{...e,method:"GET"})}};var A=class{constructor(t){this._transport=t}async send({query:t,request:e={}}={}){return this._transport.send("v1/boilerplates"+(t?"?query="+encodeURIComponent(t):""),{...e,method:"GET"})}};import{z as Ft}from"zod";var R=class r{constructor(t){this._transport=t}static SCHEMA=Ft.object({title:Ft.string().optional(),content:Ft.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/boilerplates/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};import{z as xt}from"zod";var y=class r{constructor(t){this._transport=t}static SCHEMA=xt.object({title:xt.string(),description:xt.string().optional(),account:xt.string()});async send({body:t,request:e={}}){return this._transport.send("v1/boilerplate-categories",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var T=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t),{...e,method:"GET"})}};var x=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/boilerplate-categories",{...t,method:"GET"})}};import{z as wt}from"zod";var _=class r{constructor(t){this._transport=t}static SCHEMA=wt.object({title:wt.string().optional(),description:wt.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/boilerplate-categories/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};import{z as s}from"zod";var S=class r{constructor(t){this._transport=t}static SCHEMA=s.intersection(s.object({name:s.string().optional(),account:s.string()}),s.discriminatedUnion("source",[s.object({source:s.literal("meta-whatsapp")}),s.object({source:s.literal("twilio-sendgrid"),twilioSendgrid:s.object({displayName:s.string().optional(),outboundEmailAddress:s.string().email(),replyEmailAddress:s.string().optional(),inboundHostname:s.string(),apiKey:s.string()})})]));async send({body:t,request:e={}}){return this._transport.send("v1/channels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var E=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...e,method:"GET"})}};var v=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/channels",{...t,method:"GET"})}};import{z as i}from"zod";var O=class r{constructor(t){this._transport=t}static SCHEMA=i.intersection(i.object({name:i.string().optional()}),i.discriminatedUnion("source",[i.object({source:i.literal("meta-whatsapp")}),i.object({source:i.literal("twilio-sendgrid"),twilioSendgrid:i.object({displayName:i.string().optional(),outboundEmailAddress:i.string().email().optional(),replyEmailAddress:i.string().optional(),inboundHostname:i.string().optional(),apiKey:i.string().optional()})})]));async send({id:t,body:e,request:n={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};import{z as F}from"zod";var w=class r{constructor(t){this._transport=t}static SCHEMA=F.object({account:F.string(),channel:F.string().optional(),location:F.enum(["header","footer"]),content:F.string()});async send({body:t,request:e={}}){return this._transport.send("v1/composition-sections",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var I=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...e,method:"GET"})}};var U=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/composition-sections",{...e,method:"GET"})}};var q=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/composition-sections",{...t,method:"GET"})}};import{z as jt}from"zod";var H=class r{constructor(t){this._transport=t}static SCHEMA=jt.object({content:jt.string()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/composition-sections/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var ve="SUPPORT_ACCESS_TOKEN",Oe="SUPPORT_API_KEY",Fe="SUPPORT_KEY_NAME",Gt="SUPPORT_BASE_URL";var L=class{constructor(t){this._transport=t}getRelativeURL({id:t,vcf:e={}}){let n=e.variant??"vcard",o=e.format??(e.variant==="vcard"?"vcf":"json");return"v1/contacts/"+encodeURIComponent(t)+"/vcf?variant="+encodeURIComponent(n)+"&format="+encodeURIComponent(o)}getURL(t){return this._transport.getURL(this.getRelativeURL(t))}};import{z as M}from"zod";var j=class r{constructor(t){this._transport=t}static SCHEMA=M.object({name:M.string(),account:M.string(),emailAddress:M.string().email().optional(),telephoneNumber:M.string().optional()});async send({body:t,request:e={}}){return this._transport.send("v1/contacts",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var G=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...e,method:"GET"})}};var N=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/contacts",{...t,method:"GET"})}};var P=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/contacts",{...e,method:"GET"})}};import{z as _t}from"zod";var z=class r{constructor(t){this._transport=t}static SCHEMA=_t.object({name:_t.string().optional(),emailAddress:_t.string().email().optional(),telephoneNumber:_t.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var B=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...e,method:"GET"})}};var D=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"})}};var k=class{constructor(t){this._transport=t}async send({filter:t,include:e,request:n={}}={}){let o=[];return t&&o.push(["filter",t]),e?.latestMessage&&o.push(["include","latestMessage"]),this._transport.send("v1/conversations",{...n,method:"GET",searchParams:o})}};var K=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"})}};import{z as It}from"zod";var V=class r{constructor(t){this._transport=t}static SCHEMA=It.object({status:It.enum(["AwaitingContactConversationStatus","AwaitingAgentConversationStatus","ResolvedConversationStatus","ClosedConversationStatus"]).optional(),hasEnded:It.boolean().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};import{z as St}from"zod";var W=class r{constructor(t){this._transport=t}static SCHEMA=St.object({title:St.string(),description:St.string().optional(),account:St.string()});async send({body:t,request:e={}}){return this._transport.send("v1/labels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(t)})}};var Y=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var $=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"})}};var J=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/labels",{...t,method:"GET"})}};import{z as Ut}from"zod";var X=class r{constructor(t){this._transport=t}static SCHEMA=Ut.object({title:Ut.string().optional(),description:Ut.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var Q=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/channels/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"})}};var Z=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"})}};var tt=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/messages",{...t,method:"GET"})}};import{z as Et}from"zod";var et=class r{constructor(t){this._transport=t}static SCHEMA=Et.object({input:Et.string().max(65536),original:Et.string().max(65536),correction:Et.string().max(65536)});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var rt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"})}};var nt=class{constructor(t){this._transport=t}async send({request:t={}}={}){return this._transport.send("v1/models",{...t,method:"GET"})}};import{z as vt}from"zod";var st=class r{constructor(t){this._transport=t}static SCHEMA=vt.array(vt.object({role:vt.enum(["user","assistant"]),content:vt.string().max(65536).nullable()})).min(1);async send({id:t,body:e,request:n={}}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};import{z as Nt}from"zod";var ot=class r{constructor(t){this._transport=t}static SCHEMA=Nt.object({content:Nt.string()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};import{z as Pt}from"zod";var l=class r{constructor(t){this._transport=t}static SCHEMA=Pt.object({content:Pt.string()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var it=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...e,method:"GET"})}};var at=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};var pt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/notes",{...e,method:"GET"})}};import{z as zt}from"zod";var ct=class r{constructor(t){this._transport=t}static SCHEMA=zt.object({content:zt.string().optional()});async send({id:t,body:e,request:n={}}){return this._transport.send("v1/notes/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};import{z as c}from"zod";var dt=class r{constructor(t){this._transport=t}static SCHEMA=c.discriminatedUnion("type",[c.object({type:c.literal("vapid"),endpoint:c.string().url(),keys:c.object({p256dh:c.string(),auth:c.string()})})]);async send({id:t,body:e,request:n={}}){return this._transport.send("v1/contacts/"+encodeURIComponent(t)+"/notification-subscriptions",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},json:r.SCHEMA.parse(e)})}};var lt=class r{constructor(t=r.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=Mt;async filter(){return{headers:this.getHeaders()}}getHeaders(){return this._standardHeaders}};var ut=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"})}};var gt=class{constructor(t){this._transport=t}async send({category:t,request:e={}}={}){let n=[];if(t){let o=Array.isArray(t)?t:[t];for(let g of o)n.push(["category",g])}return this._transport.send("v1/sources",{...e,method:"GET",searchParams:n})}};import kt from"is-network-error";import Kt,{HTTPError as Vt}from"ky";var p=class extends Error{};var d=class extends p{};var mt=class extends d{static unauthenticated(){return new this("An unauthenticated request occurred")}};var ht=class extends d{static forbidden(){return new this("A forbidden request occurred")}};var u=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}`)}};var ft=class extends p{};var Ct=class extends p{static badRequest(){return new this("Bad request")}};var bt=class{client;options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t},this.client=Kt.create({prefixUrl:this.options.baseURL,hooks:{beforeRequest:[n=>{for(let o of this.options.requestFilterables){let g=o.getHeaders();for(let[Ht,Bt]of Object.entries(g))n.headers.has(Ht)||n.headers.set(Ht,Bt)}}]}})}getURL(t){return new URL(t,this.options.baseURL).toString()}async send(t,e){return await this.client(t,e).catch(n=>{if(kt(n))throw new ft("A network error occurred",{cause:n});if(n instanceof Vt){let o=n.response.status;switch(console.error(JSON.stringify(n.response)),o){case 400:throw Ct.badRequest();case 401:throw mt.unauthenticated();case 403:throw ht.forbidden();case 404:throw u.notFound(t);case 405:throw u.forbiddenMethod(t,e.method??"GET")}}throw n})}};var At=class{constructor(t){this._transport=t}async send({account:t,files:e,request:n={}}){let o=new FormData;for(let g of e)o.append("file",g);return this._transport.send("v1/uploads",{...n,method:"POST",body:o,searchParams:{account:t}})}};var Rt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"DELETE"})}};var yt=class{constructor(t){this._transport=t}async send({id:t,request:e={}}){return this._transport.send("v1/uploads/"+encodeURIComponent(t),{...e,method:"GET"})}};var qt=class r{static DEFAULT_BASE_URL=Lt;_transport;constructor(t,{baseURL:e,...n}={}){this._transport=new bt({requestFilterables:[new lt,t],...n,baseURL:e?.toString()??r.getBaseURL()})}static getBaseURL(){return process.env[Gt]??this.DEFAULT_BASE_URL}get action(){return{list:new h(this._transport)}}get boilerplate(){return{get:new C(this._transport),list:new A(this._transport),update:new R(this._transport)}}get boilerplateCategory(){return{get:new T(this._transport),list:new x(this._transport),create:new y(this._transport),update:new _(this._transport),boilerplate:{list:new b(this._transport),create:new f(this._transport)}}}get channel(){return{get:new E(this._transport),list:new v(this._transport),update:new O(this._transport),create:new S(this._transport),compositionSection:{list:new U(this._transport)},message:{list:new Q(this._transport)}}}get compositionSection(){return{get:new I(this._transport),list:new q(this._transport),create:new w(this._transport),update:new H(this._transport)}}get contact(){return{get:new G(this._transport),list:new N(this._transport),update:new z(this._transport),create:new j(this._transport),conversation:{list:new D(this._transport)},note:{list:new at(this._transport),create:new ot(this._transport)},notificationSubscription:{create:new dt(this._transport)},vcf:{get:new L(this._transport)}}}get conversation(){return{get:new B(this._transport),list:new k(this._transport),update:new V(this._transport),create:new l(this._transport),message:{list:new Z(this._transport)},note:{list:new pt(this._transport),create:new l(this._transport)}}}get label(){return{create:new W(this._transport),get:new $(this._transport),list:new J(this._transport),update:new X(this._transport),delete:new Y(this._transport),contact:{list:new P(this._transport)},conversation:{list:new K(this._transport)}}}get message(){return{list:new tt(this._transport)}}get model(){return{get:new rt(this._transport),list:new nt(this._transport),response:{create:new st(this._transport)},correction:{create:new et(this._transport)}}}get note(){return{get:new it(this._transport),update:new ct(this._transport)}}get source(){return{get:new ut(this._transport),list:new gt(this._transport)}}get upload(){return{get:new yt(this._transport),create:new At(this._transport),delete:new Rt(this._transport)}}get webhook(){return new m(this)}};export{Wt as a,Ot as b,ve as c,Oe as d,Fe as e,Lt as f,Jt as g,p as h,d as i,mt as j,ht as k,u as l,ft as m,Ct as n,qt as o};