valync 0.3.4 → 0.4.0

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,6 +1,8 @@
1
1
  import { Option } from "ts-results-es";
2
+ export type RequestBody = BodyInit | Record<string, unknown>;
2
3
  export type ValyncOptions<T> = {
3
4
  init?: Omit<RequestInit, "signal">;
5
+ files?: File[] | [string, File][];
4
6
  cache?: boolean;
5
7
  fetchOnMount?: boolean;
6
8
  retryCount?: number;
@@ -79,4 +81,9 @@ export declare class AsyncData<T> extends AsyncValue<T> {
79
81
  constructor(value: Option<T>);
80
82
  when<R>(h: Handler<T, R>): R;
81
83
  }
84
+ export declare function buildRequestBody(body?: RequestBody | null, files?: File[] | [string, File][]): {
85
+ body: BodyInit | null | undefined;
86
+ isMultipart: boolean;
87
+ };
88
+ export declare function mergeHeaders(base?: HeadersInit, extra?: HeadersInit): Record<string, string>;
82
89
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"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"}
@@ -67,4 +67,65 @@ export class AsyncData extends AsyncValue {
67
67
  return h.data ? h.data(this.value) : undefined;
68
68
  }
69
69
  }
70
+ function isPlainObject(v) {
71
+ if (v === null || typeof v !== "object")
72
+ return false;
73
+ if (v instanceof Blob)
74
+ return false;
75
+ if (v instanceof FormData)
76
+ return false;
77
+ if (v instanceof URLSearchParams)
78
+ return false;
79
+ if (v instanceof ArrayBuffer)
80
+ return false;
81
+ if (typeof ReadableStream !== "undefined" && v instanceof ReadableStream)
82
+ return false;
83
+ return true;
84
+ }
85
+ export function buildRequestBody(body, files) {
86
+ if (files?.length) {
87
+ const fd = body instanceof FormData ? body : new FormData();
88
+ if (body && !(body instanceof FormData) && isPlainObject(body)) {
89
+ for (const [k, v] of Object.entries(body)) {
90
+ fd.append(k, String(v));
91
+ }
92
+ }
93
+ for (const file of files) {
94
+ if (Array.isArray(file)) {
95
+ fd.append(file[0], file[1]);
96
+ }
97
+ else {
98
+ fd.append("file", file);
99
+ }
100
+ }
101
+ return { body: fd, isMultipart: true };
102
+ }
103
+ if (body instanceof FormData) {
104
+ return { body, isMultipart: true };
105
+ }
106
+ if (isPlainObject(body)) {
107
+ return { body: JSON.stringify(body), isMultipart: false };
108
+ }
109
+ return { body: body, isMultipart: false };
110
+ }
111
+ export function mergeHeaders(base, extra) {
112
+ const result = {};
113
+ const append = (h) => {
114
+ if (!h)
115
+ return;
116
+ if (h instanceof Headers) {
117
+ h.forEach((v, k) => (result[k] = v));
118
+ }
119
+ else if (Array.isArray(h)) {
120
+ for (const [k, v] of h)
121
+ result[k] = v;
122
+ }
123
+ else {
124
+ Object.assign(result, h);
125
+ }
126
+ };
127
+ append(base);
128
+ append(extra);
129
+ return result;
130
+ }
70
131
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAuBA,wDAAwD;AACxD,MAAM,UAAU,YAAY,CAAC,GAAa;IACzC,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IAExC,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,GAAG,CAAC;IAC/B,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAgC,CAAC,CAAC;IACrE,OAAO,GAAG,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;AACtC,CAAC;AA4BD,MAAM,OAAO,aAAa;IACzB,YAAoB,QAAuB;QAAvB,aAAQ,GAAR,QAAQ,CAAe;QACnC,cAAS,GAAG,IAAI,GAAG,EAAgC,CAAC;IADd,CAAC;IAGxC,MAAM,CAAC,EAAoB;QACjC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvB,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC;IAEM,QAAQ;QACd,OAAO;YACN,MAAM,EAAE,CAAC,EAAoB,EAAE,EAAE;gBAChC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACvB,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACxC,CAAC;SACD,CAAC;IACH,CAAC;IAEM,GAAG,CAAC,GAAkB;QAC5B,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;QACpB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzC,CAAC;CACD;AAED,sCAAsC;AACtC,MAAM,OAAgB,UAAU;IAG/B,SAAS;QACR,OAAO,IAAI,YAAY,YAAY,CAAC;IACrC,CAAC;IAED,MAAM;QACL,OAAO,IAAI,YAAY,SAAS,CAAC;IAClC,CAAC;IAED,OAAO;QACN,OAAO,IAAI,YAAY,UAAU,CAAC;IACnC,CAAC;CACD;AAED,2BAA2B;AAC3B,MAAM,OAAO,YAA0B,SAAQ,UAAa;IAC3D,IAAI,CAAI,CAAgB;QACvB,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5C,CAAC;CACD;AAED,qCAAqC;AACrC,MAAM,OAAO,UAAwB,SAAQ,UAAa;IACzD,YACQ,KAAgE;QAEvE,KAAK,EAAE,CAAC;QAFD,UAAK,GAAL,KAAK,CAA2D;IAGxE,CAAC;IACD,IAAI,CAAI,CAAgB;QACvB,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClD,CAAC;CACD;AAED,6CAA6C;AAC7C,MAAM,OAAO,SAAa,SAAQ,UAAa;IAC9C,YAAmB,KAAgB;QAClC,KAAK,EAAE,CAAC;QADU,UAAK,GAAL,KAAK,CAAW;IAEnC,CAAC;IACD,IAAI,CAAI,CAAgB;QACvB,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAChD,CAAC;CACD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/core/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC;AAEhC,eAAO,MAAM,mBAAmB,GAAI,CAAC,EAAE,KAAK,MAAM,EAAE,MAAM,WAAW,4BAuClE,CAAC"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/core/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC;AAEhC,eAAO,MAAM,mBAAmB,GAAI,CAAC,EAAE,KAAK,MAAM,EAAE,MAAM,WAAW,4BA4ClE,CAAC"}
package/dist/core/util.js CHANGED
@@ -1,4 +1,7 @@
1
1
  export const DefaultValyncClient = (url, init) => fetch(url, init).then(async (resp) => {
2
+ if (resp.status === 204) {
3
+ return { status: "success", data: null };
4
+ }
2
5
  let json;
3
6
  try {
4
7
  json = await resp.json();
@@ -9,6 +12,7 @@ export const DefaultValyncClient = (url, init) => fetch(url, init).then(async (r
9
12
  error: {
10
13
  name: "ParseError",
11
14
  message: "Invalid JSON",
15
+ code: resp.status,
12
16
  },
13
17
  };
14
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/core/util.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAI,GAAW,EAAE,IAAiB,EAAE,EAAE,CACxE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAA2B,EAAE;IAC7D,IAAI,IAAS,CAAC;IACd,IAAI,CAAC;QACJ,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACR,OAAO;YACN,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE;gBACN,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE,cAAc;aACvB;SACD,CAAC;IACH,CAAC;IAED,wCAAwC;IACxC,IACC,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY;QACrC,CAAC,OAAO,IAAI,KAAK,QAAQ;YACxB,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC;YACnB,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,EACxD,CAAC;QACF,OAAO,CAAC,IAAI,CACX,uDAAuD,EACvD,IAAI,CACJ,CAAC;IACH,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC1C,OAAO;YACN,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI;gBACrB,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,IAAI,CAAC,UAAU;gBACxB,IAAI,EAAE,IAAI,CAAC,MAAM;aACjB;SACD,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/core/util.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAI,GAAW,EAAE,IAAiB,EAAE,EAAE,CACxE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAA2B,EAAE;IAC7D,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QACzB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAoB,EAAE,CAAC;IAC1D,CAAC;IAED,IAAI,IAAS,CAAC;IACd,IAAI,CAAC;QACJ,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACR,OAAO;YACN,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE;gBACN,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE,cAAc;gBACvB,IAAI,EAAE,IAAI,CAAC,MAAM;aACjB;SACD,CAAC;IACH,CAAC;IAED,wCAAwC;IACxC,IACC,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY;QACrC,CAAC,OAAO,IAAI,KAAK,QAAQ;YACxB,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC;YACnB,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,EACxD,CAAC;QACF,OAAO,CAAC,IAAI,CACX,uDAAuD,EACvD,IAAI,CACJ,CAAC;IACH,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC1C,OAAO;YACN,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI;gBACrB,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,IAAI,CAAC,UAAU;gBACxB,IAAI,EAAE,IAAI,CAAC,MAAM;aACjB;SACD,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC,CAAC,CAAC"}
@@ -1,8 +1,19 @@
1
- import { ApiResponse, AsyncValue, ValyncOptions, Observer, CacheKey, RequestMethod } from "../core/index";
1
+ import { ApiResponse, AsyncValue, ValyncOptions, Observer, CacheKey, RequestMethod, RequestBody } from "../core/index";
2
+ export type CreateValynOptions = Pick<ValyncOptions<any>, "cache" | "retryCount" | "fetchOnMount"> & {
3
+ headers?: HeadersInit | (() => HeadersInit);
4
+ onError?: (err: {
5
+ name: string;
6
+ message: string;
7
+ code?: number | string;
8
+ }) => boolean | Promise<boolean>;
9
+ };
2
10
  /**
3
11
  * createValyn creates a custom `useValync` hook bound to a provided HTTP client function.
4
12
  * Useful for plugging in your own fetch logic or a library like axios.
5
13
  *
14
+ * The `options.onError` callback receives every API-level error. Returning `true` (or a
15
+ * Promise resolving to `true`) triggers a single retry — useful for token-refresh flows.
16
+ *
6
17
  * ⚠️ NOTE:
7
18
  * Your `client()` function MUST return a Promise resolving to:
8
19
  *
@@ -14,18 +25,16 @@ import { ApiResponse, AsyncValue, ValyncOptions, Observer, CacheKey, RequestMeth
14
25
  * error?: { name: string; message: string; code?: number }
15
26
  * }
16
27
  *
17
- * use `onData` to apply transformation from `any => T` for individual endpoint when neccessary.
18
- * Returning a plain array or object without the `status` field will cause issues.
28
+ * use `onData` to apply transformation from `any => T` for individual endpoints when necessary.
19
29
  */
20
30
  export declare function createValyn({ client, options: _options, }: {
21
31
  client: (url: string, init: RequestInit) => Promise<ApiResponse<any>>;
22
- options?: Pick<ValyncOptions<any>, "cache" | "retryCount" | "fetchOnMount"> & {
23
- headers?: HeadersInit;
24
- };
32
+ options?: CreateValynOptions;
25
33
  }): <T>(key: CacheKey, options?: ValyncOptions<T>) => [AsyncValue<T>, (methodOrOpts?: RequestMethod | {
26
34
  method?: RequestMethod;
27
- body?: BodyInit;
28
- }, body?: BodyInit) => void, (updater: (prev: T | null) => T) => void, Observer<T>];
35
+ body?: RequestBody;
36
+ files?: File[] | [string, File][];
37
+ }, body?: RequestBody, files?: File[] | [string, File][]) => void, (updater: (prev: T | null) => T) => void, Observer<T>];
29
38
  /**
30
39
  * useValync is a client-side data fetching hook that provides async state management
31
40
  * with caching, optimistic updates, and reactive watching support.
@@ -41,15 +50,17 @@ export declare function createValyn({ client, options: _options, }: {
41
50
  * error?: { name: string; message: string; code?: number }
42
51
  * }
43
52
  *
44
- * Use `onData` if `res.data` does not match your expected frontend type or if you wish to apply transformation,
45
- * so returning a plain array or object without the `status` field will cause issues.
53
+ * Use `onData` if `res.data` does not match your expected frontend type or if you wish to
54
+ * apply transformation. Returning a plain array or object without the `status` field will
55
+ * cause issues.
46
56
  */
47
57
  export declare function useValync<T>(key: CacheKey, options?: ValyncOptions<T>): [
48
58
  AsyncValue<T>,
49
59
  (methodOrOpts?: RequestMethod | {
50
60
  method?: RequestMethod;
51
- body?: BodyInit;
52
- }, body?: BodyInit) => void,
61
+ body?: RequestBody;
62
+ files?: File[] | [string, File][];
63
+ }, body?: RequestBody, files?: File[] | [string, File][]) => void,
53
64
  (updater: (prev: T | null) => T) => void,
