@wolfstar/http-framework 6.0.1 → 6.1.0-next-20261002193904

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.
@@ -1933,6 +1933,83 @@ export interface IdParserRead {
1933
1933
  content: unknown;
1934
1934
  }
1935
1935
  //#endregion
1936
+ //#region src/lib/plugins/definePlugin.d.ts
1937
+ /**
1938
+ * A runtime plugin hook. It receives the {@link Client} explicitly and the same credential-free
1939
+ * {@link ClientOptions} object the client persists, so a hook can rewrite what a later hook sees.
1940
+ *
1941
+ * @since 6.1.0
1942
+ */
1943
+ export type StarsPluginHook<Async extends boolean = false> = (client: Client, options: ClientOptions) => Async extends true ? Awaitable<unknown> : unknown;
1944
+ /**
1945
+ * Where a plugin applies: `'development'` and `'production'` compare against `process.env.NODE_ENV` (which
1946
+ * `stars dev` forces to `development`), a function decides per client from its options. A function is called once
1947
+ * per client and plugin, when the plugin's first hook would run, and its answer holds for every hook of the plugin: it
1948
+ * receives the options rather than the client because the client is not initialised yet. A function that throws is
1949
+ * not wrapped in a {@link PluginHookError}.
1950
+ *
1951
+ * @since 6.1.0
1952
+ */
1953
+ export type StarsPluginApply = 'development' | 'production' | ((options: ClientOptions) => boolean);
1954
+ /**
1955
+ * A declarative, object-based plugin. Hook names match the {@link PluginHook} lifecycle.
1956
+ *
1957
+ * @since 6.1.0
1958
+ */
1959
+ export interface StarsPlugin {
1960
+ /**
1961
+ * The plugin's identity, used to attribute errors and in the `pluginLoaded` event. Must be non-empty.
1962
+ */
1963
+ name: string;
1964
+ /**
1965
+ * Hooks of a `'pre'` plugin run before plain ones, and `'post'` ones run after them. Registration order is
1966
+ * kept inside each group.
1967
+ */
1968
+ enforce?: 'pre' | 'post';
1969
+ /**
1970
+ * Restricts the plugin to an environment, or to the clients a function accepts.
1971
+ */
1972
+ apply?: StarsPluginApply;
1973
+ preGenericsInitialization?: StarsPluginHook;
1974
+ preInitialization?: StarsPluginHook;
1975
+ postInitialization?: StarsPluginHook;
1976
+ preLoad?: StarsPluginHook<true>;
1977
+ postListen?: StarsPluginHook<true>;
1978
+ }
1979
+ /**
1980
+ * Anything accepted where plugins are listed: a plugin, or nested arrays of plugins in which falsy entries are
1981
+ * dropped, so `plugins: [condition && plugin()]` works.
1982
+ *
1983
+ * @since 6.1.0
1984
+ */
1985
+ export type PluginOption = StarsPlugin | false | null | undefined | readonly PluginOption[];
1986
+ /**
1987
+ * Defines a plugin. This is an identity helper that gives the object (or the options factory) its types.
1988
+ *
1989
+ * @example
1990
+ * ```ts
1991
+ * export default definePlugin((options: { prefix?: string } = {}) => ({
1992
+ * name: 'wolfstar:my-plugin',
1993
+ * enforce: 'pre',
1994
+ * preLoad(client) {}
1995
+ * }));
1996
+ * ```
1997
+ * @since 6.1.0
1998
+ */
1999
+ export declare function definePlugin<T extends StarsPlugin>(plugin: T): T;
2000
+ export declare function definePlugin<Args extends unknown[], T extends StarsPlugin>(factory: (...args: Args) => T): (...args: Args) => T;
2001
+ /**
2002
+ * The error a {@link StarsPlugin} hook is wrapped in, so a failure points at the plugin that threw. The original
2003
+ * error is available as `cause`.
2004
+ *
2005
+ * @since 6.1.0
2006
+ */
2007
+ export declare class PluginHookError extends Error {
2008
+ readonly pluginName: string;
2009
+ readonly hook: PluginHook;
2010
+ constructor(pluginName: string, hook: PluginHook, cause: unknown);
2011
+ }
2012
+ //#endregion
1936
2013
  //#region src/lib/plugins/symbols.d.ts
1937
2014
  export declare const preGenericsInitialization: unique symbol;
1938
2015
  export declare const preInitialization: unique symbol;
