@liteforge/client 0.2.0 → 1.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/dist/client.d.ts +3 -7
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +4 -1
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/integrations/query.d.ts +6 -6
- package/dist/integrations/query.d.ts.map +1 -1
- package/dist/integrations/query.js +10 -7
- package/dist/integrations/query.js.map +1 -1
- package/dist/plugin.d.ts +47 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.js +59 -0
- package/dist/plugin.js.map +1 -0
- package/dist/resource.d.ts +4 -3
- package/dist/resource.d.ts.map +1 -1
- package/dist/resource.js.map +1 -1
- package/dist/types.d.ts +53 -3
- package/dist/types.d.ts.map +1 -1
- package/package.json +8 -3
package/dist/client.d.ts
CHANGED
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* createClient — main entry point for @liteforge/client
|
|
3
3
|
*/
|
|
4
|
-
import type { Client, CreateClientOptions } from './types.js';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
query?: QueryIntegration;
|
|
8
|
-
}
|
|
9
|
-
export declare function createClient(opts: InternalCreateClientOptions): Client;
|
|
10
|
-
export {};
|
|
4
|
+
import type { Client, QueryClient, CreateClientOptions, CreateQueryClientOptions } from './types.js';
|
|
5
|
+
export declare function createClient(opts: CreateQueryClientOptions): QueryClient;
|
|
6
|
+
export declare function createClient(opts: CreateClientOptions): Client;
|
|
11
7
|
//# sourceMappingURL=client.d.ts.map
|
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,
|
|
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;AAYpB,wBAAgB,YAAY,CAAC,IAAI,EAAE,wBAAwB,GAAG,WAAW,CAAC;AAC1E,wBAAgB,YAAY,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,CAAC"}
|
package/dist/client.js
CHANGED
|
@@ -76,7 +76,10 @@ export function createClient(opts) {
|
|
|
76
76
|
function resource(name, options = {}) {
|
|
77
77
|
const resourceBasePath = buildUrl(opts.baseUrl, options.path ?? name);
|
|
78
78
|
const resourceOpts = { ...options, path: resourceBasePath };
|
|
79
|
-
|
|
79
|
+
if (opts.query !== undefined) {
|
|
80
|
+
return createResource(name, resourceOpts, executeRequest, opts.query);
|
|
81
|
+
}
|
|
82
|
+
return createResource(name, resourceOpts, executeRequest);
|
|
80
83
|
}
|
|
81
84
|
function addInterceptor(handlers) {
|
|
82
85
|
return interceptorRegistry.add(handlers);
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
export { createClient } from './client.js';
|
|
8
8
|
export { ApiError } from './errors.js';
|
|
9
|
-
export type { Client, ClientConfig, CreateClientOptions, Resource, ResourceOptions, RequestConfig, ResponseContext, InterceptorHandlers, Middleware, ListParams, ListResponse, ListMeta, HttpMethod, } from './types.js';
|
|
9
|
+
export type { Client, QueryClient, ClientConfig, CreateClientOptions, CreateQueryClientOptions, Resource, QueryResource, ResourceOptions, RequestConfig, ResponseContext, InterceptorHandlers, Middleware, ListParams, ListResponse, ListMeta, HttpMethod, } from './types.js';
|
|
10
10
|
export type { QueryIntegration } from './integrations/query.js';
|
|
11
|
+
export { clientPlugin, queryIntegration, useQueryClient } from './plugin.js';
|
|
11
12
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,YAAY,EACV,MAAM,EACN,YAAY,EACZ,mBAAmB,EACnB,QAAQ,EACR,eAAe,EACf,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,UAAU,GACX,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,YAAY,EACV,MAAM,EACN,WAAW,EACX,YAAY,EACZ,mBAAmB,EACnB,wBAAwB,EACxB,QAAQ,EACR,aAAa,EACb,eAAe,EACf,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,UAAU,GACX,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAGhE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAqBvC,SAAS;AACT,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -5,20 +5,20 @@
|
|
|
5
5
|
* methods on Resource instances when a QueryIntegration is supplied.
|
|
6
6
|
*/
|
|
7
7
|
import type { QueryResult, MutationResult, CreateQueryOptions, CreateMutationOptions } from '@liteforge/query';
|
|
8
|
-
import type { RequestConfig, ListParams, ListResponse } from '../types.js';
|
|
8
|
+
import type { RequestConfig, ListParams, ListResponse, QueryResultShape, MutationResultShape } from '../types.js';
|
|
9
9
|
export interface QueryIntegration {
|
|
10
10
|
createQuery: <T>(options: CreateQueryOptions<T>) => QueryResult<T>;
|
|
11
11
|
createMutation: <TData, TVariables>(options: CreateMutationOptions<TData, TVariables>) => MutationResult<TData, TVariables>;
|
|
12
12
|
}
|
|
13
13
|
export interface QueryMethods<T, TCreate, TUpdate> {
|
|
14
|
-
useList: (params?: ListParams) =>
|
|
15
|
-
useOne: (id: string | number) =>
|
|
16
|
-
useCreate: () =>
|
|
17
|
-
useUpdate: () =>
|
|
14
|
+
useList: (params?: ListParams | (() => ListParams)) => QueryResultShape<ListResponse<T>>;
|
|
15
|
+
useOne: (id: string | number) => QueryResultShape<T>;
|
|
16
|
+
useCreate: () => MutationResultShape<T, TCreate>;
|
|
17
|
+
useUpdate: () => MutationResultShape<T, {
|
|
18
18
|
id: string | number;
|
|
19
19
|
data: TUpdate;
|
|
20
20
|
}>;
|
|
21
|
-
useDelete: () =>
|
|
21
|
+
useDelete: () => MutationResultShape<void, string | number>;
|
|
22
22
|
}
|
|
23
23
|
export declare function buildQueryMethods<T, TCreate, TUpdate>(
|
|
24
24
|
/** Short resource name used as query cache key (e.g. 'users') */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/integrations/query.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/integrations/query.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EACV,aAAa,EACb,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAGrB,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC;IACnE,cAAc,EAAE,CAAC,KAAK,EAAE,UAAU,EAChC,OAAO,EAAE,qBAAqB,CAAC,KAAK,EAAE,UAAU,CAAC,KAC9C,cAAc,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,YAAY,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO;IAC/C,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,CAAC,MAAM,UAAU,CAAC,KAAK,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IACzF,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,KAAK,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACrD,SAAS,EAAE,MAAM,mBAAmB,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IACjD,SAAS,EAAE,MAAM,mBAAmB,CAAC,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAChF,SAAS,EAAE,MAAM,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;CAC7D;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO;AACnD,iEAAiE;AACjE,WAAW,EAAE,MAAM;AACnB,mFAAmF;AACnF,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,EACjD,WAAW,EAAE,gBAAgB,GAC5B,YAAY,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAiDnC"}
|
|
@@ -11,13 +11,16 @@ resourceKey,
|
|
|
11
11
|
/** Full base URL used for fetch requests (e.g. 'https://api.example.com/users') */
|
|
12
12
|
fetchUrl, request, integration) {
|
|
13
13
|
function useList(params) {
|
|
14
|
-
const serialized = JSON.stringify(params ?? {});
|
|
15
14
|
return integration.createQuery({
|
|
16
|
-
key: () =>
|
|
15
|
+
key: () => {
|
|
16
|
+
const resolved = typeof params === 'function' ? params() : params;
|
|
17
|
+
return [resourceKey, 'list', JSON.stringify(resolved ?? {})];
|
|
18
|
+
},
|
|
17
19
|
fn: () => {
|
|
20
|
+
const resolved = typeof params === 'function' ? params() : params;
|
|
18
21
|
const cfg = { method: 'GET', url: fetchUrl };
|
|
19
|
-
if (
|
|
20
|
-
cfg.params =
|
|
22
|
+
if (resolved !== undefined) {
|
|
23
|
+
cfg.params = resolved;
|
|
21
24
|
}
|
|
22
25
|
return request(cfg);
|
|
23
26
|
},
|
|
@@ -32,19 +35,19 @@ fetchUrl, request, integration) {
|
|
|
32
35
|
function useCreate() {
|
|
33
36
|
return integration.createMutation({
|
|
34
37
|
fn: (data) => request({ method: 'POST', url: fetchUrl, body: data }),
|
|
35
|
-
invalidate: [
|
|
38
|
+
invalidate: [resourceKey],
|
|
36
39
|
});
|
|
37
40
|
}
|
|
38
41
|
function useUpdate() {
|
|
39
42
|
return integration.createMutation({
|
|
40
43
|
fn: (vars) => request({ method: 'PUT', url: buildUrl(fetchUrl, String(vars.id)), body: vars.data }),
|
|
41
|
-
invalidate: [
|
|
44
|
+
invalidate: [resourceKey],
|
|
42
45
|
});
|
|
43
46
|
}
|
|
44
47
|
function useDelete() {
|
|
45
48
|
return integration.createMutation({
|
|
46
49
|
fn: (id) => request({ method: 'DELETE', url: buildUrl(fetchUrl, String(id)) }),
|
|
47
|
-
invalidate: [
|
|
50
|
+
invalidate: [resourceKey],
|
|
48
51
|
});
|
|
49
52
|
}
|
|
50
53
|
return { useList, useOne, useCreate, useUpdate, useDelete };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/integrations/query.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/integrations/query.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgBH,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAiB3C,MAAM,UAAU,iBAAiB;AAC/B,iEAAiE;AACjE,WAAmB;AACnB,mFAAmF;AACnF,QAAgB,EAChB,OAAiD,EACjD,WAA6B;IAE7B,SAAS,OAAO,CAAC,MAAwC;QACvD,OAAO,WAAW,CAAC,WAAW,CAAkB;YAC9C,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,QAAQ,GAAG,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;gBAClE,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;YAC/D,CAAC;YACD,EAAE,EAAE,GAAG,EAAE;gBACP,MAAM,QAAQ,GAAG,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;gBAClE,MAAM,GAAG,GAAkB,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;gBAC5D,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,GAAG,CAAC,MAAM,GAAG,QAAqD,CAAC;gBACrE,CAAC;gBACD,OAAO,OAAO,CAAkB,GAAG,CAAC,CAAC;YACvC,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,SAAS,MAAM,CAAC,EAAmB;QACjC,OAAO,WAAW,CAAC,WAAW,CAAI;YAChC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAC3C,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,CAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;SAC7E,CAAC,CAAC;IACL,CAAC;IAED,SAAS,SAAS;QAChB,OAAO,WAAW,CAAC,cAAc,CAAa;YAC5C,EAAE,EAAE,CAAC,IAAa,EAAE,EAAE,CAAC,OAAO,CAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YAChF,UAAU,EAAE,CAAC,WAAW,CAAC;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,SAAS,SAAS;QAChB,OAAO,WAAW,CAAC,cAAc,CAA4C;YAC3E,EAAE,EAAE,CAAC,IAA4C,EAAE,EAAE,CACnD,OAAO,CAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;YAC1F,UAAU,EAAE,CAAC,WAAW,CAAC;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,SAAS,SAAS;QAChB,OAAO,WAAW,CAAC,cAAc,CAAwB;YACvD,EAAE,EAAE,CAAC,EAAmB,EAAE,EAAE,CAC1B,OAAO,CAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAC1E,UAAU,EAAE,CAAC,WAAW,CAAC;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AAC9D,CAAC"}
|
package/dist/plugin.d.ts
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @liteforge/client — Plugin + Helpers
|
|
3
|
+
*
|
|
4
|
+
* One plugin, one registry key ('client' → Client).
|
|
5
|
+
* For QueryClient access use the typed helper:
|
|
6
|
+
*
|
|
7
|
+
* // In app setup:
|
|
8
|
+
* app.use(clientPlugin({ baseUrl: '/api', query: queryIntegration() }));
|
|
9
|
+
*
|
|
10
|
+
* // In components — base client:
|
|
11
|
+
* const client = use('client'); // → Client
|
|
12
|
+
*
|
|
13
|
+
* // In components — query client:
|
|
14
|
+
* const client = useQueryClient(); // → QueryClient (explicit opt-in)
|
|
15
|
+
*
|
|
16
|
+
* The cast lives once here, not scattered across user-code.
|
|
17
|
+
*/
|
|
18
|
+
import type { LiteForgePlugin } from '@liteforge/runtime';
|
|
19
|
+
import type { Client, QueryClient, CreateClientOptions, CreateQueryClientOptions } from './types.js';
|
|
20
|
+
import type { QueryIntegration } from './integrations/query.js';
|
|
21
|
+
/**
|
|
22
|
+
* Creates a QueryIntegration object to wire @liteforge/query into the client.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* app.use(clientPlugin({ baseUrl: '/api', query: queryIntegration() }));
|
|
26
|
+
*/
|
|
27
|
+
export declare function queryIntegration(): QueryIntegration;
|
|
28
|
+
export declare function clientPlugin(options: CreateQueryClientOptions): LiteForgePlugin;
|
|
29
|
+
export declare function clientPlugin(options: CreateClientOptions): LiteForgePlugin;
|
|
30
|
+
/**
|
|
31
|
+
* Returns the registered client as QueryClient.
|
|
32
|
+
* Only call this when clientPlugin was configured with query: queryIntegration().
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* setup({ use }) {
|
|
36
|
+
* const client = useQueryClient();
|
|
37
|
+
* const posts = client.resource<Post, NewPost>('posts');
|
|
38
|
+
* const listQuery = posts.useList();
|
|
39
|
+
* }
|
|
40
|
+
*/
|
|
41
|
+
export declare function useQueryClient(): QueryClient;
|
|
42
|
+
declare module '@liteforge/runtime' {
|
|
43
|
+
interface PluginRegistry {
|
|
44
|
+
client: Client;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACrG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAShE;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,gBAAgB,CAEnD;AAMD,wBAAgB,YAAY,CAAC,OAAO,EAAE,wBAAwB,GAAG,eAAe,CAAC;AACjF,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,eAAe,CAAC;AAc5E;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,IAAI,WAAW,CAE5C;AAMD,OAAO,QAAQ,oBAAoB,CAAC;IAClC,UAAU,cAAc;QACtB,MAAM,EAAE,MAAM,CAAC;KAChB;CACF"}
|
package/dist/plugin.js
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @liteforge/client — Plugin + Helpers
|
|
3
|
+
*
|
|
4
|
+
* One plugin, one registry key ('client' → Client).
|
|
5
|
+
* For QueryClient access use the typed helper:
|
|
6
|
+
*
|
|
7
|
+
* // In app setup:
|
|
8
|
+
* app.use(clientPlugin({ baseUrl: '/api', query: queryIntegration() }));
|
|
9
|
+
*
|
|
10
|
+
* // In components — base client:
|
|
11
|
+
* const client = use('client'); // → Client
|
|
12
|
+
*
|
|
13
|
+
* // In components — query client:
|
|
14
|
+
* const client = useQueryClient(); // → QueryClient (explicit opt-in)
|
|
15
|
+
*
|
|
16
|
+
* The cast lives once here, not scattered across user-code.
|
|
17
|
+
*/
|
|
18
|
+
import { use } from '@liteforge/runtime';
|
|
19
|
+
import { createQuery } from '@liteforge/query';
|
|
20
|
+
import { createMutation } from '@liteforge/query';
|
|
21
|
+
import { createClient } from './client.js';
|
|
22
|
+
// ============================================================================
|
|
23
|
+
// queryIntegration() — explicit integration factory, no Magic resolve()
|
|
24
|
+
// ============================================================================
|
|
25
|
+
/**
|
|
26
|
+
* Creates a QueryIntegration object to wire @liteforge/query into the client.
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* app.use(clientPlugin({ baseUrl: '/api', query: queryIntegration() }));
|
|
30
|
+
*/
|
|
31
|
+
export function queryIntegration() {
|
|
32
|
+
return { createQuery, createMutation };
|
|
33
|
+
}
|
|
34
|
+
export function clientPlugin(options) {
|
|
35
|
+
return {
|
|
36
|
+
name: 'client',
|
|
37
|
+
install(context) {
|
|
38
|
+
context.provide('client', createClient(options));
|
|
39
|
+
},
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
// ============================================================================
|
|
43
|
+
// useQueryClient() — typed helper, cast lives here not in user-code
|
|
44
|
+
// ============================================================================
|
|
45
|
+
/**
|
|
46
|
+
* Returns the registered client as QueryClient.
|
|
47
|
+
* Only call this when clientPlugin was configured with query: queryIntegration().
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* setup({ use }) {
|
|
51
|
+
* const client = useQueryClient();
|
|
52
|
+
* const posts = client.resource<Post, NewPost>('posts');
|
|
53
|
+
* const listQuery = posts.useList();
|
|
54
|
+
* }
|
|
55
|
+
*/
|
|
56
|
+
export function useQueryClient() {
|
|
57
|
+
return use('client');
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAIzC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,+EAA+E;AAC/E,wEAAwE;AACxE,+EAA+E;AAE/E;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,CAAC;AACzC,CAAC;AAQD,MAAM,UAAU,YAAY,CAAC,OAAuD;IAClF,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,OAAO,CAAC,OAAO;YACb,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;QACnD,CAAC;KACF,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,oEAAoE;AACpE,+EAA+E;AAE/E;;;;;;;;;;GAUG;AACH,MAAM,UAAU,cAAc;IAC5B,OAAO,GAAG,CAAC,QAAQ,CAAgB,CAAC;AACtC,CAAC"}
|
package/dist/resource.d.ts
CHANGED
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Provides strongly-typed CRUD methods for a REST resource.
|
|
5
5
|
*/
|
|
6
|
-
import type { Resource, ResourceOptions, RequestConfig } from './types.js';
|
|
7
|
-
import type { QueryIntegration
|
|
8
|
-
export declare function createResource<T, TCreate, TUpdate>(name: string, options: ResourceOptions, request: <R>(config: RequestConfig) => Promise<R>, queryIntegration
|
|
6
|
+
import type { Resource, QueryResource, ResourceOptions, RequestConfig } from './types.js';
|
|
7
|
+
import type { QueryIntegration } from './integrations/query.js';
|
|
8
|
+
export declare function createResource<T, TCreate, TUpdate>(name: string, options: ResourceOptions, request: <R>(config: RequestConfig) => Promise<R>, queryIntegration: QueryIntegration): QueryResource<T, TCreate, TUpdate>;
|
|
9
|
+
export declare function createResource<T, TCreate, TUpdate>(name: string, options: ResourceOptions, request: <R>(config: RequestConfig) => Promise<R>, queryIntegration?: undefined): Resource<T, TCreate, TUpdate>;
|
|
9
10
|
//# sourceMappingURL=resource.d.ts.map
|
package/dist/resource.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource.d.ts","sourceRoot":"","sources":["../src/resource.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,aAAa,EAA4B,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"resource.d.ts","sourceRoot":"","sources":["../src/resource.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,eAAe,EAAE,aAAa,EAA4B,MAAM,YAAY,CAAC;AACpH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAIhE,wBAAgB,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAChD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,EACjD,gBAAgB,EAAE,gBAAgB,GACjC,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACtC,wBAAgB,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAChD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,EACjD,gBAAgB,CAAC,EAAE,SAAS,GAC3B,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC"}
|
package/dist/resource.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource.js","sourceRoot":"","sources":["../src/resource.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"resource.js","sourceRoot":"","sources":["../src/resource.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -67,7 +67,31 @@ export interface ListResponse<T> {
|
|
|
67
67
|
data: T[];
|
|
68
68
|
meta: ListMeta;
|
|
69
69
|
}
|
|
70
|
-
|
|
70
|
+
/**
|
|
71
|
+
* Minimal shape of a query result — matches @liteforge/query's QueryResult<T>
|
|
72
|
+
* without importing it (keeps this file zero-dep).
|
|
73
|
+
*/
|
|
74
|
+
export interface QueryResultShape<T> {
|
|
75
|
+
data: () => T | undefined;
|
|
76
|
+
error: () => Error | undefined;
|
|
77
|
+
isLoading: () => boolean;
|
|
78
|
+
isStale: () => boolean;
|
|
79
|
+
isFetched: () => boolean;
|
|
80
|
+
refetch: () => Promise<void>;
|
|
81
|
+
dispose: () => void;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Minimal shape of a mutation result — matches @liteforge/query's MutationResult<TData, TVariables>.
|
|
85
|
+
*/
|
|
86
|
+
export interface MutationResultShape<TData, TVariables> {
|
|
87
|
+
mutate: (variables: TVariables) => Promise<TData>;
|
|
88
|
+
isLoading: () => boolean;
|
|
89
|
+
error: () => Error | undefined;
|
|
90
|
+
data: () => TData | undefined;
|
|
91
|
+
reset: () => void;
|
|
92
|
+
}
|
|
93
|
+
/** Base CRUD methods shared by Resource and QueryResource. */
|
|
94
|
+
interface ResourceBase<T, TCreate = Partial<T>, TUpdate = Partial<T>> {
|
|
71
95
|
getList: (params?: ListParams) => Promise<ListResponse<T>>;
|
|
72
96
|
getOne: (id: string | number) => Promise<T>;
|
|
73
97
|
create: (data: TCreate) => Promise<T>;
|
|
@@ -79,8 +103,22 @@ export interface Resource<T, TCreate = Partial<T>, TUpdate = Partial<T>> {
|
|
|
79
103
|
path: string;
|
|
80
104
|
}) => Promise<TResult>;
|
|
81
105
|
}
|
|
82
|
-
|
|
83
|
-
|
|
106
|
+
/** Resource without query integration — use* methods absent. */
|
|
107
|
+
export interface Resource<T, TCreate = Partial<T>, TUpdate = Partial<T>> extends ResourceBase<T, TCreate, TUpdate> {
|
|
108
|
+
}
|
|
109
|
+
/** Resource with query integration — use* methods guaranteed present. */
|
|
110
|
+
export interface QueryResource<T, TCreate = Partial<T>, TUpdate = Partial<T>> extends ResourceBase<T, TCreate, TUpdate> {
|
|
111
|
+
useList: (params?: ListParams | (() => ListParams)) => QueryResultShape<ListResponse<T>>;
|
|
112
|
+
useOne: (id: string | number) => QueryResultShape<T>;
|
|
113
|
+
useCreate: () => MutationResultShape<T, TCreate>;
|
|
114
|
+
useUpdate: () => MutationResultShape<T, {
|
|
115
|
+
id: string | number;
|
|
116
|
+
data: TUpdate;
|
|
117
|
+
}>;
|
|
118
|
+
useDelete: () => MutationResultShape<void, string | number>;
|
|
119
|
+
}
|
|
120
|
+
/** Shared HTTP methods used by both Client and QueryClient. */
|
|
121
|
+
interface ClientBase {
|
|
84
122
|
get: <T>(path: string, config?: Partial<RequestConfig>) => Promise<T>;
|
|
85
123
|
post: <T>(path: string, body?: unknown, config?: Partial<RequestConfig>) => Promise<T>;
|
|
86
124
|
put: <T>(path: string, body?: unknown, config?: Partial<RequestConfig>) => Promise<T>;
|
|
@@ -91,8 +129,20 @@ export interface Client {
|
|
|
91
129
|
/** Add middleware. Returns a remove function. */
|
|
92
130
|
use: (middleware: Middleware) => () => void;
|
|
93
131
|
}
|
|
132
|
+
/** Client without query integration — resource() returns Resource (no use* methods). */
|
|
133
|
+
export interface Client extends ClientBase {
|
|
134
|
+
resource: <T, TCreate = Partial<T>, TUpdate = Partial<T>>(name: string, options?: ResourceOptions) => Resource<T, TCreate, TUpdate>;
|
|
135
|
+
}
|
|
136
|
+
/** Client with query integration — resource() returns QueryResource (use* methods guaranteed). */
|
|
137
|
+
export interface QueryClient extends ClientBase {
|
|
138
|
+
resource: <T, TCreate = Partial<T>, TUpdate = Partial<T>>(name: string, options?: ResourceOptions) => QueryResource<T, TCreate, TUpdate>;
|
|
139
|
+
}
|
|
94
140
|
export interface CreateClientOptions extends ClientConfig {
|
|
95
141
|
interceptors?: InterceptorHandlers[];
|
|
96
142
|
middleware?: Middleware[];
|
|
97
143
|
}
|
|
144
|
+
export interface CreateQueryClientOptions extends CreateClientOptions {
|
|
145
|
+
query: import('./integrations/query.js').QueryIntegration;
|
|
146
|
+
}
|
|
147
|
+
export {};
|
|
98
148
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
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": "0.
|
|
3
|
+
"version": "1.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,15 +46,20 @@
|
|
|
46
46
|
"access": "public"
|
|
47
47
|
},
|
|
48
48
|
"peerDependencies": {
|
|
49
|
-
"@liteforge/query": ">=
|
|
49
|
+
"@liteforge/query": ">=1.0.0",
|
|
50
|
+
"@liteforge/runtime": ">=0.4.0"
|
|
50
51
|
},
|
|
51
52
|
"peerDependenciesMeta": {
|
|
52
53
|
"@liteforge/query": {
|
|
53
54
|
"optional": true
|
|
55
|
+
},
|
|
56
|
+
"@liteforge/runtime": {
|
|
57
|
+
"optional": true
|
|
54
58
|
}
|
|
55
59
|
},
|
|
56
60
|
"devDependencies": {
|
|
57
|
-
"@liteforge/query": "0.
|
|
61
|
+
"@liteforge/query": "1.0.0",
|
|
62
|
+
"@liteforge/runtime": "0.4.0"
|
|
58
63
|
},
|
|
59
64
|
"scripts": {
|
|
60
65
|
"build": "tsc -p tsconfig.build.json",
|