54
65
  Observer<T>
55
66
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/react/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAEN,WAAW,EACX,UAAU,EAIV,aAAa,EACb,QAAQ,EAER,QAAQ,EACR,aAAa,EACb,MAAM,eAAe,CAAC;AAIvB;;;;;;;;;;;;;;;;;GAiBG;AAEH,wBAAgB,WAAW,CAAC,EAC3B,MAAM,EACN,OAAO,EAAE,QAAa,GACtB,EAAE;IACF,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,EAAE,IAAI,CACb,aAAa,CAAC,GAAG,CAAC,EAClB,OAAO,GAAG,YAAY,GAAG,cAAc,CACvC,GAAG;QAAE,OAAO,CAAC,EAAE,WAAW,CAAA;KAAE,CAAC;CAC9B,IAC6B,CAAC,EAC7B,KAAK,QAAQ,EACb,UAAS,aAAa,CAAC,CAAC,CAAM,KAC5B,CACF,UAAU,CAAC,CAAC,CAAC,EACb,CACC,YAAY,CAAC,EACV,aAAa,GACb;IACA,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,IAAI,CAAC,EAAE,QAAQ,CAAC;CACf,EACJ,IAAI,CAAC,EAAE,QAAQ,KACX,IAAI,EACT,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,IAAI,EACxC,QAAQ,CAAC,CAAC,CAAC,CACX,CAoJD;AAED;;;;;;;;;;;;;;;;;GAiBG;AAEH,wBAAgB,SAAS,CAAC,CAAC,EAC1B,GAAG,EAAE,QAAQ,EACb,OAAO,GAAE,aAAa,CAAC,CAAC,CAAM,GAC5B;IACF,UAAU,CAAC,CAAC,CAAC;IACb,CACC,YAAY,CAAC,EACV,aAAa,GACb;QACA,MAAM,CAAC,EAAE,aAAa,CAAC;QACvB,IAAI,CAAC,EAAE,QAAQ,CAAC;KACf,EACJ,IAAI,CAAC,EAAE,QAAQ,KACX,IAAI;IACT,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,IAAI;IACxC,QAAQ,CAAC,CAAC,CAAC;CACX,CA+JA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/react/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAEN,WAAW,EACX,UAAU,EAIV,aAAa,EACb,QAAQ,EAER,QAAQ,EACR,aAAa,EACb,WAAW,EAGX,MAAM,eAAe,CAAC;AAIvB,MAAM,MAAM,kBAAkB,GAAG,IAAI,CACpC,aAAa,CAAC,GAAG,CAAC,EAClB,OAAO,GAAG,YAAY,GAAG,cAAc,CACvC,GAAG;IACH,OAAO,CAAC,EAAE,WAAW,GAAG,CAAC,MAAM,WAAW,CAAC,CAAC;IAC5C,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE;QACf,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;KACvB,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACjC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,WAAW,CAAC,EAC3B,MAAM,EACN,OAAO,EAAE,QAAa,GACtB,EAAE;IACF,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC7B,IAC6B,CAAC,EAC7B,KAAK,QAAQ,EACb,UAAS,aAAa,CAAC,CAAC,CAAM,KAC5B,CACF,UAAU,CAAC,CAAC,CAAC,EACb,CACC,YAAY,CAAC,EACV,aAAa,GACb;IACA,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;CACjC,EACJ,IAAI,CAAC,EAAE,WAAW,EAClB,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,KAC7B,IAAI,EACT,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,IAAI,EACxC,QAAQ,CAAC,CAAC,CAAC,CACX,CAoLD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAC1B,GAAG,EAAE,QAAQ,EACb,OAAO,GAAE,aAAa,CAAC,CAAC,CAAM,GAC5B;IACF,UAAU,CAAC,CAAC,CAAC;IACb,CACC,YAAY,CAAC,EACV,aAAa,GACb;QACA,MAAM,CAAC,EAAE,aAAa,CAAC;QACvB,IAAI,CAAC,EAAE,WAAW,CAAC;QACnB,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;KACjC,EACJ,IAAI,CAAC,EAAE,WAAW,EAClB,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,KAC7B,IAAI;IACT,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,IAAI;IACxC,QAAQ,CAAC,CAAC,CAAC;CACX,CAwLA"}
@@ -1,11 +1,14 @@
1
1
  import { useEffect, useRef, useState } from "react";
