tapi-rs 3.0.0 → 4.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/core.d.ts +5 -3
- package/dist/core.d.ts.map +1 -1
- package/dist/endpoints.d.ts +12 -22
- package/dist/endpoints.d.ts.map +1 -1
- package/dist/endpoints.js +5 -11
- package/dist/endpoints.js.map +1 -1
- package/dist/errors.d.ts +0 -8
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +0 -12
- package/dist/errors.js.map +1 -1
- package/dist/hook.d.ts +3 -3
- package/dist/hook.d.ts.map +1 -1
- package/dist/hook.js +25 -61
- package/dist/hook.js.map +1 -1
- package/dist/index.d.ts +6 -94
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -2
- package/dist/index.js.map +1 -1
- package/dist/request.d.ts +1 -1
- package/dist/request.d.ts.map +1 -1
- package/dist/request.js +1 -33
- package/dist/request.js.map +1 -1
- package/dist/response.d.ts +5 -20
- package/dist/response.d.ts.map +1 -1
- package/dist/response.js +5 -2
- package/dist/response.js.map +1 -1
- package/dist/translations.d.ts +0 -2
- package/dist/translations.d.ts.map +1 -1
- package/dist/translations.js +2 -6
- package/dist/translations.js.map +1 -1
- package/dist/types.d.ts +12 -37
- package/dist/types.d.ts.map +1 -1
- package/dist/utils.d.ts +2 -2
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
package/dist/core.d.ts
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import * as Hook from "./hook";
|
|
2
2
|
import { Language } from "./translations";
|
|
3
3
|
import * as Types from "./types";
|
|
4
|
-
type RouteFunction<T extends Types.RequestConfig<any, any, any, any, any, any, any
|
|
5
|
-
useHook: (params: Types.CallSignature<T>
|
|
4
|
+
type RouteFunction<T extends Types.RequestConfig<any, any, any, any, any, any, any>, TError = string> = Types.RequesterFunction<T, TError> & {
|
|
5
|
+
useHook: (params: (Types.CallSignature<T> & {
|
|
6
|
+
lazy?: boolean;
|
|
7
|
+
}) | null) => Hook.HookResponse<T, TError>;
|
|
6
8
|
};
|
|
7
9
|
export type GenerateApiMethods<T extends Types.RouteDefinitions, TError = string> = {
|
|
8
|
-
[K in keyof T]: T[K] extends Types.RequestConfig<any, any, any, any, any, any, any
|
|
10
|
+
[K in keyof T]: T[K] extends Types.RequestConfig<any, any, any, any, any, any, any> ? RouteFunction<T[K], TError> : T[K] extends Types.RouteDefinitions ? GenerateApiMethods<T[K], TError> : never;
|
|
9
11
|
} & {
|
|
10
12
|
/**
|
|
11
13
|
* Update default headers for all requests in this API instance
|
package/dist/core.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,KAAK,aAAa,CAAC,CAAC,SAAS,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
|
package/dist/endpoints.d.ts
CHANGED
|
@@ -1,24 +1,20 @@
|
|
|
1
1
|
import type { RequestConfig } from "./types";
|
|
2
|
-
import type { ResponseConfig } from "./response";
|
|
3
2
|
/**
|
|
4
3
|
* Configuration object for endpoint factories
|
|
5
4
|
*/
|
|
6
|
-
type EndpointOptions
|
|
5
|
+
type EndpointOptions = {
|
|
7
6
|
endpoint: string;
|
|
8
|
-
response: ResponseConfig<TResponse, TMapped, TMapArg>;
|
|
9
7
|
};
|
|
10
8
|
/**
|
|
11
9
|
* Type parameters object - only specify what you need
|
|
12
10
|
*/
|
|
13
|
-
type EndpointTypes<TPath = undefined, TBody = undefined, TFormData = undefined, TQuery = undefined, THeaders = undefined, TResponse = unknown
|
|
11
|
+
type EndpointTypes<TPath = undefined, TBody = undefined, TFormData = undefined, TQuery = undefined, THeaders = undefined, TResponse = unknown> = {
|
|
14
12
|
path?: TPath;
|
|
15
13
|
body?: TBody;
|
|
16
14
|
formData?: TFormData;
|
|
17
15
|
query?: TQuery;
|
|
18
16
|
headers?: THeaders;
|
|
19
17
|
response?: TResponse;
|
|
20
|
-
mapped?: TMapped;
|
|
21
|
-
mapArg?: TMapArg;
|
|
22
18
|
};
|
|
23
19
|
/**
|
|
24
20
|
* Extract types from the config object with defaults
|
|
@@ -41,23 +37,17 @@ type ExtractHeaders<T> = T extends {
|
|
|
41
37
|
type ExtractResponse<T> = T extends {
|
|
42
38
|
response: infer R;
|
|
43
39
|
} ? R : unknown;
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
} ? A : undefined;
|
|
50
|
-
export declare const get: <T extends EndpointTypes<any, any, any, any, any, any, any, any> = {}>() => (config: EndpointOptions<ExtractResponse<T>, ExtractMapped<T>, ExtractMapArg<T>>) => RequestConfig<"GET", ExtractPath<T>, ExtractBody<T>, ExtractFormData<T>, ExtractQuery<T>, ExtractHeaders<T>, ExtractResponse<T>, ExtractMapped<T>, ExtractMapArg<T>>;
|
|
51
|
-
export declare const post: <T extends EndpointTypes<any, any, any, any, any, any, any, any> = {}>() => (config: EndpointOptions<ExtractResponse<T>, ExtractMapped<T>, ExtractMapArg<T>>) => RequestConfig<"POST", ExtractPath<T>, ExtractBody<T>, ExtractFormData<T>, ExtractQuery<T>, ExtractHeaders<T>, ExtractResponse<T>, ExtractMapped<T>, ExtractMapArg<T>>;
|
|
52
|
-
export declare const put: <T extends EndpointTypes<any, any, any, any, any, any, any, any> = {}>() => (config: EndpointOptions<ExtractResponse<T>, ExtractMapped<T>, ExtractMapArg<T>>) => RequestConfig<"PUT", ExtractPath<T>, ExtractBody<T>, ExtractFormData<T>, ExtractQuery<T>, ExtractHeaders<T>, ExtractResponse<T>, ExtractMapped<T>, ExtractMapArg<T>>;
|
|
53
|
-
export declare const del: <T extends EndpointTypes<any, any, any, any, any, any, any, any> = {}>() => (config: EndpointOptions<ExtractResponse<T>, ExtractMapped<T>, ExtractMapArg<T>>) => RequestConfig<"DELETE", ExtractPath<T>, ExtractBody<T>, ExtractFormData<T>, ExtractQuery<T>, ExtractHeaders<T>, ExtractResponse<T>, ExtractMapped<T>, ExtractMapArg<T>>;
|
|
54
|
-
export declare const patch: <T extends EndpointTypes<any, any, any, any, any, any, any, any> = {}>() => (config: EndpointOptions<ExtractResponse<T>, ExtractMapped<T>, ExtractMapArg<T>>) => RequestConfig<"PATCH", ExtractPath<T>, ExtractBody<T>, ExtractFormData<T>, ExtractQuery<T>, ExtractHeaders<T>, ExtractResponse<T>, ExtractMapped<T>, ExtractMapArg<T>>;
|
|
40
|
+
export declare const get: <T extends EndpointTypes<any, any, any, any, any, any> = {}>() => (config: EndpointOptions) => RequestConfig<"GET", ExtractPath<T>, ExtractBody<T>, ExtractFormData<T>, ExtractQuery<T>, ExtractHeaders<T>, ExtractResponse<T>>;
|
|
41
|
+
export declare const post: <T extends EndpointTypes<any, any, any, any, any, any> = {}>() => (config: EndpointOptions) => RequestConfig<"POST", ExtractPath<T>, ExtractBody<T>, ExtractFormData<T>, ExtractQuery<T>, ExtractHeaders<T>, ExtractResponse<T>>;
|
|
42
|
+
export declare const put: <T extends EndpointTypes<any, any, any, any, any, any> = {}>() => (config: EndpointOptions) => RequestConfig<"PUT", ExtractPath<T>, ExtractBody<T>, ExtractFormData<T>, ExtractQuery<T>, ExtractHeaders<T>, ExtractResponse<T>>;
|
|
43
|
+
export declare const del: <T extends EndpointTypes<any, any, any, any, any, any> = {}>() => (config: EndpointOptions) => RequestConfig<"DELETE", ExtractPath<T>, ExtractBody<T>, ExtractFormData<T>, ExtractQuery<T>, ExtractHeaders<T>, ExtractResponse<T>>;
|
|
44
|
+
export declare const patch: <T extends EndpointTypes<any, any, any, any, any, any> = {}>() => (config: EndpointOptions) => RequestConfig<"PATCH", ExtractPath<T>, ExtractBody<T>, ExtractFormData<T>, ExtractQuery<T>, ExtractHeaders<T>, ExtractResponse<T>>;
|
|
55
45
|
export declare const Endpoints: {
|
|
56
|
-
readonly get: <T extends EndpointTypes<any, any, any, any, any, any
|
|
57
|
-
readonly post: <T extends EndpointTypes<any, any, any, any, any, any
|
|
58
|
-
readonly put: <T extends EndpointTypes<any, any, any, any, any, any
|
|
59
|
-
readonly delete: <T extends EndpointTypes<any, any, any, any, any, any
|
|
60
|
-
readonly patch: <T extends EndpointTypes<any, any, any, any, any, any
|
|
46
|
+
readonly get: <T extends EndpointTypes<any, any, any, any, any, any> = {}>() => (config: EndpointOptions) => RequestConfig<"GET", ExtractPath<T>, ExtractBody<T>, ExtractFormData<T>, ExtractQuery<T>, ExtractHeaders<T>, ExtractResponse<T>>;
|
|
47
|
+
readonly post: <T extends EndpointTypes<any, any, any, any, any, any> = {}>() => (config: EndpointOptions) => RequestConfig<"POST", ExtractPath<T>, ExtractBody<T>, ExtractFormData<T>, ExtractQuery<T>, ExtractHeaders<T>, ExtractResponse<T>>;
|
|
48
|
+
readonly put: <T extends EndpointTypes<any, any, any, any, any, any> = {}>() => (config: EndpointOptions) => RequestConfig<"PUT", ExtractPath<T>, ExtractBody<T>, ExtractFormData<T>, ExtractQuery<T>, ExtractHeaders<T>, ExtractResponse<T>>;
|
|
49
|
+
readonly delete: <T extends EndpointTypes<any, any, any, any, any, any> = {}>() => (config: EndpointOptions) => RequestConfig<"DELETE", ExtractPath<T>, ExtractBody<T>, ExtractFormData<T>, ExtractQuery<T>, ExtractHeaders<T>, ExtractResponse<T>>;
|
|
50
|
+
readonly patch: <T extends EndpointTypes<any, any, any, any, any, any> = {}>() => (config: EndpointOptions) => RequestConfig<"PATCH", ExtractPath<T>, ExtractBody<T>, ExtractFormData<T>, ExtractQuery<T>, ExtractHeaders<T>, ExtractResponse<T>>;
|
|
61
51
|
};
|
|
62
52
|
export {};
|
|
63
53
|
//# sourceMappingURL=endpoints.d.ts.map
|
package/dist/endpoints.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"endpoints.d.ts","sourceRoot":"","sources":["../src/endpoints.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"endpoints.d.ts","sourceRoot":"","sources":["../src/endpoints.ts"],"names":[],"mappings":"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"}
|
package/dist/endpoints.js
CHANGED
|
@@ -3,28 +3,22 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Usage:
|
|
5
5
|
* // Simple - just response type
|
|
6
|
-
* Tapi.get<{ response: User[] }>()({ endpoint: "/users"
|
|
6
|
+
* Tapi.get<{ response: User[] }>()({ endpoint: "/users" })
|
|
7
7
|
*
|
|
8
8
|
* // With path params
|
|
9
|
-
* Tapi.get<{ path: { id: string }, response: User }>()({ endpoint: "/users/:id"
|
|
9
|
+
* Tapi.get<{ path: { id: string }, response: User }>()({ endpoint: "/users/:id" })
|
|
10
10
|
*
|
|
11
11
|
* // With query params
|
|
12
|
-
* Tapi.get<{ query: { limit?: number }, response: Post[] }>()({ endpoint: "/posts"
|
|
12
|
+
* Tapi.get<{ query: { limit?: number }, response: Post[] }>()({ endpoint: "/posts" })
|
|
13
13
|
*
|
|
14
14
|
* // With body (for POST/PUT)
|
|
15
|
-
* Tapi.post<{ body: CreateUser, response: User }>()({ endpoint: "/users"
|
|
16
|
-
*
|
|
17
|
-
* // With mapper
|
|
18
|
-
* Tapi.get<{ path: { id: string }, response: User, mapped: UserDTO }>()({
|
|
19
|
-
* endpoint: "/users/:id",
|
|
20
|
-
* response: Tapi.response<User, UserDTO>((u) => () => ({ ...u, fullName: u.name }))
|
|
21
|
-
* })
|
|
15
|
+
* Tapi.post<{ body: CreateUser, response: User }>()({ endpoint: "/users" })
|
|
22
16
|
*/
|
|
23
17
|
function createEndpointFactory(method) {
|
|
24
18
|
return () => (config) => ({
|
|
25
19
|
method,
|
|
26
20
|
endpoint: config.endpoint,
|
|
27
|
-
response:
|
|
21
|
+
response: {} // Phantom type marker - no runtime value needed
|
|
28
22
|
});
|
|
29
23
|
}
|
|
30
24
|
// Individual endpoint factories
|
package/dist/endpoints.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"endpoints.js","sourceRoot":"","sources":["../src/endpoints.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"endpoints.js","sourceRoot":"","sources":["../src/endpoints.ts"],"names":[],"mappings":"AAsCA;;;;;;;;;;;;;;;GAeG;AACH,SAAS,qBAAqB,CAA6B,MAAe;IACxE,OAAO,GAA+D,EAAE,CACtE,CACE,MAAuB,EASvB,EAAE,CAAC,CAAC;QACJ,MAAM;QACN,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,QAAQ,EAAE,EAAE,CAAC,gDAAgD;KAC9D,CAAC,CAAC;AACP,CAAC;AAED,gCAAgC;AAChC,MAAM,CAAC,MAAM,GAAG,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAChD,MAAM,CAAC,MAAM,IAAI,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAClD,MAAM,CAAC,MAAM,GAAG,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAChD,MAAM,CAAC,MAAM,GAAG,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;AACnD,MAAM,CAAC,MAAM,KAAK,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;AAEpD,mBAAmB;AACnB,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,GAAG;IACH,IAAI;IACJ,GAAG;IACH,MAAM,EAAE,GAAG;IACX,KAAK;CACG,CAAC"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -11,14 +11,6 @@ export declare function createNetworkError(message: string, error: Error, code?:
|
|
|
11
11
|
* Creates a custom API error response
|
|
12
12
|
*/
|
|
13
13
|
export declare function createCustomError<T = string>(message: string, data: T, code: number): Types.CustomError<T>;
|
|
14
|
-
/**
|
|
15
|
-
* Creates a mapper error response
|
|
16
|
-
*/
|
|
17
|
-
export declare function createMapperError(message: string, error: Error, code?: number): Types.MapperError;
|
|
18
|
-
/**
|
|
19
|
-
* Creates an undefined parameter error response
|
|
20
|
-
*/
|
|
21
|
-
export declare function createUndefinedParamError(message: string, code?: number): Types.UndefinedParamError;
|
|
22
14
|
/**
|
|
23
15
|
* Type guard to check if response is successful
|
|
24
16
|
*/
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAE1D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,GAAE,MAAY,GAAG,KAAK,CAAC,YAAY,CAExG;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAE1G;AAED;;GAEG;AACH,wBAAgB,
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAE1D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,GAAE,MAAY,GAAG,KAAK,CAAC,YAAY,CAExG;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAE1G;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAA;CAAE,CAE/I;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAA;CAAE,CAE5I"}
|
package/dist/errors.js
CHANGED
|
@@ -16,18 +16,6 @@ export function createNetworkError(message, error, code = 500) {
|
|
|
16
16
|
export function createCustomError(message, data, code) {
|
|
17
17
|
return { ok: false, code, status: "api_error", message, data };
|
|
18
18
|
}
|
|
19
|
-
/**
|
|
20
|
-
* Creates a mapper error response
|
|
21
|
-
*/
|
|
22
|
-
export function createMapperError(message, error, code = 500) {
|
|
23
|
-
return { ok: false, code, status: "mapper_error", message, error };
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Creates an undefined parameter error response
|
|
27
|
-
*/
|
|
28
|
-
export function createUndefinedParamError(message, code = 400) {
|
|
29
|
-
return { ok: false, code, status: "undefined_param", message };
|
|
30
|
-
}
|
|
31
19
|
/**
|
|
32
20
|
* Type guard to check if response is successful
|
|
33
21
|
*/
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,UAAU,aAAa,CAAI,IAAO;IACtC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AAC/C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,KAAY,EAAE,OAAe,GAAG;IAClF,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AACtE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAa,OAAe,EAAE,IAAO,EAAE,IAAY;IAClF,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACjE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,UAAU,aAAa,CAAI,IAAO;IACtC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AAC/C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,KAAY,EAAE,OAAe,GAAG;IAClF,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AACtE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAa,OAAe,EAAE,IAAO,EAAE,IAAY;IAClF,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACjE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CAAI,QAAmC;IAC9D,OAAO,QAAQ,CAAC,EAAE,KAAK,IAAI,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,OAAO,CAAI,QAAmC;IAC5D,OAAO,QAAQ,CAAC,EAAE,KAAK,KAAK,CAAC;AAC/B,CAAC"}
|
package/dist/hook.d.ts
CHANGED
|
@@ -2,9 +2,9 @@ import * as ResponseSchema from "./response";
|
|
|
2
2
|
import * as Types from "./types";
|
|
3
3
|
export type RefreshFunction = (resetState?: boolean) => Promise<boolean>;
|
|
4
4
|
type SetterFunction<T> = (callback: (prev: T) => T) => void;
|
|
5
|
-
export type HookResponse<T extends Types.RequestConfig<any, any, any, any, any, any, any
|
|
6
|
-
export declare function useHook<T extends Types.RequestConfig<any, any, any, any, any, any, any
|
|
5
|
+
export type HookResponse<T extends Types.RequestConfig<any, any, any, any, any, any, any>, TError = string> = [ResponseSchema.InferResult<T["response"]>, null, false, RefreshFunction, SetterFunction<ResponseSchema.InferResult<T["response"]>>] | [null, Types.Errors<TError>, false, RefreshFunction, SetterFunction<ResponseSchema.InferResult<T["response"]>>] | [null, null, true, RefreshFunction, SetterFunction<ResponseSchema.InferResult<T["response"]>>];
|
|
6
|
+
export declare function useHook<T extends Types.RequestConfig<any, any, any, any, any, any, any>, TError = string>(requester: Types.RequesterFunction<T, TError>, callParams: (Types.CallSignature<T> & {
|
|
7
7
|
lazy?: boolean;
|
|
8
|
-
}): HookResponse<T, TError>;
|
|
8
|
+
}) | null): HookResponse<T, TError>;
|
|
9
9
|
export {};
|
|
10
10
|
//# sourceMappingURL=hook.d.ts.map
|
package/dist/hook.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,cAAc,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,cAAc,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAajC,MAAM,MAAM,eAAe,GAAG,CAAC,UAAU,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AACzE,KAAK,cAAc,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;AAE5D,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,IACtG,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE,cAAc,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GACpI,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,cAAc,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAC/G,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,cAAc,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;AAEnG,wBAAgB,OAAO,CAAC,CAAC,SAAS,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EACvG,SAAS,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC,EAAE,MAAM,CAAC,EAC7C,UAAU,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,GAAG,IAAI,GAC/D,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CA2DzB"}
|
package/dist/hook.js
CHANGED
|
@@ -1,16 +1,5 @@
|
|
|
1
1
|
import { useCallback, useEffect, useRef, useState } from "react";
|
|
2
2
|
import isEqual from "react-fast-compare";
|
|
3
|
-
function hasAnyUndefined(obj) {
|
|
4
|
-
if (obj === undefined)
|
|
5
|
-
return true;
|
|
6
|
-
if (typeof obj !== "object" || obj === null)
|
|
7
|
-
return false;
|
|
8
|
-
for (const key in obj) {
|
|
9
|
-
if (hasAnyUndefined(obj[key]))
|
|
10
|
-
return true;
|
|
11
|
-
}
|
|
12
|
-
return false;
|
|
13
|
-
}
|
|
14
3
|
function useDeepCompareMemo(value) {
|
|
15
4
|
const ref = useRef(value);
|
|
16
5
|
if (!isEqual(value, ref.current))
|
|
@@ -22,78 +11,53 @@ function useDeepCompareCallback(fn, deps) {
|
|
|
22
11
|
return useCallback(fn, memoDeps);
|
|
23
12
|
}
|
|
24
13
|
export function useHook(requester, callParams) {
|
|
25
|
-
const [
|
|
26
|
-
const [mappedData, setMappedData] = useState(null);
|
|
14
|
+
const [data, setData] = useState(null);
|
|
27
15
|
const [error, setError] = useState(null);
|
|
28
16
|
const [loading, setLoading] = useState(true);
|
|
29
|
-
const requestParams = useDeepCompareMemo(
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
17
|
+
const requestParams = useDeepCompareMemo(callParams
|
|
18
|
+
? {
|
|
19
|
+
body: callParams.body,
|
|
20
|
+
query: callParams.query,
|
|
21
|
+
headers: callParams.headers,
|
|
22
|
+
path: callParams.path
|
|
23
|
+
}
|
|
24
|
+
: null);
|
|
36
25
|
const fetchData = useDeepCompareCallback(async () => {
|
|
37
|
-
|
|
26
|
+
if (!callParams)
|
|
27
|
+
return true;
|
|
28
|
+
const result = await requester(callParams);
|
|
38
29
|
if (!result.ok) {
|
|
39
|
-
|
|
40
|
-
setLoading(true);
|
|
41
|
-
setUnmappedData(null);
|
|
42
|
-
setMappedData(null);
|
|
43
|
-
setError(null);
|
|
44
|
-
return true;
|
|
45
|
-
}
|
|
46
|
-
setUnmappedData(null);
|
|
47
|
-
setMappedData(null);
|
|
30
|
+
setData(null);
|
|
48
31
|
setError(result);
|
|
49
32
|
setLoading(false);
|
|
50
33
|
return false;
|
|
51
34
|
}
|
|
52
|
-
|
|
53
|
-
const mappedData = mapper ? mapper(result.data)(mapperParams) : result.data;
|
|
54
|
-
setUnmappedData(result.data);
|
|
55
|
-
setMappedData(mappedData);
|
|
35
|
+
setData(result.data);
|
|
56
36
|
setError(null);
|
|
57
37
|
setLoading(false);
|
|
58
38
|
return true;
|
|
59
|
-
}, [requester, requestParams]);
|
|
60
|
-
useEffect(() => {
|
|
61
|
-
// Only fetch data automatically if not in lazy mode
|
|
62
|
-
if (!callParams.lazy) {
|
|
63
|
-
fetchData();
|
|
64
|
-
}
|
|
65
|
-
}, [fetchData, callParams.lazy]);
|
|
39
|
+
}, [requester, requestParams, callParams]);
|
|
66
40
|
useEffect(() => {
|
|
67
|
-
if
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
else {
|
|
73
|
-
setMappedData(unmappedData);
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
}, [mapperParams]);
|
|
41
|
+
// Don't fetch if callParams is null or in lazy mode
|
|
42
|
+
if (!callParams || callParams.lazy)
|
|
43
|
+
return;
|
|
44
|
+
fetchData();
|
|
45
|
+
}, [fetchData, callParams]);
|
|
77
46
|
const setter = useCallback((callback) => {
|
|
78
|
-
|
|
47
|
+
setData((prev) => {
|
|
79
48
|
if (prev === null)
|
|
80
49
|
return null;
|
|
81
|
-
|
|
82
|
-
const mapper = requester.mapper;
|
|
83
|
-
if (mapper)
|
|
84
|
-
return mapper(next)(mapperParams);
|
|
85
|
-
return next;
|
|
50
|
+
return callback(prev);
|
|
86
51
|
});
|
|
87
|
-
}, [
|
|
52
|
+
}, []);
|
|
88
53
|
async function refresh(resetState) {
|
|
89
54
|
if (resetState) {
|
|
90
55
|
setLoading(true);
|
|
91
|
-
|
|
92
|
-
setMappedData(null);
|
|
56
|
+
setData(null);
|
|
93
57
|
setError(null);
|
|
94
58
|
}
|
|
95
59
|
return await fetchData();
|
|
96
60
|
}
|
|
97
|
-
return [
|
|
61
|
+
return [data, error, loading, refresh, setter];
|
|
98
62
|
}
|
|
99
63
|
//# sourceMappingURL=hook.js.map
|
package/dist/hook.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook.js","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjE,OAAO,OAAO,MAAM,oBAAoB,CAAC;AAKzC,SAAS,
|
|
1
|
+
{"version":3,"file":"hook.js","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
export type { CustomError, Errors, HttpMethod,
|
|
1
|
+
export type { CustomError, Errors, HttpMethod, NetworkError, ApiResponse, Success } from "./types";
|
|
2
2
|
export type { RefreshFunction } from "./hook";
|
|
3
3
|
export type { Language } from "./translations";
|
|
4
|
-
export type { ResponseConfig } from "./response";
|
|
5
4
|
import { TapiBuilder } from "./core";
|
|
6
|
-
import { create as response } from "./response";
|
|
7
5
|
/**
|
|
8
6
|
* Tapi - Type-safe API client builder
|
|
9
7
|
*
|
|
@@ -12,7 +10,6 @@ import { create as response } from "./response";
|
|
|
12
10
|
*/
|
|
13
11
|
declare const Tapi: {
|
|
14
12
|
readonly builder: () => TapiBuilder<{}, string, false, false, false>;
|
|
15
|
-
readonly response: typeof response;
|
|
16
13
|
readonly get: <T extends {
|
|
17
14
|
path?: any;
|
|
18
15
|
body?: any;
|
|
@@ -20,19 +17,8 @@ declare const Tapi: {
|
|
|
20
17
|
query?: any;
|
|
21
18
|
headers?: any;
|
|
22
19
|
response?: any;
|
|
23
|
-
mapped?: any;
|
|
24
|
-
mapArg?: any;
|
|
25
20
|
} = {}>() => (config: {
|
|
26
21
|
endpoint: string;
|
|
27
|
-
response: import("./response").ResponseConfig<T extends {
|
|
28
|
-
response: infer R;
|
|
29
|
-
} ? R : unknown, T extends {
|
|
30
|
-
mapped: infer M;
|
|
31
|
-
} ? M : T extends {
|
|
32
|
-
response: infer R;
|
|
33
|
-
} ? R : unknown, T extends {
|
|
34
|
-
mapArg: infer A;
|
|
35
|
-
} ? A : undefined>;
|
|
36
22
|
}) => import("./types").RequestConfig<"GET", T extends {
|
|
37
23
|
path: infer P;
|
|
38
24
|
} ? P : undefined, T extends {
|
|
@@ -45,13 +31,7 @@ declare const Tapi: {
|
|
|
45
31
|
headers: infer H;
|
|
46
32
|
} ? H : undefined, T extends {
|
|
47
33
|
response: infer R;
|
|
48
|
-
} ? R : unknown
|
|
49
|
-
mapped: infer M;
|
|
50
|
-
} ? M : T extends {
|
|
51
|
-
response: infer R;
|
|
52
|
-
} ? R : unknown, T extends {
|
|
53
|
-
mapArg: infer A;
|
|
54
|
-
} ? A : undefined>;
|
|
34
|
+
} ? R : unknown>;
|
|
55
35
|
readonly post: <T extends {
|
|
56
36
|
path?: any;
|
|
57
37
|
body?: any;
|
|
@@ -59,19 +39,8 @@ declare const Tapi: {
|
|
|
59
39
|
query?: any;
|
|
60
40
|
headers?: any;
|
|
61
41
|
response?: any;
|
|
62
|
-
mapped?: any;
|
|
63
|
-
mapArg?: any;
|
|
64
42
|
} = {}>() => (config: {
|
|
65
43
|
endpoint: string;
|
|
66
|
-
response: import("./response").ResponseConfig<T extends {
|
|
67
|
-
response: infer R;
|
|
68
|
-
} ? R : unknown, T extends {
|
|
69
|
-
mapped: infer M;
|
|
70
|
-
} ? M : T extends {
|
|
71
|
-
response: infer R;
|
|
72
|
-
} ? R : unknown, T extends {
|
|
73
|
-
mapArg: infer A;
|
|
74
|
-
} ? A : undefined>;
|
|
75
44
|
}) => import("./types").RequestConfig<"POST", T extends {
|
|
76
45
|
path: infer P;
|
|
77
46
|
} ? P : undefined, T extends {
|
|
@@ -84,13 +53,7 @@ declare const Tapi: {
|
|
|
84
53
|
headers: infer H;
|
|
85
54
|
} ? H : undefined, T extends {
|
|
86
55
|
response: infer R;
|
|
87
|
-
} ? R : unknown
|
|
88
|
-
mapped: infer M;
|
|
89
|
-
} ? M : T extends {
|
|
90
|
-
response: infer R;
|
|
91
|
-
} ? R : unknown, T extends {
|
|
92
|
-
mapArg: infer A;
|
|
93
|
-
} ? A : undefined>;
|
|
56
|
+
} ? R : unknown>;
|
|
94
57
|
readonly put: <T extends {
|
|
95
58
|
path?: any;
|
|
96
59
|
body?: any;
|
|
@@ -98,19 +61,8 @@ declare const Tapi: {
|
|
|
98
61
|
query?: any;
|
|
99
62
|
headers?: any;
|
|
100
63
|
response?: any;
|
|
101
|
-
mapped?: any;
|
|
102
|
-
mapArg?: any;
|
|
103
64
|
} = {}>() => (config: {
|
|
104
65
|
endpoint: string;
|
|
105
|
-
response: import("./response").ResponseConfig<T extends {
|
|
106
|
-
response: infer R;
|
|
107
|
-
} ? R : unknown, T extends {
|
|
108
|
-
mapped: infer M;
|
|
109
|
-
} ? M : T extends {
|
|
110
|
-
response: infer R;
|
|
111
|
-
} ? R : unknown, T extends {
|
|
112
|
-
mapArg: infer A;
|
|
113
|
-
} ? A : undefined>;
|
|
114
66
|
}) => import("./types").RequestConfig<"PUT", T extends {
|
|
115
67
|
path: infer P;
|
|
116
68
|
} ? P : undefined, T extends {
|
|
@@ -123,13 +75,7 @@ declare const Tapi: {
|
|
|
123
75
|
headers: infer H;
|
|
124
76
|
} ? H : undefined, T extends {
|
|
125
77
|
response: infer R;
|
|
126
|
-
} ? R : unknown
|
|
127
|
-
mapped: infer M;
|
|
128
|
-
} ? M : T extends {
|
|
129
|
-
response: infer R;
|
|
130
|
-
} ? R : unknown, T extends {
|
|
131
|
-
mapArg: infer A;
|
|
132
|
-
} ? A : undefined>;
|
|
78
|
+
} ? R : unknown>;
|
|
133
79
|
readonly delete: <T extends {
|
|
134
80
|
path?: any;
|
|
135
81
|
body?: any;
|
|
@@ -137,19 +83,8 @@ declare const Tapi: {
|
|
|
137
83
|
query?: any;
|
|
138
84
|
headers?: any;
|
|
139
85
|
response?: any;
|
|
140
|
-
mapped?: any;
|
|
141
|
-
mapArg?: any;
|
|
142
86
|
} = {}>() => (config: {
|
|
143
87
|
endpoint: string;
|
|
144
|
-
response: import("./response").ResponseConfig<T extends {
|
|
145
|
-
response: infer R;
|
|
146
|
-
} ? R : unknown, T extends {
|
|
147
|
-
mapped: infer M;
|
|
148
|
-
} ? M : T extends {
|
|
149
|
-
response: infer R;
|
|
150
|
-
} ? R : unknown, T extends {
|
|
151
|
-
mapArg: infer A;
|
|
152
|
-
} ? A : undefined>;
|
|
153
88
|
}) => import("./types").RequestConfig<"DELETE", T extends {
|
|
154
89
|
path: infer P;
|
|
155
90
|
} ? P : undefined, T extends {
|
|
@@ -162,13 +97,7 @@ declare const Tapi: {
|
|
|
162
97
|
headers: infer H;
|
|
163
98
|
} ? H : undefined, T extends {
|
|
164
99
|
response: infer R;
|
|
165
|
-
} ? R : unknown
|
|
166
|
-
mapped: infer M;
|
|
167
|
-
} ? M : T extends {
|
|
168
|
-
response: infer R;
|
|
169
|
-
} ? R : unknown, T extends {
|
|
170
|
-
mapArg: infer A;
|
|
171
|
-
} ? A : undefined>;
|
|
100
|
+
} ? R : unknown>;
|
|
172
101
|
readonly patch: <T extends {
|
|
173
102
|
path?: any;
|
|
174
103
|
body?: any;
|
|
@@ -176,19 +105,8 @@ declare const Tapi: {
|
|
|
176
105
|
query?: any;
|
|
177
106
|
headers?: any;
|
|
178
107
|
response?: any;
|
|
179
|
-
mapped?: any;
|
|
180
|
-
mapArg?: any;
|
|
181
108
|
} = {}>() => (config: {
|
|
182
109
|
endpoint: string;
|
|
183
|
-
response: import("./response").ResponseConfig<T extends {
|
|
184
|
-
response: infer R;
|
|
185
|
-
} ? R : unknown, T extends {
|
|
186
|
-
mapped: infer M;
|
|
187
|
-
} ? M : T extends {
|
|
188
|
-
response: infer R;
|
|
189
|
-
} ? R : unknown, T extends {
|
|
190
|
-
mapArg: infer A;
|
|
191
|
-
} ? A : undefined>;
|
|
192
110
|
}) => import("./types").RequestConfig<"PATCH", T extends {
|
|
193
111
|
path: infer P;
|
|
194
112
|
} ? P : undefined, T extends {
|
|
@@ -201,13 +119,7 @@ declare const Tapi: {
|
|
|
201
119
|
headers: infer H;
|
|
202
120
|
} ? H : undefined, T extends {
|
|
203
121
|
response: infer R;
|
|
204
|
-
} ? R : unknown
|
|
205
|
-
mapped: infer M;
|
|
206
|
-
} ? M : T extends {
|
|
207
|
-
response: infer R;
|
|
208
|
-
} ? R : unknown, T extends {
|
|
209
|
-
mapArg: infer A;
|
|
210
|
-
} ? A : undefined>;
|
|
122
|
+
} ? R : unknown>;
|
|
211
123
|
};
|
|
212
124
|
export default Tapi;
|
|
213
125
|
//# 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,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEnG,YAAY,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAC9C,YAAY,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAGrC;;;;;GAKG;AACH,QAAA,MAAM,IAAI;;;;;;;;;kBAU2/B;;KAA8B;;;;;;;;;;;;;;;;;;;;kBAA9B;;KAA8B;;;;;;;;;;;;;;;;;;;;kBAA9B;;KAA8B;;;;;;;;;;;;;;;;;;;;kBAA9B;;KAA8B;;;;;;;;;;;;;;;;;;;;kBAA9B;;KAA8B;;;;;;;;;;;;;CAHzhC,CAAC;AAEX,eAAe,IAAI,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { TapiBuilder } from "./core";
|
|
2
2
|
import { Endpoints } from "./endpoints";
|
|
3
|
-
import { create as response } from "./response";
|
|
4
3
|
/**
|
|
5
4
|
* Tapi - Type-safe API client builder
|
|
6
5
|
*
|
|
@@ -9,7 +8,6 @@ import { create as response } from "./response";
|
|
|
9
8
|
*/
|
|
10
9
|
const Tapi = {
|
|
11
10
|
builder: () => new TapiBuilder(),
|
|
12
|
-
response,
|
|
13
11
|
get: Endpoints.get,
|
|
14
12
|
post: Endpoints.post,
|
|
15
13
|
put: Endpoints.put,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;;;;GAKG;AACH,MAAM,IAAI,GAAG;IACX,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,WAAW,EAAE;IAChC,GAAG,EAAE,SAAS,CAAC,GAAG;IAClB,IAAI,EAAE,SAAS,CAAC,IAAI;IACpB,GAAG,EAAE,SAAS,CAAC,GAAG;IAClB,MAAM,EAAE,SAAS,CAAC,MAAM;IACxB,KAAK,EAAE,SAAS,CAAC,KAAK;CACd,CAAC;AAEX,eAAe,IAAI,CAAC"}
|
package/dist/request.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as ResponseSchema from "./response";
|
|
2
2
|
import { Language } from "./translations";
|
|
3
3
|
import * as Types from "./types";
|
|
4
|
-
export declare function create<TConfig extends Types.RequestConfig<any, any, any, any, any, any, any
|
|
4
|
+
export declare function create<TConfig extends Types.RequestConfig<any, any, any, any, any, any, any>, TError = string>(host: string, config: TConfig, prefetchCallback: Types.PrefetchCallback | undefined, postfetchCallback: Types.PostfetchCallback<ResponseSchema.InferResult<TConfig["response"]>, TError> | undefined, defaultHeaders: Record<string, string> | undefined, errorHandler: (response: Response) => Promise<TError>, language?: Language): Types.RequesterFunction<TConfig, TError>;
|
|
5
5
|
//# sourceMappingURL=request.d.ts.map
|
package/dist/request.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../src/request.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,cAAc,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAK,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../src/request.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,cAAc,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAK,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAWjC,wBAAgB,MAAM,CAAC,OAAO,SAAS,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAC5G,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,OAAO,EACf,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,GAAG,SAAS,EACpD,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,CAAC,cAAc,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,SAAS,EAC/G,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAClD,YAAY,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,MAAM,CAAC,EACrD,QAAQ,GAAE,QAAe,GACxB,KAAK,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,CAwE1C"}
|
package/dist/request.js
CHANGED
|
@@ -1,17 +1,6 @@
|
|
|
1
1
|
import * as Errors from "./errors";
|
|
2
2
|
import { t } from "./translations";
|
|
3
3
|
import * as Utils from "./utils";
|
|
4
|
-
function hasAnyUndefined(obj) {
|
|
5
|
-
if (obj === undefined)
|
|
6
|
-
return true;
|
|
7
|
-
if (typeof obj !== "object" || obj === null)
|
|
8
|
-
return false;
|
|
9
|
-
for (const key in obj) {
|
|
10
|
-
if (hasAnyUndefined(obj[key]))
|
|
11
|
-
return true;
|
|
12
|
-
}
|
|
13
|
-
return false;
|
|
14
|
-
}
|
|
15
4
|
function dispatchPostFetchCallback(callback, args) {
|
|
16
5
|
if (callback) {
|
|
17
6
|
Promise.resolve()
|
|
@@ -24,13 +13,6 @@ export function create(host, config, prefetchCallback, postfetchCallback, defaul
|
|
|
24
13
|
const requester = async function (params) {
|
|
25
14
|
const promise = async () => {
|
|
26
15
|
try {
|
|
27
|
-
// Check for undefined parameters if requested
|
|
28
|
-
if (params.preventFetchingWithUndefinedParams && hasAnyUndefined(params)) {
|
|
29
|
-
const undefinedError = Errors.createUndefinedParamError(translations.errors.undefinedParams, 400);
|
|
30
|
-
const nError = { ...undefinedError, endpoint: config.endpoint, method: config.method };
|
|
31
|
-
dispatchPostFetchCallback(postfetchCallback, nError);
|
|
32
|
-
return nError;
|
|
33
|
-
}
|
|
34
16
|
const url = Utils.buildUrl(host, config, params);
|
|
35
17
|
// Prepare request details for prefetchCallback
|
|
36
18
|
const headers = new Headers({ ...(defaultHeaders || {}) });
|
|
@@ -76,20 +58,7 @@ export function create(host, config, prefetchCallback, postfetchCallback, defaul
|
|
|
76
58
|
}
|
|
77
59
|
// Parse response data (no validation, trust the types)
|
|
78
60
|
const data = await response.json();
|
|
79
|
-
|
|
80
|
-
let resultData = data;
|
|
81
|
-
if (!params.skipMapper && config.response.mapper) {
|
|
82
|
-
try {
|
|
83
|
-
resultData = config.response.mapper(data)(params.map);
|
|
84
|
-
}
|
|
85
|
-
catch (error) {
|
|
86
|
-
const mapperError = Errors.createMapperError(translations.errors.mapperError, error instanceof Error ? error : new Error(String(error)));
|
|
87
|
-
const nError = { ...mapperError, endpoint: config.endpoint, method: config.method };
|
|
88
|
-
dispatchPostFetchCallback(postfetchCallback, nError);
|
|
89
|
-
return nError;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
const successResult = Errors.createSuccess(resultData);
|
|
61
|
+
const successResult = Errors.createSuccess(data);
|
|
93
62
|
const nResult = { ...successResult, endpoint: config.endpoint, method: config.method };
|
|
94
63
|
dispatchPostFetchCallback(postfetchCallback, nResult);
|
|
95
64
|
return nResult;
|
|
@@ -103,7 +72,6 @@ export function create(host, config, prefetchCallback, postfetchCallback, defaul
|
|
|
103
72
|
};
|
|
104
73
|
return await promise();
|
|
105
74
|
};
|
|
106
|
-
requester.mapper = config.response.mapper;
|
|
107
75
|
return requester;
|
|
108
76
|
}
|
|
109
77
|
//# sourceMappingURL=request.js.map
|
package/dist/request.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.js","sourceRoot":"","sources":["../src/request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AAEnC,OAAO,EAAY,CAAC,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,SAAS,
|
|
1
|
+
{"version":3,"file":"request.js","sourceRoot":"","sources":["../src/request.ts"],"names":[],"mappings":"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"}
|
package/dist/response.d.ts
CHANGED
|
@@ -1,27 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Response configuration
|
|
3
|
-
* Uses pure TypeScript types instead of Zod schemas
|
|
2
|
+
* Response configuration - phantom type marker for type inference
|
|
4
3
|
*/
|
|
5
|
-
export type ResponseConfig<TResponse
|
|
4
|
+
export type ResponseConfig<TResponse> = {
|
|
6
5
|
_response?: TResponse;
|
|
7
|
-
mapper?: MapperCallback<TResponse, TMapArg, TMapped>;
|
|
8
6
|
};
|
|
9
|
-
type
|
|
10
|
-
type MapperCallback<TResponse, TArg, TResult> = (data: Readonly<TResponse>) => (arg: MapperCallbackArg<TArg>) => TResult;
|
|
11
|
-
export type InferResult<T> = T extends ResponseConfig<infer TResponse, infer TMapped, any> ? (TMapped extends TResponse ? TResponse : TMapped) : never;
|
|
12
|
-
export type InferMapperArg<T> = T extends ResponseConfig<any, any, infer TArg> ? TArg : never;
|
|
13
|
-
export type InferMapper<T> = T extends ResponseConfig<infer TResponse, infer TMapped, infer TArg> ? MapperCallback<TResponse, TArg, TMapped> : undefined;
|
|
7
|
+
export type InferResult<T> = T extends ResponseConfig<infer TResponse> ? TResponse : never;
|
|
14
8
|
/**
|
|
15
|
-
* Create a response configuration
|
|
9
|
+
* Create a response configuration (phantom type marker)
|
|
16
10
|
*/
|
|
17
|
-
export declare function create<TResponse>(): ResponseConfig<TResponse
|
|
18
|
-
/**
|
|
19
|
-
* Create a response configuration with a mapper (no args)
|
|
20
|
-
*/
|
|
21
|
-
export declare function create<TResponse, TMapped>(mapper: (data: Readonly<TResponse>) => () => TMapped): ResponseConfig<TResponse, TMapped, undefined>;
|
|
22
|
-
/**
|
|
23
|
-
* Create a response configuration with a mapper that takes arguments
|
|
24
|
-
*/
|
|
25
|
-
export declare function create<TResponse, TMapped, TMapArg>(mapper: MapperCallback<TResponse, TMapArg, TMapped>): ResponseConfig<TResponse, TMapped, TMapArg>;
|
|
26
|
-
export {};
|
|
11
|
+
export declare function create<TResponse>(): ResponseConfig<TResponse>;
|
|
27
12
|
//# sourceMappingURL=response.d.ts.map
|
package/dist/response.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../src/response.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../src/response.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,cAAc,CAAC,SAAS,IAAI;IACtC,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,CAAC;AAGF,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,cAAc,CAAC,MAAM,SAAS,CAAC,GAAG,SAAS,GAAG,KAAK,CAAC;AAE3F;;GAEG;AACH,wBAAgB,MAAM,CAAC,SAAS,KAAK,cAAc,CAAC,SAAS,CAAC,CAE7D"}
|
package/dist/response.js
CHANGED
package/dist/response.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"response.js","sourceRoot":"","sources":["../src/response.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"response.js","sourceRoot":"","sources":["../src/response.ts"],"names":[],"mappings":"AAUA;;GAEG;AACH,MAAM,UAAU,MAAM;IACpB,OAAO,EAA+B,CAAC;AACzC,CAAC"}
|
package/dist/translations.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../src/translations.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC;AAEnC,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE;QACN,aAAa,EAAE,MAAM,CAAC;QACtB,
|
|
1
|
+
{"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../src/translations.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC;AAEnC,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE;QACN,aAAa,EAAE,MAAM,CAAC;QACtB,kBAAkB,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,OAAO,EAAE;QACP,YAAY,EAAE,MAAM,CAAC;QACrB,cAAc,EAAE,MAAM,CAAC;QACvB,oBAAoB,EAAE,MAAM,CAAC;KAC9B,CAAC;CACH;AA2BD,wBAAgB,eAAe,CAAC,QAAQ,GAAE,QAAe,GAAG,YAAY,CAEvE;AAED,wBAAgB,CAAC,CAAC,QAAQ,GAAE,QAAe,GAAG,YAAY,CAEzD"}
|
package/dist/translations.js
CHANGED
|
@@ -2,9 +2,7 @@ const translations = {
|
|
|
2
2
|
en: {
|
|
3
3
|
errors: {
|
|
4
4
|
requestFailed: "Unable to complete the request",
|
|
5
|
-
|
|
6
|
-
invalidErrorFormat: "Invalid error message format",
|
|
7
|
-
undefinedParams: "Undefined parameters present"
|
|
5
|
+
invalidErrorFormat: "Invalid error message format"
|
|
8
6
|
},
|
|
9
7
|
builder: {
|
|
10
8
|
hostRequired: "Host is required - use .withHost() first",
|
|
@@ -15,9 +13,7 @@ const translations = {
|
|
|
15
13
|
br: {
|
|
16
14
|
errors: {
|
|
17
15
|
requestFailed: "Não foi possível completar a requisição",
|
|
18
|
-
|
|
19
|
-
invalidErrorFormat: "Formato de mensagem de erro inválido",
|
|
20
|
-
undefinedParams: "Parâmetros 'undefined' presentes"
|
|
16
|
+
invalidErrorFormat: "Formato de mensagem de erro inválido"
|
|
21
17
|
},
|
|
22
18
|
builder: {
|
|
23
19
|
hostRequired: "Host é obrigatório - use .withHost() primeiro",
|
package/dist/translations.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"translations.js","sourceRoot":"","sources":["../src/translations.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"translations.js","sourceRoot":"","sources":["../src/translations.ts"],"names":[],"mappings":"AAcA,MAAM,YAAY,GAAmC;IACnD,EAAE,EAAE;QACF,MAAM,EAAE;YACN,aAAa,EAAE,gCAAgC;YAC/C,kBAAkB,EAAE,8BAA8B;SACnD;QACD,OAAO,EAAE;YACP,YAAY,EAAE,0CAA0C;YACxD,cAAc,EAAE,+CAA+C;YAC/D,oBAAoB,EAAE,uDAAuD;SAC9E;KACF;IACD,EAAE,EAAE;QACF,MAAM,EAAE;YACN,aAAa,EAAE,yCAAyC;YACxD,kBAAkB,EAAE,sCAAsC;SAC3D;QACD,OAAO,EAAE;YACP,YAAY,EAAE,+CAA+C;YAC7D,cAAc,EAAE,qDAAqD;YACrE,oBAAoB,EAAE,kEAAkE;SACzF;KACF;CACF,CAAC;AAEF,MAAM,UAAU,eAAe,CAAC,WAAqB,IAAI;IACvD,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,CAAC,CAAC,WAAqB,IAAI;IACzC,OAAO,eAAe,CAAC,QAAQ,CAAC,CAAC;AACnC,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -4,13 +4,13 @@ export type HttpMethod = "GET" | "POST" | "PUT" | "DELETE" | "PATCH";
|
|
|
4
4
|
* Request configuration with pure TypeScript types
|
|
5
5
|
* Types are passed via generics, not runtime schemas
|
|
6
6
|
*/
|
|
7
|
-
export type RequestConfig<TMethod extends HttpMethod = HttpMethod, TPath = undefined, TBody = undefined, TFormData = undefined, TQuery = undefined, THeaders = undefined, TResponse = unknown
|
|
7
|
+
export type RequestConfig<TMethod extends HttpMethod = HttpMethod, TPath = undefined, TBody = undefined, TFormData = undefined, TQuery = undefined, THeaders = undefined, TResponse = unknown> = {
|
|
8
8
|
method: TMethod;
|
|
9
9
|
endpoint: string;
|
|
10
|
-
response: ResponseSchema.ResponseConfig<TResponse
|
|
10
|
+
response: ResponseSchema.ResponseConfig<TResponse>;
|
|
11
11
|
};
|
|
12
12
|
export type RouteDefinitions = {
|
|
13
|
-
[key: string]: RequestConfig<any, any, any, any, any, any, any
|
|
13
|
+
[key: string]: RequestConfig<any, any, any, any, any, any, any> | RouteDefinitions;
|
|
14
14
|
};
|
|
15
15
|
type InferPathParam<TPath> = TPath extends undefined ? {
|
|
16
16
|
path?: never;
|
|
@@ -37,23 +37,13 @@ type InferHeaderParam<THeaders> = THeaders extends undefined ? {
|
|
|
37
37
|
} : {
|
|
38
38
|
headers: THeaders;
|
|
39
39
|
};
|
|
40
|
-
type ExtractPath<T> = T extends RequestConfig<any, infer P, any, any, any, any, any
|
|
41
|
-
type ExtractBody<T> = T extends RequestConfig<any, any, infer B, any, any, any, any
|
|
42
|
-
type ExtractFormData<T> = T extends RequestConfig<any, any, any, infer F, any, any, any
|
|
43
|
-
type ExtractQuery<T> = T extends RequestConfig<any, any, any, any, infer Q, any, any
|
|
44
|
-
type ExtractHeaders<T> = T extends RequestConfig<any, any, any, any, any, infer H, any
|
|
45
|
-
type
|
|
46
|
-
export type
|
|
47
|
-
export type InferMapperParams<T extends RequestConfig<any, any, any, any, any, any, any, any, any>> = ExtractMapArg<T> extends undefined ? {
|
|
48
|
-
map?: never;
|
|
49
|
-
} : {
|
|
50
|
-
map: ExtractMapArg<T>;
|
|
51
|
-
};
|
|
52
|
-
export type CallSignature<T extends RequestConfig<any, any, any, any, any, any, any, any, any>> = InferPathParam<ExtractPath<T>> & InferBodyParam<ExtractBody<T>> & InferFormDataParam<ExtractFormData<T>> & InferQueryParam<ExtractQuery<T>> & InferHeaderParam<ExtractHeaders<T>> & InferMapperParams<T> & {
|
|
53
|
-
lazy?: boolean;
|
|
54
|
-
skipMapper?: boolean;
|
|
55
|
-
preventFetchingWithUndefinedParams?: boolean;
|
|
56
|
-
};
|
|
40
|
+
type ExtractPath<T> = T extends RequestConfig<any, infer P, any, any, any, any, any> ? P : undefined;
|
|
41
|
+
type ExtractBody<T> = T extends RequestConfig<any, any, infer B, any, any, any, any> ? B : undefined;
|
|
42
|
+
type ExtractFormData<T> = T extends RequestConfig<any, any, any, infer F, any, any, any> ? F : undefined;
|
|
43
|
+
type ExtractQuery<T> = T extends RequestConfig<any, any, any, any, infer Q, any, any> ? Q : undefined;
|
|
44
|
+
type ExtractHeaders<T> = T extends RequestConfig<any, any, any, any, any, infer H, any> ? H : undefined;
|
|
45
|
+
export type RequesterParams<T extends RequestConfig<any, any, any, any, any, any, any>> = InferPathParam<ExtractPath<T>> & InferBodyParam<ExtractBody<T>> & InferFormDataParam<ExtractFormData<T>> & InferQueryParam<ExtractQuery<T>> & InferHeaderParam<ExtractHeaders<T>>;
|
|
46
|
+
export type CallSignature<T extends RequestConfig<any, any, any, any, any, any, any>> = InferPathParam<ExtractPath<T>> & InferBodyParam<ExtractBody<T>> & InferFormDataParam<ExtractFormData<T>> & InferQueryParam<ExtractQuery<T>> & InferHeaderParam<ExtractHeaders<T>>;
|
|
57
47
|
export type PrefetchCallback = (args: {
|
|
58
48
|
url: string;
|
|
59
49
|
method: HttpMethod;
|
|
@@ -66,12 +56,6 @@ export type Success<T> = {
|
|
|
66
56
|
status: "success";
|
|
67
57
|
data: T;
|
|
68
58
|
};
|
|
69
|
-
export type UndefinedParamError = {
|
|
70
|
-
ok: false;
|
|
71
|
-
code: number;
|
|
72
|
-
status: "undefined_param";
|
|
73
|
-
message: string;
|
|
74
|
-
};
|
|
75
59
|
export type NetworkError = {
|
|
76
60
|
ok: false;
|
|
77
61
|
code: number;
|
|
@@ -86,20 +70,11 @@ export type CustomError<T = string> = {
|
|
|
86
70
|
message: string;
|
|
87
71
|
data: T;
|
|
88
72
|
};
|
|
89
|
-
export type
|
|
90
|
-
ok: false;
|
|
91
|
-
code: number;
|
|
92
|
-
status: "mapper_error";
|
|
93
|
-
message: string;
|
|
94
|
-
error: Error;
|
|
95
|
-
};
|
|
96
|
-
export type Errors<T = string> = NetworkError | CustomError<T> | MapperError | UndefinedParamError;
|
|
73
|
+
export type Errors<T = string> = NetworkError | CustomError<T>;
|
|
97
74
|
export type ApiResponse<TData, TError = string> = (Success<TData> | Errors<TError>) & {
|
|
98
75
|
endpoint: string;
|
|
99
76
|
method: HttpMethod;
|
|
100
77
|
};
|
|
101
|
-
export type RequesterFunction<TConfig extends RequestConfig<any, any, any, any, any, any, any
|
|
102
|
-
mapper?: ResponseSchema.InferMapper<TConfig["response"]>;
|
|
103
|
-
};
|
|
78
|
+
export type RequesterFunction<TConfig extends RequestConfig<any, any, any, any, any, any, any>, TError = string> = (params: CallSignature<TConfig>) => Promise<ApiResponse<ResponseSchema.InferResult<TConfig["response"]>, TError>>;
|
|
104
79
|
export {};
|
|
105
80
|
//# 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":"AAAA,OAAO,KAAK,cAAc,MAAM,YAAY,CAAC;AAE7C,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;AAErE;;;GAGG;AACH,MAAM,MAAM,aAAa,CACvB,OAAO,SAAS,UAAU,GAAG,UAAU,EACvC,KAAK,GAAG,SAAS,EACjB,KAAK,GAAG,SAAS,EACjB,SAAS,GAAG,SAAS,EACrB,MAAM,GAAG,SAAS,EAClB,QAAQ,GAAG,SAAS,EACpB,SAAS,GAAG,OAAO,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Language } from "./translations";
|
|
2
2
|
import * as Types from "./types";
|
|
3
|
-
export declare function buildUrl<T extends Types.RequestConfig<any, any, any, any, any, any, any
|
|
4
|
-
export declare function executeRequest<T extends Types.RequestConfig<any, any, any, any, any, any, any
|
|
3
|
+
export declare function buildUrl<T extends Types.RequestConfig<any, any, any, any, any, any, any>>(host: string, config: T, params: Types.RequesterParams<T>): string;
|
|
4
|
+
export declare function executeRequest<T extends Types.RequestConfig<any, any, any, any, any, any, any>>(url: string, config: T, params: Types.RequesterParams<T>, defaultHeaders?: Record<string, string>, language?: Language): Promise<Response | Types.NetworkError>;
|
|
5
5
|
export declare function handleErrorResponse<TError = string>(response: Response, errorHandler?: (response: Response) => Promise<TError>, language?: Language): Promise<Types.CustomError<TError>>;
|
|
6
6
|
//# sourceMappingURL=utils.d.ts.map
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAK,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,wBAAgB,QAAQ,CAAC,CAAC,SAAS,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAK,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,wBAAgB,QAAQ,CAAC,CAAC,SAAS,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,MAAM,CAc5J;AAED,wBAAsB,cAAc,CAAC,CAAC,SAAS,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EACnG,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,EAChC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACvC,QAAQ,GAAE,QAAe,GACxB,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC,CAsCxC;AAED,wBAAsB,mBAAmB,CAAC,MAAM,GAAG,MAAM,EACvD,QAAQ,EAAE,QAAQ,EAClB,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,MAAM,CAAC,EACtD,QAAQ,GAAE,QAAe,GACxB,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CA6BpC"}
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,EAAY,CAAC,EAAE,MAAM,gBAAgB,CAAC;AAG7C,MAAM,UAAU,QAAQ,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tapi-rs",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.0",
|
|
4
4
|
"description": "A modern, type-safe REST API client builder for TypeScript/JavaScript applications with React hooks integration and intelligent error handling.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|