@context-action/core 0.8.1 β†’ 0.8.4

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/index.cjs CHANGED
@@ -315,27 +315,91 @@ var ActionGuard = class {
315
315
  this.guards = /* @__PURE__ */ new Map();
316
316
  this.maxIdleTime = 6e4;
317
317
  this.cleanupIntervalMs = 3e4;
318
+ this.maxGuards = 1e3;
319
+ this.accessOrder = [];
318
320
  if (autoCleanup) this.startAutoCleanup();
319
321
  }
320
322
  /**
321
323
  * Start automatic cleanup of idle guard states
322
- *
324
+ *
323
325
  * @internal
324
326
  */
325
327
  startAutoCleanup() {
326
328
  this.cleanupInterval = setInterval(() => {
327
- const now = Date.now();
328
- const keysToDelete = [];
329
- this.guards.forEach((state, key) => {
329
+ this.performCleanup();
330
+ }, this.cleanupIntervalMs);
331
+ }
332
+ /**
333
+ * πŸ”§ Optimized cleanup with early exit and batched operations
334
+ *
335
+ * @internal
336
+ */
337
+ performCleanup() {
338
+ const guardCount = this.guards.size;
339
+ if (guardCount === 0) return;
340
+ const now = Date.now();
341
+ const keysToDelete = [];
342
+ if (guardCount <= 10) this.guards.forEach((state, key) => {
343
+ const isIdle = now - state.lastExecuted > this.maxIdleTime;
344
+ const hasActiveTimers = state.debounceTimer || state.throttleTimer;
345
+ if (isIdle && !hasActiveTimers) keysToDelete.push(key);
346
+ });
347
+ else {
348
+ const entriesToCheck = Math.min(this.accessOrder.length, Math.ceil(guardCount / 4));
349
+ for (let i = 0; i < entriesToCheck; i++) {
350
+ const key = this.accessOrder[i];
351
+ if (!key) continue;
352
+ const state = this.guards.get(key);
353
+ if (!state) {
354
+ keysToDelete.push(key);
355
+ continue;
356
+ }
330
357
  const isIdle = now - state.lastExecuted > this.maxIdleTime;
331
358
  const hasActiveTimers = state.debounceTimer || state.throttleTimer;
332
359
  if (isIdle && !hasActiveTimers) keysToDelete.push(key);
333
- });
334
- if (keysToDelete.length > 0) {
335
- keysToDelete.forEach((key) => this.guards.delete(key));
336
- if (typeof process !== "undefined" && process.env?.DEBUG_CONTEXT_ACTION) console.debug(`[ActionGuard] Cleaned up ${keysToDelete.length} idle guards`);
337
360
  }
338
- }, this.cleanupIntervalMs);
361
+ }
362
+ if (keysToDelete.length > 0) {
363
+ keysToDelete.forEach((key) => {
364
+ this.guards.delete(key);
365
+ const accessIndex = this.accessOrder.indexOf(key);
366
+ if (accessIndex !== -1) this.accessOrder.splice(accessIndex, 1);
367
+ });
368
+ if (typeof process !== "undefined" && process.env?.DEBUG_CONTEXT_ACTION) console.debug(`[ActionGuard] Cleaned up ${keysToDelete.length} idle guards`);
369
+ }
370
+ }
371
+ /**
372
+ * πŸ”§ Update access order for LRU tracking
373
+ *
374
+ * @internal
375
+ */
376
+ updateAccessOrder(key) {
377
+ const existingIndex = this.accessOrder.indexOf(key);
378
+ if (existingIndex !== -1) this.accessOrder.splice(existingIndex, 1);
379
+ this.accessOrder.push(key);
380
+ }
381
+ /**
382
+ * πŸ”§ Evict oldest guards if max limit exceeded
383
+ *
384
+ * @internal
385
+ */
386
+ evictIfNeeded() {
387
+ if (this.guards.size >= this.maxGuards) {
388
+ const evictCount = Math.ceil(this.maxGuards * .1);
389
+ this.accessOrder.slice(0, evictCount).forEach((key) => {
390
+ const state = this.guards.get(key);
391
+ if (state) {
392
+ if (state.debounceTimer) {
393
+ clearTimeout(state.debounceTimer);
394
+ if (state.debounceResolve) state.debounceResolve(false);
395
+ }
396
+ if (state.throttleTimer) clearTimeout(state.throttleTimer);
397
+ }
398
+ this.guards.delete(key);
399
+ });
400
+ this.accessOrder = this.accessOrder.slice(evictCount);
401
+ if (typeof process !== "undefined" && process.env?.DEBUG_CONTEXT_ACTION) console.debug(`[ActionGuard] Evicted ${evictCount} oldest guards due to limit`);
402
+ }
339
403
  }
