valync 0.2.0 → 0.2.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.
package/README.md CHANGED
@@ -107,6 +107,18 @@ function UserProfile({ userId }: { userId: string }) {
107
107
  }
108
108
  ```
109
109
 
110
+ ```tsx
111
+ const [state, onLogin] = useValync("/api/auth", {
112
+ cache: false,
113
+ fetchOnMount: false,
114
+ init: {
115
+ method: "POST",
116
+ headers: { "Content-Type": "application/json" },
117
+ body: JSON.stringify({ email, password }),
118
+ },
119
+ });
120
+ ````
121
+
110
122
  ### Vue 3
111
123
 
112
124
  ```tsx
@@ -151,3 +163,9 @@ const [state, refetch, setData] = useAxiosValync<User>("/api/user", {
151
163
  },
152
164
  });
153
165
  ```
166
+
167
+ ## ☕️ Buy Me a Drink
168
+
169
+ If this project saved you time, helped you ship faster, or made you say "damn, that's slick!" — consider buying me a beer 🍻
170
+
171
+ 👉 [Send me a drink on Cointr.ee](https://cointr.ee/epikoder)
@@ -10,10 +10,7 @@ export type ValyncOptions<T> = {
10
10
  };
11
11
  export type CacheKey = string | Record<string, any>;
12
12
  export declare function normalizeKey(key: CacheKey): string;
13
- export type ApiResponse<T> = {
14
- status: "success";
15
- data: T;
16
- } | {
13
+ export type ApiErrorResponse = {
17
14
  status: "failed";
18
15
  error: {
19
16
  name: string;
@@ -21,6 +18,11 @@ export type ApiResponse<T> = {
21
18
  code?: number | string;
22
19
  };
23
20
  };
21
+ export type ApiSuccessResponse<T> = {
22
+ status: "success";
23
+ data: T;
24
+ };
25
+ export type ApiResponse<T> = ApiSuccessResponse<T> | ApiErrorResponse;
24
26
  export declare abstract class AsyncValue<T> {
25
27
  abstract when<R>(handlers: {
26
28
  loading: () => R;
@@ -38,7 +40,7 @@ export declare abstract class AsyncValue<T> {
38
40
  export declare class AsyncLoading<T> extends AsyncValue<T> {
39
41
  when<R>(h: any): R;
40
42
  }
41
- export declare class AsyncError<T> extends AsyncValue<T> {
43
+ export declare class AsyncError<T = unknown> extends AsyncValue<T> {
42
44
  error: {
43
45
  name: string;
44
46
  message: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAc,MAAM,eAAe,CAAC;AAEnD,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI;IAC3B,IAAI,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACnC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;IACxB,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;IACd,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;CAChC,CAAC;AAGF,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAGpD,wBAAgB,YAAY,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,CAElD;AAGD,MAAM,MAAM,WAAW,CAAC,CAAC,IACnB;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,GAC9B;IACI,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CACpE,CAAC;AAGR,8BAAsB,UAAU,CAAC,CAAC;IAC9B,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE;QACvB,OAAO,EAAE,MAAM,CAAC,CAAC;QACjB,KAAK,EAAE,CAAC,GAAG,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE,KAAK,CAAC,CAAC;QACpE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;KACjC,GAAG,CAAC;IAEL,SAAS;IAIT,MAAM;IAIN,OAAO;CAGV;AAGD,qBAAa,YAAY,CAAC,CAAC,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;IAC9C,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC;CAGrB;AAGD,qBAAa,UAAU,CAAC,CAAC,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;IAEjC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE;gBAAhE,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE;IAI3E,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC;CAGrB;AAGD,qBAAa,SAAS,CAAC,CAAC,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;gBAAhB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAGnC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC;CAGrB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI;IAC3B,IAAI,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACnC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;IACxB,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;IACd,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;CAChC,CAAC;AAGF,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAGpD,wBAAgB,YAAY,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,CAElD;AAGD,MAAM,MAAM,gBAAgB,GAAG;IAC3B,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CACpE,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI;IAChC,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,CAAC,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC;AAGtE,8BAAsB,UAAU,CAAC,CAAC;IAC9B,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE;QACvB,OAAO,EAAE,MAAM,CAAC,CAAC;QACjB,KAAK,EAAE,CAAC,GAAG,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE,KAAK,CAAC,CAAC;QACpE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;KACjC,GAAG,CAAC;IAEL,SAAS;IAIT,MAAM;IAIN,OAAO;CAGV;AAGD,qBAAa,YAAY,CAAC,CAAC,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;IAC9C,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC;CAGrB;AAGD,qBAAa,UAAU,CAAC,CAAC,GAAG,OAAO,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;IAE3C,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE;gBAAhE,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE;IAI3E,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC;CAGrB;AAGD,qBAAa,SAAS,CAAC,CAAC,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;gBAAhB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAGnC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC;CAGrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAgBA,wDAAwD;AACxD,MAAM,UAAU,YAAY,CAAC,GAAa;IACtC,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;AAC/D,CAAC;AAUD,sCAAsC;AACtC,MAAM,OAAgB,UAAU;IAO5B,SAAS;QACL,OAAO,IAAI,YAAY,YAAY,CAAC;IACxC,CAAC;IAED,MAAM;QACF,OAAO,IAAI,YAAY,SAAS,CAAC;IACrC,CAAC;IAED,OAAO;QACH,OAAO,IAAI,YAAY,UAAU,CAAC;IACtC,CAAC;CACJ;AAED,2BAA2B;AAC3B,MAAM,OAAO,YAAgB,SAAQ,UAAa;IAC9C,IAAI,CAAI,CAAM;QACV,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;CACJ;AAED,qCAAqC;AACrC,MAAM,OAAO,UAAc,SAAQ,UAAa;IAC5C,YACW,KAAgE;QAEvE,KAAK,EAAE,CAAC;QAFD,UAAK,GAAL,KAAK,CAA2D;IAG3E,CAAC;IACD,IAAI,CAAI,CAAM;QACV,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;CACJ;AAED,6CAA6C;AAC7C,MAAM,OAAO,SAAa,SAAQ,UAAa;IAC3C,YAAmB,KAAgB;QAC/B,KAAK,EAAE,CAAC;QADO,UAAK,GAAL,KAAK,CAAW;IAEnC,CAAC;IACD,IAAI,CAAI,CAAM;QACV,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;CACJ"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAgBA,wDAAwD;AACxD,MAAM,UAAU,YAAY,CAAC,GAAa;IACtC,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;AAC/D,CAAC;AAeD,sCAAsC;AACtC,MAAM,OAAgB,UAAU;IAO5B,SAAS;QACL,OAAO,IAAI,YAAY,YAAY,CAAC;IACxC,CAAC;IAED,MAAM;QACF,OAAO,IAAI,YAAY,SAAS,CAAC;IACrC,CAAC;IAED,OAAO;QACH,OAAO,IAAI,YAAY,UAAU,CAAC;IACtC,CAAC;CACJ;AAED,2BAA2B;AAC3B,MAAM,OAAO,YAAgB,SAAQ,UAAa;IAC9C,IAAI,CAAI,CAAM;QACV,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;CACJ;AAED,qCAAqC;AACrC,MAAM,OAAO,UAAwB,SAAQ,UAAa;IACtD,YACW,KAAgE;QAEvE,KAAK,EAAE,CAAC;QAFD,UAAK,GAAL,KAAK,CAA2D;IAG3E,CAAC;IACD,IAAI,CAAI,CAAM;QACV,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;CACJ;AAED,6CAA6C;AAC7C,MAAM,OAAO,SAAa,SAAQ,UAAa;IAC3C,YAAmB,KAAgB;QAC/B,KAAK,EAAE,CAAC;QADO,UAAK,GAAL,KAAK,CAAW;IAEnC,CAAC;IACD,IAAI,CAAI,CAAM;QACV,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;CACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vue/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAEH,WAAW,EACX,UAAU,EAIV,aAAa,EAChB,MAAM,SAAS,CAAC;AAIjB,wBAAgB,WAAW,CAAC,EACxB,MAAM,GACT,EAAE;IACC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;CACzE,IACoB,CAAC,EACd,KAAK,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACjC,UAAS,aAAa,CAAC,CAAC,CAAM,KAC/B,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,CA+F3E;AAED,wBAAgB,SAAS,CAAC,CAAC,EACvB,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACjC,OAAO,GAAE,aAAa,CAAC,CAAC,CAAM;;;;;;gBAzFX,CAAC;;;;;;;yBA8LM,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,WAalD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vue/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAEH,WAAW,EACX,UAAU,EAIV,aAAa,EAChB,MAAM,SAAS,CAAC;AAIjB,wBAAgB,WAAW,CAAC,EACxB,MAAM,GACT,EAAE;IACC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;CACzE,IACoB,CAAC,EACd,KAAK,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACjC,UAAS,aAAa,CAAC,CAAC,CAAM,KAC/B,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,CA+F3E;AAED,wBAAgB,SAAS,CAAC,CAAC,EACvB,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACjC,OAAO,GAAE,aAAa,CAAC,CAAC,CAAM;;;;;;gBAxFC,CAAC;;;;;;;yBA6LN,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,WAalD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "valync",
3
- "version": "0.2.0",
3
+ "version": "0.2.2",
4
4
  "main": "dist/core/index.js",
5
5
  "types": "dist/core/index.d.ts",
6
6
  "exports": {