@context-action/core 0.5.0 → 0.7.1
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 +8 -5
- package/dist/index.cjs +331 -250
- package/dist/index.d.cts +30 -20
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts +30 -20
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +332 -249
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.d.cts
CHANGED
|
@@ -21,6 +21,7 @@ interface HandlerConfig {
|
|
|
21
21
|
debounce?: number;
|
|
22
22
|
throttle?: number;
|
|
23
23
|
replaceExisting?: boolean;
|
|
24
|
+
cleanup?: () => void;
|
|
24
25
|
}
|
|
25
26
|
interface HandlerRegistration<T = any, R = void> {
|
|
26
27
|
handler: ActionHandler<T, R>;
|
|
@@ -33,13 +34,13 @@ interface PipelineContext<T = any, R = void> {
|
|
|
33
34
|
payload: T;
|
|
34
35
|
handlers: HandlerRegistration<T, R>[];
|
|
35
36
|
aborted: boolean;
|
|
36
|
-
abortReason
|
|
37
|
+
abortReason: string | undefined;
|
|
37
38
|
currentIndex: number;
|
|
38
|
-
jumpToPriority
|
|
39
|
+
jumpToPriority: number | undefined;
|
|
39
40
|
executionMode: ExecutionMode;
|
|
40
41
|
results: R[];
|
|
41
42
|
terminated: boolean;
|
|
42
|
-
terminationResult
|
|
43
|
+
terminationResult: R | undefined;
|
|
43
44
|
}
|
|
44
45
|
interface ActionRegisterConfig {
|
|
45
46
|
name?: string;
|
|
@@ -89,9 +90,9 @@ interface DispatchOptions {
|
|
|
89
90
|
interface ExecutionResult<R = void> {
|
|
90
91
|
success: boolean;
|
|
91
92
|
aborted: boolean;
|
|
92
|
-
abortReason
|
|
93
|
+
abortReason: string | undefined;
|
|
93
94
|
terminated: boolean;
|
|
94
|
-
result
|
|
95
|
+
result: R | undefined;
|
|
95
96
|
successResults: R[];
|
|
96
97
|
results: Array<R | undefined>;
|
|
97
98
|
failedResults: Array<{
|
|
@@ -110,10 +111,10 @@ interface ExecutionResult<R = void> {
|
|
|
110
111
|
handlers: Array<{
|
|
111
112
|
id: string;
|
|
112
113
|
executed: boolean;
|
|
113
|
-
duration
|
|
114
|
-
result
|
|
115
|
-
error
|
|
116
|
-
metadata
|
|
114
|
+
duration: number | undefined;
|
|
115
|
+
result: R | undefined;
|
|
116
|
+
error: Error | undefined;
|
|
117
|
+
metadata: Record<string, any> | undefined;
|
|
117
118
|
}>;
|
|
118
119
|
errors: HandlerError[];
|
|
119
120
|
}
|
|
@@ -159,13 +160,16 @@ declare class ActionRegister<T extends ActionPayloadMap = ActionPayloadMap> {
|
|
|
159
160
|
private readonly actionGuard;
|
|
160
161
|
private executionMode;
|
|
161
162
|
private actionExecutionModes;
|
|
163
|
+
private unregisterFunctions;
|
|
162
164
|
readonly name: string;
|
|
163
165
|
private readonly registryConfig;
|
|
164
166
|
private readonly isDebugMode;
|
|
165
167
|
private readonly maxHandlersPerAction;
|
|
166
168
|
private dispatchQueue?;
|
|
167
169
|
private filterCache;
|
|
168
|
-
private
|
|
170
|
+
private handlerIdCounter;
|
|
171
|
+
private controllerPool;
|
|
172
|
+
private readonly maxControllerPoolSize;
|
|
169
173
|
constructor(config?: ActionRegisterConfig);
|
|
170
174
|
register<K extends keyof T, R = void>(action: K, handler: ActionHandler<T[K], R>, config?: HandlerConfig): UnregisterFunction;
|
|
171
175
|
private log;
|
|
@@ -175,8 +179,12 @@ declare class ActionRegister<T extends ActionPayloadMap = ActionPayloadMap> {
|
|
|
175
179
|
dispatch<K extends keyof T>(action: K, payload?: T[K], options?: DispatchOptions): Promise<void>;
|
|
176
180
|
private _performDispatch;
|
|
177
181
|
dispatchWithResult<K extends keyof T, R = void>(action: K, payload?: T[K], options?: DispatchOptions): Promise<ExecutionResult<R>>;
|
|
182
|
+
private applyActionGuardControlsWithResult;
|
|
183
|
+
private get filterCacheMaxSize();
|
|
178
184
|
private generateFilterCacheKey;
|
|
179
185
|
private invalidateFilterCache;
|
|
186
|
+
private getControllerFromPool;
|
|
187
|
+
private returnControllerToPool;
|
|
180
188
|
private filterHandlers;
|
|
181
189
|
private processResults;
|
|
182
190
|
private executePipeline;
|
|
@@ -190,26 +198,30 @@ declare class ActionRegister<T extends ActionPayloadMap = ActionPayloadMap> {
|
|
|
190
198
|
getRegistryInfo(): ActionRegistryInfo<T>;
|
|
191
199
|
getActionStats<K extends keyof T>(action: K): ActionHandlerStats<T> | null;
|
|
192
200
|
getAllActionStats(): Array<ActionHandlerStats<T>>;
|
|
201
|
+
setExecutionMode(mode: ExecutionMode): void;
|
|
193
202
|
setActionExecutionMode<K extends keyof T>(action: K, mode: ExecutionMode): void;
|
|
194
203
|
getActionExecutionMode<K extends keyof T>(action: K): ExecutionMode;
|
|
195
204
|
removeActionExecutionMode<K extends keyof T>(action: K): void;
|
|
196
205
|
getRegistryConfig(): ActionRegisterConfig['registry'];
|
|
197
206
|
isDebugEnabled(): boolean;
|
|
207
|
+
private createUnregisterFunction;
|
|
208
|
+
getUnregisterFunctionCount(): number;
|
|
209
|
+
hasUnregisterFunction(handlerId: string): boolean;
|
|
198
210
|
destroy(): void;
|
|
199
211
|
}
|
|
200
212
|
//#endregion
|
|
201
213
|
//#region src/action-guard.d.ts
|
|
202
214
|
interface GuardState {
|
|
203
215
|
lastExecuted: number;
|
|
204
|
-
debounceTimer
|
|
205
|
-
throttleTimer
|
|
216
|
+
debounceTimer: NodeJS.Timeout | undefined;
|
|
217
|
+
throttleTimer: NodeJS.Timeout | undefined;
|
|
206
218
|
isThrottled: boolean;
|
|
207
|
-
debouncePromise
|
|
208
|
-
debounceResolve
|
|
219
|
+
debouncePromise: Promise<boolean> | undefined;
|
|
220
|
+
debounceResolve: ((value: boolean) => void) | undefined;
|
|
209
221
|
}
|
|
210
222
|
declare class ActionGuard {
|
|
211
223
|
private guards;
|
|
212
|
-
private cleanupInterval
|
|
224
|
+
private cleanupInterval;
|
|
213
225
|
private readonly maxIdleTime;
|
|
214
226
|
private readonly cleanupIntervalMs;
|
|
215
227
|
constructor(autoCleanup?: boolean);
|
|
@@ -239,8 +251,6 @@ declare function createActionHandler<T extends ActionPayloadMap, K extends keyof
|
|
|
239
251
|
registerWithCleanup: () => () => void;
|
|
240
252
|
config: Required<HandlerConfig>;
|
|
241
253
|
};
|
|
242
|
-
declare function createReactHandlerConfig(action: string, componentId?: string, config?: HandlerConfig): Required<HandlerConfig>;
|
|
243
|
-
declare function createReactDispatcher<T extends ActionPayloadMap>(registry: ActionRegister<T>, errorHandler?: (error: Error, action: keyof T, payload?: any) => void): <K extends keyof T>(action: K, payload?: T[K], options?: Parameters<ActionRegister<T>["dispatch"]>[2]) => Promise<void>;
|
|
244
254
|
declare const ReactDevUtils: {
|
|
245
255
|
enableDebugMode(): void;
|
|
246
256
|
disableDebugMode(): void;
|
|
@@ -255,12 +265,12 @@ declare const ReactDevUtils: {
|
|
|
255
265
|
declare class ReactActionError extends Error {
|
|
256
266
|
readonly action: string;
|
|
257
267
|
readonly payload?: any;
|
|
258
|
-
readonly handlerId
|
|
268
|
+
readonly handlerId: string | undefined;
|
|
259
269
|
readonly timestamp: number;
|
|
260
|
-
constructor(message: string, action: string, payload?: any, handlerId?: string, originalError?: Error);
|
|
270
|
+
constructor(message: string, action: string, payload?: any, handlerId?: string | undefined, originalError?: Error);
|
|
261
271
|
static fromActionError(originalError: Error, action: string, payload?: any, handlerId?: string): ReactActionError;
|
|
262
272
|
}
|
|
263
273
|
declare function isReactActionError(error: any): error is ReactActionError;
|
|
264
274
|
//#endregion
|
|
265
|
-
export { type ActionDispatcher, ActionGuard, type ActionHandler, type ActionPayloadMap, ActionRegister, type ActionRegisterConfig, type DispatchOptions, type ExecutionMode, type ExecutionResult, type HandlerConfig, type HandlerRegistration, type PipelineContext, type PipelineController, ReactActionError, ReactDevUtils, type UnregisterFunction, createActionHandler,
|
|
275
|
+
export { type ActionDispatcher, ActionGuard, type ActionHandler, type ActionPayloadMap, ActionRegister, type ActionRegisterConfig, type DispatchOptions, type ExecutionMode, type ExecutionResult, type HandlerConfig, type HandlerRegistration, type PipelineContext, type PipelineController, ReactActionError, ReactDevUtils, type UnregisterFunction, createActionHandler, executeParallel, executeRace, executeSequential, isReactActionError };
|
|
266
276
|
//# sourceMappingURL=index.d.cts.map
|
package/dist/index.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/types.ts","../src/ActionRegister.ts","../src/action-guard.ts","../src/execution-modes.ts","../src/react-helpers.ts"],"sourcesContent":[],"mappings":";UAYiB,gBAAA;EAAA,CAAA,UAAA,EAAA,MAAgB,CAAA,EAAA,OAAA;AAwFjC;AAK0C,UALzB,kBAKyB,CAAA,IAAA,GAAA,EAAA,IAAA,IAAA,CAAA,CAAA;OAG1B,CAAA,MAAA,CAAA,EAAA,MAAA,CAAA,EAAA,IAAA;eAOC,CAAA,QAAA,EAAA,CAAA,OAAA,EAVmB,CAUnB,EAAA,GAVyB,CAUzB,CAAA,EAAA,IAAA;YAGG,EAAA,EAVJ,CAUI;gBAGJ,CAAA,QAAA,EAAA,MAAA,CAAA,EAAA,IAAA;QAGwB,CAAA,MAAA,EATvB,CASuB,CAAA,EAAA,IAAA;WAAoB,CAAA,MAAA,EANxC,CAMwC,CAAA,EAAA,IAAA;YAAM,EAAA,EAHlD,CAGkD,EAAA;wCAA1B,oBAAoB,MAAM;AAoElE;AAAyB,KAAb,aAAa,CAAA,IAAA,GAAA,EAAA,IAAA,IAAA,CAAA,GAAA,CAAA,OAAA,EACd,CADc,EAAA,UAAA,EAEX,kBAFW,CAEQ,CAFR,EAEW,CAFX,CAAA,EAAA,GAGpB,CAHoB,GAGhB,OAHgB,CAGR,CAHQ,CAAA,GAAA,IAAA,GAGI,OAHJ,CAAA,IAAA,CAAA;AACd,UA+BM,aAAA,CA/BN;UACsB,CAAA,EAAA,MAAA;KAAG,EAAA,MAAA;UAAtB,CAAA,EAAA,OAAA;MACT,CAAA,EAAA,OAAA;UAAY,CAAA,EAAA,MAAA;UAAR,CAAA,EAAA,MAAA;iBAAoB,CAAA,EAAA,OAAA;;
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/types.ts","../src/ActionRegister.ts","../src/action-guard.ts","../src/execution-modes.ts","../src/react-helpers.ts"],"sourcesContent":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -21,6 +21,7 @@ interface HandlerConfig {
|
|
|
21
21
|
debounce?: number;
|
|
22
22
|
throttle?: number;
|
|
23
23
|
replaceExisting?: boolean;
|
|
24
|
+
cleanup?: () => void;
|
|
24
25
|
}
|
|
25
26
|
interface HandlerRegistration<T = any, R = void> {
|
|
26
27
|
handler: ActionHandler<T, R>;
|
|
@@ -33,13 +34,13 @@ interface PipelineContext<T = any, R = void> {
|
|
|
33
34
|
payload: T;
|
|
34
35
|
handlers: HandlerRegistration<T, R>[];
|
|
35
36
|
aborted: boolean;
|
|
36
|
-
abortReason
|
|
37
|
+
abortReason: string | undefined;
|
|
37
38
|
currentIndex: number;
|
|
38
|
-
jumpToPriority
|
|
39
|
+
jumpToPriority: number | undefined;
|
|
39
40
|
executionMode: ExecutionMode;
|
|
40
41
|
results: R[];
|
|
41
42
|
terminated: boolean;
|
|
42
|
-
terminationResult
|
|
43
|
+
terminationResult: R | undefined;
|
|
43
44
|
}
|
|
44
45
|
interface ActionRegisterConfig {
|
|
45
46
|
name?: string;
|
|
@@ -89,9 +90,9 @@ interface DispatchOptions {
|
|
|
89
90
|
interface ExecutionResult<R = void> {
|
|
90
91
|
success: boolean;
|
|
91
92
|
aborted: boolean;
|
|
92
|
-
abortReason
|
|
93
|
+
abortReason: string | undefined;
|
|
93
94
|
terminated: boolean;
|
|
94
|
-
result
|
|
95
|
+
result: R | undefined;
|
|
95
96
|
successResults: R[];
|
|
96
97
|
results: Array<R | undefined>;
|
|
97
98
|
failedResults: Array<{
|
|
@@ -110,10 +111,10 @@ interface ExecutionResult<R = void> {
|
|
|
110
111
|
handlers: Array<{
|
|
111
112
|
id: string;
|
|
112
113
|
executed: boolean;
|
|
113
|
-
duration
|
|
114
|
-
result
|
|
115
|
-
error
|
|
116
|
-
metadata
|
|
114
|
+
duration: number | undefined;
|
|
115
|
+
result: R | undefined;
|
|
116
|
+
error: Error | undefined;
|
|
117
|
+
metadata: Record<string, any> | undefined;
|
|
117
118
|
}>;
|
|
118
119
|
errors: HandlerError[];
|
|
119
120
|
}
|
|
@@ -159,13 +160,16 @@ declare class ActionRegister<T extends ActionPayloadMap = ActionPayloadMap> {
|
|
|
159
160
|
private readonly actionGuard;
|
|
160
161
|
private executionMode;
|
|
161
162
|
private actionExecutionModes;
|
|
163
|
+
private unregisterFunctions;
|
|
162
164
|
readonly name: string;
|
|
163
165
|
private readonly registryConfig;
|
|
164
166
|
private readonly isDebugMode;
|
|
165
167
|
private readonly maxHandlersPerAction;
|
|
166
168
|
private dispatchQueue?;
|
|
167
169
|
private filterCache;
|
|
168
|
-
private
|
|
170
|
+
private handlerIdCounter;
|
|
171
|
+
private controllerPool;
|
|
172
|
+
private readonly maxControllerPoolSize;
|
|
169
173
|
constructor(config?: ActionRegisterConfig);
|
|
170
174
|
register<K extends keyof T, R = void>(action: K, handler: ActionHandler<T[K], R>, config?: HandlerConfig): UnregisterFunction;
|
|
171
175
|
private log;
|
|
@@ -175,8 +179,12 @@ declare class ActionRegister<T extends ActionPayloadMap = ActionPayloadMap> {
|
|
|
175
179
|
dispatch<K extends keyof T>(action: K, payload?: T[K], options?: DispatchOptions): Promise<void>;
|
|
176
180
|
private _performDispatch;
|
|
177
181
|
dispatchWithResult<K extends keyof T, R = void>(action: K, payload?: T[K], options?: DispatchOptions): Promise<ExecutionResult<R>>;
|
|
182
|
+
private applyActionGuardControlsWithResult;
|
|
183
|
+
private get filterCacheMaxSize();
|
|
178
184
|
private generateFilterCacheKey;
|
|
179
185
|
private invalidateFilterCache;
|
|
186
|
+
private getControllerFromPool;
|
|
187
|
+
private returnControllerToPool;
|
|
180
188
|
private filterHandlers;
|
|
181
189
|
private processResults;
|
|
182
190
|
private executePipeline;
|
|
@@ -190,26 +198,30 @@ declare class ActionRegister<T extends ActionPayloadMap = ActionPayloadMap> {
|
|
|
190
198
|
getRegistryInfo(): ActionRegistryInfo<T>;
|
|
191
199
|
getActionStats<K extends keyof T>(action: K): ActionHandlerStats<T> | null;
|
|
192
200
|
getAllActionStats(): Array<ActionHandlerStats<T>>;
|
|
201
|
+
setExecutionMode(mode: ExecutionMode): void;
|
|
193
202
|
setActionExecutionMode<K extends keyof T>(action: K, mode: ExecutionMode): void;
|
|
194
203
|
getActionExecutionMode<K extends keyof T>(action: K): ExecutionMode;
|
|
195
204
|
removeActionExecutionMode<K extends keyof T>(action: K): void;
|
|
196
205
|
getRegistryConfig(): ActionRegisterConfig['registry'];
|
|
197
206
|
isDebugEnabled(): boolean;
|
|
207
|
+
private createUnregisterFunction;
|
|
208
|
+
getUnregisterFunctionCount(): number;
|
|
209
|
+
hasUnregisterFunction(handlerId: string): boolean;
|
|
198
210
|
destroy(): void;
|
|
199
211
|
}
|
|
200
212
|
//#endregion
|
|
201
213
|
//#region src/action-guard.d.ts
|
|
202
214
|
interface GuardState {
|
|
203
215
|
lastExecuted: number;
|
|
204
|
-
debounceTimer
|
|
205
|
-
throttleTimer
|
|
216
|
+
debounceTimer: NodeJS.Timeout | undefined;
|
|
217
|
+
throttleTimer: NodeJS.Timeout | undefined;
|
|
206
218
|
isThrottled: boolean;
|
|
207
|
-
debouncePromise
|
|
208
|
-
debounceResolve
|
|
219
|
+
debouncePromise: Promise<boolean> | undefined;
|
|
220
|
+
debounceResolve: ((value: boolean) => void) | undefined;
|
|
209
221
|
}
|
|
210
222
|
declare class ActionGuard {
|
|
211
223
|
private guards;
|
|
212
|
-
private cleanupInterval
|
|
224
|
+
private cleanupInterval;
|
|
213
225
|
private readonly maxIdleTime;
|
|
214
226
|
private readonly cleanupIntervalMs;
|
|
215
227
|
constructor(autoCleanup?: boolean);
|
|
@@ -239,8 +251,6 @@ declare function createActionHandler<T extends ActionPayloadMap, K extends keyof
|
|
|
239
251
|
registerWithCleanup: () => () => void;
|
|
240
252
|
config: Required<HandlerConfig>;
|
|
241
253
|
};
|
|
242
|
-
declare function createReactHandlerConfig(action: string, componentId?: string, config?: HandlerConfig): Required<HandlerConfig>;
|
|
243
|
-
declare function createReactDispatcher<T extends ActionPayloadMap>(registry: ActionRegister<T>, errorHandler?: (error: Error, action: keyof T, payload?: any) => void): <K extends keyof T>(action: K, payload?: T[K], options?: Parameters<ActionRegister<T>["dispatch"]>[2]) => Promise<void>;
|
|
244
254
|
declare const ReactDevUtils: {
|
|
245
255
|
enableDebugMode(): void;
|
|
246
256
|
disableDebugMode(): void;
|
|
@@ -255,12 +265,12 @@ declare const ReactDevUtils: {
|
|
|
255
265
|
declare class ReactActionError extends Error {
|
|
256
266
|
readonly action: string;
|
|
257
267
|
readonly payload?: any;
|
|
258
|
-
readonly handlerId
|
|
268
|
+
readonly handlerId: string | undefined;
|
|
259
269
|
readonly timestamp: number;
|
|
260
|
-
constructor(message: string, action: string, payload?: any, handlerId?: string, originalError?: Error);
|
|
270
|
+
constructor(message: string, action: string, payload?: any, handlerId?: string | undefined, originalError?: Error);
|
|
261
271
|
static fromActionError(originalError: Error, action: string, payload?: any, handlerId?: string): ReactActionError;
|
|
262
272
|
}
|
|
263
273
|
declare function isReactActionError(error: any): error is ReactActionError;
|
|
264
274
|
//#endregion
|
|
265
|
-
export { type ActionDispatcher, ActionGuard, type ActionHandler, type ActionPayloadMap, ActionRegister, type ActionRegisterConfig, type DispatchOptions, type ExecutionMode, type ExecutionResult, type HandlerConfig, type HandlerRegistration, type PipelineContext, type PipelineController, ReactActionError, ReactDevUtils, type UnregisterFunction, createActionHandler,
|
|
275
|
+
export { type ActionDispatcher, ActionGuard, type ActionHandler, type ActionPayloadMap, ActionRegister, type ActionRegisterConfig, type DispatchOptions, type ExecutionMode, type ExecutionResult, type HandlerConfig, type HandlerRegistration, type PipelineContext, type PipelineController, ReactActionError, ReactDevUtils, type UnregisterFunction, createActionHandler, executeParallel, executeRace, executeSequential, isReactActionError };
|
|
266
276
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/ActionRegister.ts","../src/action-guard.ts","../src/execution-modes.ts","../src/react-helpers.ts"],"sourcesContent":[],"mappings":";UAYiB,gBAAA;EAAA,CAAA,UAAA,EAAA,MAAgB,CAAA,EAAA,OAAA;AAwFjC;AAK0C,UALzB,kBAKyB,CAAA,IAAA,GAAA,EAAA,IAAA,IAAA,CAAA,CAAA;OAG1B,CAAA,MAAA,CAAA,EAAA,MAAA,CAAA,EAAA,IAAA;eAOC,CAAA,QAAA,EAAA,CAAA,OAAA,EAVmB,CAUnB,EAAA,GAVyB,CAUzB,CAAA,EAAA,IAAA;YAGG,EAAA,EAVJ,CAUI;gBAGJ,CAAA,QAAA,EAAA,MAAA,CAAA,EAAA,IAAA;QAGwB,CAAA,MAAA,EATvB,CASuB,CAAA,EAAA,IAAA;WAAoB,CAAA,MAAA,EANxC,CAMwC,CAAA,EAAA,IAAA;YAAM,EAAA,EAHlD,CAGkD,EAAA;wCAA1B,oBAAoB,MAAM;AAoElE;AAAyB,KAAb,aAAa,CAAA,IAAA,GAAA,EAAA,IAAA,IAAA,CAAA,GAAA,CAAA,OAAA,EACd,CADc,EAAA,UAAA,EAEX,kBAFW,CAEQ,CAFR,EAEW,CAFX,CAAA,EAAA,GAGpB,CAHoB,GAGhB,OAHgB,CAGR,CAHQ,CAAA,GAAA,IAAA,GAGI,OAHJ,CAAA,IAAA,CAAA;AACd,UA+BM,aAAA,CA/BN;UACsB,CAAA,EAAA,MAAA;KAAG,EAAA,MAAA;UAAtB,CAAA,EAAA,OAAA;MACT,CAAA,EAAA,OAAA;UAAY,CAAA,EAAA,MAAA;UAAR,CAAA,EAAA,MAAA;iBAAoB,CAAA,EAAA,OAAA;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/ActionRegister.ts","../src/action-guard.ts","../src/execution-modes.ts","../src/react-helpers.ts"],"sourcesContent":[],"mappings":"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"}
|