2
2
  import { Some, None } from "ts-results-es";
3
- import { normalizeKey, AsyncLoading, AsyncError, AsyncData, AsyncObserver, } from "../core/index";
3
+ import { normalizeKey, AsyncLoading, AsyncError, AsyncData, AsyncObserver, buildRequestBody, mergeHeaders, } from "../core/index";
4
4
  const cache = new Map();
5
5
  /**
6
6
  * createValyn creates a custom `useValync` hook bound to a provided HTTP client function.
7
7
  * Useful for plugging in your own fetch logic or a library like axios.
8
8
  *
9
+ * The `options.onError` callback receives every API-level error. Returning `true` (or a
10
+ * Promise resolving to `true`) triggers a single retry — useful for token-refresh flows.
11
+ *
9
12
  * ⚠️ NOTE:
10
13
  * Your `client()` function MUST return a Promise resolving to:
11
14
  *
@@ -17,15 +20,16 @@ const cache = new Map();
17
20
  * error?: { name: string; message: string; code?: number }
18
21
  * }
19
22
  *
20
- * use `onData` to apply transformation from `any => T` for individual endpoint when neccessary.
21
- * Returning a plain array or object without the `status` field will cause issues.
23
+ * use `onData` to apply transformation from `any => T` for individual endpoints when necessary.
22
24
  */
