bytekit 1.0.30 → 2.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 +58 -188
- package/dist/utils/core/ApiClient.d.ts +11 -10
- package/dist/utils/core/ApiClient.d.ts.map +1 -1
- package/dist/utils/core/ApiClient.js +17 -9
- package/dist/utils/core/ApiClient.js.map +1 -1
- package/dist/utils/core/SchemaAdapter.d.ts +35 -0
- package/dist/utils/core/SchemaAdapter.d.ts.map +1 -0
- package/dist/utils/core/SchemaAdapter.js +36 -0
- package/dist/utils/core/SchemaAdapter.js.map +1 -0
- package/dist/utils/core/index.d.ts +1 -1
- package/dist/utils/core/index.d.ts.map +1 -1
- package/dist/utils/core/index.js +1 -1
- package/dist/utils/core/index.js.map +1 -1
- package/dist/utils/helpers/QueryStringHelper.d.ts +11 -0
- package/dist/utils/helpers/QueryStringHelper.d.ts.map +1 -0
- package/dist/utils/helpers/QueryStringHelper.js +84 -0
- package/dist/utils/helpers/QueryStringHelper.js.map +1 -0
- package/dist/utils/helpers/UrlSlugHelper.d.ts +19 -0
- package/dist/utils/helpers/UrlSlugHelper.d.ts.map +1 -0
- package/dist/utils/helpers/UrlSlugHelper.js +27 -0
- package/dist/utils/helpers/UrlSlugHelper.js.map +1 -0
- package/dist/utils/helpers/index.d.ts +2 -13
- package/dist/utils/helpers/index.d.ts.map +1 -1
- package/dist/utils/helpers/index.js +2 -13
- package/dist/utils/helpers/index.js.map +1 -1
- package/dist/utils/index.d.ts +2 -8
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +2 -8
- package/dist/utils/index.js.map +1 -1
- package/package.json +14 -73
- package/dist/color-utils.d.ts +0 -2
- package/dist/color-utils.d.ts.map +0 -1
- package/dist/color-utils.js +0 -2
- package/dist/color-utils.js.map +0 -1
- package/dist/date-utils.d.ts +0 -2
- package/dist/date-utils.d.ts.map +0 -1
- package/dist/date-utils.js +0 -2
- package/dist/date-utils.js.map +0 -1
- package/dist/number-utils.d.ts +0 -2
- package/dist/number-utils.d.ts.map +0 -1
- package/dist/number-utils.js +0 -2
- package/dist/number-utils.js.map +0 -1
- package/dist/string-utils.d.ts +0 -2
- package/dist/string-utils.d.ts.map +0 -1
- package/dist/string-utils.js +0 -2
- package/dist/string-utils.js.map +0 -1
- package/dist/utils/core/BatchRequest.d.ts +0 -79
- package/dist/utils/core/BatchRequest.d.ts.map +0 -1
- package/dist/utils/core/BatchRequest.js +0 -152
- package/dist/utils/core/BatchRequest.js.map +0 -1
- package/dist/utils/core/QueryClient.d.ts +0 -145
- package/dist/utils/core/QueryClient.d.ts.map +0 -1
- package/dist/utils/core/QueryClient.js +0 -453
- package/dist/utils/core/QueryClient.js.map +0 -1
- package/dist/utils/core/QueryState.d.ts +0 -99
- package/dist/utils/core/QueryState.d.ts.map +0 -1
- package/dist/utils/core/QueryState.js +0 -65
- package/dist/utils/core/QueryState.js.map +0 -1
- package/dist/utils/helpers/ArrayUtils.d.ts +0 -134
- package/dist/utils/helpers/ArrayUtils.d.ts.map +0 -1
- package/dist/utils/helpers/ArrayUtils.js +0 -306
- package/dist/utils/helpers/ArrayUtils.js.map +0 -1
- package/dist/utils/helpers/ColorUtils.d.ts +0 -235
- package/dist/utils/helpers/ColorUtils.d.ts.map +0 -1
- package/dist/utils/helpers/ColorUtils.js +0 -598
- package/dist/utils/helpers/ColorUtils.js.map +0 -1
- package/dist/utils/helpers/DateUtils.d.ts +0 -36
- package/dist/utils/helpers/DateUtils.d.ts.map +0 -1
- package/dist/utils/helpers/DateUtils.js +0 -131
- package/dist/utils/helpers/DateUtils.js.map +0 -1
- package/dist/utils/helpers/FormUtils.d.ts +0 -176
- package/dist/utils/helpers/FormUtils.d.ts.map +0 -1
- package/dist/utils/helpers/FormUtils.js +0 -437
- package/dist/utils/helpers/FormUtils.js.map +0 -1
- package/dist/utils/helpers/HttpStatusHelper.d.ts +0 -82
- package/dist/utils/helpers/HttpStatusHelper.d.ts.map +0 -1
- package/dist/utils/helpers/HttpStatusHelper.js +0 -174
- package/dist/utils/helpers/HttpStatusHelper.js.map +0 -1
- package/dist/utils/helpers/NumberUtils.d.ts +0 -230
- package/dist/utils/helpers/NumberUtils.d.ts.map +0 -1
- package/dist/utils/helpers/NumberUtils.js +0 -564
- package/dist/utils/helpers/NumberUtils.js.map +0 -1
- package/dist/utils/helpers/ObjectUtils.d.ts +0 -102
- package/dist/utils/helpers/ObjectUtils.d.ts.map +0 -1
- package/dist/utils/helpers/ObjectUtils.js +0 -301
- package/dist/utils/helpers/ObjectUtils.js.map +0 -1
- package/dist/utils/helpers/PaginationHelper.d.ts +0 -127
- package/dist/utils/helpers/PaginationHelper.d.ts.map +0 -1
- package/dist/utils/helpers/PaginationHelper.js +0 -295
- package/dist/utils/helpers/PaginationHelper.js.map +0 -1
- package/dist/utils/helpers/Signal.d.ts +0 -92
- package/dist/utils/helpers/Signal.d.ts.map +0 -1
- package/dist/utils/helpers/Signal.js +0 -243
- package/dist/utils/helpers/Signal.js.map +0 -1
- package/dist/utils/helpers/StringUtils.d.ts +0 -46
- package/dist/utils/helpers/StringUtils.d.ts.map +0 -1
- package/dist/utils/helpers/StringUtils.js +0 -228
- package/dist/utils/helpers/StringUtils.js.map +0 -1
- package/dist/utils/helpers/TimeUtils.d.ts +0 -87
- package/dist/utils/helpers/TimeUtils.d.ts.map +0 -1
- package/dist/utils/helpers/TimeUtils.js +0 -234
- package/dist/utils/helpers/TimeUtils.js.map +0 -1
- package/dist/utils/helpers/UrlBuilder.d.ts +0 -79
- package/dist/utils/helpers/UrlBuilder.d.ts.map +0 -1
- package/dist/utils/helpers/UrlBuilder.js +0 -161
- package/dist/utils/helpers/UrlBuilder.js.map +0 -1
- package/dist/utils/helpers/Validator.d.ts +0 -31
- package/dist/utils/helpers/Validator.d.ts.map +0 -1
- package/dist/utils/helpers/Validator.js +0 -175
- package/dist/utils/helpers/Validator.js.map +0 -1
- package/dist/utils/helpers/useSignal.d.ts +0 -11
- package/dist/utils/helpers/useSignal.d.ts.map +0 -1
- package/dist/utils/helpers/useSignal.js +0 -11
- package/dist/utils/helpers/useSignal.js.map +0 -1
- package/dist/validator.d.ts +0 -2
- package/dist/validator.d.ts.map +0 -1
- package/dist/validator.js +0 -2
- package/dist/validator.js.map +0 -1
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Batch Request Helper
|
|
3
|
-
* Execute multiple requests in parallel, sequence, or with fallback
|
|
4
|
-
*/
|
|
5
|
-
export class BatchRequest {
|
|
6
|
-
constructor(options = {}) {
|
|
7
|
-
Object.defineProperty(this, "options", {
|
|
8
|
-
enumerable: true,
|
|
9
|
-
configurable: true,
|
|
10
|
-
writable: true,
|
|
11
|
-
value: options
|
|
12
|
-
});
|
|
13
|
-
Object.defineProperty(this, "requests", {
|
|
14
|
-
enumerable: true,
|
|
15
|
-
configurable: true,
|
|
16
|
-
writable: true,
|
|
17
|
-
value: []
|
|
18
|
-
});
|
|
19
|
-
Object.defineProperty(this, "labels", {
|
|
20
|
-
enumerable: true,
|
|
21
|
-
configurable: true,
|
|
22
|
-
writable: true,
|
|
23
|
-
value: new Map()
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Add a request to the batch
|
|
28
|
-
* @example
|
|
29
|
-
* batch.add(() => client.get("/users"))
|
|
30
|
-
* batch.add(() => client.get("/posts"), "posts")
|
|
31
|
-
*/
|
|
32
|
-
add(fn, label) {
|
|
33
|
-
const index = this.requests.length;
|
|
34
|
-
this.requests.push(fn);
|
|
35
|
-
if (label) {
|
|
36
|
-
this.labels.set(index, label);
|
|
37
|
-
}
|
|
38
|
-
return this;
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Execute all requests in parallel
|
|
42
|
-
* @throws If any request fails and abortOnError is true
|
|
43
|
-
*/
|
|
44
|
-
async execute() {
|
|
45
|
-
const promises = this.requests.map((fn, index) => this.executeWithTimeout(fn, index));
|
|
46
|
-
if (this.options.abortOnError) {
|
|
47
|
-
return Promise.all(promises);
|
|
48
|
-
}
|
|
49
|
-
return Promise.allSettled(promises).then((results) => results.map((result) => result.status === "fulfilled" ? result.value : null));
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Execute all requests sequentially
|
|
53
|
-
* @throws If any request fails and abortOnError is true
|
|
54
|
-
*/
|
|
55
|
-
async executeSequential() {
|
|
56
|
-
const results = [];
|
|
57
|
-
for (let i = 0; i < this.requests.length; i++) {
|
|
58
|
-
try {
|
|
59
|
-
const result = await this.executeWithTimeout(this.requests[i], i);
|
|
60
|
-
results.push(result);
|
|
61
|
-
}
|
|
62
|
-
catch (error) {
|
|
63
|
-
if (this.options.abortOnError) {
|
|
64
|
-
throw error;
|
|
65
|
-
}
|
|
66
|
-
results.push(null);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
return results;
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Execute with fallback - returns null for failed requests
|
|
73
|
-
*/
|
|
74
|
-
async executeWithFallback() {
|
|
75
|
-
const promises = this.requests.map((fn, index) => this.executeWithTimeout(fn, index).catch(() => null));
|
|
76
|
-
return Promise.all(promises);
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* Execute and return results as object with labels
|
|
80
|
-
* @example
|
|
81
|
-
* const { users, posts } = await batch
|
|
82
|
-
* .add(() => client.get("/users"), "users")
|
|
83
|
-
* .add(() => client.get("/posts"), "posts")
|
|
84
|
-
* .executeAsObject();
|
|
85
|
-
*/
|
|
86
|
-
async executeAsObject() {
|
|
87
|
-
const results = await this.execute();
|
|
88
|
-
const obj = {};
|
|
89
|
-
results.forEach((result, index) => {
|
|
90
|
-
const label = this.labels.get(index) || `request_${index}`;
|
|
91
|
-
obj[label] = result;
|
|
92
|
-
});
|
|
93
|
-
return obj;
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* Execute sequentially and return results as object
|
|
97
|
-
*/
|
|
98
|
-
async executeSequentialAsObject() {
|
|
99
|
-
const results = await this.executeSequential();
|
|
100
|
-
const obj = {};
|
|
101
|
-
results.forEach((result, index) => {
|
|
102
|
-
const label = this.labels.get(index) || `request_${index}`;
|
|
103
|
-
obj[label] = result;
|
|
104
|
-
});
|
|
105
|
-
return obj;
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* Get number of requests in batch
|
|
109
|
-
*/
|
|
110
|
-
size() {
|
|
111
|
-
return this.requests.length;
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Clear all requests
|
|
115
|
-
*/
|
|
116
|
-
clear() {
|
|
117
|
-
this.requests = [];
|
|
118
|
-
this.labels.clear();
|
|
119
|
-
return this;
|
|
120
|
-
}
|
|
121
|
-
/**
|
|
122
|
-
* Clone the batch
|
|
123
|
-
*/
|
|
124
|
-
clone() {
|
|
125
|
-
const cloned = new BatchRequest(this.options);
|
|
126
|
-
cloned.requests = [...this.requests];
|
|
127
|
-
cloned.labels = new Map(this.labels);
|
|
128
|
-
return cloned;
|
|
129
|
-
}
|
|
130
|
-
async executeWithTimeout(fn, index) {
|
|
131
|
-
if (!this.options.timeout) {
|
|
132
|
-
return fn();
|
|
133
|
-
}
|
|
134
|
-
return Promise.race([
|
|
135
|
-
fn(),
|
|
136
|
-
new Promise((_, reject) => setTimeout(() => reject(new Error(`Request ${index} timed out after ${this.options.timeout}ms`)), this.options.timeout)),
|
|
137
|
-
]);
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
/**
|
|
141
|
-
* Create a new batch request
|
|
142
|
-
* @example
|
|
143
|
-
* const batch = createBatchRequest();
|
|
144
|
-
* const [users, posts] = await batch
|
|
145
|
-
* .add(() => client.get("/users"))
|
|
146
|
-
* .add(() => client.get("/posts"))
|
|
147
|
-
* .execute();
|
|
148
|
-
*/
|
|
149
|
-
export function createBatchRequest(options) {
|
|
150
|
-
return new BatchRequest(options);
|
|
151
|
-
}
|
|
152
|
-
//# sourceMappingURL=BatchRequest.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BatchRequest.js","sourceRoot":"","sources":["../../../src/utils/core/BatchRequest.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
import { ApiClient } from "./ApiClient.js";
|
|
2
|
-
import type { RequestOptions } from "./ApiClient.js";
|
|
3
|
-
import { RequestState, RequestLifecycleCallbacks, QueryClientEvents } from "./QueryState.js";
|
|
4
|
-
/**
|
|
5
|
-
* QueryClient configuration
|
|
6
|
-
*/
|
|
7
|
-
export interface QueryClientConfig {
|
|
8
|
-
/** Default time before data is considered stale (ms) */
|
|
9
|
-
defaultStaleTime?: number;
|
|
10
|
-
/** Default time before cache is garbage collected (ms) */
|
|
11
|
-
defaultCacheTime?: number;
|
|
12
|
-
/** Maximum number of queries to cache */
|
|
13
|
-
maxCacheSize?: number;
|
|
14
|
-
/** Refetch on window focus */
|
|
15
|
-
refetchOnWindowFocus?: boolean;
|
|
16
|
-
/** Refetch on reconnect */
|
|
17
|
-
refetchOnReconnect?: boolean;
|
|
18
|
-
/** Global lifecycle callbacks */
|
|
19
|
-
globalCallbacks?: RequestLifecycleCallbacks;
|
|
20
|
-
/** Enable automatic deduplication */
|
|
21
|
-
enableDeduplication?: boolean;
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Query options
|
|
25
|
-
*/
|
|
26
|
-
export interface QueryOptions<T = unknown> extends Omit<RequestOptions, "method"> {
|
|
27
|
-
/** Unique identifier for the query */
|
|
28
|
-
queryKey: string[];
|
|
29
|
-
/** API endpoint path */
|
|
30
|
-
path: string;
|
|
31
|
-
/** HTTP method */
|
|
32
|
-
method?: "GET" | "POST" | "PUT" | "PATCH" | "DELETE";
|
|
33
|
-
/** Time before data is considered stale (ms) */
|
|
34
|
-
staleTime?: number;
|
|
35
|
-
/** Time before cache is garbage collected (ms) */
|
|
36
|
-
cacheTime?: number;
|
|
37
|
-
/** Refetch on window focus */
|
|
38
|
-
refetchOnWindowFocus?: boolean;
|
|
39
|
-
/** Refetch on reconnect */
|
|
40
|
-
refetchOnReconnect?: boolean;
|
|
41
|
-
/** Auto-refetch interval (ms) */
|
|
42
|
-
refetchInterval?: number;
|
|
43
|
-
/** Lifecycle callbacks */
|
|
44
|
-
callbacks?: RequestLifecycleCallbacks<T>;
|
|
45
|
-
/** Initial data */
|
|
46
|
-
initialData?: T;
|
|
47
|
-
/** Placeholder data while loading */
|
|
48
|
-
placeholderData?: T;
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Mutation options
|
|
52
|
-
*/
|
|
53
|
-
export interface MutationOptions<T = unknown> extends RequestOptions {
|
|
54
|
-
/** API endpoint path */
|
|
55
|
-
path: string;
|
|
56
|
-
/** HTTP method */
|
|
57
|
-
method?: "POST" | "PUT" | "PATCH" | "DELETE";
|
|
58
|
-
/** Lifecycle callbacks */
|
|
59
|
-
callbacks?: RequestLifecycleCallbacks<T>;
|
|
60
|
-
/** Called before mutation */
|
|
61
|
-
onMutate?: (variables: unknown) => void | Promise<void>;
|
|
62
|
-
/** Query keys to invalidate on success */
|
|
63
|
-
invalidateQueries?: string[][];
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* QueryClient - State management wrapper for ApiClient
|
|
67
|
-
* Provides React Query-like functionality with cache, state tracking, and lifecycle callbacks
|
|
68
|
-
*/
|
|
69
|
-
export declare class QueryClient {
|
|
70
|
-
private readonly apiClient;
|
|
71
|
-
private readonly eventEmitter;
|
|
72
|
-
private readonly cache;
|
|
73
|
-
private readonly stateManager;
|
|
74
|
-
private config;
|
|
75
|
-
private pendingRequests;
|
|
76
|
-
constructor(apiClient: ApiClient, options?: QueryClientConfig);
|
|
77
|
-
/**
|
|
78
|
-
* Execute a query
|
|
79
|
-
*/
|
|
80
|
-
query<T>(options: QueryOptions<T>): Promise<T>;
|
|
81
|
-
/**
|
|
82
|
-
* Execute a mutation
|
|
83
|
-
*/
|
|
84
|
-
mutate<T>(options: MutationOptions<T>): Promise<T>;
|
|
85
|
-
/**
|
|
86
|
-
* Get current state of a query
|
|
87
|
-
*/
|
|
88
|
-
getQueryState<T = unknown>(queryKey: string[]): RequestState<T> | undefined;
|
|
89
|
-
/**
|
|
90
|
-
* Get cached data for a query
|
|
91
|
-
*/
|
|
92
|
-
getQueryData<T = unknown>(queryKey: string[]): T | undefined;
|
|
93
|
-
/**
|
|
94
|
-
* Set query data manually
|
|
95
|
-
*/
|
|
96
|
-
setQueryData<T = unknown>(queryKey: string[], data: T): void;
|
|
97
|
-
/**
|
|
98
|
-
* Invalidate queries matching the query key
|
|
99
|
-
*/
|
|
100
|
-
invalidateQueries(queryKey: string[]): void;
|
|
101
|
-
/**
|
|
102
|
-
* Refetch queries matching the query key
|
|
103
|
-
*/
|
|
104
|
-
refetchQueries(queryKey: string[]): Promise<void>;
|
|
105
|
-
/**
|
|
106
|
-
* Clear all cache
|
|
107
|
-
*/
|
|
108
|
-
clearCache(): void;
|
|
109
|
-
/**
|
|
110
|
-
* Subscribe to events
|
|
111
|
-
*/
|
|
112
|
-
on<K extends keyof QueryClientEvents>(event: K, listener: (data: QueryClientEvents[K]) => void): () => void;
|
|
113
|
-
/**
|
|
114
|
-
* Get cache statistics
|
|
115
|
-
*/
|
|
116
|
-
getCacheStats(): import("#helpers/CacheManager.js").CacheStatistics;
|
|
117
|
-
private executeQuery;
|
|
118
|
-
/**
|
|
119
|
-
* Execute onStart callbacks
|
|
120
|
-
*/
|
|
121
|
-
private executeOnStartCallbacks;
|
|
122
|
-
/**
|
|
123
|
-
* Execute onSuccess callbacks
|
|
124
|
-
*/
|
|
125
|
-
private executeOnSuccessCallbacks;
|
|
126
|
-
/**
|
|
127
|
-
* Execute onError callbacks
|
|
128
|
-
*/
|
|
129
|
-
private executeOnErrorCallbacks;
|
|
130
|
-
/**
|
|
131
|
-
* Execute onSettled callbacks
|
|
132
|
-
*/
|
|
133
|
-
private executeOnSettledCallbacks;
|
|
134
|
-
private executeCallbacks;
|
|
135
|
-
private getCacheKey;
|
|
136
|
-
private matchesQueryKey;
|
|
137
|
-
private isStale;
|
|
138
|
-
private generateRequestId;
|
|
139
|
-
private refetchStaleQueries;
|
|
140
|
-
}
|
|
141
|
-
/**
|
|
142
|
-
* Factory function for creating QueryClient
|
|
143
|
-
*/
|
|
144
|
-
export declare function createQueryClient(apiClient: ApiClient, options?: QueryClientConfig): QueryClient;
|
|
145
|
-
//# sourceMappingURL=QueryClient.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QueryClient.d.ts","sourceRoot":"","sources":["../../../src/utils/core/QueryClient.ts"],"names":[],"mappings":"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"}
|