@liteforge/client 3.0.0 → 5.0.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.
- package/README.md +300 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +2 -3
- package/dist/client.js.map +1 -1
- package/dist/errors.js +5 -0
- package/dist/errors.js.map +1 -1
- package/dist/request.js +1 -1
- package/dist/request.js.map +1 -1
- package/dist/types.d.ts +2 -2
- package/dist/types.d.ts.map +1 -1
- package/package.json +5 -5
package/README.md
ADDED
|
@@ -0,0 +1,300 @@
|
|
|
1
|
+
# @liteforge/client
|
|
2
|
+
|
|
3
|
+
TypeScript-first HTTP client for LiteForge with resource-based CRUD, interceptors, middleware, and optional `@liteforge/query` integration.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @liteforge/client
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Optional query integration:
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
npm install @liteforge/client @liteforge/query
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Overview
|
|
18
|
+
|
|
19
|
+
`@liteforge/client` wraps `fetch` with a pipeline of interceptors, middleware, and automatic retry. Resources provide strongly-typed CRUD methods for REST endpoints. When `@liteforge/query` is wired in, resources gain reactive `useList`, `useOne`, `useCreate`, `useUpdate`, and `useDelete` methods backed by the query cache.
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## Setup via plugin
|
|
24
|
+
|
|
25
|
+
The recommended approach registers the client as an app plugin, making it available via `use('client')` in every component:
|
|
26
|
+
|
|
27
|
+
```ts
|
|
28
|
+
import { createApp } from 'liteforge'
|
|
29
|
+
import { clientPlugin } from '@liteforge/client'
|
|
30
|
+
import { App } from './App'
|
|
31
|
+
|
|
32
|
+
createApp({ root: App, target: '#app' })
|
|
33
|
+
.use(clientPlugin({
|
|
34
|
+
baseUrl: 'https://api.example.com',
|
|
35
|
+
headers: { 'X-App-Version': '1.0.0' },
|
|
36
|
+
timeout: 15_000,
|
|
37
|
+
retry: 1,
|
|
38
|
+
}))
|
|
39
|
+
.mount()
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### With query integration
|
|
43
|
+
|
|
44
|
+
Pass `query: queryIntegration()` to unlock reactive `use*` methods on every resource:
|
|
45
|
+
|
|
46
|
+
```ts
|
|
47
|
+
import { clientPlugin, queryIntegration } from '@liteforge/client'
|
|
48
|
+
|
|
49
|
+
createApp({ root: App, target: '#app' })
|
|
50
|
+
.use(clientPlugin({
|
|
51
|
+
baseUrl: '/api',
|
|
52
|
+
query: queryIntegration(),
|
|
53
|
+
}))
|
|
54
|
+
.mount()
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## createClient
|
|
60
|
+
|
|
61
|
+
Use `createClient` directly when you don't need the plugin system:
|
|
62
|
+
|
|
63
|
+
```ts
|
|
64
|
+
import { createClient } from '@liteforge/client'
|
|
65
|
+
|
|
66
|
+
const api = createClient({
|
|
67
|
+
baseUrl: 'https://api.example.com',
|
|
68
|
+
headers: { Authorization: `Bearer ${getToken()}` },
|
|
69
|
+
timeout: 30_000,
|
|
70
|
+
retry: 2,
|
|
71
|
+
retryDelay: 500,
|
|
72
|
+
})
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## HTTP methods
|
|
78
|
+
|
|
79
|
+
```ts
|
|
80
|
+
const user = await api.get<User>('/users/42')
|
|
81
|
+
const newUser = await api.post<User>('/users', { name: 'Jane', email: 'jane@example.com' })
|
|
82
|
+
const updated = await api.put<User>('/users/42', { name: 'Jane Doe' })
|
|
83
|
+
const patched = await api.patch<User>('/users/42', { name: 'Jane' })
|
|
84
|
+
await api.delete('/users/42')
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
All methods accept an optional third `config` argument for per-request overrides (`headers`, `timeout`, `retry`, `signal`).
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## Resources
|
|
92
|
+
|
|
93
|
+
`resource()` returns a strongly-typed CRUD object scoped to a REST endpoint:
|
|
94
|
+
|
|
95
|
+
```ts
|
|
96
|
+
const users = api.resource<User, NewUser, UpdateUser>('users')
|
|
97
|
+
|
|
98
|
+
// GET /users
|
|
99
|
+
const list = await users.getList()
|
|
100
|
+
const list = await users.getList({ page: 2, pageSize: 20, sort: 'name', order: 'asc' })
|
|
101
|
+
|
|
102
|
+
// GET /users/42
|
|
103
|
+
const user = await users.getOne(42)
|
|
104
|
+
|
|
105
|
+
// POST /users
|
|
106
|
+
const created = await users.create({ name: 'Jane', email: 'jane@example.com' })
|
|
107
|
+
|
|
108
|
+
// PUT /users/42
|
|
109
|
+
const updated = await users.update(42, { name: 'Jane Doe', email: 'jane@example.com' })
|
|
110
|
+
|
|
111
|
+
// PATCH /users/42
|
|
112
|
+
const patched = await users.patch(42, { name: 'Jane' })
|
|
113
|
+
|
|
114
|
+
// DELETE /users/42
|
|
115
|
+
await users.delete(42)
|
|
116
|
+
|
|
117
|
+
// POST /users/42/activate (custom action)
|
|
118
|
+
await users.action('activate', undefined, 42)
|
|
119
|
+
|
|
120
|
+
// POST /users/bulk-delete (action on the collection)
|
|
121
|
+
await users.action('bulk-delete', { ids: [1, 2, 3] })
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
### Custom URL path
|
|
125
|
+
|
|
126
|
+
```ts
|
|
127
|
+
const posts = api.resource<Post>('posts', { path: '/v2/articles' })
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
### Per-resource headers
|
|
131
|
+
|
|
132
|
+
```ts
|
|
133
|
+
const adminUsers = api.resource<User>('users', {
|
|
134
|
+
headers: { 'X-Admin-Token': adminToken() }
|
|
135
|
+
})
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
## Reactive resources (query integration)
|
|
141
|
+
|
|
142
|
+
When `clientPlugin` is configured with `query: queryIntegration()`, `resource()` returns a `QueryResource` with reactive signal-based methods:
|
|
143
|
+
|
|
144
|
+
```ts
|
|
145
|
+
import { createComponent, use } from 'liteforge'
|
|
146
|
+
import { useQueryClient } from '@liteforge/client'
|
|
147
|
+
|
|
148
|
+
export const UserList = createComponent({
|
|
149
|
+
setup() {
|
|
150
|
+
const client = useQueryClient()
|
|
151
|
+
const users = client.resource<User, NewUser>('users')
|
|
152
|
+
|
|
153
|
+
// Reactive query — returns signals
|
|
154
|
+
const list = users.useList({ page: 1, pageSize: 20 })
|
|
155
|
+
const createUser = users.useCreate()
|
|
156
|
+
|
|
157
|
+
return { list, createUser }
|
|
158
|
+
},
|
|
159
|
+
component({ setup }) {
|
|
160
|
+
const { list, createUser } = setup
|
|
161
|
+
return (
|
|
162
|
+
<div>
|
|
163
|
+
<Show when={() => list.isLoading()}>
|
|
164
|
+
<p>Loading…</p>
|
|
165
|
+
</Show>
|
|
166
|
+
<For each={() => list.data()?.data ?? []}>
|
|
167
|
+
{(user) => <div>{user.name}</div>}
|
|
168
|
+
</For>
|
|
169
|
+
<button onclick={() => createUser.mutate({ name: 'New User', email: 'new@example.com' })}>
|
|
170
|
+
Add user
|
|
171
|
+
</button>
|
|
172
|
+
</div>
|
|
173
|
+
)
|
|
174
|
+
}
|
|
175
|
+
})
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
| Method | Returns | Description |
|
|
179
|
+
|--------|---------|-------------|
|
|
180
|
+
| `useList(params?)` | `QueryResultShape<ListResponse<T>>` | Reactive paginated list |
|
|
181
|
+
| `useOne(id)` | `QueryResultShape<T>` | Reactive single record |
|
|
182
|
+
| `useCreate()` | `MutationResultShape<T, TCreate>` | Create mutation |
|
|
183
|
+
| `useUpdate()` | `MutationResultShape<T, { id, data }>` | Update mutation |
|
|
184
|
+
| `useDelete()` | `MutationResultShape<void, id>` | Delete mutation |
|
|
185
|
+
|
|
186
|
+
---
|
|
187
|
+
|
|
188
|
+
## Interceptors
|
|
189
|
+
|
|
190
|
+
Interceptors allow transforming requests and responses, and handling errors globally. Request interceptors run FIFO; response interceptors run LIFO (Axios-style).
|
|
191
|
+
|
|
192
|
+
```ts
|
|
193
|
+
const remove = api.addInterceptor({
|
|
194
|
+
onRequest(config) {
|
|
195
|
+
return {
|
|
196
|
+
...config,
|
|
197
|
+
headers: {
|
|
198
|
+
...config.headers,
|
|
199
|
+
Authorization: `Bearer ${getToken()}`,
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
},
|
|
203
|
+
|
|
204
|
+
onResponse(ctx) {
|
|
205
|
+
console.log('Response:', ctx.status, ctx.config.url)
|
|
206
|
+
return ctx
|
|
207
|
+
},
|
|
208
|
+
|
|
209
|
+
onResponseError(error) {
|
|
210
|
+
if (error.status === 401) {
|
|
211
|
+
redirectToLogin()
|
|
212
|
+
}
|
|
213
|
+
throw error
|
|
214
|
+
}
|
|
215
|
+
})
|
|
216
|
+
|
|
217
|
+
// Remove the interceptor
|
|
218
|
+
remove()
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
---
|
|
222
|
+
|
|
223
|
+
## Middleware
|
|
224
|
+
|
|
225
|
+
Middleware wraps the entire fetch pipeline and can short-circuit or augment requests. Middleware runs in insertion order.
|
|
226
|
+
|
|
227
|
+
```ts
|
|
228
|
+
const removeLogger = api.use(async (config, next) => {
|
|
229
|
+
const start = Date.now()
|
|
230
|
+
const ctx = await next(config)
|
|
231
|
+
console.log(`${config.method} ${config.url} — ${Date.now() - start}ms`)
|
|
232
|
+
return ctx
|
|
233
|
+
})
|
|
234
|
+
|
|
235
|
+
// Remove middleware
|
|
236
|
+
removeLogger()
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
---
|
|
240
|
+
|
|
241
|
+
## Error handling
|
|
242
|
+
|
|
243
|
+
Failed responses throw `ApiError`, which extends `Error`:
|
|
244
|
+
|
|
245
|
+
```ts
|
|
246
|
+
import { ApiError } from '@liteforge/client'
|
|
247
|
+
|
|
248
|
+
try {
|
|
249
|
+
const user = await api.get<User>('/users/999')
|
|
250
|
+
} catch (err) {
|
|
251
|
+
if (err instanceof ApiError) {
|
|
252
|
+
console.error(err.status, err.statusText, err.data)
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
---
|
|
258
|
+
|
|
259
|
+
## Client options
|
|
260
|
+
|
|
261
|
+
| Option | Type | Default | Description |
|
|
262
|
+
|--------|------|---------|-------------|
|
|
263
|
+
| `baseUrl` | `string` | required | Base URL prepended to all paths |
|
|
264
|
+
| `headers` | `Record<string, string>` | `{}` | Default headers for every request |
|
|
265
|
+
| `timeout` | `number` | `30000` | Request timeout in ms |
|
|
266
|
+
| `retry` | `number` | `0` | Retry attempts on network/5xx errors |
|
|
267
|
+
| `retryDelay` | `number` | `300` | Base delay in ms for exponential backoff |
|
|
268
|
+
| `interceptors` | `InterceptorHandlers[]` | `[]` | Initial interceptors |
|
|
269
|
+
| `middleware` | `Middleware[]` | `[]` | Initial middleware |
|
|
270
|
+
| `query` | `QueryIntegration` | — | Enables reactive `use*` methods on resources |
|
|
271
|
+
|
|
272
|
+
---
|
|
273
|
+
|
|
274
|
+
## Types
|
|
275
|
+
|
|
276
|
+
```ts
|
|
277
|
+
import type {
|
|
278
|
+
Client,
|
|
279
|
+
QueryClient,
|
|
280
|
+
ClientConfig,
|
|
281
|
+
CreateClientOptions,
|
|
282
|
+
CreateQueryClientOptions,
|
|
283
|
+
Resource,
|
|
284
|
+
QueryResource,
|
|
285
|
+
ResourceOptions,
|
|
286
|
+
RequestConfig,
|
|
287
|
+
ResponseContext,
|
|
288
|
+
InterceptorHandlers,
|
|
289
|
+
Middleware,
|
|
290
|
+
ListParams,
|
|
291
|
+
ListResponse,
|
|
292
|
+
ListMeta,
|
|
293
|
+
HttpMethod,
|
|
294
|
+
QueryIntegration
|
|
295
|
+
} from '@liteforge/client'
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
## License
|
|
299
|
+
|
|
300
|
+
MIT
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,mBAAmB,EACnB,wBAAwB,EAQzB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,mBAAmB,EACnB,wBAAwB,EAQzB,MAAM,YAAY,CAAC;AAapB,wBAAgB,YAAY,CAAC,IAAI,EAAE,wBAAwB,GAAG,WAAW,CAAC;AAC1E,wBAAgB,YAAY,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,CAAC"}
|
package/dist/client.js
CHANGED
|
@@ -4,13 +4,14 @@
|
|
|
4
4
|
import { executeFetch } from './request.js';
|
|
5
5
|
import { createInterceptorRegistry } from './interceptors.js';
|
|
6
6
|
import { createMiddlewarePipeline } from './middleware.js';
|
|
7
|
+
import { ApiError } from './errors.js';
|
|
7
8
|
import { createResource } from './resource.js';
|
|
8
9
|
import { buildUrl } from './utils/url.js';
|
|
9
10
|
import { mergeHeaders } from './utils/headers.js';
|
|
10
11
|
import { retryRequest } from './utils/retry.js';
|
|
11
12
|
export function createClient(opts) {
|
|
12
13
|
const defaultHeaders = opts.headers ?? {};
|
|
13
|
-
const defaultTimeout = opts.timeout ??
|
|
14
|
+
const defaultTimeout = opts.timeout ?? 30_000;
|
|
14
15
|
const defaultRetry = opts.retry ?? 0;
|
|
15
16
|
const defaultRetryDelay = opts.retryDelay ?? 300;
|
|
16
17
|
const interceptorRegistry = createInterceptorRegistry();
|
|
@@ -47,8 +48,6 @@ export function createClient(opts) {
|
|
|
47
48
|
context = await retryRequest(() => pipeline(intercepted), retryCount, retryDelay);
|
|
48
49
|
}
|
|
49
50
|
catch (err) {
|
|
50
|
-
// Import at runtime to avoid circular-dep issues in type-checking
|
|
51
|
-
const { ApiError } = await import('./errors.js');
|
|
52
51
|
if (err instanceof ApiError) {
|
|
53
52
|
return interceptorRegistry.runResponseError(err);
|
|
54
53
|
}
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;GAEG;AAeH,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAOhD,MAAM,UAAU,YAAY,CAAC,IAAkB;IAC7C,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;IAC1C,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,IAAI,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.js
CHANGED
|
@@ -4,6 +4,11 @@
|
|
|
4
4
|
* Thrown whenever a fetch response has a non-2xx status code.
|
|
5
5
|
*/
|
|
6
6
|
export class ApiError extends Error {
|
|
7
|
+
status;
|
|
8
|
+
statusText;
|
|
9
|
+
data;
|
|
10
|
+
config;
|
|
11
|
+
retry;
|
|
7
12
|
constructor(opts) {
|
|
8
13
|
super(`Request failed with status ${opts.status} ${opts.statusText}`);
|
|
9
14
|
this.name = 'ApiError';
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,OAAO,QAAS,SAAQ,KAAK;
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,OAAO,QAAS,SAAQ,KAAK;IACxB,MAAM,CAAS;IACf,UAAU,CAAS;IACnB,IAAI,CAAU;IACd,MAAM,CAAgB;IACtB,KAAK,CAAiC;IAE/C,YAAY,IAMX;QACC,KAAK,CAAC,8BAA8B,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAC1B,CAAC;CACF"}
|
package/dist/request.js
CHANGED
|
@@ -34,7 +34,7 @@ export async function executeFetch(config) {
|
|
|
34
34
|
}
|
|
35
35
|
// 5. Timeout via AbortController
|
|
36
36
|
const controller = new AbortController();
|
|
37
|
-
const timeoutMs = config.timeout ??
|
|
37
|
+
const timeoutMs = config.timeout ?? 30_000;
|
|
38
38
|
const timeoutId = setTimeout(() => controller.abort(), timeoutMs);
|
|
39
39
|
// Merge with any external signal
|
|
40
40
|
const signal = config.signal
|
package/dist/request.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.js","sourceRoot":"","sources":["../src/request.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAI,MAAqB;IACzD,oBAAoB;IACpB,IAAI,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;IACrB,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzE,GAAG,GAAG,iBAAiB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED,+DAA+D;IAC/D,MAAM,WAAW,GAA2B,EAAE,CAAC;IAC/C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,CAAC;QAChE,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,KAAK,CAAC;IACzC,CAAC;IAED,gBAAgB;IAChB,IAAI,IAAI,GAAoB,IAAI,CAAC;IACjC,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC9B,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACnC,kDAAkD;YAClD,IAAI,WAAW,CAAC,cAAc,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC9C,WAAW,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;YACnD,CAAC;QACH,CAAC;IACH,CAAC;IAED,iCAAiC;IACjC,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,IAAI,
|
|
1
|
+
{"version":3,"file":"request.js","sourceRoot":"","sources":["../src/request.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -73,7 +73,7 @@ export interface ListResponse<T> {
|
|
|
73
73
|
*/
|
|
74
74
|
export interface QueryResultShape<T> {
|
|
75
75
|
data: () => T | undefined;
|
|
76
|
-
error: () => Error |
|
|
76
|
+
error: () => Error | null;
|
|
77
77
|
isLoading: () => boolean;
|
|
78
78
|
isStale: () => boolean;
|
|
79
79
|
isFetched: () => boolean;
|
|
@@ -86,7 +86,7 @@ export interface QueryResultShape<T> {
|
|
|
86
86
|
export interface MutationResultShape<TData, TVariables> {
|
|
87
87
|
mutate: (variables: TVariables) => Promise<TData>;
|
|
88
88
|
isLoading: () => boolean;
|
|
89
|
-
error: () => Error |
|
|
89
|
+
error: () => Error | null;
|
|
90
90
|
data: () => TData | undefined;
|
|
91
91
|
reset: () => void;
|
|
92
92
|
}
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAM5C,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;AAMrE,MAAM,WAAW,YAAY;IAC3B,iEAAiE;IACjE,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kEAAkE;IAClE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8DAA8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,UAAU,CAAC;IACnB,yDAAyD;IACzD,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;IACnD,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,OAAO;IAC1C,IAAI,EAAE,CAAC,CAAC;IACR,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,aAAa,CAAC;CACvB;AAMD,MAAM,WAAW,mBAAmB;IAClC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAC9E,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,KAAK,eAAe,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;IAClH,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5D,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;CAC/D;AAMD,MAAM,MAAM,UAAU,GAAG,CACvB,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,eAAe,CAAC,KACtD,OAAO,CAAC,eAAe,CAAC,CAAC;AAM9B,MAAM,WAAW,eAAe;IAC9B,iDAAiD;IACjD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,wDAAwD;IACxD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;CACtD;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,IAAI,EAAE,QAAQ,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,IAAI,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IAC1B,KAAK,EAAE,MAAM,KAAK,GAAG,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@liteforge/client",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.0.0",
|
|
4
4
|
"description": "TypeScript-first HTTP client. createClient, resource-based CRUD, interceptors, optional @liteforge/query integration.",
|
|
5
5
|
"author": "SchildW3rk <contact@schildw3rk.dev>",
|
|
6
6
|
"license": "MIT",
|
|
@@ -46,8 +46,8 @@
|
|
|
46
46
|
"access": "public"
|
|
47
47
|
},
|
|
48
48
|
"peerDependencies": {
|
|
49
|
-
"@liteforge/query": ">=3.
|
|
50
|
-
"@liteforge/runtime": ">=0.6.
|
|
49
|
+
"@liteforge/query": ">=3.2.0",
|
|
50
|
+
"@liteforge/runtime": ">=0.6.8"
|
|
51
51
|
},
|
|
52
52
|
"peerDependenciesMeta": {
|
|
53
53
|
"@liteforge/query": {
|
|
@@ -58,8 +58,8 @@
|
|
|
58
58
|
}
|
|
59
59
|
},
|
|
60
60
|
"devDependencies": {
|
|
61
|
-
"@liteforge/query": "3.
|
|
62
|
-
"@liteforge/runtime": "0.6.
|
|
61
|
+
"@liteforge/query": "3.2.0",
|
|
62
|
+
"@liteforge/runtime": "0.6.8"
|
|
63
63
|
},
|
|
64
64
|
"scripts": {
|
|
65
65
|
"build": "tsc -p tsconfig.build.json",
|