23
25
  export function createValyn({ client, options: _options = {}, }) {
24
26
  return function useValynHook(key, options = {}) {
25
- options.init = options.init || {};
27
+ const resolvedGlobalHeaders = typeof _options.headers === "function"
28
+ ? _options.headers()
29
+ : _options.headers;
26
30
  options.init = {
27
31
  ...options.init,
28
- headers: { ...options.init.headers, ..._options.headers },
32
+ headers: mergeHeaders(options.init?.headers, resolvedGlobalHeaders),
29
33
  };
30
34
  options.cache = options.cache ?? _options.cache;
31
35
  options.retryCount = options.retryCount ?? _options.retryCount;
@@ -35,10 +39,9 @@ export function createValyn({ client, options: _options = {}, }) {
35
39
  const observerRef = useRef(new AsyncObserver(new AsyncData(None)));
36
40
  const [state, setState] = useState(() => {
37
41
  if (options.initialData) {
38
- const initialData = options.initialData.status === "success"
42
+ return options.initialData.status === "success"
39
43
  ? new AsyncData(Some(options.initialData.data))
40
44
  : new AsyncError(options.initialData.error);
41
- return initialData;
42
45
  }
43
46
  if (options.cache !== false && cache.has(keyStr)) {
44
47
  return cache.get(keyStr);
@@ -46,7 +49,7 @@ export function createValyn({ client, options: _options = {}, }) {
46
49
  return new AsyncData(None);
47
50
  });
48
51
  const isClient = typeof window !== "undefined" && typeof AbortController !== "undefined";
49
- const doFetch = (method, body) => {
52
+ const doFetch = (method, body, files) => {
50
53
  controllerRef.current?.abort();
51
54
  const ctrl = new AbortController();
52
55
  controllerRef.current = ctrl;
@@ -55,17 +58,30 @@ export function createValyn({ client, options: _options = {}, }) {
55
58
  return;
56
59
  }
57
60
  setState(new AsyncLoading());
61
+ const resolvedFiles = files ?? options.files;
62
+ const { body: resolvedBody, isMultipart } = buildRequestBody(body ?? options.init?.body, resolvedFiles);
63
+ let globalRetryDone = false;
58
64
  const attempt = (tries) => {
65
+ // Re-resolve dynamic global headers on every attempt (supports token refresh)
66
+ const freshGlobalHeaders = typeof _options.headers === "function"
67
+ ? _options.headers()
68
+ : _options.headers;
69
+ const merged = mergeHeaders(options.init?.headers, freshGlobalHeaders);
70
+ if (!isMultipart && resolvedBody != null && !("content-type" in merged)) {
71
+ merged["content-type"] = "application/json";
72
+ }
59
73
  client(typeof key === "string" ? key : keyStr, {
60
74
  ...options.init,
61
- method: method ?? options.init?.method ?? (body ? "POST" : "GET"),
62
- body: body ?? options.init?.body,
75
+ method: method ??
76
+ options.init?.method ??
77
+ (resolvedBody != null ? "POST" : "GET"),
78
+ body: resolvedBody,
79
+ headers: merged,
63
80
  signal: ctrl.signal,
64
81
  })
65
- .then((res) => {
82
+ .then(async (res) => {
66
83
  if (ctrl.signal.aborted)
67
84
  return;
68
- // DEV-ONLY: Validate ApiResponse<T> shape
69
85
  if (process.env.NODE_ENV !== "production" &&
70
86
  (typeof res !== "object" ||
71
87
  !("status" in res) ||
@@ -73,6 +89,14 @@ export function createValyn({ client, options: _options = {}, }) {
73
89
  console.warn(`[Valync] Expected ApiResponse<T> format missing from client() response. Got:`, res);
74
90
  }
75
91
  if (res.status === "failed") {
92
+ if (_options.onError && !globalRetryDone) {
93
+ const shouldRetry = await _options.onError(res.error);
94
+ if (shouldRetry && !ctrl.signal.aborted) {
95
+ globalRetryDone = true;
96
+ attempt(0);
97
+ return;
98
+ }
99
+ }
76
100
  setState(new AsyncError(res.error));
77
101
  options.onError?.(res.error);
78
102
  return;
@@ -89,14 +113,8 @@ export function createValyn({ client, options: _options = {}, }) {
89
113
  return;
90
114
  if (tries > 0)
91
115
  return attempt(tries - 1);
92
- options.onError?.({
93
- name: "NetworkError",
94
- message: err.message,
95
- });
96
- setState(new AsyncError({
97
- name: "NetworkError",
98
- message: err.message,
99
- }));
116
+ options.onError?.({ name: "NetworkError", message: err.message });
117
+ setState(new AsyncError({ name: "NetworkError", message: err.message }));
100
118
  });
101
119
  };
102
120
  attempt(options.retryCount ?? 0);
@@ -123,15 +141,15 @@ export function createValyn({ client, options: _options = {}, }) {
123
141
  const intervalId = setInterval(doFetch, options.fetchInterval);
124
142
  return () => clearInterval(intervalId);
125
143
  }, [options.fetchInterval, isClient]);
126
- const fetchFn = (methodOrOpts, body) => {
144
+ const fetchFn = (methodOrOpts, body, files) => {
127
145
  if (!isClient)
128
146
  return;
129
147
  cache.delete(normalizeKey(keyStr));
130
148
  if (typeof methodOrOpts === "string") {
131
- doFetch(methodOrOpts, body);
149
+ doFetch(methodOrOpts, body, files);
132
150
  }
133
151
  else {
134
- doFetch(methodOrOpts?.method, methodOrOpts?.body);
152
+ doFetch(methodOrOpts?.method, methodOrOpts?.body, methodOrOpts?.files);
135
153
  }
136
154
  };
137
155
  const setData = (updater) => {
@@ -164,8 +182,9 @@ export function createValyn({ client, options: _options = {}, }) {
164
182
  * error?: { name: string; message: string; code?: number }
165
183
  * }
166
184
  *
167
- * Use `onData` if `res.data` does not match your expected frontend type or if you wish to apply transformation,
168
- * so returning a plain array or object without the `status` field will cause issues.
185
+ * Use `onData` if `res.data` does not match your expected frontend type or if you wish to
186
+ * apply transformation. Returning a plain array or object without the `status` field will
187
+ * cause issues.
169
188
  */
170
189
  export function useValync(key, options = {}) {
171
190
  const keyStr = normalizeKey(key);
@@ -183,7 +202,7 @@ export function useValync(key, options = {}) {
183
202
  return new AsyncData(None);
184
203
  });
185
204
  const isClient = typeof window !== "undefined" && typeof AbortController !== "undefined";
186
- const doFetch = (method, body) => {
205
+ const doFetch = (method, body, files) => {
187
206
  controllerRef.current?.abort();
188
207
  const ctrl = new AbortController();
189
208
  controllerRef.current = ctrl;
@@ -192,14 +211,29 @@ export function useValync(key, options = {}) {
192
211
  return;
193
212
  }
194
213
  setState(new AsyncLoading());
214
+ const resolvedFiles = files ?? options.files;
215
+ const { body: resolvedBody, isMultipart } = buildRequestBody(body ?? options.init?.body, resolvedFiles);
216
+ const buildHeaders = () => {
217
+ const h = mergeHeaders(options.init?.headers);
218
+ if (!isMultipart && resolvedBody != null && !("content-type" in h)) {
219
+ h["content-type"] = "application/json";
220
+ }
221
+ return h;
222
+ };
195
223
  const attempt = (tries) => {
196
224
  fetch(typeof key === "string" ? key : keyStr, {
197
225
  ...options.init,
198
- method: method ?? options.init?.method ?? (body ? "POST" : "GET"),
199
- body: body ?? options.init?.body,
226
+ method: method ??
227
+ options.init?.method ??
228
+ (resolvedBody != null ? "POST" : "GET"),
229
+ body: resolvedBody,
230
+ headers: buildHeaders(),
200
231
  signal: ctrl.signal,
201
232
  })
202
233
  .then(async (resp) => {
234
+ if (resp.status === 204) {
235
+ return { status: "success", data: null };
236
+ }
203
237
  let json;
204
238
  try {
205
239
  json = await resp.json();
@@ -210,10 +244,10 @@ export function useValync(key, options = {}) {
210
244
  error: {
211
245
  name: "ParseError",
212
246
  message: "Invalid JSON",
247
+ code: resp.status,
213
248
  },
214
249
  };
215
250
  }
216
- // DEV-ONLY: Validate ApiResponse format
217
251
  if (process.env.NODE_ENV !== "production" &&
218
252
  (typeof json !== "object" ||
219
253
  !("status" in json) ||
@@ -253,14 +287,8 @@ export function useValync(key, options = {}) {
253
287
  return;
254
288
  if (tries > 0)
255
289
  return attempt(tries - 1);
256
- setState(new AsyncError({
257
- name: "NetworkError",
258
- message: err.message,
259
- }));
260
- options.onError?.({
261
- name: "NetworkError",
262
- message: err.message,
263
- });
290
+ setState(new AsyncError({ name: "NetworkError", message: err.message }));
291
+ options.onError?.({ name: "NetworkError", message: err.message });
264
292
  });
265
293
  };
266
294
  attempt(options.retryCount ?? 0);
@@ -287,15 +315,15 @@ export function useValync(key, options = {}) {
287
315
  const intervalId = setInterval(doFetch, options.fetchInterval);
288
316
  return () => clearInterval(intervalId);
289
317
  }, [options.fetchInterval, isClient]);
290
- const fetchFn = (methodOrOpts, body) => {
318
+ const fetchFn = (methodOrOpts, body, files) => {
291
319
  if (!isClient)
292
320
  return;
293
321
  cache.delete(normalizeKey(keyStr));
294
322
  if (typeof methodOrOpts === "string") {
295
- doFetch(methodOrOpts, body);
323
+ doFetch(methodOrOpts, body, files);
296
324
  }
297
325
  else {
298
- doFetch(methodOrOpts?.method, methodOrOpts?.body);
326
+ doFetch(methodOrOpts?.method, methodOrOpts?.body, methodOrOpts?.files);
299
327
  }
300
328
  };
301
329
  const setData = (updater) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/react/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/react/index.ts"],"names":[],"mappings":"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"}
@@ -1,37 +1,36 @@
1
1
  import { Ref } from "vue";
2
- import { ApiResponse, AsyncValue, AsyncLoading, AsyncError, AsyncData, ValyncOptions, Observer, CacheKey, RequestMethod } from "../core/index";
2
+ import { ApiResponse, AsyncValue, AsyncLoading, AsyncError, AsyncData, ValyncOptions, Observer, CacheKey, RequestMethod, RequestBody } from "../core/index";
3
3
  export type ValyncVueOptions<T> = Omit<ValyncOptions<T>, "init"> & {
4
4
  init?: Ref<RequestInit>;
5
5
  };
6
+ export type CreateValynVueOptions = Pick<ValyncOptions<any>, "cache" | "retryCount" | "fetchOnMount"> & {
7
+ headers?: HeadersInit | (() => HeadersInit);
8
+ onError?: (err: {
9
+ name: string;
10
+ message: string;
11
+ code?: number | string;
12
+ }) => boolean | Promise<boolean>;
13
+ };
6
14
  /**
7
- * createValyn creates a custom `useValync` hook bound to a provided HTTP client function.
15
+ * createValyn creates a custom `useValync` composable bound to a provided HTTP client function.
8
16
  * Useful for plugging in your own fetch logic or a library like axios.
9
17
  *
10
- * ⚠️ NOTE:
11
- * Your `client()` function MUST return a Promise resolving to:
12
- *
13
- * ApiResponse<any>
18
+ * The `options.onError` callback receives every API-level error. Returning `true` (or a
19
+ * Promise resolving to `true`) triggers a single retry useful for token-refresh flows.
14
20
  *
15
- * {
16
- * status: "success" | "failed",
17
- * data?: T,
18
- * error?: { name: string; message: string; code?: number }
19
- * }
20
- *
21
- * use `onData` to apply transformation from `any => T` for individual endpoint when neccessary.
22
- * Returning a plain array or object without the `status` field will cause issues.
21
+ * ⚠️ NOTE:
22
+ * Your `client()` function MUST return a Promise resolving to ApiResponse<any>.
23
23
  */
24
24
  export declare function createValyn({ client, options: _options, }: {
25
25
  client: (url: string, init: RequestInit) => Promise<ApiResponse<any>>;
26
- options?: Pick<ValyncOptions<any>, "cache" | "retryCount" | "fetchOnMount"> & {
27
- headers?: HeadersInit;
28
- };
26
+ options?: CreateValynVueOptions;
29
27
  }): <T>(key: CacheKey, options?: ValyncVueOptions<T>) => [Ref<AsyncValue<T>>, (methodOrOpts?: RequestMethod | {
30
28
  method?: RequestMethod;
31
- body?: BodyInit;
32
- }, body?: BodyInit) => void, (updater: (prev: T | null) => T) => void, Observer<T>];
29
+ body?: RequestBody;
30
+ files?: File[] | [string, File][];
31
+ }, body?: RequestBody, files?: File[] | [string, File][]) => void, (updater: (prev: T | null) => T) => void, Observer<T>];
33
32
  /**
34
- * useValync is a client-side data fetching hook that provides async state management
33
+ * useValync is a client-side data fetching composable that provides async state management
35
34
  * with caching, optimistic updates, and reactive watching support.
36
35
  *
37
36
  * ⚠️ NOTE:
@@ -44,9 +43,6 @@ export declare function createValyn({ client, options: _options, }: {
44
43
  * data?: T,
45
44
  * error?: { name: string; message: string; code?: number }
46
45
  * }
47
- *
48
- * Use `onData` if `res.data` does not match your expected frontend type or if you wish to apply transformation,
49
- * so returning a plain array or object without the `status` field will cause issues.
50
46
  */
51
47
  export declare function useValync<T>(key: CacheKey, options?: ValyncVueOptions<T>): readonly [Ref<{
52
48
  when: <R>(handlers: import("../core/index").Handler<T, R>) => R;
@@ -60,8 +56,9 @@ export declare function useValync<T>(key: CacheKey, options?: ValyncVueOptions<T
60
56
  isError: () => this is AsyncError;
61
57
  }>, (methodOrOpts?: RequestMethod | {
62
58
  method?: RequestMethod;
63
- body?: BodyInit;
64
- }, body?: BodyInit) => void, (updater: (prev: T | null) => T) => void, {
59
+ body?: RequestBody;
60
+ files?: File[] | [string, File][];
61
+ }, body?: RequestBody, files?: File[] | [string, File][]) => void, (updater: (prev: T | null) => T) => void, {
65
62
  listen: (fn: import("../core/index").StateListener<T>) => () => boolean;
66
63
  }];
67
64
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vue/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,GAAG,EAAe,MAAM,KAAK,CAAC;AAE9D,OAAO,EAEN,WAAW,EACX,UAAU,EACV,YAAY,EACZ,UAAU,EACV,SAAS,EACT,aAAa,EACb,QAAQ,EAER,QAAQ,EACR,aAAa,EACb,MAAM,eAAe,CAAC;AAIvB,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG;IAClE,IAAI,CAAC,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;CACxB,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,WAAW,CAAC,EAC3B,MAAM,EACN,OAAO,EAAE,QAAa,GACtB,EAAE;IACF,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,EAAE,IAAI,CACb,aAAa,CAAC,GAAG,CAAC,EAClB,OAAO,GAAG,YAAY,GAAG,cAAc,CACvC,GAAG;QAAE,OAAO,CAAC,EAAE,WAAW,CAAA;KAAE,CAAC;CAC9B,IACiB,CAAC,EACjB,KAAK,QAAQ,EACb,UAAS,gBAAgB,CAAC,CAAC,CAAM,KAC/B,CACF,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAClB,CACC,YAAY,CAAC,EACV,aAAa,GACb;IACA,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,IAAI,CAAC,EAAE,QAAQ,CAAC;CACf,EACJ,IAAI,CAAC,EAAE,QAAQ,KACX,IAAI,EACT,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,IAAI,EACxC,QAAQ,CAAC,CAAC,CAAC,CACX,CA6JD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,GAAE,gBAAgB,CAAC,CAAC,CAAM;;;;;;;;;;oBAuI5D,aAAa,GAAG;IAAE,MAAM,CAAC,EAAE,aAAa,CAAC;IAAC,IAAI,CAAC,EAAE,QAAQ,CAAA;CAAE,SACnE,QAAQ,qBAYU,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC;;GAa/C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vue/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqC,GAAG,EAAe,MAAM,KAAK,CAAC;AAE1E,OAAO,EAEN,WAAW,EACX,UAAU,EACV,YAAY,EACZ,UAAU,EACV,SAAS,EACT,aAAa,EACb,QAAQ,EAER,QAAQ,EACR,aAAa,EACb,WAAW,EAGX,MAAM,eAAe,CAAC;AAIvB,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG;IAClE,IAAI,CAAC,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACvC,aAAa,CAAC,GAAG,CAAC,EAClB,OAAO,GAAG,YAAY,GAAG,cAAc,CACvC,GAAG;IACH,OAAO,CAAC,EAAE,WAAW,GAAG,CAAC,MAAM,WAAW,CAAC,CAAC;IAC5C,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE;QACf,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;KACvB,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACjC,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,EAC3B,MAAM,EACN,OAAO,EAAE,QAAa,GACtB,EAAE;IACF,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,EAAE,qBAAqB,CAAC;CAChC,IACiB,CAAC,EACjB,KAAK,QAAQ,EACb,UAAS,gBAAgB,CAAC,CAAC,CAAM,KAC/B,CACF,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAClB,CACC,YAAY,CAAC,EACV,aAAa,GACb;IACA,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;CACjC,EACJ,IAAI,CAAC,EAAE,WAAW,EAClB,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,KAC7B,IAAI,EACT,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,IAAI,EACxC,QAAQ,CAAC,CAAC,CAAC,CACX,CA2LD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,GAAE,gBAAgB,CAAC,CAAC,CAAM;;;;;;;;;;oBA+JxE,aAAa,GACb;IACA,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;CACjC,SACG,WAAW,UACV,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,qBAWR,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC;;GAa/C"}
package/dist/vue/index.js CHANGED
@@ -1,36 +1,27 @@
1
- import { ref, onMounted, watch, onUnmounted } from "vue";
1
+ import { ref, shallowRef, onMounted, watch, onUnmounted } from "vue";
2
2
  import { Some, None } from "ts-results-es";
3
- import { normalizeKey, AsyncLoading, AsyncError, AsyncData, AsyncObserver, } from "../core/index";
3
+ import { normalizeKey, AsyncLoading, AsyncError, AsyncData, AsyncObserver, buildRequestBody, mergeHeaders, } from "../core/index";
4
4
  const cache = new Map();
5
5
  /**
6
- * createValyn creates a custom `useValync` hook bound to a provided HTTP client function.
6
+ * createValyn creates a custom `useValync` composable bound to a provided HTTP client function.
7
7
  * Useful for plugging in your own fetch logic or a library like axios.
8
8
  *
9
- * ⚠️ NOTE:
10
- * Your `client()` function MUST return a Promise resolving to:
11
- *
12
- * ApiResponse<any>
9
+ * The `options.onError` callback receives every API-level error. Returning `true` (or a
10
+ * Promise resolving to `true`) triggers a single retry useful for token-refresh flows.
13
11
  *
14
- * {
15
- * status: "success" | "failed",
16
- * data?: T,
17
- * error?: { name: string; message: string; code?: number }
18
- * }
19
- *
20
- * use `onData` to apply transformation from `any => T` for individual endpoint when neccessary.
21
- * Returning a plain array or object without the `status` field will cause issues.
12
+ * ⚠️ NOTE:
13
+ * Your `client()` function MUST return a Promise resolving to ApiResponse<any>.
22
14
  */
23
15
  export function createValyn({ client, options: _options = {}, }) {
24
16
  return function (key, options = {}) {
25
17
  let intervalId;
26
- const initRef = options.init ?? ref({});
18
+ const initRef = options.init ?? shallowRef({});
19
+ const resolvedGlobalHeaders = typeof _options.headers === "function"
20
+ ? _options.headers()
21
+ : _options.headers;
27
22
  initRef.value = {
28
23
  ...initRef.value,
29
- headers: { ...initRef.value.headers, ..._options.headers },
30
- };
31
- options.init.value = {
32
- ...options.init.value,
33
- headers: { ...options.init.value.headers, ..._options.headers },
24
+ headers: mergeHeaders(initRef.value.headers, resolvedGlobalHeaders),
34
25
  };
35
26
  options.cache = options.cache ?? _options.cache;
36
27
  options.retryCount = options.retryCount ?? _options.retryCount;
@@ -53,7 +44,7 @@ export function createValyn({ client, options: _options = {}, }) {
53
44
  const observerRef = ref(new AsyncObserver(initialValue));
54
45
  const state = ref(initialValue);
55
46
  const isClient = typeof window !== "undefined" && typeof AbortController !== "undefined";
56
- const doFetch = (method, body) => {
47
+ const doFetch = (method, body, files) => {
57
48
  controller.value?.abort();
58
49
  controller.value = new AbortController();
59
50
  if (options.cache !== false && cache.has(keyStr)) {
@@ -61,17 +52,30 @@ export function createValyn({ client, options: _options = {}, }) {
61
52
  return;
62
53
  }
63
54
  state.value = new AsyncLoading();
55
+ const resolvedFiles = files ?? options.files;
56
+ const { body: resolvedBody, isMultipart } = buildRequestBody(body ?? initRef.value?.body, resolvedFiles);
57
+ let globalRetryDone = false;
64
58
  const attempt = (tries) => {
59
+ // Re-resolve dynamic global headers on every attempt (supports token refresh)
60
+ const freshGlobalHeaders = typeof _options.headers === "function"
61
+ ? _options.headers()
62
+ : _options.headers;
63
+ const merged = mergeHeaders(initRef.value?.headers, freshGlobalHeaders);
64
+ if (!isMultipart && resolvedBody != null && !("content-type" in merged)) {
65
+ merged["content-type"] = "application/json";
66
+ }
65
67
  client(typeof key === "string" ? key : keyStr, {
66
- ...options.init.value,
67
- method: method ?? options.init.value?.method ?? (body ? "POST" : "GET"),
68
- body: body ?? options.init.value?.body,
68
+ ...initRef.value,
69
+ method: method ??
70
+ initRef.value?.method ??
71
+ (resolvedBody != null ? "POST" : "GET"),
72
+ body: resolvedBody,
73
+ headers: merged,
69
74
  signal: controller.value.signal,
70
75
  })
71
- .then((res) => {
76
+ .then(async (res) => {
72
77
  if (controller.value.signal.aborted)
73
78
  return;
74
- // DEV-ONLY: Validate ApiResponse<T> format
75
79
  if (process.env.NODE_ENV !== "production" &&
76
80
  (typeof res !== "object" ||
77
81
  !("status" in res) ||
@@ -79,32 +83,34 @@ export function createValyn({ client, options: _options = {}, }) {
79
83
  console.warn(`[Valync] Expected ApiResponse<T> format missing from client() response. Got:`, res);
80
84
  }
81
85
  if (res.status === "failed") {
82
- options.onError && options.onError(res.error);
86
+ if (_options.onError && !globalRetryDone) {
87
+ const shouldRetry = await _options.onError(res.error);
88
+ if (shouldRetry && !controller.value.signal.aborted) {
89
+ globalRetryDone = true;
90
+ attempt(0);
91
+ return;
92
+ }
93
+ }
94
+ options.onError?.(res.error);
83
95
  state.value = new AsyncError(res.error);
96
+ return;
84
97
  }
85
- else {
86
- const data = options.onData?.(res.data) ?? res.data;
87
- options.onSuccess?.(data);
88
- const sd = new AsyncData(Some(data));
89
- if (options.cache !== false)
90
- cache.set(keyStr, sd);
91
- state.value = sd;
92
- }
98
+ const data = options.onData?.(res.data) ?? res.data;
99
+ options.onSuccess?.(data);
100
+ const sd = new AsyncData(Some(data));
101
+ if (options.cache !== false)
102
+ cache.set(keyStr, sd);
103
+ state.value = sd;
93
104
  })
94
105
  .catch((err) => {
95
106
  if (controller.value.signal.aborted)
96
107
  return;
97
108
  if (tries > 0)
98
109
  return attempt(tries - 1);
99
- options.onError?.({
100
- name: "NetworkError",
101
- message: err.message,
102
- code: "500",
103
- });
110
+ options.onError?.({ name: "NetworkError", message: err.message });
104
111
  state.value = new AsyncError({
105
112
  name: "NetworkError",
106
113
  message: err.message,
107
- code: "500",
108
114
  });
109
115
  });
110
116
  };
@@ -112,9 +118,8 @@ export function createValyn({ client, options: _options = {}, }) {
112
118
  };
113
119
  if (isClient) {
114
120
  onMounted(() => {
115
- if (options.fetchOnMount !== false && !options.initialData) {
121
+ if (options.fetchOnMount !== false && !options.initialData)
116
122
  doFetch();
117
- }
118
123
  if (options.fetchInterval) {
119
124
  intervalId = window.setInterval(doFetch, options.fetchInterval);
120
125
  }
@@ -131,15 +136,15 @@ export function createValyn({ client, options: _options = {}, }) {
131
136
  watch(state, () => {
132
137
  observerRef.value.set(state.value);
133
138
  });
134
- const fetchFn = (methodOrOpts, body) => {
139
+ const fetchFn = (methodOrOpts, body, files) => {
135
140
  if (!isClient)
136
141
  return;
137
142
  cache.delete(normalizeKey(keyStr));
138
143
  if (typeof methodOrOpts === "string") {
139
- doFetch(methodOrOpts, body);
144
+ doFetch(methodOrOpts, body, files);
140
145
  }
141
146
  else {
142
- doFetch(methodOrOpts?.method, methodOrOpts?.body);
147
+ doFetch(methodOrOpts?.method, methodOrOpts?.body, methodOrOpts?.files);
143
148
  }
144
149
  };
145
150
  const setData = (updater) => {
@@ -157,7 +162,7 @@ export function createValyn({ client, options: _options = {}, }) {
157
162
  };
158
163
  }
159
164
  /**
160
- * useValync is a client-side data fetching hook that provides async state management
165
+ * useValync is a client-side data fetching composable that provides async state management
161
166
  * with caching, optimistic updates, and reactive watching support.
162
167
  *
163
168
  * ⚠️ NOTE:
@@ -170,14 +175,12 @@ export function createValyn({ client, options: _options = {}, }) {
170
175
  * data?: T,
171
176
  * error?: { name: string; message: string; code?: number }
172
177
  * }
173
- *
174
- * Use `onData` if `res.data` does not match your expected frontend type or if you wish to apply transformation,
175
- * so returning a plain array or object without the `status` field will cause issues.
176
178
  */
177
179
  export function useValync(key, options = {}) {
178
180
  let intervalId;
179
181
  const keyStr = normalizeKey(key);
180
182
  const controller = ref();
183
+ const initRef = options.init ?? shallowRef({});
181
184
  let initialValue;
182
185
  if (options.initialData) {
183
186
  initialValue =
@@ -194,7 +197,7 @@ export function useValync(key, options = {}) {
194
197
  const observer = ref(new AsyncObserver(initialValue));
195
198
  const state = ref(initialValue);
196
199
  const isClient = typeof window !== "undefined" && typeof AbortController !== "undefined";
197
- const doFetch = (method, body) => {
200
+ const doFetch = (method, body, files) => {
198
201
  controller.value?.abort();
199
202
  controller.value = new AbortController();
200
203
  if (options.cache !== false && cache.has(keyStr)) {
@@ -202,14 +205,29 @@ export function useValync(key, options = {}) {
202
205
  return;
203
206
  }
204
207
  state.value = new AsyncLoading();
208
+ const resolvedFiles = files ?? options.files;
209
+ const { body: resolvedBody, isMultipart } = buildRequestBody(body ?? initRef.value?.body, resolvedFiles);
210
+ const buildHeaders = () => {
211
+ const h = mergeHeaders(initRef.value?.headers);
212
+ if (!isMultipart && resolvedBody != null && !("content-type" in h)) {
213
+ h["content-type"] = "application/json";
214
+ }
215
+ return h;
216
+ };
205
217
  const attempt = (tries) => {
206
218
  fetch(typeof key === "string" ? key : keyStr, {
207
- ...options.init.value,
208
- method: method ?? options.init.value?.method ?? (body ? "POST" : "GET"),
209
- body: body ?? options.init.value?.body,
219
+ ...initRef.value,
220
+ method: method ??
221
+ initRef.value?.method ??
222
+ (resolvedBody != null ? "POST" : "GET"),
223
+ body: resolvedBody,
224
+ headers: buildHeaders(),
210
225
  signal: controller.value.signal,
211
226
  })
212
227
  .then(async (resp) => {
228
+ if (resp.status === 204) {
229
+ return { status: "success", data: null };
230
+ }
213
231
  let json;
214
232
  try {
215
233
  json = await resp.json();
@@ -220,10 +238,10 @@ export function useValync(key, options = {}) {
220
238
  error: {
221
239
  name: "ParseError",
222
240
  message: "Invalid JSON",
241
+ code: resp.status,
223
242
  },
224
243
  };
225
244
  }
226
- // DEV-ONLY: Validate ApiResponse format
227
245
  if (process.env.NODE_ENV !== "production" &&
228
246
  (typeof json !== "object" ||
229
247
  !("status" in json) ||
@@ -245,8 +263,10 @@ export function useValync(key, options = {}) {
245
263
  .then((res) => {
246
264
  if (controller.value.signal.aborted)
247
265
  return;
248
- if (res.status === "failed")
266
+ if (res.status === "failed") {
267
+ options.onError?.(res.error);
249
268
  state.value = new AsyncError(res.error);
269
+ }
250
270
  else {
251
271
  const data = options.onData?.(res.data) ?? res.data;
252
272
  options.onSuccess?.(data);
@@ -261,10 +281,7 @@ export function useValync(key, options = {}) {
261
281
  return;
262
282
  if (tries > 0)
263
283
  return attempt(tries - 1);
264
- options.onError?.({
265
- name: "NetworkError",
266
- message: err.message,
267
- });
284
+ options.onError?.({ name: "NetworkError", message: err.message });
268
285
  state.value = new AsyncError({
269
286
  name: "NetworkError",
270
287
  message: err.message,
@@ -275,9 +292,8 @@ export function useValync(key, options = {}) {
275
292
  };
276
293
  if (isClient) {
277
294
  onMounted(() => {
278
- if (options.fetchOnMount !== false && !options.initialData) {
295
+ if (options.fetchOnMount !== false && !options.initialData)
279
296
  doFetch();
280
- }
281
297
  if (options.fetchInterval) {
282
298
  intervalId = window.setInterval(doFetch, options.fetchInterval);
283
299
  }
@@ -294,15 +310,15 @@ export function useValync(key, options = {}) {
294
310
  watch(state, () => {
295
311
  observer.value.set(state.value);
296
312
  });
297
- const fetchFn = (methodOrOpts, body) => {
313
+ const fetchFn = (methodOrOpts, body, files) => {
298
314
  if (!isClient)
299
315
  return;
300
316
  cache.delete(normalizeKey(keyStr));
301
317
  if (typeof methodOrOpts === "string") {
302
- doFetch(methodOrOpts, body);
318
+ doFetch(methodOrOpts, body, files);
303
319
  }
304
320
  else {
305
- doFetch(methodOrOpts?.method, methodOrOpts?.body);
321
+ doFetch(methodOrOpts?.method, methodOrOpts?.body, methodOrOpts?.files);
306
322
  }
307
323
  };
308
324
  const setData = (updater) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vue/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vue/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "valync",
3
- "version": "0.3.4",
3
+ "version": "0.4.0",
4
4
  "main": "dist/core/index.js",
5
5
  "types": "dist/core/index.d.ts",
6
6
  "repository": {
@@ -67,18 +67,32 @@
67
67
  "ts-results-es": "^5.0.1"
68
68
  },
69
69
  "devDependencies": {
70
- "@types/node": "^25.0.3",
71
- "@testing-library/dom": "^10.4.0",
72
- "@testing-library/react": "^16.3.0",
70
+ "@testing-library/dom": "^10.4.1",
71
+ "@vue/test-utils": "^2.4.6",
72
+ "@testing-library/react": "^16.3.2",
73
73
  "@types/jest": "^30.0.0",
74
- "@types/react": "^19.1.8",
75
- "jest": "^30.0.2",
76
- "ts-jest": "^29.4.0"
74
+ "@types/node": "^25.6.0",
75
+ "@types/react": "^19.2.14",
76
+ "@types/react-dom": "^19.0.0",
77
+ "jest": "^30.3.0",
78
+ "jest-environment-jsdom": "^30.0.0",
79
+ "react": "19.2.5",
80
+ "react-dom": "19.2.5",
81
+ "ts-jest": "^29.4.9",
82
+ "vue": "^3.5.0"
77
83
  },
78
84
  "peerDependencies": {
79
- "react": "^18.0.0",
85
+ "react": ">=18.0.0",
80
86
  "vue": "^3.0.0"
81
87
  },
88
+ "peerDependenciesMeta": {
89
+ "react": {
90
+ "optional": true
91
+ },
92
+ "vue": {
93
+ "optional": true
94
+ }
95
+ },
82
96
  "scripts": {
83
97
  "build": "tsc -b",
84
98
  "test": "jest"