vimcord 1.0.54 → 1.0.55

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.d.mts CHANGED
@@ -381,7 +381,9 @@ interface EventConfig<T extends keyof ClientEvents> {
381
381
  /** Rate limiting options */
382
382
  rateLimit?: EventRateLimitOptions<T>;
383
383
  /** Before event execution */
384
- beforeExecute?: (...args: EventParameters<T>) => any;
384
+ beforeExecute?: (ctx: {
385
+ cancel: () => void;
386
+ }, ...args: EventParameters<T>) => any;
385
387
  /** The function that will be executed */
386
388
  execute?: (...args: EventParameters<T>) => any;
387
389
  /** After successful execution */
@@ -401,7 +403,9 @@ declare class EventBuilder<T extends keyof ClientEvents = keyof ClientEvents> im
401
403
  metadata: EventMetadata | undefined;
402
404
  deployment: EventDeployment | undefined;
403
405
  rateLimit: EventRateLimitOptions<T> | undefined;
404
- beforeExecute: ((client: Vimcord<true>, ...args: ClientEvents[T]) => any) | undefined;
406
+ beforeExecute: ((ctx: {
407
+ cancel: () => void;
408
+ }, client: Vimcord<true>, ...args: ClientEvents[T]) => any) | undefined;
405
409
  execute: ((client: Vimcord<true>, ...args: ClientEvents[T]) => any) | undefined;
406
410
  afterExecute: ((result: any, client: Vimcord<true>, ...args: ClientEvents[T]) => any) | undefined;
407
411
  onError: ((error: Error, client: Vimcord<true>, ...args: ClientEvents[T]) => any) | undefined;
package/dist/index.d.ts CHANGED
@@ -381,7 +381,9 @@ interface EventConfig<T extends keyof ClientEvents> {
381
381
  /** Rate limiting options */
382
382
  rateLimit?: EventRateLimitOptions<T>;
383
383
  /** Before event execution */
384
- beforeExecute?: (...args: EventParameters<T>) => any;
384
+ beforeExecute?: (ctx: {
385
+ cancel: () => void;
386
+ }, ...args: EventParameters<T>) => any;
385
387
  /** The function that will be executed */
386
388
  execute?: (...args: EventParameters<T>) => any;
387
389
  /** After successful execution */
@@ -401,7 +403,9 @@ declare class EventBuilder<T extends keyof ClientEvents = keyof ClientEvents> im
401
403
  metadata: EventMetadata | undefined;
402
404
  deployment: EventDeployment | undefined;
403
405
  rateLimit: EventRateLimitOptions<T> | undefined;
404
- beforeExecute: ((client: Vimcord<true>, ...args: ClientEvents[T]) => any) | undefined;
406
+ beforeExecute: ((ctx: {
407
+ cancel: () => void;
408
+ }, client: Vimcord<true>, ...args: ClientEvents[T]) => any) | undefined;
405
409
  execute: ((client: Vimcord<true>, ...args: ClientEvents[T]) => any) | undefined;
406
410
  afterExecute: ((result: any, client: Vimcord<true>, ...args: ClientEvents[T]) => any) | undefined;
407
411
  onError: ((error: Error, client: Vimcord<true>, ...args: ClientEvents[T]) => any) | undefined;
package/dist/index.js CHANGED
@@ -668,6 +668,8 @@ var EventBuilder = class _EventBuilder {
668
668
  return results.every(Boolean);
669
669
  }
670
670
  async executeEvent(...args) {
671
+ let canceled = false;
672
+ const cancel = () => canceled = true;
671
673
  try {
672
674
  if (!this.enabled) {
673
675
  return;
@@ -683,7 +685,8 @@ var EventBuilder = class _EventBuilder {
683
685
  return;
684
686
  }
685
687
  if (this.beforeExecute) {
686
- await this.beforeExecute(...args);
688
+ await this.beforeExecute({ cancel }, ...args);
689
+ if (canceled) return;
687
690
  }
688
691
  const result = await this.execute?.(...args);
689
692
  if (this.afterExecute) {
@@ -1693,7 +1696,7 @@ var VimcordErrorHandler = class {
1693
1696
  import chalk2 from "chalk";
1694
1697
 
1695
1698
  // package.json
1696
- var version = "1.0.54";
1699
+ var version = "1.0.55";
1697
1700
 
1698
1701
  // src/client/vimcord.logger.ts
1699
1702
  var clientLoggerFactory = (client) => new Logger({ prefixEmoji: "\u26A1", prefix: `vimcord (i${client.clientId})` }).extend({