@great-detail/support-sdk 0.1.1 → 0.1.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.
@@ -1 +1 @@
1
- import{f as y,g as F}from"./chunk-4DLAUWLS.js";import{Command as A}from"commander";import{Command as b}from"commander";import{oraPromise as I}from"ora";function m({client:n,ora:s}){let o=new b("actions").description("Actions");return o.addCommand(new b("list").description("List actions").action(async()=>{let t=await I(()=>n.action.list.send(),{...s,text:"Finding actions"});console.log(await t.result())})),o}import{Command as v}from"commander";import{oraPromise as S}from"ora";function r({client:n,ora:s}){let o=new v("channels").description("Channels");return o.addCommand(new v("list").description("List channels").action(async()=>{let t=await S(()=>n.channel.list.send(),{...s,text:"Finding channels"});console.log(await t.result())})),o}import{Command as d}from"commander";import{oraPromise as L}from"ora";function c({client:n,ora:s}){let o=new d("contacts").description("Contacts");return o.addCommand(new d("get").description("Find contact").argument("<contact>","Contact ID").action(async t=>{let e=await L(()=>n.contact.get.send({id:t}),{...s,text:"Finding contact"});console.log(await e.result())})),o.addCommand(new d("list").description("List contacts").action(async()=>{let t=await L(()=>n.contact.list.send(),{...s,text:"Finding contacts"});console.log(await t.result())})),o}import{Command as p}from"commander";import{oraPromise as P}from"ora";function l({client:n,ora:s}){let o=new p("conversations").description("Conversations");return o.addCommand(new p("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async t=>{let e=await P(()=>n.conversation.get.send({id:t}),{...s,text:"Finding conversation"});console.log(await e.result())})),o.addCommand(new p("list").description("List conversations").action(async()=>{let t=await P(()=>n.conversation.list.send(),{...s,text:"Finding conversations"});console.log(await t.result())})),o}import{Command as a}from"commander";import{oraPromise as u}from"ora";function f({client:n,ora:s}){let o=new a("labels").description("Labels");return o.addCommand(new a("get").description("Find label").argument("<label>","Label ID").action(async t=>{let e=await u(()=>n.label.get.send({id:t}),{...s,text:"Finding label"});console.log(await e.result())})),o.addCommand(new a("list").description("List labels").action(async()=>{let t=await u(()=>n.label.list.send(),{...s,text:"Finding labels"});console.log(await t.result())})),o.addCommand(new a("conversations").description("Find label conversations").argument("<label>","Label ID").action(async t=>{let e=await u(()=>n.label.conversation.list.send({id:t}),{...s,text:"Finding conversations"});console.log(await e.result())})),o}import{Command as h}from"commander";import{oraPromise as M}from"ora";function C({client:n,ora:s}){let o=new h("messages").description("Messages");return o.addCommand(new h("list").description("List messages").action(async()=>{let t=await M(()=>n.message.list.send(),{...s,text:"Finding messages"});console.log(await t.result())})),o}import{Command as g}from"commander";import{oraPromise as j}from"ora";function w({client:n,ora:s}){let o=new g("models").description("Models");return o.addCommand(new g("get").description("Find model").argument("<model>","Model ID").action(async t=>{let e=await j(()=>n.model.get.send({id:t}),{...s,text:"Finding model"});console.log(await e.result())})),o.addCommand(new g("list").description("List models").action(async()=>{let t=await j(()=>n.model.list.send(),{...s,text:"Finding models"});console.log(await t.result())})),o}import{Command as O}from"commander";import{oraPromise as D}from"ora";function x({client:n,ora:s}){let o=new O("sources").description("Sources");return o.addCommand(new O("get").description("Find source").argument("<source>","Source ID").action(async t=>{let e=await D(()=>n.source.get.send({id:t}),{...s,text:"Finding source"});console.log(await e.result())})),o.addCommand(new O("list").description("List sources").action(async()=>{let t=await D(()=>n.source.list.send(),{...s,text:"Finding sources"});console.log(await t.result())})),o}var i={ora:{spinner:"simpleDotsScrolling"},client:new y(new F)},G=new A("gds").description("Great Detail Support System").addCommand(m(i)).addCommand(r(i)).addCommand(c(i)).addCommand(l(i)).addCommand(f(i)).addCommand(C(i)).addCommand(w(i)).addCommand(x(i)),go=G;export{go as a};
1
+ import{f as y,g as F}from"./chunk-V75IMWOW.js";import{Command as A}from"commander";import{Command as b}from"commander";import{oraPromise as I}from"ora";function m({client:n,ora:s}){let o=new b("actions").description("Actions");return o.addCommand(new b("list").description("List actions").action(async()=>{let t=await I(()=>n.action.list.send(),{...s,text:"Finding actions"});console.log(await t.result())})),o}import{Command as v}from"commander";import{oraPromise as S}from"ora";function r({client:n,ora:s}){let o=new v("channels").description("Channels");return o.addCommand(new v("list").description("List channels").action(async()=>{let t=await S(()=>n.channel.list.send(),{...s,text:"Finding channels"});console.log(await t.result())})),o}import{Command as d}from"commander";import{oraPromise as L}from"ora";function c({client:n,ora:s}){let o=new d("contacts").description("Contacts");return o.addCommand(new d("get").description("Find contact").argument("<contact>","Contact ID").action(async t=>{let e=await L(()=>n.contact.get.send({id:t}),{...s,text:"Finding contact"});console.log(await e.result())})),o.addCommand(new d("list").description("List contacts").action(async()=>{let t=await L(()=>n.contact.list.send(),{...s,text:"Finding contacts"});console.log(await t.result())})),o}import{Command as p}from"commander";import{oraPromise as P}from"ora";function l({client:n,ora:s}){let o=new p("conversations").description("Conversations");return o.addCommand(new p("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async t=>{let e=await P(()=>n.conversation.get.send({id:t}),{...s,text:"Finding conversation"});console.log(await e.result())})),o.addCommand(new p("list").description("List conversations").action(async()=>{let t=await P(()=>n.conversation.list.send(),{...s,text:"Finding conversations"});console.log(await t.result())})),o}import{Command as a}from"commander";import{oraPromise as u}from"ora";function f({client:n,ora:s}){let o=new a("labels").description("Labels");return o.addCommand(new a("get").description("Find label").argument("<label>","Label ID").action(async t=>{let e=await u(()=>n.label.get.send({id:t}),{...s,text:"Finding label"});console.log(await e.result())})),o.addCommand(new a("list").description("List labels").action(async()=>{let t=await u(()=>n.label.list.send(),{...s,text:"Finding labels"});console.log(await t.result())})),o.addCommand(new a("conversations").description("Find label conversations").argument("<label>","Label ID").action(async t=>{let e=await u(()=>n.label.conversation.list.send({id:t}),{...s,text:"Finding conversations"});console.log(await e.result())})),o}import{Command as h}from"commander";import{oraPromise as M}from"ora";function C({client:n,ora:s}){let o=new h("messages").description("Messages");return o.addCommand(new h("list").description("List messages").action(async()=>{let t=await M(()=>n.message.list.send(),{...s,text:"Finding messages"});console.log(await t.result())})),o}import{Command as g}from"commander";import{oraPromise as j}from"ora";function w({client:n,ora:s}){let o=new g("models").description("Models");return o.addCommand(new g("get").description("Find model").argument("<model>","Model ID").action(async t=>{let e=await j(()=>n.model.get.send({id:t}),{...s,text:"Finding model"});console.log(await e.result())})),o.addCommand(new g("list").description("List models").action(async()=>{let t=await j(()=>n.model.list.send(),{...s,text:"Finding models"});console.log(await t.result())})),o}import{Command as O}from"commander";import{oraPromise as D}from"ora";function x({client:n,ora:s}){let o=new O("sources").description("Sources");return o.addCommand(new O("get").description("Find source").argument("<source>","Source ID").action(async t=>{let e=await D(()=>n.source.get.send({id:t}),{...s,text:"Finding source"});console.log(await e.result())})),o.addCommand(new O("list").description("List sources").action(async()=>{let t=await D(()=>n.source.list.send(),{...s,text:"Finding sources"});console.log(await t.result())})),o}var i={ora:{spinner:"simpleDotsScrolling"},client:new y(new F)},G=new A("gds").description("Great Detail Support System").addCommand(m(i)).addCommand(r(i)).addCommand(c(i)).addCommand(l(i)).addCommand(f(i)).addCommand(C(i)).addCommand(w(i)).addCommand(x(i)),go=G;export{go as a};
@@ -0,0 +1 @@
1
+ var at="https://api.support.greatdetail.com",ct={"X-Powered-By":"GDSupport/JavaScript"},ut="api-key",lt="SUPPORT_ACCESS_TOKEN",mt="SUPPORT_API_KEY",gt="SUPPORT_KEY_NAME";var i=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/actions",{...t,method:"GET"},s).then(n=>new H(n))}},H=class{constructor(t){this.response=t}async result(){return this.response.json()}};var p=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/channels",{...t,method:"GET"},s).then(n=>new M(n))}},M=class{constructor(t){this.response=t}async result(){return this.response.json()}};import{z as a}from"zod";var c=class e{constructor(t){this._transport=t}static SCHEMA=a.object({name:a.string(),account:a.string(),emailAddress:a.string().email().optional(),telephoneNumber:a.string().optional()});async send({body:t,request:s={},...n}){return this._transport.send("v1/contacts",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(t))},n).then(r=>new N(r))}},N=class{constructor(t){this.response=t}async result(){return this.response.json()}};var d=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new D(r))}},D=class{constructor(t){this.response=t}async result(){return this.response.json()}};var u=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/contacts",{...t,method:"GET"},s).then(n=>new G(n))}},G=class{constructor(t){this.response=t}async result(){return this.response.json()}};import{z as I}from"zod";var l=class e{constructor(t){this._transport=t}static SCHEMA=I.object({name:I.string().optional(),emailAddress:I.string().email().optional(),telephoneNumber:I.string().optional()});async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new z(o))}},z=class{constructor(t){this.response=t}async result(){return this.response.json()}};var m=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new F(r))}},F=class{constructor(t){this.response=t}async result(){return this.response.json()}};var g=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/conversations",{...t,method:"GET"},s).then(n=>new B(n))}},B=class{constructor(t){this.response=t}async result(){return this.response.json()}};var h=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...s,method:"GET"},n).then(r=>new J(r))}},J=class{constructor(t){this.response=t}async result(){return this.response.json()}};import{z as dt}from"zod";var y=class e{constructor(t){this._transport=t}static SCHEMA=dt.object({hasEnded:dt.boolean()});async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new K(o))}},K=class{constructor(t){this.response=t}async result(){return this.response.json()}};import{z as U}from"zod";var b=class e{constructor(t){this._transport=t}static SCHEMA=U.object({title:U.string(),description:U.string().optional(),account:U.string()});async send({body:t,request:s={},...n}){return this._transport.send("v1/labels",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(t))},n).then(r=>new V(r))}},V=class{constructor(t){this.response=t}async result(){return this.response.json()}};var f=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...s,method:"DELETE"},n).then(r=>new Y(r))}},Y=class{constructor(t){this.response=t}async result(){return this.response.json()}};var R=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new k(r))}},k=class{constructor(t){this.response=t}async result(){return this.response.json()}};var S=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/labels",{...t,method:"GET"},s).then(n=>new W(n))}},W=class{constructor(t){this.response=t}async result(){return this.response.json()}};import{z as X}from"zod";var x=class e{constructor(t){this._transport=t}static SCHEMA=X.object({title:X.string().optional(),description:X.string().optional()});async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new Q(o))}},Q=class{constructor(t){this.response=t}async result(){return this.response.json()}};var O=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...s,method:"GET"},n).then(r=>new Z(r))}},Z=class{constructor(t){this.response=t}async result(){return this.response.json()}};var A=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/messages",{...t,method:"GET"},s).then(n=>new $(n))}},$=class{constructor(t){this.response=t}async result(){return this.response.json()}};import{z as j}from"zod";var _=class e{constructor(t){this._transport=t}static SCHEMA=j.object({input:j.string().max(65536),original:j.string().max(65536),correction:j.string().max(65536)});async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new tt(o))}},tt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var T=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new et(r))}},et=class{constructor(t){this.response=t}async result(){return this.response.json()}};var C=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/models",{...t,method:"GET"},s).then(n=>new st(n))}},st=class{constructor(t){this.response=t}async result(){return this.response.json()}};import{z as L}from"zod";var P=class e{constructor(t){this._transport=t}static SCHEMA=L.array(L.object({role:L.enum(["user","assistant"]),content:L.string().max(65536).nullable()})).min(1);async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new nt(o))}},nt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var E=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new rt(r))}},rt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var v=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/sources",{...t,method:"GET"},s).then(n=>new ot(n))}},ot=class{constructor(t){this.response=t}async result(){return this.response.json()}};var w=class{options;constructor({baseURL:t,...s}){this.options={...s,baseURL:t}}async _filterRequest(t){for(let s of this.options.requestFilterables)t=await s.filter(t);return t}async send(t,s,{fetch:n=fetch}={}){return await n(new Request(new URL(t,this.options.baseURL),await this._filterRequest(s)))}};var q=class e{constructor(t=e.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=ct;async filter(t){return{...t,headers:{...t.headers,...this._standardHeaders}}}};var it=class e{static DEFAULT_BASE_URL=at;_transport;constructor(t,{baseURL:s,...n}={}){this._transport=new w({requestFilterables:[new q,t],...n,baseURL:s?.toString()??e.getBaseURL()})}static getBaseURL(){return process.env.SUPPORT_BASE_URL??this.DEFAULT_BASE_URL}get action(){return{list:new i(this._transport)}}get channel(){return{list:new p(this._transport)}}get contact(){return{get:new d(this._transport),list:new u(this._transport),update:new l(this._transport),create:new c(this._transport)}}get conversation(){return{get:new m(this._transport),list:new g(this._transport),update:new y(this._transport),message:{list:new O(this._transport)}}}get label(){return{create:new b(this._transport),get:new R(this._transport),list:new S(this._transport),update:new x(this._transport),delete:new f(this._transport),conversation:{list:new h(this._transport)}}}get message(){return{list:new A(this._transport)}}get model(){return{get:new T(this._transport),list:new C(this._transport),response:{create:new P(this._transport)},correction:{create:new _(this._transport)}}}get source(){return{get:new E(this._transport),list:new v(this._transport)}}};var pt=class{async filter(t){return t}};export{at as a,ut as b,lt as c,mt as d,gt as e,it as f,pt as g};
@@ -1 +1 @@
1
- "use strict";var J=Object.defineProperty;var jt=Object.getOwnPropertyDescriptor;var Dt=Object.getOwnPropertyNames;var Ft=Object.prototype.hasOwnProperty;var Ht=(s,t)=>{for(var e in t)J(s,e,{get:t[e],enumerable:!0})},Mt=(s,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Dt(t))!Ft.call(s,o)&&o!==e&&J(s,o,{get:()=>t[o],enumerable:!(n=jt(t,o))||n.enumerable});return s};var Nt=s=>Mt(J({},"__esModule",{value:!0}),s);var Bt={};Ht(Bt,{default:()=>zt});module.exports=Nt(Bt);var Ut=require("commander");var a=class{async filter(t){return t}};var p=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/actions",{...t,method:"GET"},e).then(n=>new K(n))}},K=class{constructor(t){this.response=t}async result(){return this.response.json()}};var c=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/channels",{...t,method:"GET"},e).then(n=>new V(n))}},V=class{constructor(t){this.response=t}async result(){return this.response.json()}};var Et="https://api.support.greatdetail.com",Tt={"X-Powered-By":"GDSupport/JavaScript"};var d=class{constructor(t){this._transport=t}async send({id:t,request:e={},...n}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...e,method:"GET"},n).then(o=>new Y(o))}},Y=class{constructor(t){this.response=t}async result(){return this.response.json()}};var l=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/contacts",{...t,method:"GET"},e).then(n=>new k(n))}},k=class{constructor(t){this.response=t}async result(){return this.response.json()}};var u=require("zod"),m=class s{constructor(t){this._transport=t}static SCHEMA=u.z.object({name:u.z.string().optional(),emailAddress:u.z.string().email().optional(),telephoneNumber:u.z.string().optional()});async send({id:t,body:e,request:n={},...o}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(s.SCHEMA.parse(e))},o).then(r=>new W(r))}},W=class{constructor(t){this.response=t}async result(){return this.response.json()}};var g=class{constructor(t){this._transport=t}async send({id:t,request:e={},...n}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...e,method:"GET"},n).then(o=>new X(o))}},X=class{constructor(t){this.response=t}async result(){return this.response.json()}};var f=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/conversations",{...t,method:"GET"},e).then(n=>new Q(n))}},Q=class{constructor(t){this.response=t}async result(){return this.response.json()}};var y=class{constructor(t){this._transport=t}async send({id:t,request:e={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"},n).then(o=>new Z(o))}},Z=class{constructor(t){this.response=t}async result(){return this.response.json()}};var $=require("zod"),h=class s{constructor(t){this._transport=t}static SCHEMA=$.z.object({hasEnded:$.z.boolean()});async send({id:t,body:e,request:n={},...o}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(s.SCHEMA.parse(e))},o).then(r=>new tt(r))}},tt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var b=require("zod"),x=class s{constructor(t){this._transport=t}static SCHEMA=b.z.object({title:b.z.string(),description:b.z.string().optional(),account:b.z.string()});async send({body:t,request:e={},...n}){return this._transport.send("v1/labels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},body:JSON.stringify(s.SCHEMA.parse(t))},n).then(o=>new et(o))}},et=class{constructor(t){this.response=t}async result(){return this.response.json()}};var C=class{constructor(t){this._transport=t}async send({id:t,request:e={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"},n).then(o=>new st(o))}},st=class{constructor(t){this.response=t}async result(){return this.response.json()}};var O=class{constructor(t){this._transport=t}async send({id:t,request:e={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"},n).then(o=>new nt(o))}},nt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var R=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/labels",{...t,method:"GET"},e).then(n=>new ot(n))}},ot=class{constructor(t){this.response=t}async result(){return this.response.json()}};var H=require("zod"),S=class s{constructor(t){this._transport=t}static SCHEMA=H.z.object({title:H.z.string().optional(),description:H.z.string().optional()});async send({id:t,body:e,request:n={},...o}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(s.SCHEMA.parse(e))},o).then(r=>new rt(r))}},rt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var w=class{constructor(t){this._transport=t}async send({id:t,request:e={},...n}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"},n).then(o=>new it(o))}},it=class{constructor(t){this.response=t}async result(){return this.response.json()}};var A=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/messages",{...t,method:"GET"},e).then(n=>new at(n))}},at=class{constructor(t){this.response=t}async result(){return this.response.json()}};var _=require("zod"),P=class s{constructor(t){this._transport=t}static SCHEMA=_.z.object({input:_.z.string().max(65536),original:_.z.string().max(65536),correction:_.z.string().max(65536)});async send({id:t,body:e,request:n={},...o}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(s.SCHEMA.parse(e))},o).then(r=>new pt(r))}},pt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var v=class{constructor(t){this._transport=t}async send({id:t,request:e={},...n}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"},n).then(o=>new ct(o))}},ct=class{constructor(t){this.response=t}async result(){return this.response.json()}};var E=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/models",{...t,method:"GET"},e).then(n=>new dt(n))}},dt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var T=require("zod"),q=class s{constructor(t){this._transport=t}static SCHEMA=T.z.array(T.z.object({role:T.z.enum(["user","assistant"]),content:T.z.string().max(65536).nullable()})).min(1);async send({id:t,body:e,request:n={},...o}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(s.SCHEMA.parse(e))},o).then(r=>new lt(r))}},lt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var I=class s{constructor(t=s.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=Tt;async filter(t){return{...t,headers:{...t.headers,...this._standardHeaders}}}};var L=class{constructor(t){this._transport=t}async send({id:t,request:e={},...n}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"},n).then(o=>new ut(o))}},ut=class{constructor(t){this.response=t}async result(){return this.response.json()}};var U=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/sources",{...t,method:"GET"},e).then(n=>new mt(n))}},mt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var j=class{options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t}}async _filterRequest(t){for(let e of this.options.requestFilterables)t=await e.filter(t);return t}async send(t,e,{fetch:n=fetch}={}){return await n(new Request(new URL(t,this.options.baseURL),await this._filterRequest(e)))}};var D=class s{static DEFAULT_BASE_URL=Et;_transport;constructor(t,{baseURL:e,...n}={}){this._transport=new j({requestFilterables:[new I,t],...n,baseURL:e?.toString()??s.getBaseURL()})}static getBaseURL(){return process.env.SUPPORT_BASE_URL??this.DEFAULT_BASE_URL}get action(){return{list:new p(this._transport)}}get channel(){return{list:new c(this._transport)}}get contact(){return{get:new d(this._transport),list:new l(this._transport),update:new m(this._transport)}}get conversation(){return{get:new g(this._transport),list:new f(this._transport),update:new h(this._transport),message:{list:new w(this._transport)}}}get label(){return{create:new x(this._transport),get:new O(this._transport),list:new R(this._transport),update:new S(this._transport),delete:new C(this._transport),conversation:{list:new y(this._transport)}}}get message(){return{list:new A(this._transport)}}get model(){return{get:new v(this._transport),list:new E(this._transport),response:{create:new q(this._transport)},correction:{create:new P(this._transport)}}}get source(){return{get:new L(this._transport),list:new U(this._transport)}}};var gt=require("commander"),qt=require("ora");function ft({client:s,ora:t}){let e=new gt.Command("actions").description("Actions");return e.addCommand(new gt.Command("list").description("List actions").action(async()=>{let n=await(0,qt.oraPromise)(()=>s.action.list.send(),{...t,text:"Finding actions"});console.log(await n.result())})),e}var yt=require("commander"),It=require("ora");function ht({client:s,ora:t}){let e=new yt.Command("channels").description("Channels");return e.addCommand(new yt.Command("list").description("List channels").action(async()=>{let n=await(0,It.oraPromise)(()=>s.channel.list.send(),{...t,text:"Finding channels"});console.log(await n.result())})),e}var M=require("commander"),bt=require("ora");function xt({client:s,ora:t}){let e=new M.Command("contacts").description("Contacts");return e.addCommand(new M.Command("get").description("Find contact").argument("<contact>","Contact ID").action(async n=>{let o=await(0,bt.oraPromise)(()=>s.contact.get.send({id:n}),{...t,text:"Finding contact"});console.log(await o.result())})),e.addCommand(new M.Command("list").description("List contacts").action(async()=>{let n=await(0,bt.oraPromise)(()=>s.contact.list.send(),{...t,text:"Finding contacts"});console.log(await n.result())})),e}var N=require("commander"),Ct=require("ora");function Ot({client:s,ora:t}){let e=new N.Command("conversations").description("Conversations");return e.addCommand(new N.Command("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async n=>{let o=await(0,Ct.oraPromise)(()=>s.conversation.get.send({id:n}),{...t,text:"Finding conversation"});console.log(await o.result())})),e.addCommand(new N.Command("list").description("List conversations").action(async()=>{let n=await(0,Ct.oraPromise)(()=>s.conversation.list.send(),{...t,text:"Finding conversations"});console.log(await n.result())})),e}var F=require("commander"),G=require("ora");function Rt({client:s,ora:t}){let e=new F.Command("labels").description("Labels");return e.addCommand(new F.Command("get").description("Find label").argument("<label>","Label ID").action(async n=>{let o=await(0,G.oraPromise)(()=>s.label.get.send({id:n}),{...t,text:"Finding label"});console.log(await o.result())})),e.addCommand(new F.Command("list").description("List labels").action(async()=>{let n=await(0,G.oraPromise)(()=>s.label.list.send(),{...t,text:"Finding labels"});console.log(await n.result())})),e.addCommand(new F.Command("conversations").description("Find label conversations").argument("<label>","Label ID").action(async n=>{let o=await(0,G.oraPromise)(()=>s.label.conversation.list.send({id:n}),{...t,text:"Finding conversations"});console.log(await o.result())})),e}var St=require("commander"),Lt=require("ora");function wt({client:s,ora:t}){let e=new St.Command("messages").description("Messages");return e.addCommand(new St.Command("list").description("List messages").action(async()=>{let n=await(0,Lt.oraPromise)(()=>s.message.list.send(),{...t,text:"Finding messages"});console.log(await n.result())})),e}var z=require("commander"),At=require("ora");function _t({client:s,ora:t}){let e=new z.Command("models").description("Models");return e.addCommand(new z.Command("get").description("Find model").argument("<model>","Model ID").action(async n=>{let o=await(0,At.oraPromise)(()=>s.model.get.send({id:n}),{...t,text:"Finding model"});console.log(await o.result())})),e.addCommand(new z.Command("list").description("List models").action(async()=>{let n=await(0,At.oraPromise)(()=>s.model.list.send(),{...t,text:"Finding models"});console.log(await n.result())})),e}var B=require("commander"),Pt=require("ora");function vt({client:s,ora:t}){let e=new B.Command("sources").description("Sources");return e.addCommand(new B.Command("get").description("Find source").argument("<source>","Source ID").action(async n=>{let o=await(0,Pt.oraPromise)(()=>s.source.get.send({id:n}),{...t,text:"Finding source"});console.log(await o.result())})),e.addCommand(new B.Command("list").description("List sources").action(async()=>{let n=await(0,Pt.oraPromise)(()=>s.source.list.send(),{...t,text:"Finding sources"});console.log(await n.result())})),e}var i={ora:{spinner:"simpleDotsScrolling"},client:new D(new a)},Gt=new Ut.Command("gds").description("Great Detail Support System").addCommand(ft(i)).addCommand(ht(i)).addCommand(xt(i)).addCommand(Ot(i)).addCommand(Rt(i)).addCommand(wt(i)).addCommand(_t(i)).addCommand(vt(i)),zt=Gt;
1
+ "use strict";var V=Object.defineProperty;var Ht=Object.getOwnPropertyDescriptor;var Mt=Object.getOwnPropertyNames;var Nt=Object.prototype.hasOwnProperty;var Gt=(s,t)=>{for(var e in t)V(s,e,{get:t[e],enumerable:!0})},zt=(s,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Mt(t))!Nt.call(s,o)&&o!==e&&V(s,o,{get:()=>t[o],enumerable:!(n=Ht(t,o))||n.enumerable});return s};var Bt=s=>zt(V({},"__esModule",{value:!0}),s);var Vt={};Gt(Vt,{default:()=>Kt});module.exports=Bt(Vt);var Ft=require("commander");var p=class{async filter(t){return t}};var c=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/actions",{...t,method:"GET"},e).then(n=>new Y(n))}},Y=class{constructor(t){this.response=t}async result(){return this.response.json()}};var d=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/channels",{...t,method:"GET"},e).then(n=>new k(n))}},k=class{constructor(t){this.response=t}async result(){return this.response.json()}};var It="https://api.support.greatdetail.com",Lt={"X-Powered-By":"GDSupport/JavaScript"};var a=require("zod"),l=class s{constructor(t){this._transport=t}static SCHEMA=a.z.object({name:a.z.string(),account:a.z.string(),emailAddress:a.z.string().email().optional(),telephoneNumber:a.z.string().optional()});async send({body:t,request:e={},...n}){return this._transport.send("v1/contacts",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},body:JSON.stringify(s.SCHEMA.parse(t))},n).then(o=>new W(o))}},W=class{constructor(t){this.response=t}async result(){return this.response.json()}};var u=class{constructor(t){this._transport=t}async send({id:t,request:e={},...n}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...e,method:"GET"},n).then(o=>new X(o))}},X=class{constructor(t){this.response=t}async result(){return this.response.json()}};var m=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/contacts",{...t,method:"GET"},e).then(n=>new Q(n))}},Q=class{constructor(t){this.response=t}async result(){return this.response.json()}};var g=require("zod"),f=class s{constructor(t){this._transport=t}static SCHEMA=g.z.object({name:g.z.string().optional(),emailAddress:g.z.string().email().optional(),telephoneNumber:g.z.string().optional()});async send({id:t,body:e,request:n={},...o}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(s.SCHEMA.parse(e))},o).then(r=>new Z(r))}},Z=class{constructor(t){this.response=t}async result(){return this.response.json()}};var y=class{constructor(t){this._transport=t}async send({id:t,request:e={},...n}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...e,method:"GET"},n).then(o=>new $(o))}},$=class{constructor(t){this.response=t}async result(){return this.response.json()}};var h=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/conversations",{...t,method:"GET"},e).then(n=>new tt(n))}},tt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var b=class{constructor(t){this._transport=t}async send({id:t,request:e={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"},n).then(o=>new et(o))}},et=class{constructor(t){this.response=t}async result(){return this.response.json()}};var st=require("zod"),x=class s{constructor(t){this._transport=t}static SCHEMA=st.z.object({hasEnded:st.z.boolean()});async send({id:t,body:e,request:n={},...o}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(s.SCHEMA.parse(e))},o).then(r=>new nt(r))}},nt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var O=require("zod"),C=class s{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={},...n}){return this._transport.send("v1/labels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},body:JSON.stringify(s.SCHEMA.parse(t))},n).then(o=>new ot(o))}},ot=class{constructor(t){this.response=t}async result(){return this.response.json()}};var R=class{constructor(t){this._transport=t}async send({id:t,request:e={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"},n).then(o=>new rt(o))}},rt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var S=class{constructor(t){this._transport=t}async send({id:t,request:e={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"},n).then(o=>new it(o))}},it=class{constructor(t){this.response=t}async result(){return this.response.json()}};var w=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/labels",{...t,method:"GET"},e).then(n=>new at(n))}},at=class{constructor(t){this.response=t}async result(){return this.response.json()}};var N=require("zod"),A=class s{constructor(t){this._transport=t}static SCHEMA=N.z.object({title:N.z.string().optional(),description:N.z.string().optional()});async send({id:t,body:e,request:n={},...o}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(s.SCHEMA.parse(e))},o).then(r=>new pt(r))}},pt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var P=class{constructor(t){this._transport=t}async send({id:t,request:e={},...n}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"},n).then(o=>new ct(o))}},ct=class{constructor(t){this.response=t}async result(){return this.response.json()}};var _=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/messages",{...t,method:"GET"},e).then(n=>new dt(n))}},dt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var T=require("zod"),v=class s{constructor(t){this._transport=t}static SCHEMA=T.z.object({input:T.z.string().max(65536),original:T.z.string().max(65536),correction:T.z.string().max(65536)});async send({id:t,body:e,request:n={},...o}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(s.SCHEMA.parse(e))},o).then(r=>new lt(r))}},lt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var E=class{constructor(t){this._transport=t}async send({id:t,request:e={},...n}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"},n).then(o=>new ut(o))}},ut=class{constructor(t){this.response=t}async result(){return this.response.json()}};var q=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/models",{...t,method:"GET"},e).then(n=>new mt(n))}},mt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var I=require("zod"),L=class s{constructor(t){this._transport=t}static SCHEMA=I.z.array(I.z.object({role:I.z.enum(["user","assistant"]),content:I.z.string().max(65536).nullable()})).min(1);async send({id:t,body:e,request:n={},...o}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(s.SCHEMA.parse(e))},o).then(r=>new gt(r))}},gt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var j=class s{constructor(t=s.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=Lt;async filter(t){return{...t,headers:{...t.headers,...this._standardHeaders}}}};var U=class{constructor(t){this._transport=t}async send({id:t,request:e={},...n}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"},n).then(o=>new ft(o))}},ft=class{constructor(t){this.response=t}async result(){return this.response.json()}};var D=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/sources",{...t,method:"GET"},e).then(n=>new yt(n))}},yt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var F=class{options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t}}async _filterRequest(t){for(let e of this.options.requestFilterables)t=await e.filter(t);return t}async send(t,e,{fetch:n=fetch}={}){return await n(new Request(new URL(t,this.options.baseURL),await this._filterRequest(e)))}};var H=class s{static DEFAULT_BASE_URL=It;_transport;constructor(t,{baseURL:e,...n}={}){this._transport=new F({requestFilterables:[new j,t],...n,baseURL:e?.toString()??s.getBaseURL()})}static getBaseURL(){return process.env.SUPPORT_BASE_URL??this.DEFAULT_BASE_URL}get action(){return{list:new c(this._transport)}}get channel(){return{list:new d(this._transport)}}get contact(){return{get:new u(this._transport),list:new m(this._transport),update:new f(this._transport),create:new l(this._transport)}}get conversation(){return{get:new y(this._transport),list:new h(this._transport),update:new x(this._transport),message:{list:new P(this._transport)}}}get label(){return{create:new C(this._transport),get:new S(this._transport),list:new w(this._transport),update:new A(this._transport),delete:new R(this._transport),conversation:{list:new b(this._transport)}}}get message(){return{list:new _(this._transport)}}get model(){return{get:new E(this._transport),list:new q(this._transport),response:{create:new L(this._transport)},correction:{create:new v(this._transport)}}}get source(){return{get:new U(this._transport),list:new D(this._transport)}}};var ht=require("commander"),jt=require("ora");function bt({client:s,ora:t}){let e=new ht.Command("actions").description("Actions");return e.addCommand(new ht.Command("list").description("List actions").action(async()=>{let n=await(0,jt.oraPromise)(()=>s.action.list.send(),{...t,text:"Finding actions"});console.log(await n.result())})),e}var xt=require("commander"),Ut=require("ora");function Ot({client:s,ora:t}){let e=new xt.Command("channels").description("Channels");return e.addCommand(new xt.Command("list").description("List channels").action(async()=>{let n=await(0,Ut.oraPromise)(()=>s.channel.list.send(),{...t,text:"Finding channels"});console.log(await n.result())})),e}var G=require("commander"),Ct=require("ora");function Rt({client:s,ora:t}){let e=new G.Command("contacts").description("Contacts");return e.addCommand(new G.Command("get").description("Find contact").argument("<contact>","Contact ID").action(async n=>{let o=await(0,Ct.oraPromise)(()=>s.contact.get.send({id:n}),{...t,text:"Finding contact"});console.log(await o.result())})),e.addCommand(new G.Command("list").description("List contacts").action(async()=>{let n=await(0,Ct.oraPromise)(()=>s.contact.list.send(),{...t,text:"Finding contacts"});console.log(await n.result())})),e}var z=require("commander"),St=require("ora");function wt({client:s,ora:t}){let e=new z.Command("conversations").description("Conversations");return e.addCommand(new z.Command("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async n=>{let o=await(0,St.oraPromise)(()=>s.conversation.get.send({id:n}),{...t,text:"Finding conversation"});console.log(await o.result())})),e.addCommand(new z.Command("list").description("List conversations").action(async()=>{let n=await(0,St.oraPromise)(()=>s.conversation.list.send(),{...t,text:"Finding conversations"});console.log(await n.result())})),e}var M=require("commander"),B=require("ora");function At({client:s,ora:t}){let e=new M.Command("labels").description("Labels");return e.addCommand(new M.Command("get").description("Find label").argument("<label>","Label ID").action(async n=>{let o=await(0,B.oraPromise)(()=>s.label.get.send({id:n}),{...t,text:"Finding label"});console.log(await o.result())})),e.addCommand(new M.Command("list").description("List labels").action(async()=>{let n=await(0,B.oraPromise)(()=>s.label.list.send(),{...t,text:"Finding labels"});console.log(await n.result())})),e.addCommand(new M.Command("conversations").description("Find label conversations").argument("<label>","Label ID").action(async n=>{let o=await(0,B.oraPromise)(()=>s.label.conversation.list.send({id:n}),{...t,text:"Finding conversations"});console.log(await o.result())})),e}var Pt=require("commander"),Dt=require("ora");function _t({client:s,ora:t}){let e=new Pt.Command("messages").description("Messages");return e.addCommand(new Pt.Command("list").description("List messages").action(async()=>{let n=await(0,Dt.oraPromise)(()=>s.message.list.send(),{...t,text:"Finding messages"});console.log(await n.result())})),e}var J=require("commander"),Tt=require("ora");function vt({client:s,ora:t}){let e=new J.Command("models").description("Models");return e.addCommand(new J.Command("get").description("Find model").argument("<model>","Model ID").action(async n=>{let o=await(0,Tt.oraPromise)(()=>s.model.get.send({id:n}),{...t,text:"Finding model"});console.log(await o.result())})),e.addCommand(new J.Command("list").description("List models").action(async()=>{let n=await(0,Tt.oraPromise)(()=>s.model.list.send(),{...t,text:"Finding models"});console.log(await n.result())})),e}var K=require("commander"),Et=require("ora");function qt({client:s,ora:t}){let e=new K.Command("sources").description("Sources");return e.addCommand(new K.Command("get").description("Find source").argument("<source>","Source ID").action(async n=>{let o=await(0,Et.oraPromise)(()=>s.source.get.send({id:n}),{...t,text:"Finding source"});console.log(await o.result())})),e.addCommand(new K.Command("list").description("List sources").action(async()=>{let n=await(0,Et.oraPromise)(()=>s.source.list.send(),{...t,text:"Finding sources"});console.log(await n.result())})),e}var i={ora:{spinner:"simpleDotsScrolling"},client:new H(new p)},Jt=new Ft.Command("gds").description("Great Detail Support System").addCommand(bt(i)).addCommand(Ot(i)).addCommand(Rt(i)).addCommand(wt(i)).addCommand(At(i)).addCommand(_t(i)).addCommand(vt(i)).addCommand(qt(i)),Kt=Jt;
@@ -1,5 +1,5 @@
1
1
  import { Command } from 'commander';
