vormiaqueryjs
Version:
Vormia Query Js - A npm package for query management with VormiaPHP laravel Backend application
3 lines (2 loc) • 2.05 kB
JavaScript
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("@builder.io/qwik"),r=require("../core/VormiaClient.js");exports.useVormiaMutation=function(a={}){const n=r.getGlobalVormiaClient(),t=e.useSignal(null),o=e.useSignal(null),s=e.useSignal(!1),i=e.useSignal(!1),l=e.useSignal(!1);return{data:t,error:o,isLoading:s,isError:i,isSuccess:l,mutate:async(e,u,c="POST",d={})=>{var v;s.value=!0,i.value=!1,l.value=!1;try{const r=await n.request({method:c,url:e,data:u,...d});return t.value=r.data,l.value=!0,a.onSuccess&&a.onSuccess(r.data),r.data}catch(m){const e=m instanceof r.VormiaError?m:new r.VormiaError((null==m?void 0:m.message)||"An unknown error occurred",null==(v=null==m?void 0:m.response)?void 0:v.status);throw o.value=e,i.value=!0,a.onError&&a.onError(e),e}finally{s.value=!1}}}},exports.useVormiaQuery=function(a){const n=r.getGlobalVormiaClient(),t=e.useSignal(null),o=e.useSignal(null),s=e.useSignal(!1),i=e.useSignal(!1),l=e.useSignal(!1),u=async(e={})=>{var u;const c={...a,...e},{endpoint:d,method:v="GET",params:m,data:g,headers:p,transform:S,onSuccess:y,onError:h,setEncrypt:E=!1}=c;s.value=!0,i.value=!1,l.value=!1;try{let e={method:v,url:d,params:"GET"===v?m:void 0,data:"GET"!==v?g||m:void 0,headers:p};if(E&&e.data){const{encryptWithPublicKey:r}=await Promise.resolve().then(()=>require("../client/utils/encryption.js"));e.data=r(e.data)}let r=(await n.request(e)).data;if(E&&r){const{decryptWithPrivateKey:e}=await Promise.resolve().then(()=>require("../client/utils/encryption.js"));r=e(r)}return S&&(null==r?void 0:r.response)&&(r.response=S(r.response)),t.value=r.response,l.value=!0,y&&y(r),r}catch(f){const e=f instanceof r.VormiaError?f:new r.VormiaError((null==f?void 0:f.message)||"An unknown error occurred",null==(u=null==f?void 0:f.response)?void 0:u.status);throw o.value=e,i.value=!0,h&&h(e),e}finally{s.value=!1}};return e.useTask$(async()=>{!1!==a.enabled&&await u()}),{data:t,error:o,isLoading:s,isError:i,isSuccess:l,fetch:u,refetch:u}};
//# sourceMappingURL=qwik.js.map