@katt/trpc-client
Advanced tools
Comparing version 1.0.0-alpha.3 to 1.0.0-alpha.5
@@ -1,2 +0,2 @@ | ||
import type { AnyRouter, HTTPResponseEnvelope, HTTPSuccessResponseEnvelope, inferAsyncReturnType, inferEndpointArgs, inferHandler, inferSubscriptionData, Maybe } from '@katt/trpc-server'; | ||
import type { AnyRouter, HTTPResponseEnvelope, HTTPSuccessResponseEnvelope, inferAsyncReturnType, inferEndpointArgs, inferHandler, inferSubscriptionData, Maybe, DataTransformer } from '@katt/trpc-server'; | ||
declare type UnsubscribeFn = () => void; | ||
@@ -33,4 +33,5 @@ declare type inferSubscriptionFn<TRouter extends AnyRouter> = <TPath extends keyof TRouter['_def']['subscriptions'], TArgs extends inferEndpointArgs<TRouter['_def']['subscriptions'][TPath]> & any[], TData extends inferSubscriptionData<inferAsyncReturnType<TRouter['_def']['subscriptions'][TPath]>>>(pathAndArgs: [TPath, ...TArgs], opts: { | ||
onError?: (error: TRPCClientError) => void; | ||
transformers?: DataTransformer[]; | ||
} | ||
export declare function createTRPCClient<TRouter extends AnyRouter>(opts: CreateTRPCClientOptions): TRPCClient<TRouter>; | ||
export {}; |
@@ -943,2 +943,4 @@ 'use strict'; | ||
function createTRPCClient(opts) { | ||
var _opts$transformers; | ||
var fetchOpts = opts.fetchOpts, | ||
@@ -950,3 +952,12 @@ url = opts.url; | ||
var AC = getAbortController(fetchOpts == null ? void 0 : fetchOpts.AbortController); | ||
var transformers = (_opts$transformers = opts.transformers) != null ? _opts$transformers : []; | ||
function getArgs(args) { | ||
return args.map(function (arg) { | ||
return transformers.reduce(function (prev, transformer) { | ||
return transformer.serialize(prev); | ||
}, arg); | ||
}); | ||
} | ||
function handleResponse(_x) { | ||
@@ -958,3 +969,3 @@ return _handleResponse.apply(this, arguments); | ||
_handleResponse = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee4(promise) { | ||
var res, json, err; | ||
var res, json, data, err; | ||
return runtime_1.wrap(function _callee4$(_context4) { | ||
@@ -979,10 +990,14 @@ while (1) { | ||
if (!json.ok) { | ||
_context4.next = 12; | ||
_context4.next = 14; | ||
break; | ||
} | ||
data = transformers.reduce(function (prev, transformer) { | ||
return transformer.deserialize(prev); | ||
}, json.data); | ||
json.data = data; | ||
opts.onSuccess && opts.onSuccess(json); | ||
return _context4.abrupt("return", json.data); | ||
case 12: | ||
case 14: | ||
throw new TRPCClientError(json.error.message, { | ||
@@ -993,4 +1008,4 @@ json: json, | ||
case 15: | ||
_context4.prev = 15; | ||
case 17: | ||
_context4.prev = 17; | ||
_context4.t0 = _context4["catch"](2); | ||
@@ -1010,3 +1025,3 @@ err = _context4.t0; | ||
case 21: | ||
case 23: | ||
case "end": | ||
@@ -1016,3 +1031,3 @@ return _context4.stop(); | ||
} | ||
}, _callee4, null, [[2, 15]]); | ||
}, _callee4, null, [[2, 17]]); | ||
})); | ||
@@ -1048,3 +1063,3 @@ return _handleResponse.apply(this, arguments); | ||
if (args == null ? void 0 : args.length) { | ||
target += "?args=" + encodeURIComponent(JSON.stringify(args)); | ||
target += "?args=" + encodeURIComponent(JSON.stringify(getArgs(args))); | ||
} | ||
@@ -1089,3 +1104,3 @@ | ||
body: JSON.stringify({ | ||
args: args | ||
args: getArgs(args) | ||
}), | ||
@@ -1156,3 +1171,3 @@ headers: getHeaders() | ||
body: JSON.stringify({ | ||
args: thisArgs | ||
args: getArgs(thisArgs) | ||
}), | ||
@@ -1159,0 +1174,0 @@ headers: getHeaders(), |
@@ -1,2 +0,2 @@ | ||
"use strict";function t(t,r,e,n,o,i,a){try{var u=t[i](a),c=u.value}catch(t){return void e(t)}u.done?r(c):Promise.resolve(c).then(n,o)}function r(r){return function(){var e=this,n=arguments;return new Promise((function(o,i){var a=r.apply(e,n);function u(r){t(a,o,i,u,c,"next",r)}function c(r){t(a,o,i,u,c,"throw",r)}u(void 0)}))}}function e(){return(e=Object.assign||function(t){for(var r=1;r<arguments.length;r++){var e=arguments[r];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])}return t}).apply(this,arguments)}function n(t){return(n=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function o(t,r){return(o=Object.setPrototypeOf||function(t,r){return t.__proto__=r,t})(t,r)}function i(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(t){return!1}}function a(t,r,e){return(a=i()?Reflect.construct:function(t,r,e){var n=[null];n.push.apply(n,r);var i=new(Function.bind.apply(t,n));return e&&o(i,e.prototype),i}).apply(null,arguments)}function u(t){var r="function"==typeof Map?new Map:void 0;return(u=function(t){if(null===t||-1===Function.toString.call(t).indexOf("[native code]"))return t;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==r){if(r.has(t))return r.get(t);r.set(t,e)}function e(){return a(t,arguments,n(this).constructor)}return e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),o(e,t)})(t)}function c(t,r){return t(r={exports:{}},r.exports),r.exports}Object.defineProperty(exports,"__esModule",{value:!0});var s=c((function(t){var r=function(t){var r=Object.prototype,e=r.hasOwnProperty,n="function"==typeof Symbol?Symbol:{},o=n.iterator||"@@iterator",i=n.asyncIterator||"@@asyncIterator",a=n.toStringTag||"@@toStringTag";function u(t,r,e){return Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}),t[r]}try{u({},"")}catch(t){u=function(t,r,e){return t[r]=e}}function c(t,r,e,n){var o=Object.create((r&&r.prototype instanceof f?r:f).prototype),i=new E(n||[]);return o._invoke=function(t,r,e){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(e.method=o,e.arg=i;;){var a=e.delegate;if(a){var u=b(a,e);if(u){if(u===l)continue;return u}}if("next"===e.method)e.sent=e._sent=e.arg;else if("throw"===e.method){if("suspendedStart"===n)throw n="completed",e.arg;e.dispatchException(e.arg)}else"return"===e.method&&e.abrupt("return",e.arg);n="executing";var c=s(t,r,e);if("normal"===c.type){if(n=e.done?"completed":"suspendedYield",c.arg===l)continue;return{value:c.arg,done:e.done}}"throw"===c.type&&(n="completed",e.method="throw",e.arg=c.arg)}}}(t,e,i),o}function s(t,r,e){try{return{type:"normal",arg:t.call(r,e)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var l={};function f(){}function p(){}function h(){}var d={};d[o]=function(){return this};var y=Object.getPrototypeOf,v=y&&y(y(_([])));v&&v!==r&&e.call(v,o)&&(d=v);var g=h.prototype=f.prototype=Object.create(d);function w(t){["next","throw","return"].forEach((function(r){u(t,r,(function(t){return this._invoke(r,t)}))}))}function m(t,r){var n;this._invoke=function(o,i){function a(){return new r((function(n,a){!function n(o,i,a,u){var c=s(t[o],t,i);if("throw"!==c.type){var l=c.arg,f=l.value;return f&&"object"==typeof f&&e.call(f,"__await")?r.resolve(f.__await).then((function(t){n("next",t,a,u)}),(function(t){n("throw",t,a,u)})):r.resolve(f).then((function(t){l.value=t,a(l)}),(function(t){return n("throw",t,a,u)}))}u(c.arg)}(o,i,n,a)}))}return n=n?n.then(a,a):a()}}function b(t,r){var e=t.iterator[r.method];if(void 0===e){if(r.delegate=null,"throw"===r.method){if(t.iterator.return&&(r.method="return",r.arg=void 0,b(t,r),"throw"===r.method))return l;r.method="throw",r.arg=new TypeError("The iterator does not provide a 'throw' method")}return l}var n=s(e,t.iterator,r.arg);if("throw"===n.type)return r.method="throw",r.arg=n.arg,r.delegate=null,l;var o=n.arg;return o?o.done?(r[t.resultName]=o.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=void 0),r.delegate=null,l):o:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,l)}function x(t){var r={tryLoc:t[0]};1 in t&&(r.catchLoc=t[1]),2 in t&&(r.finallyLoc=t[2],r.afterLoc=t[3]),this.tryEntries.push(r)}function O(t){var r=t.completion||{};r.type="normal",delete r.arg,t.completion=r}function E(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(x,this),this.reset(!0)}function _(t){if(t){var r=t[o];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function r(){for(;++n<t.length;)if(e.call(t,n))return r.value=t[n],r.done=!1,r;return r.value=void 0,r.done=!0,r};return i.next=i}}return{next:j}}function j(){return{value:void 0,done:!0}}return p.prototype=g.constructor=h,h.constructor=p,p.displayName=u(h,a,"GeneratorFunction"),t.isGeneratorFunction=function(t){var r="function"==typeof t&&t.constructor;return!!r&&(r===p||"GeneratorFunction"===(r.displayName||r.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,u(t,a,"GeneratorFunction")),t.prototype=Object.create(g),t},t.awrap=function(t){return{__await:t}},w(m.prototype),m.prototype[i]=function(){return this},t.AsyncIterator=m,t.async=function(r,e,n,o,i){void 0===i&&(i=Promise);var a=new m(c(r,e,n,o),i);return t.isGeneratorFunction(e)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},w(g),u(g,a,"Generator"),g[o]=function(){return this},g.toString=function(){return"[object Generator]"},t.keys=function(t){var r=[];for(var e in t)r.push(e);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=_,E.prototype={constructor:E,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(O),!t)for(var r in this)"t"===r.charAt(0)&&e.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function n(e,n){return a.type="throw",a.arg=t,r.next=e,n&&(r.method="next",r.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var u=e.call(i,"catchLoc"),c=e.call(i,"finallyLoc");if(u&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,r){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&e.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=r&&r<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=r,i?(this.method="next",this.next=i.finallyLoc,l):this.complete(a)},complete:function(t,r){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&r&&(this.next=r),l},finish:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.finallyLoc===t)return this.complete(e.completion,e.afterLoc),O(e),l}},catch:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.tryLoc===t){var n=e.completion;if("throw"===n.type){var o=n.arg;O(e)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,e){return this.delegate={iterator:_(t),resultName:r,nextLoc:e},"next"===this.method&&(this.arg=void 0),l}},t}(t.exports);try{regeneratorRuntime=r}catch(t){Function("r","regeneratorRuntime = r")(r)}})),l=function(t){return 0===t?0:Math.min(1e3*Math.pow(2,t),3e4)},f=function(t){var r,e;function n(r,e){var o,i=e.res,a=e.json,u=e.originalError;return(o=t.call(this,r)||this).message=r,o.res=i,o.json=a,o.originalError=u,Object.setPrototypeOf(function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(o),n.prototype),o}return e=t,(r=n).prototype=Object.create(e.prototype),r.prototype.constructor=r,r.__proto__=e,n}(u(Error));exports.TRPCClientError=f,exports.createTRPCClient=function(t){var n=t.fetchOpts,o=t.url,i=function(t){if(t)return t;if("undefined"!=typeof window&&window.fetch)return window.fetch;if("undefined"!=typeof global&&global.fetch)return global.fetch;throw new Error("No fetch implementation found")}(null==n?void 0:n.fetch),a=(null==n?void 0:n.AbortController)||("undefined"!=typeof window&&window.AbortController?window.AbortController:"undefined"!=typeof global&&global.AbortController?global.AbortController:null);function u(t){return c.apply(this,arguments)}function c(){return(c=r(s.mark((function r(e){var n,o,i;return s.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return n=null,o=null,r.prev=2,r.next=5,e;case 5:return n=r.sent,r.next=8,n.json();case 8:if(!(o=r.sent).ok){r.next=12;break}return t.onSuccess&&t.onSuccess(o),r.abrupt("return",o.data);case 12:throw new f(o.error.message,{json:o,res:n});case 15:throw r.prev=15,r.t0=r.catch(2),(i=r.t0)instanceof f||(i=new f(r.t0.message,{originalError:r.t0,res:n,json:o})),t.onError&&t.onError(i),i;case 21:case"end":return r.stop()}}),r,null,[[2,15]])})))).apply(this,arguments)}function p(){return e({},t.getHeaders?t.getHeaders():{},{"content-type":"application/json"})}var h=function(){var t=r(s.mark((function t(r){var e,n,a,c,l,f=arguments;return s.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:for(e=o+"/"+r,n=f.length,a=new Array(n>1?n-1:0),c=1;c<n;c++)a[c-1]=f[c];return(null==a?void 0:a.length)&&(e+="?args="+encodeURIComponent(JSON.stringify(a))),l=i(e,{headers:p()}),t.abrupt("return",u(l));case 5:case"end":return t.stop()}}),t)})));return function(r){return t.apply(this,arguments)}}();return{mutate:function(){var t=r(s.mark((function t(r){var e,n,a,c,l=arguments;return s.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:for(e=l.length,n=new Array(e>1?e-1:0),a=1;a<e;a++)n[a-1]=l[a];return c=i(o+"/"+r,{method:"POST",body:JSON.stringify({args:n}),headers:p()}),t.abrupt("return",u(c));case 3:case"end":return t.stop()}}),t)})));return function(r){return t.apply(this,arguments)}}(),query:h,subscription:function(t,e){var n,c=t[0],f=t.slice(1),h=!1,d=null,y=0,v=function(){var t=r(s.mark((function t(){var r,f,g,w,m,b,x,O,E,_,j,L=arguments;return s.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:for(f=L.length,g=new Array(f),w=0;w<f;w++)g[w]=L[w];if(!h){t.next=4;break}return console.log("subscriptions have stopped"),t.abrupt("return");case 4:return d=a?new a:null,m=null==(r=d)?void 0:r.signal,b=i(o+"/"+c,{method:"PATCH",body:JSON.stringify({args:g}),headers:p(),signal:m}),t.prev=7,console.log("⏳ waiting for",c,g),t.next=11,u(b);case 11:if(x=t.sent,!h){t.next=14;break}return t.abrupt("return");case 14:e.onSuccess&&e.onSuccess(x),O=e.getNextArgs?e.getNextArgs(x):g,console.log("nextArgs",O),y=0,v.apply(void 0,O),t.next=32;break;case 21:if(t.prev=21,t.t0=t.catch(7),!h){t.next=26;break}return console.log("sub stopped"),t.abrupt("return");case 26:_=t.t0,console.log("❌ subscription failed :(",_.message),408===(null==(E=_.json)?void 0:E.statusCode)?y=0:y++,j=l(y),console.log("trying again in",j,"ms"),n=setTimeout((function(){v.apply(void 0,g)}),j);case 32:case"end":return t.stop()}}),t,null,[[7,21]])})));return function(){return t.apply(this,arguments)}}();return console.log("argds",f),v.apply(void 0,f),function(){var t;h=!0,clearTimeout(n),null==(t=d)||t.abort()}}}}; | ||
"use strict";function t(t,r,e,n,o,i,a){try{var u=t[i](a),c=u.value}catch(t){return void e(t)}u.done?r(c):Promise.resolve(c).then(n,o)}function r(r){return function(){var e=this,n=arguments;return new Promise((function(o,i){var a=r.apply(e,n);function u(r){t(a,o,i,u,c,"next",r)}function c(r){t(a,o,i,u,c,"throw",r)}u(void 0)}))}}function e(){return(e=Object.assign||function(t){for(var r=1;r<arguments.length;r++){var e=arguments[r];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])}return t}).apply(this,arguments)}function n(t){return(n=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function o(t,r){return(o=Object.setPrototypeOf||function(t,r){return t.__proto__=r,t})(t,r)}function i(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(t){return!1}}function a(t,r,e){return(a=i()?Reflect.construct:function(t,r,e){var n=[null];n.push.apply(n,r);var i=new(Function.bind.apply(t,n));return e&&o(i,e.prototype),i}).apply(null,arguments)}function u(t){var r="function"==typeof Map?new Map:void 0;return(u=function(t){if(null===t||-1===Function.toString.call(t).indexOf("[native code]"))return t;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==r){if(r.has(t))return r.get(t);r.set(t,e)}function e(){return a(t,arguments,n(this).constructor)}return e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),o(e,t)})(t)}function c(t,r){return t(r={exports:{}},r.exports),r.exports}Object.defineProperty(exports,"__esModule",{value:!0});var s=c((function(t){var r=function(t){var r=Object.prototype,e=r.hasOwnProperty,n="function"==typeof Symbol?Symbol:{},o=n.iterator||"@@iterator",i=n.asyncIterator||"@@asyncIterator",a=n.toStringTag||"@@toStringTag";function u(t,r,e){return Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}),t[r]}try{u({},"")}catch(t){u=function(t,r,e){return t[r]=e}}function c(t,r,e,n){var o=Object.create((r&&r.prototype instanceof f?r:f).prototype),i=new E(n||[]);return o._invoke=function(t,r,e){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(e.method=o,e.arg=i;;){var a=e.delegate;if(a){var u=b(a,e);if(u){if(u===l)continue;return u}}if("next"===e.method)e.sent=e._sent=e.arg;else if("throw"===e.method){if("suspendedStart"===n)throw n="completed",e.arg;e.dispatchException(e.arg)}else"return"===e.method&&e.abrupt("return",e.arg);n="executing";var c=s(t,r,e);if("normal"===c.type){if(n=e.done?"completed":"suspendedYield",c.arg===l)continue;return{value:c.arg,done:e.done}}"throw"===c.type&&(n="completed",e.method="throw",e.arg=c.arg)}}}(t,e,i),o}function s(t,r,e){try{return{type:"normal",arg:t.call(r,e)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var l={};function f(){}function p(){}function h(){}var d={};d[o]=function(){return this};var y=Object.getPrototypeOf,v=y&&y(y(_([])));v&&v!==r&&e.call(v,o)&&(d=v);var g=h.prototype=f.prototype=Object.create(d);function w(t){["next","throw","return"].forEach((function(r){u(t,r,(function(t){return this._invoke(r,t)}))}))}function m(t,r){var n;this._invoke=function(o,i){function a(){return new r((function(n,a){!function n(o,i,a,u){var c=s(t[o],t,i);if("throw"!==c.type){var l=c.arg,f=l.value;return f&&"object"==typeof f&&e.call(f,"__await")?r.resolve(f.__await).then((function(t){n("next",t,a,u)}),(function(t){n("throw",t,a,u)})):r.resolve(f).then((function(t){l.value=t,a(l)}),(function(t){return n("throw",t,a,u)}))}u(c.arg)}(o,i,n,a)}))}return n=n?n.then(a,a):a()}}function b(t,r){var e=t.iterator[r.method];if(void 0===e){if(r.delegate=null,"throw"===r.method){if(t.iterator.return&&(r.method="return",r.arg=void 0,b(t,r),"throw"===r.method))return l;r.method="throw",r.arg=new TypeError("The iterator does not provide a 'throw' method")}return l}var n=s(e,t.iterator,r.arg);if("throw"===n.type)return r.method="throw",r.arg=n.arg,r.delegate=null,l;var o=n.arg;return o?o.done?(r[t.resultName]=o.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=void 0),r.delegate=null,l):o:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,l)}function x(t){var r={tryLoc:t[0]};1 in t&&(r.catchLoc=t[1]),2 in t&&(r.finallyLoc=t[2],r.afterLoc=t[3]),this.tryEntries.push(r)}function O(t){var r=t.completion||{};r.type="normal",delete r.arg,t.completion=r}function E(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(x,this),this.reset(!0)}function _(t){if(t){var r=t[o];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function r(){for(;++n<t.length;)if(e.call(t,n))return r.value=t[n],r.done=!1,r;return r.value=void 0,r.done=!0,r};return i.next=i}}return{next:j}}function j(){return{value:void 0,done:!0}}return p.prototype=g.constructor=h,h.constructor=p,p.displayName=u(h,a,"GeneratorFunction"),t.isGeneratorFunction=function(t){var r="function"==typeof t&&t.constructor;return!!r&&(r===p||"GeneratorFunction"===(r.displayName||r.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,u(t,a,"GeneratorFunction")),t.prototype=Object.create(g),t},t.awrap=function(t){return{__await:t}},w(m.prototype),m.prototype[i]=function(){return this},t.AsyncIterator=m,t.async=function(r,e,n,o,i){void 0===i&&(i=Promise);var a=new m(c(r,e,n,o),i);return t.isGeneratorFunction(e)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},w(g),u(g,a,"Generator"),g[o]=function(){return this},g.toString=function(){return"[object Generator]"},t.keys=function(t){var r=[];for(var e in t)r.push(e);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=_,E.prototype={constructor:E,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(O),!t)for(var r in this)"t"===r.charAt(0)&&e.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function n(e,n){return a.type="throw",a.arg=t,r.next=e,n&&(r.method="next",r.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var u=e.call(i,"catchLoc"),c=e.call(i,"finallyLoc");if(u&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,r){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&e.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=r&&r<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=r,i?(this.method="next",this.next=i.finallyLoc,l):this.complete(a)},complete:function(t,r){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&r&&(this.next=r),l},finish:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.finallyLoc===t)return this.complete(e.completion,e.afterLoc),O(e),l}},catch:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.tryLoc===t){var n=e.completion;if("throw"===n.type){var o=n.arg;O(e)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,e){return this.delegate={iterator:_(t),resultName:r,nextLoc:e},"next"===this.method&&(this.arg=void 0),l}},t}(t.exports);try{regeneratorRuntime=r}catch(t){Function("r","regeneratorRuntime = r")(r)}})),l=function(t){return 0===t?0:Math.min(1e3*Math.pow(2,t),3e4)},f=function(t){var r,e;function n(r,e){var o,i=e.res,a=e.json,u=e.originalError;return(o=t.call(this,r)||this).message=r,o.res=i,o.json=a,o.originalError=u,Object.setPrototypeOf(function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(o),n.prototype),o}return e=t,(r=n).prototype=Object.create(e.prototype),r.prototype.constructor=r,r.__proto__=e,n}(u(Error));exports.TRPCClientError=f,exports.createTRPCClient=function(t){var n,o=t.fetchOpts,i=t.url,a=function(t){if(t)return t;if("undefined"!=typeof window&&window.fetch)return window.fetch;if("undefined"!=typeof global&&global.fetch)return global.fetch;throw new Error("No fetch implementation found")}(null==o?void 0:o.fetch),u=(null==o?void 0:o.AbortController)||("undefined"!=typeof window&&window.AbortController?window.AbortController:"undefined"!=typeof global&&global.AbortController?global.AbortController:null),c=null!=(n=t.transformers)?n:[];function p(t){return t.map((function(t){return c.reduce((function(t,r){return r.serialize(t)}),t)}))}function h(t){return d.apply(this,arguments)}function d(){return(d=r(s.mark((function r(e){var n,o,i,a;return s.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return n=null,o=null,r.prev=2,r.next=5,e;case 5:return n=r.sent,r.next=8,n.json();case 8:if(!(o=r.sent).ok){r.next=14;break}return i=c.reduce((function(t,r){return r.deserialize(t)}),o.data),o.data=i,t.onSuccess&&t.onSuccess(o),r.abrupt("return",o.data);case 14:throw new f(o.error.message,{json:o,res:n});case 17:throw r.prev=17,r.t0=r.catch(2),(a=r.t0)instanceof f||(a=new f(r.t0.message,{originalError:r.t0,res:n,json:o})),t.onError&&t.onError(a),a;case 23:case"end":return r.stop()}}),r,null,[[2,17]])})))).apply(this,arguments)}function y(){return e({},t.getHeaders?t.getHeaders():{},{"content-type":"application/json"})}var v=function(){var t=r(s.mark((function t(r){var e,n,o,u,c,l=arguments;return s.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:for(e=i+"/"+r,n=l.length,o=new Array(n>1?n-1:0),u=1;u<n;u++)o[u-1]=l[u];return(null==o?void 0:o.length)&&(e+="?args="+encodeURIComponent(JSON.stringify(p(o)))),c=a(e,{headers:y()}),t.abrupt("return",h(c));case 5:case"end":return t.stop()}}),t)})));return function(r){return t.apply(this,arguments)}}();return{mutate:function(){var t=r(s.mark((function t(r){var e,n,o,u,c=arguments;return s.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:for(e=c.length,n=new Array(e>1?e-1:0),o=1;o<e;o++)n[o-1]=c[o];return u=a(i+"/"+r,{method:"POST",body:JSON.stringify({args:p(n)}),headers:y()}),t.abrupt("return",h(u));case 3:case"end":return t.stop()}}),t)})));return function(r){return t.apply(this,arguments)}}(),query:v,subscription:function(t,e){var n,o=t[0],c=t.slice(1),f=!1,d=null,v=0,g=function(){var t=r(s.mark((function t(){var r,c,w,m,b,x,O,E,_,j,L,P=arguments;return s.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:for(c=P.length,w=new Array(c),m=0;m<c;m++)w[m]=P[m];if(!f){t.next=4;break}return console.log("subscriptions have stopped"),t.abrupt("return");case 4:return d=u?new u:null,b=null==(r=d)?void 0:r.signal,x=a(i+"/"+o,{method:"PATCH",body:JSON.stringify({args:p(w)}),headers:y(),signal:b}),t.prev=7,console.log("⏳ waiting for",o,w),t.next=11,h(x);case 11:if(O=t.sent,!f){t.next=14;break}return t.abrupt("return");case 14:e.onSuccess&&e.onSuccess(O),E=e.getNextArgs?e.getNextArgs(O):w,console.log("nextArgs",E),v=0,g.apply(void 0,E),t.next=32;break;case 21:if(t.prev=21,t.t0=t.catch(7),!f){t.next=26;break}return console.log("sub stopped"),t.abrupt("return");case 26:j=t.t0,console.log("❌ subscription failed :(",j.message),408===(null==(_=j.json)?void 0:_.statusCode)?v=0:v++,L=l(v),console.log("trying again in",L,"ms"),n=setTimeout((function(){g.apply(void 0,w)}),L);case 32:case"end":return t.stop()}}),t,null,[[7,21]])})));return function(){return t.apply(this,arguments)}}();return console.log("argds",c),g.apply(void 0,c),function(){var t;f=!0,clearTimeout(n),null==(t=d)||t.abort()}}}}; | ||
//# sourceMappingURL=trpc-client.cjs.production.min.js.map |
@@ -939,2 +939,4 @@ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { | ||
function createTRPCClient(opts) { | ||
var _opts$transformers; | ||
var fetchOpts = opts.fetchOpts, | ||
@@ -946,3 +948,12 @@ url = opts.url; | ||
var AC = getAbortController(fetchOpts == null ? void 0 : fetchOpts.AbortController); | ||
var transformers = (_opts$transformers = opts.transformers) != null ? _opts$transformers : []; | ||
function getArgs(args) { | ||
return args.map(function (arg) { | ||
return transformers.reduce(function (prev, transformer) { | ||
return transformer.serialize(prev); | ||
}, arg); | ||
}); | ||
} | ||
function handleResponse(_x) { | ||
@@ -954,3 +965,3 @@ return _handleResponse.apply(this, arguments); | ||
_handleResponse = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee4(promise) { | ||
var res, json, err; | ||
var res, json, data, err; | ||
return runtime_1.wrap(function _callee4$(_context4) { | ||
@@ -975,10 +986,14 @@ while (1) { | ||
if (!json.ok) { | ||
_context4.next = 12; | ||
_context4.next = 14; | ||
break; | ||
} | ||
data = transformers.reduce(function (prev, transformer) { | ||
return transformer.deserialize(prev); | ||
}, json.data); | ||
json.data = data; | ||
opts.onSuccess && opts.onSuccess(json); | ||
return _context4.abrupt("return", json.data); | ||
case 12: | ||
case 14: | ||
throw new TRPCClientError(json.error.message, { | ||
@@ -989,4 +1004,4 @@ json: json, | ||
case 15: | ||
_context4.prev = 15; | ||
case 17: | ||
_context4.prev = 17; | ||
_context4.t0 = _context4["catch"](2); | ||
@@ -1006,3 +1021,3 @@ err = _context4.t0; | ||
case 21: | ||
case 23: | ||
case "end": | ||
@@ -1012,3 +1027,3 @@ return _context4.stop(); | ||
} | ||
}, _callee4, null, [[2, 15]]); | ||
}, _callee4, null, [[2, 17]]); | ||
})); | ||
@@ -1044,3 +1059,3 @@ return _handleResponse.apply(this, arguments); | ||
if (args == null ? void 0 : args.length) { | ||
target += "?args=" + encodeURIComponent(JSON.stringify(args)); | ||
target += "?args=" + encodeURIComponent(JSON.stringify(getArgs(args))); | ||
} | ||
@@ -1085,3 +1100,3 @@ | ||
body: JSON.stringify({ | ||
args: args | ||
args: getArgs(args) | ||
}), | ||
@@ -1152,3 +1167,3 @@ headers: getHeaders() | ||
body: JSON.stringify({ | ||
args: thisArgs | ||
args: getArgs(thisArgs) | ||
}), | ||
@@ -1155,0 +1170,0 @@ headers: getHeaders(), |
{ | ||
"name": "@katt/trpc-client", | ||
"version": "1.0.0-alpha.3", | ||
"version": "1.0.0-alpha.5", | ||
"description": "TRPC Client lib", | ||
@@ -30,3 +30,3 @@ "author": "KATT", | ||
"devDependencies": { | ||
"@katt/trpc-server": "^1.0.0-alpha.3", | ||
"@katt/trpc-server": "^1.0.0-alpha.5", | ||
"react-query": "^3.5.16" | ||
@@ -37,3 +37,3 @@ }, | ||
}, | ||
"gitHead": "9477563be8af32320c9340e30fceed35a4cdf58f" | ||
"gitHead": "70954ac264cf5936c51ded68708c3645a067d0e3" | ||
} |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
258579
2146