2
- import { C as Client } from '../index-6KJofFiG.cjs';
2
+ import { C as Client } from '../index-BdOHDvcP.cjs';
3
3
  import { Options as Options$1 } from 'ora';
4
4
  import 'zod';
5
5
 
@@ -1,5 +1,5 @@
1
1
  import { Command } from 'commander';
2
- import { C as Client } from '../index-6KJofFiG.js';
2
+ import { C as Client } from '../index-BdOHDvcP.js';
3
3
  import { Options as Options$1 } from 'ora';
4
4
  import 'zod';
5
5
 
package/dist/cli/index.js CHANGED
@@ -1 +1 @@
1
- import{a}from"../chunk-WZYR7OGA.js";import"../chunk-4DLAUWLS.js";export{a as default};
1
+ import{a}from"../chunk-2RK4MX2V.js";import"../chunk-V75IMWOW.js";export{a as default};
package/dist/cli.cjs CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- "use strict";var Lt=require("commander");var a=class{async filter(t){return t}};var p=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/actions",{...t,method:"GET"},e).then(s=>new J(s))}},J=class{constructor(t){this.response=t}async result(){return this.response.json()}};var c=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/channels",{...t,method:"GET"},e).then(s=>new K(s))}},K=class{constructor(t){this.response=t}async result(){return this.response.json()}};var vt="https://api.support.greatdetail.com",Et={"X-Powered-By":"GDSupport/JavaScript"};var d=class{constructor(t){this._transport=t}async send({id:t,request:e={},...s}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...e,method:"GET"},s).then(o=>new V(o))}},V=class{constructor(t){this.response=t}async result(){return this.response.json()}};var l=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/contacts",{...t,method:"GET"},e).then(s=>new Y(s))}},Y=class{constructor(t){this.response=t}async result(){return this.response.json()}};var u=require("zod"),m=class n{constructor(t){this._transport=t}static SCHEMA=u.z.object({name:u.z.string().optional(),emailAddress:u.z.string().email().optional(),telephoneNumber:u.z.string().optional()});async send({id:t,body:e,request:s={},...o}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},body:JSON.stringify(n.SCHEMA.parse(e))},o).then(r=>new k(r))}},k=class{constructor(t){this.response=t}async result(){return this.response.json()}};var g=class{constructor(t){this._transport=t}async send({id:t,request:e={},...s}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...e,method:"GET"},s).then(o=>new W(o))}},W=class{constructor(t){this.response=t}async result(){return this.response.json()}};var f=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/conversations",{...t,method:"GET"},e).then(s=>new X(s))}},X=class{constructor(t){this.response=t}async result(){return this.response.json()}};var y=class{constructor(t){this._transport=t}async send({id:t,request:e={},...s}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"},s).then(o=>new Q(o))}},Q=class{constructor(t){this.response=t}async result(){return this.response.json()}};var Z=require("zod"),h=class n{constructor(t){this._transport=t}static SCHEMA=Z.z.object({hasEnded:Z.z.boolean()});async send({id:t,body:e,request:s={},...o}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},body:JSON.stringify(n.SCHEMA.parse(e))},o).then(r=>new $(r))}},$=class{constructor(t){this.response=t}async result(){return this.response.json()}};var b=require("zod"),x=class n{constructor(t){this._transport=t}static SCHEMA=b.z.object({title:b.z.string(),description:b.z.string().optional(),account:b.z.string()});async send({body:t,request:e={},...s}){return this._transport.send("v1/labels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},body:JSON.stringify(n.SCHEMA.parse(t))},s).then(o=>new tt(o))}},tt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var C=class{constructor(t){this._transport=t}async send({id:t,request:e={},...s}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"},s).then(o=>new et(o))}},et=class{constructor(t){this.response=t}async result(){return this.response.json()}};var O=class{constructor(t){this._transport=t}async send({id:t,request:e={},...s}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"},s).then(o=>new st(o))}},st=class{constructor(t){this.response=t}async result(){return this.response.json()}};var R=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/labels",{...t,method:"GET"},e).then(s=>new nt(s))}},nt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var H=require("zod"),S=class n{constructor(t){this._transport=t}static SCHEMA=H.z.object({title:H.z.string().optional(),description:H.z.string().optional()});async send({id:t,body:e,request:s={},...o}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},body:JSON.stringify(n.SCHEMA.parse(e))},o).then(r=>new ot(r))}},ot=class{constructor(t){this.response=t}async result(){return this.response.json()}};var w=class{constructor(t){this._transport=t}async send({id:t,request:e={},...s}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"},s).then(o=>new rt(o))}},rt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var A=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/messages",{...t,method:"GET"},e).then(s=>new it(s))}},it=class{constructor(t){this.response=t}async result(){return this.response.json()}};var _=require("zod"),P=class n{constructor(t){this._transport=t}static SCHEMA=_.z.object({input:_.z.string().max(65536),original:_.z.string().max(65536),correction:_.z.string().max(65536)});async send({id:t,body:e,request:s={},...o}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},body:JSON.stringify(n.SCHEMA.parse(e))},o).then(r=>new at(r))}},at=class{constructor(t){this.response=t}async result(){return this.response.json()}};var v=class{constructor(t){this._transport=t}async send({id:t,request:e={},...s}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"},s).then(o=>new pt(o))}},pt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var E=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/models",{...t,method:"GET"},e).then(s=>new ct(s))}},ct=class{constructor(t){this.response=t}async result(){return this.response.json()}};var T=require("zod"),q=class n{constructor(t){this._transport=t}static SCHEMA=T.z.array(T.z.object({role:T.z.enum(["user","assistant"]),content:T.z.string().max(65536).nullable()})).min(1);async send({id:t,body:e,request:s={},...o}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},body:JSON.stringify(n.SCHEMA.parse(e))},o).then(r=>new dt(r))}},dt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var I=class n{constructor(t=n.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=Et;async filter(t){return{...t,headers:{...t.headers,...this._standardHeaders}}}};var L=class{constructor(t){this._transport=t}async send({id:t,request:e={},...s}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"},s).then(o=>new lt(o))}},lt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var U=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/sources",{...t,method:"GET"},e).then(s=>new ut(s))}},ut=class{constructor(t){this.response=t}async result(){return this.response.json()}};var j=class{options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t}}async _filterRequest(t){for(let e of this.options.requestFilterables)t=await e.filter(t);return t}async send(t,e,{fetch:s=fetch}={}){return await s(new Request(new URL(t,this.options.baseURL),await this._filterRequest(e)))}};var D=class n{static DEFAULT_BASE_URL=vt;_transport;constructor(t,{baseURL:e,...s}={}){this._transport=new j({requestFilterables:[new I,t],...s,baseURL:e?.toString()??n.getBaseURL()})}static getBaseURL(){return process.env.SUPPORT_BASE_URL??this.DEFAULT_BASE_URL}get action(){return{list:new p(this._transport)}}get channel(){return{list:new c(this._transport)}}get contact(){return{get:new d(this._transport),list:new l(this._transport),update:new m(this._transport)}}get conversation(){return{get:new g(this._transport),list:new f(this._transport),update:new h(this._transport),message:{list:new w(this._transport)}}}get label(){return{create:new x(this._transport),get:new O(this._transport),list:new R(this._transport),update:new S(this._transport),delete:new C(this._transport),conversation:{list:new y(this._transport)}}}get message(){return{list:new A(this._transport)}}get model(){return{get:new v(this._transport),list:new E(this._transport),response:{create:new q(this._transport)},correction:{create:new P(this._transport)}}}get source(){return{get:new L(this._transport),list:new U(this._transport)}}};var mt=require("commander"),Tt=require("ora");function gt({client:n,ora:t}){let e=new mt.Command("actions").description("Actions");return e.addCommand(new mt.Command("list").description("List actions").action(async()=>{let s=await(0,Tt.oraPromise)(()=>n.action.list.send(),{...t,text:"Finding actions"});console.log(await s.result())})),e}var ft=require("commander"),qt=require("ora");function yt({client:n,ora:t}){let e=new ft.Command("channels").description("Channels");return e.addCommand(new ft.Command("list").description("List channels").action(async()=>{let s=await(0,qt.oraPromise)(()=>n.channel.list.send(),{...t,text:"Finding channels"});console.log(await s.result())})),e}var M=require("commander"),ht=require("ora");function bt({client:n,ora:t}){let e=new M.Command("contacts").description("Contacts");return e.addCommand(new M.Command("get").description("Find contact").argument("<contact>","Contact ID").action(async s=>{let o=await(0,ht.oraPromise)(()=>n.contact.get.send({id:s}),{...t,text:"Finding contact"});console.log(await o.result())})),e.addCommand(new M.Command("list").description("List contacts").action(async()=>{let s=await(0,ht.oraPromise)(()=>n.contact.list.send(),{...t,text:"Finding contacts"});console.log(await s.result())})),e}var N=require("commander"),xt=require("ora");function Ct({client:n,ora:t}){let e=new N.Command("conversations").description("Conversations");return e.addCommand(new N.Command("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async s=>{let o=await(0,xt.oraPromise)(()=>n.conversation.get.send({id:s}),{...t,text:"Finding conversation"});console.log(await o.result())})),e.addCommand(new N.Command("list").description("List conversations").action(async()=>{let s=await(0,xt.oraPromise)(()=>n.conversation.list.send(),{...t,text:"Finding conversations"});console.log(await s.result())})),e}var F=require("commander"),G=require("ora");function Ot({client:n,ora:t}){let e=new F.Command("labels").description("Labels");return e.addCommand(new F.Command("get").description("Find label").argument("<label>","Label ID").action(async s=>{let o=await(0,G.oraPromise)(()=>n.label.get.send({id:s}),{...t,text:"Finding label"});console.log(await o.result())})),e.addCommand(new F.Command("list").description("List labels").action(async()=>{let s=await(0,G.oraPromise)(()=>n.label.list.send(),{...t,text:"Finding labels"});console.log(await s.result())})),e.addCommand(new F.Command("conversations").description("Find label conversations").argument("<label>","Label ID").action(async s=>{let o=await(0,G.oraPromise)(()=>n.label.conversation.list.send({id:s}),{...t,text:"Finding conversations"});console.log(await o.result())})),e}var Rt=require("commander"),It=require("ora");function St({client:n,ora:t}){let e=new Rt.Command("messages").description("Messages");return e.addCommand(new Rt.Command("list").description("List messages").action(async()=>{let s=await(0,It.oraPromise)(()=>n.message.list.send(),{...t,text:"Finding messages"});console.log(await s.result())})),e}var z=require("commander"),wt=require("ora");function At({client:n,ora:t}){let e=new z.Command("models").description("Models");return e.addCommand(new z.Command("get").description("Find model").argument("<model>","Model ID").action(async s=>{let o=await(0,wt.oraPromise)(()=>n.model.get.send({id:s}),{...t,text:"Finding model"});console.log(await o.result())})),e.addCommand(new z.Command("list").description("List models").action(async()=>{let s=await(0,wt.oraPromise)(()=>n.model.list.send(),{...t,text:"Finding models"});console.log(await s.result())})),e}var B=require("commander"),_t=require("ora");function Pt({client:n,ora:t}){let e=new B.Command("sources").description("Sources");return e.addCommand(new B.Command("get").description("Find source").argument("<source>","Source ID").action(async s=>{let o=await(0,_t.oraPromise)(()=>n.source.get.send({id:s}),{...t,text:"Finding source"});console.log(await o.result())})),e.addCommand(new B.Command("list").description("List sources").action(async()=>{let s=await(0,_t.oraPromise)(()=>n.source.list.send(),{...t,text:"Finding sources"});console.log(await s.result())})),e}var i={ora:{spinner:"simpleDotsScrolling"},client:new D(new a)},jt=new Lt.Command("gds").description("Great Detail Support System").addCommand(gt(i)).addCommand(yt(i)).addCommand(bt(i)).addCommand(Ct(i)).addCommand(Ot(i)).addCommand(St(i)).addCommand(At(i)).addCommand(Pt(i)),Ut=jt;Ut.parseAsync(process.argv);
2
+ "use strict";var Dt=require("commander");var p=class{async filter(t){return t}};var c=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/actions",{...t,method:"GET"},e).then(s=>new V(s))}},V=class{constructor(t){this.response=t}async result(){return this.response.json()}};var d=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/channels",{...t,method:"GET"},e).then(s=>new Y(s))}},Y=class{constructor(t){this.response=t}async result(){return this.response.json()}};var qt="https://api.support.greatdetail.com",It={"X-Powered-By":"GDSupport/JavaScript"};var a=require("zod"),l=class n{constructor(t){this._transport=t}static SCHEMA=a.z.object({name:a.z.string(),account:a.z.string(),emailAddress:a.z.string().email().optional(),telephoneNumber:a.z.string().optional()});async send({body:t,request:e={},...s}){return this._transport.send("v1/contacts",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},body:JSON.stringify(n.SCHEMA.parse(t))},s).then(o=>new k(o))}},k=class{constructor(t){this.response=t}async result(){return this.response.json()}};var u=class{constructor(t){this._transport=t}async send({id:t,request:e={},...s}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...e,method:"GET"},s).then(o=>new W(o))}},W=class{constructor(t){this.response=t}async result(){return this.response.json()}};var m=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/contacts",{...t,method:"GET"},e).then(s=>new X(s))}},X=class{constructor(t){this.response=t}async result(){return this.response.json()}};var g=require("zod"),f=class n{constructor(t){this._transport=t}static SCHEMA=g.z.object({name:g.z.string().optional(),emailAddress:g.z.string().email().optional(),telephoneNumber:g.z.string().optional()});async send({id:t,body:e,request:s={},...o}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},body:JSON.stringify(n.SCHEMA.parse(e))},o).then(r=>new Q(r))}},Q=class{constructor(t){this.response=t}async result(){return this.response.json()}};var y=class{constructor(t){this._transport=t}async send({id:t,request:e={},...s}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...e,method:"GET"},s).then(o=>new Z(o))}},Z=class{constructor(t){this.response=t}async result(){return this.response.json()}};var h=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/conversations",{...t,method:"GET"},e).then(s=>new $(s))}},$=class{constructor(t){this.response=t}async result(){return this.response.json()}};var b=class{constructor(t){this._transport=t}async send({id:t,request:e={},...s}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...e,method:"GET"},s).then(o=>new tt(o))}},tt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var et=require("zod"),x=class n{constructor(t){this._transport=t}static SCHEMA=et.z.object({hasEnded:et.z.boolean()});async send({id:t,body:e,request:s={},...o}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},body:JSON.stringify(n.SCHEMA.parse(e))},o).then(r=>new st(r))}},st=class{constructor(t){this.response=t}async result(){return this.response.json()}};var O=require("zod"),C=class n{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={},...s}){return this._transport.send("v1/labels",{...e,method:"POST",headers:{...e.headers,"Content-Type":"application/json"},body:JSON.stringify(n.SCHEMA.parse(t))},s).then(o=>new nt(o))}},nt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var R=class{constructor(t){this._transport=t}async send({id:t,request:e={},...s}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"DELETE"},s).then(o=>new ot(o))}},ot=class{constructor(t){this.response=t}async result(){return this.response.json()}};var S=class{constructor(t){this._transport=t}async send({id:t,request:e={},...s}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...e,method:"GET"},s).then(o=>new rt(o))}},rt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var w=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/labels",{...t,method:"GET"},e).then(s=>new it(s))}},it=class{constructor(t){this.response=t}async result(){return this.response.json()}};var N=require("zod"),A=class n{constructor(t){this._transport=t}static SCHEMA=N.z.object({title:N.z.string().optional(),description:N.z.string().optional()});async send({id:t,body:e,request:s={},...o}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...s,method:"PATCH",headers:{...s.headers,"Content-Type":"application/json"},body:JSON.stringify(n.SCHEMA.parse(e))},o).then(r=>new at(r))}},at=class{constructor(t){this.response=t}async result(){return this.response.json()}};var P=class{constructor(t){this._transport=t}async send({id:t,request:e={},...s}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...e,method:"GET"},s).then(o=>new pt(o))}},pt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var _=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/messages",{...t,method:"GET"},e).then(s=>new ct(s))}},ct=class{constructor(t){this.response=t}async result(){return this.response.json()}};var T=require("zod"),v=class n{constructor(t){this._transport=t}static SCHEMA=T.z.object({input:T.z.string().max(65536),original:T.z.string().max(65536),correction:T.z.string().max(65536)});async send({id:t,body:e,request:s={},...o}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},body:JSON.stringify(n.SCHEMA.parse(e))},o).then(r=>new dt(r))}},dt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var E=class{constructor(t){this._transport=t}async send({id:t,request:e={},...s}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...e,method:"GET"},s).then(o=>new lt(o))}},lt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var q=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/models",{...t,method:"GET"},e).then(s=>new ut(s))}},ut=class{constructor(t){this.response=t}async result(){return this.response.json()}};var I=require("zod"),L=class n{constructor(t){this._transport=t}static SCHEMA=I.z.array(I.z.object({role:I.z.enum(["user","assistant"]),content:I.z.string().max(65536).nullable()})).min(1);async send({id:t,body:e,request:s={},...o}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},body:JSON.stringify(n.SCHEMA.parse(e))},o).then(r=>new mt(r))}},mt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var j=class n{constructor(t=n.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=It;async filter(t){return{...t,headers:{...t.headers,...this._standardHeaders}}}};var U=class{constructor(t){this._transport=t}async send({id:t,request:e={},...s}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...e,method:"GET"},s).then(o=>new gt(o))}},gt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var D=class{constructor(t){this._transport=t}async send({request:t={},...e}={}){return this._transport.send("v1/sources",{...t,method:"GET"},e).then(s=>new ft(s))}},ft=class{constructor(t){this.response=t}async result(){return this.response.json()}};var F=class{options;constructor({baseURL:t,...e}){this.options={...e,baseURL:t}}async _filterRequest(t){for(let e of this.options.requestFilterables)t=await e.filter(t);return t}async send(t,e,{fetch:s=fetch}={}){return await s(new Request(new URL(t,this.options.baseURL),await this._filterRequest(e)))}};var H=class n{static DEFAULT_BASE_URL=qt;_transport;constructor(t,{baseURL:e,...s}={}){this._transport=new F({requestFilterables:[new j,t],...s,baseURL:e?.toString()??n.getBaseURL()})}static getBaseURL(){return process.env.SUPPORT_BASE_URL??this.DEFAULT_BASE_URL}get action(){return{list:new c(this._transport)}}get channel(){return{list:new d(this._transport)}}get contact(){return{get:new u(this._transport),list:new m(this._transport),update:new f(this._transport),create:new l(this._transport)}}get conversation(){return{get:new y(this._transport),list:new h(this._transport),update:new x(this._transport),message:{list:new P(this._transport)}}}get label(){return{create:new C(this._transport),get:new S(this._transport),list:new w(this._transport),update:new A(this._transport),delete:new R(this._transport),conversation:{list:new b(this._transport)}}}get message(){return{list:new _(this._transport)}}get model(){return{get:new E(this._transport),list:new q(this._transport),response:{create:new L(this._transport)},correction:{create:new v(this._transport)}}}get source(){return{get:new U(this._transport),list:new D(this._transport)}}};var yt=require("commander"),Lt=require("ora");function ht({client:n,ora:t}){let e=new yt.Command("actions").description("Actions");return e.addCommand(new yt.Command("list").description("List actions").action(async()=>{let s=await(0,Lt.oraPromise)(()=>n.action.list.send(),{...t,text:"Finding actions"});console.log(await s.result())})),e}var bt=require("commander"),jt=require("ora");function xt({client:n,ora:t}){let e=new bt.Command("channels").description("Channels");return e.addCommand(new bt.Command("list").description("List channels").action(async()=>{let s=await(0,jt.oraPromise)(()=>n.channel.list.send(),{...t,text:"Finding channels"});console.log(await s.result())})),e}var G=require("commander"),Ot=require("ora");function Ct({client:n,ora:t}){let e=new G.Command("contacts").description("Contacts");return e.addCommand(new G.Command("get").description("Find contact").argument("<contact>","Contact ID").action(async s=>{let o=await(0,Ot.oraPromise)(()=>n.contact.get.send({id:s}),{...t,text:"Finding contact"});console.log(await o.result())})),e.addCommand(new G.Command("list").description("List contacts").action(async()=>{let s=await(0,Ot.oraPromise)(()=>n.contact.list.send(),{...t,text:"Finding contacts"});console.log(await s.result())})),e}var z=require("commander"),Rt=require("ora");function St({client:n,ora:t}){let e=new z.Command("conversations").description("Conversations");return e.addCommand(new z.Command("get").description("Find conversation").argument("<conversation>","Conversation ID").action(async s=>{let o=await(0,Rt.oraPromise)(()=>n.conversation.get.send({id:s}),{...t,text:"Finding conversation"});console.log(await o.result())})),e.addCommand(new z.Command("list").description("List conversations").action(async()=>{let s=await(0,Rt.oraPromise)(()=>n.conversation.list.send(),{...t,text:"Finding conversations"});console.log(await s.result())})),e}var M=require("commander"),B=require("ora");function wt({client:n,ora:t}){let e=new M.Command("labels").description("Labels");return e.addCommand(new M.Command("get").description("Find label").argument("<label>","Label ID").action(async s=>{let o=await(0,B.oraPromise)(()=>n.label.get.send({id:s}),{...t,text:"Finding label"});console.log(await o.result())})),e.addCommand(new M.Command("list").description("List labels").action(async()=>{let s=await(0,B.oraPromise)(()=>n.label.list.send(),{...t,text:"Finding labels"});console.log(await s.result())})),e.addCommand(new M.Command("conversations").description("Find label conversations").argument("<label>","Label ID").action(async s=>{let o=await(0,B.oraPromise)(()=>n.label.conversation.list.send({id:s}),{...t,text:"Finding conversations"});console.log(await o.result())})),e}var At=require("commander"),Ut=require("ora");function Pt({client:n,ora:t}){let e=new At.Command("messages").description("Messages");return e.addCommand(new At.Command("list").description("List messages").action(async()=>{let s=await(0,Ut.oraPromise)(()=>n.message.list.send(),{...t,text:"Finding messages"});console.log(await s.result())})),e}var J=require("commander"),_t=require("ora");function Tt({client:n,ora:t}){let e=new J.Command("models").description("Models");return e.addCommand(new J.Command("get").description("Find model").argument("<model>","Model ID").action(async s=>{let o=await(0,_t.oraPromise)(()=>n.model.get.send({id:s}),{...t,text:"Finding model"});console.log(await o.result())})),e.addCommand(new J.Command("list").description("List models").action(async()=>{let s=await(0,_t.oraPromise)(()=>n.model.list.send(),{...t,text:"Finding models"});console.log(await s.result())})),e}var K=require("commander"),vt=require("ora");function Et({client:n,ora:t}){let e=new K.Command("sources").description("Sources");return e.addCommand(new K.Command("get").description("Find source").argument("<source>","Source ID").action(async s=>{let o=await(0,vt.oraPromise)(()=>n.source.get.send({id:s}),{...t,text:"Finding source"});console.log(await o.result())})),e.addCommand(new K.Command("list").description("List sources").action(async()=>{let s=await(0,vt.oraPromise)(()=>n.source.list.send(),{...t,text:"Finding sources"});console.log(await s.result())})),e}var i={ora:{spinner:"simpleDotsScrolling"},client:new H(new p)},Ht=new Dt.Command("gds").description("Great Detail Support System").addCommand(ht(i)).addCommand(xt(i)).addCommand(Ct(i)).addCommand(St(i)).addCommand(wt(i)).addCommand(Pt(i)).addCommand(Tt(i)).addCommand(Et(i)),Ft=Ht;Ft.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-WZYR7OGA.js";import"./chunk-4DLAUWLS.js";r.parseAsync(process.argv);
2
+ import{a as r}from"./chunk-2RK4MX2V.js";import"./chunk-V75IMWOW.js";r.parseAsync(process.argv);
@@ -21,7 +21,7 @@ interface RequestFilterable {
21
21
  * @see https://greatdetail.com
22
22
  */
23
23
 
24
- interface Options$n {
24
+ interface Options$o {
25
25
  requestFilterables: RequestFilterable[];
26
26
  baseURL: string;
27
27
  }
@@ -36,8 +36,8 @@ interface SendOptions {
36
36
  fetch?: typeof fetch;
37
37
  }
38
38
  declare class Transport {
39
- options: Options$n;
40
- constructor({ baseURL, ...options }: Options$n);
39
+ options: Options$o;
40
+ constructor({ baseURL, ...options }: Options$o);
41
41
  protected _filterRequest(request: RequestInit): Promise<RequestInit>;
42
42
  send(url: string | URL, request: RequestInit, { fetch: fetchAlternative }?: SendOptions): Promise<Response>;
43
43
  }
@@ -51,13 +51,13 @@ declare class Transport {
51
51
  * @see https://greatdetail.com
52
52
  */
53
53
 
54
- interface Options$m extends SendOptions {
54
+ interface Options$n extends SendOptions {
55
55
  request?: RequestInit;
56
56
  }
57
57
  declare class ListActionsRequest {
58
58
  protected _transport: Transport;
59
59
  constructor(_transport: Transport);
60
- send({ request, ...options }?: Options$m): Promise<ListActionsResponse>;
60
+ send({ request, ...options }?: Options$n): Promise<ListActionsResponse>;
61
61
  }
62
62
  type ListActionsResponsePayload = {
63
63
  actions: {
@@ -99,13 +99,13 @@ type Authentication = RequestFilterable;
99
99
  * @see https://greatdetail.com
100
100
  */
101
101
 
102
- interface Options$l extends SendOptions {
102
+ interface Options$m extends SendOptions {
103
103
  request?: RequestInit;
104
104
  }
105
105
  declare class ListChannelsRequest {
106
106
  protected _transport: Transport;
107
107
  constructor(_transport: Transport);
108
- send({ request, ...options }?: Options$l): Promise<ListChannelsResponse>;
108
+ send({ request, ...options }?: Options$m): Promise<ListChannelsResponse>;
109
109
  }
110
110
  type ListChannelsResponsePayload = {
111
111
  channels: ({
@@ -137,6 +137,57 @@ declare class ListChannelsResponse {
137
137
  result(): Promise<ListChannelsResponsePayload>;
138
138
  }
139
139
 
140
+ /**
141
+ * Great Detail Support System.
142
+ *
143
+ * @copyright 2024 Great Detail Ltd
144
+ * @author Great Detail Ltd <info@greatdetail.com>
145
+ * @author Dom Webber <dom.webber@greatdetail.com>
146
+ * @see https://greatdetail.com
147
+ */
148
+
149
+ interface Options$l extends SendOptions {
150
+ body: z.infer<typeof CreateContactRequest.SCHEMA>;
151
+ request?: RequestInit;
152
+ }
153
+ declare class CreateContactRequest {
154
+ protected _transport: Transport;
155
+ static SCHEMA: z.ZodObject<{
156
+ name: z.ZodString;
157
+ account: z.ZodString;
158
+ emailAddress: z.ZodOptional<z.ZodString>;
159
+ telephoneNumber: z.ZodOptional<z.ZodString>;
160
+ }, "strip", z.ZodTypeAny, {
161
+ name: string;
162
+ account: string;
163
+ emailAddress?: string | undefined;
164
+ telephoneNumber?: string | undefined;
165
+ }, {
166
+ name: string;
167
+ account: string;
168
+ emailAddress?: string | undefined;
169
+ telephoneNumber?: string | undefined;
170
+ }>;
171
+ constructor(_transport: Transport);
172
+ send({ body, request, ...options }: Options$l): Promise<CreateContactResponse>;
173
+ }
174
+ type CreateContactResponsePayload = {
175
+ contact: {
176
+ id: string;
177
+ name?: string;
178
+ emailAddress?: string;
179
+ telephoneNumber?: string;
180
+ account: string;
181
+ createdAt: string;
182
+ updatedAt?: string;
183
+ };
184
+ };
185
+ declare class CreateContactResponse {
186
+ response: Response;
187
+ constructor(response: Response);
188
+ result(): Promise<CreateContactResponsePayload>;
189
+ }
190
+
140
191
  /**
141
192
  * Great Detail Support System.
142
193
  *
@@ -422,12 +473,12 @@ declare class CreateLabelRequest {
422
473
  description: z.ZodOptional<z.ZodString>;
423
474
  account: z.ZodString;
424
475
  }, "strip", z.ZodTypeAny, {
425
- title: string;
426
476
  account: string;
477
+ title: string;
427
478
  description?: string | undefined;
428
479
  }, {
429
- title: string;
430
480
  account: string;
481
+ title: string;
431
482
  description?: string | undefined;
432
483
  }>;
433
484
  constructor(_transport: Transport);
@@ -911,6 +962,7 @@ declare class Client {
911
962
  get: GetContactRequest;
912
963
  list: ListContactsRequest;
913
964
  update: UpdateContactRequest;
965
+ create: CreateContactRequest;
914
966
  };
915
967
  get conversation(): {
916
968
  get: GetConversationRequest;
@@ -949,4 +1001,4 @@ declare class Client {
949
1001
  };
950
1002
  }
951
1003
 
952
- export { type Authentication as A, Client as C, type DeleteLabelResponsePayload as D, type GetContactResponsePayload as G, type ListActionsResponsePayload as L, type Options as O, type RequestFilterable as R, type SendOptions as S, type UpdateContactResponsePayload as U, type Options$n as a, type ListChannelsResponsePayload as b, type ListContactsResponsePayload as c, type GetConversationResponsePayload as d, type ListConversationsResponsePayload as e, type ListLabelConversationsResponsePayload as f, type UpdateConversationResponsePayload as g, type CreateLabelResponsePayload as h, type GetLabelResponsePayload as i, type ListLabelsResponsePayload as j, type UpdateLabelResponsePayload as k, type ListConversationMessagesResponsePayload as l, type ListMessagesResponsePayload as m, type GetModelResponsePayload as n, type ListModelsResponsePayload as o, type CreateCorrectionResponsePayload as p, type CreateResponseResponsePayload as q, type GetSourceResponsePayload as r, type ListSourcesResponsePayload as s };
1004
+ export { type Authentication as A, Client as C, type DeleteLabelResponsePayload as D, type GetContactResponsePayload as G, type ListActionsResponsePayload as L, type Options as O, type RequestFilterable as R, type SendOptions as S, type UpdateContactResponsePayload as U, type Options$o as a, type ListChannelsResponsePayload as b, type ListContactsResponsePayload as c, type CreateContactResponsePayload as d, type GetConversationResponsePayload as e, type ListConversationsResponsePayload as f, type ListLabelConversationsResponsePayload as g, type UpdateConversationResponsePayload as h, type CreateLabelResponsePayload as i, type GetLabelResponsePayload as j, type ListLabelsResponsePayload as k, type UpdateLabelResponsePayload as l, type ListConversationMessagesResponsePayload as m, type ListMessagesResponsePayload as n, type GetModelResponsePayload as o, type ListModelsResponsePayload as p, type CreateCorrectionResponsePayload as q, type CreateResponseResponsePayload as r, type GetSourceResponsePayload as s, type ListSourcesResponsePayload as t };
@@ -21,7 +21,7 @@ interface RequestFilterable {
21
21
  * @see https://greatdetail.com
22
22
  */
23
23
 
24
- interface Options$n {
24
+ interface Options$o {
25
25
  requestFilterables: RequestFilterable[];
26
26
  baseURL: string;
27
27
  }
@@ -36,8 +36,8 @@ interface SendOptions {
36
36
  fetch?: typeof fetch;
37
37
  }
38
38
  declare class Transport {
39
- options: Options$n;
40
- constructor({ baseURL, ...options }: Options$n);
39
+ options: Options$o;
40
+ constructor({ baseURL, ...options }: Options$o);
41
41
  protected _filterRequest(request: RequestInit): Promise<RequestInit>;
42
42
  send(url: string | URL, request: RequestInit, { fetch: fetchAlternative }?: SendOptions): Promise<Response>;
43
43
  }
@@ -51,13 +51,13 @@ declare class Transport {
51
51
  * @see https://greatdetail.com
52
52
  */
53
53
 
54
- interface Options$m extends SendOptions {
54
+ interface Options$n extends SendOptions {
55
55
  request?: RequestInit;
56
56
  }
57
57
  declare class ListActionsRequest {
58
58
  protected _transport: Transport;
59
59
  constructor(_transport: Transport);
60
- send({ request, ...options }?: Options$m): Promise<ListActionsResponse>;
60
+ send({ request, ...options }?: Options$n): Promise<ListActionsResponse>;
61
61
  }
62
62
  type ListActionsResponsePayload = {
63
63
  actions: {
@@ -99,13 +99,13 @@ type Authentication = RequestFilterable;
99
99
  * @see https://greatdetail.com
100
100
  */
101
101
 
102
- interface Options$l extends SendOptions {
102
+ interface Options$m extends SendOptions {
103
103
  request?: RequestInit;
104
104
  }
105
105
  declare class ListChannelsRequest {
106
106
  protected _transport: Transport;
107
107
  constructor(_transport: Transport);
108
- send({ request, ...options }?: Options$l): Promise<ListChannelsResponse>;
108
+ send({ request, ...options }?: Options$m): Promise<ListChannelsResponse>;
109
109
  }
110
110
  type ListChannelsResponsePayload = {
111
111
  channels: ({
@@ -137,6 +137,57 @@ declare class ListChannelsResponse {
137
137
  result(): Promise<ListChannelsResponsePayload>;
138
138
  }
139
139
 
140
+ /**
141
+ * Great Detail Support System.
142
+ *
143
+ * @copyright 2024 Great Detail Ltd
144
+ * @author Great Detail Ltd <info@greatdetail.com>
145
+ * @author Dom Webber <dom.webber@greatdetail.com>
146
+ * @see https://greatdetail.com
147
+ */
148
+
149
+ interface Options$l extends SendOptions {
150
+ body: z.infer<typeof CreateContactRequest.SCHEMA>;
151
+ request?: RequestInit;
152
+ }
153
+ declare class CreateContactRequest {
154
+ protected _transport: Transport;
155
+ static SCHEMA: z.ZodObject<{
156
+ name: z.ZodString;
157
+ account: z.ZodString;
158
+ emailAddress: z.ZodOptional<z.ZodString>;
159
+ telephoneNumber: z.ZodOptional<z.ZodString>;
160
+ }, "strip", z.ZodTypeAny, {
161
+ name: string;
162
+ account: string;
163
+ emailAddress?: string | undefined;
164
+ telephoneNumber?: string | undefined;
165
+ }, {
166
+ name: string;
167
+ account: string;
168
+ emailAddress?: string | undefined;
169
+ telephoneNumber?: string | undefined;
170
+ }>;
171
+ constructor(_transport: Transport);
172
+ send({ body, request, ...options }: Options$l): Promise<CreateContactResponse>;
173
+ }
174
+ type CreateContactResponsePayload = {
175
+ contact: {
176
+ id: string;
177
+ name?: string;
178
+ emailAddress?: string;
179
+ telephoneNumber?: string;
180
+ account: string;
181
+ createdAt: string;
182
+ updatedAt?: string;
183
+ };
184
+ };
185
+ declare class CreateContactResponse {
186
+ response: Response;
187
+ constructor(response: Response);
188
+ result(): Promise<CreateContactResponsePayload>;
189
+ }
190
+
140
191
  /**
141
192
  * Great Detail Support System.
142
193
  *
@@ -422,12 +473,12 @@ declare class CreateLabelRequest {
422
473
  description: z.ZodOptional<z.ZodString>;
423
474
  account: z.ZodString;
424
475
  }, "strip", z.ZodTypeAny, {
425
- title: string;
426
476
  account: string;
477
+ title: string;
427
478
  description?: string | undefined;
428
479
  }, {
429
- title: string;
430
480
  account: string;
481
+ title: string;
431
482
  description?: string | undefined;
432
483
  }>;
433
484
  constructor(_transport: Transport);
@@ -911,6 +962,7 @@ declare class Client {
911
962
  get: GetContactRequest;
912
963
  list: ListContactsRequest;
913
964
  update: UpdateContactRequest;
965
+ create: CreateContactRequest;
914
966
  };
915
967
  get conversation(): {
916
968
  get: GetConversationRequest;
@@ -949,4 +1001,4 @@ declare class Client {
949
1001
  };
950
1002
  }
951
1003
 
952
- export { type Authentication as A, Client as C, type DeleteLabelResponsePayload as D, type GetContactResponsePayload as G, type ListActionsResponsePayload as L, type Options as O, type RequestFilterable as R, type SendOptions as S, type UpdateContactResponsePayload as U, type Options$n as a, type ListChannelsResponsePayload as b, type ListContactsResponsePayload as c, type GetConversationResponsePayload as d, type ListConversationsResponsePayload as e, type ListLabelConversationsResponsePayload as f, type UpdateConversationResponsePayload as g, type CreateLabelResponsePayload as h, type GetLabelResponsePayload as i, type ListLabelsResponsePayload as j, type UpdateLabelResponsePayload as k, type ListConversationMessagesResponsePayload as l, type ListMessagesResponsePayload as m, type GetModelResponsePayload as n, type ListModelsResponsePayload as o, type CreateCorrectionResponsePayload as p, type CreateResponseResponsePayload as q, type GetSourceResponsePayload as r, type ListSourcesResponsePayload as s };
1004
+ export { type Authentication as A, Client as C, type DeleteLabelResponsePayload as D, type GetContactResponsePayload as G, type ListActionsResponsePayload as L, type Options as O, type RequestFilterable as R, type SendOptions as S, type UpdateContactResponsePayload as U, type Options$o as a, type ListChannelsResponsePayload as b, type ListContactsResponsePayload as c, type CreateContactResponsePayload as d, type GetConversationResponsePayload as e, type ListConversationsResponsePayload as f, type ListLabelConversationsResponsePayload as g, type UpdateConversationResponsePayload as h, type CreateLabelResponsePayload as i, type GetLabelResponsePayload as j, type ListLabelsResponsePayload as k, type UpdateLabelResponsePayload as l, type ListConversationMessagesResponsePayload as m, type ListMessagesResponsePayload as n, type GetModelResponsePayload as o, type ListModelsResponsePayload as p, type CreateCorrectionResponsePayload as q, type CreateResponseResponsePayload as r, type GetSourceResponsePayload as s, type ListSourcesResponsePayload as t };
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var G=Object.defineProperty;var yt=Object.getOwnPropertyDescriptor;var ft=Object.getOwnPropertyNames;var ht=Object.prototype.hasOwnProperty;var Rt=(e,t)=>{for(var s in t)G(e,s,{get:t[s],enumerable:!0})},bt=(e,t,s,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of ft(t))!ht.call(e,r)&&r!==s&&G(e,r,{get:()=>t[r],enumerable:!(n=yt(t,r))||n.enumerable});return e};var xt=e=>bt(G({},"__esModule",{value:!0}),e);var At={};Rt(At,{Client:()=>i,DEFAULT_SUPPORT_BASE_URL:()=>M,KeyAuthentication:()=>j,PublicAuthentication:()=>D,TokenAuthentication:()=>N,default:()=>i});module.exports=xt(At);var M="https://api.support.greatdetail.com",dt={"X-Powered-By":"GDSupport/JavaScript"},lt="api-key",ut="SUPPORT_ACCESS_TOKEN",mt="SUPPORT_API_KEY",gt="SUPPORT_KEY_NAME";var p=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/actions",{...t,method:"GET"},s).then(n=>new F(n))}},F=class{constructor(t){this.response=t}async result(){return this.response.json()}};var a=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/channels",{...t,method:"GET"},s).then(n=>new z(n))}},z=class{constructor(t){this.response=t}async result(){return this.response.json()}};var c=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new K(r))}},K=class{constructor(t){this.response=t}async result(){return this.response.json()}};var d=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/contacts",{...t,method:"GET"},s).then(n=>new V(n))}},V=class{constructor(t){this.response=t}async result(){return this.response.json()}};var l=require("zod"),u=class e{constructor(t){this._transport=t}static SCHEMA=l.z.object({name:l.z.string().optional(),emailAddress:l.z.string().email().optional(),telephoneNumber:l.z.string().optional()});async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new B(o))}},B=class{constructor(t){this.response=t}async result(){return this.response.json()}};var m=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new k(r))}},k=class{constructor(t){this.response=t}async result(){return this.response.json()}};var g=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/conversations",{...t,method:"GET"},s).then(n=>new J(n))}},J=class{constructor(t){this.response=t}async result(){return this.response.json()}};var y=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...s,method:"GET"},n).then(r=>new Y(r))}},Y=class{constructor(t){this.response=t}async result(){return this.response.json()}};var $=require("zod"),f=class e{constructor(t){this._transport=t}static SCHEMA=$.z.object({hasEnded:$.z.boolean()});async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new W(o))}},W=class{constructor(t){this.response=t}async result(){return this.response.json()}};var h=require("zod"),R=class e{constructor(t){this._transport=t}static SCHEMA=h.z.object({title:h.z.string(),description:h.z.string().optional(),account:h.z.string()});async send({body:t,request:s={},...n}){return this._transport.send("v1/labels",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(t))},n).then(r=>new X(r))}},X=class{constructor(t){this.response=t}async result(){return this.response.json()}};var b=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...s,method:"DELETE"},n).then(r=>new Q(r))}},Q=class{constructor(t){this.response=t}async result(){return this.response.json()}};var x=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new Z(r))}},Z=class{constructor(t){this.response=t}async result(){return this.response.json()}};var A=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/labels",{...t,method:"GET"},s).then(n=>new tt(n))}},tt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var H=require("zod"),S=class e{constructor(t){this._transport=t}static SCHEMA=H.z.object({title:H.z.string().optional(),description:H.z.string().optional()});async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new et(o))}},et=class{constructor(t){this.response=t}async result(){return this.response.json()}};var C=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...s,method:"GET"},n).then(r=>new st(r))}},st=class{constructor(t){this.response=t}async result(){return this.response.json()}};var O=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/messages",{...t,method:"GET"},s).then(n=>new nt(n))}},nt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var P=require("zod"),_=class e{constructor(t){this._transport=t}static SCHEMA=P.z.object({input:P.z.string().max(65536),original:P.z.string().max(65536),correction:P.z.string().max(65536)});async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new rt(o))}},rt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var E=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new ot(r))}},ot=class{constructor(t){this.response=t}async result(){return this.response.json()}};var T=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/models",{...t,method:"GET"},s).then(n=>new it(n))}},it=class{constructor(t){this.response=t}async result(){return this.response.json()}};var v=require("zod"),w=class e{constructor(t){this._transport=t}static SCHEMA=v.z.array(v.z.object({role:v.z.enum(["user","assistant"]),content:v.z.string().max(65536).nullable()})).min(1);async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new pt(o))}},pt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var q=class e{constructor(t=e.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=dt;async filter(t){return{...t,headers:{...t.headers,...this._standardHeaders}}}};var L=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new at(r))}},at=class{constructor(t){this.response=t}async result(){return this.response.json()}};var U=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/sources",{...t,method:"GET"},s).then(n=>new ct(n))}},ct=class{constructor(t){this.response=t}async result(){return this.response.json()}};var I=class{options;constructor({baseURL:t,...s}){this.options={...s,baseURL:t}}async _filterRequest(t){for(let s of this.options.requestFilterables)t=await s.filter(t);return t}async send(t,s,{fetch:n=fetch}={}){return await n(new Request(new URL(t,this.options.baseURL),await this._filterRequest(s)))}};var i=class e{static DEFAULT_BASE_URL=M;_transport;constructor(t,{baseURL:s,...n}={}){this._transport=new I({requestFilterables:[new q,t],...n,baseURL:s?.toString()??e.getBaseURL()})}static getBaseURL(){return process.env.SUPPORT_BASE_URL??this.DEFAULT_BASE_URL}get action(){return{list:new p(this._transport)}}get channel(){return{list:new a(this._transport)}}get contact(){return{get:new c(this._transport),list:new d(this._transport),update:new u(this._transport)}}get conversation(){return{get:new m(this._transport),list:new g(this._transport),update:new f(this._transport),message:{list:new C(this._transport)}}}get label(){return{create:new R(this._transport),get:new x(this._transport),list:new A(this._transport),update:new S(this._transport),delete:new b(this._transport),conversation:{list:new y(this._transport)}}}get message(){return{list:new O(this._transport)}}get model(){return{get:new E(this._transport),list:new T(this._transport),response:{create:new w(this._transport)},correction:{create:new _(this._transport)}}}get source(){return{get:new L(this._transport),list:new U(this._transport)}}};var j=class e{static DEFAULT_NAME=lt;name;#t;constructor({name:t=process.env[gt]??e.DEFAULT_NAME,key:s=process.env[mt]}={}){if(!s)throw new Error("API Key option must be specified when using Key Authentication");this.name=t,this.#t=s}async filter(t){return{...t,headers:{...t.headers,Authorization:`Basic ${btoa(this.name+":"+this.#t)}`}}}};var N=class{#t;constructor({token:t=process.env[ut]}={}){if(!t)throw new Error("Access Token option must be specified when using Token Authentication");this.#t=t}async filter(t){return{...t,headers:{...t.headers,Authorization:`Bearer ${this.#t}`}}}};var D=class{async filter(t){return t}};0&&(module.exports={Client,DEFAULT_SUPPORT_BASE_URL,KeyAuthentication,PublicAuthentication,TokenAuthentication});
1
+ "use strict";var z=Object.defineProperty;var bt=Object.getOwnPropertyDescriptor;var Rt=Object.getOwnPropertyNames;var xt=Object.prototype.hasOwnProperty;var At=(e,t)=>{for(var s in t)z(e,s,{get:t[s],enumerable:!0})},St=(e,t,s,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Rt(t))!xt.call(e,r)&&r!==s&&z(e,r,{get:()=>t[r],enumerable:!(n=bt(t,r))||n.enumerable});return e};var Ot=e=>St(z({},"__esModule",{value:!0}),e);var Pt={};At(Pt,{Client:()=>p,DEFAULT_SUPPORT_BASE_URL:()=>G,KeyAuthentication:()=>M,PublicAuthentication:()=>H,TokenAuthentication:()=>D,default:()=>p});module.exports=Ot(Pt);var G="https://api.support.greatdetail.com",mt={"X-Powered-By":"GDSupport/JavaScript"},gt="api-key",yt="SUPPORT_ACCESS_TOKEN",ft="SUPPORT_API_KEY",ht="SUPPORT_KEY_NAME";var a=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/actions",{...t,method:"GET"},s).then(n=>new K(n))}},K=class{constructor(t){this.response=t}async result(){return this.response.json()}};var c=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/channels",{...t,method:"GET"},s).then(n=>new V(n))}},V=class{constructor(t){this.response=t}async result(){return this.response.json()}};var i=require("zod"),d=class e{constructor(t){this._transport=t}static SCHEMA=i.z.object({name:i.z.string(),account:i.z.string(),emailAddress:i.z.string().email().optional(),telephoneNumber:i.z.string().optional()});async send({body:t,request:s={},...n}){return this._transport.send("v1/contacts",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(t))},n).then(r=>new B(r))}},B=class{constructor(t){this.response=t}async result(){return this.response.json()}};var u=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new J(r))}},J=class{constructor(t){this.response=t}async result(){return this.response.json()}};var l=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/contacts",{...t,method:"GET"},s).then(n=>new k(n))}},k=class{constructor(t){this.response=t}async result(){return this.response.json()}};var m=require("zod"),g=class e{constructor(t){this._transport=t}static SCHEMA=m.z.object({name:m.z.string().optional(),emailAddress:m.z.string().email().optional(),telephoneNumber:m.z.string().optional()});async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new Y(o))}},Y=class{constructor(t){this.response=t}async result(){return this.response.json()}};var y=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new $(r))}},$=class{constructor(t){this.response=t}async result(){return this.response.json()}};var f=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/conversations",{...t,method:"GET"},s).then(n=>new W(n))}},W=class{constructor(t){this.response=t}async result(){return this.response.json()}};var h=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...s,method:"GET"},n).then(r=>new X(r))}},X=class{constructor(t){this.response=t}async result(){return this.response.json()}};var Q=require("zod"),b=class e{constructor(t){this._transport=t}static SCHEMA=Q.z.object({hasEnded:Q.z.boolean()});async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new Z(o))}},Z=class{constructor(t){this.response=t}async result(){return this.response.json()}};var R=require("zod"),x=class e{constructor(t){this._transport=t}static SCHEMA=R.z.object({title:R.z.string(),description:R.z.string().optional(),account:R.z.string()});async send({body:t,request:s={},...n}){return this._transport.send("v1/labels",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(t))},n).then(r=>new tt(r))}},tt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var A=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...s,method:"DELETE"},n).then(r=>new et(r))}},et=class{constructor(t){this.response=t}async result(){return this.response.json()}};var S=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new st(r))}},st=class{constructor(t){this.response=t}async result(){return this.response.json()}};var O=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/labels",{...t,method:"GET"},s).then(n=>new nt(n))}},nt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var F=require("zod"),P=class e{constructor(t){this._transport=t}static SCHEMA=F.z.object({title:F.z.string().optional(),description:F.z.string().optional()});async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new rt(o))}},rt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var C=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...s,method:"GET"},n).then(r=>new ot(r))}},ot=class{constructor(t){this.response=t}async result(){return this.response.json()}};var _=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/messages",{...t,method:"GET"},s).then(n=>new it(n))}},it=class{constructor(t){this.response=t}async result(){return this.response.json()}};var T=require("zod"),E=class e{constructor(t){this._transport=t}static SCHEMA=T.z.object({input:T.z.string().max(65536),original:T.z.string().max(65536),correction:T.z.string().max(65536)});async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new pt(o))}},pt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var v=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new at(r))}},at=class{constructor(t){this.response=t}async result(){return this.response.json()}};var w=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/models",{...t,method:"GET"},s).then(n=>new ct(n))}},ct=class{constructor(t){this.response=t}async result(){return this.response.json()}};var q=require("zod"),L=class e{constructor(t){this._transport=t}static SCHEMA=q.z.array(q.z.object({role:q.z.enum(["user","assistant"]),content:q.z.string().max(65536).nullable()})).min(1);async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new dt(o))}},dt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var U=class e{constructor(t=e.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=mt;async filter(t){return{...t,headers:{...t.headers,...this._standardHeaders}}}};var I=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new ut(r))}},ut=class{constructor(t){this.response=t}async result(){return this.response.json()}};var j=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/sources",{...t,method:"GET"},s).then(n=>new lt(n))}},lt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var N=class{options;constructor({baseURL:t,...s}){this.options={...s,baseURL:t}}async _filterRequest(t){for(let s of this.options.requestFilterables)t=await s.filter(t);return t}async send(t,s,{fetch:n=fetch}={}){return await n(new Request(new URL(t,this.options.baseURL),await this._filterRequest(s)))}};var p=class e{static DEFAULT_BASE_URL=G;_transport;constructor(t,{baseURL:s,...n}={}){this._transport=new N({requestFilterables:[new U,t],...n,baseURL:s?.toString()??e.getBaseURL()})}static getBaseURL(){return process.env.SUPPORT_BASE_URL??this.DEFAULT_BASE_URL}get action(){return{list:new a(this._transport)}}get channel(){return{list:new c(this._transport)}}get contact(){return{get:new u(this._transport),list:new l(this._transport),update:new g(this._transport),create:new d(this._transport)}}get conversation(){return{get:new y(this._transport),list:new f(this._transport),update:new b(this._transport),message:{list:new C(this._transport)}}}get label(){return{create:new x(this._transport),get:new S(this._transport),list:new O(this._transport),update:new P(this._transport),delete:new A(this._transport),conversation:{list:new h(this._transport)}}}get message(){return{list:new _(this._transport)}}get model(){return{get:new v(this._transport),list:new w(this._transport),response:{create:new L(this._transport)},correction:{create:new E(this._transport)}}}get source(){return{get:new I(this._transport),list:new j(this._transport)}}};var M=class e{static DEFAULT_NAME=gt;name;#t;constructor({name:t=process.env[ht]??e.DEFAULT_NAME,key:s=process.env[ft]}={}){if(!s)throw new Error("API Key option must be specified when using Key Authentication");this.name=t,this.#t=s}async filter(t){return{...t,headers:{...t.headers,Authorization:`Basic ${btoa(this.name+":"+this.#t)}`}}}};var D=class{#t;constructor({token:t=process.env[yt]}={}){if(!t)throw new Error("Access Token option must be specified when using Token Authentication");this.#t=t}async filter(t){return{...t,headers:{...t.headers,Authorization:`Bearer ${this.#t}`}}}};var H=class{async filter(t){return t}};0&&(module.exports={Client,DEFAULT_SUPPORT_BASE_URL,KeyAuthentication,PublicAuthentication,TokenAuthentication});
package/dist/index.d.cts CHANGED
@@ -1,5 +1,5 @@
1
- import { A as Authentication } from './index-6KJofFiG.cjs';
2
- export { C as Client, p as CreateCorrectionResponsePayload, h as CreateLabelResponsePayload, q as CreateResponseResponsePayload, D as DeleteLabelResponsePayload, G as GetContactResponsePayload, d as GetConversationResponsePayload, i as GetLabelResponsePayload, n as GetModelResponsePayload, r as GetSourceResponsePayload, L as ListActionsResponsePayload, b as ListChannelsResponsePayload, c as ListContactsResponsePayload, l as ListConversationMessagesResponsePayload, e as ListConversationsResponsePayload, f as ListLabelConversationsResponsePayload, j as ListLabelsResponsePayload, m as ListMessagesResponsePayload, o as ListModelsResponsePayload, s as ListSourcesResponsePayload, O as Options, R as RequestFilterable, a as TransportOptions, S as TransportSendOptions, U as UpdateContactResponsePayload, g as UpdateConversationResponsePayload, k as UpdateLabelResponsePayload, C as default } from './index-6KJofFiG.cjs';
1
+ import { A as Authentication } from './index-BdOHDvcP.cjs';
2
+ export { C as Client, d as CreateContactResponsePayload, q as CreateCorrectionResponsePayload, i as CreateLabelResponsePayload, r as CreateResponseResponsePayload, D as DeleteLabelResponsePayload, G as GetContactResponsePayload, e as GetConversationResponsePayload, j as GetLabelResponsePayload, o as GetModelResponsePayload, s as GetSourceResponsePayload, L as ListActionsResponsePayload, b as ListChannelsResponsePayload, c as ListContactsResponsePayload, m as ListConversationMessagesResponsePayload, f as ListConversationsResponsePayload, g as ListLabelConversationsResponsePayload, k as ListLabelsResponsePayload, n as ListMessagesResponsePayload, p as ListModelsResponsePayload, t as ListSourcesResponsePayload, O as Options, R as RequestFilterable, a as TransportOptions, S as TransportSendOptions, U as UpdateContactResponsePayload, h as UpdateConversationResponsePayload, l as UpdateLabelResponsePayload, C as default } from './index-BdOHDvcP.cjs';
3
3
  import 'zod';
4
4
 
5
5
  /**
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { A as Authentication } from './index-6KJofFiG.js';
2
- export { C as Client, p as CreateCorrectionResponsePayload, h as CreateLabelResponsePayload, q as CreateResponseResponsePayload, D as DeleteLabelResponsePayload, G as GetContactResponsePayload, d as GetConversationResponsePayload, i as GetLabelResponsePayload, n as GetModelResponsePayload, r as GetSourceResponsePayload, L as ListActionsResponsePayload, b as ListChannelsResponsePayload, c as ListContactsResponsePayload, l as ListConversationMessagesResponsePayload, e as ListConversationsResponsePayload, f as ListLabelConversationsResponsePayload, j as ListLabelsResponsePayload, m as ListMessagesResponsePayload, o as ListModelsResponsePayload, s as ListSourcesResponsePayload, O as Options, R as RequestFilterable, a as TransportOptions, S as TransportSendOptions, U as UpdateContactResponsePayload, g as UpdateConversationResponsePayload, k as UpdateLabelResponsePayload, C as default } from './index-6KJofFiG.js';
1
+ import { A as Authentication } from './index-BdOHDvcP.js';
2
+ export { C as Client, d as CreateContactResponsePayload, q as CreateCorrectionResponsePayload, i as CreateLabelResponsePayload, r as CreateResponseResponsePayload, D as DeleteLabelResponsePayload, G as GetContactResponsePayload, e as GetConversationResponsePayload, j as GetLabelResponsePayload, o as GetModelResponsePayload, s as GetSourceResponsePayload, L as ListActionsResponsePayload, b as ListChannelsResponsePayload, c as ListContactsResponsePayload, m as ListConversationMessagesResponsePayload, f as ListConversationsResponsePayload, g as ListLabelConversationsResponsePayload, k as ListLabelsResponsePayload, n as ListMessagesResponsePayload, p as ListModelsResponsePayload, t as ListSourcesResponsePayload, O as Options, R as RequestFilterable, a as TransportOptions, S as TransportSendOptions, U as UpdateContactResponsePayload, h as UpdateConversationResponsePayload, l as UpdateLabelResponsePayload, C as default } from './index-BdOHDvcP.js';
3
3
  import 'zod';
4
4
 
5
5
  /**
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import{a as y,b as p,c as a,d as n,e as i,f as l,g as f}from"./chunk-4DLAUWLS.js";var t=class s{static DEFAULT_NAME=p;name;#e;constructor({name:e=process.env[i]??s.DEFAULT_NAME,key:r=process.env[n]}={}){if(!r)throw new Error("API Key option must be specified when using Key Authentication");this.name=e,this.#e=r}async filter(e){return{...e,headers:{...e.headers,Authorization:`Basic ${btoa(this.name+":"+this.#e)}`}}}};var o=class{#e;constructor({token:e=process.env[a]}={}){if(!e)throw new Error("Access Token option must be specified when using Token Authentication");this.#e=e}async filter(e){return{...e,headers:{...e.headers,Authorization:`Bearer ${this.#e}`}}}};export{l as Client,y as DEFAULT_SUPPORT_BASE_URL,t as KeyAuthentication,f as PublicAuthentication,o as TokenAuthentication,l as default};
1
+ import{a as y,b as a,c as p,d as n,e as i,f as l,g as f}from"./chunk-V75IMWOW.js";var t=class s{static DEFAULT_NAME=a;name;#e;constructor({name:e=process.env[i]??s.DEFAULT_NAME,key:r=process.env[n]}={}){if(!r)throw new Error("API Key option must be specified when using Key Authentication");this.name=e,this.#e=r}async filter(e){return{...e,headers:{...e.headers,Authorization:`Basic ${btoa(this.name+":"+this.#e)}`}}}};var o=class{#e;constructor({token:e=process.env[p]}={}){if(!e)throw new Error("Access Token option must be specified when using Token Authentication");this.#e=e}async filter(e){return{...e,headers:{...e.headers,Authorization:`Bearer ${this.#e}`}}}};export{l as Client,y as DEFAULT_SUPPORT_BASE_URL,t as KeyAuthentication,f as PublicAuthentication,o as TokenAuthentication,l as default};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@great-detail/support-sdk",
3
- "version": "0.1.1",
3
+ "version": "0.1.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>",
@@ -7,14 +7,14 @@
7
7
  * @see https://greatdetail.com
8
8
  */
9
9
 
10
- import Client, { SendOptions } from "../Transport/index.js";
10
+ import Transport, { SendOptions } from "../Transport/index.js";
11
11
 
12
12
  export interface Options extends SendOptions {
13
13
  request?: RequestInit;
14
14
  }
15
15
 
16
16
  export default class ListActionsRequest {
17
- constructor(protected _transport: Client) {}
17
+ constructor(protected _transport: Transport) {}
18
18
 
19
19
  public async send({ request = {}, ...options }: Options = {}) {
20
20
  return this._transport
@@ -7,14 +7,14 @@
7
7
  * @see https://greatdetail.com
8
8
  */
9
9
 
10
- import Client, { SendOptions } from "../Transport/index.js";
10
+ import Transport, { SendOptions } from "../Transport/index.js";
11
11
 
12
12
  export interface Options extends SendOptions {
13
13
  request?: RequestInit;
14
14
  }
15
15
 
16
16
  export default class ListChannelsRequest {
17
- constructor(protected _transport: Client) {}
17
+ constructor(protected _transport: Transport) {}
18
18
 
19
19
  public async send({ request = {}, ...options }: Options = {}) {
20
20
  return this._transport
@@ -11,6 +11,7 @@ import ListActionsRequest from "../Action/ListActions.js";
11
11
  import Authentication from "../Authentication/index.js";
12
12
  import ListChannelsRequest from "../Channel/ListChannels.js";
13
13
  import { DEFAULT_SUPPORT_BASE_URL } from "../constants/index.js";
14
+ import CreateContactRequest from "../Contact/CreateContact.js";
14
15
  import GetContactRequest from "../Contact/GetContact.js";
15
16
  import ListContactsRequest from "../Contact/ListContacts.js";
16
17
  import UpdateContactRequest from "../Contact/UpdateContact.js";
@@ -75,6 +76,7 @@ export default class Client {
75
76
  get: new GetContactRequest(this._transport),
76
77
  list: new ListContactsRequest(this._transport),
77
78
  update: new UpdateContactRequest(this._transport),
79
+ create: new CreateContactRequest(this._transport),
78
80
  };
79
81
  }
80
82
 
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Great Detail Support System.
3
+ *
4
+ * @copyright 2024 Great Detail Ltd
5
+ * @author Great Detail Ltd <info@greatdetail.com>
6
+ * @author Dom Webber <dom.webber@greatdetail.com>
7
+ * @see https://greatdetail.com
8
+ */
9
+
10
+ import { z } from "zod";
11
+ import Transport, { SendOptions } from "../Transport/index.js";
12
+
13
+ export interface Options extends SendOptions {
14
+ body: z.infer<typeof CreateContactRequest.SCHEMA>;
15
+ request?: RequestInit;
16
+ }
17
+
18
+ export default class CreateContactRequest {
19
+ public static SCHEMA = z.object({
20
+ name: z.string(),
21
+ account: z.string(),
22
+ emailAddress: z.string().email().optional(),
23
+ telephoneNumber: z.string().optional(),
24
+ });
25
+
26
+ constructor(protected _transport: Transport) {}
27
+
28
+ public async send({ body, request = {}, ...options }: Options) {
29
+ return this._transport
30
+ .send(
31
+ "v1/contacts",
32
+ {
33
+ ...request,
34
+ method: "POST",
35
+ headers: {
36
+ ...request.headers,
37
+ "Content-Type": "application/json",
38
+ },
39
+ body: JSON.stringify(CreateContactRequest.SCHEMA.parse(body)),
40
+ },
41
+ options,
42
+ )
43
+ .then((response) => new CreateContactResponse(response));
44
+ }
45
+ }
46
+
47
+ export type CreateContactResponsePayload = {
48
+ contact: {
49
+ id: string;
50
+ name?: string;
51
+ emailAddress?: string;
52
+ telephoneNumber?: string;
53
+ account: string;
54
+ createdAt: string;
55
+ updatedAt?: string;
56
+ };
57
+ };
58
+
59
+ export class CreateContactResponse {
60
+ constructor(public response: Response) {}
61
+
62
+ public async result(): Promise<CreateContactResponsePayload> {
63
+ return this.response.json();
64
+ }
65
+ }
@@ -7,7 +7,7 @@
7
7
  * @see https://greatdetail.com
8
8
  */
9
9
 
10
- import Client, { SendOptions } from "../Transport/index.js";
10
+ import Transport, { SendOptions } from "../Transport/index.js";
11
11
 
12
12
  export interface Options extends SendOptions {
13
13
  id: string;
@@ -15,7 +15,7 @@ export interface Options extends SendOptions {
15
15
  }
16
16
 
17
17
  export default class GetContactRequest {
18
- constructor(protected _transport: Client) {}
18
+ constructor(protected _transport: Transport) {}
19
19
 
20
20
  public async send({ id, request = {}, ...options }: Options) {
21
21
  return this._transport
@@ -7,14 +7,14 @@
7
7
  * @see https://greatdetail.com
8
8
  */
9
9
 
10
- import Client, { SendOptions } from "../Transport/index.js";
10
+ import Transport, { SendOptions } from "../Transport/index.js";
11
11
 
12
12
  export interface Options extends SendOptions {
13
13
  request?: RequestInit;
14
14
  }
15
15
 
16
16
  export default class ListContactsRequest {
17
- constructor(protected _transport: Client) {}
17
+ constructor(protected _transport: Transport) {}
18
18
 
19
19
  public async send({ request = {}, ...options }: Options = {}) {
20
20
  return this._transport
@@ -8,7 +8,7 @@
8
8
  */
9
9
 
10
10
  import { z } from "zod";
11
- import Client, { SendOptions } from "../Transport/index.js";
11
+ import Transport, { SendOptions } from "../Transport/index.js";
12
12
 
13
13
  export interface Options extends SendOptions {
14
14
  id: string;
@@ -23,7 +23,7 @@ export default class UpdateContactRequest {
23
23
  telephoneNumber: z.string().optional(),
24
24
  });
25
25
 
26
- constructor(protected _transport: Client) {}
26
+ constructor(protected _transport: Transport) {}
27
27
 
28
28
  public async send({ id, body, request = {}, ...options }: Options) {
29
29
  return this._transport
@@ -7,7 +7,7 @@
7
7
  * @see https://greatdetail.com
8
8
  */
9
9
 
10
- import Client, { SendOptions } from "../Transport/index.js";
10
+ import Transport, { SendOptions } from "../Transport/index.js";
11
11
 
12
12
  export interface Options extends SendOptions {
13
13
  id: string;
@@ -15,7 +15,7 @@ export interface Options extends SendOptions {
15
15
  }
16
16
 
17
17
  export default class GetConversationRequest {
18
- constructor(protected _transport: Client) {}
18
+ constructor(protected _transport: Transport) {}
19
19
 
20
20
  public async send({ id, request = {}, ...options }: Options) {
21
21
  return this._transport
@@ -7,14 +7,14 @@
7
7
  * @see https://greatdetail.com
8
8
  */
9
9
 
10
- import Client, { SendOptions } from "../Transport/index.js";
10
+ import Transport, { SendOptions } from "../Transport/index.js";
11
11
 
12
12
  export interface Options extends SendOptions {
13
13
  request?: RequestInit;
14
14
  }
15
15
 
16
16
  export default class ListConversationsRequest {
17
- constructor(protected _transport: Client) {}
17
+ constructor(protected _transport: Transport) {}
18
18
 
19
19
  public async send({ request = {}, ...options }: Options = {}) {
20
20
  return this._transport
@@ -7,7 +7,7 @@
7
7
  * @see https://greatdetail.com
8
8
  */
9
9
 
10
- import Client, { SendOptions } from "../Transport/index.js";
10
+ import Transport, { SendOptions } from "../Transport/index.js";
11
11
 
12
12
  export interface Options extends SendOptions {
13
13
  id: string;
@@ -15,7 +15,7 @@ export interface Options extends SendOptions {
15
15
  }
16
16
 
17
17
  export default class ListLabelConversations {
18
- constructor(protected _transport: Client) {}
18
+ constructor(protected _transport: Transport) {}
19
19
 
20
20
  public async send({ id, request = {}, ...options }: Options) {
21
21
  return this._transport
@@ -8,7 +8,7 @@
8
8
  */
9
9
 
10
10
  import { z } from "zod";
11
- import Client, { SendOptions } from "../Transport/index.js";
11
+ import Transport, { SendOptions } from "../Transport/index.js";
12
12
 
13
13
  export interface Options extends SendOptions {
14
14
  id: string;
@@ -21,7 +21,7 @@ export default class UpdateConversationRequest {
21
21
  hasEnded: z.boolean(),
22
22
  });
23
23
 
24
- constructor(protected _transport: Client) {}
24
+ constructor(protected _transport: Transport) {}
25
25
 
26
26
  public async send({ id, body, request = {}, ...options }: Options) {
27
27
  return this._transport
@@ -8,7 +8,7 @@
8
8
  */
9
9
 
10
10
  import { z } from "zod";
11
- import Client, { SendOptions } from "../Transport/index.js";
11
+ import Transport, { SendOptions } from "../Transport/index.js";
12
12
 
13
13
  export interface Options extends SendOptions {
14
14
  body: z.infer<typeof CreateLabelRequest.SCHEMA>;
@@ -22,7 +22,7 @@ export default class CreateLabelRequest {
22
22
  account: z.string(),
23
23
  });
24
24
 
25
- constructor(protected _transport: Client) {}
25
+ constructor(protected _transport: Transport) {}
26
26
 
27
27
  public async send({ body, request = {}, ...options }: Options) {
28
28
  return this._transport
@@ -7,7 +7,7 @@
7
7
  * @see https://greatdetail.com
8
8
  */
9
9
 
10
- import Client, { SendOptions } from "../Transport/index.js";
10
+ import Transport, { SendOptions } from "../Transport/index.js";
11
11
 
12
12
  export interface Options extends SendOptions {
13
13
  id: string;
@@ -15,7 +15,7 @@ export interface Options extends SendOptions {
15
15
  }
16
16
 
17
17
  export default class DeleteLabelRequest {
18
- constructor(protected _transport: Client) {}
18
+ constructor(protected _transport: Transport) {}
19
19
 
20
20
  public async send({ id, request = {}, ...options }: Options) {
21
21
  return this._transport
@@ -7,7 +7,7 @@
7
7
  * @see https://greatdetail.com
8
8
  */
9
9
 
10
- import Client, { SendOptions } from "../Transport/index.js";
10
+ import Transport, { SendOptions } from "../Transport/index.js";
11
11
 
12
12
  export interface Options extends SendOptions {
13
13
  id: string;
@@ -15,7 +15,7 @@ export interface Options extends SendOptions {
15
15
  }
16
16
 
17
17
  export default class GetLabelRequest {
18
- constructor(protected _transport: Client) {}
18
+ constructor(protected _transport: Transport) {}
19
19
 
20
20
  public async send({ id, request = {}, ...options }: Options) {
21
21
  return this._transport
package/src/index.ts CHANGED
@@ -34,6 +34,7 @@ export { type ListChannelsResponsePayload } from "./Channel/ListChannels.js";
34
34
  export { type GetContactResponsePayload } from "./Contact/GetContact.js";
35
35
  export { type ListContactsResponsePayload } from "./Contact/ListContacts.js";
36
36
  export { type UpdateContactResponsePayload } from "./Contact/UpdateContact.js";
37
+ export { type CreateContactResponsePayload } from "./Contact/CreateContact.js";
37
38
 
38
39
  // Conversations
39
40
  export { type GetConversationResponsePayload } from "./Conversation/GetConversation.js";
@@ -1 +0,0 @@
1
- var ot="https://api.support.greatdetail.com",it={"X-Powered-By":"GDSupport/JavaScript"},at="api-key",ct="SUPPORT_ACCESS_TOKEN",dt="SUPPORT_API_KEY",lt="SUPPORT_KEY_NAME";var i=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/actions",{...t,method:"GET"},s).then(n=>new L(n))}},L=class{constructor(t){this.response=t}async result(){return this.response.json()}};var p=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/channels",{...t,method:"GET"},s).then(n=>new j(n))}},j=class{constructor(t){this.response=t}async result(){return this.response.json()}};var a=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new H(r))}},H=class{constructor(t){this.response=t}async result(){return this.response.json()}};var c=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/contacts",{...t,method:"GET"},s).then(n=>new D(n))}},D=class{constructor(t){this.response=t}async result(){return this.response.json()}};import{z as w}from"zod";var d=class e{constructor(t){this._transport=t}static SCHEMA=w.object({name:w.string().optional(),emailAddress:w.string().email().optional(),telephoneNumber:w.string().optional()});async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/contacts/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new M(o))}},M=class{constructor(t){this.response=t}async result(){return this.response.json()}};var l=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new N(r))}},N=class{constructor(t){this.response=t}async result(){return this.response.json()}};var u=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/conversations",{...t,method:"GET"},s).then(n=>new G(n))}},G=class{constructor(t){this.response=t}async result(){return this.response.json()}};var g=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t)+"/conversations",{...s,method:"GET"},n).then(r=>new z(r))}},z=class{constructor(t){this.response=t}async result(){return this.response.json()}};import{z as pt}from"zod";var m=class e{constructor(t){this._transport=t}static SCHEMA=pt.object({hasEnded:pt.boolean()});async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/conversations/"+encodeURIComponent(t),{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new F(o))}},F=class{constructor(t){this.response=t}async result(){return this.response.json()}};import{z as q}from"zod";var h=class e{constructor(t){this._transport=t}static SCHEMA=q.object({title:q.string(),description:q.string().optional(),account:q.string()});async send({body:t,request:s={},...n}){return this._transport.send("v1/labels",{...s,method:"POST",headers:{...s.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(t))},n).then(r=>new B(r))}},B=class{constructor(t){this.response=t}async result(){return this.response.json()}};var b=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...s,method:"DELETE"},n).then(r=>new J(r))}},J=class{constructor(t){this.response=t}async result(){return this.response.json()}};var y=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new K(r))}},K=class{constructor(t){this.response=t}async result(){return this.response.json()}};var f=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/labels",{...t,method:"GET"},s).then(n=>new V(n))}},V=class{constructor(t){this.response=t}async result(){return this.response.json()}};import{z as Y}from"zod";var R=class e{constructor(t){this._transport=t}static SCHEMA=Y.object({title:Y.string().optional(),description:Y.string().optional()});async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/labels/"+encodeURIComponent(t),{...n,method:"PATCH",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new k(o))}},k=class{constructor(t){this.response=t}async result(){return this.response.json()}};var x=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/conversations/"+encodeURIComponent(t)+"/messages",{...s,method:"GET"},n).then(r=>new W(r))}},W=class{constructor(t){this.response=t}async result(){return this.response.json()}};var S=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/messages",{...t,method:"GET"},s).then(n=>new X(n))}},X=class{constructor(t){this.response=t}async result(){return this.response.json()}};import{z as I}from"zod";var C=class e{constructor(t){this._transport=t}static SCHEMA=I.object({input:I.string().max(65536),original:I.string().max(65536),correction:I.string().max(65536)});async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/correction",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new Q(o))}},Q=class{constructor(t){this.response=t}async result(){return this.response.json()}};var O=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/models/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new Z(r))}},Z=class{constructor(t){this.response=t}async result(){return this.response.json()}};var A=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/models",{...t,method:"GET"},s).then(n=>new $(n))}},$=class{constructor(t){this.response=t}async result(){return this.response.json()}};import{z as U}from"zod";var _=class e{constructor(t){this._transport=t}static SCHEMA=U.array(U.object({role:U.enum(["user","assistant"]),content:U.string().max(65536).nullable()})).min(1);async send({id:t,body:s,request:n={},...r}){return this._transport.send("v1/models/"+encodeURIComponent(t)+"/response",{...n,method:"POST",headers:{...n.headers,"Content-Type":"application/json"},body:JSON.stringify(e.SCHEMA.parse(s))},r).then(o=>new tt(o))}},tt=class{constructor(t){this.response=t}async result(){return this.response.json()}};var P=class{constructor(t){this._transport=t}async send({id:t,request:s={},...n}){return this._transport.send("v1/sources/"+encodeURIComponent(t),{...s,method:"GET"},n).then(r=>new et(r))}},et=class{constructor(t){this.response=t}async result(){return this.response.json()}};var E=class{constructor(t){this._transport=t}async send({request:t={},...s}={}){return this._transport.send("v1/sources",{...t,method:"GET"},s).then(n=>new st(n))}},st=class{constructor(t){this.response=t}async result(){return this.response.json()}};var v=class{options;constructor({baseURL:t,...s}){this.options={...s,baseURL:t}}async _filterRequest(t){for(let s of this.options.requestFilterables)t=await s.filter(t);return t}async send(t,s,{fetch:n=fetch}={}){return await n(new Request(new URL(t,this.options.baseURL),await this._filterRequest(s)))}};var T=class e{constructor(t=e.STANDARD_HEADERS){this._standardHeaders=t}static STANDARD_HEADERS=it;async filter(t){return{...t,headers:{...t.headers,...this._standardHeaders}}}};var nt=class e{static DEFAULT_BASE_URL=ot;_transport;constructor(t,{baseURL:s,...n}={}){this._transport=new v({requestFilterables:[new T,t],...n,baseURL:s?.toString()??e.getBaseURL()})}static getBaseURL(){return process.env.SUPPORT_BASE_URL??this.DEFAULT_BASE_URL}get action(){return{list:new i(this._transport)}}get channel(){return{list:new p(this._transport)}}get contact(){return{get:new a(this._transport),list:new c(this._transport),update:new d(this._transport)}}get conversation(){return{get:new l(this._transport),list:new u(this._transport),update:new m(this._transport),message:{list:new x(this._transport)}}}get label(){return{create:new h(this._transport),get:new y(this._transport),list:new f(this._transport),update:new R(this._transport),delete:new b(this._transport),conversation:{list:new g(this._transport)}}}get message(){return{list:new S(this._transport)}}get model(){return{get:new O(this._transport),list:new A(this._transport),response:{create:new _(this._transport)},correction:{create:new C(this._transport)}}}get source(){return{get:new P(this._transport),list:new E(this._transport)}}};var rt=class{async filter(t){return t}};export{ot as a,at as b,ct as c,dt as d,lt as e,nt as f,rt as g};