@stateflows/signalr-client
Version:
SignalR-based client for Stateflows framework
2 lines • 1.6 kB
JavaScript
var c=n=>{throw TypeError(n)};var h=(n,t,e)=>t.has(n)||c("Cannot "+e);var l=(n,t,e)=>(h(n,t,"read from private field"),e?e.call(n):t.get(n)),b=(n,t,e)=>t.has(n)?c("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(n):t.set(n,e),m=(n,t,e,i)=>(h(n,t,"write to private field"),i?i.call(n,e):t.set(n,e),e);import{HubConnectionBuilder as C,HubConnectionState as f}from"@microsoft/signalr";import{SendResult as d,JsonUtils as p}from"@stateflows/common";var o,a=class{constructor(t,e=null){this.url=t;this.builderAction=e;b(this,o,null);t.slice(-1)!="/"&&(t=t+"/")}get hub(){return l(this,o)==null&&m(this,o,new Promise((t,e)=>{let i=new C().withUrl(this.url+"stateflows_v1");this.builderAction!==null&&(i=this.builderAction(i));let r=i.build();r.start().then(()=>t(r))})),l(this,o)}get reconnectingHub(){return new Promise(async(t,e)=>{let i=await this.hub;i.state!=f.Connected?i.start().then(()=>t(i)).catch(r=>e(r)):t(i)})}getAvailableClasses(){return new Promise(async(t,e)=>{let r=await(await this.reconnectingHub).invoke("GetAvailableClasses");t(r)})}send(t,e){return new Promise(async(i,r)=>{let w=await(await this.reconnectingHub).invoke("Send",t,p.stringify(e)),s=p.parse(w);s.response&&(e.response=s.response,delete s.response),i(new d(e,s.status,s.validation))})}async watch(t,e){}async unwatch(t,e){}};o=new WeakMap;var u=class{constructor(t,e){this.url=t;this.builderAction=e}getTransport(){return Promise.resolve(new a(this.url,this.builderAction))}};function v(n,t=null){return t!==null&&(t=e=>e),new u(n,t)}export{v as UseSignalR};
//# sourceMappingURL=index.mjs.map