@@ -1957,20 +2034,56 @@ export declare abstract class Plugin {
1957
2034
  //#endregion
1958
2035
  //#region src/lib/plugins/PluginManager.d.ts
1959
2036
  export type AsyncPluginHooks = PluginHook.PreLoad | PluginHook.PostListen;
2037
+ /**
2038
+ * A legacy hook: `this` is the client.
2039
+ *
2040
+ * @deprecated Use {@link StarsPlugin} through `definePlugin` instead.
2041
+ */
1960
2042
  export interface HttpFrameworkPluginAsyncHook {
1961
2043
  (this: Client, options: ClientOptions): Awaitable<unknown>;
1962
2044
  }
1963
2045
  export type SyncPluginHooks = Exclude<PluginHook, AsyncPluginHooks>;
2046
+ /**
2047
+ * A legacy hook: `this` is the client.
2048
+ *
2049
+ * @deprecated Use {@link StarsPlugin} through `definePlugin` instead.
2050
+ */
1964
2051
  export interface HttpFrameworkPluginHook {
1965
2052
  (this: Client, options: ClientOptions): unknown;
1966
2053
  }
2054
+ /**
2055
+ * The normalised callable stored for every hook, whether it came from a {@link StarsPlugin} or from the legacy API.
2056
+ */
2057
+ export interface HttpFrameworkPluginInvoker {
2058
+ (client: Client, options: ClientOptions): Awaitable<unknown>;
2059
+ }
1967
2060
  export interface HttpFrameworkPluginHookEntry<T = HttpFrameworkPluginHook | HttpFrameworkPluginAsyncHook> {
2061
+ /** The hook, `this`-bound to the client like it always was: `entry.hook.call(client, options)`. */
1968
2062
  hook: T;
2063
+ /** The same hook as a plain `(client, options)` call. For a {@link StarsPlugin} it also attributes failures to the plugin. */
2064
+ run: HttpFrameworkPluginInvoker;
1969
2065
  type: PluginHook;
1970
2066
  name?: string;
2067
+ enforce?: 'pre' | 'post';
2068
+ apply?: StarsPluginApply;
2069
+ /** The plugin object the entry came from, shared by all of its entries. `undefined` for the legacy API. */
2070
+ plugin?: StarsPlugin;
1971
2071
  }
2072
+ /**
2073
+ * Converts plugin options into hook entries, one per defined hook.
2074
+ *
2075
+ * @param option The plugin(s) to convert.
2076
+ * @returns The entries, in the plugin order and in {@link PluginHook} order inside each plugin.
2077
+ */
2078
+ export declare function toPluginEntries(option: PluginOption): HttpFrameworkPluginHookEntry[];
1972
2079
  export declare class PluginManager {
2080
+ #private;
1973
2081
  readonly registry: Set<HttpFrameworkPluginHookEntry<HttpFrameworkPluginAsyncHook | HttpFrameworkPluginHook>>;
2082
+ /**
2083
+ * Registers a legacy hook.
2084
+ *
2085
+ * @deprecated Register a {@link StarsPlugin} with {@link PluginManager.use} instead.
2086
+ */
1974
2087
  registerHook(hook: HttpFrameworkPluginHook, type: SyncPluginHooks, name?: string): this;
1975
2088
  registerHook(hook: HttpFrameworkPluginAsyncHook, type: AsyncPluginHooks, name?: string): this;
1976
2089
  registerPreGenericsInitializationHook(hook: HttpFrameworkPluginHook, name?: string): this;
@@ -1978,10 +2091,32 @@ export declare class PluginManager {
1978
2091
  registerPostInitializationHook(hook: HttpFrameworkPluginHook, name?: string): this;
1979
2092
  registerPreLoadHook(hook: HttpFrameworkPluginAsyncHook, name?: string): this;
1980
2093
  registerPostListenHook(hook: HttpFrameworkPluginAsyncHook, name?: string): this;
1981
- use(plugin: typeof Plugin): this;
2094
+ /**
2095
+ * Registers plugins: {@link StarsPlugin} objects (possibly nested in arrays, with falsy entries dropped) or, for
2096
+ * backwards compatibility, legacy {@link Plugin} classes.
2097
+ *
2098
+ * @param plugins The plugins to register.
2099
+ */
2100
+ use(...plugins: (typeof Plugin | PluginOption)[]): this;
2101
+ /**
2102
+ * Yields the entries ordered as `enforce: 'pre'`, plain, then `enforce: 'post'`, keeping registration order
2103
+ * inside each group.
2104
+ */
1982
2105
  values(): Generator<HttpFrameworkPluginHookEntry, void, unknown>;
1983
- values(hook: SyncPluginHooks): Generator<HttpFrameworkPluginHookEntry<HttpFrameworkPluginHook>, void, unknown>;
1984
- values(hook: AsyncPluginHooks): Generator<HttpFrameworkPluginHookEntry<HttpFrameworkPluginAsyncHook>, void, unknown>;
2106
+ /**
2107
+ * @param hook The hook to filter by.
2108
+ * @param extra Entries (from {@link toPluginEntries}) registered next to the global ones, such as a client's own plugins.
2109
+ */
2110
+ values(hook: SyncPluginHooks, extra?: readonly HttpFrameworkPluginHookEntry[]): Generator<HttpFrameworkPluginHookEntry<HttpFrameworkPluginHook>, void, unknown>;
2111
+ values(hook: AsyncPluginHooks, extra?: readonly HttpFrameworkPluginHookEntry[]): Generator<HttpFrameworkPluginHookEntry<HttpFrameworkPluginAsyncHook>, void, unknown>;
2112
+ values(hook: PluginHook, extra?: readonly HttpFrameworkPluginHookEntry[]): Generator<HttpFrameworkPluginHookEntry, void, unknown>;
2113
+ /**
2114
+ * Like {@link PluginManager.values}, but only the entries whose `apply` accepts the client's options.
2115
+ *
2116
+ * @param decisions The answers of `apply` functions already given for this client, by plugin. Pass the same map for
2117
+ * every phase of one client so a plugin is accepted or rejected as a whole.
2118
+ */
2119
+ applicable(hook: PluginHook, options: ClientOptions, extra?: readonly HttpFrameworkPluginHookEntry[], decisions?: Map<object, boolean>): Generator<HttpFrameworkPluginHookEntry, void, unknown>;
1985
2120
  }
1986
2121
  //#endregion
1987
2122
  //#region src/lib/structures/InteractionHandlerStore.d.ts
@@ -2148,12 +2283,13 @@ export declare class Client extends AsyncEventEmitter<MappedClientEvents> {
2148
2283
  */
2149
2284
  static readonly plugins: PluginManager;
2150
2285
  /**
2151
- * Registers a plugin onto the {@link Client}, applying all of its hooks.
2286
+ * Registers plugins onto the {@link Client}, applying all of their hooks. Accepts {@link StarsPlugin} objects
2287
+ * (see {@link definePlugin}) and, deprecated, legacy {@link Plugin} classes.
2152
2288
  *
2153
2289
  * @since 2.4.0
2154
- * @param plugin The plugin to register.
2290
+ * @param plugins The plugins to register.
2155
2291
  */
2156
- static use(plugin: typeof Plugin): typeof Client;
2292
+ static use(...plugins: (typeof Plugin | PluginOption)[]): typeof Client;
2157
2293
  /**
2158
2294
  * Gets the application command registry.
2159
2295
  *
@@ -2188,6 +2324,11 @@ export declare class Client extends AsyncEventEmitter<MappedClientEvents> {
2188
2324
  protected handleHttpMessage(interaction: Exclude<APIInteraction, APIPrimaryEntryPointCommandInteraction>, response: ServerResponse): Promise<ServerResponse>;
2189
2325
  }
2190
2326
  export interface ClientOptions {
2327
+ /**
2328
+ * Plugins that apply to this client only, next to the ones registered globally with {@link Client.use}.
2329
+ * Nested arrays are flattened and falsy entries are dropped.
2330
+ */
2331
+ plugins?: PluginOption;
2191
2332
  /**
2192
2333
  * The public key from Discord, available under "General Information" after opening an application from
2193
2334
  * [Discord's applications](https://discord.com/developers/applications).
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":["Store","_$______structures_CommandStore_js0.CommandStore","Response","Response","AutocompleteInteraction","AutocompleteInteraction","Interaction","AutocompleteInteraction","_$___interactions_index_js0.ApplicationCommandRegistryEntry","Piece","Piece","Piece","Piece","Store","Store","Piece","Store","NetListenOptions"],"sources":["../../src/lib/utils/internals.ts","../../src/lib/interactions/resolvers/ChatInputCommandResolver.ts","../../src/lib/interactions/decorators/RegisterCommand.ts","../../src/lib/interactions/resolvers/ContextMenuCommandResolver.ts","../../src/lib/interactions/decorators/RegisterMessageCommand.ts","../../src/lib/interactions/decorators/RegisterSubcommand.ts","../../src/lib/interactions/decorators/RegisterSubcommandGroup.ts","../../src/lib/interactions/decorators/RegisterUserCommand.ts","../../src/lib/interactions/decorators/RestrictGuildIds.ts","../../src/lib/interactions/resolvers/InteractionOptions.ts","../../src/lib/structures/CommandStoreRouter.ts","../../src/lib/structures/CommandStore.ts","../../src/lib/interactions/shared/ApplicationCommandRegistryEntry.ts","../../src/lib/interactions/shared/ApplicationCommandRegistry.ts","../../src/lib/interactions/shared/CommandRegistry.ts","../../src/lib/interactions/utils/util-types.ts","../../src/lib/interactions/structures/common/symbols.ts","../../src/lib/interactions/structures/interactions/base/BaseInteraction.ts","../../src/lib/interactions/structures/interactions/base/common.ts","../../src/lib/interactions/structures/interactions/AutocompleteInteraction.ts","../../src/lib/interactions/structures/interactions/base/CommandInteraction.ts","../../src/lib/interactions/structures/interactions/ChatInputCommandInteraction.ts","../../src/lib/interactions/structures/interactions/base/MessageComponentInteraction.ts","../../src/lib/interactions/structures/interactions/MessageComponentButtonInteraction.ts","../../src/lib/interactions/structures/interactions/MessageComponentChannelSelectInteraction.ts","../../src/lib/interactions/structures/interactions/MessageComponentMentionableSelectInteraction.ts","../../src/lib/interactions/structures/interactions/MessageComponentRoleSelectInteraction.ts","../../src/lib/interactions/structures/interactions/MessageComponentStringSelectInteraction.ts","../../src/lib/interactions/structures/interactions/MessageComponentUserSelectInteraction.ts","../../src/lib/interactions/structures/interactions/MessageContextMenuCommandInteraction.ts","../../src/lib/interactions/structures/interactions/ModalSubmitInteraction.ts","../../src/lib/interactions/structures/interactions/UserContextMenuCommandInteraction.ts","../../src/lib/interactions/structures/interactions/index.ts","../../src/lib/interactions/structures/Message.ts","../../src/lib/interactions/utils/util.ts","../../src/lib/interactions/router/CommandRouter.ts","../../src/lib/structures/Command.ts","../../src/lib/structures/InteractionHandler.ts","../../src/lib/types/Enums.ts","../../src/lib/ClientEvents.ts","../../src/lib/hmr/HotModuleReloader.ts","../../src/lib/components/IIdParser.ts","../../src/lib/plugins/symbols.ts","../../src/lib/plugins/Plugin.ts","../../src/lib/plugins/PluginManager.ts","../../src/lib/structures/InteractionHandlerStore.ts","../../src/lib/structures/Listener.ts","../../src/lib/structures/ListenerStore.ts","../../src/lib/utils/logger/ILogger.ts","../../src/lib/utils/security.ts","../../src/lib/Client.ts","../../src/lib/api/HttpCodes.ts","../../src/lib/components/StringIdParser.ts","../../src/lib/errors/UserError.ts","../../src/lib/errors/ArgumentError.ts","../../src/lib/errors/ChatInputRouterError.ts","../../src/lib/errors/Identifiers.ts","../../src/lib/errors/PreconditionError.ts","../../src/lib/structures/CommandLoaderStrategy.ts","../../src/lib/structures/ListenerLoaderStrategy.ts","../../src/lib/utils/logger/Logger.ts","../../src/lib/utils/permissions.ts"],"mappings":";;;;;;;;;;;;;;KAAY;;;;;;;cCkBC,oCAAoC,cAAc,yBAAyB;;;;;;;;EAYhF,WAAW,MAAM,yBAAyB;;;;;;;;EAY1C,mBAAmB,MAAM,yBAAyB,qBAAqB;;;;;;;;;EAavE,cAAc,MAAM,yBAAyB,gBAAgB,wBAAwB;;;;;;EAUrF,UAAU,yBAAyB;;kBAqM1B;OACJ,wBAAwB,KAAK,2BAA2B,cAAc;OACtE,cACT,0BACE,SAAS,wBAAwB,wBAAwB;OAElD,gCAAgC,KAAK,mCAAmC,cAAc;OACtF,sBACT,kCACE,SAAS,uCAAuC,gCAAgC;OAEzE,2BAA2B,KAAK,8BAA8B,cAAc;OAC5E,iBACT,6BACE,SAAS,kCAAkC,2BAA2B;OAE/D,kBAAkB;OAClB,0BAA0B;OAC1B,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;wBC/PlB,gBAAgB,gBAAgB,QAAQ,UAAU,QAAQ,SAAS,MAAM,yBAAyB,eAAW,eAC/D,QAAQ;;;;;;;cCfzD,sCAAsC,cAAc,2BAA2B;;;;;;;;;;EAcpF,WAAW,MAAM,2BAA2B,aAAa,MAAM,wBAAwB;;;;;;EAYvF,UAAU,2BAA2B;;kBAwC5B;OACJ,wBACT,KAAK,6DACL,cAAc;OACL,cACT,0BACE,SAAS,8BAA8B,wBAAwB;OAExD,kBAAkB;;;;;;;;;;;;;;;;;;;;wBC/Df,uBAAuB,gBAAgB,QAAQ,UAAU,QAAQ,SAAS,MAAM,2BAA2B,eAAW,QAC9E,QAAQ,UAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBCQxD,mBAAmB,gBAAgB,QAAQ,UAAU,QAAQ,SAC5E,MAAM,yBAAyB,gBAC/B,uCAAmC,QAEoB,QAAQ,UAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBCDxD,wBAAwB,gBAAgB,QAAQ,UAAU,QAAQ,SAAS,MAAM,yBAAyB,uBAAmB,QACrF,QAAQ,UAAQ;;;;;;;;;;;;;;;;;;;wBCbxD,oBAAoB,gBAAgB,QAAQ,UAAU,QAAQ,SAAS,MAAM,2BAA2B,eAAW,QAC3E,QAAQ,UAAQ;;;qBCnB3D,2BAAyB,kBAAyB,QAAQ,QAAQ;;;;;;;;;;;;;;;;;;;;;;wBAuB/D,iBAAiB,gBAAgB,QAAQ,UAAU,QAAQ,SAAS,+BAA2B,eACjD,QAAQ;;;wBCTtD,qBAAqB,UAAU,eAC9C,UAAU,4BACV,kBAAkB,+CAChB,qBAAqB;YASZ,qBAAqB,UAAU,iBAAiB;;;;EAI3D;;;;EAKA;;wBAGe,iCAAiC,UAAU,eAC1D,UAAU,4BACV,kBAAkB,+CAChB,iCAAiC;YAWxB,iCAAiC,UAAU,iBAAiB,qBAAqB;;;;EAI5F,eAAe;;wBAGA,uBAAuB,kBAAkB,+CAA+C;iBA4BvF;EAChB,iBAAiB;EACjB,YAAY;EACZ,kBAAkB;;wBA6CH,yBAAyB,MAAM,2CAA2C,qBAAqB;wBAI/F,4BAA4B,MAAM,8CAA8C,qBAAqB;yBAIpG;YACC;IAChB;;YAGgB,gBAAgB;IAChC,SAAS;;YAGO,aAAa;IAC7B,MAAM;IACN,QAAQ;;OAGG,UAAU;OACV,OAAO;OACP,aAAa;OAEb,eACR,cAAc,SACd;IAAgB,SAAS;QACzB;IAAgB,MAAM;OACvB;OAES,MAAM,OAAO,UAAU,OAAO,0CAA0C,aAAa;YAEhF,oBAAoB,KAAK;IACzC,MAAM;;OAGK,oBAAoB;OACpB,iBAAiB;OACjB,cAAc;OAEd,aAAa,cAAc,iBAAiB,cAAc;;;;;iBAMtD;GACf,6BAA6B,aAAa,qBAAqB;GAC/D,6BAA6B;GAC7B,6BAA6B,UAAU,qBAAqB;GAC5D,6BAA6B;GAC7B,6BAA6B,cAAc,qBAAqB;GAChE,6BAA6B;GAC7B,6BAA6B,OAAO,qBAAqB;GACzD,6BAA6B;GAC7B,6BAA6B,OAAO,qBAAqB;EAC1D,iBAAiB,6BAA6B;EAC9C,cAAc,6BAA6B;EAC3C,cAAc,6BAA6B;EAC3C,cAAc,6BAA6B;EAC3C,kBAAkB,6BAA6B;EAC/C,aAAa,6BAA6B;EAC1C,WAAW,6BAA6B;EACxC,aAAa,6BAA6B;EAC1C,WAAW,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAkC7B,cAAc,UAAU,qBAAqB,qBAAqB,WAAW,IAAI,cAAc,EAAE;;;;;;;;qBCvOhG;;;;;;;;;EAWL,IAAI,aAAa,mCAAgC,mCAAA;;;;;;;;EAajD,aAAa,eAAe;;;;;;;;EAW5B,eAAe,eAAe;;;;;;;;;EAY9B,oBAAoB,cAAc,SAAS;;;;;;;;;EAY3C,sBAAsB,cAAc,SAAS;;;;;;;;;EAY7C,uBAAuB;;;;;;;;;EAYvB,yBAAyB;;;;qBCnEpB,qBAAqBA,QAAM;;;;;;;EAMhC,QAAM;EAEb;;;;;;;;;EAYa,sBACZ,UAAU,gBACV,aAAa,QAAQ,kCAAkC,0CACrD,QAAQ;;;;;;;;;EAkCE,kCACZ,UAAU,gBACV,aAAa,+CACX,QAAQ;;;;;;;;;;;qBCpEC,2CAA2C,cAAc,gCAAgC;;;;;;;;EAW9F,eAAe;;;;;;;;EAWf,YAAY,OAAO;;;;;;;;EAYnB,WAAW,SAAS,YAAY;;;;;;;;;EAYhC,WAAW,SAAS,WAAW,OAAO;;;;;;;MAWlC,aAAa;;;;;;;MAUb,eAAe;;;;;;;EAUnB,UAAU,gCAAgC;;;;;;;;;EAc1C,iBAAiB;;;;;;;;EAWjB,mBAAmB;;yBAOV;OACJ,UAAU,QAAQ,wCAAwC;;;;YC9G3D,oBAAoB;;;;;;;qBAQnB,sCAAsC,cAAc,gCAAgC;;MAMrF,SANqFC;;;;;;;;EAiBzF,MAAM,SAAS,SAAS,2BAA2B;;;;;;;;;EAenD,IAAI,gBAAgB,QAAQ,SAAS,eAAe,QAAQ,WAAW;;;;;;;;;EAYvE,OAAO,gBAAgB,QAAQ,SAAS,eAAe,QAAQ;;;;;;;;;EAY/D,OAAO,gBAAgB,QAAQ,SAAS,eAAe,QAAQ,WAAW;;;;;;;EAU1E,UAAU,gCAAgC;;;;;;;;;EAY1C,aAAa,6BAA6B,aAAU;;;;;;;EAcpD,8BAA0B,mBAAA;;;;;;;EAe1B,gCAA4B,mBAAA;;;;;;;EAiB5B,2BAA2B,gCAAgC;;;;;;;EAa3D,0BAA0B,WAAW,WAAW,gCAAgC;;;;;;;EAwBhF,sBAAkB,QAAA;;;;;;;;EAWlB,0BAA0B,SAAS,YAAS,QAAA;;;;;;;EAU5C,uBAAuB,SAAS,YAAS,QAAA;;;;;;EASzC,+BAA+B,QAAQ,qBAAqB;cAgCvD;;yBAMI;YACC;IAChB,MAAM;IACN,UAAU;IACV,aAAa;;;qBAIF,4BAA0B;;;;;;;;;;;;;qBCrP1B,gBAAgB,gBAAgB,QAAQ,UAAU,QAAQ;;EAGtE,YAAmB,eAAe,QAAQ;;;;;;;;;;;;;;;;EAmBnC,yBAAyB,MAAM,yBAAyB;;;;;;;;;;EAcxD,mBAAmB,MAAM,yBAAyB,gBAAgB,gBAAgB;;;;;;;;;EAalF,wBAAwB,MAAM,yBAAyB,qBAAqB;;;;;;;;;;EAc5E,2BACN,MAAM,2BAA2B,aACjC,MAAM,uBAAuB,UAAU,uBAAuB,MAC9D;;;;;;;;;EAcM,uBAAuB,MAAM,2BAA2B,aAAa;;;;;;;;;EAYrE,oBAAoB,MAAM,2BAA2B,aAAa;;;;;;;;EAWlE,YAAY;;;;KCpHR,cAAc,KAAK,OAAO,GAAG;KAC7B,mBAAmB,KAAK,QAAQ,cAAc;KAE9C,SAAS,KAAK;EAAM,QAAQ;;KAE5B,aAAa;EAAU;;KACvB,eAAe,YAAY,kBAAkB;KAE7C,qBAAqB,QAAQ,gBAAgB;;;cCZ5C;cACAC;;;YCiBD,sBAAsB,QAAQ,gBAAgB;8BAEpC,gBAAgB,UAAU,sBAAsB;sBACjD,OAAO;sBACPC,aAAW;EAE/B,YAAmB,UAAU,gBAAgB,MAAM;MAKxC;;;;MAOA,MAAM;;;;MAON,QAAQ;;;;MAOR,mBAAmB;;;;;;MASnB;;;;MAOA,kBAAkB;;;;;;MASlB,iBAAiB;;;;;MAQjB,kCAAkC;;;;;;;MAUlC,gCAAgC;;;;MAOhC,WAAW;;;;;MAQX,cAAc;;;;;;;MAUd,aAAa;;;;MAOb,WAAW;;;;MAOX,QAAQ;;;;;MAQR,gBAAgB;;;;MAOhB,YAAY;;;;;;MASZ,WAAW;;;;MAOX,gBAAgB;;;;;;MAShB,eAAe;;;;MAOf,UAAU;;;;;;MASV,UAAU;;;;MAOV,SAAS;;;;MAOT,wCAAI;;;;MAOJ,WAAW;;;;;EAQf,mBAAmB;;;;;;;EAUb,gBAAgB,QAAQ,OAAO,IAAI,SAAS,cAAc;;;;;;EAU1D,cAAc,QAAQ,OAAO,IAAI,SAAS,cAAc;YAK3D,WAAW,MAAM,gBAAa;;YAc7B,QAAQ,UAAU,mBAAmB;MAC5C,YAAY,YAAY;MACxB,WAAW,YAAY;MACvB,gBAAgB,YAAY;MAC5B,eAAe,YAAY;MAC3B,UAAU,YAAY;;;;YC1Pf,2BAA2B;YAC3B,8BAA8B;YAE9B,sBAAsB;YACtB,yBAAyB;YACzB,oBAAoB;YACpB,uBAAuB;YACvB,oBAAoB;YACpB,uBAAuB;YACvB,kBAAkB,SAAS;YAE3B,oBAAoB;YACpB,aAAa;YACb,gBAAgB;;;cCpBfC,kCAAgC,gBAAgBA,0BAAwB;;;;;EAK7E,MAAM,MAAM,8BAA8B;;;;EAQ1C,cAAc;;kBAKLA;OACJ,OAAO;;;;YCAR,6BACT,4CACA,uCACA;qBAEU,mBAAmB,UAAU,oCAAoC,gBAAgB;;;;;EAKhF,MAAM,MAAM,yBAAyB,QAAQ;;;;;EAU7C,MAAM,OAAO,uBAAuB,QAAQ;;;;;EAUlD,UAAU,MAAM,uBAAuB;;;;;EASjC,WAAW,UAAU,QAAQ,kBAAkB,mBAAmB;;;;qBC3DnE,oCAAoC,mBAAmB,4BAA4B;yBAE/E;OACJ,OAAO;;;;YCoBR,kCAAkC,uCAAuC;8BAE/D,4BAA4B,UAAU,yCAAyC,gBAAgB;;;;MAIzG,2CAAO;;;;EAOL,eAAe,QAAQ;;;;;EAUvB,OAAO,OAAO,gBAAgB,QAAQ;;;;;EAUtC,MAAM,MAAM,yBAAyB,QAAQ;;;;;EAU7C,MAAM,OAAO,uBAAuB,QAAQ;;;;;EAUlD,UAAU,MAAM,uBAAuB;;;;;EASjC,WAAW,UAAU,QAAQ,kBAAkB,mBAAmB;;;;qBCrFnE,0CAA0C,4BAA4B,kCAAkC;yBAEpG;OACJ,OAAO;;;;qBCDP,iDAAiD,4BAA4B,yCAAyC;;;;MAIvH,OAAO;;;;;;;;MAWP,YAAY,WAAW,WAAW,yCAAyC;;;;;;EAS9E,QAAQ,iBAAiB;;;;;;;;EAWzB,UAAU,iBAAiB,yCAAyC;;;;;;;;EAcpE,WAAW,kBAAkB,WAAW,yCAAyC;;yBAOzE;OACX,OAAO,mBAAmB,gBAAgB,kBAAkB;cACrD,OAAO,OAAO,SAAS,KAAK;cAC5B,QAAQ,qBAAqB;;;;;qBC3D7B,qDAAqD,4BAA4B,6CAA6C;;;;MAI/H,OAAO;;;;;;;;MAWP,SAAS,WAAW,WAAW,6CAA6C;;;;;;;;;MAoB5E,SAAS,WAAW,WAAW;;;;;;;;;MAoB/B,gBAAgB,WAAW,WAAW,6CAA6C;;;;;;EAStF,QAAQ,iBAAiB;;;;;;;;;EAYzB,UAAU,iBAAiB,6CAA6C;;;;;;;;;EA2BxE,WAAW,kBAAkB,WAAW,6CAA6C;;yBAO7E;OACX,OAAO,mBAAmB,gBAAgB,kBAAkB;cACrD,OAAO,OAAO,SAAS,KAAK;cAC5B,QAAQ;IAAc;IAAY,MAAM,qBAAqB;;IAAW;;cAExE;IAAc;MAAe,qBAAqB;;;;;qBCnHlD,8CAA8C,4BAA4B,sCAAsC;;;;MAIjH,OAAO;;;;;;;;MAWP,SAAS,WAAW,WAAW,sCAAsC;;;;;;EASxE,QAAQ,iBAAiB;;;;;;;;EAWzB,UAAU,iBAAiB,sCAAsC;;;;;;;;EAcjE,WAAW,kBAAkB,WAAW,sCAAsC;;yBAOtE;OACX,OAAO,mBAAmB,gBAAgB,kBAAkB;cACrD,OAAO,OAAO,SAAS,KAAK;cAC5B,QAAQ,qBAAqB;;;;;qBC7D7B,gDAAgD,4BAA4B,wCAAwC;MACrH;;yBAKK;OACX,OAAO,mBAAmB,gBAAgB,kBAAkB;cACrD,OAAO,OAAO,SAAS,KAAK;;;;;qBCN5B,8CAA8C,4BAA4B,sCAAsC;;;;MAIjH,OAAO;;;;;;;;MAWP,SAAS,WAAW,WAAW,sCAAsC;;;;;;EASxE,QAAQ,iBAAiB;;;;;;;;EAWzB,UAAU,iBAAiB,sCAAsC;;;;;;;;EAcjE,WAAW,kBAAkB,WAAW,sCAAsC;;yBAOtE;OACX,OAAO,mBAAmB,gBAAgB,kBAAkB;cACrD,OAAO,OAAO,SAAS,KAAK;cAC5B,QAAQ,qBAAqB;;;;;qBC7D7B,6CAA6C,mBAAmB,qCAAqC;yBAEjG;OACJ,OAAO;;;;qBCYP,+BAA+B,gBAAgB,uBAAuB;;;;MAIvE,2CAAO;;;;EAOL,eAAe,QAAQ;;;;;EAUvB,OAAO,OAAO,gBAAgB,QAAQ;;;;;EAUtC,MAAM,MAAM,yBAAyB,QAAQ;;;;;EAU7C,MAAM,OAAO,uBAAuB,QAAQ;;;;;EAU5C,WAAW,UAAU,QAAQ,kBAAkB,mBAAmB;;yBAa/D;OACJ,OAAO;;;;qBChFP,0CAA0C,mBAAmB,kCAAkC;yBAE3F;OACJ,OAAO;;;;yBCMH;OACJ,eAAeC;OAEf,mBAAmB;OACnB,4BAA4B;OAC5B,yBAAyB;OAEzB,yBAAyB;OACzB,gCAAgC;OAChC,oCAAoC;OACpC,6BAA6B;OAC7B,+BAA+B;OAC/B,6BAA6B;OAC7B,6BACT,gCACA,oCACA,6BACA,+BACA;OACS,cAAc;OAEd,mBAAmB,yBAAyB,6BAA6B;OACzE,qBAAqB,4BAA4B;OACjD,qBAAqB,mBAAmB;OAExC,MACT,eACA,mBACA,4BACA,yBACA,yBACA,6BACA;;KAGQC,gBAAc,aAAa;;;qBC/B1B,eAAe,UAAU,kBAAkB;WACvC,aAAa;EAE7B,YAAmB,aAAa;;;;MAOrB;;;;MAOA,UAAU;;;;EAOR,OAAO,mBAAmB;;;;;EAc1B,SAAS,UAAU,QAAQ,wBAAwB,mBAAmB;;;;EAetE,UAAU;;YAWZ,uBAAuB;YACvB,wBAAwB,SAAS;qBAEhC,QAAQ,UAAU,kBAAkB,yBAAyB,eAAe;oBACtE;EAElB,YAAmB,aAAa,GAAG,MAAM;;;;;;MAUrB;;;;;;;MAUT,cAAc;;;;MAOd,aAAa;;;;;;;;;;MAab,UAAU;;;;;;MASV,WAAW;;;;;;;;MAWX,aAAa;;;;;;MASb;;;;MAOA,aAAa;;;;;;;;MAWb,oBAAoB;;;;MAOpB;;;;MAQA,YAAY;;;;;;MAUZ,OAAO;;;;;;;MAUP,oBAAoB;;;;;;MASpB,mBAAmB;;;;;;;MAUnB,YAAY;;;;;;;MAUZ,iBAAiB;;;;;;;MAUjB,gBAAgB;;;;;;;;;;;;MAehB,oBAAoB;;;;;;;;;;MAapB,mBAAmB;;;;;;MASnB,SAAS;;;;;;MAST,UAAU;;;;;;MASV,eAAe;;;;;;MASf,UAAU;;;;;;MASV,aAAa;;;;MAOb,cAAc;;;;;;MASd;;;;;;MASA,wCAAI;;;;MAOK,UAAM;;;;;;;MAUf,yCAAK;;;;MAOL,8CAAU;;;;MAOV,iDAAa;;;;;;MASb,gDAAY;;;;wBClWR,gBAAgB,UAAU,qBAAqB,UAAU,gBAAgB,aAAa,IAAI,aAAa;KAwC3G,aAAa,UAAU,uBAAuB,UAAUC,0BAAwB,OACzFA,4BACA,UAAU,4BAA4B,OACrC,8BACA,UAAU,kCAAkC,OAC3C,oCACA,UAAU,qCAAqC,OAC9C,uCACA,UAAU,kCAAkC,OAC3C,oCACA,UAAU,yCAAyC,OAClD,2CACA,UAAU,6CAA6C,OACtD,+CACA,UAAU,sCAAsC,OAC/C,wCACA,UAAU,wCAAwC,OACjD,0CACA,UAAU,sCAAsC,OAC/C,wCACA,UAAU,uBAAuB,OAChC;;;;;;;;;qBCtEA,cAAc,gBAAgB,QAAQ,UAAU,QAAQ;;EAOpE,YAAmB,SAAS,QAAQ;;;;;;MAiBzB;;;;;;MASA;;;;;;;;EAWJ,0BAA0B,MAAM;;;;;;;;EAwBhC,4BAA4B,MAAM;;;;8BCpFpB,QAAQ,gBAAgB,QAAQ,UAAU,QAAQ,iBAAiBE,QAAM;;;;;WAK9E,QAAQ,cAAc;EAEtC,YAAmB,SAAS,QAAQ,eAAe,UAAS;;;;;;MAWjD,YAXiDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4CrD,6BAA6B,UAAU,QAAQ;;;;;;;EAQ/C,aAAa,aAAa,QAAQ,+BAA+B,MAAM,gBAAgB;;;;;;;;EAYvF,gBAAgB,aAAa,QAAQ,yBAAyB,MAAM,QAAQ,6BAA6B;;yBAMhG;OACJ,0BAA0B,aAAa;OACvC,sBAAsB,oBAAoB,iCAAiC;OAE3E,uBAAuB,aAAa;OACpC,kBAAkB,aAAa;OAC/B,qBAAqB,aAAa;OAElC,yBAAyB,aAAa;OACtC,gCAAgC,aAAa;OAE7C,cAAc,uBAAuB,0BAA0B,kBAAkB;OACjF,kBAAkB;OAElB,WAAW;;OAIX,UAAU;OACV,gBAAgBC,QAAM;OACtB,OAAOA,QAAM;OACb,eAAeA,QAAM;OACrB,UAAUA,QAAM;;;;8BCtGP,mBAAmB,gBAAgB,mBAAmB,UAAU,mBAAmB,iBAAiBC,QACzH;EAGA,YAAmB,SAAS,mBAAmB,eAAe,UAAS;WAIvD,IAAI,aAAa,mBAAmB,aAAa,yBAAyB;;yBAG1E;OACJ,oBAAoB,aAAa;OACjC,wBAAwB,aAAa;OACrC,mBAAmB,aAAa;OAChC,8BAA8B,aAAa;OAE3C,yBAAyB,aAAa;OACtC,gCAAgC,aAAa;OAE7C,cAAc,aAAa;OAC3B,kBAAkB;;OAIlB,UAAU;OACV,gBAAgBA,QAAM;OACtB,OAAOA,QAAM;OACb,eAAeA,QAAM;OACrB,UAAUA,QAAM;;;;oBChCjB;EACX;EACA;EACA;EACA;EACA;;;;iBCOgB;EAChB,SAAS;EACT,aAAa;EACb,UAAU;;iBAGM;EAChB,SAAS;EACT,aAAa;EACb,UAAU;;iBAGM;EAChB,SAAS;EACT,aAAa,iCAAiC;EAC9C,UAAU;;;;;;;;;;;;;;;;oBAiBC;EACX;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;iBAGgB;EAChB,QAAQ;;;;;;;;;;;;;EAaR,eAAe,MAAM,YAAY;EACjC,qBAAqB,aAAa,8CAA8C,UAAU;EAC1F,qBAAqB,aAAa,mCAAmC,8CAA8C,UAAU;EAC7H,uBAAuB,SAAS;EAChC,aAAa,SAAS;EACtB,iBAAiB,SAAS,2BAA2B;EACrD,eAAe,gBAAgB,SAAS;EACxC,gBAAgB,SAAS;EACzB,kBAAkB,SAAS;EAC3B,sBAAsB,SAAS,gCAAgC;EAC/D,oBAAoB,gBAAgB,SAAS;EAC7C,qBAAqB,SAAS;EAC9B,gCAAgC,aAAa,iCAAiC,2BAA2B,UAAU;EACnH,gCAAgC,aAAa,iCAAiC,2BAA2B,UAAU;EACnH,wBAAwB,SAAS;EACjC,4BAA4B,SAAS,sCAAsC;EAC3E,0BAA0B,gBAAgB,SAAS;EACnD,2BAA2B,SAAS;;;;;;EAMpC,WAAW;;;;;;EAMX;;;;;;EAMA,kBAAkB,QAAQC,WAAS;;;;;;EAMnC,mBAAmB,OAAOA,SAAO;;;;;;EAMjC,mBAAmB,OAAOA,SAAO;;;;;;;EAOjC,WAAW,gBAAgB;;;;;;;;YAShB,wBAAwB;YAExB,wBAAwB,WAAW,eAAe,aAAa;;;;;;;;;;;;;;;;;qBCnI9D;;;;;;;WAMI,SAAS,kBAAkB;EAK3C,YAAmB,UAAS,kBAAkB;;;;;;MASnC;;;;;;MASA;;;;;;;;;;EAaE,SAAS;;;;;;;EAoCT,QAAQ;;;;;;;;;YAqBL,kBAAkB,OAAOE,QAAMD,UAAQ,eAAe;;;;;;;;YAoCtD,kBAAkB,OAAOC,QAAMD,UAAQ,eAAe;;;;;;;;;;YAyB5D,YAAY,gBAAgB;;iBAMtB,mBAAmB;;;;;;EAMnC;;;;;;;EAQA;;yBAGgB;OACJ,UAAU;;;;iBC5MN;EAChB,IAAI,mBAAmB;;iBAGP;EAChB;EACA;;;;qBCNY;qBACA;qBACA;qBAEA;qBACA;;;;;;;;;8BCKS;UACN,8BAA8B,MAAM,QAAQ,SAAS;UACrD,sBAAsB,MAAM,QAAQ,SAAS;UAC7C,uBAAuB,MAAM,QAAQ,SAAS;UAC9C,YAAY,MAAM,QAAQ,SAAS,kBAAkB;UACrD,eAAe,MAAM,QAAQ,SAAS,kBAAkB;;;;YCT5D,mBAAmB,WAAW,UAAU,WAAW;iBAC9C;GACf,MAAM,QAAQ,SAAS,gBAAgB;;YAG7B,kBAAkB,QAAQ,YAAY;iBACjC;GACf,MAAM,QAAQ,SAAS;;iBAGR,6BAA6B,IAAI,0BAA0B;EAC3E,MAAM;EACN,MAAM;EACN;;qBAGY;WACI,UAAQ,IAAA,6BAAA,+BAAA;EAEjB,aAAa,MAAM,yBAAyB,MAAM,iBAAiB;EACnE,aAAa,MAAM,8BAA8B,MAAM,kBAAkB;EAOzE,sCAAsC,MAAM,yBAAyB;EAIrE,8BAA8B,MAAM,yBAAyB;EAI7D,+BAA+B,MAAM,yBAAyB;EAI9D,oBAAoB,MAAM,8BAA8B;EAIxD,uBAAuB,MAAM,8BAA8B;EAI3D,IAAI,eAAe;EAgBnB,UAAU,UAAU;EACpB,OAAO,MAAM,kBAAkB,UAAU,6BAA6B;EACtE,OAAO,MAAM,mBAAmB,UAAU,6BAA6B;;;;qBC7DlE,gCAAgCE,QAAM;EAClD;EAIa,WACZ,UAAU,gBACV,aAAa,iCAAiC,4BAC5C,QAAQ;;;;8BCZU,SAAS,gBAAgB,SAAS,UAAU,SAAS,iBAAiBC,QAAM;EAC1F,SAAS,SAAS;EAClB;YACG,eAAe;EAEzB,YAAmB,SAAS,SAAS,eAAe,SAAS;WAQ7C,OAAO,uBAAuB;;yBAG9B;;OAEJ,UAAU;OACV,gBAAgBA,QAAM;OACtB,OAAOA,QAAM;OACb,eAAeA,QAAM;YAChB,gBAAgBA,QAAM;IACtC,SAAS,aAAa,WAAW,YAAY,UAAU,WAAW,UAAU,mBAAkB;IAC9F;;YAGgB;IAChB,GAAG,mBAAmB,cAAc;IACpC,KAAK,mBAAmB,cAAc;IACtC,IAAI,mBAAmB,cAAc;IACrC,gBAAgB;IAChB;IACA,KAAK,sBAAsB;;;;;qBChChB,sBAAsBC,QAAM;EACxC;;;;;;;;;;;oBCDW;;;;EAIX;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;;;;;;;;iBAYgB;;;;;EAKhB,IAAI,OAAO;;;;;EAMX,SAAS;;;;;EAMT,SAAS;;;;;EAMT,QAAQ;;;;;EAMR,QAAQ;;;;;EAMR,SAAS;;;;;EAMT,SAAS;;;;;;EAOT,MAAM,OAAO,aAAa;;;;KClGf,MAAM,UAAU;;;qBC4Bf,eAAe,kBAAkB;;EACtC,QAAS;;;;;;;EAQT,KAAK;;;;;;;;WASI,QAAQ;WAER;WACA,SAAS;WACT;WACA;EAIhB,YAAmB,UAAS;;;;;;kBA0DL,SAAO;;;;;;;SAQhB,IAAI,eAAe,gBAAM;;;;;;;MAW5B,YAAQ;;;;;EAQN,KAAK,UAAS,cAAgB;;;;;EAuB9B,SAAS,eAAe,UAAU,MAAM,YAAY,iBAAiB,gBAAa;;;;;;;;;;;;;EAkClF,MAAM,SAAS,SAAS,UAAS,eAAoB,QAAQ;YAW1D,qBAAqB,SAAS,iBAAiB,UAAU,gBAAgB,cAAc,KAAK,MAAG,QAAA,eAAA;YAqC/F,kBACf,aAAa,QAAQ,gBAAgB,yCACrC,UAAU,iBACR,QAAQ;;iBAsBK;;;;;;;EAOhB;;;;;;EAOA;;;;EAKA,cAAc,QAAQ;;;;;EAMtB;;;;;EAMA;;;;;;EAOA;;;;;;EAOA,aAAa;;;;;;;;;EAUb,MAAM;;;;;;EAON,SAAS;;iBAGO;;;;;;;;EAQhB,QAAQ;;;;;;;;EASR,WAAW;;iBAGK;;;;;;EAMhB;;iBAGgB,sBAAsB,KAAKC;;;;EAI3C;;;;EAKA;;;;;EAMA;;;;EAKA,gBAAgB;;iBAGA;;;;;EAKhB;;yBAGgB;OACJ,UAAU;OACV,gBAAgB;OAChB,mBAAmB;OACnB,sBAAsB;OACtB,qBAAqB;;;YAIhB;IAChB,UAAU;IACV,wBAAwB;IACxB,WAAW;;YAGK;IAChB,QAAQ;IACR,UAAU;IACV,MAAM;IACN,4BAA4B;IAC5B,QAAQ;;;;;oBC/ZE;;;;;;;;EAQX;;;;;EAMA;;;;;;EAOA;;;;;;EAOA;;;;;EAMA;;;;;EAMA;;;;;;;EAQA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;;;EASA;;;;EAKA;;;;;;;;;;;;EAaA;;;;;;;EAQA;;;;;;;EAQA;;;;;;;EAQA;;;;;EAKA;;;;;;;;EASA;;;;;;;EAQA;;;;;;EAOA;;;;;;;;;;EAWA;;;;;;;;;;;;EAaA;;;;;;;;;;;EAYA;;;;;EAMA;;;;;;EAOA;;;;;EAMA;;;;EAKA;;;;;;;EAQA;;;;;;EAOA;;;;;;;;;;EAWA;;;;;EAMA;;;;;EAMA;;;;;EAMA;;;;;;;EAQA;;;;;;EAOA;;;;;;;EAQA;;;;;EAMA;;;;;;;;;EAUA;;;;;;;EAQA;;;;;EAMA;;;;;EAMA;;;;EAKA;;;;;EAMA;;;;;EAMA;;;;;EAMA;;;;;;;;EASA;;;;;EAMA;;;;;;EAOA;;;;;;;EAQA;;;;;EAMA;;;;;;EAOA;;;;;EAMA;;;;;EAMA;;;;;EAMA;;;;EAKA;;;;;EAMA;;;;;EAMA;;;;;EAMA;;;;;EAMA;;;;;;;EAQA;;;;qBClbY,0BAA0B;EAC/B,IAAI,mBAAmB;;;;;;;;;;;;;;;;;;;;;;qBCelB,kBAAkB;;;;;WAKd;;;;;WAMA;;;;;EAMhB,YAAmB,SAAS,UAAU;MAMlB;;yBAKJ;;;;;YAKC;;;;;IAKhB;;;;;IAMA;;;;;;IAOA;;;;;;;;;;;;;;;;;;;;;qBClDW,cAAc,qBAAqB;;;;;WAK/B;;;;;WAMA,MAAM;;;;;WAMN,WAAW;EAE3B,YAAmB,SAAS,cAAc,QAAQ;MAO9B;;yBAKJ;;;;;YAKC,QAAQ,WAAW,KAAK,UAAU;;;;;IAKlD;;;;;;IAOA,OAAO;;;;;IAMP,WAAW;;;;;;IAOX;;;;;;;;;qBCvEW,qBAAqB,gBAAgB,QAAQ,UAAU,QAAQ,iBAAiB;;;;;WAK5E,kBAAkB;;;;;WAMlB,SAAS,QAAQ;;;;;WAMjB,OAAO;;;;;WAMP,YAAY;EAE5B,YACC,kBAAkB,uBAClB,SAAS,QAAQ,UACjB,QAAQ,mDACR,aAAa;;;;;MAiBH;MAIS;;qBAKR;WACZ,4BAAyB,iBAAkB;WAE3C,uBAAoB,iBAAkB,yBAAyB;WAE/D,6BAA0B,iBAAkB;WAE5C,wBAAqB,iBAAkB,yBAAyB;;;;;;;;oBCnErD;EAEX;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAIA;EACA;EACA;EACA;EAIA;EACA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAIA;EACA;EACA;EACA;;;;;;;;;;;;;;;;;;;;;qBCtCY,0BAA0B;;;;;WAKtB;EAEhB,YAAmB,SAAS,kBAAkB;MAK1B;;yBAKJ;;;;;YAKC,gBAAgB,KAAK,UAAU;;;;;IAK/C;;;;;;IAOA;;;;;;;;;;qBC5CW,8BAA8B,eAAe;;;;;;;;;EASzC,OAAO,OAAO,cAAc,OAAO,UAAO,mCAAA;;;;;;;;;;;;;EAwB1C,SAAS,OAAO,cAAc,OAAO,UAAO,mCAAA;;;;;;;;;qBC9BhD,+BAA+B,eAAe;;;;;;;;;EAS1C,OAAO,QAAQ,eAAe,OAAO;;;;;;;;;EAkBrC,SAAS,QAAQ,eAAe,OAAO;;;;;;;;;;;;;qBC5B3C,kBAAkB;;;;EAIvB,OAAO;;;;EAKd,YAAmB,QAAO;EAInB,IAAI,OAAO;EAIX,SAAS;EAIT,SAAS;EAIT,QAAQ;EAIR,QAAQ;EAIR,SAAS;EAIT,SAAS;EAIT,MAAM,OAAO,aAAa;;;;4BAUP,QAAM,IAAA,UAAA;;;;;;;YAerB;;;;;;YCxEA,gCAAgC;;;;;;;;YAShC,gCAAgC,4BAA4B;;;;;;;;;;;;;wBAcxD,mBAAmB,YAAY;;;;;;;;;;wBAuB/B,sBAAsB,iBAAiB;;;;;;;wBAWvC,kBAAkB,eAAe"}
1
+ {"version":3,"file":"index.d.ts","names":["Store","_$______structures_CommandStore_js0.CommandStore","Response","Response","AutocompleteInteraction","AutocompleteInteraction","Interaction","AutocompleteInteraction","_$___interactions_index_js0.ApplicationCommandRegistryEntry","Piece","Piece","Piece","Piece","Store","Store","Piece","Store","NetListenOptions"],"sources":["../../src/lib/utils/internals.ts","../../src/lib/interactions/resolvers/ChatInputCommandResolver.ts","../../src/lib/interactions/decorators/RegisterCommand.ts","../../src/lib/interactions/resolvers/ContextMenuCommandResolver.ts","../../src/lib/interactions/decorators/RegisterMessageCommand.ts","../../src/lib/interactions/decorators/RegisterSubcommand.ts","../../src/lib/interactions/decorators/RegisterSubcommandGroup.ts","../../src/lib/interactions/decorators/RegisterUserCommand.ts","../../src/lib/interactions/decorators/RestrictGuildIds.ts","../../src/lib/interactions/resolvers/InteractionOptions.ts","../../src/lib/structures/CommandStoreRouter.ts","../../src/lib/structures/CommandStore.ts","../../src/lib/interactions/shared/ApplicationCommandRegistryEntry.ts","../../src/lib/interactions/shared/ApplicationCommandRegistry.ts","../../src/lib/interactions/shared/CommandRegistry.ts","../../src/lib/interactions/utils/util-types.ts","../../src/lib/interactions/structures/common/symbols.ts","../../src/lib/interactions/structures/interactions/base/BaseInteraction.ts","../../src/lib/interactions/structures/interactions/base/common.ts","../../src/lib/interactions/structures/interactions/AutocompleteInteraction.ts","../../src/lib/interactions/structures/interactions/base/CommandInteraction.ts","../../src/lib/interactions/structures/interactions/ChatInputCommandInteraction.ts","../../src/lib/interactions/structures/interactions/base/MessageComponentInteraction.ts","../../src/lib/interactions/structures/interactions/MessageComponentButtonInteraction.ts","../../src/lib/interactions/structures/interactions/MessageComponentChannelSelectInteraction.ts","../../src/lib/interactions/structures/interactions/MessageComponentMentionableSelectInteraction.ts","../../src/lib/interactions/structures/interactions/MessageComponentRoleSelectInteraction.ts","../../src/lib/interactions/structures/interactions/MessageComponentStringSelectInteraction.ts","../../src/lib/interactions/structures/interactions/MessageComponentUserSelectInteraction.ts","../../src/lib/interactions/structures/interactions/MessageContextMenuCommandInteraction.ts","../../src/lib/interactions/structures/interactions/ModalSubmitInteraction.ts","../../src/lib/interactions/structures/interactions/UserContextMenuCommandInteraction.ts","../../src/lib/interactions/structures/interactions/index.ts","../../src/lib/interactions/structures/Message.ts","../../src/lib/interactions/utils/util.ts","../../src/lib/interactions/router/CommandRouter.ts","../../src/lib/structures/Command.ts","../../src/lib/structures/InteractionHandler.ts","../../src/lib/types/Enums.ts","../../src/lib/ClientEvents.ts","../../src/lib/hmr/HotModuleReloader.ts","../../src/lib/components/IIdParser.ts","../../src/lib/plugins/definePlugin.ts","../../src/lib/plugins/symbols.ts","../../src/lib/plugins/Plugin.ts","../../src/lib/plugins/PluginManager.ts","../../src/lib/structures/InteractionHandlerStore.ts","../../src/lib/structures/Listener.ts","../../src/lib/structures/ListenerStore.ts","../../src/lib/utils/logger/ILogger.ts","../../src/lib/utils/security.ts","../../src/lib/Client.ts","../../src/lib/api/HttpCodes.ts","../../src/lib/components/StringIdParser.ts","../../src/lib/errors/UserError.ts","../../src/lib/errors/ArgumentError.ts","../../src/lib/errors/ChatInputRouterError.ts","../../src/lib/errors/Identifiers.ts","../../src/lib/errors/PreconditionError.ts","../../src/lib/structures/CommandLoaderStrategy.ts","../../src/lib/structures/ListenerLoaderStrategy.ts","../../src/lib/utils/logger/Logger.ts","../../src/lib/utils/permissions.ts"],"mappings":";;;;;;;;;;;;;;KAAY;;;;;;;cCkBC,oCAAoC,cAAc,yBAAyB;;;;;;;;EAYhF,WAAW,MAAM,yBAAyB;;;;;;;;EAY1C,mBAAmB,MAAM,yBAAyB,qBAAqB;;;;;;;;;EAavE,cAAc,MAAM,yBAAyB,gBAAgB,wBAAwB;;;;;;EAUrF,UAAU,yBAAyB;;kBAqM1B;OACJ,wBAAwB,KAAK,2BAA2B,cAAc;OACtE,cACT,0BACE,SAAS,wBAAwB,wBAAwB;OAElD,gCAAgC,KAAK,mCAAmC,cAAc;OACtF,sBACT,kCACE,SAAS,uCAAuC,gCAAgC;OAEzE,2BAA2B,KAAK,8BAA8B,cAAc;OAC5E,iBACT,6BACE,SAAS,kCAAkC,2BAA2B;OAE/D,kBAAkB;OAClB,0BAA0B;OAC1B,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;wBC/PlB,gBAAgB,gBAAgB,QAAQ,UAAU,QAAQ,SAAS,MAAM,yBAAyB,eAAW,eAC/D,QAAQ;;;;;;;cCfzD,sCAAsC,cAAc,2BAA2B;;;;;;;;;;EAcpF,WAAW,MAAM,2BAA2B,aAAa,MAAM,wBAAwB;;;;;;EAYvF,UAAU,2BAA2B;;kBAwC5B;OACJ,wBACT,KAAK,6DACL,cAAc;OACL,cACT,0BACE,SAAS,8BAA8B,wBAAwB;OAExD,kBAAkB;;;;;;;;;;;;;;;;;;;;wBC/Df,uBAAuB,gBAAgB,QAAQ,UAAU,QAAQ,SAAS,MAAM,2BAA2B,eAAW,QAC9E,QAAQ,UAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBCQxD,mBAAmB,gBAAgB,QAAQ,UAAU,QAAQ,SAC5E,MAAM,yBAAyB,gBAC/B,uCAAmC,QAEoB,QAAQ,UAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBCDxD,wBAAwB,gBAAgB,QAAQ,UAAU,QAAQ,SAAS,MAAM,yBAAyB,uBAAmB,QACrF,QAAQ,UAAQ;;;;;;;;;;;;;;;;;;;wBCbxD,oBAAoB,gBAAgB,QAAQ,UAAU,QAAQ,SAAS,MAAM,2BAA2B,eAAW,QAC3E,QAAQ,UAAQ;;;qBCnB3D,2BAAyB,kBAAyB,QAAQ,QAAQ;;;;;;;;;;;;;;;;;;;;;;wBAuB/D,iBAAiB,gBAAgB,QAAQ,UAAU,QAAQ,SAAS,+BAA2B,eACjD,QAAQ;;;wBCTtD,qBAAqB,UAAU,eAC9C,UAAU,4BACV,kBAAkB,+CAChB,qBAAqB;YASZ,qBAAqB,UAAU,iBAAiB;;;;EAI3D;;;;EAKA;;wBAGe,iCAAiC,UAAU,eAC1D,UAAU,4BACV,kBAAkB,+CAChB,iCAAiC;YAWxB,iCAAiC,UAAU,iBAAiB,qBAAqB;;;;EAI5F,eAAe;;wBAGA,uBAAuB,kBAAkB,+CAA+C;iBA4BvF;EAChB,iBAAiB;EACjB,YAAY;EACZ,kBAAkB;;wBA6CH,yBAAyB,MAAM,2CAA2C,qBAAqB;wBAI/F,4BAA4B,MAAM,8CAA8C,qBAAqB;yBAIpG;YACC;IAChB;;YAGgB,gBAAgB;IAChC,SAAS;;YAGO,aAAa;IAC7B,MAAM;IACN,QAAQ;;OAGG,UAAU;OACV,OAAO;OACP,aAAa;OAEb,eACR,cAAc,SACd;IAAgB,SAAS;QACzB;IAAgB,MAAM;OACvB;OAES,MAAM,OAAO,UAAU,OAAO,0CAA0C,aAAa;YAEhF,oBAAoB,KAAK;IACzC,MAAM;;OAGK,oBAAoB;OACpB,iBAAiB;OACjB,cAAc;OAEd,aAAa,cAAc,iBAAiB,cAAc;;;;;iBAMtD;GACf,6BAA6B,aAAa,qBAAqB;GAC/D,6BAA6B;GAC7B,6BAA6B,UAAU,qBAAqB;GAC5D,6BAA6B;GAC7B,6BAA6B,cAAc,qBAAqB;GAChE,6BAA6B;GAC7B,6BAA6B,OAAO,qBAAqB;GACzD,6BAA6B;GAC7B,6BAA6B,OAAO,qBAAqB;EAC1D,iBAAiB,6BAA6B;EAC9C,cAAc,6BAA6B;EAC3C,cAAc,6BAA6B;EAC3C,cAAc,6BAA6B;EAC3C,kBAAkB,6BAA6B;EAC/C,aAAa,6BAA6B;EAC1C,WAAW,6BAA6B;EACxC,aAAa,6BAA6B;EAC1C,WAAW,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAkC7B,cAAc,UAAU,qBAAqB,qBAAqB,WAAW,IAAI,cAAc,EAAE;;;;;;;;qBCvOhG;;;;;;;;;EAWL,IAAI,aAAa,mCAAgC,mCAAA;;;;;;;;EAajD,aAAa,eAAe;;;;;;;;EAW5B,eAAe,eAAe;;;;;;;;;EAY9B,oBAAoB,cAAc,SAAS;;;;;;;;;EAY3C,sBAAsB,cAAc,SAAS;;;;;;;;;EAY7C,uBAAuB;;;;;;;;;EAYvB,yBAAyB;;;;qBCnEpB,qBAAqBA,QAAM;;;;;;;EAMhC,QAAM;EAEb;;;;;;;;;EAYa,sBACZ,UAAU,gBACV,aAAa,QAAQ,kCAAkC,0CACrD,QAAQ;;;;;;;;;EAkCE,kCACZ,UAAU,gBACV,aAAa,+CACX,QAAQ;;;;;;;;;;;qBCpEC,2CAA2C,cAAc,gCAAgC;;;;;;;;EAW9F,eAAe;;;;;;;;EAWf,YAAY,OAAO;;;;;;;;EAYnB,WAAW,SAAS,YAAY;;;;;;;;;EAYhC,WAAW,SAAS,WAAW,OAAO;;;;;;;MAWlC,aAAa;;;;;;;MAUb,eAAe;;;;;;;EAUnB,UAAU,gCAAgC;;;;;;;;;EAc1C,iBAAiB;;;;;;;;EAWjB,mBAAmB;;yBAOV;OACJ,UAAU,QAAQ,wCAAwC;;;;YC9G3D,oBAAoB;;;;;;;qBAQnB,sCAAsC,cAAc,gCAAgC;;MAMrF,SANqFC;;;;;;;;EAiBzF,MAAM,SAAS,SAAS,2BAA2B;;;;;;;;;EAenD,IAAI,gBAAgB,QAAQ,SAAS,eAAe,QAAQ,WAAW;;;;;;;;;EAYvE,OAAO,gBAAgB,QAAQ,SAAS,eAAe,QAAQ;;;;;;;;;EAY/D,OAAO,gBAAgB,QAAQ,SAAS,eAAe,QAAQ,WAAW;;;;;;;EAU1E,UAAU,gCAAgC;;;;;;;;;EAY1C,aAAa,6BAA6B,aAAU;;;;;;;EAcpD,8BAA0B,mBAAA;;;;;;;EAe1B,gCAA4B,mBAAA;;;;;;;EAiB5B,2BAA2B,gCAAgC;;;;;;;EAa3D,0BAA0B,WAAW,WAAW,gCAAgC;;;;;;;EAwBhF,sBAAkB,QAAA;;;;;;;;EAWlB,0BAA0B,SAAS,YAAS,QAAA;;;;;;;EAU5C,uBAAuB,SAAS,YAAS,QAAA;;;;;;EASzC,+BAA+B,QAAQ,qBAAqB;cAgCvD;;yBAMI;YACC;IAChB,MAAM;IACN,UAAU;IACV,aAAa;;;qBAIF,4BAA0B;;;;;;;;;;;;;qBCrP1B,gBAAgB,gBAAgB,QAAQ,UAAU,QAAQ;;EAGtE,YAAmB,eAAe,QAAQ;;;;;;;;;;;;;;;;EAmBnC,yBAAyB,MAAM,yBAAyB;;;;;;;;;;EAcxD,mBAAmB,MAAM,yBAAyB,gBAAgB,gBAAgB;;;;;;;;;EAalF,wBAAwB,MAAM,yBAAyB,qBAAqB;;;;;;;;;;EAc5E,2BACN,MAAM,2BAA2B,aACjC,MAAM,uBAAuB,UAAU,uBAAuB,MAC9D;;;;;;;;;EAcM,uBAAuB,MAAM,2BAA2B,aAAa;;;;;;;;;EAYrE,oBAAoB,MAAM,2BAA2B,aAAa;;;;;;;;EAWlE,YAAY;;;;KCpHR,cAAc,KAAK,OAAO,GAAG;KAC7B,mBAAmB,KAAK,QAAQ,cAAc;KAE9C,SAAS,KAAK;EAAM,QAAQ;;KAE5B,aAAa;EAAU;;KACvB,eAAe,YAAY,kBAAkB;KAE7C,qBAAqB,QAAQ,gBAAgB;;;cCZ5C;cACAC;;;YCiBD,sBAAsB,QAAQ,gBAAgB;8BAEpC,gBAAgB,UAAU,sBAAsB;sBACjD,OAAO;sBACPC,aAAW;EAE/B,YAAmB,UAAU,gBAAgB,MAAM;MAKxC;;;;MAOA,MAAM;;;;MAON,QAAQ;;;;MAOR,mBAAmB;;;;;;MASnB;;;;MAOA,kBAAkB;;;;;;MASlB,iBAAiB;;;;;MAQjB,kCAAkC;;;;;;;MAUlC,gCAAgC;;;;MAOhC,WAAW;;;;;MAQX,cAAc;;;;;;;MAUd,aAAa;;;;MAOb,WAAW;;;;MAOX,QAAQ;;;;;MAQR,gBAAgB;;;;MAOhB,YAAY;;;;;;MASZ,WAAW;;;;MAOX,gBAAgB;;;;;;MAShB,eAAe;;;;MAOf,UAAU;;;;;;MASV,UAAU;;;;MAOV,SAAS;;;;MAOT,wCAAI;;;;MAOJ,WAAW;;;;;EAQf,mBAAmB;;;;;;;EAUb,gBAAgB,QAAQ,OAAO,IAAI,SAAS,cAAc;;;;;;EAU1D,cAAc,QAAQ,OAAO,IAAI,SAAS,cAAc;YAK3D,WAAW,MAAM,gBAAa;;YAc7B,QAAQ,UAAU,mBAAmB;MAC5C,YAAY,YAAY;MACxB,WAAW,YAAY;MACvB,gBAAgB,YAAY;MAC5B,eAAe,YAAY;MAC3B,UAAU,YAAY;;;;YC1Pf,2BAA2B;YAC3B,8BAA8B;YAE9B,sBAAsB;YACtB,yBAAyB;YACzB,oBAAoB;YACpB,uBAAuB;YACvB,oBAAoB;YACpB,uBAAuB;YACvB,kBAAkB,SAAS;YAE3B,oBAAoB;YACpB,aAAa;YACb,gBAAgB;;;cCpBfC,kCAAgC,gBAAgBA,0BAAwB;;;;;EAK7E,MAAM,MAAM,8BAA8B;;;;EAQ1C,cAAc;;kBAKLA;OACJ,OAAO;;;;YCAR,6BACT,4CACA,uCACA;qBAEU,mBAAmB,UAAU,oCAAoC,gBAAgB;;;;;EAKhF,MAAM,MAAM,yBAAyB,QAAQ;;;;;EAU7C,MAAM,OAAO,uBAAuB,QAAQ;;;;;EAUlD,UAAU,MAAM,uBAAuB;;;;;EASjC,WAAW,UAAU,QAAQ,kBAAkB,mBAAmB;;;;qBC3DnE,oCAAoC,mBAAmB,4BAA4B;yBAE/E;OACJ,OAAO;;;;YCoBR,kCAAkC,uCAAuC;8BAE/D,4BAA4B,UAAU,yCAAyC,gBAAgB;;;;MAIzG,2CAAO;;;;EAOL,eAAe,QAAQ;;;;;EAUvB,OAAO,OAAO,gBAAgB,QAAQ;;;;;EAUtC,MAAM,MAAM,yBAAyB,QAAQ;;;;;EAU7C,MAAM,OAAO,uBAAuB,QAAQ;;;;;EAUlD,UAAU,MAAM,uBAAuB;;;;;EASjC,WAAW,UAAU,QAAQ,kBAAkB,mBAAmB;;;;qBCrFnE,0CAA0C,4BAA4B,kCAAkC;yBAEpG;OACJ,OAAO;;;;qBCDP,iDAAiD,4BAA4B,yCAAyC;;;;MAIvH,OAAO;;;;;;;;MAWP,YAAY,WAAW,WAAW,yCAAyC;;;;;;EAS9E,QAAQ,iBAAiB;;;;;;;;EAWzB,UAAU,iBAAiB,yCAAyC;;;;;;;;EAcpE,WAAW,kBAAkB,WAAW,yCAAyC;;yBAOzE;OACX,OAAO,mBAAmB,gBAAgB,kBAAkB;cACrD,OAAO,OAAO,SAAS,KAAK;cAC5B,QAAQ,qBAAqB;;;;;qBC3D7B,qDAAqD,4BAA4B,6CAA6C;;;;MAI/H,OAAO;;;;;;;;MAWP,SAAS,WAAW,WAAW,6CAA6C;;;;;;;;;MAoB5E,SAAS,WAAW,WAAW;;;;;;;;;MAoB/B,gBAAgB,WAAW,WAAW,6CAA6C;;;;;;EAStF,QAAQ,iBAAiB;;;;;;;;;EAYzB,UAAU,iBAAiB,6CAA6C;;;;;;;;;EA2BxE,WAAW,kBAAkB,WAAW,6CAA6C;;yBAO7E;OACX,OAAO,mBAAmB,gBAAgB,kBAAkB;cACrD,OAAO,OAAO,SAAS,KAAK;cAC5B,QAAQ;IAAc;IAAY,MAAM,qBAAqB;;IAAW;;cAExE;IAAc;MAAe,qBAAqB;;;;;qBCnHlD,8CAA8C,4BAA4B,sCAAsC;;;;MAIjH,OAAO;;;;;;;;MAWP,SAAS,WAAW,WAAW,sCAAsC;;;;;;EASxE,QAAQ,iBAAiB;;;;;;;;EAWzB,UAAU,iBAAiB,sCAAsC;;;;;;;;EAcjE,WAAW,kBAAkB,WAAW,sCAAsC;;yBAOtE;OACX,OAAO,mBAAmB,gBAAgB,kBAAkB;cACrD,OAAO,OAAO,SAAS,KAAK;cAC5B,QAAQ,qBAAqB;;;;;qBC7D7B,gDAAgD,4BAA4B,wCAAwC;MACrH;;yBAKK;OACX,OAAO,mBAAmB,gBAAgB,kBAAkB;cACrD,OAAO,OAAO,SAAS,KAAK;;;;;qBCN5B,8CAA8C,4BAA4B,sCAAsC;;;;MAIjH,OAAO;;;;;;;;MAWP,SAAS,WAAW,WAAW,sCAAsC;;;;;;EASxE,QAAQ,iBAAiB;;;;;;;;EAWzB,UAAU,iBAAiB,sCAAsC;;;;;;;;EAcjE,WAAW,kBAAkB,WAAW,sCAAsC;;yBAOtE;OACX,OAAO,mBAAmB,gBAAgB,kBAAkB;cACrD,OAAO,OAAO,SAAS,KAAK;cAC5B,QAAQ,qBAAqB;;;;;qBC7D7B,6CAA6C,mBAAmB,qCAAqC;yBAEjG;OACJ,OAAO;;;;qBCYP,+BAA+B,gBAAgB,uBAAuB;;;;MAIvE,2CAAO;;;;EAOL,eAAe,QAAQ;;;;;EAUvB,OAAO,OAAO,gBAAgB,QAAQ;;;;;EAUtC,MAAM,MAAM,yBAAyB,QAAQ;;;;;EAU7C,MAAM,OAAO,uBAAuB,QAAQ;;;;;EAU5C,WAAW,UAAU,QAAQ,kBAAkB,mBAAmB;;yBAa/D;OACJ,OAAO;;;;qBChFP,0CAA0C,mBAAmB,kCAAkC;yBAE3F;OACJ,OAAO;;;;yBCMH;OACJ,eAAeC;OAEf,mBAAmB;OACnB,4BAA4B;OAC5B,yBAAyB;OAEzB,yBAAyB;OACzB,gCAAgC;OAChC,oCAAoC;OACpC,6BAA6B;OAC7B,+BAA+B;OAC/B,6BAA6B;OAC7B,6BACT,gCACA,oCACA,6BACA,+BACA;OACS,cAAc;OAEd,mBAAmB,yBAAyB,6BAA6B;OACzE,qBAAqB,4BAA4B;OACjD,qBAAqB,mBAAmB;OAExC,MACT,eACA,mBACA,4BACA,yBACA,yBACA,6BACA;;KAGQC,gBAAc,aAAa;;;qBC/B1B,eAAe,UAAU,kBAAkB;WACvC,aAAa;EAE7B,YAAmB,aAAa;;;;MAOrB;;;;MAOA,UAAU;;;;EAOR,OAAO,mBAAmB;;;;;EAc1B,SAAS,UAAU,QAAQ,wBAAwB,mBAAmB;;;;EAetE,UAAU;;YAWZ,uBAAuB;YACvB,wBAAwB,SAAS;qBAEhC,QAAQ,UAAU,kBAAkB,yBAAyB,eAAe;oBACtE;EAElB,YAAmB,aAAa,GAAG,MAAM;;;;;;MAUrB;;;;;;;MAUT,cAAc;;;;MAOd,aAAa;;;;;;;;;;MAab,UAAU;;;;;;MASV,WAAW;;;;;;;;MAWX,aAAa;;;;;;MASb;;;;MAOA,aAAa;;;;;;;;MAWb,oBAAoB;;;;MAOpB;;;;MAQA,YAAY;;;;;;MAUZ,OAAO;;;;;;;MAUP,oBAAoB;;;;;;MASpB,mBAAmB;;;;;;;MAUnB,YAAY;;;;;;;MAUZ,iBAAiB;;;;;;;MAUjB,gBAAgB;;;;;;;;;;;;MAehB,oBAAoB;;;;;;;;;;MAapB,mBAAmB;;;;;;MASnB,SAAS;;;;;;MAST,UAAU;;;;;;MASV,eAAe;;;;;;MASf,UAAU;;;;;;MASV,aAAa;;;;MAOb,cAAc;;;;;;MASd;;;;;;MASA,wCAAI;;;;MAOK,UAAM;;;;;;;MAUf,yCAAK;;;;MAOL,8CAAU;;;;MAOV,iDAAa;;;;;;MASb,gDAAY;;;;wBClWR,gBAAgB,UAAU,qBAAqB,UAAU,gBAAgB,aAAa,IAAI,aAAa;KAwC3G,aAAa,UAAU,uBAAuB,UAAUC,0BAAwB,OACzFA,4BACA,UAAU,4BAA4B,OACrC,8BACA,UAAU,kCAAkC,OAC3C,oCACA,UAAU,qCAAqC,OAC9C,uCACA,UAAU,kCAAkC,OAC3C,oCACA,UAAU,yCAAyC,OAClD,2CACA,UAAU,6CAA6C,OACtD,+CACA,UAAU,sCAAsC,OAC/C,wCACA,UAAU,wCAAwC,OACjD,0CACA,UAAU,sCAAsC,OAC/C,wCACA,UAAU,uBAAuB,OAChC;;;;;;;;;qBCtEA,cAAc,gBAAgB,QAAQ,UAAU,QAAQ;;EAOpE,YAAmB,SAAS,QAAQ;;;;;;MAiBzB;;;;;;MASA;;;;;;;;EAWJ,0BAA0B,MAAM;;;;;;;;EAwBhC,4BAA4B,MAAM;;;;8BCpFpB,QAAQ,gBAAgB,QAAQ,UAAU,QAAQ,iBAAiBE,QAAM;;;;;WAK9E,QAAQ,cAAc;EAEtC,YAAmB,SAAS,QAAQ,eAAe,UAAS;;;;;;MAWjD,YAXiDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4CrD,6BAA6B,UAAU,QAAQ;;;;;;;EAQ/C,aAAa,aAAa,QAAQ,+BAA+B,MAAM,gBAAgB;;;;;;;;EAYvF,gBAAgB,aAAa,QAAQ,yBAAyB,MAAM,QAAQ,6BAA6B;;yBAMhG;OACJ,0BAA0B,aAAa;OACvC,sBAAsB,oBAAoB,iCAAiC;OAE3E,uBAAuB,aAAa;OACpC,kBAAkB,aAAa;OAC/B,qBAAqB,aAAa;OAElC,yBAAyB,aAAa;OACtC,gCAAgC,aAAa;OAE7C,cAAc,uBAAuB,0BAA0B,kBAAkB;OACjF,kBAAkB;OAElB,WAAW;;OAIX,UAAU;OACV,gBAAgBC,QAAM;OACtB,OAAOA,QAAM;OACb,eAAeA,QAAM;OACrB,UAAUA,QAAM;;;;8BCtGP,mBAAmB,gBAAgB,mBAAmB,UAAU,mBAAmB,iBAAiBC,QACzH;EAGA,YAAmB,SAAS,mBAAmB,eAAe,UAAS;WAIvD,IAAI,aAAa,mBAAmB,aAAa,yBAAyB;;yBAG1E;OACJ,oBAAoB,aAAa;OACjC,wBAAwB,aAAa;OACrC,mBAAmB,aAAa;OAChC,8BAA8B,aAAa;OAE3C,yBAAyB,aAAa;OACtC,gCAAgC,aAAa;OAE7C,cAAc,aAAa;OAC3B,kBAAkB;;OAIlB,UAAU;OACV,gBAAgBA,QAAM;OACtB,OAAOA,QAAM;OACb,eAAeA,QAAM;OACrB,UAAUA,QAAM;;;;oBChCjB;EACX;EACA;EACA;EACA;EACA;;;;iBCOgB;EAChB,SAAS;EACT,aAAa;EACb,UAAU;;iBAGM;EAChB,SAAS;EACT,aAAa;EACb,UAAU;;iBAGM;EAChB,SAAS;EACT,aAAa,iCAAiC;EAC9C,UAAU;;;;;;;;;;;;;;;;oBAiBC;EACX;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;iBAGgB;EAChB,QAAQ;;;;;;;;;;;;;EAaR,eAAe,MAAM,YAAY;EACjC,qBAAqB,aAAa,8CAA8C,UAAU;EAC1F,qBAAqB,aAAa,mCAAmC,8CAA8C,UAAU;EAC7H,uBAAuB,SAAS;EAChC,aAAa,SAAS;EACtB,iBAAiB,SAAS,2BAA2B;EACrD,eAAe,gBAAgB,SAAS;EACxC,gBAAgB,SAAS;EACzB,kBAAkB,SAAS;EAC3B,sBAAsB,SAAS,gCAAgC;EAC/D,oBAAoB,gBAAgB,SAAS;EAC7C,qBAAqB,SAAS;EAC9B,gCAAgC,aAAa,iCAAiC,2BAA2B,UAAU;EACnH,gCAAgC,aAAa,iCAAiC,2BAA2B,UAAU;EACnH,wBAAwB,SAAS;EACjC,4BAA4B,SAAS,sCAAsC;EAC3E,0BAA0B,gBAAgB,SAAS;EACnD,2BAA2B,SAAS;;;;;;EAMpC,WAAW;;;;;;EAMX;;;;;;EAMA,kBAAkB,QAAQC,WAAS;;;;;;EAMnC,mBAAmB,OAAOA,SAAO;;;;;;EAMjC,mBAAmB,OAAOA,SAAO;;;;;;;EAOjC,WAAW,gBAAgB;;;;;;;;YAShB,wBAAwB;YAExB,wBAAwB,WAAW,eAAe,aAAa;;;;;;;;;;;;;;;;;qBCnI9D;;;;;;;WAMI,SAAS,kBAAkB;EAK3C,YAAmB,UAAS,kBAAkB;;;;;;MASnC;;;;;;MASA;;;;;;;;;;EAaE,SAAS;;;;;;;EAoCT,QAAQ;;;;;;;;;YAqBL,kBAAkB,OAAOE,QAAMD,UAAQ,eAAe;;;;;;;;YAoCtD,kBAAkB,OAAOC,QAAMD,UAAQ,eAAe;;;;;;;;;;YAyB5D,YAAY,gBAAgB;;iBAMtB,mBAAmB;;;;;;EAMnC;;;;;;;EAQA;;yBAGgB;OACJ,UAAU;;;;iBC5MN;EAChB,IAAI,mBAAmB;;iBAGP;EAChB;EACA;;;;;;;;;;YCIW,gBAAgB,kCAC3B,QAAQ,QACR,SAAS,kBACL,qBAAqB;;;;;;;;;;YAWd,oDAAoD,SAAS;;;;;;iBAOxD;;;;EAIhB;;;;;EAMA;;;;EAKA,QAAQ;EAER,4BAA4B;EAC5B,oBAAoB;EACpB,qBAAqB;EACrB,UAAU;EACV,aAAa;;;;;;;;YASF,eAAe,kDAAkD;;;;;;;;;;;;;;wBAe7D,aAAa,UAAU,aAAa,QAAQ,IAAI;wBAChD,aAAa,wBAAwB,UAAU,aAAa,aAAa,MAAM,SAAS,QAAQ,MAAM,SAAS;;;;;;;qBAWlH,wBAAwB;WACpB;WACA,MAAM;EAEtB,YAAmB,oBAAoB,MAAM,YAAY;;;;qBC5F7C;qBACA;qBACA;qBAEA;qBACA;;;;;;;;;8BCKS;UACN,8BAA8B,MAAM,QAAQ,SAAS;UACrD,sBAAsB,MAAM,QAAQ,SAAS;UAC7C,uBAAuB,MAAM,QAAQ,SAAS;UAC9C,YAAY,MAAM,QAAQ,SAAS,kBAAkB;UACrD,eAAe,MAAM,QAAQ,SAAS,kBAAkB;;;;YCR5D,mBAAmB,WAAW,UAAU,WAAW;;;;;;iBAO9C;GACf,MAAM,QAAQ,SAAS,gBAAgB;;YAG7B,kBAAkB,QAAQ,YAAY;;;;;;iBAOjC;GACf,MAAM,QAAQ,SAAS;;;;;iBAMR;GACf,QAAQ,QAAQ,SAAS,gBAAgB;;iBAG1B,6BAA6B,IAAI,0BAA0B;;EAE3E,MAAM;;EAEN,KAAK;EACL,MAAM;EACN;EACA;EACA,QAAQ;;EAER,SAAS;;;;;;;;wBAmDM,gBAAgB,QAAQ,eAAe;qBA4D1C;;WACI,UAAQ,IAAA,6BAAA,+BAAA;;;;;;EAOjB,aAAa,MAAM,yBAAyB,MAAM,iBAAiB;EACnE,aAAa,MAAM,8BAA8B,MAAM,kBAAkB;EAQzE,sCAAsC,MAAM,yBAAyB;EAIrE,8BAA8B,MAAM,yBAAyB;EAI7D,+BAA+B,MAAM,yBAAyB;EAI9D,oBAAoB,MAAM,8BAA8B;EAIxD,uBAAuB,MAAM,8BAA8B;;;;;;;EAU3D,OAAO,iBAAiB,SAAS;;;;;EAuBjC,UAAU,UAAU;;;;;EAKpB,OACN,MAAM,iBACN,iBAAiB,iCACf,UAAU,6BAA6B;EACnC,OACN,MAAM,kBACN,iBAAiB,iCACf,UAAU,6BAA6B;EACnC,OAAO,MAAM,YAAY,iBAAiB,iCAAiC,UAAU;;;;;;;EAcpF,WACP,MAAM,YACN,SAAS,eACT,iBAAgB,gCAChB,YAAW,uBACT,UAAU;;;;qBCrPD,gCAAgCE,QAAM;EAClD;EAIa,WACZ,UAAU,gBACV,aAAa,iCAAiC,4BAC5C,QAAQ;;;;8BCZU,SAAS,gBAAgB,SAAS,UAAU,SAAS,iBAAiBC,QAAM;EAC1F,SAAS,SAAS;EAClB;YACG,eAAe;EAEzB,YAAmB,SAAS,SAAS,eAAe,SAAS;WAQ7C,OAAO,uBAAuB;;yBAG9B;;OAEJ,UAAU;OACV,gBAAgBA,QAAM;OACtB,OAAOA,QAAM;OACb,eAAeA,QAAM;YAChB,gBAAgBA,QAAM;IACtC,SAAS,aAAa,WAAW,YAAY,UAAU,WAAW,UAAU,mBAAkB;IAC9F;;YAGgB;IAChB,GAAG,mBAAmB,cAAc;IACpC,KAAK,mBAAmB,cAAc;IACtC,IAAI,mBAAmB,cAAc;IACrC,gBAAgB;IAChB;IACA,KAAK,sBAAsB;;;;;qBChChB,sBAAsBC,QAAM;EACxC;;;;;;;;;;;oBCDW;;;;EAIX;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;EAKA;;;;;;;;;;;iBAYgB;;;;;EAKhB,IAAI,OAAO;;;;;EAMX,SAAS;;;;;EAMT,SAAS;;;;;EAMT,QAAQ;;;;;EAMR,QAAQ;;;;;EAMR,SAAS;;;;;EAMT,SAAS;;;;;;EAOT,MAAM,OAAO,aAAa;;;;KClGf,MAAM,UAAU;;;qBC6Bf,eAAe,kBAAkB;;EACtC,QAAS;;;;;;;EAQT,KAAK;;;;;;;;WASI,QAAQ;WAER;WACA,SAAS;WACT;WACA;EAMhB,YAAmB,UAAS;;;;;;kBAgEL,SAAO;;;;;;;;SAShB,OAAO,iBAAiB,SAAS,yBAAe;;;;;;;MAWnD,YAAQ;;;;;EAQN,KAAK,UAAS,cAAgB;;;;;EAuB9B,SAAS,eAAe,UAAU,MAAM,YAAY,iBAAiB,gBAAa;;;;;;;;;;;;;EAkClF,MAAM,SAAS,SAAS,UAAS,eAAoB,QAAQ;YAW1D,qBAAqB,SAAS,iBAAiB,UAAU,gBAAgB,cAAc,KAAK,MAAG,QAAA,eAAA;YAqC/F,kBACf,aAAa,QAAQ,gBAAgB,yCACrC,UAAU,iBACR,QAAQ;;iBAsBK;;;;;EAKhB,UAAU;;;;;;;EAQV;;;;;;EAOA;;;;EAKA,cAAc,QAAQ;;;;;EAMtB;;;;;EAMA;;;;;;EAOA;;;;;;EAOA,aAAa;;;;;;;;;EAUb,MAAM;;;;;;EAON,SAAS;;iBAGO;;;;;;;;EAQhB,QAAQ;;;;;;;;EASR,WAAW;;iBAGK;;;;;;EAMhB;;iBAGgB,sBAAsB,KAAKC;;;;EAI3C;;;;EAKA;;;;;EAMA;;;;EAKA,gBAAgB;;iBAGA;;;;;EAKhB;;yBAGgB;OACJ,UAAU;OACV,gBAAgB;OAChB,mBAAmB;OACnB,sBAAsB;OACtB,qBAAqB;;;YAIhB;IAChB,UAAU;IACV,wBAAwB;IACxB,WAAW;;YAGK;IAChB,QAAQ;IACR,UAAU;IACV,MAAM;IACN,4BAA4B;IAC5B,QAAQ;;;;;oBC/aE;;;;;;;;EAQX;;;;;EAMA;;;;;;EAOA;;;;;;EAOA;;;;;EAMA;;;;;EAMA;;;;;;;EAQA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;;;EASA;;;;EAKA;;;;;;;;;;;;EAaA;;;;;;;EAQA;;;;;;;EAQA;;;;;;;EAQA;;;;;EAKA;;;;;;;;EASA;;;;;;;EAQA;;;;;;EAOA;;;;;;;;;;EAWA;;;;;;;;;;;;EAaA;;;;;;;;;;;EAYA;;;;;EAMA;;;;;;EAOA;;;;;EAMA;;;;EAKA;;;;;;;EAQA;;;;;;EAOA;;;;;;;;;;EAWA;;;;;EAMA;;;;;EAMA;;;;;EAMA;;;;;;;EAQA;;;;;;EAOA;;;;;;;EAQA;;;;;EAMA;;;;;;;;;EAUA;;;;;;;EAQA;;;;;EAMA;;;;;EAMA;;;;EAKA;;;;;EAMA;;;;;EAMA;;;;;EAMA;;;;;;;;EASA;;;;;EAMA;;;;;;EAOA;;;;;;;EAQA;;;;;EAMA;;;;;;EAOA;;;;;EAMA;;;;;EAMA;;;;;EAMA;;;;EAKA;;;;;EAMA;;;;;EAMA;;;;;EAMA;;;;;EAMA;;;;;;;EAQA;;;;qBClbY,0BAA0B;EAC/B,IAAI,mBAAmB;;;;;;;;;;;;;;;;;;;;;;qBCelB,kBAAkB;;;;;WAKd;;;;;WAMA;;;;;EAMhB,YAAmB,SAAS,UAAU;MAMlB;;yBAKJ;;;;;YAKC;;;;;IAKhB;;;;;IAMA;;;;;;IAOA;;;;;;;;;;;;;;;;;;;;;qBClDW,cAAc,qBAAqB;;;;;WAK/B;;;;;WAMA,MAAM;;;;;WAMN,WAAW;EAE3B,YAAmB,SAAS,cAAc,QAAQ;MAO9B;;yBAKJ;;;;;YAKC,QAAQ,WAAW,KAAK,UAAU;;;;;IAKlD;;;;;;IAOA,OAAO;;;;;IAMP,WAAW;;;;;;IAOX;;;;;;;;;qBCvEW,qBAAqB,gBAAgB,QAAQ,UAAU,QAAQ,iBAAiB;;;;;WAK5E,kBAAkB;;;;;WAMlB,SAAS,QAAQ;;;;;WAMjB,OAAO;;;;;WAMP,YAAY;EAE5B,YACC,kBAAkB,uBAClB,SAAS,QAAQ,UACjB,QAAQ,mDACR,aAAa;;;;;MAiBH;MAIS;;qBAKR;WACZ,4BAAyB,iBAAkB;WAE3C,uBAAoB,iBAAkB,yBAAyB;WAE/D,6BAA0B,iBAAkB;WAE5C,wBAAqB,iBAAkB,yBAAyB;;;;;;;;oBCnErD;EAEX;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAIA;EACA;EACA;EACA;EAIA;EACA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAIA;EACA;EACA;EACA;;;;;;;;;;;;;;;;;;;;;qBCtCY,0BAA0B;;;;;WAKtB;EAEhB,YAAmB,SAAS,kBAAkB;MAK1B;;yBAKJ;;;;;YAKC,gBAAgB,KAAK,UAAU;;;;;IAK/C;;;;;;IAOA;;;;;;;;;;qBC5CW,8BAA8B,eAAe;;;;;;;;;EASzC,OAAO,OAAO,cAAc,OAAO,UAAO,mCAAA;;;;;;;;;;;;;EAwB1C,SAAS,OAAO,cAAc,OAAO,UAAO,mCAAA;;;;;;;;;qBC9BhD,+BAA+B,eAAe;;;;;;;;;EAS1C,OAAO,QAAQ,eAAe,OAAO;;;;;;;;;EAkBrC,SAAS,QAAQ,eAAe,OAAO;;;;;;;;;;;;;qBC5B3C,kBAAkB;;;;EAIvB,OAAO;;;;EAKd,YAAmB,QAAO;EAInB,IAAI,OAAO;EAIX,SAAS;EAIT,SAAS;EAIT,QAAQ;EAIR,QAAQ;EAIR,SAAS;EAIT,SAAS;EAIT,MAAM,OAAO,aAAa;;;;4BAUP,QAAM,IAAA,UAAA;;;;;;;YAerB;;;;;;YCxEA,gCAAgC;;;;;;;;YAShC,gCAAgC,4BAA4B;;;;;;;;;;;;;wBAcxD,mBAAmB,YAAY;;;;;;;;;;wBAuB/B,sBAAsB,iBAAiB;;;;;;;wBAWvC,kBAAkB,eAAe"}
package/dist/esm/index.js CHANGED
@@ -685,6 +685,28 @@ let PluginHook = /* @__PURE__ */ function(PluginHook) {
685
685
  return PluginHook;
686
686
  }({});
687
687
 
688
+ //#endregion
689
+ //#region src/lib/plugins/definePlugin.ts
690
+ function definePlugin(plugin) {
691
+ return plugin;
692
+ }
693
+ /**
694
+ * The error a {@link StarsPlugin} hook is wrapped in, so a failure points at the plugin that threw. The original
695
+ * error is available as `cause`.
696
+ *
697
+ * @since 6.1.0
698
+ */
699
+ var PluginHookError = class extends Error {
700
+ constructor(pluginName, hook, cause) {
701
+ super(`The "${hook}" hook of the plugin "${pluginName}" failed: ${cause instanceof Error ? cause.message : String(cause)}`, { cause });
702
+ _defineProperty(this, "pluginName", void 0);
703
+ _defineProperty(this, "hook", void 0);
704
+ this.name = "PluginHookError";
705
+ this.pluginName = pluginName;
706
+ this.hook = hook;
707
+ }
708
+ };
709
+
688
710
  //#endregion
689
711
  //#region src/lib/plugins/symbols.ts
690
712
  const preGenericsInitialization = Symbol("HttpFrameworkPluginsPreGenericsInitialization");
@@ -693,16 +715,118 @@ const postInitialization = Symbol("HttpFrameworkPluginsPostInitialization");
693
715
  const preLoad = Symbol("HttpFrameworkPluginsPreLoad");
694
716
  const postListen = Symbol("HttpFrameworkPluginsPostListen");
695
717
 
718
+ //#endregion
719
+ //#region \0@oxc-project+runtime@0.151.0/helpers/esm/classPrivateMethodInitSpec.js
720
+ function _classPrivateMethodInitSpec(e, a) {
721
+ _checkPrivateRedeclaration(e, a), a.add(e);
722
+ }
723
+
696
724
  //#endregion
697
725
  //#region src/lib/plugins/PluginManager.ts
726
+ const HOOK_NAMES = [
727
+ "preGenericsInitialization",
728
+ "preInitialization",
729
+ "postInitialization",
730
+ "preLoad",
731
+ "postListen"
732
+ ];
733
+ const LEGACY_SYMBOLS = [
734
+ [preGenericsInitialization, "preGenericsInitialization"],
735
+ [preInitialization, "preInitialization"],
736
+ [postInitialization, "postInitialization"],
737
+ [preLoad, "preLoad"],
738
+ [postListen, "postListen"]
739
+ ];
740
+ const warnedLegacyNames = /* @__PURE__ */ new Set();
741
+ function warnLegacy(name) {
742
+ const label = name ?? "anonymous";
743
+ if (warnedLegacyNames.has(label)) return;
744
+ warnedLegacyNames.add(label);
745
+ process.emitWarning(`The plugin "${label}" uses the legacy class/symbol plugin API (Plugin, Client.use(Class), registerXHook), which is deprecated. Port it to definePlugin.`, {
746
+ type: "DeprecationWarning",
747
+ code: "HTTP_FRAMEWORK_LEGACY_PLUGIN"
748
+ });
749
+ }
750
+ function isThenable(value) {
751
+ return typeof value?.then === "function";
752
+ }
753
+ function flatten(option, into) {
754
+ if (!option) return into;
755
+ if (Array.isArray(option)) for (const entry of option) flatten(entry, into);
756
+ else into.push(option);
757
+ return into;
758
+ }
759
+ /**
760
+ * Converts plugin options into hook entries, one per defined hook.
761
+ *
762
+ * @param option The plugin(s) to convert.
763
+ * @returns The entries, in the plugin order and in {@link PluginHook} order inside each plugin.
764
+ */
765
+ function toPluginEntries(option) {
766
+ const entries = [];
767
+ for (const plugin of flatten(option, [])) {
768
+ if (typeof plugin?.name !== "string" || plugin.name === "") throw new TypeError("A plugin must have a non-empty name");
769
+ for (const type of HOOK_NAMES) {
770
+ const hook = plugin[type];
771
+ if (hook === void 0) continue;
772
+ if (typeof hook !== "function") throw new TypeError(`The "${type}" hook of the plugin "${plugin.name}" is not a function`);
773
+ const name = plugin.name;
774
+ const invoker = (client, options) => {
775
+ try {
776
+ const result = hook.call(plugin, client, options);
777
+ return isThenable(result) ? Promise.resolve(result).then(void 0, (error) => {
778
+ throw new PluginHookError(name, type, error);
779
+ }) : result;
780
+ } catch (error) {
781
+ throw new PluginHookError(name, type, error);
782
+ }
783
+ };
784
+ entries.push({
785
+ hook: function(options) {
786
+ return invoker(this, options);
787
+ },
788
+ run: invoker,
789
+ type,
790
+ name,
791
+ enforce: plugin.enforce,
792
+ apply: plugin.apply,
793
+ plugin
794
+ });
795
+ }
796
+ }
797
+ return entries;
798
+ }
799
+ /**
800
+ * Decides whether an entry applies. A function is called once per plugin per `decisions` map (one per client) and its
801
+ * answer kept, so every hook of a plugin sees the same decision: a predicate that is not stable cannot leave a plugin
802
+ * half-applied, with its early hooks run and its later ones skipped. The decision is the plugin's own, never shared
803
+ * with another plugin that happens to use the same function, because each is asked with the options it will receive.
804
+ */
805
+ function isApplicable(entry, options, decisions) {
806
+ const { apply } = entry;
807
+ if (apply === void 0) return true;
808
+ if (apply === "development") return process.env.NODE_ENV === "development";
809
+ if (apply === "production") return process.env.NODE_ENV === "production";
810
+ const owner = entry.plugin ?? entry;
811
+ let decision = decisions.get(owner);
812
+ if (decision === void 0) {
813
+ decision = apply(options);
814
+ decisions.set(owner, decision);
815
+ }
816
+ return decision;
817
+ }
818
+ var _PluginManager_brand = /* @__PURE__ */ new WeakSet();
698
819
  var PluginManager = class {
699
820
  constructor() {
821
+ _classPrivateMethodInitSpec(this, _PluginManager_brand);
700
822
  _defineProperty(this, "registry", /* @__PURE__ */ new Set());
701
823
  }
702
824
  registerHook(hook, type, name) {
703
825
  if (typeof hook !== "function") throw new TypeError(`The provided hook ${name ? `(${name}) ` : ""}is not a function`);
826
+ warnLegacy(name);
704
827
  this.registry.add({
705
828
  hook,
829
+ run: (client, options) => hook.call(client, options),
706
830
  type,
707
831
  name
708
832
  });
@@ -723,28 +847,42 @@ var PluginManager = class {
723
847
  registerPostListenHook(hook, name) {
724
848
  return this.registerHook(hook, "postListen", name);
725
849
  }
726
- use(plugin) {
727
- const possibleSymbolHooks = [
728
- [preGenericsInitialization, "preGenericsInitialization"],
729
- [preInitialization, "preInitialization"],
730
- [postInitialization, "postInitialization"],
731
- [preLoad, "preLoad"],
732
- [postListen, "postListen"]
733
- ];
734
- for (const [hookSymbol, hookType] of possibleSymbolHooks) {
735
- const hook = Reflect.get(plugin, hookSymbol);
736
- if (typeof hook !== "function") continue;
737
- this.registerHook(hook, hookType, plugin.name);
738
- }
850
+ /**
851
+ * Registers plugins: {@link StarsPlugin} objects (possibly nested in arrays, with falsy entries dropped) or, for
852
+ * backwards compatibility, legacy {@link Plugin} classes.
853
+ *
854
+ * @param plugins The plugins to register.
855
+ */
856
+ use(...plugins) {
857
+ for (const plugin of plugins) if (typeof plugin === "function") _assertClassBrand(_PluginManager_brand, this, _useLegacy).call(this, plugin);
858
+ else for (const entry of toPluginEntries(plugin)) this.registry.add(entry);
739
859
  return this;
740
860
  }
741
- *values(hook) {
742
- for (const plugin of this.registry) {
743
- if (hook && plugin.type !== hook) continue;
744
- yield plugin;
745
- }
861
+ *values(hook, extra = []) {
862
+ const entries = [...this.registry, ...extra].filter((entry) => !hook || entry.type === hook);
863
+ for (const enforce of [
864
+ "pre",
865
+ void 0,
866
+ "post"
867
+ ]) for (const entry of entries) if (entry.enforce === enforce) yield entry;
868
+ }
869
+ /**
870
+ * Like {@link PluginManager.values}, but only the entries whose `apply` accepts the client's options.
871
+ *
872
+ * @param decisions The answers of `apply` functions already given for this client, by plugin. Pass the same map for
873
+ * every phase of one client so a plugin is accepted or rejected as a whole.
874
+ */
875
+ *applicable(hook, options, extra = [], decisions = /* @__PURE__ */ new Map()) {
876
+ for (const entry of this.values(hook, extra)) if (isApplicable(entry, options, decisions)) yield entry;
746
877
  }
747
878
  };
879
+ function _useLegacy(plugin) {
880
+ for (const [hookSymbol, hookType] of LEGACY_SYMBOLS) {
881
+ const hook = Reflect.get(plugin, hookSymbol);
882
+ if (typeof hook !== "function") continue;
883
+ this.registerHook(hook, hookType, plugin.name);
884
+ }
885
+ }
748
886
 
749
887
  //#endregion
750
888
  //#region src/lib/utils/decorators.ts
@@ -1083,12 +1221,6 @@ function getLinkedMethod(object) {
1083
1221
  return Reflect.get(object, linkSymbol) ?? null;
1084
1222
  }
1085
1223
 
1086
- //#endregion
1087
- //#region \0@oxc-project+runtime@0.151.0/helpers/esm/classPrivateMethodInitSpec.js
1088
- function _classPrivateMethodInitSpec(e, a) {
1089
- _checkPrivateRedeclaration(e, a), a.add(e);
1090
- }
1091
-
1092
1224
  //#endregion
1093
1225
  //#region src/lib/interactions/resolvers/ChatInputCommandResolver.ts
1094
1226
  var _data$1 = /* @__PURE__ */ new WeakMap();
@@ -3900,6 +4032,8 @@ container$1.stores.register(new ListenerStore());
3900
4032
  container$1.logger ??= new Logger();
3901
4033
  var _discordPublicKey = /* @__PURE__ */ new WeakMap();
3902
4034
  var _fetchKey = /* @__PURE__ */ new WeakMap();
4035
+ var _pluginEntries = /* @__PURE__ */ new WeakMap();
4036
+ var _applyDecisions = /* @__PURE__ */ new WeakMap();
3903
4037
  var Client = class Client extends AsyncEventEmitter {
3904
4038
  constructor(options = {}) {
3905
4039
  super();
@@ -3912,19 +4046,22 @@ var Client = class Client extends AsyncEventEmitter {
3912
4046
  _defineProperty(this, "httpReplyOnError", void 0);
3913
4047
  _classPrivateFieldInitSpec(this, _discordPublicKey, void 0);
3914
4048
  _classPrivateFieldInitSpec(this, _fetchKey, null);
4049
+ _classPrivateFieldInitSpec(this, _pluginEntries, void 0);
4050
+ _classPrivateFieldInitSpec(this, _applyDecisions, /* @__PURE__ */ new Map());
3915
4051
  this.options = {
3916
4052
  ...options,
3917
4053
  discordToken: void 0,
3918
4054
  discordPublicKey: void 0
3919
4055
  };
3920
- for (const plugin of Client.plugins.values("preGenericsInitialization")) {
3921
- plugin.hook.call(this, this.options);
4056
+ _classPrivateFieldSet2(_pluginEntries, this, toPluginEntries(options.plugins));
4057
+ for (const plugin of Client.plugins.applicable("preGenericsInitialization", this.options, _classPrivateFieldGet2(_pluginEntries, this), _classPrivateFieldGet2(_applyDecisions, this))) {
4058
+ plugin.run(this, this.options);
3922
4059
  this.emit("pluginLoaded", plugin.type, plugin.name);
3923
4060
  }
3924
4061
  this.logger = this.options.logger?.instance ?? new Logger(this.options.logger?.level ?? 30);
3925
4062
  container$1.logger = this.logger;
3926
- for (const plugin of Client.plugins.values("preInitialization")) {
3927
- plugin.hook.call(this, this.options);
4063
+ for (const plugin of Client.plugins.applicable("preInitialization", this.options, _classPrivateFieldGet2(_pluginEntries, this), _classPrivateFieldGet2(_applyDecisions, this))) {
4064
+ plugin.run(this, this.options);
3928
4065
  this.emit("pluginLoaded", plugin.type, plugin.name);
3929
4066
  }
3930
4067
  this.bodySizeLimit = options.bodySizeLimit ?? 1048576;
@@ -3944,19 +4081,20 @@ var Client = class Client extends AsyncEventEmitter {
3944
4081
  rest: container$1.rest,
3945
4082
  authPrefix: options.authPrefix
3946
4083
  });
3947
- for (const plugin of Client.plugins.values("postInitialization")) {
3948
- plugin.hook.call(this, this.options);
4084
+ for (const plugin of Client.plugins.applicable("postInitialization", this.options, _classPrivateFieldGet2(_pluginEntries, this), _classPrivateFieldGet2(_applyDecisions, this))) {
4085
+ plugin.run(this, this.options);
3949
4086
  this.emit("pluginLoaded", plugin.type, plugin.name);
3950
4087
  }
3951
4088
  }
3952
4089
  /**
3953
- * Registers a plugin onto the {@link Client}, applying all of its hooks.
4090
+ * Registers plugins onto the {@link Client}, applying all of their hooks. Accepts {@link StarsPlugin} objects
4091
+ * (see {@link definePlugin}) and, deprecated, legacy {@link Plugin} classes.
3954
4092
  *
3955
4093
  * @since 2.4.0
3956
- * @param plugin The plugin to register.
4094
+ * @param plugins The plugins to register.
3957
4095
  */
3958
- static use(plugin) {
3959
- this.plugins.use(plugin);
4096
+ static use(...plugins) {
4097
+ this.plugins.use(...plugins);
3960
4098
  return this;
3961
4099
  }
3962
4100
  /**
@@ -3973,8 +4111,8 @@ var Client = class Client extends AsyncEventEmitter {
3973
4111
  * @param options The load options.
3974
4112
  */
3975
4113
  async load(options = {}) {
3976
- for (const plugin of Client.plugins.values("preLoad")) {
3977
- await plugin.hook.call(this, this.options);
4114
+ for (const plugin of Client.plugins.applicable("preLoad", this.options, _classPrivateFieldGet2(_pluginEntries, this), _classPrivateFieldGet2(_applyDecisions, this))) {
4115
+ await plugin.run(this, this.options);
3978
4116
  this.emit("pluginLoaded", plugin.type, plugin.name);
3979
4117
  }
3980
4118
  if (options.baseUserDirectory !== null) container$1.stores.registerPath(options.baseUserDirectory);
@@ -3999,8 +4137,8 @@ var Client = class Client extends AsyncEventEmitter {
3999
4137
  host: address
4000
4138
  }, resolve));
4001
4139
  try {
4002
- for (const plugin of Client.plugins.values("postListen")) {
4003
- await plugin.hook.call(this, this.options);
4140
+ for (const plugin of Client.plugins.applicable("postListen", this.options, _classPrivateFieldGet2(_pluginEntries, this), _classPrivateFieldGet2(_applyDecisions, this))) {
4141
+ await plugin.run(this, this.options);
4004
4142
  this.emit("pluginLoaded", plugin.type, plugin.name);
4005
4143
  }
4006
4144
  } catch (error) {
@@ -4210,5 +4348,5 @@ function toPermissionNames(bits) {
4210
4348
  }
4211
4349
 
4212
4350
  //#endregion
4213
- export { AliasPiece, AliasStore, ApplicationCommandRegistry, ApplicationCommandRegistryEntry, ArgumentError, AutocompleteInteraction, BaseInteraction, ChatInputCommandInteraction, ChatInputRouterError, ChatInputRouterErrors, Client, Command, CommandInteraction, CommandLoaderStrategy, CommandRegistry, CommandRouter, CommandStore, CommandStoreRouter, Events, HotModuleReloader, HttpCodes, Identifiers, InteractionHandler, InteractionHandlerStore, Listener, ListenerLoaderStrategy, ListenerStore, LoaderError, LogLevel, Logger, Message, MessageComponentButtonInteraction, MessageComponentChannelSelectInteraction, MessageComponentInteraction, MessageComponentMentionableSelectInteraction, MessageComponentRoleSelectInteraction, MessageComponentStringSelectInteraction as MessageComponentSelectMenuInteraction, MessageComponentStringSelectInteraction, MessageComponentUserSelectInteraction, MessageContextMenuCommandInteraction, MissingExportsError, ModalSubmitInteraction, PartialMessage, Piece, Plugin, PluginHook, PluginManager, PreconditionError, RegisterCommand, RegisterMessageCommand, RegisterSubcommand, RegisterSubcommandGroup, RegisterUserCommand, RestrictGuildIds, Store, StoreRegistry, StringIdParser, UserContextMenuCommandInteraction, UserError, applicationCommandRegistry, container, extractTopLevelOptions, getMissingPermissions, makeInteraction, postInitialization, postListen, preGenericsInitialization, preInitialization, preLoad, resolvePermissions, restrictedGuildIdRegistry, toPermissionNames, transformAutocompleteInteraction, transformInteraction, transformMessageInteraction, transformUserInteraction };
4351
+ export { AliasPiece, AliasStore, ApplicationCommandRegistry, ApplicationCommandRegistryEntry, ArgumentError, AutocompleteInteraction, BaseInteraction, ChatInputCommandInteraction, ChatInputRouterError, ChatInputRouterErrors, Client, Command, CommandInteraction, CommandLoaderStrategy, CommandRegistry, CommandRouter, CommandStore, CommandStoreRouter, Events, HotModuleReloader, HttpCodes, Identifiers, InteractionHandler, InteractionHandlerStore, Listener, ListenerLoaderStrategy, ListenerStore, LoaderError, LogLevel, Logger, Message, MessageComponentButtonInteraction, MessageComponentChannelSelectInteraction, MessageComponentInteraction, MessageComponentMentionableSelectInteraction, MessageComponentRoleSelectInteraction, MessageComponentStringSelectInteraction as MessageComponentSelectMenuInteraction, MessageComponentStringSelectInteraction, MessageComponentUserSelectInteraction, MessageContextMenuCommandInteraction, MissingExportsError, ModalSubmitInteraction, PartialMessage, Piece, Plugin, PluginHook, PluginHookError, PluginManager, PreconditionError, RegisterCommand, RegisterMessageCommand, RegisterSubcommand, RegisterSubcommandGroup, RegisterUserCommand, RestrictGuildIds, Store, StoreRegistry, StringIdParser, UserContextMenuCommandInteraction, UserError, applicationCommandRegistry, container, definePlugin, extractTopLevelOptions, getMissingPermissions, makeInteraction, postInitialization, postListen, preGenericsInitialization, preInitialization, preLoad, resolvePermissions, restrictedGuildIdRegistry, toPermissionNames, toPluginEntries, transformAutocompleteInteraction, transformInteraction, transformMessageInteraction, transformUserInteraction };
4214
4352
  //# sourceMappingURL=index.js.map