340
404
  /**
341
405
  * Apply debouncing to an action
@@ -360,6 +424,7 @@ var ActionGuard = class {
360
424
  * @internal
361
425
  */
362
426
  async debounce(actionKey, debounceMs) {
427
+ this.evictIfNeeded();
363
428
  /** Get or create guard state for this action */
364
429
  let state = this.guards.get(actionKey);
365
430
  if (!state) {
@@ -374,6 +439,7 @@ var ActionGuard = class {
374
439
  };
375
440
  this.guards.set(actionKey, state);
376
441
  }
442
+ this.updateAccessOrder(actionKey);
377
443
  /** Clear any existing debounce timer to restart the delay period */
378
444
  if (state.debounceTimer) {
379
445
  clearTimeout(state.debounceTimer);
@@ -418,6 +484,7 @@ var ActionGuard = class {
418
484
  * @internal
419
485
  */
420
486
  throttle(actionKey, throttleMs) {
487
+ this.evictIfNeeded();
421
488
  /** Get or create guard state for this action */
422
489
  let state = this.guards.get(actionKey);
423
490
  if (!state) {
@@ -432,6 +499,7 @@ var ActionGuard = class {
432
499
  };
433
500
  this.guards.set(actionKey, state);
434
501
  }
502
+ this.updateAccessOrder(actionKey);
435
503
  const now = Date.now();
436
504
  const timeSinceLastExecution = now - state.lastExecuted;
437
505
  /** Check if enough time has passed since last execution */
@@ -549,6 +617,7 @@ var ActionGuard = class {
549
617
  this.cleanupInterval = void 0;
550
618
  }
551
619
  this.clearAll();
620
+ this.accessOrder = [];
552
621
  }
553
622
  /**
554
623
  * πŸ†• Get statistics about active guards
@@ -633,7 +702,11 @@ var OperationQueue = class {
633
702
  * - μž‘μ—… μ™„λ£Œ μ‹œ λŒ€κΈ° 쀑인 ν”„λ‘œμ„ΈμŠ€μ—κ²Œ μžλ™ μ•Œλ¦Ό
634
703
  */
635
704
  async processQueue() {
636
- if (this.processingPromise) return this.processingPromise;
705
+ if (this.processingPromise) {
706
+ await this.processingPromise;
707
+ if (this.queue.length > 0 && !this.processingPromise) return this.processQueue();
708
+ return;
709
+ }
637
710
  this.processingPromise = this._doProcess();
638
711
  try {
639
712
  await this.processingPromise;
@@ -762,6 +835,35 @@ var OperationQueue = class {
762
835
  *
763
836
  * @public
764
837
  */
838
+ /**
839
+ * Type guard to determine if an object is DispatchOptions
840
+ * Extracted as utility function for reuse and performance
841
+ *
842
+ * @param obj - Object to check
843
+ * @returns True if object is DispatchOptions
844
+ * @internal
845
+ */
846
+ function isDispatchOptions(obj) {
847
+ if (!obj || typeof obj !== "object") return false;
848
+ if ("debounce" in obj && typeof obj.debounce === "number") return true;
849
+ if ("throttle" in obj && typeof obj.throttle === "number") return true;
850
+ if ("executionMode" in obj) return true;
851
+ if ("signal" in obj && obj.signal instanceof AbortSignal) return true;
852
+ if ("immediate" in obj && typeof obj.immediate === "boolean") return true;
853
+ if ("queuePriority" in obj && typeof obj.queuePriority === "number") return true;
854
+ if ("timeout" in obj && typeof obj.timeout === "number") return true;
855
+ if ("retryOnError" in obj && typeof obj.retryOnError === "object") return true;
856
+ if ("autoAbort" in obj && typeof obj.autoAbort === "object") return true;
857
+ if ("filter" in obj && typeof obj.filter === "object" && obj.filter !== null) {
858
+ const filter = obj.filter;
859
+ if ("handlerIds" in filter || "excludeHandlerIds" in filter || "priority" in filter || "custom" in filter) return true;
860
+ }
861
+ if ("result" in obj && typeof obj.result === "object" && obj.result !== null) {
862
+ const result = obj.result;
863
+ if ("strategy" in result || "merger" in result || "collect" in result || "maxResults" in result || "includeErrors" in result) return true;
864
+ }
865
+ return false;
866
+ }
765
867
  var ActionRegister = class {
766
868
  constructor(config = {}) {
767
869
  this.pipelines = /* @__PURE__ */ new Map();
@@ -810,18 +912,16 @@ var ActionRegister = class {
810
912
  * @public
811
913
  */
812
914
  get actions() {
813
- return new Proxy({}, { get: (target, prop) => {
915
+ if (!this._actionsProxy) this._actionsProxy = new Proxy({}, { get: (_target, prop) => {
814
916
  if (typeof prop === "string" && this.pipelines.has(prop)) {
815
917
  const actionKey = prop;
816
918
  return (payloadOrOptions, options) => {
817
- const isDispatchOptions = (obj) => {
818
- return obj && typeof obj === "object" && ("debounce" in obj || "throttle" in obj || "executionMode" in obj || "signal" in obj || "immediate" in obj || "filter" in obj || "result" in obj);
819
- };
820
919
  if (payloadOrOptions && isDispatchOptions(payloadOrOptions)) return this.dispatch(actionKey, void 0, payloadOrOptions);
821
920
  else return this.dispatch(actionKey, payloadOrOptions, options);
822
921
  };
823
922
  }
824
923
  } });
924
+ return this._actionsProxy;
825
925
  }
826
926
  /**
827
927
  * Actions-based dispatching with result collection
@@ -847,18 +947,16 @@ var ActionRegister = class {
847
947
  * @returns Proxy object with action functions that return ExecutionResult
848
948
  */
849
949
  get actionsWithResult() {
850
- return new Proxy({}, { get: (target, prop) => {
950
+ if (!this._actionsWithResultProxy) this._actionsWithResultProxy = new Proxy({}, { get: (_target, prop) => {
851
951
  if (typeof prop === "string" && this.pipelines.has(prop)) {
852
952
  const actionKey = prop;
853
953
  return (payloadOrOptions, options) => {
854
- const isDispatchOptions = (obj) => {
855
- return obj && typeof obj === "object" && ("debounce" in obj || "throttle" in obj || "executionMode" in obj || "signal" in obj || "immediate" in obj || "filter" in obj || "result" in obj);
856
- };
857
954
  if (payloadOrOptions && isDispatchOptions(payloadOrOptions)) return this.dispatchWithResult(actionKey, void 0, payloadOrOptions);
858
955
  else return this.dispatchWithResult(actionKey, payloadOrOptions, options);
859
956
  };
860
957
  }
861
958
  } });
959
+ return this._actionsWithResultProxy;
862
960
  }
863
961
  /**
864
962
  * Register an action handler with optional configuration
package/dist/index.d.cts CHANGED
@@ -174,6 +174,8 @@ declare class ActionRegister<T extends ActionPayloadMap = ActionPayloadMap> {
174
174
  private handlerIdCounter;
175
175
  private controllerPool;
176
176
  private readonly maxControllerPoolSize;
177
+ private _actionsProxy?;
178
+ private _actionsWithResultProxy?;
177
179
  constructor(config?: ActionRegisterConfig);
178
180
  get actions(): { [K in keyof T]: T[K] extends void ? (options?: DispatchOptions) => Promise<void> : (payload: T[K], options?: DispatchOptions) => Promise<void> };
179
181
  get actionsWithResult(): { [K in keyof T]: T[K] extends void ? (options?: DispatchOptions) => Promise<ExecutionResult<any>> : (payload: T[K], options?: DispatchOptions) => Promise<ExecutionResult<any>> };
@@ -229,8 +231,13 @@ declare class ActionGuard {
229
231
  private cleanupInterval;
230
232
  private readonly maxIdleTime;
231
233
  private readonly cleanupIntervalMs;
234
+ private readonly maxGuards;
235
+ private accessOrder;
232
236
  constructor(autoCleanup?: boolean);
233
237
  private startAutoCleanup;
238
+ private performCleanup;
239
+ private updateAccessOrder;
240
+ private evictIfNeeded;
234
241
  debounce(actionKey: string, debounceMs: number): Promise<boolean>;
235
242
  throttle(actionKey: string, throttleMs: number): boolean;
236
243
  clearGuards(actionKey: string): void;
@@ -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":"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"}
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
@@ -174,6 +174,8 @@ declare class ActionRegister<T extends ActionPayloadMap = ActionPayloadMap> {
174
174
  private handlerIdCounter;
175
175
  private controllerPool;
176
176
  private readonly maxControllerPoolSize;
177
+ private _actionsProxy?;
178
+ private _actionsWithResultProxy?;
177
179
  constructor(config?: ActionRegisterConfig);
178
180
  get actions(): { [K in keyof T]: T[K] extends void ? (options?: DispatchOptions) => Promise<void> : (payload: T[K], options?: DispatchOptions) => Promise<void> };
179
181
  get actionsWithResult(): { [K in keyof T]: T[K] extends void ? (options?: DispatchOptions) => Promise<ExecutionResult<any>> : (payload: T[K], options?: DispatchOptions) => Promise<ExecutionResult<any>> };
@@ -229,8 +231,13 @@ declare class ActionGuard {
229
231
  private cleanupInterval;
230
232
  private readonly maxIdleTime;
231
233
  private readonly cleanupIntervalMs;
234
+ private readonly maxGuards;
235
+ private accessOrder;
232
236
  constructor(autoCleanup?: boolean);
233
237
  private startAutoCleanup;
238
+ private performCleanup;
239
+ private updateAccessOrder;
240
+ private evictIfNeeded;
234
241
  debounce(actionKey: string, debounceMs: number): Promise<boolean>;
235
242
  throttle(actionKey: string, throttleMs: number): boolean;
236
243
  clearGuards(actionKey: string): void;
@@ -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":"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"}
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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"}
package/dist/index.js CHANGED
@@ -314,27 +314,91 @@ var ActionGuard = class {
314
314
  this.guards = /* @__PURE__ */ new Map();
315
315
  this.maxIdleTime = 6e4;
316
316
  this.cleanupIntervalMs = 3e4;
317
+ this.maxGuards = 1e3;
318
+ this.accessOrder = [];
317
319
  if (autoCleanup) this.startAutoCleanup();
318
320
  }
319
321
  /**
320
322
  * Start automatic cleanup of idle guard states
321
- *
323
+ *
322
324
  * @internal
323
325
  */
324
326
  startAutoCleanup() {
325
327
  this.cleanupInterval = setInterval(() => {
326
- const now = Date.now();
327
- const keysToDelete = [];
328
- this.guards.forEach((state, key) => {
328
+ this.performCleanup();
329
+ }, this.cleanupIntervalMs);
330
+ }
331
+ /**
332
+ * πŸ”§ Optimized cleanup with early exit and batched operations
333
+ *
334
+ * @internal
335
+ */
336
+ performCleanup() {
337
+ const guardCount = this.guards.size;
338
+ if (guardCount === 0) return;
339
+ const now = Date.now();
340
+ const keysToDelete = [];
341
+ if (guardCount <= 10) this.guards.forEach((state, key) => {
342
+ const isIdle = now - state.lastExecuted > this.maxIdleTime;
343
+ const hasActiveTimers = state.debounceTimer || state.throttleTimer;
344
+ if (isIdle && !hasActiveTimers) keysToDelete.push(key);
345
+ });
346
+ else {
347
+ const entriesToCheck = Math.min(this.accessOrder.length, Math.ceil(guardCount / 4));
348
+ for (let i = 0; i < entriesToCheck; i++) {
349
+ const key = this.accessOrder[i];
350
+ if (!key) continue;
351
+ const state = this.guards.get(key);
352
+ if (!state) {
353
+ keysToDelete.push(key);
354
+ continue;
355
+ }
329
356
  const isIdle = now - state.lastExecuted > this.maxIdleTime;
330
357
  const hasActiveTimers = state.debounceTimer || state.throttleTimer;
331
358
  if (isIdle && !hasActiveTimers) keysToDelete.push(key);
332
- });
333
- if (keysToDelete.length > 0) {
334
- keysToDelete.forEach((key) => this.guards.delete(key));
335
- if (typeof process !== "undefined" && process.env?.DEBUG_CONTEXT_ACTION) console.debug(`[ActionGuard] Cleaned up ${keysToDelete.length} idle guards`);
336
359
  }
337
- }, this.cleanupIntervalMs);
360
+ }
361
+ if (keysToDelete.length > 0) {
362
+ keysToDelete.forEach((key) => {
363
+ this.guards.delete(key);
364
+ const accessIndex = this.accessOrder.indexOf(key);
365
+ if (accessIndex !== -1) this.accessOrder.splice(accessIndex, 1);
366
+ });
367
+ if (typeof process !== "undefined" && process.env?.DEBUG_CONTEXT_ACTION) console.debug(`[ActionGuard] Cleaned up ${keysToDelete.length} idle guards`);
368
+ }
369
+ }
370
+ /**
371
+ * πŸ”§ Update access order for LRU tracking
372
+ *
373
+ * @internal
374
+ */
375
+ updateAccessOrder(key) {
376
+ const existingIndex = this.accessOrder.indexOf(key);
377
+ if (existingIndex !== -1) this.accessOrder.splice(existingIndex, 1);
378
+ this.accessOrder.push(key);
379
+ }
380
+ /**
381
+ * πŸ”§ Evict oldest guards if max limit exceeded
382
+ *
383
+ * @internal
384
+ */
385
+ evictIfNeeded() {
386
+ if (this.guards.size >= this.maxGuards) {
387
+ const evictCount = Math.ceil(this.maxGuards * .1);
388
+ this.accessOrder.slice(0, evictCount).forEach((key) => {
389
+ const state = this.guards.get(key);
390
+ if (state) {
391
+ if (state.debounceTimer) {
392
+ clearTimeout(state.debounceTimer);
393
+ if (state.debounceResolve) state.debounceResolve(false);
394
+ }
395
+ if (state.throttleTimer) clearTimeout(state.throttleTimer);
396
+ }
397
+ this.guards.delete(key);
398
+ });
399
+ this.accessOrder = this.accessOrder.slice(evictCount);
400
+ if (typeof process !== "undefined" && process.env?.DEBUG_CONTEXT_ACTION) console.debug(`[ActionGuard] Evicted ${evictCount} oldest guards due to limit`);
401
+ }
338
402
  }
339
403
  /**
340
404
  * Apply debouncing to an action
@@ -359,6 +423,7 @@ var ActionGuard = class {
359
423
  * @internal
360
424
  */
361
425
  async debounce(actionKey, debounceMs) {
426
+ this.evictIfNeeded();
362
427
  /** Get or create guard state for this action */
363
428
  let state = this.guards.get(actionKey);
364
429
  if (!state) {
@@ -373,6 +438,7 @@ var ActionGuard = class {
373
438
  };
374
439
  this.guards.set(actionKey, state);
375
440
  }
441
+ this.updateAccessOrder(actionKey);
376
442
  /** Clear any existing debounce timer to restart the delay period */
377
443
  if (state.debounceTimer) {
378
444
  clearTimeout(state.debounceTimer);
@@ -417,6 +483,7 @@ var ActionGuard = class {
417
483
  * @internal
418
484
  */
419
485
  throttle(actionKey, throttleMs) {
486
+ this.evictIfNeeded();
420
487
  /** Get or create guard state for this action */
421
488
  let state = this.guards.get(actionKey);
422
489
  if (!state) {
@@ -431,6 +498,7 @@ var ActionGuard = class {
431
498
  };
432
499
  this.guards.set(actionKey, state);
433
500
  }
501
+ this.updateAccessOrder(actionKey);
434
502
  const now = Date.now();
435
503
  const timeSinceLastExecution = now - state.lastExecuted;
436
504
  /** Check if enough time has passed since last execution */
@@ -548,6 +616,7 @@ var ActionGuard = class {
548
616
  this.cleanupInterval = void 0;
549
617
  }
550
618
  this.clearAll();
619
+ this.accessOrder = [];
551
620
  }
552
621
  /**
553
622
  * πŸ†• Get statistics about active guards
@@ -632,7 +701,11 @@ var OperationQueue = class {
632
701
  * - μž‘μ—… μ™„λ£Œ μ‹œ λŒ€κΈ° 쀑인 ν”„λ‘œμ„ΈμŠ€μ—κ²Œ μžλ™ μ•Œλ¦Ό
633
702
  */
634
703
  async processQueue() {
635
- if (this.processingPromise) return this.processingPromise;
704
+ if (this.processingPromise) {
705
+ await this.processingPromise;
706
+ if (this.queue.length > 0 && !this.processingPromise) return this.processQueue();
707
+ return;
708
+ }
636
709
  this.processingPromise = this._doProcess();
637
710
  try {
638
711
  await this.processingPromise;
@@ -761,6 +834,35 @@ var OperationQueue = class {
761
834
  *
762
835
  * @public
763
836
  */
837
+ /**
838
+ * Type guard to determine if an object is DispatchOptions
839
+ * Extracted as utility function for reuse and performance
840
+ *
841
+ * @param obj - Object to check
842
+ * @returns True if object is DispatchOptions
843
+ * @internal
844
+ */
845
+ function isDispatchOptions(obj) {
846
+ if (!obj || typeof obj !== "object") return false;
847
+ if ("debounce" in obj && typeof obj.debounce === "number") return true;
848
+ if ("throttle" in obj && typeof obj.throttle === "number") return true;
849
+ if ("executionMode" in obj) return true;
850
+ if ("signal" in obj && obj.signal instanceof AbortSignal) return true;
851
+ if ("immediate" in obj && typeof obj.immediate === "boolean") return true;
852
+ if ("queuePriority" in obj && typeof obj.queuePriority === "number") return true;
853
+ if ("timeout" in obj && typeof obj.timeout === "number") return true;
854
+ if ("retryOnError" in obj && typeof obj.retryOnError === "object") return true;
855
+ if ("autoAbort" in obj && typeof obj.autoAbort === "object") return true;
856
+ if ("filter" in obj && typeof obj.filter === "object" && obj.filter !== null) {
857
+ const filter = obj.filter;
858
+ if ("handlerIds" in filter || "excludeHandlerIds" in filter || "priority" in filter || "custom" in filter) return true;
859
+ }
860
+ if ("result" in obj && typeof obj.result === "object" && obj.result !== null) {
861
+ const result = obj.result;
862
+ if ("strategy" in result || "merger" in result || "collect" in result || "maxResults" in result || "includeErrors" in result) return true;
863
+ }
864
+ return false;
865
+ }
764
866
  var ActionRegister = class {
765
867
  constructor(config = {}) {
766
868
  this.pipelines = /* @__PURE__ */ new Map();
@@ -809,18 +911,16 @@ var ActionRegister = class {
809
911
  * @public
810
912
  */
811
913
  get actions() {
812
- return new Proxy({}, { get: (target, prop) => {
914
+ if (!this._actionsProxy) this._actionsProxy = new Proxy({}, { get: (_target, prop) => {
813
915
  if (typeof prop === "string" && this.pipelines.has(prop)) {
814
916
  const actionKey = prop;
815
917
  return (payloadOrOptions, options) => {
816
- const isDispatchOptions = (obj) => {
817
- return obj && typeof obj === "object" && ("debounce" in obj || "throttle" in obj || "executionMode" in obj || "signal" in obj || "immediate" in obj || "filter" in obj || "result" in obj);
818
- };
819
918
  if (payloadOrOptions && isDispatchOptions(payloadOrOptions)) return this.dispatch(actionKey, void 0, payloadOrOptions);
820
919
  else return this.dispatch(actionKey, payloadOrOptions, options);
821
920
  };
822
921
  }
823
922
  } });
923
+ return this._actionsProxy;
824
924
  }
825
925
  /**
826
926
  * Actions-based dispatching with result collection
@@ -846,18 +946,16 @@ var ActionRegister = class {
846
946
  * @returns Proxy object with action functions that return ExecutionResult
847
947
  */
848
948
  get actionsWithResult() {
849
- return new Proxy({}, { get: (target, prop) => {
949
+ if (!this._actionsWithResultProxy) this._actionsWithResultProxy = new Proxy({}, { get: (_target, prop) => {
850
950
  if (typeof prop === "string" && this.pipelines.has(prop)) {
851
951
  const actionKey = prop;
852
952
  return (payloadOrOptions, options) => {
853
- const isDispatchOptions = (obj) => {
854
- return obj && typeof obj === "object" && ("debounce" in obj || "throttle" in obj || "executionMode" in obj || "signal" in obj || "immediate" in obj || "filter" in obj || "result" in obj);
855
- };
856
953
  if (payloadOrOptions && isDispatchOptions(payloadOrOptions)) return this.dispatchWithResult(actionKey, void 0, payloadOrOptions);
857
954
  else return this.dispatchWithResult(actionKey, payloadOrOptions, options);
858
955
  };
859
956
  }
860
957
  } });
958
+ return this._actionsWithResultProxy;
861
959
  }
862
960
  /**
863
961
  * Register an action handler with optional configuration