From 498e28a3255db64f4dddc569dda928b812ee3213 Mon Sep 17 00:00:00 2001 From: Abitofevrything <54505189+abitofevrything@users.noreply.github.com> Date: Mon, 16 Oct 2023 22:19:22 +0200 Subject: [PATCH] Update documentation to nyxx 6.0.0 (#12) * Upgrade dependencies * Update Dart logo * Reword homepage features * Update documentation for nyxx 6.0.0 * Add guide on caching * Add a tutorial for nyxx_commands * Remove my own token from the tutorial.... * Add guide on writing plugins --- .github/workflows/deploy.yml | 1 + .../resources.md => dart_resources.md} | 9 +- docs/guides/_category_.json | 2 +- docs/guides/cache.md | 96 - docs/guides/caching.mdx | 74 + docs/guides/coming_from_another_framework.mdx | 211 + docs/guides/command_handling.md | 695 -- docs/guides/components.md | 189 - docs/guides/creating_a_bot_account.md | 75 - docs/guides/intents.md | 37 - docs/guides/migration.md | 148 - docs/guides/slash_commands.md | 223 - docs/guides/writing_plugins.mdx | 132 + docs/guides/writing_your_first_bot.mdx | 170 - docs/intro.md | 24 +- docs/resources/_category_.json | 4 - docs/tutorials/_category_.json | 4 + docs/tutorials/creating_a_bot_account.md | 113 + docs/tutorials/using_nyxx_commands.mdx | 565 ++ docs/tutorials/writing_your_first_bot.mdx | 200 + docusaurus.config.js | 24 +- glacier.yaml | 14 - package.json | 27 +- pnpm-lock.yaml | 7449 +++++++++-------- src/components/HomepageFeatures/index.tsx | 20 +- static/img/Dart_Logo.svg | 32 +- static/img/tutorial/bot_in_command_menu.png | Bin 0 -> 22771 bytes .../tutorial/ping_command_empty_selection.png | Bin 0 -> 15870 bytes .../ping_command_executed_with_argument.png | Bin 0 -> 22682 bytes .../tutorial/ping_command_in_command_menu.png | Bin 0 -> 15337 bytes ...command_in_command_menu_with_arguments.png | Bin 0 -> 15158 bytes ...g_command_in_command_menu_with_choices.png | Bin 0 -> 20585 bytes .../ping_command_invalid_input_response.png | Bin 0 -> 20155 bytes ...ing_command_multiple_selections_string.png | Bin 0 -> 56050 bytes .../tutorial/simple_ping_command_executed.png | Bin 0 -> 10859 bytes ...simple_ping_command_executed_text_mode.png | Bin 0 -> 41372 bytes 36 files changed, 5329 insertions(+), 5209 deletions(-) rename docs/{resources/resources.md => dart_resources.md} (53%) delete mode 100644 docs/guides/cache.md create mode 100644 docs/guides/caching.mdx create mode 100644 docs/guides/coming_from_another_framework.mdx delete mode 100644 docs/guides/command_handling.md delete mode 100644 docs/guides/components.md delete mode 100644 docs/guides/creating_a_bot_account.md delete mode 100644 docs/guides/intents.md delete mode 100644 docs/guides/migration.md delete mode 100644 docs/guides/slash_commands.md create mode 100644 docs/guides/writing_plugins.mdx delete mode 100644 docs/guides/writing_your_first_bot.mdx delete mode 100644 docs/resources/_category_.json create mode 100644 docs/tutorials/_category_.json create mode 100644 docs/tutorials/creating_a_bot_account.md create mode 100644 docs/tutorials/using_nyxx_commands.mdx create mode 100644 docs/tutorials/writing_your_first_bot.mdx delete mode 100644 glacier.yaml create mode 100644 static/img/tutorial/bot_in_command_menu.png create mode 100644 static/img/tutorial/ping_command_empty_selection.png create mode 100644 static/img/tutorial/ping_command_executed_with_argument.png create mode 100644 static/img/tutorial/ping_command_in_command_menu.png create mode 100644 static/img/tutorial/ping_command_in_command_menu_with_arguments.png create mode 100644 static/img/tutorial/ping_command_in_command_menu_with_choices.png create mode 100644 static/img/tutorial/ping_command_invalid_input_response.png create mode 100644 static/img/tutorial/ping_command_multiple_selections_string.png create mode 100644 static/img/tutorial/simple_ping_command_executed.png create mode 100644 static/img/tutorial/simple_ping_command_executed_text_mode.png diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 8729e951..91992bad 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -37,6 +37,7 @@ jobs: with: node-version: ${{ matrix.node-version }} cache: pnpm + - name: Install dependencies run: pnpm install diff --git a/docs/resources/resources.md b/docs/dart_resources.md similarity index 53% rename from docs/resources/resources.md rename to docs/dart_resources.md index 98a994ca..58dae374 100644 --- a/docs/resources/resources.md +++ b/docs/dart_resources.md @@ -2,11 +2,12 @@ title: Dart resources author: l7ssha timestamp: 2021-09-20 +sidebar_position: 4 --- These are useful dart resources that could help learning the language and its basic concepts: - - [Dart official webpage](https://dart.dev/); - - [Overview of dart language](https://dart.dev/overview); - - [Dart samples](https://dart.dev/samples); - - [Dart samples](https://dart.dev/samples); + - [Dart official webpage](https://dart.dev/) + - [Overview of dart language](https://dart.dev/overview) + - [Dart samples](https://dart.dev/samples) + - [Dart samples](https://dart.dev/samples) - [Effective dart guidelines](https://dart.dev/guides/language/effective-dart) \ No newline at end of file diff --git a/docs/guides/_category_.json b/docs/guides/_category_.json index 2a9d3fd8..680845a9 100644 --- a/docs/guides/_category_.json +++ b/docs/guides/_category_.json @@ -1,4 +1,4 @@ { "label": "Guides", - "position": 2 + "position": 3 } diff --git a/docs/guides/cache.md b/docs/guides/cache.md deleted file mode 100644 index 6891deae..00000000 --- a/docs/guides/cache.md +++ /dev/null @@ -1,96 +0,0 @@ ---- -title: Cache -author: l7ssha -timestamp: 2021-09-21 -category: guides -sidebar_position: 2 ---- - -Caching in nyxx is managed automatically with internal wrappers around existing Dart features. Nyxx features a -[`ICache`](https://pub.dev/documentation/nyxx/latest/nyxx/ICache-class.html) interface which is the base class for all caches used in the library. -Like any other aspect of nyxx, cache handling can be altered to fit your needs. - -You can pass an instance of `CacheOptions` when creating your `INyxx` instance to alter caching behavior across the whole bot: - -```dart -/// Options for configuring cache. Allows to specify where and which entities should be cached and preserved in cache -class CacheOptions { - /// Defines in which locations members will be cached - CachePolicyLocation memberCachePolicyLocation = CachePolicyLocation(); - - /// Defines which members are preserved in cache - CachePolicy memberCachePolicy = MemberCachePolicy.def; - - /// Defines where channel entities are preserved cache. Defaults to [CachePolicyLocation] with additional objectConstructor set to true - CachePolicyLocation channelCachePolicyLocation = CachePolicyLocation()..objectConstructor = true; - - /// Defines which channel entities are preserved in cache. - CachePolicy channelCachePolicy = ChannelCachePolicy.def; - - /// Defines in which places user can be cached - CachePolicyLocation userCachePolicyLocation = CachePolicyLocation(); - - /// Defines in which locations members will be cached - CachePolicyLocation messageCachePolicyLocation = CachePolicyLocation(); - - /// Defines which members are preserved in cache - CachePolicy messageCachePolicy = MessageCachePolicy.def; -} -``` - -For now there are a few things you can do: - -1. Alter when objects are added to cache (from websocket events or HTTPS requests); -2. Control which objects are added to cache (by specifying a predicate to choose which objects to cache) - -#### CachePolicyLocation - -This setting allows to specify when object are added to the cache: - -- `event`: Objects are cached from websocket events; -- `objectConstructor`: Objects are cached from other object's constructors, for example `IMember` objects from message payloads; -- `http`: Objects are added from HTTP API requests; -- `other`: All other times an object could be cached. - -As an example, this code would only cache `IMember` objects from websocket events and http API requests: - -```dart -void main() { - final cacheOptions = CacheOptions() - ..memberCachePolicyLocation = ( - CachePolicyLocation() - ..event = true - ..http = true - ); - - final bot = NyxxFactory.createNyxxWebsocket("token", 10, cacheOptions: cacheOptions); -} -``` - -#### CachePolicy - -Another option to restrict caching is to specify a `CachePolicy` which is a class that wraps a callback executed when trying to cache objects. - -`CachePolicy` can be freely composed with provided base methods or extended by the end developer: - -```dart -/// Convenience method to concatenate other policy -CachePolicy or(CachePolicy other); - -/// Convenience method to require other policy -CachePolicy and(CachePolicy other); - -/// Composes a policy by concatenating multiple other policies from list -static CachePolicy any(List> policies); -``` - -For example, this code would only cache `IMember` objects who have roles: - -```dart -void main() { - final cacheOptions = CacheOptions() - ..memberCachePolicy = CachePolicy((member) => member.roles.isNotEmpty); - - final bot = NyxxFactory.createNyxxWebsocket("token", 10, cacheOptions: cacheOptions); -} -``` diff --git a/docs/guides/caching.mdx b/docs/guides/caching.mdx new file mode 100644 index 00000000..fe22dfb0 --- /dev/null +++ b/docs/guides/caching.mdx @@ -0,0 +1,74 @@ +--- +title: Caching +author: Abitofevrything +timestamp: 2023-09-27 +category: guides +sidebar_position: 2 +--- + +Nyxx implements caching as is recommended by Discord. This guide lists cache features and pitfalls +in the library. + +## Cache locations + +Caches in nyxx are represented as instances of the `Cache` type, which is effectively a `Map` with +extra features. + +Most managers will have a cache for the type of entity they manage, such as `client.users.cache` or +`channel.messages.cache`. Some managers have extra caches for other related entity types, such as +`guild.commands.permissionsCache`. + +If you ever want to inspect all the cached entities for a given client, the `Cache.cachesFor` method +will return a view of all cached entities. Note that modifying the returned map does not affect the +caches themselves. + +## Cache configuration + +Caches in nyxx can be configured using the `CacheConfig` class which is passed to the +`ClientOptions` when creating your client. For entity types that have multiple caches, such as +`Message`s (one cache per `TextChannel`), the config applies to each cache individually. + +You can also manage caches imperatively by calling the `Map` methods on the cache - `cache.clear()` +will clear a cache, `cache.removeWhere` can be used for filtering and any other `Map` method works +as expected. + +## Cache usage + +Nyxx provides partial entities that manage most of the caching for you - the `SnowflakeEntity.get()` +method first tries to fetch the entity from its cache before fetching it from the Discord API. + +If you want to manually access a cache's entries, the entities in the cache are mapped by their ID. + +:::caution +Entities may be unexpectedly removed from a cache during a cache filter, so we recommend extracting +an entity from the cache as early as possible and storing it in a local variable to avoid losing it +and needing to re-fetch it. +::: + +## Cache population + +Caches can be populated in two different ways: + +1. Making HTTP requests using a `Manager` will cache entities returned from the API. + + For example, using `client.channels.fetch()` will place the returned channel into + `client.channels.cache`. + +2. Entities received over the Gateway will be cached in the relevant manager's cache. + + For example, receiving a `MessageCreateEvent` will place the message into + `channel.messages.cache` for the message's channel. `XXXUpdateEvent`s will also update the entity + in the cache. + +:::caution +Since the cache relies on Gateway `XXXUpdateEvent`s to stay up to date, entities are not removed +from the cache based on how long they have been in it - there is no cache expiry. + +If you are using a client that does not connect to the Gateway (e.g `NyxxRest`) or have disabled the +intent associated with events for a certain entity type, you might want to set the +`CacheConfig.maxSize` for that entity to 0 (effectively disabling the cache), since entities in the +cache will not be updated. + +If you do not disable the cache, keep in mind that the cache contents may not be up to date, and use +methods that bypass cache checks if an up to date version of the entity is needed. +::: diff --git a/docs/guides/coming_from_another_framework.mdx b/docs/guides/coming_from_another_framework.mdx new file mode 100644 index 00000000..2a7bbf4b --- /dev/null +++ b/docs/guides/coming_from_another_framework.mdx @@ -0,0 +1,211 @@ +--- +title: Coming from another framework +author: Abitofevrything +timestamp: 2023-09-23 +category: guides +sidebar_position: 1 +--- + +:::caution +This guide assumes you already know how the Discord API and Discord bots work. If you don't, check +out [Writing your first bot](../tutorials/writing_your_first_bot.mdx) +::: + +This guide explains how to perform common actions using nyxx. You can read through it in order, or +use the sidebar on the right to jump to a section you want to read. + +## Connecting to the API + +To connect to the Discord API, call one of the static methods on the `Nyxx` class. These methods +come in pairs: a `Nyxx.connectXXX` method and a `Nyxx.connectXXXWithOptions`. The `connectXXX` +methods are simply a shorter way to call `connectXXXWithOptions`. + +Calling `Nyxx.connectXXX` allows you to create a connected client that uses the default API +configuration. If you want to configure API options, call `connectXXXWithOptions`. + +There are several method pairs for different client types: + - `Nyxx.connectRest` and `Nyxx.connectRestWithOptions` create a client that performs only HTTP + requests using a bot token for authentication. + - `Nyxx.connectGateway` and `Nyxx.connectGatewayWithOptions` create a client that performs HTTP + requests and receives events from Discord's Gateway using a bot token for authentication. + - `Nyxx.connectOAuth2` and `Nyxx.connectOAuth2WithOptions` create a client that performs only HTTP + requests using OAuth2 credentials for authentication. + +For example, most bots will want to connect to the Gateway: +```dart +import 'package:nyxx/nyxx.dart'; + +void main() async { + final client = await Nyxx.connectGateway('TOKEN', GatewayIntents.allUnprivileged); +} +``` + +All the connection methods also allow you to specify client options that allow you to add plugins to +your client and control caching. We recommend adding the `logging` and `cliIntegration` plugins to +all bots using nyxx: + +```dart +import 'package:nyxx/nyxx.dart'; + +void main() async { + final client = await Nyxx.connectGateway( + 'TOKEN', + GatewayIntents.allUnprivileged, + options: GatewayClientOptions(plugins: [logging, cliIntegration]), + ); +} +``` + +## Making API requests + +To make requests to Discord's API, nyxx exposes methods on many of the different entity types. +Making an API request using them is as simple as calling that method: +```dart +final TextChannel channel = /* Get a channel from somewhere */; + +// Send a message to that channel +await channel.sendMessage(MessageBuilder(content: 'Hello!')); +``` + +If you cannot get an instance of an entity or want to avoid an HTTP request that would be needed to +fetch it, nyxx allows you to make API requests using `Partial`s or `Manager`s: + +```dart +final NyxxRest client = /* Your client */; +final Snowflake guildId = /* The ID of the guild */; + +// List the guild's bans using a partial +await client.guilds[guildId].listBans(); + +// List the guild's bans using the client's guild manager +await client.guilds.listBans(guildId); +``` + +Using partials also allows you to access managers that aren't directly available on the client. For +example, listing the application (slash) commands in a guild using a partial is much more elegant +than using the manager directly: + +```dart +final NyxxRest client = /* Your client */; +final Snowflake guildId = /* The ID of the guild */; + +// List the guild's commands using a partial +await client.guilds[guildId].commands.list(); + +// List the guild's commands by creating a manager +await GuildApplicationCommandManager( + client.options.applicationCommandConfig, + client, + applicationId: client.application.id, + guildId: guildId, + permissionsConfig: client.commandPermissionsConfig, +).list(); +``` + +### Partial text channels + +Partials are mostly simple to understand, but there is one exception to this rule: +`PartialTextChannel`s. + +The `NyxxRest.channels` manager only provides access to `PartialChannel`s, which don't expose an +easy way to send messages to that channel - as it might not be a text channel. Additionally, there +is no method in `ChannelManager` that allows you to send a message to a channel as sending messages +is handled by `MessageManager`. + +If we didn't treat this case specially, you'd have to write this to send a message to a channel +(without fetching it first): + +```dart +await MessageManager( + client.messageCacheConfig, + client, + channelId: channelId, +).create(MessageBuilder(content: 'Hello!')); +``` + +Therefore, nyxx exceptionally allows you to **cast the `PartialChannel` returned by the +`ChannelManager` to a `PartialTextChannel`**: + +```dart +await (client.channels[channelId] as PartialTextChannel).sendMessage( + MessageBuilder(content: 'Hello!'), +); +``` + +:::caution +Only do this if you are certain the channel is a text channel, or calling `sendMessage` will result +in an error. +::: + +## Listening to events + +To listen to events from Discord's Gateway (websocket API), first ensure your client is a +`NyxxGateway` by calling `Nyxx.connectGateway` or `Nyxx.connectGatewayWithOptions` when connecting +to the API. + +Then, listen to any of the `onXXX` streams on the client objects to run your callback when that +event is omitted: + +```dart +final client = await Nyxx.connectGateway(...); + +client.onMessageCreate.listen((event) { + final message = event.message; + + print('Received message in ${message.channelId} by ${message.author.id}'); +}); +``` + +:::info +Most events emitted on these streams (subtypes of [`DispatchEvent`](https://pub.dev/documentation/nyxx/latest/nyxx/DispatchEvent-class.html)) +contain the object relevant to the event (e.g `MessageCreateEvent.message`) and/or several +additional fields with extra information (e.g `MessageCreateEvent.mentions`). + +Most `XXXUpdateEvent`s will also contain the previously cached object if possible. +::: + +You can also leverage Dart's powerful `Stream` API or use them in `await for` loops: + +```dart +final client = await Nyxx.connectGateway(...); + +await for (final MessageCreateEvent(:message) in client.onMessageCreate) { + print('Received message in ${message.channelId} by ${message.author.id}'); +} +``` + +### Advanced events + +To listen for events other than `DispatchEvent`s, listen to `Gateway.messages`. This is a stream of +`ShardMessage`s - control messages sent by Gateway shard connections running in separate isolates +back to the main client. + +The `EventReceived` message is sent when an event is received on the Gateway of any type, including +heartbeak acks and any other gateway event: + +```dart +final client = await Nyxx.connectGateway(...); + +client.gateway.messages.listen((message) { + if (message is! EventReceived) return; + + final event = message.event; + + print('Received event ${event.opcode.value} (${event.opcode.name})'); +}); +``` + +:::caution +`EventReceived.event` will never be an instance of `DispatchEvent` as the parsing of dispatch events +only takes place once the client has processed them. + +Instead, `RawDispatchEvent`s are emitted containing the raw event payload. +::: + +## Command framework + +Some Discord libraries come with an in-built commands framework. While nyxx does have a commands +framework, it lives in a separate package: [`nyxx_commands`](https://pub.dev/packages/nyxx_commands) + +There is a tutorial for using nyxx_commands [here](../tutorials/using_nyxx_commands). + diff --git a/docs/guides/command_handling.md b/docs/guides/command_handling.md deleted file mode 100644 index 2d822c46..00000000 --- a/docs/guides/command_handling.md +++ /dev/null @@ -1,695 +0,0 @@ ---- -title: Command handling -author: Rapougnac -timestamp: 2022-03-25 -category: guides -sidebar_position: 8 ---- - -# Command handling - -Command handling is, by definition, a way to handle commands in multiple files. -Because by creating a lot of commands, your code in your main file will start to get really big and have a if/else if/switch hell. - -Unlike many other languages, Dart does **not** have a way to dynamically — only known at runtime — import files. -But don't worry, there's still a way to handle properly your commands, slash commands and legacy commands. -[`nyxx_commands`] is a library that can handle commands for you. - -## Creation of client - -Let's setup a basic example, first, we need to create our client. - -```dart -//highlight-next-line -import 'package:nyxx/nyxx.dart'; - -void main() { - //highlight-start - // nyxx_commands doesn't support INyxxRest yet, so we need to use INyxxWebsocket. - final client = NyxxFactory.createNyxxWebsocket( - '', - GatewayIntents.allUnprivileged | GatewayIntents.guildMembers, - ); - //highlight-end -} -``` - -Now, by convenience, we register the basic plugins. -These aren't required for [`nyxx_commands`] to work - -```dart -import 'package:nyxx/nyxx.dart'; - -void main() { - // nyxx_commands doesn't support INyxxRest yet, so we need to use INyxxWebsocket. - final client = NyxxFactory.createNyxxWebsocket( - '', - GatewayIntents.allUnprivileged | GatewayIntents.guildMembers, - ); - - //highlight-start - client - ..registerPlugin(Logging()) - ..registerPlugin(CliIntegration()) - ..registerPlugin(IgnoreExceptions()); - //highlight-end -} -``` - -## Creating our [`CommandsPlugin`] - -Ok, so now, we have client ready to be used, but we didn't used [`nyxx_commands`] after all. So let's get into it. - -```dart -import 'package:nyxx/nyxx.dart'; -//highlight-next-line -import 'package:nyxx_commands/nyxx_commands.dart'; - -void main() { - // nyxx_commands doesn't support INyxxRest yet, so we need to use INyxxWebsocket. - final client = NyxxFactory.createNyxxWebsocket( - '', - GatewayIntents.allUnprivileged | GatewayIntents.guildMembers, - ); - - client - ..registerPlugin(Logging()) - ..registerPlugin(CliIntegration()) - ..registerPlugin(IgnoreExceptions()); - - //highlight-start - // Next, we need to create our plugin. The plugin class used for nyxx_commands is `CommandsPlugin` - // and we need to store it in a variable to be able to access it for registering commands and - // converters. - - CommandsPlugin commands = CommandsPlugin( - // The `prefix` parameter determines what prefix nyxx_commands will use for text commands. - // - // It isn't a simple string but a function that takes a single argument, an `IMessage`, and - // returns a `String` indicating what prefix to use for that message. This allows you to have - // different prefixes for different messages, for example you might want the bot to not require - // a prefix when in direct messages. In that case, you might provide a function like this: - // ```dart - // prefix: (message) { - // if (message.startsWith('!')) { - // return '!'; - // } else if (message.guild == null) { - // return ''; - // } - // } - //``` - // - // In this case, we always return `!` meaning that the prefix for all messages will be `!`. - prefix: (message) => '!', - - // The `guild` parameter determines what guild slash commands will be registered to by default. - // - // This is useful for testing since registering slash commands globally can take up to an hour, - // whereas registering commands for a single guild is instantaneous. - // - // If you aren't testing or want your commands to be registered globally, either omit this - // parameter or set it to `null`. - guild: Snowflake(Platform.environment['GUILD']!), - - // The `options` parameter allows you to specify additional configuration options for the - // plugin. - // - // Generally you can just omit this parameter and use the defaults, but if you want to allow for - // a specific behaviour you can include this parameter to change the default settings. - // - // In this case, we set the option `logErrors` to `true`, meaning errors that occur in commands - // will be sent to the logger. If you have also added the `Logging` plugin to your client, these - // will then be printed to your console. - // `true` is actually the default for this option and was included here for the sake of example. - options: CommandsOptions( - logErrors: true, - ), - ); - - // Next, we add the commands plugin to our client: - client.registerPlugin(commands); - - - // Finally, we tell the client to connect to Discord: - client.connect(); - //highlight-end -} -``` - -## Registering a command - -To register a command, we must first create an instance of the [`ChatCommand`] class. -This class represents a single command, slash command or not, and once added to the bot will -automatically be ready to use. - -For our first command, let's create the famous `ping` command that'll reply with `pong`. - -The first parameter is the command name. -Command names must obey certain rules, if they don't an error will be thrown. -Generally, using lower case letters and dashes (`-`) instead of spaces or undersoces will avoid any problems. - -
-The second parameter is the command description. In traditional command frameworks, -command descriptions aren't required. However, Discord requires that all slash commands -have a description, so it is needed in nyxx_commands. -
-The third parameter is the function that will be executed when the command is ran. - -The first parameter to this function must be a [`IChatContext`]. - -A [`IChatContext`] allows you to access various information about how the command was run: the user that executed it, the guild it was ran in and a few other useful pieces of information. -[`IChatContext`] also has a couple of methods that make it easier to respond to commands. -Since a ping command doesn't have any other arguments, we don't add any other parameters to the function. - -```dart -// Finally, we tell the client to connect to Discord: -client.connect(); - -//highlight-start -ChatCommand ping = ChatCommand( - 'ping', - "Checks if the bot's online", - (IChatContext context) { - // For a ping command, all we need to do is respond with `pong`. - // To do that, we can use the `Context`'s `respond` method which responds to the command with - // a message. - context.respond(MessageBuilder.content('pong!')); - }, -); -//highlight-end -``` - -### Adding a command to the [`CommandsPlugin`] - -Once we've created our command, we need to add it to our bot. - -The commands on a bot can be represented with a parent-child tree that looks like this: - -``` -client -┗━ ping -``` - -```dart -ChatCommand ping = ChatCommand( - 'ping', - "Checks if the bot's online", - (IChatContext context) { - // For a ping command, all we need to do is respond with `pong`. - // To do that, we can use the `Context`'s `respond` method which responds to the command with - // a message. - context.respond(MessageBuilder.content('pong!')); - }, -); - -//highlight-next-line -commands.addCommand(ping); -``` - -At this point, if you run this file, you should see a slash command named "ping" appear in -Discord. Executing it should make the bot send `pong!` to the channel the command was executed -in. -You can also send a text message starting with `!ping` and you should see a similar result. - -
- -If you don't want to be mentionned, you can use the [`mention`] option in the [`MessageChatContext`]'s [`respond`] -Like so: - -```dart -//highlight-next-line -context.respond('pong!', mention: false); -``` - -
- -:::info -You must check if the context is a [`MessageChatContext`] to apply the [`mention`] parameter. -::: - -## Registering a command group - -Command groups are a powerful tool that allow you to group commands together. -As an example, we'll create a command group `throw` with two sub-commands: `coin` and `die` ( -the singular form of dice, not the verb). -Our command structure will look like this once we're done (the ping command we made earlier is -still there): - -``` -client -┗━ ping -┗━ throw - ┗━ coin - ┗━ die -``` - -Ok, so, let's create our first command group. - -Similarly to [`ChatCommand`], the [`ChatGroup`] constructor's first two arguments are the group's name -and description. - -However, there is no [`execute`] parameter; groups are not commands, and as such cannot be run, -so it makes no sense to have a function to execute. [`children`] is an optional parameter that allows you to specify what commands are part of this -group. It isn't the only way to add commands to a group though, so we'll add the `throw coin` -method here and the `throw die` command later. - -```dart -//highlight-start -// We have to use the variable name `throwGroup` since `throw` is a reserved keyword. Note that -// the variable name does not change how the group behaves at all though. -ChatGroup throwGroup = ChatGroup( - 'throw', - 'Throw an object', - children: [ - // We create a command in the same way as we created the `ping` command earlier. - ChatCommand( - 'coin', - 'Throw a coin', - (IChatContext context) { - bool heads = Random().nextBool(); - - context.respond( - MessageBuilder.content('The coin landed on its ${heads ? 'head' : 'tail'}!'), - ); - }, - ) - ], -); -//highlight-end -``` - -There's another way to add a command to a group. It's by using the [`ChatGroup`]'s [`addCommand`] method. - -Like so: - -```dart -//highlight-start -throwGroup.addCommand( - ChatCommand( - 'die', - 'Throw a die', - (IChatContext context) { - int number = Random().nexInt(6) + 1; - - context.respond(MessageBuilder.content('The die landed on the $number!')); - } - ), -); -//highlight-end - -// Finally, just like the `ping` command, we need to add our command group to the bot: -//highlight-next-line -commands.addCommand(throwGroup); -``` - -At this point, if you run this file, a new command should have appeared in the slash command menu on Discord: `throw`. Selecting it will let you choose from two sub-commands: `coin` or -`die`. Executing either of them should result in the bot sending a message with a random -outcome! - -You can also send a text message starting with `!throw coin` or `!throw die` to execute the -commands. - - -## Using command arguments - -Command argumens are another powerful tool that allow you to get user input when using commands. -Adding arguments to your commands in nyxx_commands is simple, just add the argument as a -parameter to your [`execute`] function and nyxx_commands will do the rest, including: - -- Converting the parameter name to a Discord-friendly name; -- Converting user input to the correct type; -- Inferring the best Discord slash command argument type to use for that argument - -As an example, let's implement a `say` command that simply repeats what the user input. - -```dart -ChatCommand say = ChatCommand( - 'say', - 'Make the bot say something', - - // As mentioned earlier, all we need to do to add an argument to our command is add it as a - // parameter to our execute function. In this case, we take an argument called `message` and of - // type `String`. - (Context context, String message) { - context.respond(MessageBuilder.content(message)); - }, -); - -// As usual, we need to register the command to our bot. -commands.addCommand(say); -``` - -At this point, if you run this file your command structure will look like this: - -``` -client -┗━ ping -┗━ throw - ┗━ coin - ┗━ die -┗━ say -``` - -A new command will also have appeared in Discord: `say`. Notice that this new command has an -argument, and Discord won't let you execute it unless your provide a value for that argument. - -As usual, you can also execute the command with a message starting with `!say`. -However, if you try to run the command with a message that just says `!say`, you will notice an -error is thrown in your console. This is because you didn't provide a value for the `message` -argument. -Sending `!say hi` will result in the bot sending a message `hi` as expected. - -:::caution Warning - -Sending `!say hello, nyxx_commands!` will only make the bot send -a message with `hello,`. This is because the string parser assumes that one word = one -argument. To avoid this, put quotes around your argument to tell nyxx_commands that until the -next quote, all characters should be treated as a single argument (escaping quotes is -supported). -Running `!say "hello, nyxx_commands!"` results in `hello, nyxx_commands!` being sent as expected. - -::: - -## Using converters - -Converters allow you to convert user input to specific Dart types. In the previous example, no conversion was needed as input received from Discord is already a [`String`]. -However, the input received from Discord might not always be the type you need it to be. To -convert the input from Discord to the type needed for your [`execute`] function, the [`Converter`] -class is used. - -[nyxx_commands] registers a few converters by default for commonly used types such as [`int`]s, -[`double`]s, [`IMember`]s and others. We'll look into creating custom converters later, and for now -just use the built-in converters. -Using converters is just as simple as using arguments: simply specify the argument name and -type, and [nyxx_commands] will determine which [`Converter`] to use for that argument. - -As an example, let's create a `nick` command that changes a user's nickname. - -```dart -ChatCommand nick = ChatCommand( - 'nick', - "Change a user's nickname", - // Setting the type of the `target` parameter to `IMember` will make nyxx_commands convert user - // input to instances of `IMember`. - (IChatContext context, IMember target, String newNick) async { - try { - await target.edit(nick: newNick); - } on IHttpResponseError { - context.respond(MessageBuilder.content("Couldn't change nickname :/")); - return; - } - context.respond(MessageBuilder.content('Successfully changed nickname!')); - }, -); - -commands.addCommand(nick); -``` - -At this point, if you run the file your command structure will look like this: - -``` -client -┗━ ping -┗━ throw - ┗━ coin - ┗━ die -┗━ say -┗━ nick -``` - -A new `nick` command will have been added to Discord's slash command menu. Selecting it will -prompt you for both a target and a new nickname. -Notice that the `target` argument will only allow you to select members of the guild the -command was ran in: -nyxx_commands automatically selected an appropriate slash command argument type for the -`target` parameter. - -Also notice that the `newNick` argument name was changed to `new-nick`. nyxx_commands will -automatically convert your camelCase dart identifiers to Discord-compatible kebab-case argument -names, meaning you can keep your code clean without issues. - -You can also run the command from a text message, with `!nick *target* *new-nick*`. Unlike -slash commands, there is no way to filter user input before it gets to our bot, so we might end -up with an invalid input. -If that is the case, the converter for [`IMember`] will be unable to convert the user input to a -valid member, and the command will fail with an exception. - -:::info -Note that the bot must have the `MANAGE_MEMBERS` permission and have a higher role than the -target user for this command to succeed. -::: - -## Using custom converters - -Custom converters allow you to specify a custom way of converting user input to a specific type -that you can then use in your commands. You can define a custom converter in a few ways: - -- By creating your own converter from scratch; -- By extending an existing converter; -- By combining existing converters - -As an example, we will create converters for two enums defined at the bottom of this file: -`Shape` and `Dimension`. - -### Using fully custom converters - -To start off, we will create a converter for `Shape`s. We will need to create a brand new -converter from scratch for this, since no existing converter can be mapped to a `Shape`. - -```dart -enum Shape { - triangle, - square, - pentagon, -} - - -// Note that the variable is fully typed, the typed generics on `Converter` are filled in. -// This allows nyxx_commands to know what the target type of this converter is. -Converter shapeConverter = Converter( - // The first parameter to the `Converter` constructor is a function. - // This function is what actually does the converting, and can return two things: - // - An instance of the target type (in this case, `Shape`), indicating success; - // - `null`, indicating failure (input cannot be parsed) - // - // The first parameter to the function is an instance of `StringView`. `StringView` allows you - // to manipulate and extract data from a `String`, but also allows the next converter to know - // where to start parsing its argument from. - // The second parameter is the current `Context` in which the argument is being parsed. - (view, context) { - // In our case, we want to return a `Shape` based on the user's input. The `getQuotedWord()` - // will get the next quoted word from the input. - // Note that although `getWord()` exists, you shouldn't use it unless you have to as it can - // mess up argument parsing later down the argument parsing. - switch (view.getQuotedWord().toLowerCase()) { - case 'triangle': - return Shape.triangle; - case 'square': - return Shape.square; - case 'pentagon': - return Shape.pentagon; - default: - // The input didn't match anything we know, so we assume the input is invalid and return - // `null` to indicate failure. - return null; - } - }, - // The second parameter to the `Converter` constructor is a list (or any iterable) of - // nyxx_interaction's `ArgChoiceBuilder`, allowing you to specify the choices that will be shown - // to the user when running this command from a slash command. - choices: [ - ArgChoiceBuilder('Triangle', 'triangle'), - ArgChoiceBuilder('Square', 'square'), - ArgChoiceBuilder('Pentagon', 'pentagon'), - ], -); - - -// Once we've created our converter, we need to add it to the bot: -commands.addConverter(shapeConverter); -``` - -### Using assembled converters - -For our `Dimension` converter, we can extend an existing converter: all `Dimension`s are -integers, so we can just extend the already existing `intConverter` and transform the integer -to a `Dimension`. - -```dart -enum Dimension { - twoD, - threeD, -} - -// To extend an existing `Converter`, we can use the `CombineConverter` class. This takes an -// exising converter and a function to transform the output of the original converter to the -// target type. -// Similarly to the shape converter, this variable has to be fully typed. The first type argument -// for `CombineConverter` is the target type of the inital `Converter`, and the second is the -// target type of the `CombineConverter`. -Converter dimensionConverter = CombineConverter( - intConverter, - // Also like `Converter`, the second parameter to the transform function is the current context. - (number, context) { - switch (number) { - case 2: - return Dimension.twoD; - case 3: - return Dimension.threeD; - default: - return null; - } - }, -); -``` - -At this point, if you run the file you will see that the `favourite-shape` command has been -added to the slash command menu. -Selecting this command, you will be prompted to select a shape from the choices we outlined -earlier and a dimension. Note that in this case Discord isn't able to give us choices since we -haven't told it what dimensions are availible. - -If you run the command, you will see that your input will automatically be converted to a -`Shape` and `Dimension` by using the converters we defined earlier. -Similarly to when we created the `nick` command, if either of our converters fail the command -will fail with an error. - -## Using optional arguments - -Optional argument allow you to allow the user to input something while providing a default -value. -Like converters, optional arguments are easy to use; just make the parameter in your [`execute`] -function optional. - -You must use optional parameters and not named parameters in the [`execute`] function as the -order matters when using text commands. Note that when using slash commands, users can specify -optional arguments in any order and can omit certain optional arguments. nyxx_commands will fix -the ordering of the arguments, however you are not guaranteed to receive all optional arguments -up to the last one positionally. - -As an example: - -```dart -(IChatContext context, [String? a, String? b, String? c]) {} -``` - -In this case, `b` having a value does not guarantee `a` has a value. As such, it is always better to provide a default for your optional parameters instead of making them nullable. - -```dart -// As an example for using optional arguments, let's create a command with an optional argument: -ChatCommand favouriteFruit = ChatCommand( - 'favourite-fruit', - 'Outputs your favourite fruit', - (IChatContext context, [String favourite = 'apple']) { - context.respond(MessageBuilder.content('Your favourite fruit is $favourite!')); - }, -); - -commands.addCommand(favouriteFruit); -``` - -
- -At this point, if you run the file you will be able to use the `favourite-fruit` command. Once -you've selected the command in the slash command menu, you'll be given an option to provide a -value for the `favourite` argument. -If you don't specify a value for the argument, the default value of `'apple'` will be used. If -you do specify a value, that value will be used instead. - -Using optional arguments in text commands works as expected: arguments are parsed from the user -input until there is no text left to parse or all possible arguments. This means that if you -want to specify an optional argument, you just have to type it in as you would with a -non-optional argument and the arguments will be filled in left to right in the order they were -declared. - -## Using checks - -Command checks allow you to restrict a command's usage. There are a few built-in checks that -integrate with Discord's slash command permissions, and a special cooldown check. - -As an example, we'll create a command with a cooldown: - -```dart -ChatCommand alphabet = ChatCommand( - 'alphabet', - 'Outputs the alphabet', - (IChatContext context) { - context.respond(MessageBuilder.content('ABCDEFGHIJKLMNOPQRSTUVWXYZ')); - }, - // Since this command is spammy, we can use a cooldown to restrict it's usage: - checks: [ - CooldownCheck( - CooldownType.user, - Duration(seconds: 30), - ) - ], -); - -commands.addCommand(alphabet); -``` - -## Using converters override - -Converter overrides allow you to override which [`Converter`] is used to convert a specific argument. -They can be used, for example, to filter the output of a converter so that only certain -instances are ever passed to the function. -You might have noticed that if we run the command `!say ""`, the bot will throw an error -because it cannot send an empty message. This is because the string [`Converter`] saw `""` and -interpreted it as an empty string - which the bot then tried to send. - -To counter this, let's create a converter that only allows non-empty strings: - -```dart -// Since the converter is going to be passed into a decorator, it must be `const`. As such, any -// functions used must either be static methods or top-level functions. -// You can see the implementation of `filterInput` at the bottom of this file. -const Converter nonEmptyStringConverter = CombineConverter(stringConverter, filterInput); - -ChatCommand betterSay = ChatCommand( - 'better-say', - 'A better version of the say command', - ( - IChatContext context, - @UseConverter(nonEmptyStringConverter) String input, - ) { - context.respond(MessageBuilder.content(input)); - }, -); - -commands.addCommand(betterSay); - -String? filterInput(String input, Context context) { - if (input.isNotEmpty) { - return input; - } - return null; -} -``` - -At this point, if you run the file, a new command `better-say` will have been added to the bot. -Attempting to invoke it with an empty string (`!better-say ""`) will cause the argument to -fail parsing. - -That's all! Well done, you've reached the end of this guide. You're now able to go and create your own bot on your side. -Remember; You just need to create a function or a class in a specific file, importing it, and register the function. - - - -[`nyxx_commands`]: https://github.com/nyxx-discord/nyxx_commands/tree/main -[nyxx_commands]: https://github.com/nyxx-discord/nyxx_commands/tree/main -[`ChatCommand`]: https://pub.dev/documentation/nyxx_commands/latest/nyxx_commands/ChatCommand-class.html -[`ChatGroup`]: https://pub.dev/documentation/nyxx_commands/latest/nyxx_commands/ChatGroup-class.html -[`IChatContext`]: https://pub.dev/documentation/nyxx_commands/latest/nyxx_commands/IChatContext-class.html -[`execute`]: https://pub.dev/documentation/nyxx_commands/latest/nyxx_commands/ChatCommand/execute.html -[`children`]: https://pub.dev/documentation/nyxx_commands/latest/nyxx_commands/ChatGroup/children.html -[`addCommand`]: https://pub.dev/documentation/nyxx_commands/latest/nyxx_commands/ChatGroup/addCommand.html -[`MessageChatContext`]: https://pub.dev/documentation/nyxx_commands/latest/nyxx_commands/MessageChatContext-class.html -[`respond`]: https://pub.dev/documentation/nyxx_commands/latest/nyxx_commands/MessageChatContext/respond.html -[`mention`]: https://pub.dev/documentation/nyxx_commands/latest/nyxx_commands/MessageChatContext/respond.html -[`String`]: https://api.dart.dev/stable/2.16.2/dart-core/String-class.html -[`double`]: https://api.dart.dev/stable/2.16.2/dart-core/double-class.html -[`int`]: https://api.dart.dev/stable/2.16.2/dart-core/int-class.html -[`IMember`]: https://pub.dev/documentation/nyxx/latest/nyxx/IMember-class.html -[`Converter`]: https://pub.dev/documentation/nyxx_commands/latest/nyxx_commands/Converter-class.html -[`CommandsPlugin`]: https://pub.dev/documentation/nyxx_commands/latest/nyxx_commands/CommandsPlugin-class.html - diff --git a/docs/guides/components.md b/docs/guides/components.md deleted file mode 100644 index b8f9a4e2..00000000 --- a/docs/guides/components.md +++ /dev/null @@ -1,189 +0,0 @@ ---- -title: Message components -author: HarryET -timestamp: 2021-09-22 -category: guides -sidebar_position: 5 ---- - -Message components allow for interactivity between a message sent by a bot and the user receiving it. You can add buttons, links, select menus & multiselects. - -
- -## Interactions extension - -Before you use message components you have to instantiate new instance of the [`IInteractions`] class, which is an extension for nyxx that provides slash command and message components functionality: - -```dart -final bot = NyxxFactory.createNyxxWebsocket("", GatewayIntents.allUnprivileged); -final interactions = IInteractions.create(WebsocketInteractionBackend(bot)); -``` - -
- -The [`IInteractions`] class contains all the methods and utils needed to send and manage messages with components. - -
- -### Components (buttons and select menus) - -Components (buttons and select menus at the moment) can be created on any message but button events can be listened only from the [`IInteractions`] object. - -
- -### Adding components to message - -Components can be created using the [`ComponentMessageBuilder`] class from the [`nyxx_interactions`] package. It extends the basic -[`MessageBuilder`] from the [`nyxx`] package with an additional [`addComponent`] method which allows adding component rows and -components to a message. - -The following example shows how to create a message with buttons and select menus. These can be sent with any message -sent by the bot, including webhooks (provided the bot application also owns the webhook): - -
- -```dart -final singleCommand = SlashCommandBuilder("help", "This is example help command", []) - ..registerHandler((event) async { - // All "magic" happens via ComponentMessageBuilder class that extends MessageBuilder - // from main nyxx package. This new builder allows to create message with components. - final componentMessageBuilder = ComponentMessageBuilder(); - - // There are two types of button - regular ones that can be responded to an interaction - // and url button that only redirects to specified url. - // Here we are focusing on regular button that we can respond to. - // Label is what user will see on button, customId is id that we ca use later to - // catch button event and respond to, and style is what kind of button we want create. - final componentRow = ComponentRowBuilder() - ..addComponent(ButtonBuilder("This is button label", "thisisid", ButtonStyle.success)) - ..addComponent(ButtonBuilder("This is another button", "thisisid2", ButtonStyle.success)) - ..addComponent(ButtonBuilder("This is a disabled button", "thisisid3", ButtonStyle.danger) - ..disabled = true, - ); - - // Then component row can be added to message builder and sent to user. - // You MUST add content to the MessageBuilder class, otherwise, Discord will throw an error. - componentMessageBuilder.addComponentRow(componentRow..content = 'Hey, I got buttons!'); - await event.respond(componentMessageBuilder); - }); -``` - -
-Of course, you can do this with a select menu. - -```dart -final singleCommand = SlashCommandBuilder("help", "This is example help command", []) - ..registerHandler((event) async { - // All "magic" happens via ComponentMessageBuilder class that extends MessageBuilder - // from main nyxx package. This new builder allows to create message with components. - final componentMessageBuilder = ComponentMessageBuilder(); - - // Adding selects is as easy as adding buttons. Use MultiselectBuilder with custom id - // and list of multiselect options. - final componentRow = ComponentRowBuilder() - ..addComponent(MultiselectBuilder("customId", [ - MultiselectOptionBuilder("example option 1", "option1"), - MultiselectOptionBuilder("example option 2", "option2"), - MultiselectOptionBuilder("example option 3", "option3"), - ])); - // Then component row can be added to message builder and sent to user. - // You MUST add content to the MessageBuilder class, otherwise, Discord will throw an error. - componentMessageBuilder.addComponentRow(componentRow..content = 'Hey, I got a select menu!'); - await event.respond(componentMessageBuilder); -``` - -
-Or add a custom placeholder: - -```dart -final componentRow = ComponentRowBuilder() - ..addComponent(MultiselectBuilder("customId", [ - MultiselectOptionBuilder("example option 1", "option1"), - MultiselectOptionBuilder("example option 2", "option2"), - MultiselectOptionBuilder("example option 3", "option3"), - ]) - // Use the setter `placeholder` to set a custom placeholder - //highlight-next-line - ..placeholder = "A custom placeholder", - ); - -componentMessageBuilder.addComponentRow(componentRow..content = 'Hey, I got a select menu!'); -await event.respond(componentMessageBuilder); -``` - -
-You can even disable the select menu: - -```dart -final componentRow = ComponentRowBuilder() - ..addComponent(MultiselectBuilder("customId", [ - MultiselectOptionBuilder("example option 1", "option1"), - MultiselectOptionBuilder("example option 2", "option2"), - MultiselectOptionBuilder("example option 3", "option3"), - ]) - // Use the setter `disabled` to disable the select menu - //highlight-next-line - ..disabled = true, - ); - -componentMessageBuilder.addComponentRow(componentRow..content = 'Hey, I got a select menu!'); -await event.respond(componentMessageBuilder); -``` - -
- -### Listening to component events - -If your custom id doesn't hold specific data, you can use [`IInteractions.registerButtonHandler`] or [`IInteractions.registerMultiselectHandler`] -to listen for specific events. If your custom id for the component holds, for example, state data you can listen to -[`IInteractions.events.onMultiselectEvent`] or [`IInteractions.events.onButtonEvent`] events and then handle the interaction yourself. - -```dart -// To handle button interaction you need need function that accepts -// ButtonInteractionEvent as parameter. Since button event is interaction like -// slash command it needs to acknowledged and/or responded. -// If you know that command handler would take more that 3 second to complete -// you would need to acknowledge and then respond later with proper result. -Future buttonHandler(ButtonInteractionEvent event) async { - await event.acknowledge(); // ack the interaction so we can send response later - - // Send followup to button click with id of button - await event.sendFollowup(MessageBuilder.content( - "Button pressed with id: ${event.interaction.customId}") - ); -} - -// Handling multiselect events is no different from handling button. -// Only thing that changes is type of function argument -- it now passes information -// about values selected with multiselect -Future multiselectHandlerHandler(MultiselectInteractionEvent event) async { - await event.acknowledge(); // ack the interaction so we can send response later - - // Send followup to button click with id of button - await event.sendFollowup(MessageBuilder.content( - "Options chosen with values: ${event.interaction.values}") - ); -} - -void main() { - final bot = NyxxFactory.createNyxxWebsocket("", GatewayIntents.allUnprivileged); - IInteractions.create(WebsocketInteractionBackend(bot)) - ..registerSlashCommand(singleCommand) // Register created before slash command - ..registerButtonHandler("thisisid", buttonHandler) // register handler for button with id: thisisid - ..registerMultiselectHandler("customId", multiselectHandlerHandler) // register handler for multiselect with id: customId - ..syncOnReady(); // This is needed if you want to sync commands on bot startup. -} -``` - - -[`nyxx`]: https://github.com/nyxx-discord/nyxx -[`nyxx_interactions`]: https://github.com/nyxx-discord/nyxx_interactions -[`MessageBuilder`]: https://pub.dev/documentation/nyxx/latest/nyxx/MessageBuilder-class.html -[`IInteractions`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/IInteraction-class.html -[`ComponentMessageBuilder`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/ComponentMessageBuilder-class.html -[`addComponent`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/ComponentRowBuilder/addComponent.html -[`IInteractions.registerButtonHandler`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/IInteractions/registerButtonHandler.html -[`IInteractions.registerMultiselectHandler`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/IInteractions/registerMultiselectHandler.html -[`IInteractions.events.onMultiselectEvent`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/IEventController/onMultiselectEvent.html -[`iinteractions.events.onButtonEvent`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/IEventController/onButtonEvent.html - diff --git a/docs/guides/creating_a_bot_account.md b/docs/guides/creating_a_bot_account.md deleted file mode 100644 index e6cd9d41..00000000 --- a/docs/guides/creating_a_bot_account.md +++ /dev/null @@ -1,75 +0,0 @@ ---- -title: Creating a bot account -author: One-Nub -timestamp: 2021-09-22 -category: guides -sidebar_position: 6 ---- - -### Creating a bot account - -To get started with nyxx, you'll need a Discord bot account! - -- Head to the [Discord developers](https://discord.com/developers) site. - You'll be prompted to login if you aren't already. -- Once you are signed in, you should be redirected to the [applications](https://discord.com/developers/applications) page. -- Look towards to the top right and click the **New Application** button. - -
- -![Application button icon](../../static/img/tutorial/new_application_button.png) - -- Type in a name for the application, this will be the initial name of your bot account. Then click **Done**. ![New application menu](../../static/img/tutorial/create_application_page.png) -- On the left menu, select the **Bot** tab, then look to the right and click the **Add Bot** button. ![Add bot page](../../static/img/tutorial/add_bot_page.png) -- You will be presented with a menu asking if you _really_ want to add a bot, which we do so click **Yes, do it!** - -### Getting your bot's token - -:::danger -Do NOT share or publish this token anywhere publically. If you do, anyone will be able to use your bot account to perform any bot actions - such as banning users and leaving guilds. -::: - -- Once your bot account is made, on that same **Bot** tab, there will be a section labeled **Token**. -- To get your bot token, click on the **Reset** button. Discord will generate a new token so we can use it to run our bot. -![Reset Token](../../static/img/tutorial/bot_token_reset.jpg) -- Next, click on **Yes, do it!** button to generate a new token. -![Yes do it button](../../static/img/tutorial/bot_token_yes_do_it.jpg) -- If you enabled the two factor authentication, you should encounter this window. Enter your auth codes (there are in an authenticator app (depends on which you chose)), **the backup codes given from Discord will not work**. -![2Fa Codes](../../static/img/tutorial/bot_token_2fa.png) - -- Now you can finally copy your bot token. -![Copy Bot Token](../../static/img/tutorial/copy_bot_token.jpg) - -:::tip -In the event you share your token, be sure to press the **Reset** button so the old token can't be used anymore. -::: - -### Inviting your bot to a server - -Now that we've gotten this far, it's probably important that we invite the bot to your server to actually test commands in! - -- First, head to the **OAuth2** tab found in the left menu on your bot's application page. -- Then scroll down to the OAuth2 URL Generator and select the **bot** checkbox under the **scopes** section. If you wish to use slash commands as well, check the **application.commands** scope. ![OAuth2 Scopes with bot and application.commands checked](../../static/img/tutorial/select_bot_scopes.png) -- Scroll down some more so you can see the **Bot Permissions** section. This is where you get to select which permissions your bot has when it joins a server. For basic usage, select the **View Channels and Send Messages** permissions, and then scroll up to the generated URL and click the **Copy** button on the right. ![Bot permissions with send messages and view channels checked](../../static/img/tutorial/select_bot_permissions.png) -- Finally, head to that URL in your browser and add your bot! - -### Making your bot public (or private) - -- Head to the **Bot** tab found in the left menu on your bot's application page. -- Under the **Authorization Flow** section, find the **Public Bot** toggle. ![Public bot toggle button](../../static/img/tutorial/make_bot_public.png) -- To make your bot public so anyone can add it to their server, change the toggle to the right (so it's blurple); and do the inverse to make it private so only you can add the bot to servers. By default your bot should be public. - -### Privileged Gateway Intents - -Gateway intents make it so your bot can only recieve specific intents to lower the processing power necessary for the bot. Some of these intents are limited since they can contain potentially more sensitive data. - -These include: - -- **Presence Intent**: This toggle will enable you to recieve events when someone's presence or info is updated. This includes their status, username changes, avatar changes, as well as other similar info. -- **Server Members Intent**: This toggle will enable you to recieve events when guild members join and leave the server, when members are updated, who was added to and removed from a thread, and the ability to list guild members. - -To toggle these intents: - -- Head to the **Bot** tab found in the left menu on your bot's application page. -- Find the **Privileged Gateway Intents** section. ![Priviliged gateway intents section](../../static/img/tutorial/priv_gw_intents.png) -- Toggle the intents as necessary for your bot. diff --git a/docs/guides/intents.md b/docs/guides/intents.md deleted file mode 100644 index 975990fd..00000000 --- a/docs/guides/intents.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -title: Intents -author: L7ssha -timestamp: 2021-09-21 -category: guides -sidebar_position: 4 ---- - -Gateway intents were introduced so bot developers could choose which events they want to receive. If you don't want -to receive certain events you can just omit its intent and they won't be sent to your bot. - -> More on intents: [https://discord.com/developers/docs/topics/gateway#gateway-intents](https://discord.com/developers/docs/topics/gateway#gateway-intents) - -
- -### Specifying intents - -Since [`nyxx`] 2.x passing intents is required in nyxx constructor. You can pass the int value or you can pass constant values from [`GatewayIntents`] class combined with a binary OR (`|`): - -
- -For example, the following code would only recieve guild message or private message events, - -```dart -final bot = NyxxFactory.createNyxxWebsocket("TOKEN", GatewayIntents.guildMessages | GatewayIntents.directMessages); -``` - -
- -### More on bit fields - -Discord Intents and Permissions are stored in integers and calculated using bitwise operations. -If you want to dive deeper into what's happening behind the curtains, check the [Wikipedia page](https://en.wikipedia.org/wiki/Bit_field). - - -[`nyxx`]: https://github.com/nyxx-discord/nyxx -[`GatewayIntents`]: https://pub.dev/documentation/nyxx/latest/nyxx/GatewayIntents-class.html \ No newline at end of file diff --git a/docs/guides/migration.md b/docs/guides/migration.md deleted file mode 100644 index 7f1346e7..00000000 --- a/docs/guides/migration.md +++ /dev/null @@ -1,148 +0,0 @@ ---- -title: Migration to nyxx_* 3.x -sidebar_position: 3 -author: l7ssha -timestamp: 2021-12-17 -category: guides ---- - -`3.0.0` includes some big changes which are breaking to most of the code from previous version. -This guide is going to be broken into parts for each library. - -> Biggest change for each library are new entities model which incorporates interfaces for each class provided by library. - -The biggest change for all libraries is new entities model - concrete implementation and internal logic is hidden behind interfaces -and only said interfaces are accessible by end user of library. This allows easier extending, mocking and replacing nyxx -and its components. - -## nyxx - -#### `INyxxFactory` and `connect` in INyxx - -Since this release the only way to spawn a new instance of nyxx is via `NyxxFactory`'s method `createNyxxWebsocket` which creates -new instance of `INyxxWebsocket` which is comparable to old `Nyxx`. The `createNyxxRest` method creates a new instance of nyxx that won't -connect to websocket and will operate in REST only mode. - -Another big change in that regard is addition of new method `connect` on both `INyxxRest` and `INyxxWebsocket` which delegates -some logic from constructors of each class to make possible to implement other features. - -#### `Interface-based entity model` - -Concrete implementations of classes are now hidden and interfaces are exposed. -Here, nothing should particularly change but keep in mind that you are now receiving not `User` but `IUser` which represents -the user entity, but it's completely transparent on what it can do but hides internal implementation. It allows us to modify underlying -logic more easily. - -#### `Plugin system` - -This version ships with first iteration of plugin system which allows creating small and lightweight addons for library. -Functionality which was previously default is now moved to 3 plugins that are provided by default and developer needs to -specify what plugin they want to use. Plugins provided by default are: - -- `CliIntegration` -- `IgnoreExceptions` -- `Logging` - -Example usage of plugins: - -```dart -final bot = NyxxFactory.createNyxxWebsocket("", GatewayIntents.allUnprivileged) - ..registerPlugin(Logging()) - ..connect(); -``` - -Now there are 3 hooks that are exposed for developers: - -```dart -FutureOr onRegister(INyxx nyxx, Logger logger) async {} -FutureOr onBotStart(INyxx nyxx, Logger logger) async {} -FutureOr onBotStop(INyxx nyxx, Logger logger) async {} -``` - -Future version of nyxx will add more hooks and ways of extending the functionality of nyxx. - -#### Improved cache - -`SnowflakeCache` is completely rewritten and now implements `MapMixin` which allows using cache as a normal Map. -Old `SnowflakeCache`, `ChannelCache` and `MessageCache` were removed. - -#### Using nyxx in REST only mode - -It's now possible to use nyxx in REST only mode using `INyxxRest` instance - nyxx won't connect to gateway and only -REST API calls will be accessible. - -#### Other changes - -- Added support for text messages in voice channels. See: `ITextVoiceTextChannel` -- Auth header is now only sent when needed. `IHttpEndpoints.sendRawRequests` allows specifying if request should have auth header injected -- Implemented thread channel edit functionality. See: `IThreadChannel.edit` -- Nyxx won't call exit() anymore - that allows using nyxx in flutter without any problems -- Official support for Dart 2.15.x - -## nyxx_interactions - -#### IInteractions - -Similarly to main nyxx library to nyxx_interactions you have to use `IInteractions.create` method because the constructor is hidden from the public API. -The `create` function also accepts instance of `InteractionBackend` instead of `INyxx` instance due to upcoming HTTP interactions support. -This allows us to create additional backends for interactions or to alter existing ones for wider compatibility and extensibility. - -#### `Interface-based entity model` - -Concrete implementations of classes are now hidden and interfaces are exposed. -Here, nothing should particularly change but keep in mind that you are now receiving not `User` but `IUser` which represents -the user entity, but it's completely transparent on what it can do but hides internal implementation. It allows us to modify underlying -logic more easily. - -```dart -/// Where bot is instance of INyxx -IInteractions.create(WebsocketInteractionBackend(bot)); -``` - -Currently, only the websocket backend is available (`WebsocketInteractionBackend`). In the future a backend for HTTP interactions will be added. - -#### Improved autocomplete handling - -Autocomplete handlers can be now registered on instance of `CommandOptionBuilder` instead globally on IInteractions. This allows registering -autocomplete handler per command option instead of globally per given option name. In the future we are planning to provide shortcuts for -creating autocomplete command options to simplify code. - -#### Other changes - -- Fixed various bugs with registering commands and their permissions. -- Add ability to remove guild commands from given guild completely. Previously this behavior was not possible. - -## nyxx_commander - -#### ICommander - -Similarly to main nyxx library to nyxx_commander you have to use `ICommander.create` method because -constructor is hidden from public API. - -#### `Interface-based entity model` - -Concrete implementations of classes are now hidden and interfaces are exposed. -Here, nothing should particularly change but keep in mind that you are now receiving not `User` but `IUser` which represents -the user entity, but it's completely transparent on what it can do but hides internal implementation. It allows us to modify underlying -logic more easily. - -#### Other changes - -- Fixed bugs with invalid behavior of registering commands - -## nyxx_extensions - -- Use minified version of emojis endpoint -- `filterEmojiDefinitions` from `emoji` library now returns `Stream` -- Export library for each file (part of `Interface-based entity model` for whole library stack) - -## nyxx_lavalink - -#### `Interface-based entity model` - -Concrete implementations of classes are now hidden and interfaces are exposed. -Here, nothing should particularly change but keep in mind that you are now receiving not `User` but `IUser` which represents -the user entity, but it's completely transparent on what it can do but hides internal implementation. It allows us to modify underlying -logic more easily. - -External and internal API hadn't changed since previous version. diff --git a/docs/guides/slash_commands.md b/docs/guides/slash_commands.md deleted file mode 100644 index 8df22e57..00000000 --- a/docs/guides/slash_commands.md +++ /dev/null @@ -1,223 +0,0 @@ ---- -title: Slash commands -author: l7ssha -timestamp: 2021-09-21 -category: guides -sidebar_position: 7 ---- - -:::info Notice - -While [`nyxx_interactions`] was the original way to create slash commands, but it can be very easily replaced by [`nyxx_commands`] which itself is a dependent of `nyxx_interactions` but provides a way to create both text and slash commands. - -Use `nyxx_interactions` if: - - - You don't want to be limited from `nyxx_commands`; - - You want to go beyond the possibilities of base slash commands. - -Don't use it if: - - - You want create simple (and complicated too) slash commands; - - You want new features from `nyxx_interactions`: - - There are quickly implemented in `nyxx_commands`. - -Look [here](./command_handling.md) for more information. - -::: - -
- -Slash commands are a new way of interacting with bots via chat using commands registered on the Discord API. -These commands provide visual feedback through the UI and are more connected to the platform than classic text based commands. -Slash commands can narrow down options to different types such as numbers, users, and roles. - -
- -## Interactions extension - -Before registering any commands you have to instantiate new instance of the [`IInteractions`] class, which is an extension for -nyxx that provides slash command and message components functionality. - -```dart -import 'package:nyxx/nyxx.dart'; -import 'package:nyxx_interactions/nyxx_interactions.dart'; -``` - -Make sure you have imported `nyxx_interactions` or `nyxx_commands` before you proceed. - -```dart -final bot = NyxxFactory.createNyxxWebsocket("", GatewayIntents.allUnprivileged); -final interactions = IInteractions.create(WebsocketInteractionBackend(bot)); -``` - -
- -The [`IInteractions`] class contains all the methods and utils needed to register and handle slash commands. - -
- -## Registering commands - -Nyxx provides an easy to use interface for registering commands to the Discord API and internal handlers to provide functionality to a command. Commands can be registered on the API and added internally so that the bot can respond to them via websocket. - -
- -To register an command use the [`registerSlashCommand`] method which takes instance of the [`SlashCommandBuilder`] class. -[`SlashCommandBuilder`] provides all the information needed for the framework and API about how to handle a given slash command. - -
- -[`SlashCommandBuilder`] allows you to build commands with the following properties: - -```dart -/// Command name to be shown to the user in the Slash Command UI -final String name; - -/// Command description shown to the user in the Slash Command UI -final String? description; - -/// If people can use the command by default or if they need permissions to use it. -final bool defaultPermissions; - -/// The guild that the slash Command is registered in. This can be null if its a global command. -Snowflake? guild; - -/// The arguments that the command takes -List options; - -/// Permission overrides for the command -List? permissions; - -/// Target of slash command if different that SlashCommandTarget.chat - slash command will -/// become context menu in appropriate context -SlashCommandType type; -``` - -
- -This example registers a `ping` command that responds with `"pong"`: - -```dart -final interactions = IInteractions.create(WebsocketInteractionBackend(bot)); -// Creates instance of slash command builder with name, description and sub options. -// Its used to synchronise commands with discord and also to be able to respond to them. -// SlashCommandBuilder allows to register handler for slash command that you will be able -// to respond to command event. -final singleCommand = SlashCommandBuilder("ping", "Simple command that responds with `pong`", []) - ..registerHandler((event) async { - // Handler accepts a function with parameter of SlashCommandInteraction which contains - // all of the stuff needed to respond to interaction. - // From there you have two routes: ack and then respond later or respond immediately without ack. - // Sending ack will display indicator that bot is thinking and from there you will have 15 mins to respond to - // that interaction. - await event.respond(MessageBuilder.content("Pong!")); - }); -// This is for people using nyxx_interactions. -interactions - ..registerSlashCommand(singleCommand) - // Synchronises the command so it can be deployed. - ..syncOnReady(); -``` - -
- -We specified the name of the command as `ping` and provided a short description so that the user would now what the command does. We also invoked the [`registerHandler`] method that registers an internal callback so that the command could be responded to by the bot. In that case we only respond with a [`MessageBuilder`] with a content of `Pong!`. - -
- -#### Subcommands - -Subcommands are handled by adding instances of [`CommandOptionBuilder`] to [`SlashCommandBuilder`] via the [`options`] parameter in the constructor. In the Discord API, subcommands are just options in a base command and are handled in the same way. - -[`CommandOptionBuilder`] has a [`registerHandler`] method which allows you to register callback that will be invoked when client receives an interaction, just like the base slash command. - -> Note that [`registerHandler`] cannot be executed on [`CommandOptionBuilder`] that has a type other than [`CommandOptionType.subCommand`]. - -
- -For example, if we want to have a command named `game` and few different games as subcommands: - -```dart -// If you want your command to have subcommand you don't need to register handler -// for main handler because only sub commands will be invokable. -// In list for options you can create new instances of sub commands with -// commands handlers that command could be responded by bot. -final subCommand = SlashCommandBuilder("game", "This is example game command", [ - subCommandFlipGame -]); - -// Subcommand event handler receives same SlashCommandInteraction parameter with all -// info and tools need to respond to an interaction -final subCommandFlipGame = CommandOptionBuilder(CommandOptionType.subCommand, "coinflip", "Coin flip game") - ..registerHandler((event) async { - final result = Random().nextBool() ? "tail" : "heads"; - - await event.respond(MessageBuilder.content("You flipped: $result")); - }); -``` - -
- -### Syncing commands - -Registered commands need to be synced with Discord's API. After calling [`IInteractions#syncOnReady`], the [`nyxx_interactions`] framework will perform a bulk override of registered command which means that new commands will be added, existing commands will be updated, and commands that are missing will be erased from the API. Global commands have ~1h long caching span, so they will be available after approx. 1 hour and guild commands are available instantly. - -
- -#### Sync types inside nyxx - -Nyxx provides an interface to customise syncing logic. Classes implementing [`ICommandsSync`] can be passed to [`IInteractions#syncOnReady`] to customise how syncing behaves. [`nyxx_interactions`] provides two options by default: - -- [`ManualCommandSync`]: A `true`/`false` switch indicating whether commands should be synced; -- [`LockFileCommandSync`]: Creates a lock file storing registered commands and only sync if significant changes have been made. - -The default is [`ManualCommandSync`] and by default commands sync on each bot startup, so if you already registered your commands and you won't make any further changes to their properties you can pass [`ManualCommandSync`] instance with `false` and commands won't be synced with Discord to avoid API abuse. - -
- -### Responding to commands - -The initial response to a slash command interaction can either be a response or an acknowledgement. The initial response must be sent within 3 seconds or the commands will be marked as failed in the user's UI, but after acknowledging you can respond for up to 15 minutes. - -So, to properly handle the interaction from a code perspective you have to respond or acknowledge in 3 seconds and then respond in 15 mins: - -```dart -..registerHandler((event) async { - await event.acknowledge(); // After that you have 15 mins to call event.respond - - await event.respond(MessageBuilder.content("Respond")); -}); -``` - -
- -#### Ephemeral responses - -Messages can sent as ephemeral responses which means that the message will only be visible for the user that invoked the command in public chat, like `Clyde` in the Discord client. - -[`acknowledge`] and [`respond`] have an optional parameter `hidden` which allows to specify if the response should be ephermal or not: - -```dart -..registerHandler((event) async { - await event.acknowledge(); // After that you have 15 mins to event.respond - - await event.respond(MessageBuilder.content("Respond"), hidden: true); -}); -``` - -[`nyxx_interactions`]: https://github.com/nyxx-discord/nyxx_interactions -[`nyxx_commands`]: https://github.com/nyxx-discord/nyxx_commands -[`IInteractions`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/IInteraction-class.html -[`registerSlashCommand`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/IInteractions/registerSlashCommand.html -[`SlashCommandBuilder`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/SlashCommandBuilder-class.html -[`registerHandler`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/CommandOptionBuilder/registerHandler.html -[`MessageBuilder`]: https://pub.dev/documentation/nyxx/latest/nyxx/MessageBuilder-class.html -[`CommandOptionBuilder`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/CommandOptionBuilder-class.html -[`options`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/CommandOptionType-class.html -[`CommandOptionType.subCommand`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/CommandOptionType/subCommand-constant.html -[`IInteractions#syncOnReady`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/IInteractions/syncOnReady.html -[`ICommandsSync`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/ICommandsSync-class.html -[`ManualCommandSync`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/ManualCommandSync-class.html -[`LockFileCommandSync`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/LockFileCommandSync-class.html -[`acknowledge`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/IInteractionEventWithAcknowledge/acknowledge.html -[`respond`]: https://pub.dev/documentation/nyxx_interactions/latest/nyxx_interactions/IInteractionEventWithAcknowledge/respond.html diff --git a/docs/guides/writing_plugins.mdx b/docs/guides/writing_plugins.mdx new file mode 100644 index 00000000..e41f24ac --- /dev/null +++ b/docs/guides/writing_plugins.mdx @@ -0,0 +1,132 @@ +--- +title: Writing plugins +author: Abitofevrything +timestamp: 2023-10-16 +category: guides +sidebar_position: 3 +--- + +Plugins in nyxx are a way to create modular functionality that can be easily added or removed from +clients. There are some offical plugins - including `logging` and `cliIntegration` in the `nyxx` +package, but also `CommandsPlugin` from `nyxx_commands` or `Pagination` from `nyxx_extensions` - but +you can also create your own plugins for your own functionality. + +## Using plugins + +Plugins can be added to a client by passing them to the `plugins` list in `ClientOptions` when +creating your client. For example, this client registers the `logging` plugin, the `cliIntegration` +plugin, the `PluginA()` plugin and the `PluginB()` plugin: +```dart +final client = await Nyxx.connectGateway( + 'TOKEN', + GatewayIntents.allUnprivileged, + options: GatewayClientOptions(plugins: [ + logging, + cliIntegration, + PluginA(), + PluginB(), + ]), +); +``` + +Plugins can be easily enabled or disabled by adding or removing them from this list, allowing you to +quickly enable or disable certain features of your bot. + +Some plugins in the official nyxx packages provide a ready-to-use instance. This is the case with +the `logging` and `cliIntegration` plugins above. You can always create your own instances of the +`Logging` or `CliIntegation` classes instead. + +## Plugin basics + +The easiest way to create a plugin is to extend the `NyxxPlugin` class. The type argument allows you +to specify which client types your plugin can be added to. + +A simple plugin that logs messages received from clients it is added to would look like this: +```dart +class LogMessages extends NyxxPlugin { + @override + void afterConnect(NyxxGateway client) { + client.onMessageCreate.listen((event) { + final message = event.message; + + // logger is provided by the plugin interface. + logger.info('${message.id} sent by ${message.author.id} in ${message.channelId}!'); + }); + } +} +``` + +Plugins can override the `beforeConnect`, `afterConnect`, `beforeClose` and `afterClose` methods to +run code at different moments in the client's lifecycle. These methods can be async and will pause +the associated method on the client until the returned future completes. + +`beforeConnect` and `afterConnect` run during calls to the `Nyxx.connectXXX` methods. +- `beforeConnect` runs before the client establishes any connections to Discord, so it's a good idea + to put any plugin initialisation here. +- `afterConnect` runs once the client has opened a connection to Discord. This is the first time + your plugin will be able to access the client, so any setup requiring the client (e.g listening to + events) should go here. + +:::caution +Putting plugin initialisation in `afterConnect` will cause any events received during the plugin's +initialisation to be dropped. The client is only returned to the caller after the call to +`afterConnect` completes. +::: + +`beforeClose` and `afterClose` run during calls to `client.close()`. +- `beforeClose` runs before the client has disconnected from Discord. Put any cleanup that requires + the client here. +- `afterClose` runs once the client has completely disconnected from Discord. Since the client is + disconnected, it can no longer be used and will not be passed to your plugin. + +## Plugin states + +By default, plugins can be added to multiple clients at once, and the same plugin instance will +manage multiple client. Plugin states are a way for your plugins to create a state for each client +they are attached to. + +You can create a state for your plugin by implementing the `NyxxPluginState` class and overriding +the `createState` method in your plugin. Any functionality that should be run in a separate instance +for each client should then be moved into the state class, which has the same methods as the main +plugin class: `beforeConnect`, `afterConnect`, `beforeClose` and `afterClose`. + +:::caution +The methods in the state class should call the super-method to ensure that the main plugin class' +methods are also called. + +Whether the method is called before or after your own code doesn't matter, +::: + +For example, this plugin creates a timer for each client that periodically logs the client's guild +cache size: +```dart +class LogGuildCache extends NyxxPlugin { + @override + NyxxPluginState createState() => LogGuildCacheState(this); +} + +class LogGuildCacheState extends NyxxPluginState { + LogGuildCacheState(super.plugin); + + late final Timer timer; + + @override + void afterConnect(NyxxRest client) { + super.afterConnect(client); + + timer = Timer.periodic(const Duration(seconds: 5), (timer) { + logger.info('Guild cache size: ${client.guilds.cache.length}'); + }); + } + + @override + void afterClose() { + super.afterClose(); + + timer.cancel(); + } +} +``` + +Each client this plugin is added to will have its own instance of `LogGuildCacheState`, so different +clients will have a different timer. diff --git a/docs/guides/writing_your_first_bot.mdx b/docs/guides/writing_your_first_bot.mdx deleted file mode 100644 index 26d874ed..00000000 --- a/docs/guides/writing_your_first_bot.mdx +++ /dev/null @@ -1,170 +0,0 @@ ---- -title: Writing your first bot -authors: l7ssha -date: 2021-09-20 -category: guides -sidebar_position: 1 -description: This tutorial shows how to create your first bot, with a simple ping-pong command. -hide_table_of_contents: true ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -### Creating project - -You can create a simple project using the built-in dart command `dart create`: - - - -```bash -$ dart create -t console-simple your-project-name && cd ./your-project-name -``` - - - - -```ps1 -> (dart create -t console-simple your-project-name) -and (cd ./your-project-name) -``` - - - - -Replace `your-project-name` with your desired name. - -This command will create few files that are needed to start a project. There will be a `pubspec.yaml` with basic project info and dependency declaration. There will also be a file created with name of your project in `bin` directory. This is the main file that you would have to run to start the bot. - -To add nyxx to your project, run `dart pub add nyxx`. Your `pubspec.yaml` file should then look similar to this: - -```yml title="./pubspec.yaml" -name: test -description: A simple command-line application. -version: 1.0.0 -# homepage: https://www.example.com - -environment: - sdk: ">=2.14.2 <3.0.0" - -dependencies: -# highlight-next-line - nyxx: ^3.0.0 # You may have a different version if you follow this guide - -dev_dependencies: - lints: ^1.0.0 -``` - -Now when if you execute the `dart pub get` command in the project's root directory, nyxx should be pulled from repos: - -``` -$ dart pub get -Resolving dependencies... -+ async 2.8.2 -+ charcode 1.3.1 -+ collection 1.15.0 -+ http 0.13.3 -+ http_parser 4.0.0 -+ logging 1.0.2 -+ meta 1.7.0 -+ nyxx 3.0.0 -+ path 1.8.0 -+ pedantic 1.11.1 -+ source_span 1.8.1 -+ string_scanner 1.1.0 -+ term_glyph 1.2.0 -+ typed_data 1.3.0 -Changed 14 dependencies! -``` - -### First code - -With everything set up, we can now start coding our bot, but let's start with something easy. -This is simple bot which replies to `!ping` with `pong`. - -:::caution - -This example use the privilegied gateway intent message content. -If you don't want to make text commands; take a look [at slash commands](./slash_commands.md 'Slash Commands') or [command handling](./command_handling.md 'Command Handling') which both will handle interactions (Message Commands, Slash, User). - -::: - -```dart title="./bin/your_project_name.dart" -import 'package:nyxx/nyxx.dart'; - -void main() { - // highlight-start - final bot = NyxxFactory.createNyxxWebsocket("TOKEN", GatewayIntents.allUnprivileged | GatewayIntents.messageContent); - - bot.eventsWs.onMessageReceived.listen((event) { - if (event.message.content == "!ping") { - event.message.channel.sendMessage(MessageBuilder.content('Pong!')); - } - }); - - bot.connect(); - // highlight-end -} -``` - -Let's explain what each line does: - -```dart title="./bin/your_project_name.dart" -final bot = NyxxFactory.createNyxxWebsocket("TOKEN", GatewayIntents.allUnprivileged | GatewayIntents.messageContent); -``` - -Here we are creating and starting a new client with your token and desired gateway intents. -In this case the bot will request all intents except privileged ones, but we add the privilegied intent message content to respond to the user. - -```dart -bot.eventsWs.onMessageReceived.listen((event) { - if (event.message.content == "!ping") { - event.message.channel.sendMessage(MessageBuilder.content("Pong!")); - } -}); -``` - -Here we are subscribing to the `onMessageReceived` stream which will 'deliver' new messages to the handler. -The function is invoked with `MessageEvent` objects which contain `Message` objects for you to use. - -```dart title="./bin/your_project_name.dart" -if (event.message.content == "!ping") { - event.message.channel.sendMessage(MessageBuilder.content("Pong!")); -} -``` - -Here we check if the message's content is equal to `!ping` and if it is we'll send `pong` message to the same channel. To send messages we have to access the channel which is in form of a `Cacheable` object. This is because channel might not -be cached inside client. - -```dart title="./bin/your_project_name.dart" -bot.connect(); -``` -Here, we simply request our application to connect via Websocket to Discord. - -So, let's try out! - -Now, let's look how to respond to a message. -```dart title="./bin/your_project_name.dart" -if (event.message.content == '!ping') { - //highlight-start - final replyBuilder = ReplyBuilder.fromMessage(event.message); - - event.message.channel.sendMessage(MessageBuilder.content('Pong!')..replyBuilder = replyBuilder); - //highlight-end -} -``` - -But the bot is mentionning us when it replies, so we'll need to use the `AllowedMentions` class -```dart title="./bin/your_project_name.dart" -if (event.message.content == '!ping') { - final replyBuilder = ReplyBuilder.fromMessage(event.message); - //highlight-next-line - final allowedMentions = AllowedMentions()..allow(reply: false); - - //highlight-next-line - event.message.channel.sendMessage(MessageBuilder.content('Pong!')..replyBuilder = replyBuilder..allowedMentions = allowedMentions); -} -``` -And now, if you re-execute the command, you shouldn't be mentionned when the bot replies. -
- -That's all you need to create your first command. \ No newline at end of file diff --git a/docs/intro.md b/docs/intro.md index 4a79fd6e..191d694b 100644 --- a/docs/intro.md +++ b/docs/intro.md @@ -5,22 +5,16 @@ sidebar_position: 1 timestamp: 2021-08-26 --- -# [nyxx] documentation +# Getting Started -Documentation and guides for the [nyxx] Discord api library. +### Creating a bot +- [This is my first Discord bot](tutorials/writing_your_first_bot) +- [I've already written bots in other languages](guides/coming_from_another_framework) -## Info +Tutorials for other topics are available in the sidebar. We also have a list of +[external Dart resources](dart_resources) if you need to learn Dart first. -This repo contains documentation and guides to help people with learning dart and creating Discord bots with nyxx. Many subjects are covered such as: -- How to create a bot account -- Setting up a basic hello world project -- Picking your message intents -- Using interactions -- and more... +### Community -## Contributing - -If you're interested in contributing to the documentation or guides, you should check out our [GitHub Projects](https://github.com/nyxx-discord/nyxx-docs/projects) page -or [open issues](https://github.com/nyxx-discord/nyxx-docs/issues). - -[nyxx]: https://github.com/nyxx-discord/nyxx \ No newline at end of file +Need extra help that isn't listed on this website? Join [our Discord server](https://discord.gg/nyxx) +or reach out to us [on GitHub](https://github.com/nyxx-discord/nyxx). diff --git a/docs/resources/_category_.json b/docs/resources/_category_.json deleted file mode 100644 index b4b79dbd..00000000 --- a/docs/resources/_category_.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "position": 3, - "label": "Dart Resources" -} diff --git a/docs/tutorials/_category_.json b/docs/tutorials/_category_.json new file mode 100644 index 00000000..2df27c24 --- /dev/null +++ b/docs/tutorials/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Tutorials", + "position": 2 +} diff --git a/docs/tutorials/creating_a_bot_account.md b/docs/tutorials/creating_a_bot_account.md new file mode 100644 index 00000000..b51bf23b --- /dev/null +++ b/docs/tutorials/creating_a_bot_account.md @@ -0,0 +1,113 @@ +--- +title: Creating a bot account +author: One-Nub +timestamp: 2021-09-22 +category: tutorials +sidebar_position: 1 +--- + +### Creating a bot account + +To get started with nyxx, you'll need a Discord bot account! + +- Head to the [Discord developers](https://discord.com/developers) site. + You'll be prompted to login if you aren't already. +- Once you are signed in, you should be redirected to the + [applications](https://discord.com/developers/applications) page. +- Look towards to the top right and click the **New Application** button. + + ![Application button icon](../../static/img/tutorial/new_application_button.png) +- Type in a name for the application, this will be the initial name of your bot account. Then click + **Done**. + + ![New application menu](../../static/img/tutorial/create_application_page.png) +- On the left menu, select the **Bot** tab, then look to the right and click the **Add Bot** button. + + ![Add bot page](../../static/img/tutorial/add_bot_page.png) +- You will be presented with a menu asking if you _really_ want to add a bot, which we do so click + **Yes, do it!** + +### Getting your bot's token + +:::danger +Do NOT share or publish this token anywhere publicly. If you do, anyone will be able to use your +bot account to perform any bot actions - such as banning users and leaving guilds. +::: + +- Once your bot account is made, on that same **Bot** tab, there will be a section labeled + **Token**. +- To get your bot token, click on the **Reset** button. Discord will generate a new token so we can + use it to run our bot. + + ![Reset Token](../../static/img/tutorial/bot_token_reset.jpg) +- Next, click on **Yes, do it!** button to generate a new token. + + ![Yes do it button](../../static/img/tutorial/bot_token_yes_do_it.jpg) +- If you enabled the two factor authentication, you should encounter this window. Enter your auth + codes (there are in an authenticator app (depends on which you chose)), **the backup codes given + from Discord will not work**. + + ![2Fa Codes](../../static/img/tutorial/bot_token_2fa.png) + +- Now you can finally copy your bot token. + + ![Copy Bot Token](../../static/img/tutorial/copy_bot_token.jpg) + +:::tip +In the event you share your token, be sure to press the **Reset** button so the old token can't be +used anymore. +::: + +### Inviting your bot to a server + +Now that we've gotten this far, it's probably important that we invite the bot to your server to +actually test commands in! + +- First, head to the **OAuth2** tab found in the left menu on your bot's application page. +- Then scroll down to the OAuth2 URL Generator and select the **bot** checkbox under the **scopes** + section. If you wish to use slash commands as well, check the **application.commands** scope. + + ![OAuth2 Scopes with bot and application.commands checked](../../static/img/tutorial/select_bot_scopes.png) +- Scroll down some more so you can see the **Bot Permissions** section. This is where you get to + select which permissions your bot has when it joins a server. For basic usage, select the **View + Channels and Send Messages** permissions, and then scroll up to the generated URL and click the + **Copy** button on the right. + + ![Bot permissions with send messages and view channels checked](../../static/img/tutorial/select_bot_permissions.png) +- Finally, head to that URL in your browser and add your bot! + +### Making your bot public (or private) + +- Head to the **Bot** tab found in the left menu on your bot's application page. +- Under the **Authorization Flow** section, find the **Public Bot** toggle. + + ![Public bot toggle button](../../static/img/tutorial/make_bot_public.png) +- To make your bot public so anyone can add it to their server, change the toggle to the right (so + it's blurple); and do the inverse to make it private so only you can add the bot to servers. By + default your bot should be public. + +### Privileged Gateway Intents + +Gateway intents make it so your bot can only recieve specific intents to lower the processing power +necessary for the bot. Some of these intents are limited since they can contain potentially more +sensitive data. + +These include: + +- **Presence Intent**: This toggle will enable you to recieve events when someone's presence or info + is updated. This includes their status, username changes, avatar changes, as well as other similar + info. +- **Server Members Intent**: This toggle will enable you to recieve events when guild members join + and leave the server, when members are updated, who was added to and removed from a thread, and + the ability to list guild members. +- **Message Content Intent**: This toggle will enable you to receive the content of messages even + when the bot isn't mentioned in the message. + + +To toggle these intents: + +- Head to the **Bot** tab found in the left menu on your bot's application page. +- Find the **Privileged Gateway Intents** section. + + ![Priviliged gateway intents section](../../static/img/tutorial/priv_gw_intents.png) +- Toggle the intents as necessary for your bot. diff --git a/docs/tutorials/using_nyxx_commands.mdx b/docs/tutorials/using_nyxx_commands.mdx new file mode 100644 index 00000000..176aac07 --- /dev/null +++ b/docs/tutorials/using_nyxx_commands.mdx @@ -0,0 +1,565 @@ +--- +title: Using nyxx_commands +authors: abitofevrything +date: 2023-09-30 +category: tutorials +sidebar_position: 3 +--- + +`nyxx_commands` is a command framework maintained by the nyxx devs for use in bots using nyxx. It +provides a way to create commands without messing around with argument parsing or handling command +interactions, and provides an interface for chaining multiple interactions together in the same +callback, allowing for commands to have multiple "steps". + +In this tutorial, we'll implement a slightly overengineered `ping` command which displays various +latency statistics about the bot. + +This guide assumes you know how to create a basic bot with nyxx. If you don't, check out +[Writing your first bot](writing_your_first_bot.mdx) before continuing. + +## Installing nyxx_commands + +`nyxx_commands` is a separate package to `nyxx`, so we'll first need to add it to our project: +running `dart pub add nyxx_commands` will add nyxx_commands to our project. We'll also be using +`nyxx` to create our client, so make sure both packages are installed. + +## Creating a simple command + +For now, we'll make a simple ping command that always responds with the client's HTTP latency, +accessible as `client.httpHandler.latency`. + +Here's the code to do that: +```dart +// Imports will be ommitted in code samples below +import 'package:nyxx/nyxx.dart'; +import 'package:nyxx_commands/nyxx_commands.dart'; + +final ping = ChatCommand( + 'ping', + "Get the bot's latency", + (ChatContext context) async { + // ... + }, +); +``` + +To create a command in nyxx_commands, we create an instance of one of the three command classes: + - `ChatCommand`s are commands that are run by pressing `/` and choosing the command in a text + channel, or by using the bot's prefix with the command name. These are the most common. + - `UserCommand`s are commands that can be run by right clicking on a user in Discord. + - `MessageCommand`s are commands that can be run by right clicking on a message in Discord. + +The `ChatCommand` constructor we're calling takes three arguments: + 1. The name of the command (`ping`). This name has certain restrictions, using lowercase letters + and dashes or underscores for spacing works well. + 2. A description for the command. This is shown in the command selection menu that appears when + pressing `/` in a text channel. + 3. The function to be called when someone runs our command, which we haven't completed yet. + +:::caution +You might notice that the command callback specifies the type of `context` instead of leaving it +blank and letting Dart infer it. You can omit the types of arguments when using `UserCommand`s or +`MessageCommand`s, but they are **required** when using `ChatCommand`. + +This is because the type of the callback is `Function` and does not specify the types of any of the +arguments to support argument parsing (which we'll see later in the tutorial). +::: + +We can access the client from the context using `context.client` to calculate the latency in our +command: +```dart +final ping = ChatCommand( + 'ping', + "Get the bot's latency", + (ChatContext context) async { + final latency = context.client.httpHandler.latency; + final formattedLatency = + (latency.inMicroseconds / Duration.microsecondsPerMillisecond).toStringAsFixed(3); + + // ... + }, +); +``` + +Finally, to respond to the user running the command, we use the `context.respond` method: +```dart +final ping = ChatCommand( + 'ping', + "Get the bot's latency", + (ChatContext context) async { + final latency = context.client.httpHandler.latency; + final formattedLatency = + (latency.inMicroseconds / Duration.microsecondsPerMillisecond).toStringAsFixed(3); + + await context.respond(MessageBuilder(content: '${formattedLatency}ms')); + }, +); +``` + +## Adding our command to a client + +Now that we've created our command, we need to add it to a client so that it will be registered with +Discord and will run our function when the command is executed. + +First, we create a `CommandsPlugin` that we will register our command to: +```dart +// ... command code here ... + +void main() async { + final commands = CommandsPlugin(prefix: mentionOr((_) => '!')); +} +``` + +The `CommandsPlugin` constructor allows you to configure some of the behavior of nyxx_commands. +Here, we provide a `prefix` so that users can also run our command using text messages: either a +mention of the client's user or the string `!` will count as a prefix. + +Next, we'll create a client using that plugin: +```dart +// ... + +void main() async { + final commands = CommandsPlugin(prefix: mentionOr((_) => '!')); + + await Nyxx.connectGateway( + 'TOKEN', + GatewayIntents.allUnprivileged | GatewayIntents.messageContent, + options: GatewayClientOptions(plugins: [logging, cliIntegration, commands]), + ); +} +``` + +Because we want our users to be able to use text messages to run commands, we'll need to request the +message content intent. This is a privileged intent and will need to be enabled in Discord's +application page, which you can find out how to do [here](creating_a_bot_account#privileged-gateway-intents). + +Finally, we register our command to the plugin: +```dart +// ... + +void main() async { + final commands = CommandsPlugin(prefix: mentionOr((_) => '!')); + + commands.addCommand(ping); + + await Nyxx.connectGateway( + 'TOKEN', + GatewayIntents.allUnprivileged | GatewayIntents.messageContent, + options: GatewayClientOptions(plugins: [logging, cliIntegration, commands]), + ); +} +``` + +And we're good to go! + +## Testing our command + +We now have a fully functional bot with a ping command. Making sure to replace the `TOKEN` with your +bot's actual token, you can run the program and test the command. You should see a line indicating +the command was registered in the logs: +``` +[2023-09-30 18:47:54.654105] [INFO] [Commands] Synced 1 commands to Discord +``` + +Go to a text channel the bot is in and press the `/` key. The command menu should appear and your +bot should appear in the sidebar. You might have to reload your Discord client to get it to appear. + +![Bot in command menu](../../static/img/tutorial/bot_in_command_menu.png) + +Typing in `/ping` will show us the command we just created... + +![Bot in command menu](../../static/img/tutorial/ping_command_in_command_menu.png) + +...and we can press enter to execute it, after which our bot will respond with its latency. + +![Result of running ping command](../../static/img/tutorial/simple_ping_command_executed.png) + +We can also run our command using the prefixes we defined by sending a message to the channel. + + +![Result of running ping command](../../static/img/tutorial/simple_ping_command_executed_text_mode.png) + +## Using a selection menu + +:::info +From here on out, we'll be omitting the `main()` function from the code samples, as well as the +imports. We'll show them if they needs changing. +::: + +nyxx includes two other latency measurements for the different parts of the API: +`client.httpHandler.realLatency` provides the actual network latency and `client.gateway.latency` +provides the latency on the Gateway connection. Let's enhance our ping command to let users select +which latency metric they want to see. + +For this, we need to let users of our command choose between multiple different options. +nyxx_commands provides a way to do this using `context.getSelection`. In our case, we'll choose one +of the three strings `Basic` (normal http latency), `Real` (real network latency) or `Gateway` +(Gateway latency). + +Let's remove the code from the `ping` command callback and add the selection: +```dart +final ping = ChatCommand( + 'ping', + "Get the bot's latency", + (ChatContext context) async { + final selection = await context.getSelection( + ['Basic', 'Real', 'Gateway'], + MessageBuilder(content: 'Choose the latency metric you want to see'), + ); + + // ... + }, +); +``` + +Next, we fetch the latency value for the selection, and we add back our response code to send the +latency to the user: +```dart +final ping = ChatCommand( + 'ping', + "Get the bot's latency", + (ChatContext context) async { + final selection = await context.getSelection( + ['Basic', 'Real', 'Gateway'], + MessageBuilder(content: 'Choose the latency metric you want to see'), + ); + + final latency = switch (selection) { + 'Basic' => context.client.httpHandler.latency, + 'Real' => context.client.httpHandler.realLatency, + 'Gateway' => context.client.gateway.latency, + _ => throw StateError('Unexpected selection $selection'), + }; + + final formattedLatency = + (latency.inMicroseconds / Duration.microsecondsPerMillisecond).toStringAsFixed(3); + + await context.respond(MessageBuilder(content: '${formattedLatency}ms')); + }, +); +``` + +When we restart the bot and run the command, we can see it now prompts us to select a latency +metric. + +![Bot prompting for selection](../../static/img/tutorial/ping_command_empty_selection.png) + +Selecting different metrics gives us different latency values. + +![Command execution with different selections](../../static/img/tutorial/ping_command_multiple_selections_string.png) + +## Using arguments + +Using selection menus is powerful and looks nice in the Discord UI, but it _is_ slow. Let's add +arguments to our command so power users can specify which metric they want to see before the command +is even executed. + +To do this, we simply add an argument to our function: +```dart +final ping = ChatCommand( + 'ping', + "Get the bot's latency", + (ChatContext context, [String? selection]) async { + selection ??= await context.getSelection( + ['Basic', 'Real', 'Gateway'], + MessageBuilder(content: 'Choose the latency metric you want to see'), + ); + + // ... + }, +); +``` + +:::caution +By making our argument nullable, `getSelection` is now looking for a selection of type `String?`. We +want a `String`, so we have to specify the type argument explicitly. +::: + +By making the type of the argument `String`, nyxx_commands will convert the user's input to a +`String` for us to use in our function. This isn't particularily useful, but it also works for other +types such as `int` and even some types from nyxx like `User`. The argument is also optional so that +users can omit it when running the command. + +Now, when we restart the bot and open the command menu we can see that the command has an optional +argument (you might have to restart your client again or wait a few minutes for the command to +update). + +![Bot in command menu](../../static/img/tutorial/ping_command_in_command_menu_with_arguments.png) + +If we execute the command and set the `selection` argument to `Real`, we get the bot's real latency, +without opening the selection menu. + +![Bot in command menu](../../static/img/tutorial/ping_command_executed_with_argument.png) + +Since the argument is optional, we can also omit it, in which case the selection menu will be used +instead. + +## Using argument annotations + +One problem with this method is what happens when the user passes an invalid argument, such as +`Cake`. Trying to get the client's cake latency will of course not work since the developers ate it +all. Instead, we get an error: +``` +[2023-09-30 20:30:35.221988] [SHOUT] [Commands] Uncaught exception in command +Error: Command Exception: Bad state: Unexpected selection Cake +Stack trace: +#0 ping. (file:///home/abitofevrything/Programming/nyxx/nyxx_docs/test.dart:17:12) +#1 Function._apply (dart:core-patch/function_patch.dart:11:71) +#2 Function.apply (dart:core-patch/function_patch.dart:35:12) +#3 ChatCommand.invoke (package:nyxx_commands/src/commands/chat_command.dart:432:22) + +#4 EventManager.processInteractionCommand (package:nyxx_commands/src/event_manager.dart:197:5) + +#5 CommandsPlugin.afterConnect. (package:nyxx_commands/src/commands.dart:227:13) + +``` + +This isn't great, since the user who ran the command is left with a loading screen that will +eventually (after 15 minutes) turn into an error message. Fortunately, nyxx_commands provides a way +for developers to let users know what options are available for an argument, by using the `@Choices` +annotation on the argument: +```dart +final ping = ChatCommand( + 'ping', + "Get the bot's latency", + ( + ChatContext context, [ + @Choices({ + 'Basic latency': 'Basic', + 'Real latency': 'Real', + 'Gateway latency': 'Gateway', + }) + String? selection, + ]) async { + // ... + }, +); +``` + +The `@Choices` annotation takes a map where the keys are the text displayed in the UI and the values +are what is actually passed to the command callback. In this case, we make it clear we are referring +to latencies, while preserving the same values we send to our function. + +:::caution +Discord enforces a maxmimum of 15 choices per argument. +::: + +We can also use the `@Description` annotation to provide a description for our argument, which you +might have noticed was missing earlier: +```dart +final ping = ChatCommand( + 'ping', + "Get the bot's latency", + ( + ChatContext context, [ + @Choices({ + 'Basic latency': 'Basic', + 'Real latency': 'Real', + 'Gateway latency': 'Gateway', + }) + @Description('The type of latency to view') + String? selection, + ]) async { + // ... + }, +); +``` + +Now, when we restart our bot, restart our client and open the command menu (you get the drill now), +we can see our command has set choices in the UI: + +![Bot in command menu](../../static/img/tutorial/ping_command_in_command_menu_with_choices.png) + +## Using converters + +We can still do better than choices. If a user runs our command using a text message and provides +an invalid argument (e.g `!ping Cake`), they can bypass our choices and still cause the same error. + +The way to make your command reject invalid input is to use converters. Converters take the input +from Discord and transform it into the type your command wants - like `String` in this case. +`stringConverter` is the simplest converter, just returning its input, but nyxx_commands comes with +a few built in converters for types like `int`, `bool` or `User` (and more!) + +We need to create our own converter that only accepts the strings `Basic`, `Real`, or `Gateway`. +There are many ways to create converters, but the simplest is to use `SimpleConverter`: +```dart +String latencyTypeToString(String type) => type; + +const latencyTypeConverter = SimpleConverter.fixed( + elements: ['Basic', 'Real', 'Gateway'], + stringify: latencyTypeToString, +); + +// ... +``` + +:::info +We need to provide a function to transform our values to a string to be shown in the UI and used for +conversion. Since our values are already strings, `latencyTypeToString` just returns the input. +However, if you are making a converter for a different type, you'll need to tell nyxx_commands how +to convert your type to a `String`. +::: + +:::info +Our converter needs to be `const` so it can be used in the `@UseConverter` annotation. This is why +`latencyTypeToString` is declared as its own function instead of using a function literal in the +`SimpleConverter.fixed` constructor, as function literals are not `const` but top-level functions +are. + +The `const` requirement also applies to the `elements` you provide to the converter. If the type the +converter is for isn't `const`, use the default `SimpleConverter` constructor instead, which will +call a function to get its elements. +::: + +Once we've created our converter, we can replace our `@Choices` annotation with an `@UseConverter` +annotation: +```dart +final ping = ChatCommand( + 'ping', + "Get the bot's latency", + ( + ChatContext context, [ + @UseConverter(latencyTypeConverter) + @Description('The type of latency to view') + String? selection, + ]) async { + // ... + }, +); +``` + +Now, if we run our command with an invalid argument, we still get an error. However, the error is +different this time: +``` +[2023-09-30 21:12:59.460172] [SHOUT] [Commands] Uncaught exception in command +Error: Command Exception: Could not parse input StringView[index=0 (current=" "), end=5, buffer=" Cake"] to type "CommandOptionType(3)" +Stack trace: +#0 Logger.log (package:logging/src/logger.dart:222:33) +#1 ... +``` + +The error thrown now is a `ConverterFailedException`, and this is the error thrown by all converters +when the input is invalid. This means we can handle all cases of invalid input in one place, instead +of handling each case individually (e.g by catching the `StateError` we threw earlier). + +To do this, we listen to the `onCommandError` stream and disable the automatic logging of errors ( +we'll log them ourselves from now on) in our `main()` function: +```dart +// ... + +void main() async { + final commands = CommandsPlugin( + prefix: mentionOr((_) => '!'), + options: CommandsOptions(logErrors: false), + ); + + commands.addCommand(ping); + + commands.onCommandError.listen((error) async { + if (error is ConverterFailedException) { + // ConverterFailedException can be thrown during autocompletion, in which case we can't + // respond with an error. This check makes sure we can respond. + if (error.context case InteractiveContext context) { + await context.respond(MessageBuilder( + content: 'Invalid input: `${error.input.remaining}`', + )); + } + } else { + print('Uncaught error: $error'); + } + }); + + await Nyxx.connectGateway( + 'TOKEN', + GatewayIntents.allUnprivileged | GatewayIntents.messageContent, + options: GatewayClientOptions(plugins: [logging, cliIntegration, commands]), + ); +} +``` + +Now, if we try to provide an invalid input, we can see our bot handles it graciously. + +![Bot in command menu](../../static/img/tutorial/ping_command_invalid_input_response.png) + +Converters have several other benefits that aren't immediately obvious here, including adding the +ability to use autocompletion for arguments and allowing custom types to be used in command arguments +and functions like `context.getSelection`. + +:::info +If you create a converter for your own type, instead of using `@UseConverter`, you can add it to +your `CommandsPlugin` instance using `CommandsPlugin.registerConverter`. + +This will make anywhere in your code that uses your type with nyxx_commands use that converter, +and can also be used to make non-const converters. However, if you call `registerConverter` with a +converter for a common type like `String`, all occurences of `String` will use that converter. Not +good in this case, as we don't want to limit every string to be one of `Basic`, `Real` or `Gateway`. +::: + +We've now covered all the basic components of nyxx_commands. Join us at +[our Discord server](https://discord.gg/nyxx) or read the +[API documentation](https://pub.dev/documentation/nyxx_commands) if you want to find out more. + +Here's the complete code for our bot, in case you lost track along the way: +```dart +import 'package:nyxx/nyxx.dart'; +import 'package:nyxx_commands/nyxx_commands.dart'; + +final ping = ChatCommand( + 'ping', + "Get the bot's latency", + ( + ChatContext context, [ + @UseConverter(latencyTypeConverter) + @Description('The type of latency to view') + String? selection, + ]) async { + selection ??= await context.getSelection( + ['Basic', 'Real', 'Gateway'], + MessageBuilder(content: 'Choose the latency metric you want to see'), + ); + + final latency = switch (selection) { + 'Basic' => context.client.httpHandler.latency, + 'Real' => context.client.httpHandler.realLatency, + 'Gateway' => context.client.gateway.latency, + _ => throw StateError('Unexpected selection $selection'), + }; + + final formattedLatency = + (latency.inMicroseconds / Duration.microsecondsPerMillisecond).toStringAsFixed(3); + + await context.respond(MessageBuilder(content: '${formattedLatency}ms')); + }, +); + +void main() async { + final commands = CommandsPlugin( + prefix: mentionOr((_) => '!'), + options: CommandsOptions(logErrors: false), + ); + + commands.addCommand(ping); + + commands.onCommandError.listen((error) async { + if (error is ConverterFailedException) { + // ConverterFailedException can be thrown during autocompletion, in which case we can't + // respond with an error. This check makes sure we can respond. + if (error.context case InteractiveContext context) { + await context.respond(MessageBuilder( + content: 'Invalid input: `${error.input.remaining}`', + )); + } + } else { + print('Uncaught error: $error'); + } + }); + + await Nyxx.connectGateway( + 'TOKEN', + GatewayIntents.allUnprivileged | GatewayIntents.messageContent, + options: GatewayClientOptions(plugins: [logging, cliIntegration, commands]), + ); +} +``` + +Happy coding! diff --git a/docs/tutorials/writing_your_first_bot.mdx b/docs/tutorials/writing_your_first_bot.mdx new file mode 100644 index 00000000..d078c03f --- /dev/null +++ b/docs/tutorials/writing_your_first_bot.mdx @@ -0,0 +1,200 @@ +--- +title: Writing your first bot +authors: l7ssha +date: 2021-09-20 +category: tutorials +sidebar_position: 2 +--- + +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +### Creating project + +You can create a simple project using the built-in dart command `dart create`: + + + +```bash +$ dart create -t console-simple your-project-name && cd ./your-project-name +``` + + + + +```ps1 +> (dart create -t console-simple your-project-name) -and (cd ./your-project-name) +``` + + + + +Replace `your-project-name` with your desired name. + +This command will create few files that are needed to start a project. There will be a +`pubspec.yaml` with basic project info and dependency declaration. There will also be a file created +with name of your project in `bin` directory. This is the main file that you would have to run to +start the bot. + +To add nyxx to your project, run `dart pub add nyxx`. Your `pubspec.yaml` file should then look +similar to this: + +```yml title="./pubspec.yaml" +name: test +description: A simple command-line application. +version: 1.0.0 +# homepage: https://www.example.com + +environment: + sdk: ">=2.14.2 <3.0.0" + +dependencies: + nyxx: ^6.0.0 + +dev_dependencies: + lints: ^1.0.0 +``` + +Now, execute the `dart pub get` command in the project's root directory to fetch all the required +dependencies: + +``` +$ dart pub get +Resolving dependencies... ++ async 2.8.2 ++ charcode 1.3.1 ++ collection 1.15.0 ++ http 1.0.0 ++ http_parser 4.0.0 ++ logging 1.0.2 ++ meta 1.7.0 ++ nyxx 6.0.0 ++ path 1.8.0 ++ pedantic 1.11.1 ++ source_span 1.8.1 ++ string_scanner 1.1.0 ++ term_glyph 1.2.0 ++ typed_data 1.3.0 +Changed 14 dependencies! +``` + +### Creating a bot account + +For the next part of this tutorial, you'll need a **token** for your bot. See +[Creating a Bot Account](creating_a_bot_account.md) for details on how to do this. + +### First code + +With everything set up, we can now start coding our bot, but let's start with something easy. +This is simple bot which replies to messages mentioning the bot. + +Here's the code for this, which we'll explain line by line: +```dart title="bin/your_project_name.dart" +import 'package:nyxx/nyxx.dart'; + +void main() async { + final client = await Nyxx.connectGateway( + 'TOKEN', // Replace this with your bot's token + GatewayIntents.allUnprivileged, + options: GatewayClientOptions(plugins: [logging, cliIntegration]), + ); + + final botUser = await client.users.fetchCurrentUser(); + + client.onMessageCreate.listen((event) async { + if (event.mentions.contains(botUser)) { + await event.message.channel.sendMessage(MessageBuilder( + content: 'Hi There!', + replyId: event.message.id, + )); + } + }); +} +``` + +First, we need to create a client that can connect to Discord's API. To do that, we use the +`Nyxx.connectGateway` method: +```dart +final client = await Nyxx.connectGateway( + 'TOKEN', // Replace this with your bot's token + GatewayIntents.allUnprivileged, + options: GatewayClientOptions(plugins: [logging, cliIntegration]), +); +``` + +The `connectGateway` method creates a client that can execute actions using the API and receive +events from Discord whenever something happens - such as a user sending a message. There are other +ways to use the API, but we won't look at those now. + +The first parameter is the token that the bot will use to communicate with the API. This is the +token that was generated when you [created your bot account](#creating_a_bot_account). Because you +shouldn't ever publish your token, we recommend using an environment variable instead of hard-coding +the token value. + +The second parameter are the intents your client wants to use. Intents are a way of selecting which +events you want Discord's API to send you - which can lighten the load on your bot when it gets +large. Since this bot isn't going to be handling thousands of users, we can just specify that we +want to receive all the unprivileged events. + +:::info + +Notice that we use `GatewayIntents.allUnprivileged` instead of `GatewayIntents.all`. This is because +some intents require authorization from Discord to use as they provide access to potentially +sensitive information. + +See [here](creating_a_bot_account.md#privileged-gateway-intents) to enable and use these. + +::: + +The last parameter are the options we are using to configure our client. Client options allow you to +configure nyxx itself. For now, we just specify that we want to add the `logging` and +`cliIntegration` plugins to our client. + +Next, in order to know whether the bot was mentioned, we need to know who the bot's user is. That's +what `users.fetchCurrentUser()` allows us to do: +```dart +final botUser = await client.users.fetchCurrentUser(); +``` + +The client exposes `Manager`s for running operations on the API. In this case, we use the `users` +manager to fetch the current user (which will be the bot's user). There are other managers for other +types of entities: `channels`, `guilds`, `commands`... + +Finally, we want to run code every time the bot receives a message to check if it was mentioned. For +that, we listen to the `onMessageCreate` stream: +```dart +client.onMessageCreate.listen((event) async { + if (event.mentions.contains(botUser)) { + await event.message.channel.sendMessage(MessageBuilder( + content: 'Hi There!', + replyId: event.message.id, + )); + } +}); +``` + +An event will be added to the `onMessageCreate` stream whenever a message that the bot can see is +created. The `MessageCreateEvent` event will contain the created `Message` as well as some extra +fields, like `mentions`. + +In our case, we first check if the users mentioned in the event include our user: +```dart +if (event.mentions.contains(botUser)) { + ... +} +``` + +If it does, then we want to send a message to the same channel the message was sent in: +```dart +await event.message.channel.sendMessage(MessageBuilder( + content: 'Hi There!', + replyId: event.message.id, +)); +``` + +The `sendMessage` method takes a `MessageBuilder` that describes the message that will be sent. In +this case, we specify the content of our message and a `replyId`. + +The `replyId` parameter allows us to reply to a message (here, the message that mentioned the bot) +by giving its ID. Most entities - messages included - have an ID on Discord, which we access with +`message.id`. diff --git a/docusaurus.config.js b/docusaurus.config.js index bfcdf404..2b2f5312 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -35,8 +35,8 @@ const { /** @type {import('@docusaurus/types').Config} */ const config = { - title: 'nyxx Documentation', - tagline: 'A documentation for the nyxx Discord library', + title: 'nyxx', + tagline: 'Documentation for the nyxx project, a Dart wrapper around the Discord API', url, baseUrl: '/', onBrokenLinks: 'throw', @@ -108,7 +108,7 @@ const config = { metadata: [ { name: 'keywords', - content: 'discord, bot, bot-framework, nyxx', + content: 'discord, bot, bot-framework, nyxx, dart', }, { name: 'language', @@ -126,12 +126,6 @@ const config = { src: 'img/Nyxx_Squared.svg', }, items: [ - { - type: 'doc', - docId: 'intro', - position: 'left', - label: 'Tutorial', - }, { href: 'https://github.com/nyxx-discord/nyxx', label: 'GitHub', @@ -154,7 +148,7 @@ const config = { to: '/docs/intro', }, { - label: 'Pub Docs', + label: 'API documentation', href: 'https://pub.dev/documentation/nyxx/latest', }, ], @@ -175,17 +169,13 @@ const config = { label: 'GitHub', href: 'https://github.com/nyxx-discord/nyxx', }, - { - label: 'nyxx_interactions', - href: 'https://github.com/nyxx-discord/nyxx_interactions', - }, { label: 'nyxx_commands', - href: 'https://github.com/nyxx-discord/nyxx_commands', + href: 'https://pub.dev/packages/nyxx_commands', }, { - label: 'nyxx_sharding', - href: 'https://github.com/nyxx-discord/nyxx_sharding', + label: 'nyxx_extensions', + href: 'https://pub.dev/packages/nyxx_extensions', }, ], }, diff --git a/glacier.yaml b/glacier.yaml deleted file mode 100644 index 2d2132f8..00000000 --- a/glacier.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# Glacier Config -name: "Nyxx Documentation" -source_directory: "./src" -destination_directory: "./dist" -base_directory: "./base" -description: "The Nyxx documentation" - -destination_files: - include: - - "/code-themes/light.css" - - "/code-themes/dark.css" - exclude: - - "/postcss.config.js" - - "/tailwind.config.js" diff --git a/package.json b/package.json index e3c507b7..9081c5f1 100644 --- a/package.json +++ b/package.json @@ -15,21 +15,24 @@ "typecheck": "tsc" }, "dependencies": { - "@docusaurus/core": "2.0.0-beta.18", - "@docusaurus/plugin-pwa": "^2.0.0-beta.18", - "@docusaurus/preset-classic": "2.0.0-beta.18", - "@easyops-cn/docusaurus-search-local": "^0.23.1", + "@docusaurus/core": "2.4.3", + "@docusaurus/plugin-pwa": "^2.4.3", + "@docusaurus/preset-classic": "2.4.3", + "@docusaurus/theme-classic": "^2.4.3", + "@docusaurus/types": "^2.4.3", + "@easyops-cn/docusaurus-search-local": "^0.23.3", "@mdx-js/react": "^1.6.22", - "clsx": "^1.1.1", - "prism-react-renderer": "^1.2.1", - "react": "^17.0.1", - "react-dom": "^17.0.1" + "@types/node": "^20.6.1", + "clsx": "^1.2.1", + "prism-react-renderer": "^1.3.5", + "react": "^17.0.2", + "react-dom": "^17.0.2" }, "devDependencies": { - "@docusaurus/module-type-aliases": "2.0.0-beta.18", - "@tsconfig/docusaurus": "^1.0.4", - "ts-node": "^10.7.0", - "typescript": "^4.6.2" + "@docusaurus/module-type-aliases": "2.4.3", + "@tsconfig/docusaurus": "^1.0.7", + "ts-node": "^10.9.1", + "typescript": "^4.9.5" }, "browserslist": { "production": [ diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f8b58f01..17414ca8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,1632 +1,1741 @@ -lockfileVersion: 5.4 - -specifiers: - '@docusaurus/core': 2.0.0-beta.18 - '@docusaurus/module-type-aliases': 2.0.0-beta.18 - '@docusaurus/plugin-pwa': ^2.0.0-beta.18 - '@docusaurus/preset-classic': 2.0.0-beta.18 - '@easyops-cn/docusaurus-search-local': ^0.23.1 - '@mdx-js/react': ^1.6.22 - '@tsconfig/docusaurus': ^1.0.4 - clsx: ^1.1.1 - prism-react-renderer: ^1.2.1 - react: ^17.0.1 - react-dom: ^17.0.1 - ts-node: ^10.7.0 - typescript: ^4.6.2 +lockfileVersion: '6.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false dependencies: - '@docusaurus/core': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/plugin-pwa': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/preset-classic': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@easyops-cn/docusaurus-search-local': 0.23.1 - '@mdx-js/react': 1.6.22_react@17.0.2 - clsx: 1.1.1 - prism-react-renderer: 1.3.1_react@17.0.2 - react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 + '@docusaurus/core': + specifier: 2.4.3 + version: 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/plugin-pwa': + specifier: ^2.4.3 + version: 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/preset-classic': + specifier: 2.4.3 + version: 2.4.3(@algolia/client-search@4.20.0)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.8.2)(typescript@4.9.5) + '@docusaurus/theme-classic': + specifier: ^2.4.3 + version: 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/types': + specifier: ^2.4.3 + version: 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@easyops-cn/docusaurus-search-local': + specifier: ^0.23.3 + version: 0.23.3(@docusaurus/types@2.4.3) + '@mdx-js/react': + specifier: ^1.6.22 + version: 1.6.22(react@17.0.2) + '@types/node': + specifier: ^20.6.1 + version: 20.6.1 + clsx: + specifier: ^1.2.1 + version: 1.2.1 + prism-react-renderer: + specifier: ^1.3.5 + version: 1.3.5(react@17.0.2) + react: + specifier: ^17.0.2 + version: 17.0.2 + react-dom: + specifier: ^17.0.2 + version: 17.0.2(react@17.0.2) devDependencies: - '@docusaurus/module-type-aliases': 2.0.0-beta.18_sfoxds7t5ydpegc3knd667wn6m - '@tsconfig/docusaurus': 1.0.5 - ts-node: 10.7.0_typescript@4.6.2 - typescript: 4.6.2 + '@docusaurus/module-type-aliases': + specifier: 2.4.3 + version: 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@tsconfig/docusaurus': + specifier: ^1.0.7 + version: 1.0.7 + ts-node: + specifier: ^10.9.1 + version: 10.9.1(@types/node@20.6.1)(typescript@4.9.5) + typescript: + specifier: ^4.9.5 + version: 4.9.5 packages: - /@algolia/autocomplete-core/1.5.2: - resolution: {integrity: sha512-DY0bhyczFSS1b/CqJlTE/nQRtnTAHl6IemIkBy0nEWnhDzRDdtdx4p5Uuk3vwAFxwEEgi1WqKwgSSMx6DpNL4A==} + /@algolia/autocomplete-core@1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0)(search-insights@2.8.2): + resolution: {integrity: sha512-009HdfugtGCdC4JdXUbVJClA0q0zh24yyePn+KUGk3rP7j8FEe/m5Yo/z65gn6nP/cM39PxpzqKrL7A6fP6PPw==} dependencies: - '@algolia/autocomplete-shared': 1.5.2 + '@algolia/autocomplete-plugin-algolia-insights': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0)(search-insights@2.8.2) + '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0) + transitivePeerDependencies: + - '@algolia/client-search' + - algoliasearch + - search-insights dev: false - /@algolia/autocomplete-preset-algolia/1.5.2_algoliasearch@4.13.0: - resolution: {integrity: sha512-3MRYnYQFJyovANzSX2CToS6/5cfVjbLLqFsZTKcvF3abhQzxbqwwaMBlJtt620uBUOeMzhdfasKhCc40+RHiZw==} + /@algolia/autocomplete-plugin-algolia-insights@1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0)(search-insights@2.8.2): + resolution: {integrity: sha512-a/yTUkcO/Vyy+JffmAnTWbr4/90cLzw+CC3bRbhnULr/EM0fGNvM13oQQ14f2moLMcVDyAx/leczLlAOovhSZg==} peerDependencies: - '@algolia/client-search': ^4.9.1 - algoliasearch: ^4.9.1 + search-insights: '>= 1 < 3' dependencies: - '@algolia/autocomplete-shared': 1.5.2 - algoliasearch: 4.13.0 + '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0) + search-insights: 2.8.2 + transitivePeerDependencies: + - '@algolia/client-search' + - algoliasearch dev: false - /@algolia/autocomplete-shared/1.5.2: - resolution: {integrity: sha512-ylQAYv5H0YKMfHgVWX0j0NmL8XBcAeeeVQUmppnnMtzDbDnca6CzhKj3Q8eF9cHCgcdTDdb5K+3aKyGWA0obug==} + /@algolia/autocomplete-preset-algolia@1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0): + resolution: {integrity: sha512-d4qlt6YmrLMYy95n5TB52wtNDr6EgAIPH81dvvvW8UmuWRgxEtY0NJiPwl/h95JtG2vmRM804M0DSwMCNZlzRA==} + peerDependencies: + '@algolia/client-search': '>= 4.9.1 < 6' + algoliasearch: '>= 4.9.1 < 6' + dependencies: + '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0) + '@algolia/client-search': 4.20.0 + algoliasearch: 4.20.0 dev: false - /@algolia/cache-browser-local-storage/4.13.0: - resolution: {integrity: sha512-nj1vHRZauTqP/bluwkRIgEADEimqojJgoTRCel5f6q8WCa9Y8QeI4bpDQP28FoeKnDRYa3J5CauDlN466jqRhg==} + /@algolia/autocomplete-shared@1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0): + resolution: {integrity: sha512-Wnm9E4Ye6Rl6sTTqjoymD+l8DjSTHsHboVRYrKgEt8Q7UHm9nYbqhN/i0fhUYA3OAEH7WA8x3jfpnmJm3rKvaQ==} + peerDependencies: + '@algolia/client-search': '>= 4.9.1 < 6' + algoliasearch: '>= 4.9.1 < 6' dependencies: - '@algolia/cache-common': 4.13.0 + '@algolia/client-search': 4.20.0 + algoliasearch: 4.20.0 dev: false - /@algolia/cache-common/4.13.0: - resolution: {integrity: sha512-f9mdZjskCui/dA/fA/5a+6hZ7xnHaaZI5tM/Rw9X8rRB39SUlF/+o3P47onZ33n/AwkpSbi5QOyhs16wHd55kA==} + /@algolia/cache-browser-local-storage@4.20.0: + resolution: {integrity: sha512-uujahcBt4DxduBTvYdwO3sBfHuJvJokiC3BP1+O70fglmE1ShkH8lpXqZBac1rrU3FnNYSUs4pL9lBdTKeRPOQ==} + dependencies: + '@algolia/cache-common': 4.20.0 + dev: false + + /@algolia/cache-common@4.20.0: + resolution: {integrity: sha512-vCfxauaZutL3NImzB2G9LjLt36vKAckc6DhMp05An14kVo8F1Yofb6SIl6U3SaEz8pG2QOB9ptwM5c+zGevwIQ==} dev: false - /@algolia/cache-in-memory/4.13.0: - resolution: {integrity: sha512-hHdc+ahPiMM92CQMljmObE75laYzNFYLrNOu0Q3/eyvubZZRtY2SUsEEgyUEyzXruNdzrkcDxFYa7YpWBJYHAg==} + /@algolia/cache-in-memory@4.20.0: + resolution: {integrity: sha512-Wm9ak/IaacAZXS4mB3+qF/KCoVSBV6aLgIGFEtQtJwjv64g4ePMapORGmCyulCFwfePaRAtcaTbMcJF+voc/bg==} dependencies: - '@algolia/cache-common': 4.13.0 + '@algolia/cache-common': 4.20.0 dev: false - /@algolia/client-account/4.13.0: - resolution: {integrity: sha512-FzFqFt9b0g/LKszBDoEsW+dVBuUe1K3scp2Yf7q6pgHWM1WqyqUlARwVpLxqyc+LoyJkTxQftOKjyFUqddnPKA==} + /@algolia/client-account@4.20.0: + resolution: {integrity: sha512-GGToLQvrwo7am4zVkZTnKa72pheQeez/16sURDWm7Seyz+HUxKi3BM6fthVVPUEBhtJ0reyVtuK9ArmnaKl10Q==} dependencies: - '@algolia/client-common': 4.13.0 - '@algolia/client-search': 4.13.0 - '@algolia/transporter': 4.13.0 + '@algolia/client-common': 4.20.0 + '@algolia/client-search': 4.20.0 + '@algolia/transporter': 4.20.0 dev: false - /@algolia/client-analytics/4.13.0: - resolution: {integrity: sha512-klmnoq2FIiiMHImkzOm+cGxqRLLu9CMHqFhbgSy9wtXZrqb8BBUIUE2VyBe7azzv1wKcxZV2RUyNOMpFqmnRZA==} + /@algolia/client-analytics@4.20.0: + resolution: {integrity: sha512-EIr+PdFMOallRdBTHHdKI3CstslgLORQG7844Mq84ib5oVFRVASuuPmG4bXBgiDbcsMLUeOC6zRVJhv1KWI0ug==} dependencies: - '@algolia/client-common': 4.13.0 - '@algolia/client-search': 4.13.0 - '@algolia/requester-common': 4.13.0 - '@algolia/transporter': 4.13.0 + '@algolia/client-common': 4.20.0 + '@algolia/client-search': 4.20.0 + '@algolia/requester-common': 4.20.0 + '@algolia/transporter': 4.20.0 dev: false - /@algolia/client-common/4.13.0: - resolution: {integrity: sha512-GoXfTp0kVcbgfSXOjfrxx+slSipMqGO9WnNWgeMmru5Ra09MDjrcdunsiiuzF0wua6INbIpBQFTC2Mi5lUNqGA==} + /@algolia/client-common@4.20.0: + resolution: {integrity: sha512-P3WgMdEss915p+knMMSd/fwiHRHKvDu4DYRrCRaBrsfFw7EQHon+EbRSm4QisS9NYdxbS04kcvNoavVGthyfqQ==} dependencies: - '@algolia/requester-common': 4.13.0 - '@algolia/transporter': 4.13.0 + '@algolia/requester-common': 4.20.0 + '@algolia/transporter': 4.20.0 dev: false - /@algolia/client-personalization/4.13.0: - resolution: {integrity: sha512-KneLz2WaehJmNfdr5yt2HQETpLaCYagRdWwIwkTqRVFCv4DxRQ2ChPVW9jeTj4YfAAhfzE6F8hn7wkQ/Jfj6ZA==} + /@algolia/client-personalization@4.20.0: + resolution: {integrity: sha512-N9+zx0tWOQsLc3K4PVRDV8GUeOLAY0i445En79Pr3zWB+m67V+n/8w4Kw1C5LlbHDDJcyhMMIlqezh6BEk7xAQ==} dependencies: - '@algolia/client-common': 4.13.0 - '@algolia/requester-common': 4.13.0 - '@algolia/transporter': 4.13.0 + '@algolia/client-common': 4.20.0 + '@algolia/requester-common': 4.20.0 + '@algolia/transporter': 4.20.0 dev: false - /@algolia/client-search/4.13.0: - resolution: {integrity: sha512-blgCKYbZh1NgJWzeGf+caKE32mo3j54NprOf0LZVCubQb3Kx37tk1Hc8SDs9bCAE8hUvf3cazMPIg7wscSxspA==} + /@algolia/client-search@4.20.0: + resolution: {integrity: sha512-zgwqnMvhWLdpzKTpd3sGmMlr4c+iS7eyyLGiaO51zDZWGMkpgoNVmltkzdBwxOVXz0RsFMznIxB9zuarUv4TZg==} dependencies: - '@algolia/client-common': 4.13.0 - '@algolia/requester-common': 4.13.0 - '@algolia/transporter': 4.13.0 + '@algolia/client-common': 4.20.0 + '@algolia/requester-common': 4.20.0 + '@algolia/transporter': 4.20.0 dev: false - /@algolia/events/4.0.1: + /@algolia/events@4.0.1: resolution: {integrity: sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==} dev: false - /@algolia/logger-common/4.13.0: - resolution: {integrity: sha512-8yqXk7rMtmQJ9wZiHOt/6d4/JDEg5VCk83gJ39I+X/pwUPzIsbKy9QiK4uJ3aJELKyoIiDT1hpYVt+5ia+94IA==} + /@algolia/logger-common@4.20.0: + resolution: {integrity: sha512-xouigCMB5WJYEwvoWW5XDv7Z9f0A8VoXJc3VKwlHJw/je+3p2RcDXfksLI4G4lIVncFUYMZx30tP/rsdlvvzHQ==} dev: false - /@algolia/logger-console/4.13.0: - resolution: {integrity: sha512-YepRg7w2/87L0vSXRfMND6VJ5d6699sFJBRWzZPOlek2p5fLxxK7O0VncYuc/IbVHEgeApvgXx0WgCEa38GVuQ==} + /@algolia/logger-console@4.20.0: + resolution: {integrity: sha512-THlIGG1g/FS63z0StQqDhT6bprUczBI8wnLT3JWvfAQDZX5P6fCg7dG+pIrUBpDIHGszgkqYEqECaKKsdNKOUA==} dependencies: - '@algolia/logger-common': 4.13.0 + '@algolia/logger-common': 4.20.0 dev: false - /@algolia/requester-browser-xhr/4.13.0: - resolution: {integrity: sha512-Dj+bnoWR5MotrnjblzGKZ2kCdQi2cK/VzPURPnE616NU/il7Ypy6U6DLGZ/ZYz+tnwPa0yypNf21uqt84fOgrg==} + /@algolia/requester-browser-xhr@4.20.0: + resolution: {integrity: sha512-HbzoSjcjuUmYOkcHECkVTwAelmvTlgs48N6Owt4FnTOQdwn0b8pdht9eMgishvk8+F8bal354nhx/xOoTfwiAw==} dependencies: - '@algolia/requester-common': 4.13.0 + '@algolia/requester-common': 4.20.0 dev: false - /@algolia/requester-common/4.13.0: - resolution: {integrity: sha512-BRTDj53ecK+gn7ugukDWOOcBRul59C4NblCHqj4Zm5msd5UnHFjd/sGX+RLOEoFMhetILAnmg6wMrRrQVac9vw==} + /@algolia/requester-common@4.20.0: + resolution: {integrity: sha512-9h6ye6RY/BkfmeJp7Z8gyyeMrmmWsMOCRBXQDs4mZKKsyVlfIVICpcSibbeYcuUdurLhIlrOUkH3rQEgZzonng==} dev: false - /@algolia/requester-node-http/4.13.0: - resolution: {integrity: sha512-9b+3O4QFU4azLhGMrZAr/uZPydvzOR4aEZfSL8ZrpLZ7fbbqTO0S/5EVko+QIgglRAtVwxvf8UJ1wzTD2jvKxQ==} + /@algolia/requester-node-http@4.20.0: + resolution: {integrity: sha512-ocJ66L60ABSSTRFnCHIEZpNHv6qTxsBwJEPfYaSBsLQodm0F9ptvalFkHMpvj5DfE22oZrcrLbOYM2bdPJRHng==} dependencies: - '@algolia/requester-common': 4.13.0 + '@algolia/requester-common': 4.20.0 dev: false - /@algolia/transporter/4.13.0: - resolution: {integrity: sha512-8tSQYE+ykQENAdeZdofvtkOr5uJ9VcQSWgRhQ9h01AehtBIPAczk/b2CLrMsw5yQZziLs5cZ3pJ3478yI+urhA==} + /@algolia/transporter@4.20.0: + resolution: {integrity: sha512-Lsii1pGWOAISbzeyuf+r/GPhvHMPHSPrTDWNcIzOE1SG1inlJHICaVe2ikuoRjcpgxZNU54Jl+if15SUCsaTUg==} dependencies: - '@algolia/cache-common': 4.13.0 - '@algolia/logger-common': 4.13.0 - '@algolia/requester-common': 4.13.0 + '@algolia/cache-common': 4.20.0 + '@algolia/logger-common': 4.20.0 + '@algolia/requester-common': 4.20.0 dev: false - /@ampproject/remapping/2.1.2: - resolution: {integrity: sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==} + /@ampproject/remapping@2.2.1: + resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==} engines: {node: '>=6.0.0'} dependencies: - '@jridgewell/trace-mapping': 0.3.4 + '@jridgewell/gen-mapping': 0.3.3 + '@jridgewell/trace-mapping': 0.3.19 dev: false - /@apideck/better-ajv-errors/0.3.3_ajv@8.10.0: - resolution: {integrity: sha512-9o+HO2MbJhJHjDYZaDxJmSDckvDpiuItEsrIShV0DXeCshXWRHhqYyU/PKHMkuClOmFnZhRd6wzv4vpDu/dRKg==} + /@apideck/better-ajv-errors@0.3.6(ajv@8.12.0): + resolution: {integrity: sha512-P+ZygBLZtkp0qqOAJJVX4oX/sFo5JR3eBWwwuqHHhK0GIgQOKWrAfiAaWX0aArHkRWHMuggFEgAZNxVPwPZYaA==} engines: {node: '>=10'} peerDependencies: ajv: '>=8' dependencies: - ajv: 8.10.0 + ajv: 8.12.0 json-schema: 0.4.0 - jsonpointer: 5.0.0 + jsonpointer: 5.0.1 leven: 3.1.0 dev: false - /@babel/code-frame/7.16.7: - resolution: {integrity: sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==} + /@babel/code-frame@7.22.13: + resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/highlight': 7.16.10 + '@babel/highlight': 7.22.13 + chalk: 2.4.2 dev: false - /@babel/compat-data/7.17.7: - resolution: {integrity: sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==} + /@babel/compat-data@7.22.9: + resolution: {integrity: sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==} engines: {node: '>=6.9.0'} dev: false - /@babel/core/7.12.9: + /@babel/core@7.12.9: resolution: {integrity: sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.16.7 - '@babel/generator': 7.17.7 - '@babel/helper-module-transforms': 7.17.7 - '@babel/helpers': 7.17.8 - '@babel/parser': 7.17.8 - '@babel/template': 7.16.7 - '@babel/traverse': 7.17.3 - '@babel/types': 7.17.0 - convert-source-map: 1.8.0 + '@babel/code-frame': 7.22.13 + '@babel/generator': 7.22.15 + '@babel/helper-module-transforms': 7.22.19(@babel/core@7.12.9) + '@babel/helpers': 7.22.15 + '@babel/parser': 7.22.16 + '@babel/template': 7.22.15 + '@babel/traverse': 7.22.19 + '@babel/types': 7.22.19 + convert-source-map: 1.9.0 debug: 4.3.4 gensync: 1.0.0-beta.2 - json5: 2.2.1 + json5: 2.2.3 lodash: 4.17.21 - resolve: 1.22.0 - semver: 5.7.1 + resolve: 1.22.5 + semver: 5.7.2 source-map: 0.5.7 transitivePeerDependencies: - supports-color dev: false - /@babel/core/7.17.8: - resolution: {integrity: sha512-OdQDV/7cRBtJHLSOBqqbYNkOcydOgnX59TZx4puf41fzcVtN3e/4yqY8lMQsK+5X2lJtAdmA+6OHqsj1hBJ4IQ==} + /@babel/core@7.22.19: + resolution: {integrity: sha512-Q8Yj5X4LHVYTbLCKVz0//2D2aDmHF4xzCdEttYvKOnWvErGsa6geHXD6w46x64n5tP69VfeH+IfSrdyH3MLhwA==} engines: {node: '>=6.9.0'} dependencies: - '@ampproject/remapping': 2.1.2 - '@babel/code-frame': 7.16.7 - '@babel/generator': 7.17.7 - '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.8 - '@babel/helper-module-transforms': 7.17.7 - '@babel/helpers': 7.17.8 - '@babel/parser': 7.17.8 - '@babel/template': 7.16.7 - '@babel/traverse': 7.17.3 - '@babel/types': 7.17.0 - convert-source-map: 1.8.0 + '@ampproject/remapping': 2.2.1 + '@babel/code-frame': 7.22.13 + '@babel/generator': 7.22.15 + '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-module-transforms': 7.22.19(@babel/core@7.22.19) + '@babel/helpers': 7.22.15 + '@babel/parser': 7.22.16 + '@babel/template': 7.22.15 + '@babel/traverse': 7.22.19 + '@babel/types': 7.22.19 + convert-source-map: 1.9.0 debug: 4.3.4 gensync: 1.0.0-beta.2 - json5: 2.2.1 - semver: 6.3.0 + json5: 2.2.3 + semver: 6.3.1 transitivePeerDependencies: - supports-color dev: false - /@babel/generator/7.17.7: - resolution: {integrity: sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==} + /@babel/generator@7.22.15: + resolution: {integrity: sha512-Zu9oWARBqeVOW0dZOjXc3JObrzuqothQ3y/n1kUtrjCoCPLkXUwMvOo/F/TCfoHMbWIFlWwpZtkZVb9ga4U2pA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.17.0 + '@babel/types': 7.22.19 + '@jridgewell/gen-mapping': 0.3.3 + '@jridgewell/trace-mapping': 0.3.19 jsesc: 2.5.2 - source-map: 0.5.7 dev: false - /@babel/helper-annotate-as-pure/7.16.7: - resolution: {integrity: sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==} + /@babel/helper-annotate-as-pure@7.22.5: + resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.17.0 + '@babel/types': 7.22.19 dev: false - /@babel/helper-builder-binary-assignment-operator-visitor/7.16.7: - resolution: {integrity: sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA==} + /@babel/helper-builder-binary-assignment-operator-visitor@7.22.15: + resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-explode-assignable-expression': 7.16.7 - '@babel/types': 7.17.0 + '@babel/types': 7.22.19 dev: false - /@babel/helper-compilation-targets/7.17.7_@babel+core@7.17.8: - resolution: {integrity: sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==} + /@babel/helper-compilation-targets@7.22.15: + resolution: {integrity: sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==} engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 dependencies: - '@babel/compat-data': 7.17.7 - '@babel/core': 7.17.8 - '@babel/helper-validator-option': 7.16.7 - browserslist: 4.20.2 - semver: 6.3.0 + '@babel/compat-data': 7.22.9 + '@babel/helper-validator-option': 7.22.15 + browserslist: 4.21.10 + lru-cache: 5.1.1 + semver: 6.3.1 dev: false - /@babel/helper-create-class-features-plugin/7.17.6_@babel+core@7.17.8: - resolution: {integrity: sha512-SogLLSxXm2OkBbSsHZMM4tUi8fUzjs63AT/d0YQIzr6GSd8Hxsbk2KYDX0k0DweAzGMj/YWeiCsorIdtdcW8Eg==} + /@babel/helper-create-class-features-plugin@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-annotate-as-pure': 7.16.7 - '@babel/helper-environment-visitor': 7.16.7 - '@babel/helper-function-name': 7.16.7 - '@babel/helper-member-expression-to-functions': 7.17.7 - '@babel/helper-optimise-call-expression': 7.16.7 - '@babel/helper-replace-supers': 7.16.7 - '@babel/helper-split-export-declaration': 7.16.7 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.22.19 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-environment-visitor': 7.22.5 + '@babel/helper-function-name': 7.22.5 + '@babel/helper-member-expression-to-functions': 7.22.15 + '@babel/helper-optimise-call-expression': 7.22.5 + '@babel/helper-replace-supers': 7.22.9(@babel/core@7.22.19) + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + semver: 6.3.1 dev: false - /@babel/helper-create-regexp-features-plugin/7.17.0_@babel+core@7.17.8: - resolution: {integrity: sha512-awO2So99wG6KnlE+TPs6rn83gCz5WlEePJDTnLEqbchMVrBeAujURVphRdigsk094VhvZehFoNOihSlcBjwsXA==} + /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-annotate-as-pure': 7.16.7 - regexpu-core: 5.0.1 + '@babel/core': 7.22.19 + '@babel/helper-annotate-as-pure': 7.22.5 + regexpu-core: 5.3.2 + semver: 6.3.1 dev: false - /@babel/helper-define-polyfill-provider/0.3.1_@babel+core@7.17.8: - resolution: {integrity: sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==} + /@babel/helper-define-polyfill-provider@0.4.2(@babel/core@7.22.19): + resolution: {integrity: sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==} peerDependencies: - '@babel/core': ^7.4.0-0 + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.8 - '@babel/helper-module-imports': 7.16.7 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/traverse': 7.17.3 + '@babel/core': 7.22.19 + '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-plugin-utils': 7.22.5 debug: 4.3.4 lodash.debounce: 4.0.8 - resolve: 1.22.0 - semver: 6.3.0 + resolve: 1.22.5 transitivePeerDependencies: - supports-color dev: false - /@babel/helper-environment-visitor/7.16.7: - resolution: {integrity: sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.17.0 - dev: false - - /@babel/helper-explode-assignable-expression/7.16.7: - resolution: {integrity: sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==} + /@babel/helper-environment-visitor@7.22.5: + resolution: {integrity: sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==} engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.17.0 dev: false - /@babel/helper-function-name/7.16.7: - resolution: {integrity: sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==} + /@babel/helper-function-name@7.22.5: + resolution: {integrity: sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-get-function-arity': 7.16.7 - '@babel/template': 7.16.7 - '@babel/types': 7.17.0 + '@babel/template': 7.22.15 + '@babel/types': 7.22.19 dev: false - /@babel/helper-get-function-arity/7.16.7: - resolution: {integrity: sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==} + /@babel/helper-hoist-variables@7.22.5: + resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.17.0 + '@babel/types': 7.22.19 dev: false - /@babel/helper-hoist-variables/7.16.7: - resolution: {integrity: sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==} + /@babel/helper-member-expression-to-functions@7.22.15: + resolution: {integrity: sha512-qLNsZbgrNh0fDQBCPocSL8guki1hcPvltGDv/NxvUoABwFq7GkKSu1nRXeJkVZc+wJvne2E0RKQz+2SQrz6eAA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.17.0 + '@babel/types': 7.22.19 dev: false - /@babel/helper-member-expression-to-functions/7.17.7: - resolution: {integrity: sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==} + /@babel/helper-module-imports@7.22.15: + resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.17.0 + '@babel/types': 7.22.19 dev: false - /@babel/helper-module-imports/7.16.7: - resolution: {integrity: sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==} + /@babel/helper-module-transforms@7.22.19(@babel/core@7.12.9): + resolution: {integrity: sha512-m6h1cJvn+OJ+R3jOHp30faq5xKJ7VbjwDj5RGgHuRlU9hrMeKsGC+JpihkR5w1g7IfseCPPtZ0r7/hB4UKaYlA==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 dependencies: - '@babel/types': 7.17.0 + '@babel/core': 7.12.9 + '@babel/helper-environment-visitor': 7.22.5 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-simple-access': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/helper-validator-identifier': 7.22.19 dev: false - /@babel/helper-module-transforms/7.17.7: - resolution: {integrity: sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==} + /@babel/helper-module-transforms@7.22.19(@babel/core@7.22.19): + resolution: {integrity: sha512-m6h1cJvn+OJ+R3jOHp30faq5xKJ7VbjwDj5RGgHuRlU9hrMeKsGC+JpihkR5w1g7IfseCPPtZ0r7/hB4UKaYlA==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 dependencies: - '@babel/helper-environment-visitor': 7.16.7 - '@babel/helper-module-imports': 7.16.7 - '@babel/helper-simple-access': 7.17.7 - '@babel/helper-split-export-declaration': 7.16.7 - '@babel/helper-validator-identifier': 7.16.7 - '@babel/template': 7.16.7 - '@babel/traverse': 7.17.3 - '@babel/types': 7.17.0 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.22.19 + '@babel/helper-environment-visitor': 7.22.5 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-simple-access': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/helper-validator-identifier': 7.22.19 dev: false - /@babel/helper-optimise-call-expression/7.16.7: - resolution: {integrity: sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==} + /@babel/helper-optimise-call-expression@7.22.5: + resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.17.0 + '@babel/types': 7.22.19 dev: false - /@babel/helper-plugin-utils/7.10.4: + /@babel/helper-plugin-utils@7.10.4: resolution: {integrity: sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==} dev: false - /@babel/helper-plugin-utils/7.16.7: - resolution: {integrity: sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==} + /@babel/helper-plugin-utils@7.22.5: + resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} engines: {node: '>=6.9.0'} dev: false - /@babel/helper-remap-async-to-generator/7.16.8: - resolution: {integrity: sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw==} + /@babel/helper-remap-async-to-generator@7.22.17(@babel/core@7.22.19): + resolution: {integrity: sha512-bxH77R5gjH3Nkde6/LuncQoLaP16THYPscurp1S8z7S9ZgezCyV3G8Hc+TZiCmY8pz4fp8CvKSgtJMW0FkLAxA==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 dependencies: - '@babel/helper-annotate-as-pure': 7.16.7 - '@babel/helper-wrap-function': 7.16.8 - '@babel/types': 7.17.0 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.22.19 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-environment-visitor': 7.22.5 + '@babel/helper-wrap-function': 7.22.17 dev: false - /@babel/helper-replace-supers/7.16.7: - resolution: {integrity: sha512-y9vsWilTNaVnVh6xiJfABzsNpgDPKev9HnAgz6Gb1p6UUwf9NepdlsV7VXGCftJM+jqD5f7JIEubcpLjZj5dBw==} + /@babel/helper-replace-supers@7.22.9(@babel/core@7.22.19): + resolution: {integrity: sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 dependencies: - '@babel/helper-environment-visitor': 7.16.7 - '@babel/helper-member-expression-to-functions': 7.17.7 - '@babel/helper-optimise-call-expression': 7.16.7 - '@babel/traverse': 7.17.3 - '@babel/types': 7.17.0 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.22.19 + '@babel/helper-environment-visitor': 7.22.5 + '@babel/helper-member-expression-to-functions': 7.22.15 + '@babel/helper-optimise-call-expression': 7.22.5 dev: false - /@babel/helper-simple-access/7.17.7: - resolution: {integrity: sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==} + /@babel/helper-simple-access@7.22.5: + resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.17.0 + '@babel/types': 7.22.19 dev: false - /@babel/helper-skip-transparent-expression-wrappers/7.16.0: - resolution: {integrity: sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==} + /@babel/helper-skip-transparent-expression-wrappers@7.22.5: + resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.17.0 + '@babel/types': 7.22.19 dev: false - /@babel/helper-split-export-declaration/7.16.7: - resolution: {integrity: sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==} + /@babel/helper-split-export-declaration@7.22.6: + resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.17.0 + '@babel/types': 7.22.19 dev: false - /@babel/helper-validator-identifier/7.16.7: - resolution: {integrity: sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==} + /@babel/helper-string-parser@7.22.5: + resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} engines: {node: '>=6.9.0'} dev: false - /@babel/helper-validator-option/7.16.7: - resolution: {integrity: sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==} + /@babel/helper-validator-identifier@7.22.19: + resolution: {integrity: sha512-Tinq7ybnEPFFXhlYOYFiSjespWQk0dq2dRNAiMdRTOYQzEGqnnNyrTxPYHP5r6wGjlF1rFgABdDV0g8EwD6Qbg==} engines: {node: '>=6.9.0'} dev: false - /@babel/helper-wrap-function/7.16.8: - resolution: {integrity: sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==} + /@babel/helper-validator-option@7.22.15: + resolution: {integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==} + engines: {node: '>=6.9.0'} + dev: false + + /@babel/helper-wrap-function@7.22.17: + resolution: {integrity: sha512-nAhoheCMlrqU41tAojw9GpVEKDlTS8r3lzFmF0lP52LwblCPbuFSO7nGIZoIcoU5NIm1ABrna0cJExE4Ay6l2Q==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-function-name': 7.16.7 - '@babel/template': 7.16.7 - '@babel/traverse': 7.17.3 - '@babel/types': 7.17.0 - transitivePeerDependencies: - - supports-color + '@babel/helper-function-name': 7.22.5 + '@babel/template': 7.22.15 + '@babel/types': 7.22.19 dev: false - /@babel/helpers/7.17.8: - resolution: {integrity: sha512-QcL86FGxpfSJwGtAvv4iG93UL6bmqBdmoVY0CMCU2g+oD2ezQse3PT5Pa+jiD6LJndBQi0EDlpzOWNlLuhz5gw==} + /@babel/helpers@7.22.15: + resolution: {integrity: sha512-7pAjK0aSdxOwR+CcYAqgWOGy5dcfvzsTIfFTb2odQqW47MDfv14UaJDY6eng8ylM2EaeKXdxaSWESbkmaQHTmw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/template': 7.16.7 - '@babel/traverse': 7.17.3 - '@babel/types': 7.17.0 + '@babel/template': 7.22.15 + '@babel/traverse': 7.22.19 + '@babel/types': 7.22.19 transitivePeerDependencies: - supports-color dev: false - /@babel/highlight/7.16.10: - resolution: {integrity: sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==} + /@babel/highlight@7.22.13: + resolution: {integrity: sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-validator-identifier': 7.16.7 + '@babel/helper-validator-identifier': 7.22.19 chalk: 2.4.2 js-tokens: 4.0.0 dev: false - /@babel/parser/7.17.8: - resolution: {integrity: sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==} + /@babel/parser@7.22.16: + resolution: {integrity: sha512-+gPfKv8UWeKKeJTUxe59+OobVcrYHETCsORl61EmSkmgymguYk/X5bp7GuUIXaFsc6y++v8ZxPsLSSuujqDphA==} engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.17.0 + '@babel/types': 7.22.19 dev: false - /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-anv/DObl7waiGEnC24O9zqL0pSuI9hljihqiDuFHC8d7/bjr/4RLGPWuc8rYOff/QPzbEPSkzG8wGG9aDuhHRg==} + /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-FB9iYlz7rURmRJyXRKEnalYPPdn87H5no108cyuQQyMwlpJ2SJtpIUBI27kdTin956pz+LPypkPVPUTlxOmrsg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-di8vUHRdf+4aJ7ltXhaDbPoszdkh59AQtJM5soLsuHpQJdFQZOA4uGj0V2u/CZ8bJ/u8ULDL5yq6FO/bCXnKHw==} + /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-Hyph9LseGvAeeXzikV88bczhsrLrIZqDPxO+sSmAunMPaGrBGhfMWzCPYTtiW9t+HzSE2wtV8e5cc5P6r1xMDQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.13.0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/helper-skip-transparent-expression-wrappers': 7.16.0 - '@babel/plugin-proposal-optional-chaining': 7.16.7_@babel+core@7.17.8 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + '@babel/plugin-transform-optional-chaining': 7.22.15(@babel/core@7.22.19) dev: false - /@babel/plugin-proposal-async-generator-functions/7.16.8_@babel+core@7.17.8: - resolution: {integrity: sha512-71YHIvMuiuqWJQkebWJtdhQTfd4Q4mF76q2IX37uZPkG9+olBxsX+rH1vkhFto4UeJZ9dPY2s+mDvhDm1u2BGQ==} - engines: {node: '>=6.9.0'} + /@babel/plugin-proposal-object-rest-spread@7.12.1(@babel/core@7.12.9): + resolution: {integrity: sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==} + deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead. peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/helper-remap-async-to-generator': 7.16.8 - '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.17.8 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.12.9 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.12.9) + '@babel/plugin-transform-parameters': 7.22.15(@babel/core@7.12.9) dev: false - /@babel/plugin-proposal-class-properties/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-IobU0Xme31ewjYOShSIqd/ZGM/r/cuOz2z0MDbNrhF5FW+ZVgi0f2lyeoj9KFPDOAqsYxmLWZte1WOwlvY9aww==} + /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.22.19): + resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-create-class-features-plugin': 7.17.6_@babel+core@7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.22.19 dev: false - /@babel/plugin-proposal-class-static-block/7.17.6_@babel+core@7.17.8: - resolution: {integrity: sha512-X/tididvL2zbs7jZCeeRJ8167U/+Ac135AM6jCAx6gYXDUviZV5Ku9UDvWS2NCuWlFjIRXklYhwo6HhAC7ETnA==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.22.19): + resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} peerDependencies: - '@babel/core': ^7.12.0 + '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-create-class-features-plugin': 7.17.6_@babel+core@7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-class-static-block': 7.14.5_@babel+core@7.17.8 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-proposal-dynamic-import/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.22.19): + resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.17.8 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-proposal-export-namespace-from/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-ZxdtqDXLRGBL64ocZcs7ovt71L3jhC1RGSyR996svrCi3PYqHNkb3SwPJCs8RIzD86s+WPpt2S73+EHCGO+NUA==} + /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.22.19): + resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.17.8 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-proposal-json-strings/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-lNZ3EEggsGY78JavgbHsK9u5P3pQaW7k4axlgFLYkMd7UBsiNahCITShLjNQschPyjtO6dADrL24757IdhBrsQ==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.22.19): + resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.17.8 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-proposal-logical-assignment-operators/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-K3XzyZJGQCr00+EtYtrDjmwX7o7PLK6U9bi1nCwkQioRFVUv6dJoxbQjtWVtP+bCPy82bONBKG8NPyQ4+i6yjg==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.22.19): + resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.17.8 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-proposal-nullish-coalescing-operator/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-aUOrYU3EVtjf62jQrCj63pYZ7k6vns2h/DQvHPWGmsJRYzWXZ6/AsfgpiRy6XiuIDADhJzP2Q9MwSMKauBQ+UQ==} + /@babel/plugin-syntax-import-assertions@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.17.8 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-proposal-numeric-separator/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==} + /@babel/plugin-syntax-import-attributes@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.17.8 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-proposal-object-rest-spread/7.12.1_@babel+core@7.12.9: - resolution: {integrity: sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==} + /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.22.19): + resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + dev: false + + /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.22.19): + resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + dev: false + + /@babel/plugin-syntax-jsx@7.12.1(@babel/core@7.12.9): + resolution: {integrity: sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.12.9 - '@babel/plugin-transform-parameters': 7.16.7_@babel+core@7.12.9 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-proposal-object-rest-spread/7.17.3_@babel+core@7.17.8: - resolution: {integrity: sha512-yuL5iQA/TbZn+RGAfxQXfi7CNLmKi1f8zInn4IgobuCWcAb7i+zj4TYzQ9l8cEzVyJ89PDGuqxK1xZpUDISesw==} + /@babel/plugin-syntax-jsx@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.17.7 - '@babel/core': 7.17.8 - '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.17.8 - '@babel/plugin-transform-parameters': 7.16.7_@babel+core@7.17.8 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-proposal-optional-catch-binding/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.22.19): + resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.17.8 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-proposal-optional-chaining/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-eC3xy+ZrUcBtP7x+sq62Q/HYd674pPTb/77XZMb5wbDPGWIdUbSr4Agr052+zaUPSb+gGRnjxXfKFvx5iMJ+DA==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.22.19): + resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/helper-skip-transparent-expression-wrappers': 7.16.0 - '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.17.8 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-proposal-private-methods/7.16.11_@babel+core@7.17.8: - resolution: {integrity: sha512-F/2uAkPlXDr8+BHpZvo19w3hLFKge+k75XUprE6jaqKxjGkSYcK+4c+bup5PdW/7W/Rpjwql7FTVEDW+fRAQsw==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.22.19): + resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-create-class-features-plugin': 7.17.6_@babel+core@7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-proposal-private-property-in-object/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-rMQkjcOFbm+ufe3bTZLyOfsOUOxyvLXZJCTARhJr+8UMSoZmqTe1K1BgkFcrW37rAchWg57yI69ORxiWvUINuQ==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.12.9): + resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-annotate-as-pure': 7.16.7 - '@babel/helper-create-class-features-plugin': 7.17.6_@babel+core@7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.17.8 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.12.9 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-proposal-unicode-property-regex/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-QRK0YI/40VLhNVGIjRNAAQkEHws0cswSdFFjpFyt943YmJIU1da9uW63Iu6NFV6CxTZW5eTDCrwZUstBWgp/Rg==} - engines: {node: '>=4'} + /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.22.19): + resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-create-regexp-features-plugin': 7.17.0_@babel+core@7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.17.8: - resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} + /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.22.19): + resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.17.8: - resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} + /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.22.19): + resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-class-static-block/7.14.5_@babel+core@7.17.8: - resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} + /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.22.19): + resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.17.8: - resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} + /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.22.19): + resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-export-namespace-from/7.8.3_@babel+core@7.17.8: - resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} + /@babel/plugin-syntax-typescript@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.17.8: - resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} + /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.22.19): + resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} + engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.22.19) + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-jsx/7.12.1_@babel+core@7.12.9: - resolution: {integrity: sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==} + /@babel/plugin-transform-arrow-functions@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-jsx/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==} + /@babel/plugin-transform-async-generator-functions@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-jBm1Es25Y+tVoTi5rfd5t1KLmL8ogLKpXszboWOTTtGFGz2RKnQe2yn7HbZ+kb/B8N0FVSGQo874NSlOU1T4+w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-environment-visitor': 7.22.5 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-remap-async-to-generator': 7.22.17(@babel/core@7.22.19) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.22.19) dev: false - /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.17.8: - resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} + /@babel/plugin-transform-async-to-generator@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-remap-async-to-generator': 7.22.17(@babel/core@7.22.19) dev: false - /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.17.8: - resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} + /@babel/plugin-transform-block-scoped-functions@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.17.8: - resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} + /@babel/plugin-transform-block-scoping@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-G1czpdJBZCtngoK1sJgloLiOHUnkb/bLZwqVZD8kXmq0ZnVfTTWUcs9OWtp0mBtYJ+4LQY1fllqBkOIPhXmFmw==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.12.9: - resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} + /@babel/plugin-transform-class-properties@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.22.19) + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.17.8: - resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} + /@babel/plugin-transform-class-static-block@7.22.11(@babel/core@7.22.19): + resolution: {integrity: sha512-GMM8gGmqI7guS/llMFk1bJDkKfn3v3C4KHK9Yg1ey5qcHcOlKb0QvcMrgzvxo+T03/4szNh5lghY+fEC98Kq9g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.12.0 + dependencies: + '@babel/core': 7.22.19 + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.22.19) + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.22.19) + dev: false + + /@babel/plugin-transform-classes@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-VbbC3PGjBdE0wAWDdHM9G8Gm977pnYI0XpqMd6LrKISj8/DJXEsWqgRuTYaNE9Bv0JGhTZUzHDlMk18IpOuoqw==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-environment-visitor': 7.22.5 + '@babel/helper-function-name': 7.22.5 + '@babel/helper-optimise-call-expression': 7.22.5 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-replace-supers': 7.22.9(@babel/core@7.22.19) + '@babel/helper-split-export-declaration': 7.22.6 + globals: 11.12.0 dev: false - /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.17.8: - resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} + /@babel/plugin-transform-computed-properties@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/template': 7.22.15 dev: false - /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.17.8: - resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} + /@babel/plugin-transform-destructuring@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-HzG8sFl1ZVGTme74Nw+X01XsUTqERVQ6/RLHo3XjGRzm7XD6QTtfS3NJotVgCGy8BzkDqRjRBD8dAyJn5TuvSQ==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-private-property-in-object/7.14.5_@babel+core@7.17.8: - resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} + /@babel/plugin-transform-dotall-regex@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.22.19) + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.17.8: - resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} + /@babel/plugin-transform-duplicate-keys@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-typescript/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A==} + /@babel/plugin-transform-dynamic-import@7.22.11(@babel/core@7.22.19): + resolution: {integrity: sha512-g/21plo58sfteWjaO0ZNVb+uEOkJNjAaHhbejrnBmu011l/eNDScmkbjCC3l4FKb10ViaGU4aOkFznSu2zRHgA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.22.19) dev: false - /@babel/plugin-transform-arrow-functions/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-9ffkFFMbvzTvv+7dTp/66xvZAWASuPD5Tl9LK3Z9vhOmANo6j94rik+5YMBt4CwHVMWLWpMsriIc2zsa3WW3xQ==} + /@babel/plugin-transform-exponentiation-operator@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-async-to-generator/7.16.8_@babel+core@7.17.8: - resolution: {integrity: sha512-MtmUmTJQHCnyJVrScNzNlofQJ3dLFuobYn3mwOTKHnSCMtbNsqvF71GQmJfFjdrXSsAA7iysFmYWw4bXZ20hOg==} + /@babel/plugin-transform-export-namespace-from@7.22.11(@babel/core@7.22.19): + resolution: {integrity: sha512-xa7aad7q7OiT8oNZ1mU7NrISjlSkVdMbNxn9IuLZyL9AJEhs1Apba3I+u5riX1dIkdptP5EKDG5XDPByWxtehw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-module-imports': 7.16.7 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/helper-remap-async-to-generator': 7.16.8 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.22.19) dev: false - /@babel/plugin-transform-block-scoped-functions/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==} + /@babel/plugin-transform-for-of@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-me6VGeHsx30+xh9fbDLLPi0J1HzmeIIyenoOQHuw2D4m2SAU3NrspX5XxJLBpqn5yrLzrlw2Iy3RA//Bx27iOA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-block-scoping/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-ObZev2nxVAYA4bhyusELdo9hb3H+A56bxH3FZMbEImZFiEDYVHXQSJ1hQKFlDnlt8G9bBrCZ5ZpURZUrV4G5qQ==} + /@babel/plugin-transform-function-name@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-function-name': 7.22.5 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-classes/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-WY7og38SFAGYRe64BrjKf8OrE6ulEHtr5jEYaZMwox9KebgqPi67Zqz8K53EKk1fFEJgm96r32rkKZ3qA2nCWQ==} + /@babel/plugin-transform-json-strings@7.22.11(@babel/core@7.22.19): + resolution: {integrity: sha512-CxT5tCqpA9/jXFlme9xIBCc5RPtdDq3JpkkhgHQqtDdiTnTI0jtZ0QzXhr5DILeYifDPp2wvY2ad+7+hLMW5Pw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-annotate-as-pure': 7.16.7 - '@babel/helper-environment-visitor': 7.16.7 - '@babel/helper-function-name': 7.16.7 - '@babel/helper-optimise-call-expression': 7.16.7 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/helper-replace-supers': 7.16.7 - '@babel/helper-split-export-declaration': 7.16.7 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.22.19) dev: false - /@babel/plugin-transform-computed-properties/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw==} + /@babel/plugin-transform-literals@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-destructuring/7.17.7_@babel+core@7.17.8: - resolution: {integrity: sha512-XVh0r5yq9sLR4vZ6eVZe8FKfIcSgaTBxVBRSYokRj2qksf6QerYnTxz9/GTuKTH/n/HwLP7t6gtlybHetJ/6hQ==} + /@babel/plugin-transform-logical-assignment-operators@7.22.11(@babel/core@7.22.19): + resolution: {integrity: sha512-qQwRTP4+6xFCDV5k7gZBF3C31K34ut0tbEcTKxlX/0KXxm9GLcO14p570aWxFvVzx6QAfPgq7gaeIHXJC8LswQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.22.19) dev: false - /@babel/plugin-transform-dotall-regex/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==} + /@babel/plugin-transform-member-expression-literals@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-create-regexp-features-plugin': 7.17.0_@babel+core@7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-duplicate-keys/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-03DvpbRfvWIXyK0/6QiR1KMTWeT6OcQ7tbhjrXyFS02kjuX/mu5Bvnh5SDSWHxyawit2g5aWhKwI86EE7GUnTw==} + /@babel/plugin-transform-modules-amd@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-module-transforms': 7.22.19(@babel/core@7.22.19) + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-exponentiation-operator/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==} + /@babel/plugin-transform-modules-commonjs@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-jWL4eh90w0HQOTKP2MoXXUpVxilxsB2Vl4ji69rSjS3EcZ/v4sBmn+A3NpepuJzBhOaEBbR7udonlHHn5DWidg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.16.7 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-module-transforms': 7.22.19(@babel/core@7.22.19) + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-simple-access': 7.22.5 dev: false - /@babel/plugin-transform-for-of/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-/QZm9W92Ptpw7sjI9Nx1mbcsWz33+l8kuMIQnDwgQBG5s3fAfQvkRjQ7NqXhtNcKOnPkdICmUHyCaWW06HCsqg==} + /@babel/plugin-transform-modules-systemjs@7.22.11(@babel/core@7.22.19): + resolution: {integrity: sha512-rIqHmHoMEOhI3VkVf5jQ15l539KrwhzqcBO6wdCNWPWc/JWt9ILNYNUssbRpeq0qWns8svuw8LnMNCvWBIJ8wA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-hoist-variables': 7.22.5 + '@babel/helper-module-transforms': 7.22.19(@babel/core@7.22.19) + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-validator-identifier': 7.22.19 dev: false - /@babel/plugin-transform-function-name/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA==} + /@babel/plugin-transform-modules-umd@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.8 - '@babel/helper-function-name': 7.16.7 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-module-transforms': 7.22.19(@babel/core@7.22.19) + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-literals/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-6tH8RTpTWI0s2sV6uq3e/C9wPo4PTqqZps4uF0kzQ9/xPLFQtipynvmT1g/dOfEJ+0EQsHhkQ/zyRId8J2b8zQ==} + /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.22.19 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.22.19) + '@babel/helper-plugin-utils': 7.22.5 + dev: false + + /@babel/plugin-transform-new-target@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-member-expression-literals/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw==} + /@babel/plugin-transform-nullish-coalescing-operator@7.22.11(@babel/core@7.22.19): + resolution: {integrity: sha512-YZWOw4HxXrotb5xsjMJUDlLgcDXSfO9eCmdl1bgW4+/lAGdkjaEvOnQ4p5WKKdUgSzO39dgPl0pTnfxm0OAXcg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.22.19) dev: false - /@babel/plugin-transform-modules-amd/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-KaaEtgBL7FKYwjJ/teH63oAmE3lP34N3kshz8mm4VMAw7U3PxjVwwUmxEFksbgsNUaO3wId9R2AVQYSEGRa2+g==} + /@babel/plugin-transform-numeric-separator@7.22.11(@babel/core@7.22.19): + resolution: {integrity: sha512-3dzU4QGPsILdJbASKhF/V2TVP+gJya1PsueQCxIPCEcerqF21oEcrob4mzjsp2Py/1nLfF5m+xYNMDpmA8vffg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-module-transforms': 7.17.7 - '@babel/helper-plugin-utils': 7.16.7 - babel-plugin-dynamic-import-node: 2.3.3 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.22.19) dev: false - /@babel/plugin-transform-modules-commonjs/7.17.7_@babel+core@7.17.8: - resolution: {integrity: sha512-ITPmR2V7MqioMJyrxUo2onHNC3e+MvfFiFIR0RP21d3PtlVb6sfzoxNKiphSZUOM9hEIdzCcZe83ieX3yoqjUA==} + /@babel/plugin-transform-object-rest-spread@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-fEB+I1+gAmfAyxZcX1+ZUwLeAuuf8VIg67CTznZE0MqVFumWkh8xWtn58I4dxdVf080wn7gzWoF8vndOViJe9Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-module-transforms': 7.17.7 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/helper-simple-access': 7.17.7 - babel-plugin-dynamic-import-node: 2.3.3 - transitivePeerDependencies: - - supports-color + '@babel/compat-data': 7.22.9 + '@babel/core': 7.22.19 + '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.22.19) + '@babel/plugin-transform-parameters': 7.22.15(@babel/core@7.22.19) dev: false - /@babel/plugin-transform-modules-systemjs/7.17.8_@babel+core@7.17.8: - resolution: {integrity: sha512-39reIkMTUVagzgA5x88zDYXPCMT6lcaRKs1+S9K6NKBPErbgO/w/kP8GlNQTC87b412ZTlmNgr3k2JrWgHH+Bw==} + /@babel/plugin-transform-object-super@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-hoist-variables': 7.16.7 - '@babel/helper-module-transforms': 7.17.7 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/helper-validator-identifier': 7.16.7 - babel-plugin-dynamic-import-node: 2.3.3 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-replace-supers': 7.22.9(@babel/core@7.22.19) dev: false - /@babel/plugin-transform-modules-umd/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-EMh7uolsC8O4xhudF2F6wedbSHm1HHZ0C6aJ7K67zcDNidMzVcxWdGr+htW9n21klm+bOn+Rx4CBsAntZd3rEQ==} + /@babel/plugin-transform-optional-catch-binding@7.22.11(@babel/core@7.22.19): + resolution: {integrity: sha512-rli0WxesXUeCJnMYhzAglEjLWVDF6ahb45HuprcmQuLidBJFWjNnOzssk2kuc6e33FlLaiZhG/kUIzUMWdBKaQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-module-transforms': 7.17.7 - '@babel/helper-plugin-utils': 7.16.7 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.22.19) dev: false - /@babel/plugin-transform-named-capturing-groups-regex/7.16.8_@babel+core@7.17.8: - resolution: {integrity: sha512-j3Jw+n5PvpmhRR+mrgIh04puSANCk/T/UA3m3P1MjJkhlK906+ApHhDIqBQDdOgL/r1UYpz4GNclTXxyZrYGSw==} + /@babel/plugin-transform-optional-chaining@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-ngQ2tBhq5vvSJw2Q2Z9i7ealNkpDMU0rGWnHPKqRZO0tzZ5tlaoz4hDvhXioOoaE0X2vfNss1djwg0DXlfu30A==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.0.0 + '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-create-regexp-features-plugin': 7.17.0_@babel+core@7.17.8 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.22.19) dev: false - /@babel/plugin-transform-new-target/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-xiLDzWNMfKoGOpc6t3U+etCE2yRnn3SM09BXqWPIZOBpL2gvVrBWUKnsJx0K/ADi5F5YC5f8APFfWrz25TdlGg==} + /@babel/plugin-transform-parameters@7.22.15(@babel/core@7.12.9): + resolution: {integrity: sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.12.9 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-object-super/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw==} + /@babel/plugin-transform-parameters@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/helper-replace-supers': 7.16.7 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-parameters/7.16.7_@babel+core@7.12.9: - resolution: {integrity: sha512-AT3MufQ7zZEhU2hwOA11axBnExW0Lszu4RL/tAlUJBuNoRak+wehQW8h6KcXOcgjY42fHtDxswuMhMjFEuv/aw==} + /@babel/plugin-transform-private-methods@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.22.19) + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-parameters/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-AT3MufQ7zZEhU2hwOA11axBnExW0Lszu4RL/tAlUJBuNoRak+wehQW8h6KcXOcgjY42fHtDxswuMhMjFEuv/aw==} + /@babel/plugin-transform-private-property-in-object@7.22.11(@babel/core@7.22.19): + resolution: {integrity: sha512-sSCbqZDBKHetvjSwpyWzhuHkmW5RummxJBVbYLkGkaiTOWGxml7SXt0iWa03bzxFIx7wOj3g/ILRd0RcJKBeSQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.22.19) + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.22.19) dev: false - /@babel/plugin-transform-property-literals/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw==} + /@babel/plugin-transform-property-literals@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-react-constant-elements/7.17.6_@babel+core@7.17.8: - resolution: {integrity: sha512-OBv9VkyyKtsHZiHLoSfCn+h6yU7YKX8nrs32xUmOa1SRSk+t03FosB6fBZ0Yz4BpD1WV7l73Nsad+2Tz7APpqw==} + /@babel/plugin-transform-react-constant-elements@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-BF5SXoO+nX3h5OhlN78XbbDrBOffv+AxPP2ENaJOVqjWCgBDeOY3WcaUcddutGSfoap+5NEQ/q/4I3WZIvgkXA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-react-display-name/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-qgIg8BcZgd0G/Cz916D5+9kqX0c7nPZyXaP8R2tLNN5tkyIZdG5fEwBrxwplzSnjC1jvQmyMNVwUCZPcbGY7Pg==} + /@babel/plugin-transform-react-display-name@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-PVk3WPYudRF5z4GKMEYUrLjPl38fJSKNaEOkFuoprioowGuWN6w2RKznuFNSlJx7pzzXXStPUnNSOEO0jL5EVw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-react-jsx-development/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-RMvQWvpla+xy6MlBpPlrKZCMRs2AGiHOGHY3xRwl0pEeim348dDyxeH4xBsMPbIMhujeq7ihE702eM2Ew0Wo+A==} + /@babel/plugin-transform-react-jsx-development@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/plugin-transform-react-jsx': 7.17.3_@babel+core@7.17.8 + '@babel/core': 7.22.19 + '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.22.19) dev: false - /@babel/plugin-transform-react-jsx/7.17.3_@babel+core@7.17.8: - resolution: {integrity: sha512-9tjBm4O07f7mzKSIlEmPdiE6ub7kfIe6Cd+w+oQebpATfTQMAgW+YOuWxogbKVTulA+MEO7byMeIUtQ1z+z+ZQ==} + /@babel/plugin-transform-react-jsx@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-oKckg2eZFa8771O/5vi7XeTvmM6+O9cxZu+kanTU7tD4sin5nO/G8jGJhq8Hvt2Z0kUoEDRayuZLaUlYl8QuGA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-annotate-as-pure': 7.16.7 - '@babel/helper-module-imports': 7.16.7 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-jsx': 7.16.7_@babel+core@7.17.8 - '@babel/types': 7.17.0 + '@babel/core': 7.22.19 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.22.19) + '@babel/types': 7.22.19 dev: false - /@babel/plugin-transform-react-pure-annotations/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-hs71ToC97k3QWxswh2ElzMFABXHvGiJ01IB1TbYQDGeWRKWz/MPUTh5jGExdHvosYKpnJW5Pm3S4+TA3FyX+GA==} + /@babel/plugin-transform-react-pure-annotations@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-gP4k85wx09q+brArVinTXhWiyzLl9UpmGva0+mWyKxk6JZequ05x3eUcIUE+FyttPKJFRRVtAvQaJ6YF9h1ZpA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-annotate-as-pure': 7.16.7 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-regenerator/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-mF7jOgGYCkSJagJ6XCujSQg+6xC1M77/03K2oBmVJWoFGNUtnVJO4WHKJk3dnPC8HCcj4xBQP1Egm8DWh3Pb3Q==} + /@babel/plugin-transform-regenerator@7.22.10(@babel/core@7.22.19): + resolution: {integrity: sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - regenerator-transform: 0.14.5 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + regenerator-transform: 0.15.2 dev: false - /@babel/plugin-transform-reserved-words/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-KQzzDnZ9hWQBjwi5lpY5v9shmm6IVG0U9pB18zvMu2i4H90xpT4gmqwPYsn8rObiadYe2M0gmgsiOIF5A/2rtg==} + /@babel/plugin-transform-reserved-words@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-runtime/7.17.0_@babel+core@7.17.8: - resolution: {integrity: sha512-fr7zPWnKXNc1xoHfrIU9mN/4XKX4VLZ45Q+oMhfsYIaHvg7mHgmhfOy/ckRWqDK7XF3QDigRpkh5DKq6+clE8A==} + /@babel/plugin-transform-runtime@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-tEVLhk8NRZSmwQ0DJtxxhTrCht1HVo8VaMzYT4w6lwyKBuHsgoioAUA7/6eT2fRfc5/23fuGdlwIxXhRVgWr4g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-module-imports': 7.16.7 - '@babel/helper-plugin-utils': 7.16.7 - babel-plugin-polyfill-corejs2: 0.3.1_@babel+core@7.17.8 - babel-plugin-polyfill-corejs3: 0.5.2_@babel+core@7.17.8 - babel-plugin-polyfill-regenerator: 0.3.1_@babel+core@7.17.8 - semver: 6.3.0 + '@babel/core': 7.22.19 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-plugin-utils': 7.22.5 + babel-plugin-polyfill-corejs2: 0.4.5(@babel/core@7.22.19) + babel-plugin-polyfill-corejs3: 0.8.3(@babel/core@7.22.19) + babel-plugin-polyfill-regenerator: 0.5.2(@babel/core@7.22.19) + semver: 6.3.1 transitivePeerDependencies: - supports-color dev: false - /@babel/plugin-transform-shorthand-properties/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg==} + /@babel/plugin-transform-shorthand-properties@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-spread/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-+pjJpgAngb53L0iaA5gU/1MLXJIfXcYepLgXB3esVRf4fqmj8f2cxM3/FKaHsZms08hFQJkFccEWuIpm429TXg==} + /@babel/plugin-transform-spread@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/helper-skip-transparent-expression-wrappers': 7.16.0 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 dev: false - /@babel/plugin-transform-sticky-regex/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw==} + /@babel/plugin-transform-sticky-regex@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-template-literals/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-VwbkDDUeenlIjmfNeDX/V0aWrQH2QiVyJtwymVQSzItFDTpxfyJh3EVaQiS0rIN/CqbLGr0VcGmuwyTdZtdIsA==} + /@babel/plugin-transform-template-literals@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-typeof-symbol/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-p2rOixCKRJzpg9JB4gjnG4gjWkWa89ZoYUnl9snJ1cWIcTH/hvxZqfO+WjG6T8DRBpctEol5jw1O5rA8gkCokQ==} + /@babel/plugin-transform-typeof-symbol@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-typescript/7.16.8_@babel+core@7.17.8: - resolution: {integrity: sha512-bHdQ9k7YpBDO2d0NVfkj51DpQcvwIzIusJ7mEUaMlbZq3Kt/U47j24inXZHQ5MDiYpCs+oZiwnXyKedE8+q7AQ==} + /@babel/plugin-transform-typescript@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-1uirS0TnijxvQLnlv5wQBwOX3E1wCFX7ITv+9pBV2wKEk4K+M5tqDaoNXnTH8tjEIYHLO98MwiTWO04Ggz4XuA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-create-class-features-plugin': 7.17.6_@babel+core@7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-syntax-typescript': 7.16.7_@babel+core@7.17.8 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.22.19 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.22.19) + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-typescript': 7.22.5(@babel/core@7.22.19) + dev: false + + /@babel/plugin-transform-unicode-escapes@7.22.10(@babel/core@7.22.19): + resolution: {integrity: sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-unicode-escapes/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q==} + /@babel/plugin-transform-unicode-property-regex@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.22.19) + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-unicode-regex/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q==} + /@babel/plugin-transform-unicode-regex@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-create-regexp-features-plugin': 7.17.0_@babel+core@7.17.8 - '@babel/helper-plugin-utils': 7.16.7 + '@babel/core': 7.22.19 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.22.19) + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/preset-env/7.16.11_@babel+core@7.17.8: - resolution: {integrity: sha512-qcmWG8R7ZW6WBRPZK//y+E3Cli151B20W1Rv7ln27vuPaXU/8TKms6jFdiJtF7UDTxcrb7mZd88tAeK9LjdT8g==} + /@babel/plugin-transform-unicode-sets-regex@7.22.5(@babel/core@7.22.19): + resolution: {integrity: sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.22.19 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.22.19) + '@babel/helper-plugin-utils': 7.22.5 + dev: false + + /@babel/preset-env@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-tZFHr54GBkHk6hQuVA8w4Fmq+MSPsfvMG0vPnOYyTnJpyfMqybL8/MbNCPRT9zc2KBO2pe4tq15g6Uno4Jpoag==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.17.7 - '@babel/core': 7.17.8 - '@babel/helper-compilation-targets': 7.17.7_@babel+core@7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/helper-validator-option': 7.16.7 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-proposal-async-generator-functions': 7.16.8_@babel+core@7.17.8 - '@babel/plugin-proposal-class-properties': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-proposal-class-static-block': 7.17.6_@babel+core@7.17.8 - '@babel/plugin-proposal-dynamic-import': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-proposal-export-namespace-from': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-proposal-json-strings': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-proposal-logical-assignment-operators': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-proposal-nullish-coalescing-operator': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-proposal-numeric-separator': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-proposal-object-rest-spread': 7.17.3_@babel+core@7.17.8 - '@babel/plugin-proposal-optional-catch-binding': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-proposal-optional-chaining': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-proposal-private-methods': 7.16.11_@babel+core@7.17.8 - '@babel/plugin-proposal-private-property-in-object': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-proposal-unicode-property-regex': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.17.8 - '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.17.8 - '@babel/plugin-syntax-class-static-block': 7.14.5_@babel+core@7.17.8 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.17.8 - '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.17.8 - '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.17.8 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.17.8 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.17.8 - '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.17.8 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.17.8 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.17.8 - '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.17.8 - '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.17.8 - '@babel/plugin-syntax-top-level-await': 7.14.5_@babel+core@7.17.8 - '@babel/plugin-transform-arrow-functions': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-async-to-generator': 7.16.8_@babel+core@7.17.8 - '@babel/plugin-transform-block-scoped-functions': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-block-scoping': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-classes': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-computed-properties': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-destructuring': 7.17.7_@babel+core@7.17.8 - '@babel/plugin-transform-dotall-regex': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-duplicate-keys': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-exponentiation-operator': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-for-of': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-function-name': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-literals': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-member-expression-literals': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-modules-amd': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-modules-commonjs': 7.17.7_@babel+core@7.17.8 - '@babel/plugin-transform-modules-systemjs': 7.17.8_@babel+core@7.17.8 - '@babel/plugin-transform-modules-umd': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-named-capturing-groups-regex': 7.16.8_@babel+core@7.17.8 - '@babel/plugin-transform-new-target': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-object-super': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-parameters': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-property-literals': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-regenerator': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-reserved-words': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-shorthand-properties': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-spread': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-sticky-regex': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-template-literals': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-typeof-symbol': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-unicode-escapes': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-unicode-regex': 7.16.7_@babel+core@7.17.8 - '@babel/preset-modules': 0.1.5_@babel+core@7.17.8 - '@babel/types': 7.17.0 - babel-plugin-polyfill-corejs2: 0.3.1_@babel+core@7.17.8 - babel-plugin-polyfill-corejs3: 0.5.2_@babel+core@7.17.8 - babel-plugin-polyfill-regenerator: 0.3.1_@babel+core@7.17.8 - core-js-compat: 3.21.1 - semver: 6.3.0 + '@babel/compat-data': 7.22.9 + '@babel/core': 7.22.19 + '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-validator-option': 7.22.15 + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.22.15(@babel/core@7.22.19) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.22.15(@babel/core@7.22.19) + '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.22.19) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.22.19) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.22.19) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.22.19) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.22.19) + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.22.19) + '@babel/plugin-syntax-import-assertions': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-syntax-import-attributes': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.22.19) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.22.19) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.22.19) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.22.19) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.22.19) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.22.19) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.22.19) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.22.19) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.22.19) + '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.22.19) + '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.22.19) + '@babel/plugin-transform-arrow-functions': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-async-generator-functions': 7.22.15(@babel/core@7.22.19) + '@babel/plugin-transform-async-to-generator': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-block-scoped-functions': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-block-scoping': 7.22.15(@babel/core@7.22.19) + '@babel/plugin-transform-class-properties': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-class-static-block': 7.22.11(@babel/core@7.22.19) + '@babel/plugin-transform-classes': 7.22.15(@babel/core@7.22.19) + '@babel/plugin-transform-computed-properties': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-destructuring': 7.22.15(@babel/core@7.22.19) + '@babel/plugin-transform-dotall-regex': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-duplicate-keys': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-dynamic-import': 7.22.11(@babel/core@7.22.19) + '@babel/plugin-transform-exponentiation-operator': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-export-namespace-from': 7.22.11(@babel/core@7.22.19) + '@babel/plugin-transform-for-of': 7.22.15(@babel/core@7.22.19) + '@babel/plugin-transform-function-name': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-json-strings': 7.22.11(@babel/core@7.22.19) + '@babel/plugin-transform-literals': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-logical-assignment-operators': 7.22.11(@babel/core@7.22.19) + '@babel/plugin-transform-member-expression-literals': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-modules-amd': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-modules-commonjs': 7.22.15(@babel/core@7.22.19) + '@babel/plugin-transform-modules-systemjs': 7.22.11(@babel/core@7.22.19) + '@babel/plugin-transform-modules-umd': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-new-target': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-nullish-coalescing-operator': 7.22.11(@babel/core@7.22.19) + '@babel/plugin-transform-numeric-separator': 7.22.11(@babel/core@7.22.19) + '@babel/plugin-transform-object-rest-spread': 7.22.15(@babel/core@7.22.19) + '@babel/plugin-transform-object-super': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-optional-catch-binding': 7.22.11(@babel/core@7.22.19) + '@babel/plugin-transform-optional-chaining': 7.22.15(@babel/core@7.22.19) + '@babel/plugin-transform-parameters': 7.22.15(@babel/core@7.22.19) + '@babel/plugin-transform-private-methods': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-private-property-in-object': 7.22.11(@babel/core@7.22.19) + '@babel/plugin-transform-property-literals': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-regenerator': 7.22.10(@babel/core@7.22.19) + '@babel/plugin-transform-reserved-words': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-shorthand-properties': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-spread': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-sticky-regex': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-template-literals': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-typeof-symbol': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-unicode-escapes': 7.22.10(@babel/core@7.22.19) + '@babel/plugin-transform-unicode-property-regex': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-unicode-regex': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-unicode-sets-regex': 7.22.5(@babel/core@7.22.19) + '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.22.19) + '@babel/types': 7.22.19 + babel-plugin-polyfill-corejs2: 0.4.5(@babel/core@7.22.19) + babel-plugin-polyfill-corejs3: 0.8.3(@babel/core@7.22.19) + babel-plugin-polyfill-regenerator: 0.5.2(@babel/core@7.22.19) + core-js-compat: 3.32.2 + semver: 6.3.1 transitivePeerDependencies: - supports-color dev: false - /@babel/preset-modules/0.1.5_@babel+core@7.17.8: - resolution: {integrity: sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==} + /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.22.19): + resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/plugin-proposal-unicode-property-regex': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-dotall-regex': 7.16.7_@babel+core@7.17.8 - '@babel/types': 7.17.0 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/types': 7.22.19 esutils: 2.0.3 dev: false - /@babel/preset-react/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-fWpyI8UM/HE6DfPBzD8LnhQ/OcH8AgTaqcqP2nGOXEUV+VKBR5JRN9hCk9ai+zQQ57vtm9oWeXguBCPNUjytgA==} + /@babel/preset-react@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-Csy1IJ2uEh/PecCBXXoZGAZBeCATTuePzCSB7dLYWS0vOEj6CNpjxIhW4duWwZodBNueH7QO14WbGn8YyeuN9w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/helper-validator-option': 7.16.7 - '@babel/plugin-transform-react-display-name': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-react-jsx': 7.17.3_@babel+core@7.17.8 - '@babel/plugin-transform-react-jsx-development': 7.16.7_@babel+core@7.17.8 - '@babel/plugin-transform-react-pure-annotations': 7.16.7_@babel+core@7.17.8 + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-validator-option': 7.22.15 + '@babel/plugin-transform-react-display-name': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.22.19) + '@babel/plugin-transform-react-jsx-development': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-react-pure-annotations': 7.22.5(@babel/core@7.22.19) dev: false - /@babel/preset-typescript/7.16.7_@babel+core@7.17.8: - resolution: {integrity: sha512-WbVEmgXdIyvzB77AQjGBEyYPZx+8tTsO50XtfozQrkW8QB2rLJpH2lgx0TRw5EJrBxOZQ+wCcyPVQvS8tjEHpQ==} + /@babel/preset-typescript@7.22.15(@babel/core@7.22.19): + resolution: {integrity: sha512-HblhNmh6yM+cU4VwbBRpxFhxsTdfS1zsvH9W+gEjD0ARV9+8B4sNfpI6GuhePti84nuvhiwKS539jKPFHskA9A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-plugin-utils': 7.16.7 - '@babel/helper-validator-option': 7.16.7 - '@babel/plugin-transform-typescript': 7.16.8_@babel+core@7.17.8 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.22.19 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-validator-option': 7.22.15 + '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.22.19) + '@babel/plugin-transform-modules-commonjs': 7.22.15(@babel/core@7.22.19) + '@babel/plugin-transform-typescript': 7.22.15(@babel/core@7.22.19) + dev: false + + /@babel/regjsgen@0.8.0: + resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} dev: false - /@babel/runtime-corejs3/7.17.8: - resolution: {integrity: sha512-ZbYSUvoSF6dXZmMl/CYTMOvzIFnbGfv4W3SEHYgMvNsFTeLaF2gkGAF4K2ddmtSK4Emej+0aYcnSC6N5dPCXUQ==} + /@babel/runtime-corejs3@7.22.15: + resolution: {integrity: sha512-SAj8oKi8UogVi6eXQXKNPu8qZ78Yzy7zawrlTr0M+IuW/g8Qe9gVDhGcF9h1S69OyACpYoLxEzpjs1M15sI5wQ==} engines: {node: '>=6.9.0'} dependencies: - core-js-pure: 3.21.1 - regenerator-runtime: 0.13.9 + core-js-pure: 3.32.2 + regenerator-runtime: 0.14.0 dev: false - /@babel/runtime/7.17.8: - resolution: {integrity: sha512-dQpEpK0O9o6lj6oPu0gRDbbnk+4LeHlNcBpspf6Olzt3GIX4P1lWF1gS+pHLDFlaJvbR6q7jCfQ08zA4QJBnmA==} + /@babel/runtime@7.22.15: + resolution: {integrity: sha512-T0O+aa+4w0u06iNmapipJXMV4HoUir03hpx3/YqXXhu9xim3w+dVphjFWl1OH8NbZHw5Lbm9k45drDkgq2VNNA==} engines: {node: '>=6.9.0'} dependencies: - regenerator-runtime: 0.13.9 + regenerator-runtime: 0.14.0 - /@babel/template/7.16.7: - resolution: {integrity: sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==} + /@babel/template@7.22.15: + resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.16.7 - '@babel/parser': 7.17.8 - '@babel/types': 7.17.0 + '@babel/code-frame': 7.22.13 + '@babel/parser': 7.22.16 + '@babel/types': 7.22.19 dev: false - /@babel/traverse/7.17.3: - resolution: {integrity: sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==} + /@babel/traverse@7.22.19: + resolution: {integrity: sha512-ZCcpVPK64krfdScRbpxF6xA5fz7IOsfMwx1tcACvCzt6JY+0aHkBk7eIU8FRDSZRU5Zei6Z4JfgAxN1bqXGECg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.16.7 - '@babel/generator': 7.17.7 - '@babel/helper-environment-visitor': 7.16.7 - '@babel/helper-function-name': 7.16.7 - '@babel/helper-hoist-variables': 7.16.7 - '@babel/helper-split-export-declaration': 7.16.7 - '@babel/parser': 7.17.8 - '@babel/types': 7.17.0 + '@babel/code-frame': 7.22.13 + '@babel/generator': 7.22.15 + '@babel/helper-environment-visitor': 7.22.5 + '@babel/helper-function-name': 7.22.5 + '@babel/helper-hoist-variables': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/parser': 7.22.16 + '@babel/types': 7.22.19 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: - supports-color dev: false - /@babel/types/7.17.0: - resolution: {integrity: sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==} + /@babel/types@7.22.19: + resolution: {integrity: sha512-P7LAw/LbojPzkgp5oznjE6tQEIWbp4PkkfrZDINTro9zgBRtI324/EYsiSI7lhPbpIQ+DCeR2NNmMWANGGfZsg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-validator-identifier': 7.16.7 + '@babel/helper-string-parser': 7.22.5 + '@babel/helper-validator-identifier': 7.22.19 to-fast-properties: 2.0.0 dev: false - /@cspotcode/source-map-consumer/0.8.0: - resolution: {integrity: sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg==} - engines: {node: '>= 12'} - dev: true + /@colors/colors@1.5.0: + resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} + engines: {node: '>=0.1.90'} + requiresBuild: true + dev: false + optional: true - /@cspotcode/source-map-support/0.7.0: - resolution: {integrity: sha512-X4xqRHqN8ACt2aHVe51OxeA2HjbcL4MqFqXkrmQszJ1NOUuUu5u6Vqx/0lZSVNku7velL5FC/s5uEAj1lsBMhA==} + /@cspotcode/source-map-support@0.8.1: + resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} engines: {node: '>=12'} dependencies: - '@cspotcode/source-map-consumer': 0.8.0 + '@jridgewell/trace-mapping': 0.3.9 dev: true - /@docsearch/css/3.0.0: - resolution: {integrity: sha512-1kkV7tkAsiuEd0shunYRByKJe3xQDG2q7wYg24SOw1nV9/2lwEd4WrUYRJC/ukGTl2/kHeFxsaUvtiOy0y6fFA==} + /@discoveryjs/json-ext@0.5.7: + resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==} + engines: {node: '>=10.0.0'} dev: false - /@docsearch/react/3.0.0_sfoxds7t5ydpegc3knd667wn6m: - resolution: {integrity: sha512-yhMacqS6TVQYoBh/o603zszIb5Bl8MIXuOc6Vy617I74pirisDzzcNh0NEaYQt50fVVR3khUbeEhUEWEWipESg==} + /@docsearch/css@3.5.2: + resolution: {integrity: sha512-SPiDHaWKQZpwR2siD0KQUwlStvIAnEyK6tAE2h2Wuoq8ue9skzhlyVQ1ddzOxX6khULnAALDiR/isSF3bnuciA==} + dev: false + + /@docsearch/react@3.5.2(@algolia/client-search@4.20.0)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.8.2): + resolution: {integrity: sha512-9Ahcrs5z2jq/DcAvYtvlqEBHImbm4YJI8M9y0x6Tqg598P40HTEkX7hsMcIuThI+hTFxRGZ9hll0Wygm2yEjng==} peerDependencies: - '@types/react': '>= 16.8.0 < 18.0.0' - react: '>= 16.8.0 < 18.0.0' - react-dom: '>= 16.8.0 < 18.0.0' + '@types/react': '>= 16.8.0 < 19.0.0' + react: '>= 16.8.0 < 19.0.0' + react-dom: '>= 16.8.0 < 19.0.0' + search-insights: '>= 1 < 3' + peerDependenciesMeta: + '@types/react': + optional: true + react: + optional: true + react-dom: + optional: true + search-insights: + optional: true dependencies: - '@algolia/autocomplete-core': 1.5.2 - '@algolia/autocomplete-preset-algolia': 1.5.2_algoliasearch@4.13.0 - '@docsearch/css': 3.0.0 - algoliasearch: 4.13.0 + '@algolia/autocomplete-core': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0)(search-insights@2.8.2) + '@algolia/autocomplete-preset-algolia': 1.9.3(@algolia/client-search@4.20.0)(algoliasearch@4.20.0) + '@docsearch/css': 3.5.2 + algoliasearch: 4.20.0 react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 + react-dom: 17.0.2(react@17.0.2) + search-insights: 2.8.2 transitivePeerDependencies: - '@algolia/client-search' dev: false - /@docusaurus/core/2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa: - resolution: {integrity: sha512-puV7l+0/BPSi07Xmr8tVktfs1BzhC8P5pm6Bs2CfvysCJ4nefNCD1CosPc1PGBWy901KqeeEJ1aoGwj9tU3AUA==} - engines: {node: '>=14'} + /@docusaurus/core@2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): + resolution: {integrity: sha512-dWH5P7cgeNSIg9ufReX6gaCl/TmrGKD38Orbwuz05WPhAQtFXHd5B8Qym1TiXfvUNvwoYKkAJOJuGe8ou0Z7PA==} + engines: {node: '>=16.14'} hasBin: true peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@babel/core': 7.17.8 - '@babel/generator': 7.17.7 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.17.8 - '@babel/plugin-transform-runtime': 7.17.0_@babel+core@7.17.8 - '@babel/preset-env': 7.16.11_@babel+core@7.17.8 - '@babel/preset-react': 7.16.7_@babel+core@7.17.8 - '@babel/preset-typescript': 7.16.7_@babel+core@7.17.8 - '@babel/runtime': 7.17.8 - '@babel/runtime-corejs3': 7.17.8 - '@babel/traverse': 7.17.3 - '@docusaurus/cssnano-preset': 2.0.0-beta.18 - '@docusaurus/logger': 2.0.0-beta.18 - '@docusaurus/mdx-loader': 2.0.0-beta.18_sfoxds7t5ydpegc3knd667wn6m - '@docusaurus/react-loadable': 5.5.2_react@17.0.2 - '@docusaurus/utils': 2.0.0-beta.18 - '@docusaurus/utils-common': 2.0.0-beta.18 - '@docusaurus/utils-validation': 2.0.0-beta.18 - '@slorber/static-site-generator-webpack-plugin': 4.0.4 - '@svgr/webpack': 6.2.1 - autoprefixer: 10.4.4_postcss@8.4.12 - babel-loader: 8.2.4_7kihywspc3gmje7ccze4zrmvoq - babel-plugin-dynamic-import-node: 2.3.0 + '@babel/core': 7.22.19 + '@babel/generator': 7.22.15 + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.22.19) + '@babel/plugin-transform-runtime': 7.22.15(@babel/core@7.22.19) + '@babel/preset-env': 7.22.15(@babel/core@7.22.19) + '@babel/preset-react': 7.22.15(@babel/core@7.22.19) + '@babel/preset-typescript': 7.22.15(@babel/core@7.22.19) + '@babel/runtime': 7.22.15 + '@babel/runtime-corejs3': 7.22.15 + '@babel/traverse': 7.22.19 + '@docusaurus/cssnano-preset': 2.4.3 + '@docusaurus/logger': 2.4.3 + '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/react-loadable': 5.5.2(react@17.0.2) + '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) + '@docusaurus/utils-common': 2.4.3(@docusaurus/types@2.4.3) + '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) + '@slorber/static-site-generator-webpack-plugin': 4.0.7 + '@svgr/webpack': 6.5.1 + autoprefixer: 10.4.15(postcss@8.4.29) + babel-loader: 8.3.0(@babel/core@7.22.19)(webpack@5.88.2) + babel-plugin-dynamic-import-node: 2.3.3 boxen: 6.2.1 + chalk: 4.1.2 chokidar: 3.5.3 - clean-css: 5.2.4 - cli-table3: 0.6.1 - combine-promises: 1.1.0 + clean-css: 5.3.2 + cli-table3: 0.6.3 + combine-promises: 1.2.0 commander: 5.1.0 - copy-webpack-plugin: 10.2.4_webpack@5.70.0 - core-js: 3.21.1 - css-loader: 6.7.1_webpack@5.70.0 - css-minimizer-webpack-plugin: 3.4.1_35zgfab327w3ywmceygpdsm34e - cssnano: 5.1.5_postcss@8.4.12 - del: 6.0.0 - detect-port: 1.3.0 + copy-webpack-plugin: 11.0.0(webpack@5.88.2) + core-js: 3.32.2 + css-loader: 6.8.1(webpack@5.88.2) + css-minimizer-webpack-plugin: 4.2.2(clean-css@5.3.2)(webpack@5.88.2) + cssnano: 5.1.15(postcss@8.4.29) + del: 6.1.1 + detect-port: 1.5.1 escape-html: 1.0.3 - eta: 1.12.3 - file-loader: 6.2.0_webpack@5.70.0 - fs-extra: 10.0.1 + eta: 2.2.0 + file-loader: 6.2.0(webpack@5.88.2) + fs-extra: 10.1.0 html-minifier-terser: 6.1.0 - html-tags: 3.1.0 - html-webpack-plugin: 5.5.0_webpack@5.70.0 + html-tags: 3.3.1 + html-webpack-plugin: 5.5.3(webpack@5.88.2) import-fresh: 3.3.0 - is-root: 2.1.0 leven: 3.1.0 lodash: 4.17.21 - mini-css-extract-plugin: 2.6.0_webpack@5.70.0 - nprogress: 0.2.0 - postcss: 8.4.12 - postcss-loader: 6.2.1_wn4p5kzkgq2ohl66pfawxjf2x4 + mini-css-extract-plugin: 2.7.6(webpack@5.88.2) + postcss: 8.4.29 + postcss-loader: 7.3.3(postcss@8.4.29)(typescript@4.9.5)(webpack@5.88.2) prompts: 2.4.2 react: 17.0.2 - react-dev-utils: 12.0.0_dowam63vmehxjyamkjde33fuby - react-dom: 17.0.2_react@17.0.2 - react-helmet-async: 1.2.3_sfoxds7t5ydpegc3knd667wn6m - react-loadable: /@docusaurus/react-loadable/5.5.2_react@17.0.2 - react-loadable-ssr-addon-v5-slorber: 1.0.1_7rx3sysosxblb5ytgwvsqln3ni - react-router: 5.2.1_react@17.0.2 - react-router-config: 5.1.1_eui4og74r262zsjriwu2mckbem - react-router-dom: 5.3.0_react@17.0.2 - remark-admonitions: 1.2.1 + react-dev-utils: 12.0.1(typescript@4.9.5)(webpack@5.88.2) + react-dom: 17.0.2(react@17.0.2) + react-helmet-async: 1.3.0(react-dom@17.0.2)(react@17.0.2) + react-loadable: /@docusaurus/react-loadable@5.5.2(react@17.0.2) + react-loadable-ssr-addon-v5-slorber: 1.0.1(@docusaurus/react-loadable@5.5.2)(webpack@5.88.2) + react-router: 5.3.4(react@17.0.2) + react-router-config: 5.1.1(react-router@5.3.4)(react@17.0.2) + react-router-dom: 5.3.4(react@17.0.2) rtl-detect: 1.0.4 - semver: 7.3.5 - serve-handler: 6.1.3 + semver: 7.5.4 + serve-handler: 6.1.5 shelljs: 0.8.5 - terser-webpack-plugin: 5.3.1_webpack@5.70.0 - tslib: 2.3.1 + terser-webpack-plugin: 5.3.9(webpack@5.88.2) + tslib: 2.6.2 update-notifier: 5.1.0 - url-loader: 4.1.1_plzek67nbn24rjxjp577ruq77e + url-loader: 4.1.1(file-loader@6.2.0)(webpack@5.88.2) wait-on: 6.0.1 - webpack: 5.70.0 - webpack-bundle-analyzer: 4.5.0 - webpack-dev-server: 4.7.4_webpack@5.70.0 - webpack-merge: 5.8.0 - webpackbar: 5.0.2_webpack@5.70.0 + webpack: 5.88.2 + webpack-bundle-analyzer: 4.9.1 + webpack-dev-server: 4.15.1(webpack@5.88.2) + webpack-merge: 5.9.0 + webpackbar: 5.0.2(webpack@5.88.2) transitivePeerDependencies: + - '@docusaurus/types' - '@parcel/css' - '@swc/core' + - '@swc/css' - bufferutil - csso - debug - esbuild - eslint + - lightningcss - supports-color - typescript - uglify-js @@ -1635,48 +1744,60 @@ packages: - webpack-cli dev: false - /@docusaurus/cssnano-preset/2.0.0-beta.18: - resolution: {integrity: sha512-VxhYmpyx16Wv00W9TUfLVv0NgEK/BwP7pOdWoaiELEIAMV7SO1+6iB8gsFUhtfKZ31I4uPVLMKrCyWWakoFeFA==} + /@docusaurus/cssnano-preset@2.4.3: + resolution: {integrity: sha512-ZvGSRCi7z9wLnZrXNPG6DmVPHdKGd8dIn9pYbEOFiYihfv4uDR3UtxogmKf+rT8ZlKFf5Lqne8E8nt08zNM8CA==} + engines: {node: '>=16.14'} dependencies: - cssnano-preset-advanced: 5.3.1_postcss@8.4.12 - postcss: 8.4.12 - postcss-sort-media-queries: 4.2.1_postcss@8.4.12 + cssnano-preset-advanced: 5.3.10(postcss@8.4.29) + postcss: 8.4.29 + postcss-sort-media-queries: 4.4.1(postcss@8.4.29) + tslib: 2.6.2 dev: false - /@docusaurus/logger/2.0.0-beta.18: - resolution: {integrity: sha512-frNe5vhH3mbPmH980Lvzaz45+n1PQl3TkslzWYXQeJOkFX17zUd3e3U7F9kR1+DocmAqHkgAoWuXVcvEoN29fg==} - engines: {node: '>=14'} + /@docusaurus/logger@2.4.1: + resolution: {integrity: sha512-5h5ysIIWYIDHyTVd8BjheZmQZmEgWDR54aQ1BX9pjFfpyzFo5puKXKYrYJXbjEHGyVhEzmB9UXwbxGfaZhOjcg==} + engines: {node: '>=16.14'} dependencies: chalk: 4.1.2 - tslib: 2.3.1 + tslib: 2.6.2 dev: false - /@docusaurus/mdx-loader/2.0.0-beta.18_sfoxds7t5ydpegc3knd667wn6m: - resolution: {integrity: sha512-pOmAQM4Y1jhuZTbEhjh4ilQa74Mh6Q0pMZn1xgIuyYDdqvIOrOlM/H0i34YBn3+WYuwsGim4/X0qynJMLDUA4A==} - engines: {node: '>=14'} + /@docusaurus/logger@2.4.3: + resolution: {integrity: sha512-Zxws7r3yLufk9xM1zq9ged0YHs65mlRmtsobnFkdZTxWXdTYlWWLWdKyNKAsVC+D7zg+pv2fGbyabdOnyZOM3w==} + engines: {node: '>=16.14'} + dependencies: + chalk: 4.1.2 + tslib: 2.6.2 + dev: false + + /@docusaurus/mdx-loader@2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2): + resolution: {integrity: sha512-b1+fDnWtl3GiqkL0BRjYtc94FZrcDDBV1j8446+4tptB9BAOlePwG2p/pK6vGvfL53lkOsszXMghr2g67M0vCw==} + engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@babel/parser': 7.17.8 - '@babel/traverse': 7.17.3 - '@docusaurus/logger': 2.0.0-beta.18 - '@docusaurus/utils': 2.0.0-beta.18 + '@babel/parser': 7.22.16 + '@babel/traverse': 7.22.19 + '@docusaurus/logger': 2.4.3 + '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) '@mdx-js/mdx': 1.6.22 escape-html: 1.0.3 - file-loader: 6.2.0_webpack@5.70.0 - fs-extra: 10.0.1 - image-size: 1.0.1 + file-loader: 6.2.0(webpack@5.88.2) + fs-extra: 10.1.0 + image-size: 1.0.2 mdast-util-to-string: 2.0.0 react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 + react-dom: 17.0.2(react@17.0.2) remark-emoji: 2.2.0 stringify-object: 3.3.0 - tslib: 2.3.1 + tslib: 2.6.2 + unified: 9.2.2 unist-util-visit: 2.0.3 - url-loader: 4.1.1_plzek67nbn24rjxjp577ruq77e - webpack: 5.70.0 + url-loader: 4.1.1(file-loader@6.2.0)(webpack@5.88.2) + webpack: 5.88.2 transitivePeerDependencies: + - '@docusaurus/types' - '@swc/core' - esbuild - supports-color @@ -1684,57 +1805,63 @@ packages: - webpack-cli dev: false - /@docusaurus/module-type-aliases/2.0.0-beta.18_sfoxds7t5ydpegc3knd667wn6m: - resolution: {integrity: sha512-e6mples8FZRyT7QyqidGS6BgkROjM+gljJsdOqoctbtBp+SZ5YDjwRHOmoY7eqEfsQNOaFZvT2hK38ui87hCRA==} + /@docusaurus/module-type-aliases@2.4.3(react-dom@17.0.2)(react@17.0.2): + resolution: {integrity: sha512-cwkBkt1UCiduuvEAo7XZY01dJfRn7UR/75mBgOdb1hKknhrabJZ8YH+7savd/y9kLExPyrhe0QwdS9GuzsRRIA==} peerDependencies: react: '*' react-dom: '*' dependencies: - '@docusaurus/types': 2.0.0-beta.18 - '@types/react': 17.0.41 - '@types/react-router-config': 5.0.6 + '@docusaurus/react-loadable': 5.5.2(react@17.0.2) + '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@types/history': 4.7.11 + '@types/react': 18.2.21 + '@types/react-router-config': 5.0.7 '@types/react-router-dom': 5.3.3 react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 - react-helmet-async: 1.2.3_sfoxds7t5ydpegc3knd667wn6m + react-dom: 17.0.2(react@17.0.2) + react-helmet-async: 1.3.0(react-dom@17.0.2)(react@17.0.2) + react-loadable: /@docusaurus/react-loadable@5.5.2(react@17.0.2) transitivePeerDependencies: - '@swc/core' - esbuild - uglify-js - webpack-cli - /@docusaurus/plugin-content-blog/2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa: - resolution: {integrity: sha512-qzK83DgB+mxklk3PQC2nuTGPQD/8ogw1nXSmaQpyXAyhzcz4CXAZ9Swl/Ee9A/bvPwQGnSHSP3xqIYl8OkFtfw==} - engines: {node: '>=14'} + /@docusaurus/plugin-content-blog@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): + resolution: {integrity: sha512-PVhypqaA0t98zVDpOeTqWUTvRqCEjJubtfFUQ7zJNYdbYTbS/E/ytq6zbLVsN/dImvemtO/5JQgjLxsh8XLo8Q==} + engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/logger': 2.0.0-beta.18 - '@docusaurus/mdx-loader': 2.0.0-beta.18_sfoxds7t5ydpegc3knd667wn6m - '@docusaurus/utils': 2.0.0-beta.18 - '@docusaurus/utils-common': 2.0.0-beta.18 - '@docusaurus/utils-validation': 2.0.0-beta.18 - cheerio: 1.0.0-rc.10 + '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/logger': 2.4.3 + '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) + '@docusaurus/utils-common': 2.4.3(@docusaurus/types@2.4.3) + '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) + cheerio: 1.0.0-rc.12 feed: 4.2.2 - fs-extra: 10.0.1 + fs-extra: 10.1.0 lodash: 4.17.21 react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 + react-dom: 17.0.2(react@17.0.2) reading-time: 1.5.0 - remark-admonitions: 1.2.1 - tslib: 2.3.1 + tslib: 2.6.2 + unist-util-visit: 2.0.3 utility-types: 3.10.0 - webpack: 5.70.0 + webpack: 5.88.2 transitivePeerDependencies: - '@parcel/css' - '@swc/core' + - '@swc/css' - bufferutil - csso - debug - esbuild - eslint + - lightningcss - supports-color - typescript - uglify-js @@ -1743,37 +1870,41 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-content-docs/2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa: - resolution: {integrity: sha512-z4LFGBJuzn4XQiUA7OEA2SZTqlp+IYVjd3NrCk/ZUfNi1tsTJS36ATkk9Y6d0Nsp7K2kRXqaXPsz4adDgeIU+Q==} - engines: {node: '>=14'} + /@docusaurus/plugin-content-docs@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): + resolution: {integrity: sha512-N7Po2LSH6UejQhzTCsvuX5NOzlC+HiXOVvofnEPj0WhMu1etpLEXE6a4aTxrtg95lQ5kf0xUIdjX9sh3d3G76A==} + engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/logger': 2.0.0-beta.18 - '@docusaurus/mdx-loader': 2.0.0-beta.18_sfoxds7t5ydpegc3knd667wn6m - '@docusaurus/utils': 2.0.0-beta.18 - '@docusaurus/utils-validation': 2.0.0-beta.18 - combine-promises: 1.1.0 - fs-extra: 10.0.1 + '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/logger': 2.4.3 + '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/module-type-aliases': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) + '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) + '@types/react-router-config': 5.0.7 + combine-promises: 1.2.0 + fs-extra: 10.1.0 import-fresh: 3.3.0 js-yaml: 4.1.0 lodash: 4.17.21 react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 - remark-admonitions: 1.2.1 - tslib: 2.3.1 + react-dom: 17.0.2(react@17.0.2) + tslib: 2.6.2 utility-types: 3.10.0 - webpack: 5.70.0 + webpack: 5.88.2 transitivePeerDependencies: - '@parcel/css' - '@swc/core' + - '@swc/css' - bufferutil - csso - debug - esbuild - eslint + - lightningcss - supports-color - typescript - uglify-js @@ -1782,31 +1913,33 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-content-pages/2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa: - resolution: {integrity: sha512-CJ2Xeb9hQrMeF4DGywSDVX2TFKsQpc8ZA7czyeBAAbSFsoRyxXPYeSh8aWljqR4F1u/EKGSKy0Shk/D4wumaHw==} - engines: {node: '>=14'} + /@docusaurus/plugin-content-pages@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): + resolution: {integrity: sha512-txtDVz7y3zGk67q0HjG0gRttVPodkHqE0bpJ+7dOaTH40CQFLSh7+aBeGnPOTl+oCPG+hxkim4SndqPqXjQ8Bg==} + engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/mdx-loader': 2.0.0-beta.18_sfoxds7t5ydpegc3knd667wn6m - '@docusaurus/utils': 2.0.0-beta.18 - '@docusaurus/utils-validation': 2.0.0-beta.18 - fs-extra: 10.0.1 + '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) + '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) + fs-extra: 10.1.0 react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 - remark-admonitions: 1.2.1 - tslib: 2.3.1 - webpack: 5.70.0 + react-dom: 17.0.2(react@17.0.2) + tslib: 2.6.2 + webpack: 5.88.2 transitivePeerDependencies: - '@parcel/css' - '@swc/core' + - '@swc/css' - bufferutil - csso - debug - esbuild - eslint + - lightningcss - supports-color - typescript - uglify-js @@ -1815,23 +1948,25 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-debug/2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa: - resolution: {integrity: sha512-inLnLERgG7q0WlVmK6nYGHwVqREz13ivkynmNygEibJZToFRdgnIPW+OwD8QzgC5MpQTJw7+uYjcitpBumy1Gw==} - engines: {node: '>=14'} + /@docusaurus/plugin-debug@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): + resolution: {integrity: sha512-LkUbuq3zCmINlFb+gAd4ZvYr+bPAzMC0hwND4F7V9bZ852dCX8YoWyovVUBKq4er1XsOwSQaHmNGtObtn8Av8Q==} + engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/utils': 2.0.0-beta.18 - fs-extra: 10.0.1 + '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) + fs-extra: 10.1.0 react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 - react-json-view: 1.21.3_sfoxds7t5ydpegc3knd667wn6m - tslib: 2.3.1 + react-dom: 17.0.2(react@17.0.2) + react-json-view: 1.21.3(react-dom@17.0.2)(react@17.0.2) + tslib: 2.6.2 transitivePeerDependencies: - '@parcel/css' - '@swc/core' + - '@swc/css' - '@types/react' - bufferutil - csso @@ -1839,6 +1974,7 @@ packages: - encoding - esbuild - eslint + - lightningcss - supports-color - typescript - uglify-js @@ -1847,26 +1983,29 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-google-analytics/2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa: - resolution: {integrity: sha512-s9dRBWDrZ1uu3wFXPCF7yVLo/+5LUFAeoxpXxzory8gn9GYDt8ZDj80h5DUyCLxiy72OG6bXWNOYS/Vc6cOPXQ==} - engines: {node: '>=14'} + /@docusaurus/plugin-google-analytics@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): + resolution: {integrity: sha512-KzBV3k8lDkWOhg/oYGxlK5o9bOwX7KpPc/FTWoB+SfKhlHfhq7qcQdMi1elAaVEIop8tgK6gD1E58Q+XC6otSQ==} + engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/utils-validation': 2.0.0-beta.18 + '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 - tslib: 2.3.1 + react-dom: 17.0.2(react@17.0.2) + tslib: 2.6.2 transitivePeerDependencies: - '@parcel/css' - '@swc/core' + - '@swc/css' - bufferutil - csso - debug - esbuild - eslint + - lightningcss - supports-color - typescript - uglify-js @@ -1875,26 +2014,29 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-google-gtag/2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa: - resolution: {integrity: sha512-h7vPuLVo/9pHmbFcvb4tCpjg4SxxX4k+nfVDyippR254FM++Z/nA5pRB0WvvIJ3ZTe0ioOb5Wlx2xdzJIBHUNg==} - engines: {node: '>=14'} + /@docusaurus/plugin-google-gtag@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): + resolution: {integrity: sha512-5FMg0rT7sDy4i9AGsvJC71MQrqQZwgLNdDetLEGDHLfSHLvJhQbTCUGbGXknUgWXQJckcV/AILYeJy+HhxeIFA==} + engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/utils-validation': 2.0.0-beta.18 + '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 - tslib: 2.3.1 + react-dom: 17.0.2(react@17.0.2) + tslib: 2.6.2 transitivePeerDependencies: - '@parcel/css' - '@swc/core' + - '@swc/css' - bufferutil - csso - debug - esbuild - eslint + - lightningcss - supports-color - typescript - uglify-js @@ -1903,40 +2045,75 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-pwa/2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa: - resolution: {integrity: sha512-YQwTriPmVwuoUMWfwfef1xuKZk9rWOSFEL3FMtEycg2ZpEzArb/iFCGh133hG+lTtuCr4aBTh/PDuy+AweW+Fw==} + /@docusaurus/plugin-google-tag-manager@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): + resolution: {integrity: sha512-1jTzp71yDGuQiX9Bi0pVp3alArV0LSnHXempvQTxwCGAEzUWWaBg4d8pocAlTpbP9aULQQqhgzrs8hgTRPOM0A==} + engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@babel/core': 7.17.8 - '@babel/preset-env': 7.16.11_@babel+core@7.17.8 - '@docusaurus/core': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/theme-common': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/theme-translations': 2.0.0-beta.18 - '@docusaurus/utils': 2.0.0-beta.18 - '@docusaurus/utils-validation': 2.0.0-beta.18 - babel-loader: 8.2.4_7kihywspc3gmje7ccze4zrmvoq - clsx: 1.1.1 - core-js: 3.21.1 + '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 - terser-webpack-plugin: 5.3.1_webpack@5.70.0 - tslib: 2.3.1 - webpack: 5.70.0 - webpack-merge: 5.8.0 - workbox-build: 6.5.3 - workbox-precaching: 6.5.3 - workbox-window: 6.5.3 + react-dom: 17.0.2(react@17.0.2) + tslib: 2.6.2 transitivePeerDependencies: - '@parcel/css' - '@swc/core' + - '@swc/css' + - bufferutil + - csso + - debug + - esbuild + - eslint + - lightningcss + - supports-color + - typescript + - uglify-js + - utf-8-validate + - vue-template-compiler + - webpack-cli + dev: false + + /@docusaurus/plugin-pwa@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): + resolution: {integrity: sha512-D/3F/tBMmcvPWgDxE4Oc6q7kO0hbMAqO6gGSqYJ4wNKpgZdFyDhURsep97k03UUojn/Oe/SDls+0D/Omopd0tQ==} + engines: {node: '>=16.14'} + peerDependencies: + react: ^16.8.4 || ^17.0.0 + react-dom: ^16.8.4 || ^17.0.0 + dependencies: + '@babel/core': 7.22.19 + '@babel/preset-env': 7.22.15(@babel/core@7.22.19) + '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/theme-common': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/theme-translations': 2.4.3 + '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) + '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) + babel-loader: 8.3.0(@babel/core@7.22.19)(webpack@5.88.2) + clsx: 1.2.1 + core-js: 3.32.2 + react: 17.0.2 + react-dom: 17.0.2(react@17.0.2) + terser-webpack-plugin: 5.3.9(webpack@5.88.2) + tslib: 2.6.2 + webpack: 5.88.2 + webpack-merge: 5.9.0 + workbox-build: 6.6.0 + workbox-precaching: 6.6.0 + workbox-window: 6.6.0 + transitivePeerDependencies: + - '@parcel/css' + - '@swc/core' + - '@swc/css' - '@types/babel__core' - bufferutil - csso - debug - esbuild - eslint + - lightningcss - supports-color - typescript - uglify-js @@ -1945,30 +2122,34 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-sitemap/2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa: - resolution: {integrity: sha512-Klonht0Ye3FivdBpS80hkVYNOH+8lL/1rbCPEV92rKhwYdwnIejqhdKct4tUTCl8TYwWiyeUFQqobC/5FNVZPQ==} - engines: {node: '>=14'} + /@docusaurus/plugin-sitemap@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): + resolution: {integrity: sha512-LRQYrK1oH1rNfr4YvWBmRzTL0LN9UAPxBbghgeFRBm5yloF6P+zv1tm2pe2hQTX/QP5bSKdnajCvfnScgKXMZQ==} + engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/utils': 2.0.0-beta.18 - '@docusaurus/utils-common': 2.0.0-beta.18 - '@docusaurus/utils-validation': 2.0.0-beta.18 - fs-extra: 10.0.1 + '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/logger': 2.4.3 + '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) + '@docusaurus/utils-common': 2.4.3(@docusaurus/types@2.4.3) + '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) + fs-extra: 10.1.0 react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 + react-dom: 17.0.2(react@17.0.2) sitemap: 7.1.1 - tslib: 2.3.1 + tslib: 2.6.2 transitivePeerDependencies: - '@parcel/css' - '@swc/core' + - '@swc/css' - bufferutil - csso - debug - esbuild - eslint + - lightningcss - supports-color - typescript - uglify-js @@ -1977,30 +2158,33 @@ packages: - webpack-cli dev: false - /@docusaurus/preset-classic/2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa: - resolution: {integrity: sha512-TfDulvFt/vLWr/Yy7O0yXgwHtJhdkZ739bTlFNwEkRMAy8ggi650e52I1I0T79s67llecb4JihgHPW+mwiVkCQ==} - engines: {node: '>=14'} + /@docusaurus/preset-classic@2.4.3(@algolia/client-search@4.20.0)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.8.2)(typescript@4.9.5): + resolution: {integrity: sha512-tRyMliepY11Ym6hB1rAFSNGwQDpmszvWYJvlK1E+md4SW8i6ylNHtpZjaYFff9Mdk3i/Pg8ItQq9P0daOJAvQw==} + engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/plugin-content-blog': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/plugin-content-docs': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/plugin-content-pages': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/plugin-debug': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/plugin-google-analytics': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/plugin-google-gtag': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/plugin-sitemap': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/theme-classic': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/theme-common': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/theme-search-algolia': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa + '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/plugin-content-blog': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/plugin-content-docs': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/plugin-content-pages': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/plugin-debug': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/plugin-google-analytics': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/plugin-google-gtag': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/plugin-google-tag-manager': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/plugin-sitemap': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/theme-classic': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/theme-common': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/theme-search-algolia': 2.4.3(@algolia/client-search@4.20.0)(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.8.2)(typescript@4.9.5) + '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 + react-dom: 17.0.2(react@17.0.2) transitivePeerDependencies: - '@algolia/client-search' - '@parcel/css' - '@swc/core' + - '@swc/css' - '@types/react' - bufferutil - csso @@ -2008,6 +2192,8 @@ packages: - encoding - esbuild - eslint + - lightningcss + - search-insights - supports-color - typescript - uglify-js @@ -2016,52 +2202,59 @@ packages: - webpack-cli dev: false - /@docusaurus/react-loadable/5.5.2_react@17.0.2: + /@docusaurus/react-loadable@5.5.2(react@17.0.2): resolution: {integrity: sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==} peerDependencies: react: '*' dependencies: - '@types/react': 17.0.41 + '@types/react': 18.2.21 prop-types: 15.8.1 react: 17.0.2 - dev: false - /@docusaurus/theme-classic/2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa: - resolution: {integrity: sha512-WJWofvSGKC4Luidk0lyUwkLnO3DDynBBHwmt4QrV+aAVWWSOHUjA2mPOF6GLGuzkZd3KfL9EvAfsU0aGE1Hh5g==} - engines: {node: '>=14'} + /@docusaurus/theme-classic@2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): + resolution: {integrity: sha512-QKRAJPSGPfDY2yCiPMIVyr+MqwZCIV2lxNzqbyUW0YkrlmdzzP3WuQJPMGLCjWgQp/5c9kpWMvMxjhpZx1R32Q==} + engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/plugin-content-blog': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/plugin-content-docs': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/plugin-content-pages': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/theme-common': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/theme-translations': 2.0.0-beta.18 - '@docusaurus/utils': 2.0.0-beta.18 - '@docusaurus/utils-common': 2.0.0-beta.18 - '@docusaurus/utils-validation': 2.0.0-beta.18 - '@mdx-js/react': 1.6.22_react@17.0.2 - clsx: 1.1.1 - copy-text-to-clipboard: 3.0.1 - infima: 0.2.0-alpha.38 + '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/module-type-aliases': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/plugin-content-blog': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/plugin-content-docs': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/plugin-content-pages': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/theme-common': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/theme-translations': 2.4.3 + '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) + '@docusaurus/utils-common': 2.4.3(@docusaurus/types@2.4.3) + '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) + '@mdx-js/react': 1.6.22(react@17.0.2) + clsx: 1.2.1 + copy-text-to-clipboard: 3.2.0 + infima: 0.2.0-alpha.43 lodash: 4.17.21 - postcss: 8.4.12 - prism-react-renderer: 1.3.1_react@17.0.2 - prismjs: 1.27.0 + nprogress: 0.2.0 + postcss: 8.4.29 + prism-react-renderer: 1.3.5(react@17.0.2) + prismjs: 1.29.0 react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 - react-router-dom: 5.3.0_react@17.0.2 + react-dom: 17.0.2(react@17.0.2) + react-router-dom: 5.3.4(react@17.0.2) rtlcss: 3.5.0 + tslib: 2.6.2 + utility-types: 3.10.0 transitivePeerDependencies: - '@parcel/css' - '@swc/core' + - '@swc/css' - bufferutil - csso - debug - esbuild - eslint + - lightningcss - supports-color - typescript - uglify-js @@ -2070,32 +2263,42 @@ packages: - webpack-cli dev: false - /@docusaurus/theme-common/2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa: - resolution: {integrity: sha512-3pI2Q6ttScDVTDbuUKAx+TdC8wmwZ2hfWk8cyXxksvC9bBHcyzXhSgcK8LTsszn2aANyZ3e3QY2eNSOikTFyng==} - engines: {node: '>=14'} + /@docusaurus/theme-common@2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5): + resolution: {integrity: sha512-7KaDJBXKBVGXw5WOVt84FtN8czGWhM0lbyWEZXGp8AFfL6sZQfRTluFp4QriR97qwzSyOfQb+nzcDZZU4tezUw==} + engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/module-type-aliases': 2.0.0-beta.18_sfoxds7t5ydpegc3knd667wn6m - '@docusaurus/plugin-content-blog': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/plugin-content-docs': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/plugin-content-pages': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - clsx: 1.1.1 + '@docusaurus/mdx-loader': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/module-type-aliases': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/plugin-content-blog': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/plugin-content-docs': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/plugin-content-pages': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) + '@docusaurus/utils-common': 2.4.3(@docusaurus/types@2.4.3) + '@types/history': 4.7.11 + '@types/react': 18.2.21 + '@types/react-router-config': 5.0.7 + clsx: 1.2.1 parse-numeric-range: 1.3.0 - prism-react-renderer: 1.3.1_react@17.0.2 + prism-react-renderer: 1.3.5(react@17.0.2) react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 - tslib: 2.3.1 + react-dom: 17.0.2(react@17.0.2) + tslib: 2.6.2 + use-sync-external-store: 1.2.0(react@17.0.2) utility-types: 3.10.0 transitivePeerDependencies: + - '@docusaurus/types' - '@parcel/css' - '@swc/core' + - '@swc/css' - bufferutil - csso - debug - esbuild - eslint + - lightningcss - supports-color - typescript - uglify-js @@ -2104,41 +2307,45 @@ packages: - webpack-cli dev: false - /@docusaurus/theme-search-algolia/2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa: - resolution: {integrity: sha512-2w97KO/gnjI49WVtYQqENpQ8iO1Sem0yaTxw7/qv/ndlmIAQD0syU4yx6GsA7bTQCOGwKOWWzZSetCgUmTnWgA==} - engines: {node: '>=14'} + /@docusaurus/theme-search-algolia@2.4.3(@algolia/client-search@4.20.0)(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.8.2)(typescript@4.9.5): + resolution: {integrity: sha512-jziq4f6YVUB5hZOB85ELATwnxBz/RmSLD3ksGQOLDPKVzat4pmI8tddNWtriPpxR04BNT+ZfpPUMFkNFetSW1Q==} + engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docsearch/react': 3.0.0_sfoxds7t5ydpegc3knd667wn6m - '@docusaurus/core': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/logger': 2.0.0-beta.18 - '@docusaurus/plugin-content-docs': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/theme-common': 2.0.0-beta.18_v2v2bhvqb53glznm3v6fp3lhsa - '@docusaurus/theme-translations': 2.0.0-beta.18 - '@docusaurus/utils': 2.0.0-beta.18 - '@docusaurus/utils-validation': 2.0.0-beta.18 - algoliasearch: 4.13.0 - algoliasearch-helper: 3.7.4_algoliasearch@4.13.0 - clsx: 1.1.1 - eta: 1.12.3 - fs-extra: 10.0.1 + '@docsearch/react': 3.5.2(@algolia/client-search@4.20.0)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.8.2) + '@docusaurus/core': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/logger': 2.4.3 + '@docusaurus/plugin-content-docs': 2.4.3(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/theme-common': 2.4.3(@docusaurus/types@2.4.3)(react-dom@17.0.2)(react@17.0.2)(typescript@4.9.5) + '@docusaurus/theme-translations': 2.4.3 + '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) + '@docusaurus/utils-validation': 2.4.3(@docusaurus/types@2.4.3) + algoliasearch: 4.20.0 + algoliasearch-helper: 3.14.1(algoliasearch@4.20.0) + clsx: 1.2.1 + eta: 2.2.0 + fs-extra: 10.1.0 lodash: 4.17.21 react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 - tslib: 2.3.1 + react-dom: 17.0.2(react@17.0.2) + tslib: 2.6.2 utility-types: 3.10.0 transitivePeerDependencies: - '@algolia/client-search' + - '@docusaurus/types' - '@parcel/css' - '@swc/core' + - '@swc/css' - '@types/react' - bufferutil - csso - debug - esbuild - eslint + - lightningcss + - search-insights - supports-color - typescript - uglify-js @@ -2147,45 +2354,60 @@ packages: - webpack-cli dev: false - /@docusaurus/theme-translations/2.0.0-beta.18: - resolution: {integrity: sha512-1uTEUXlKC9nco1Lx9H5eOwzB+LP4yXJG5wfv1PMLE++kJEdZ40IVorlUi3nJnaa9/lJNq5vFvvUDrmeNWsxy/Q==} - engines: {node: '>=14'} + /@docusaurus/theme-translations@2.4.3: + resolution: {integrity: sha512-H4D+lbZbjbKNS/Zw1Lel64PioUAIT3cLYYJLUf3KkuO/oc9e0QCVhIYVtUI2SfBCF2NNdlyhBDQEEMygsCedIg==} + engines: {node: '>=16.14'} dependencies: - fs-extra: 10.0.1 - tslib: 2.3.1 + fs-extra: 10.1.0 + tslib: 2.6.2 dev: false - /@docusaurus/types/2.0.0-beta.18: - resolution: {integrity: sha512-zkuSmPQYP3+z4IjGHlW0nGzSSpY7Sit0Nciu/66zSb5m07TK72t6T1MlpCAn/XijcB9Cq6nenC3kJh66nGsKYg==} + /@docusaurus/types@2.4.3(react-dom@17.0.2)(react@17.0.2): + resolution: {integrity: sha512-W6zNLGQqfrp/EoPD0bhb9n7OobP+RHpmvVzpA+Z/IuU3Q63njJM24hmT0GYboovWcDtFmnIJC9wcyx4RVPQscw==} + peerDependencies: + react: ^16.8.4 || ^17.0.0 + react-dom: ^16.8.4 || ^17.0.0 dependencies: + '@types/history': 4.7.11 + '@types/react': 18.2.21 commander: 5.1.0 - joi: 17.6.0 + joi: 17.10.1 + react: 17.0.2 + react-dom: 17.0.2(react@17.0.2) + react-helmet-async: 1.3.0(react-dom@17.0.2)(react@17.0.2) utility-types: 3.10.0 - webpack: 5.70.0 - webpack-merge: 5.8.0 + webpack: 5.88.2 + webpack-merge: 5.9.0 transitivePeerDependencies: - '@swc/core' - esbuild - uglify-js - webpack-cli - /@docusaurus/utils-common/2.0.0-beta.18: - resolution: {integrity: sha512-pK83EcOIiKCLGhrTwukZMo5jqd1sqqqhQwOVyxyvg+x9SY/lsnNzScA96OEfm+qQLBwK1OABA7Xc1wfkgkUxvw==} - engines: {node: '>=14'} + /@docusaurus/utils-common@2.4.3(@docusaurus/types@2.4.3): + resolution: {integrity: sha512-/jascp4GbLQCPVmcGkPzEQjNaAk3ADVfMtudk49Ggb+131B1WDD6HqlSmDf8MxGdy7Dja2gc+StHf01kiWoTDQ==} + engines: {node: '>=16.14'} + peerDependencies: + '@docusaurus/types': '*' + peerDependenciesMeta: + '@docusaurus/types': + optional: true dependencies: - tslib: 2.3.1 + '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) + tslib: 2.6.2 dev: false - /@docusaurus/utils-validation/2.0.0-beta.18: - resolution: {integrity: sha512-3aDrXjJJ8Cw2MAYEk5JMNnr8UHPxmVNbPU/PIHFWmWK09nJvs3IQ8nc9+8I30aIjRdIyc/BIOCxgvAcJ4hsxTA==} - engines: {node: '>=14'} + /@docusaurus/utils-validation@2.4.1(@docusaurus/types@2.4.3): + resolution: {integrity: sha512-unII3hlJlDwZ3w8U+pMO3Lx3RhI4YEbY3YNsQj4yzrkZzlpqZOLuAiZK2JyULnD+TKbceKU0WyWkQXtYbLNDFA==} + engines: {node: '>=16.14'} dependencies: - '@docusaurus/logger': 2.0.0-beta.18 - '@docusaurus/utils': 2.0.0-beta.18 - joi: 17.6.0 + '@docusaurus/logger': 2.4.1 + '@docusaurus/utils': 2.4.1(@docusaurus/types@2.4.3) + joi: 17.10.1 js-yaml: 4.1.0 - tslib: 2.3.1 + tslib: 2.6.2 transitivePeerDependencies: + - '@docusaurus/types' - '@swc/core' - esbuild - supports-color @@ -2193,15 +2415,74 @@ packages: - webpack-cli dev: false - /@docusaurus/utils/2.0.0-beta.18: - resolution: {integrity: sha512-v2vBmH7xSbPwx3+GB90HgLSQdj+Rh5ELtZWy7M20w907k0ROzDmPQ/8Ke2DK3o5r4pZPGnCrsB3SaYI83AEmAA==} - engines: {node: '>=14'} + /@docusaurus/utils-validation@2.4.3(@docusaurus/types@2.4.3): + resolution: {integrity: sha512-G2+Vt3WR5E/9drAobP+hhZQMaswRwDlp6qOMi7o7ZypB+VO7N//DZWhZEwhcRGepMDJGQEwtPv7UxtYwPL9PBw==} + engines: {node: '>=16.14'} + dependencies: + '@docusaurus/logger': 2.4.3 + '@docusaurus/utils': 2.4.3(@docusaurus/types@2.4.3) + joi: 17.10.1 + js-yaml: 4.1.0 + tslib: 2.6.2 + transitivePeerDependencies: + - '@docusaurus/types' + - '@swc/core' + - esbuild + - supports-color + - uglify-js + - webpack-cli + dev: false + + /@docusaurus/utils@2.4.1(@docusaurus/types@2.4.3): + resolution: {integrity: sha512-1lvEZdAQhKNht9aPXPoh69eeKnV0/62ROhQeFKKxmzd0zkcuE/Oc5Gpnt00y/f5bIsmOsYMY7Pqfm/5rteT5GA==} + engines: {node: '>=16.14'} + peerDependencies: + '@docusaurus/types': '*' + peerDependenciesMeta: + '@docusaurus/types': + optional: true dependencies: - '@docusaurus/logger': 2.0.0-beta.18 - '@svgr/webpack': 6.2.1 - file-loader: 6.2.0_webpack@5.70.0 - fs-extra: 10.0.1 - github-slugger: 1.4.0 + '@docusaurus/logger': 2.4.1 + '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@svgr/webpack': 6.5.1 + escape-string-regexp: 4.0.0 + file-loader: 6.2.0(webpack@5.88.2) + fs-extra: 10.1.0 + github-slugger: 1.5.0 + globby: 11.1.0 + gray-matter: 4.0.3 + js-yaml: 4.1.0 + lodash: 4.17.21 + micromatch: 4.0.5 + resolve-pathname: 3.0.0 + shelljs: 0.8.5 + tslib: 2.6.2 + url-loader: 4.1.1(file-loader@6.2.0)(webpack@5.88.2) + webpack: 5.88.2 + transitivePeerDependencies: + - '@swc/core' + - esbuild + - supports-color + - uglify-js + - webpack-cli + dev: false + + /@docusaurus/utils@2.4.3(@docusaurus/types@2.4.3): + resolution: {integrity: sha512-fKcXsjrD86Smxv8Pt0TBFqYieZZCPh4cbf9oszUq/AMhZn3ujwpKaVYZACPX8mmjtYx0JOgNx52CREBfiGQB4A==} + engines: {node: '>=16.14'} + peerDependencies: + '@docusaurus/types': '*' + peerDependenciesMeta: + '@docusaurus/types': + optional: true + dependencies: + '@docusaurus/logger': 2.4.3 + '@docusaurus/types': 2.4.3(react-dom@17.0.2)(react@17.0.2) + '@svgr/webpack': 6.5.1 + escape-string-regexp: 4.0.0 + file-loader: 6.2.0(webpack@5.88.2) + fs-extra: 10.1.0 + github-slugger: 1.5.0 globby: 11.1.0 gray-matter: 4.0.3 js-yaml: 4.1.0 @@ -2209,9 +2490,9 @@ packages: micromatch: 4.0.5 resolve-pathname: 3.0.0 shelljs: 0.8.5 - tslib: 2.3.1 - url-loader: 4.1.1_plzek67nbn24rjxjp577ruq77e - webpack: 5.70.0 + tslib: 2.6.2 + url-loader: 4.1.1(file-loader@6.2.0)(webpack@5.88.2) + webpack: 5.88.2 transitivePeerDependencies: - '@swc/core' - esbuild @@ -2220,31 +2501,32 @@ packages: - webpack-cli dev: false - /@easyops-cn/autocomplete.js/0.38.1: + /@easyops-cn/autocomplete.js@0.38.1: resolution: {integrity: sha512-drg76jS6syilOUmVNkyo1c7ZEBPcPuK+aJA7AksM5ZIIbV57DMHCywiCr+uHyv8BE5jUTU98j/H7gVrkHrWW3Q==} dependencies: cssesc: 3.0.0 immediate: 3.3.0 dev: false - /@easyops-cn/docusaurus-search-local/0.23.1: - resolution: {integrity: sha512-xp1c08RqUdvHm++vFOHe4h4Rv71cuVqU3Vm8zPXH150J1H47XvRgRTGe2d5kQ7NNeWLUJIiHYLGtOU6FGyhI3g==} + /@easyops-cn/docusaurus-search-local@0.23.3(@docusaurus/types@2.4.3): + resolution: {integrity: sha512-eJgtDtTtOWa3XJirDCGQh2Bcai04UG+5ISe5XhTFv2f80fxHsmQDE2YDj62xLem6Md8hI3VjKuJXOTlUgQKKtw==} engines: {node: '>=12'} dependencies: - '@docusaurus/utils': 2.0.0-beta.18 - '@docusaurus/utils-validation': 2.0.0-beta.18 + '@docusaurus/utils': 2.4.1(@docusaurus/types@2.4.3) + '@docusaurus/utils-validation': 2.4.1(@docusaurus/types@2.4.3) '@easyops-cn/autocomplete.js': 0.38.1 - '@node-rs/jieba': 1.6.0 - cheerio: 1.0.0-rc.10 - clsx: 1.1.1 + '@node-rs/jieba': 1.7.2 + cheerio: 1.0.0-rc.12 + clsx: 1.2.1 debug: 4.3.4 fs-extra: 9.1.0 klaw-sync: 6.0.0 lunr: 2.3.9 - lunr-languages: 1.9.0 + lunr-languages: 1.13.0 mark.js: 8.11.1 - tslib: 2.3.1 + tslib: 2.6.2 transitivePeerDependencies: + - '@docusaurus/types' - '@swc/core' - esbuild - supports-color @@ -2252,38 +2534,83 @@ packages: - webpack-cli dev: false - /@hapi/hoek/9.2.1: - resolution: {integrity: sha512-gfta+H8aziZsm8pZa0vj04KO6biEiisppNgA1kbJvFrrWu9Vm7eaUEy76DIxsuTaWvti5fkJVhllWc6ZTE+Mdw==} + /@hapi/hoek@9.3.0: + resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==} - /@hapi/topo/5.1.0: + /@hapi/topo@5.1.0: resolution: {integrity: sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==} dependencies: - '@hapi/hoek': 9.2.1 + '@hapi/hoek': 9.3.0 - /@jridgewell/resolve-uri/3.0.5: - resolution: {integrity: sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==} - engines: {node: '>=6.0.0'} + /@jest/schemas@29.6.3: + resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@sinclair/typebox': 0.27.8 dev: false - /@jridgewell/sourcemap-codec/1.4.11: - resolution: {integrity: sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==} + /@jest/types@29.6.3: + resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/schemas': 29.6.3 + '@types/istanbul-lib-coverage': 2.0.4 + '@types/istanbul-reports': 3.0.1 + '@types/node': 20.6.1 + '@types/yargs': 17.0.24 + chalk: 4.1.2 dev: false - /@jridgewell/trace-mapping/0.3.4: - resolution: {integrity: sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==} + /@jridgewell/gen-mapping@0.3.3: + resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} + engines: {node: '>=6.0.0'} dependencies: - '@jridgewell/resolve-uri': 3.0.5 - '@jridgewell/sourcemap-codec': 1.4.11 + '@jridgewell/set-array': 1.1.2 + '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/trace-mapping': 0.3.19 + + /@jridgewell/resolve-uri@3.1.1: + resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} + engines: {node: '>=6.0.0'} + + /@jridgewell/set-array@1.1.2: + resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} + engines: {node: '>=6.0.0'} + + /@jridgewell/source-map@0.3.5: + resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==} + dependencies: + '@jridgewell/gen-mapping': 0.3.3 + '@jridgewell/trace-mapping': 0.3.19 + + /@jridgewell/sourcemap-codec@1.4.15: + resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} + + /@jridgewell/trace-mapping@0.3.19: + resolution: {integrity: sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==} + dependencies: + '@jridgewell/resolve-uri': 3.1.1 + '@jridgewell/sourcemap-codec': 1.4.15 + + /@jridgewell/trace-mapping@0.3.9: + resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + dependencies: + '@jridgewell/resolve-uri': 3.1.1 + '@jridgewell/sourcemap-codec': 1.4.15 + dev: true + + /@leichtgewicht/ip-codec@2.0.4: + resolution: {integrity: sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==} dev: false - /@mdx-js/mdx/1.6.22: + /@mdx-js/mdx@1.6.22: resolution: {integrity: sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==} dependencies: '@babel/core': 7.12.9 - '@babel/plugin-syntax-jsx': 7.12.1_@babel+core@7.12.9 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.12.9 + '@babel/plugin-syntax-jsx': 7.12.1(@babel/core@7.12.9) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.12.9) '@mdx-js/util': 1.6.22 - babel-plugin-apply-mdx-type-prop: 1.6.22_@babel+core@7.12.9 + babel-plugin-apply-mdx-type-prop: 1.6.22(@babel/core@7.12.9) babel-plugin-extract-import-names: 1.6.22 camelcase-css: 2.0.1 detab: 2.0.4 @@ -2302,7 +2629,7 @@ packages: - supports-color dev: false - /@mdx-js/react/1.6.22_react@17.0.2: + /@mdx-js/react@1.6.22(react@17.0.2): resolution: {integrity: sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==} peerDependencies: react: ^16.13.1 || ^17.0.0 @@ -2310,12 +2637,12 @@ packages: react: 17.0.2 dev: false - /@mdx-js/util/1.6.22: + /@mdx-js/util@1.6.22: resolution: {integrity: sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==} dev: false - /@node-rs/jieba-android-arm-eabi/1.6.0: - resolution: {integrity: sha512-U98G1bzHi4t53/WJcexZ7Jfjkln5msa+xk9zlNVOJh9cVUWZ2vi2xtNuxnGAkjnlEqH1If9tHllCm/a1jR7WvQ==} + /@node-rs/jieba-android-arm-eabi@1.7.2: + resolution: {integrity: sha512-FyDHRNSRIHOQO7S6Q4RwuGffnnnuNwaXPH7K8WqSzifEY+zFIaSPcNqrZHrnqyeXc4JiYpBIHeP+0Mkf1kIGRA==} engines: {node: '>= 10'} cpu: [arm] os: [android] @@ -2323,8 +2650,8 @@ packages: dev: false optional: true - /@node-rs/jieba-android-arm64/1.6.0: - resolution: {integrity: sha512-S/fbVPT3ao2r0apmNFtNuysDoAbqdDDG1vpUlNWp3UQ17cNaIeX66sG0s96LT699xbOfFTgIQ21cjmTma8oK6w==} + /@node-rs/jieba-android-arm64@1.7.2: + resolution: {integrity: sha512-z0UEZCGrAX/IiarhuDMsEIDZBS77UZv4SQyL/J48yrsbWKbb2lJ1vCrYxXIWqwp6auXHEu4r1O/pMriDAcEnPg==} engines: {node: '>= 10'} cpu: [arm64] os: [android] @@ -2332,8 +2659,8 @@ packages: dev: false optional: true - /@node-rs/jieba-darwin-arm64/1.6.0: - resolution: {integrity: sha512-WEGvN2CIdDCPabXeT6rbkVDrBt99eUoatzDI0fCro5ZwqfHejrDAYqv0HJwv343aAj75wH6R7ALmqSWtyVb8Gg==} + /@node-rs/jieba-darwin-arm64@1.7.2: + resolution: {integrity: sha512-M2cHIWRaaOmXGKy446SH2+Y2PzREaI2oYznPbg55wYEdioUp01YS/2WRG8CaoCKEj0aUocA7MFM2vVcoIAsbQw==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] @@ -2341,8 +2668,8 @@ packages: dev: false optional: true - /@node-rs/jieba-darwin-x64/1.6.0: - resolution: {integrity: sha512-gXJ+bl0u/iWizUcwkSHxgSLq7gkMVYKVX3HhiC4ZWFTnbxDHSg3vkSBAN4gaWO+dQNQTLdaTsBB1Yr9yDmg8Qg==} + /@node-rs/jieba-darwin-x64@1.7.2: + resolution: {integrity: sha512-euDawBU2FxB0CGTR803BA6WABsiicIrqa61z2AFFDPkJCDrauEM0jbMg3GDKLAvbaLbZ1Etu3QNN5xyroqp4Qw==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] @@ -2350,8 +2677,8 @@ packages: dev: false optional: true - /@node-rs/jieba-freebsd-x64/1.6.0: - resolution: {integrity: sha512-5JYq6cmg0i24cjo3qG2vEH5LSGNmgSfSAbTw1Jv5uxNnNen1ZbL+p++jQ9Of4gy/fxPZHyL0l+CiIroaHyadqw==} + /@node-rs/jieba-freebsd-x64@1.7.2: + resolution: {integrity: sha512-vXCaYxPb90d/xTBVG+ZZXrFLXsO2719pZSyiZCL2tey+UY28U7MOoK6394Wwmf0FCB/eRTQMCKjVIUDi+IRMUg==} engines: {node: '>= 10'} cpu: [x64] os: [freebsd] @@ -2359,8 +2686,8 @@ packages: dev: false optional: true - /@node-rs/jieba-linux-arm-gnueabihf/1.6.0: - resolution: {integrity: sha512-wTwgEGglLhdWLyEW5IHsQbnGhqkxfCUyTbUQyHtYFHiltLn88R0FA3NDyPXHuqOwdgzmvheSA5RS9VtoXwTOmw==} + /@node-rs/jieba-linux-arm-gnueabihf@1.7.2: + resolution: {integrity: sha512-HTep79XlJYO3KRYZ2kJChG9HnYr1DKSQTB+HEYWKLK0ifphqybcxGNLAdH0S4dViG2ciD0+iN/refgtqZEidpw==} engines: {node: '>= 10'} cpu: [arm] os: [linux] @@ -2368,8 +2695,8 @@ packages: dev: false optional: true - /@node-rs/jieba-linux-arm64-gnu/1.6.0: - resolution: {integrity: sha512-CYaHs24jqgaNgXDQnvxNQkTEuIVyJB5v9KB48ycgjKuaLRIMI061cbGk6dHkMbTI8kY+L42xsINOtBCK8bx6Vw==} + /@node-rs/jieba-linux-arm64-gnu@1.7.2: + resolution: {integrity: sha512-P8QJdQydOVewL1MIqYiRpI7LOfrRQag+p4/hwExe+YXH8C7DOrR8rWJD/7XNRTbpOimlHq1UN/e+ZzhxQF/cLw==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] @@ -2377,8 +2704,8 @@ packages: dev: false optional: true - /@node-rs/jieba-linux-arm64-musl/1.6.0: - resolution: {integrity: sha512-i/E1Dyl3RWWQPn5Vfl3iFTBS1sOb98ygLz8QjKBSv20Q1rsNyHtBFt3ROvxei5Oto3fTtUj83xAxMv4b7YAl4A==} + /@node-rs/jieba-linux-arm64-musl@1.7.2: + resolution: {integrity: sha512-WjnN0hmDvTXb2h3hMW5VnUGkK1xaqhs+WHfMMilau55+YN+YOYALKZ0TeBY4BapClLuBx54wqwmBX+B4hAXunQ==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] @@ -2386,8 +2713,8 @@ packages: dev: false optional: true - /@node-rs/jieba-linux-x64-gnu/1.6.0: - resolution: {integrity: sha512-JOfZQtPB7zFO2/W8sTj3qZWS+yba6+K9T/Euo2kyAXKzB7mQ0H4A1JG/1+Xurp1z+rpf4MleAVIfyHhziY1whQ==} + /@node-rs/jieba-linux-x64-gnu@1.7.2: + resolution: {integrity: sha512-gBXds/DwNSA6lNUxJjL6WIaNT6pnlM5juUgV/krLLkBJ8vXpOrQ07p0rrK1tnigz9b20xhsHaFRSwED1Y8zeXw==} engines: {node: '>= 10'} cpu: [x64] os: [linux] @@ -2395,8 +2722,8 @@ packages: dev: false optional: true - /@node-rs/jieba-linux-x64-musl/1.6.0: - resolution: {integrity: sha512-Bspjuz2qphMOPaosWsPHaQ7/wCSn7uAlKi77o+u3W3ZZXf87BJrNFXsjvrjfeM3EPd5PwD98zXaovB21tW78AQ==} + /@node-rs/jieba-linux-x64-musl@1.7.2: + resolution: {integrity: sha512-tNVD3SMuG5zAj7+bLS2Enio3zR7BPxi3PhQtpQ+Hv83jajIcN46QQ0EdoMFz/aB+hkQ9PlLAstu+VREFegs5EA==} engines: {node: '>= 10'} cpu: [x64] os: [linux] @@ -2404,8 +2731,8 @@ packages: dev: false optional: true - /@node-rs/jieba-win32-arm64-msvc/1.6.0: - resolution: {integrity: sha512-VcuL+ayu59eC1LzQuj1Yd7A0l+ySRbradkF7NJaTF8LrJjSYh4OMU71GVGxzlSKalHysrCWqMH+Si9S0/quZZQ==} + /@node-rs/jieba-win32-arm64-msvc@1.7.2: + resolution: {integrity: sha512-/e1iQ0Dh02lGPNCYTU/H3cfIsWydaGRzZ3TDj6GfWrxkWqXORL98x/VJ/C/uKLpc7GSLLd9ygyZG7SOAfKe2tA==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] @@ -2413,8 +2740,8 @@ packages: dev: false optional: true - /@node-rs/jieba-win32-ia32-msvc/1.6.0: - resolution: {integrity: sha512-eW35Paf/oP092PpRhLmtRmMBarkb4vUYoLcjjEg6ddGW2XWMYWysUOpNG0zz5tQfqmtTIrWr521fFo4w55A75w==} + /@node-rs/jieba-win32-ia32-msvc@1.7.2: + resolution: {integrity: sha512-cYjA6YUiOwtuEzWErvwMMt/RETNWQDLcmAaiHA8ohsa6c0eB0kRJlQCc683tlaczZxqroY/7C9mxgJNGvoGRbw==} engines: {node: '>= 10'} cpu: [ia32] os: [win32] @@ -2422,8 +2749,8 @@ packages: dev: false optional: true - /@node-rs/jieba-win32-x64-msvc/1.6.0: - resolution: {integrity: sha512-rvgzU8yzBeVsKM/nBgjjWBnuQ3M+o9pNCM0dgL8hJgwN+WCb1OJjN8rVEbwZZVlsYgM5JV6SDdwD3VZC6miW6A==} + /@node-rs/jieba-win32-x64-msvc@1.7.2: + resolution: {integrity: sha512-2M+Um3woFF17sa8VBYQQ6E5PNMe9Kf9fdzmeDh/GzuNHXlxW4LyK9VTV8zchIv/bDNAR5Z85kfW4wASULUxvFQ==} engines: {node: '>= 10'} cpu: [x64] os: [win32] @@ -2431,26 +2758,26 @@ packages: dev: false optional: true - /@node-rs/jieba/1.6.0: - resolution: {integrity: sha512-DP3R+yg7HgQ5Jr1x8dIuDJgv2ELMCTu6gapuHgFehqRZW8KvoaXb//NK7tGuQqNvC9U5nA++cRP5f37VuIYtHw==} + /@node-rs/jieba@1.7.2: + resolution: {integrity: sha512-zGto08NDU+KWm670qVHYGTb0YTEJ0A97dwH3WCnnhyRYMqTbOXKC6OwTc/cjzfSJP1UDBSar9Ug9BlmWmEThWg==} engines: {node: '>= 10'} optionalDependencies: - '@node-rs/jieba-android-arm-eabi': 1.6.0 - '@node-rs/jieba-android-arm64': 1.6.0 - '@node-rs/jieba-darwin-arm64': 1.6.0 - '@node-rs/jieba-darwin-x64': 1.6.0 - '@node-rs/jieba-freebsd-x64': 1.6.0 - '@node-rs/jieba-linux-arm-gnueabihf': 1.6.0 - '@node-rs/jieba-linux-arm64-gnu': 1.6.0 - '@node-rs/jieba-linux-arm64-musl': 1.6.0 - '@node-rs/jieba-linux-x64-gnu': 1.6.0 - '@node-rs/jieba-linux-x64-musl': 1.6.0 - '@node-rs/jieba-win32-arm64-msvc': 1.6.0 - '@node-rs/jieba-win32-ia32-msvc': 1.6.0 - '@node-rs/jieba-win32-x64-msvc': 1.6.0 - dev: false - - /@nodelib/fs.scandir/2.1.5: + '@node-rs/jieba-android-arm-eabi': 1.7.2 + '@node-rs/jieba-android-arm64': 1.7.2 + '@node-rs/jieba-darwin-arm64': 1.7.2 + '@node-rs/jieba-darwin-x64': 1.7.2 + '@node-rs/jieba-freebsd-x64': 1.7.2 + '@node-rs/jieba-linux-arm-gnueabihf': 1.7.2 + '@node-rs/jieba-linux-arm64-gnu': 1.7.2 + '@node-rs/jieba-linux-arm64-musl': 1.7.2 + '@node-rs/jieba-linux-x64-gnu': 1.7.2 + '@node-rs/jieba-linux-x64-musl': 1.7.2 + '@node-rs/jieba-win32-arm64-msvc': 1.7.2 + '@node-rs/jieba-win32-ia32-msvc': 1.7.2 + '@node-rs/jieba-win32-x64-msvc': 1.7.2 + dev: false + + /@nodelib/fs.scandir@2.1.5: resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} dependencies: @@ -2458,24 +2785,24 @@ packages: run-parallel: 1.2.0 dev: false - /@nodelib/fs.stat/2.0.5: + /@nodelib/fs.stat@2.0.5: resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} engines: {node: '>= 8'} dev: false - /@nodelib/fs.walk/1.2.8: + /@nodelib/fs.walk@1.2.8: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} dependencies: '@nodelib/fs.scandir': 2.1.5 - fastq: 1.13.0 + fastq: 1.15.0 dev: false - /@polka/url/1.0.0-next.21: - resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==} + /@polka/url@1.0.0-next.23: + resolution: {integrity: sha512-C16M+IYz0rgRhWZdCmK+h58JMv8vijAA61gmz2rspCSwKwzBebpdcsiUmwrtJRdphuY30i6BSLEOP8ppbNLyLg==} dev: false - /@rollup/plugin-babel/5.3.1_lufgodn4kpczyathl2pjzkbs7y: + /@rollup/plugin-babel@5.3.1(@babel/core@7.22.19)(rollup@2.79.1): resolution: {integrity: sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==} engines: {node: '>= 10.0.0'} peerDependencies: @@ -2486,38 +2813,38 @@ packages: '@types/babel__core': optional: true dependencies: - '@babel/core': 7.17.8 - '@babel/helper-module-imports': 7.16.7 - '@rollup/pluginutils': 3.1.0_rollup@2.70.2 - rollup: 2.70.2 + '@babel/core': 7.22.19 + '@babel/helper-module-imports': 7.22.15 + '@rollup/pluginutils': 3.1.0(rollup@2.79.1) + rollup: 2.79.1 dev: false - /@rollup/plugin-node-resolve/11.2.1_rollup@2.70.2: + /@rollup/plugin-node-resolve@11.2.1(rollup@2.79.1): resolution: {integrity: sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==} engines: {node: '>= 10.0.0'} peerDependencies: rollup: ^1.20.0||^2.0.0 dependencies: - '@rollup/pluginutils': 3.1.0_rollup@2.70.2 + '@rollup/pluginutils': 3.1.0(rollup@2.79.1) '@types/resolve': 1.17.1 - builtin-modules: 3.2.0 - deepmerge: 4.2.2 + builtin-modules: 3.3.0 + deepmerge: 4.3.1 is-module: 1.0.0 - resolve: 1.22.0 - rollup: 2.70.2 + resolve: 1.22.5 + rollup: 2.79.1 dev: false - /@rollup/plugin-replace/2.4.2_rollup@2.70.2: + /@rollup/plugin-replace@2.4.2(rollup@2.79.1): resolution: {integrity: sha512-IGcu+cydlUMZ5En85jxHH4qj2hta/11BHq95iHEyb2sbgiN0eCdzvUcHw5gt9pBL5lTi4JDYJ1acCoMGpTvEZg==} peerDependencies: rollup: ^1.20.0 || ^2.0.0 dependencies: - '@rollup/pluginutils': 3.1.0_rollup@2.70.2 + '@rollup/pluginutils': 3.1.0(rollup@2.79.1) magic-string: 0.25.9 - rollup: 2.70.2 + rollup: 2.79.1 dev: false - /@rollup/pluginutils/3.1.0_rollup@2.70.2: + /@rollup/pluginutils@3.1.0(rollup@2.79.1): resolution: {integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==} engines: {node: '>= 8.0.0'} peerDependencies: @@ -2526,531 +2853,584 @@ packages: '@types/estree': 0.0.39 estree-walker: 1.0.1 picomatch: 2.3.1 - rollup: 2.70.2 + rollup: 2.79.1 dev: false - /@sideway/address/4.1.3: - resolution: {integrity: sha512-8ncEUtmnTsMmL7z1YPB47kPUq7LpKWJNFPsRzHiIajGC5uXlWGn+AmkYPcHNl8S4tcEGx+cnORnNYaw2wvL+LQ==} + /@sideway/address@4.1.4: + resolution: {integrity: sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==} dependencies: - '@hapi/hoek': 9.2.1 + '@hapi/hoek': 9.3.0 - /@sideway/formula/3.0.0: - resolution: {integrity: sha512-vHe7wZ4NOXVfkoRb8T5otiENVlT7a3IAiw7H5M2+GO+9CDgcVUUsX1zalAztCmwyOr2RUTGJdgB+ZvSVqmdHmg==} + /@sideway/formula@3.0.1: + resolution: {integrity: sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==} - /@sideway/pinpoint/2.0.0: + /@sideway/pinpoint@2.0.0: resolution: {integrity: sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==} - /@sindresorhus/is/0.14.0: + /@sinclair/typebox@0.27.8: + resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + dev: false + + /@sindresorhus/is@0.14.0: resolution: {integrity: sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==} engines: {node: '>=6'} dev: false - /@slorber/static-site-generator-webpack-plugin/4.0.4: - resolution: {integrity: sha512-FvMavoWEIePps6/JwGCOLYKCRhuwIHhMtmbKpBFgzNkxwpa/569LfTkrbRk1m1I3n+ezJK4on9E1A6cjuZmD9g==} + /@slorber/static-site-generator-webpack-plugin@4.0.7: + resolution: {integrity: sha512-Ug7x6z5lwrz0WqdnNFOMYrDQNTPAprvHLSh6+/fmml3qUiz6l5eq+2MzLKWtn/q5K5NpSiFsZTP/fck/3vjSxA==} + engines: {node: '>=14'} dependencies: - bluebird: 3.7.2 - cheerio: 0.22.0 eval: 0.1.8 - webpack-sources: 1.4.3 + p-map: 4.0.0 + webpack-sources: 3.2.3 dev: false - /@surma/rollup-plugin-off-main-thread/2.2.3: + /@surma/rollup-plugin-off-main-thread@2.2.3: resolution: {integrity: sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==} dependencies: - ejs: 3.1.7 - json5: 2.2.1 + ejs: 3.1.9 + json5: 2.2.3 magic-string: 0.25.9 - string.prototype.matchall: 4.0.7 + string.prototype.matchall: 4.0.10 dev: false - /@svgr/babel-plugin-add-jsx-attribute/6.0.0_@babel+core@7.17.8: - resolution: {integrity: sha512-MdPdhdWLtQsjd29Wa4pABdhWbaRMACdM1h31BY+c6FghTZqNGT7pEYdBoaGeKtdTOBC/XNFQaKVj+r/Ei2ryWA==} + /@svgr/babel-plugin-add-jsx-attribute@6.5.1(@babel/core@7.22.19): + resolution: {integrity: sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 + '@babel/core': 7.22.19 dev: false - /@svgr/babel-plugin-remove-jsx-attribute/6.0.0_@babel+core@7.17.8: - resolution: {integrity: sha512-aVdtfx9jlaaxc3unA6l+M9YRnKIZjOhQPthLKqmTXC8UVkBLDRGwPKo+r8n3VZN8B34+yVajzPTZ+ptTSuZZCw==} - engines: {node: '>=10'} + /@svgr/babel-plugin-remove-jsx-attribute@8.0.0(@babel/core@7.22.19): + resolution: {integrity: sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==} + engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 + '@babel/core': 7.22.19 dev: false - /@svgr/babel-plugin-remove-jsx-empty-expression/6.0.0_@babel+core@7.17.8: - resolution: {integrity: sha512-Ccj42ApsePD451AZJJf1QzTD1B/BOU392URJTeXFxSK709i0KUsGtbwyiqsKu7vsYxpTM0IA5clAKDyf9RCZyA==} - engines: {node: '>=10'} + /@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0(@babel/core@7.22.19): + resolution: {integrity: sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==} + engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 + '@babel/core': 7.22.19 dev: false - /@svgr/babel-plugin-replace-jsx-attribute-value/6.0.0_@babel+core@7.17.8: - resolution: {integrity: sha512-88V26WGyt1Sfd1emBYmBJRWMmgarrExpKNVmI9vVozha4kqs6FzQJ/Kp5+EYli1apgX44518/0+t9+NU36lThQ==} + /@svgr/babel-plugin-replace-jsx-attribute-value@6.5.1(@babel/core@7.22.19): + resolution: {integrity: sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 + '@babel/core': 7.22.19 dev: false - /@svgr/babel-plugin-svg-dynamic-title/6.0.0_@babel+core@7.17.8: - resolution: {integrity: sha512-F7YXNLfGze+xv0KMQxrl2vkNbI9kzT9oDK55/kUuymh1ACyXkMV+VZWX1zEhSTfEKh7VkHVZGmVtHg8eTZ6PRg==} + /@svgr/babel-plugin-svg-dynamic-title@6.5.1(@babel/core@7.22.19): + resolution: {integrity: sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 + '@babel/core': 7.22.19 dev: false - /@svgr/babel-plugin-svg-em-dimensions/6.0.0_@babel+core@7.17.8: - resolution: {integrity: sha512-+rghFXxdIqJNLQK08kwPBD3Z22/0b2tEZ9lKiL/yTfuyj1wW8HUXu4bo/XkogATIYuXSghVQOOCwURXzHGKyZA==} + /@svgr/babel-plugin-svg-em-dimensions@6.5.1(@babel/core@7.22.19): + resolution: {integrity: sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 + '@babel/core': 7.22.19 dev: false - /@svgr/babel-plugin-transform-react-native-svg/6.0.0_@babel+core@7.17.8: - resolution: {integrity: sha512-VaphyHZ+xIKv5v0K0HCzyfAaLhPGJXSk2HkpYfXIOKb7DjLBv0soHDxNv6X0vr2titsxE7klb++u7iOf7TSrFQ==} + /@svgr/babel-plugin-transform-react-native-svg@6.5.1(@babel/core@7.22.19): + resolution: {integrity: sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 + '@babel/core': 7.22.19 dev: false - /@svgr/babel-plugin-transform-svg-component/6.2.0_@babel+core@7.17.8: - resolution: {integrity: sha512-bhYIpsORb++wpsp91fymbFkf09Z/YEKR0DnFjxvN+8JHeCUD2unnh18jIMKnDJTWtvpTaGYPXELVe4OOzFI0xg==} + /@svgr/babel-plugin-transform-svg-component@6.5.1(@babel/core@7.22.19): + resolution: {integrity: sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==} engines: {node: '>=12'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 + '@babel/core': 7.22.19 dev: false - /@svgr/babel-preset/6.2.0_@babel+core@7.17.8: - resolution: {integrity: sha512-4WQNY0J71JIaL03DRn0vLiz87JXx0b9dYm2aA8XHlQJQoixMl4r/soYHm8dsaJZ3jWtkCiOYy48dp9izvXhDkQ==} + /@svgr/babel-preset@6.5.1(@babel/core@7.22.19): + resolution: {integrity: sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==} engines: {node: '>=10'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.17.8 - '@svgr/babel-plugin-add-jsx-attribute': 6.0.0_@babel+core@7.17.8 - '@svgr/babel-plugin-remove-jsx-attribute': 6.0.0_@babel+core@7.17.8 - '@svgr/babel-plugin-remove-jsx-empty-expression': 6.0.0_@babel+core@7.17.8 - '@svgr/babel-plugin-replace-jsx-attribute-value': 6.0.0_@babel+core@7.17.8 - '@svgr/babel-plugin-svg-dynamic-title': 6.0.0_@babel+core@7.17.8 - '@svgr/babel-plugin-svg-em-dimensions': 6.0.0_@babel+core@7.17.8 - '@svgr/babel-plugin-transform-react-native-svg': 6.0.0_@babel+core@7.17.8 - '@svgr/babel-plugin-transform-svg-component': 6.2.0_@babel+core@7.17.8 + '@babel/core': 7.22.19 + '@svgr/babel-plugin-add-jsx-attribute': 6.5.1(@babel/core@7.22.19) + '@svgr/babel-plugin-remove-jsx-attribute': 8.0.0(@babel/core@7.22.19) + '@svgr/babel-plugin-remove-jsx-empty-expression': 8.0.0(@babel/core@7.22.19) + '@svgr/babel-plugin-replace-jsx-attribute-value': 6.5.1(@babel/core@7.22.19) + '@svgr/babel-plugin-svg-dynamic-title': 6.5.1(@babel/core@7.22.19) + '@svgr/babel-plugin-svg-em-dimensions': 6.5.1(@babel/core@7.22.19) + '@svgr/babel-plugin-transform-react-native-svg': 6.5.1(@babel/core@7.22.19) + '@svgr/babel-plugin-transform-svg-component': 6.5.1(@babel/core@7.22.19) dev: false - /@svgr/core/6.2.1: - resolution: {integrity: sha512-NWufjGI2WUyrg46mKuySfviEJ6IxHUOm/8a3Ph38VCWSp+83HBraCQrpEM3F3dB6LBs5x8OElS8h3C0oOJaJAA==} + /@svgr/core@6.5.1: + resolution: {integrity: sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==} engines: {node: '>=10'} dependencies: - '@svgr/plugin-jsx': 6.2.1_@svgr+core@6.2.1 + '@babel/core': 7.22.19 + '@svgr/babel-preset': 6.5.1(@babel/core@7.22.19) + '@svgr/plugin-jsx': 6.5.1(@svgr/core@6.5.1) camelcase: 6.3.0 - cosmiconfig: 7.0.1 + cosmiconfig: 7.1.0 transitivePeerDependencies: - supports-color dev: false - /@svgr/hast-util-to-babel-ast/6.2.1: - resolution: {integrity: sha512-pt7MMkQFDlWJVy9ULJ1h+hZBDGFfSCwlBNW1HkLnVi7jUhyEXUaGYWi1x6bM2IXuAR9l265khBT4Av4lPmaNLQ==} + /@svgr/hast-util-to-babel-ast@6.5.1: + resolution: {integrity: sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==} engines: {node: '>=10'} dependencies: - '@babel/types': 7.17.0 - entities: 3.0.1 + '@babel/types': 7.22.19 + entities: 4.5.0 dev: false - /@svgr/plugin-jsx/6.2.1_@svgr+core@6.2.1: - resolution: {integrity: sha512-u+MpjTsLaKo6r3pHeeSVsh9hmGRag2L7VzApWIaS8imNguqoUwDq/u6U/NDmYs/KAsrmtBjOEaAAPbwNGXXp1g==} + /@svgr/plugin-jsx@6.5.1(@svgr/core@6.5.1): + resolution: {integrity: sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==} engines: {node: '>=10'} peerDependencies: '@svgr/core': ^6.0.0 dependencies: - '@babel/core': 7.17.8 - '@svgr/babel-preset': 6.2.0_@babel+core@7.17.8 - '@svgr/core': 6.2.1 - '@svgr/hast-util-to-babel-ast': 6.2.1 + '@babel/core': 7.22.19 + '@svgr/babel-preset': 6.5.1(@babel/core@7.22.19) + '@svgr/core': 6.5.1 + '@svgr/hast-util-to-babel-ast': 6.5.1 svg-parser: 2.0.4 transitivePeerDependencies: - supports-color dev: false - /@svgr/plugin-svgo/6.2.0_@svgr+core@6.2.1: - resolution: {integrity: sha512-oDdMQONKOJEbuKwuy4Np6VdV6qoaLLvoY86hjvQEgU82Vx1MSWRyYms6Sl0f+NtqxLI/rDVufATbP/ev996k3Q==} + /@svgr/plugin-svgo@6.5.1(@svgr/core@6.5.1): + resolution: {integrity: sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==} engines: {node: '>=10'} peerDependencies: - '@svgr/core': ^6.0.0 + '@svgr/core': '*' dependencies: - '@svgr/core': 6.2.1 - cosmiconfig: 7.0.1 - deepmerge: 4.2.2 + '@svgr/core': 6.5.1 + cosmiconfig: 7.1.0 + deepmerge: 4.3.1 svgo: 2.8.0 dev: false - /@svgr/webpack/6.2.1: - resolution: {integrity: sha512-h09ngMNd13hnePwgXa+Y5CgOjzlCvfWLHg+MBnydEedAnuLRzUHUJmGS3o2OsrhxTOOqEsPOFt5v/f6C5Qulcw==} + /@svgr/webpack@6.5.1: + resolution: {integrity: sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==} engines: {node: '>=10'} dependencies: - '@babel/core': 7.17.8 - '@babel/plugin-transform-react-constant-elements': 7.17.6_@babel+core@7.17.8 - '@babel/preset-env': 7.16.11_@babel+core@7.17.8 - '@babel/preset-react': 7.16.7_@babel+core@7.17.8 - '@babel/preset-typescript': 7.16.7_@babel+core@7.17.8 - '@svgr/core': 6.2.1 - '@svgr/plugin-jsx': 6.2.1_@svgr+core@6.2.1 - '@svgr/plugin-svgo': 6.2.0_@svgr+core@6.2.1 + '@babel/core': 7.22.19 + '@babel/plugin-transform-react-constant-elements': 7.22.5(@babel/core@7.22.19) + '@babel/preset-env': 7.22.15(@babel/core@7.22.19) + '@babel/preset-react': 7.22.15(@babel/core@7.22.19) + '@babel/preset-typescript': 7.22.15(@babel/core@7.22.19) + '@svgr/core': 6.5.1 + '@svgr/plugin-jsx': 6.5.1(@svgr/core@6.5.1) + '@svgr/plugin-svgo': 6.5.1(@svgr/core@6.5.1) transitivePeerDependencies: - supports-color dev: false - /@szmarczak/http-timer/1.1.2: + /@szmarczak/http-timer@1.1.2: resolution: {integrity: sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==} engines: {node: '>=6'} dependencies: defer-to-connect: 1.1.3 dev: false - /@trysound/sax/0.2.0: + /@trysound/sax@0.2.0: resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} engines: {node: '>=10.13.0'} dev: false - /@tsconfig/docusaurus/1.0.5: - resolution: {integrity: sha512-KM/TuJa9fugo67dTGx+ktIqf3fVc077J6jwHu845Hex4EQf7LABlNonP/mohDKT0cmncdtlYVHHF74xR/YpThg==} + /@tsconfig/docusaurus@1.0.7: + resolution: {integrity: sha512-ffTXxGIP/IRMCjuzHd6M4/HdIrw1bMfC7Bv8hMkTadnePkpe0lG0oDSdbRpSDZb2rQMAgpbWiR10BvxvNYwYrg==} dev: true - /@tsconfig/node10/1.0.8: - resolution: {integrity: sha512-6XFfSQmMgq0CFLY1MslA/CPUfhIL919M1rMsa5lP2P097N2Wd1sSX0tx1u4olM16fLNhtHZpRhedZJphNJqmZg==} + /@tsconfig/node10@1.0.9: + resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} dev: true - /@tsconfig/node12/1.0.9: - resolution: {integrity: sha512-/yBMcem+fbvhSREH+s14YJi18sp7J9jpuhYByADT2rypfajMZZN4WQ6zBGgBKp53NKmqI36wFYDb3yaMPurITw==} + /@tsconfig/node12@1.0.11: + resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} dev: true - /@tsconfig/node14/1.0.1: - resolution: {integrity: sha512-509r2+yARFfHHE7T6Puu2jjkoycftovhXRqW328PDXTVGKihlb1P8Z9mMZH04ebyajfRY7dedfGynlrFHJUQCg==} + /@tsconfig/node14@1.0.3: + resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} dev: true - /@tsconfig/node16/1.0.2: - resolution: {integrity: sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==} + /@tsconfig/node16@1.0.4: + resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} dev: true - /@types/body-parser/1.19.2: + /@types/body-parser@1.19.2: resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==} dependencies: - '@types/connect': 3.4.35 - '@types/node': 17.0.22 + '@types/connect': 3.4.36 + '@types/node': 20.6.1 dev: false - /@types/bonjour/3.5.10: + /@types/bonjour@3.5.10: resolution: {integrity: sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==} dependencies: - '@types/node': 17.0.22 + '@types/node': 20.6.1 dev: false - /@types/connect-history-api-fallback/1.3.5: - resolution: {integrity: sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==} + /@types/connect-history-api-fallback@1.5.1: + resolution: {integrity: sha512-iaQslNbARe8fctL5Lk+DsmgWOM83lM+7FzP0eQUJs1jd3kBE8NWqBTIT2S8SqQOJjxvt2eyIjpOuYeRXq2AdMw==} dependencies: - '@types/express-serve-static-core': 4.17.28 - '@types/node': 17.0.22 + '@types/express-serve-static-core': 4.17.36 + '@types/node': 20.6.1 dev: false - /@types/connect/3.4.35: - resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==} + /@types/connect@3.4.36: + resolution: {integrity: sha512-P63Zd/JUGq+PdrM1lv0Wv5SBYeA2+CORvbrXbngriYY0jzLUWfQMQQxOhjONEz/wlHOAxOdY7CY65rgQdTjq2w==} dependencies: - '@types/node': 17.0.22 + '@types/node': 20.6.1 dev: false - /@types/eslint-scope/3.7.3: - resolution: {integrity: sha512-PB3ldyrcnAicT35TWPs5IcwKD8S333HMaa2VVv4+wdvebJkjWuW/xESoB8IwRcog8HYVYamb1g/R31Qv5Bx03g==} + /@types/eslint-scope@3.7.4: + resolution: {integrity: sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==} dependencies: - '@types/eslint': 8.4.1 - '@types/estree': 0.0.51 + '@types/eslint': 8.44.2 + '@types/estree': 1.0.1 - /@types/eslint/8.4.1: - resolution: {integrity: sha512-GE44+DNEyxxh2Kc6ro/VkIj+9ma0pO0bwv9+uHSyBrikYOHr8zYcdPvnBOp1aw8s+CjRvuSx7CyWqRrNFQ59mA==} + /@types/eslint@8.44.2: + resolution: {integrity: sha512-sdPRb9K6iL5XZOmBubg8yiFp5yS/JdUDQsq5e6h95km91MCYMuvp7mh1fjPEYUhvHepKpZOjnEaMBR4PxjWDzg==} dependencies: - '@types/estree': 0.0.51 - '@types/json-schema': 7.0.10 + '@types/estree': 1.0.1 + '@types/json-schema': 7.0.12 - /@types/estree/0.0.39: + /@types/estree@0.0.39: resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==} dev: false - /@types/estree/0.0.51: - resolution: {integrity: sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==} + /@types/estree@1.0.1: + resolution: {integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==} - /@types/express-serve-static-core/4.17.28: - resolution: {integrity: sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig==} + /@types/express-serve-static-core@4.17.36: + resolution: {integrity: sha512-zbivROJ0ZqLAtMzgzIUC4oNqDG9iF0lSsAqpOD9kbs5xcIM3dTiyuHvBc7R8MtWBp3AAWGaovJa+wzWPjLYW7Q==} dependencies: - '@types/node': 17.0.22 - '@types/qs': 6.9.7 + '@types/node': 20.6.1 + '@types/qs': 6.9.8 '@types/range-parser': 1.2.4 + '@types/send': 0.17.1 dev: false - /@types/express/4.17.13: - resolution: {integrity: sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==} + /@types/express@4.17.17: + resolution: {integrity: sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==} dependencies: '@types/body-parser': 1.19.2 - '@types/express-serve-static-core': 4.17.28 - '@types/qs': 6.9.7 - '@types/serve-static': 1.13.10 + '@types/express-serve-static-core': 4.17.36 + '@types/qs': 6.9.8 + '@types/serve-static': 1.15.2 dev: false - /@types/hast/2.3.4: - resolution: {integrity: sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==} + /@types/hast@2.3.5: + resolution: {integrity: sha512-SvQi0L/lNpThgPoleH53cdjB3y9zpLlVjRbqB3rH8hx1jiRSBGAhyjV3H+URFjNVRqt2EdYNrbZE5IsGlNfpRg==} dependencies: - '@types/unist': 2.0.6 + '@types/unist': 2.0.8 dev: false - /@types/history/4.7.11: + /@types/history@4.7.11: resolution: {integrity: sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==} - /@types/html-minifier-terser/6.1.0: + /@types/html-minifier-terser@6.1.0: resolution: {integrity: sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==} dev: false - /@types/http-proxy/1.17.8: - resolution: {integrity: sha512-5kPLG5BKpWYkw/LVOGWpiq3nEVqxiN32rTgI53Sk12/xHFQ2rG3ehI9IO+O3W2QoKeyB92dJkoka8SUm6BX1pA==} + /@types/http-errors@2.0.1: + resolution: {integrity: sha512-/K3ds8TRAfBvi5vfjuz8y6+GiAYBZ0x4tXv1Av6CWBWn0IlADc+ZX9pMq7oU0fNQPnBwIZl3rmeLp6SBApbxSQ==} + dev: false + + /@types/http-proxy@1.17.11: + resolution: {integrity: sha512-HC8G7c1WmaF2ekqpnFq626xd3Zz0uvaqFmBJNRZCGEZCXkvSdJoNFn/8Ygbd9fKNQj8UzLdCETaI0UWPAjK7IA==} dependencies: - '@types/node': 17.0.22 + '@types/node': 20.6.1 dev: false - /@types/json-schema/7.0.10: - resolution: {integrity: sha512-BLO9bBq59vW3fxCpD4o0N4U+DXsvwvIcl+jofw0frQo/GrBFC+/jRZj1E7kgp6dvTyNmA4y6JCV5Id/r3mNP5A==} + /@types/istanbul-lib-coverage@2.0.4: + resolution: {integrity: sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==} + dev: false - /@types/keyv/3.1.4: + /@types/istanbul-lib-report@3.0.0: + resolution: {integrity: sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==} + dependencies: + '@types/istanbul-lib-coverage': 2.0.4 + dev: false + + /@types/istanbul-reports@3.0.1: + resolution: {integrity: sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==} + dependencies: + '@types/istanbul-lib-report': 3.0.0 + dev: false + + /@types/json-schema@7.0.12: + resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==} + + /@types/keyv@3.1.4: resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} dependencies: - '@types/node': 17.0.22 + '@types/node': 20.6.1 dev: false - /@types/mdast/3.0.10: - resolution: {integrity: sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==} + /@types/mdast@3.0.12: + resolution: {integrity: sha512-DT+iNIRNX884cx0/Q1ja7NyUPpZuv0KPyL5rGNxm1WC1OtHstl7n4Jb7nk+xacNShQMbczJjt8uFzznpp6kYBg==} dependencies: - '@types/unist': 2.0.6 + '@types/unist': 2.0.8 dev: false - /@types/mime/1.3.2: + /@types/mime@1.3.2: resolution: {integrity: sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==} dev: false - /@types/node/17.0.22: - resolution: {integrity: sha512-8FwbVoG4fy+ykY86XCAclKZDORttqE5/s7dyWZKLXTdv3vRy5HozBEinG5IqhvPXXzIZEcTVbuHlQEI6iuwcmw==} + /@types/mime@3.0.1: + resolution: {integrity: sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==} + dev: false - /@types/parse-json/4.0.0: + /@types/node@17.0.45: + resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} + dev: false + + /@types/node@20.6.1: + resolution: {integrity: sha512-4LcJvuXQlv4lTHnxwyHQZ3uR9Zw2j7m1C9DfuwoTFQQP4Pmu04O6IfLYgMmHoOCt0nosItLLZAH+sOrRE0Bo8g==} + + /@types/parse-json@4.0.0: resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==} dev: false - /@types/parse5/5.0.3: + /@types/parse5@5.0.3: resolution: {integrity: sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==} dev: false - /@types/prop-types/15.7.4: - resolution: {integrity: sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ==} + /@types/prop-types@15.7.5: + resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==} - /@types/qs/6.9.7: - resolution: {integrity: sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==} + /@types/qs@6.9.8: + resolution: {integrity: sha512-u95svzDlTysU5xecFNTgfFG5RUWu1A9P0VzgpcIiGZA9iraHOdSzcxMxQ55DyeRaGCSxQi7LxXDI4rzq/MYfdg==} dev: false - /@types/range-parser/1.2.4: + /@types/range-parser@1.2.4: resolution: {integrity: sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==} dev: false - /@types/react-router-config/5.0.6: - resolution: {integrity: sha512-db1mx37a1EJDf1XeX8jJN7R3PZABmJQXR8r28yUjVMFSjkmnQo6X6pOEEmNl+Tp2gYQOGPdYbFIipBtdElZ3Yg==} + /@types/react-router-config@5.0.7: + resolution: {integrity: sha512-pFFVXUIydHlcJP6wJm7sDii5mD/bCmmAY0wQzq+M+uX7bqS95AQqHZWP1iNMKrWVQSuHIzj5qi9BvrtLX2/T4w==} dependencies: '@types/history': 4.7.11 - '@types/react': 17.0.41 - '@types/react-router': 5.1.18 + '@types/react': 18.2.21 + '@types/react-router': 5.1.20 - /@types/react-router-dom/5.3.3: + /@types/react-router-dom@5.3.3: resolution: {integrity: sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==} dependencies: '@types/history': 4.7.11 - '@types/react': 17.0.41 - '@types/react-router': 5.1.18 + '@types/react': 18.2.21 + '@types/react-router': 5.1.20 - /@types/react-router/5.1.18: - resolution: {integrity: sha512-YYknwy0D0iOwKQgz9v8nOzt2J6l4gouBmDnWqUUznltOTaon+r8US8ky8HvN0tXvc38U9m6z/t2RsVsnd1zM0g==} + /@types/react-router@5.1.20: + resolution: {integrity: sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==} dependencies: '@types/history': 4.7.11 - '@types/react': 17.0.41 + '@types/react': 18.2.21 - /@types/react/17.0.41: - resolution: {integrity: sha512-chYZ9ogWUodyC7VUTRBfblysKLjnohhFY9bGLwvnUFFy48+vB9DikmB3lW0qTFmBcKSzmdglcvkHK71IioOlDA==} + /@types/react@18.2.21: + resolution: {integrity: sha512-neFKG/sBAwGxHgXiIxnbm3/AAVQ/cMRS93hvBpg8xYRbeQSPVABp9U2bRnPf0iI4+Ucdv3plSxKK+3CW2ENJxA==} dependencies: - '@types/prop-types': 15.7.4 - '@types/scheduler': 0.16.2 - csstype: 3.0.11 + '@types/prop-types': 15.7.5 + '@types/scheduler': 0.16.3 + csstype: 3.1.2 - /@types/resolve/1.17.1: + /@types/resolve@1.17.1: resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==} dependencies: - '@types/node': 17.0.22 + '@types/node': 20.6.1 dev: false - /@types/responselike/1.0.0: + /@types/responselike@1.0.0: resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==} dependencies: - '@types/node': 17.0.22 + '@types/node': 20.6.1 dev: false - /@types/retry/0.12.1: - resolution: {integrity: sha512-xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g==} + /@types/retry@0.12.0: + resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==} dev: false - /@types/sax/1.2.4: + /@types/sax@1.2.4: resolution: {integrity: sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==} dependencies: - '@types/node': 17.0.22 + '@types/node': 20.6.1 dev: false - /@types/scheduler/0.16.2: - resolution: {integrity: sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==} + /@types/scheduler@0.16.3: + resolution: {integrity: sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==} + + /@types/send@0.17.1: + resolution: {integrity: sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q==} + dependencies: + '@types/mime': 1.3.2 + '@types/node': 20.6.1 + dev: false - /@types/serve-index/1.9.1: + /@types/serve-index@1.9.1: resolution: {integrity: sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==} dependencies: - '@types/express': 4.17.13 + '@types/express': 4.17.17 dev: false - /@types/serve-static/1.13.10: - resolution: {integrity: sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==} + /@types/serve-static@1.15.2: + resolution: {integrity: sha512-J2LqtvFYCzaj8pVYKw8klQXrLLk7TBZmQ4ShlcdkELFKGwGMfevMLneMMRkMgZxotOD9wg497LpC7O8PcvAmfw==} dependencies: - '@types/mime': 1.3.2 - '@types/node': 17.0.22 + '@types/http-errors': 2.0.1 + '@types/mime': 3.0.1 + '@types/node': 20.6.1 dev: false - /@types/sockjs/0.3.33: + /@types/sockjs@0.3.33: resolution: {integrity: sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==} dependencies: - '@types/node': 17.0.22 + '@types/node': 20.6.1 dev: false - /@types/trusted-types/2.0.2: - resolution: {integrity: sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg==} + /@types/trusted-types@2.0.4: + resolution: {integrity: sha512-IDaobHimLQhjwsQ/NMwRVfa/yL7L/wriQPMhw1ZJall0KX6E1oxk29XMDeilW5qTIg5aoiqf5Udy8U/51aNoQQ==} dev: false - /@types/unist/2.0.6: - resolution: {integrity: sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==} + /@types/unist@2.0.8: + resolution: {integrity: sha512-d0XxK3YTObnWVp6rZuev3c49+j4Lo8g4L1ZRm9z5L0xpoZycUPshHgczK5gsUMaZOstjVYYi09p5gYvUtfChYw==} dev: false - /@types/ws/8.5.3: - resolution: {integrity: sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==} + /@types/ws@8.5.5: + resolution: {integrity: sha512-lwhs8hktwxSjf9UaZ9tG5M03PGogvFaH8gUgLNbN9HKIg0dvv6q+gkSuJ8HN4/VbyxkuLzCjlN7GquQ0gUJfIg==} dependencies: - '@types/node': 17.0.22 + '@types/node': 20.6.1 dev: false - /@webassemblyjs/ast/1.11.1: - resolution: {integrity: sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==} + /@types/yargs-parser@21.0.0: + resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==} + dev: false + + /@types/yargs@17.0.24: + resolution: {integrity: sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==} dependencies: - '@webassemblyjs/helper-numbers': 1.11.1 - '@webassemblyjs/helper-wasm-bytecode': 1.11.1 + '@types/yargs-parser': 21.0.0 + dev: false - /@webassemblyjs/floating-point-hex-parser/1.11.1: - resolution: {integrity: sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==} + /@webassemblyjs/ast@1.11.6: + resolution: {integrity: sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==} + dependencies: + '@webassemblyjs/helper-numbers': 1.11.6 + '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - /@webassemblyjs/helper-api-error/1.11.1: - resolution: {integrity: sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==} + /@webassemblyjs/floating-point-hex-parser@1.11.6: + resolution: {integrity: sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==} - /@webassemblyjs/helper-buffer/1.11.1: - resolution: {integrity: sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==} + /@webassemblyjs/helper-api-error@1.11.6: + resolution: {integrity: sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==} - /@webassemblyjs/helper-numbers/1.11.1: - resolution: {integrity: sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==} + /@webassemblyjs/helper-buffer@1.11.6: + resolution: {integrity: sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==} + + /@webassemblyjs/helper-numbers@1.11.6: + resolution: {integrity: sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==} dependencies: - '@webassemblyjs/floating-point-hex-parser': 1.11.1 - '@webassemblyjs/helper-api-error': 1.11.1 + '@webassemblyjs/floating-point-hex-parser': 1.11.6 + '@webassemblyjs/helper-api-error': 1.11.6 '@xtuc/long': 4.2.2 - /@webassemblyjs/helper-wasm-bytecode/1.11.1: - resolution: {integrity: sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==} + /@webassemblyjs/helper-wasm-bytecode@1.11.6: + resolution: {integrity: sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==} - /@webassemblyjs/helper-wasm-section/1.11.1: - resolution: {integrity: sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==} + /@webassemblyjs/helper-wasm-section@1.11.6: + resolution: {integrity: sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==} dependencies: - '@webassemblyjs/ast': 1.11.1 - '@webassemblyjs/helper-buffer': 1.11.1 - '@webassemblyjs/helper-wasm-bytecode': 1.11.1 - '@webassemblyjs/wasm-gen': 1.11.1 + '@webassemblyjs/ast': 1.11.6 + '@webassemblyjs/helper-buffer': 1.11.6 + '@webassemblyjs/helper-wasm-bytecode': 1.11.6 + '@webassemblyjs/wasm-gen': 1.11.6 - /@webassemblyjs/ieee754/1.11.1: - resolution: {integrity: sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==} + /@webassemblyjs/ieee754@1.11.6: + resolution: {integrity: sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==} dependencies: '@xtuc/ieee754': 1.2.0 - /@webassemblyjs/leb128/1.11.1: - resolution: {integrity: sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==} + /@webassemblyjs/leb128@1.11.6: + resolution: {integrity: sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==} dependencies: '@xtuc/long': 4.2.2 - /@webassemblyjs/utf8/1.11.1: - resolution: {integrity: sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==} + /@webassemblyjs/utf8@1.11.6: + resolution: {integrity: sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==} - /@webassemblyjs/wasm-edit/1.11.1: - resolution: {integrity: sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==} + /@webassemblyjs/wasm-edit@1.11.6: + resolution: {integrity: sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==} dependencies: - '@webassemblyjs/ast': 1.11.1 - '@webassemblyjs/helper-buffer': 1.11.1 - '@webassemblyjs/helper-wasm-bytecode': 1.11.1 - '@webassemblyjs/helper-wasm-section': 1.11.1 - '@webassemblyjs/wasm-gen': 1.11.1 - '@webassemblyjs/wasm-opt': 1.11.1 - '@webassemblyjs/wasm-parser': 1.11.1 - '@webassemblyjs/wast-printer': 1.11.1 + '@webassemblyjs/ast': 1.11.6 + '@webassemblyjs/helper-buffer': 1.11.6 + '@webassemblyjs/helper-wasm-bytecode': 1.11.6 + '@webassemblyjs/helper-wasm-section': 1.11.6 + '@webassemblyjs/wasm-gen': 1.11.6 + '@webassemblyjs/wasm-opt': 1.11.6 + '@webassemblyjs/wasm-parser': 1.11.6 + '@webassemblyjs/wast-printer': 1.11.6 - /@webassemblyjs/wasm-gen/1.11.1: - resolution: {integrity: sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==} + /@webassemblyjs/wasm-gen@1.11.6: + resolution: {integrity: sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==} dependencies: - '@webassemblyjs/ast': 1.11.1 - '@webassemblyjs/helper-wasm-bytecode': 1.11.1 - '@webassemblyjs/ieee754': 1.11.1 - '@webassemblyjs/leb128': 1.11.1 - '@webassemblyjs/utf8': 1.11.1 + '@webassemblyjs/ast': 1.11.6 + '@webassemblyjs/helper-wasm-bytecode': 1.11.6 + '@webassemblyjs/ieee754': 1.11.6 + '@webassemblyjs/leb128': 1.11.6 + '@webassemblyjs/utf8': 1.11.6 - /@webassemblyjs/wasm-opt/1.11.1: - resolution: {integrity: sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==} + /@webassemblyjs/wasm-opt@1.11.6: + resolution: {integrity: sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==} dependencies: - '@webassemblyjs/ast': 1.11.1 - '@webassemblyjs/helper-buffer': 1.11.1 - '@webassemblyjs/wasm-gen': 1.11.1 - '@webassemblyjs/wasm-parser': 1.11.1 + '@webassemblyjs/ast': 1.11.6 + '@webassemblyjs/helper-buffer': 1.11.6 + '@webassemblyjs/wasm-gen': 1.11.6 + '@webassemblyjs/wasm-parser': 1.11.6 - /@webassemblyjs/wasm-parser/1.11.1: - resolution: {integrity: sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==} + /@webassemblyjs/wasm-parser@1.11.6: + resolution: {integrity: sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==} dependencies: - '@webassemblyjs/ast': 1.11.1 - '@webassemblyjs/helper-api-error': 1.11.1 - '@webassemblyjs/helper-wasm-bytecode': 1.11.1 - '@webassemblyjs/ieee754': 1.11.1 - '@webassemblyjs/leb128': 1.11.1 - '@webassemblyjs/utf8': 1.11.1 + '@webassemblyjs/ast': 1.11.6 + '@webassemblyjs/helper-api-error': 1.11.6 + '@webassemblyjs/helper-wasm-bytecode': 1.11.6 + '@webassemblyjs/ieee754': 1.11.6 + '@webassemblyjs/leb128': 1.11.6 + '@webassemblyjs/utf8': 1.11.6 - /@webassemblyjs/wast-printer/1.11.1: - resolution: {integrity: sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==} + /@webassemblyjs/wast-printer@1.11.6: + resolution: {integrity: sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==} dependencies: - '@webassemblyjs/ast': 1.11.1 + '@webassemblyjs/ast': 1.11.6 '@xtuc/long': 4.2.2 - /@xtuc/ieee754/1.2.0: + /@xtuc/ieee754@1.2.0: resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==} - /@xtuc/long/4.2.2: + /@xtuc/long@4.2.2: resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==} - /accepts/1.3.8: + /accepts@1.3.8: resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} engines: {node: '>= 0.6'} dependencies: @@ -3058,28 +3438,28 @@ packages: negotiator: 0.6.3 dev: false - /acorn-import-assertions/1.8.0_acorn@8.7.0: - resolution: {integrity: sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==} + /acorn-import-assertions@1.9.0(acorn@8.10.0): + resolution: {integrity: sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==} peerDependencies: acorn: ^8 dependencies: - acorn: 8.7.0 + acorn: 8.10.0 - /acorn-walk/8.2.0: + /acorn-walk@8.2.0: resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} engines: {node: '>=0.4.0'} - /acorn/8.7.0: - resolution: {integrity: sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==} + /acorn@8.10.0: + resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==} engines: {node: '>=0.4.0'} hasBin: true - /address/1.1.2: - resolution: {integrity: sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA==} - engines: {node: '>= 0.12.0'} + /address@1.2.2: + resolution: {integrity: sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==} + engines: {node: '>= 10.0.0'} dev: false - /aggregate-error/3.1.0: + /aggregate-error@3.1.0: resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} engines: {node: '>=8'} dependencies: @@ -3087,32 +3467,34 @@ packages: indent-string: 4.0.0 dev: false - /ajv-formats/2.1.1: + /ajv-formats@2.1.1(ajv@8.12.0): resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} + peerDependencies: + ajv: ^8.0.0 peerDependenciesMeta: ajv: optional: true dependencies: - ajv: 8.10.0 + ajv: 8.12.0 dev: false - /ajv-keywords/3.5.2_ajv@6.12.6: + /ajv-keywords@3.5.2(ajv@6.12.6): resolution: {integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==} peerDependencies: ajv: ^6.9.1 dependencies: ajv: 6.12.6 - /ajv-keywords/5.1.0_ajv@8.10.0: + /ajv-keywords@5.1.0(ajv@8.12.0): resolution: {integrity: sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==} peerDependencies: ajv: ^8.8.2 dependencies: - ajv: 8.10.0 + ajv: 8.12.0 fast-deep-equal: 3.1.3 dev: false - /ajv/6.12.6: + /ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} dependencies: fast-deep-equal: 3.1.3 @@ -3120,8 +3502,8 @@ packages: json-schema-traverse: 0.4.1 uri-js: 4.4.1 - /ajv/8.10.0: - resolution: {integrity: sha512-bzqAEZOjkrUMl2afH8dknrq5KEk2SrwdBROR+vH1EKVQTqaUbJVPdc/gEdggTMM0Se+s+Ja4ju4TlNcStKl2Hw==} + /ajv@8.12.0: + resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} dependencies: fast-deep-equal: 3.1.3 json-schema-traverse: 1.0.0 @@ -3129,179 +3511,192 @@ packages: uri-js: 4.4.1 dev: false - /algoliasearch-helper/3.7.4_algoliasearch@4.13.0: - resolution: {integrity: sha512-KmJrsHVm5TmxZ9Oj53XdXuM4CQeu7eVFnB15tpSFt+7is1d1yVCv3hxCLMqYSw/rH42ccv013miQpRr268P8vw==} - deprecated: 3.7.3 + /algoliasearch-helper@3.14.1(algoliasearch@4.20.0): + resolution: {integrity: sha512-TZihm6eisSqgLWOXpISAUFXAolJvEpa1gkTjUUEDmVl+TTiQuNvzLQ/osOiqIXzx6QSS4Pd6Ry+SKKOwiqJ17g==} peerDependencies: - algoliasearch: '>= 3.1 < 5' + algoliasearch: '>= 3.1 < 6' dependencies: '@algolia/events': 4.0.1 - algoliasearch: 4.13.0 + algoliasearch: 4.20.0 dev: false - /algoliasearch/4.13.0: - resolution: {integrity: sha512-oHv4faI1Vl2s+YC0YquwkK/TsaJs79g2JFg5FDm2rKN12VItPTAeQ7hyJMHarOPPYuCnNC5kixbtcqvb21wchw==} + /algoliasearch@4.20.0: + resolution: {integrity: sha512-y+UHEjnOItoNy0bYO+WWmLWBlPwDjKHW6mNHrPi0NkuhpQOOEbrkwQH/wgKFDLh7qlKjzoKeiRtlpewDPDG23g==} dependencies: - '@algolia/cache-browser-local-storage': 4.13.0 - '@algolia/cache-common': 4.13.0 - '@algolia/cache-in-memory': 4.13.0 - '@algolia/client-account': 4.13.0 - '@algolia/client-analytics': 4.13.0 - '@algolia/client-common': 4.13.0 - '@algolia/client-personalization': 4.13.0 - '@algolia/client-search': 4.13.0 - '@algolia/logger-common': 4.13.0 - '@algolia/logger-console': 4.13.0 - '@algolia/requester-browser-xhr': 4.13.0 - '@algolia/requester-common': 4.13.0 - '@algolia/requester-node-http': 4.13.0 - '@algolia/transporter': 4.13.0 + '@algolia/cache-browser-local-storage': 4.20.0 + '@algolia/cache-common': 4.20.0 + '@algolia/cache-in-memory': 4.20.0 + '@algolia/client-account': 4.20.0 + '@algolia/client-analytics': 4.20.0 + '@algolia/client-common': 4.20.0 + '@algolia/client-personalization': 4.20.0 + '@algolia/client-search': 4.20.0 + '@algolia/logger-common': 4.20.0 + '@algolia/logger-console': 4.20.0 + '@algolia/requester-browser-xhr': 4.20.0 + '@algolia/requester-common': 4.20.0 + '@algolia/requester-node-http': 4.20.0 + '@algolia/transporter': 4.20.0 dev: false - /ansi-align/3.0.1: + /ansi-align@3.0.1: resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} dependencies: string-width: 4.2.3 dev: false - /ansi-html-community/0.0.8: + /ansi-html-community@0.0.8: resolution: {integrity: sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==} engines: {'0': node >= 0.8.0} hasBin: true dev: false - /ansi-regex/5.0.1: + /ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} dev: false - /ansi-regex/6.0.1: + /ansi-regex@6.0.1: resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} engines: {node: '>=12'} dev: false - /ansi-styles/3.2.1: + /ansi-styles@3.2.1: resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} engines: {node: '>=4'} dependencies: color-convert: 1.9.3 dev: false - /ansi-styles/4.3.0: + /ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} dependencies: color-convert: 2.0.1 dev: false - /ansi-styles/6.1.0: - resolution: {integrity: sha512-VbqNsoz55SYGczauuup0MFUyXNQviSpFTj1RQtFzmQLk18qbVSpTFFGMT293rmDaQuKCT6InmbuEyUne4mTuxQ==} + /ansi-styles@6.2.1: + resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} engines: {node: '>=12'} dev: false - /anymatch/3.1.2: - resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==} + /anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} dependencies: normalize-path: 3.0.0 picomatch: 2.3.1 dev: false - /arg/4.1.3: + /arg@4.1.3: resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} dev: true - /arg/5.0.1: - resolution: {integrity: sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA==} + /arg@5.0.2: + resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} dev: false - /argparse/1.0.10: + /argparse@1.0.10: resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} dependencies: sprintf-js: 1.0.3 dev: false - /argparse/2.0.1: + /argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} dev: false - /array-flatten/1.1.1: - resolution: {integrity: sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=} + /array-buffer-byte-length@1.0.0: + resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} + dependencies: + call-bind: 1.0.2 + is-array-buffer: 3.0.2 + dev: false + + /array-flatten@1.1.1: + resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} dev: false - /array-flatten/2.1.2: + /array-flatten@2.1.2: resolution: {integrity: sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==} dev: false - /array-union/2.1.0: + /array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} dev: false - /array-union/3.0.1: - resolution: {integrity: sha512-1OvF9IbWwaeiM9VhzYXVQacMibxpXOMYVNIvMtKRyX9SImBXpKcFr8XvFDeEslCyuH/t6KRt7HEO94AlP8Iatw==} - engines: {node: '>=12'} - dev: false - - /asap/2.0.6: - resolution: {integrity: sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=} + /arraybuffer.prototype.slice@1.0.2: + resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==} + engines: {node: '>= 0.4'} + dependencies: + array-buffer-byte-length: 1.0.0 + call-bind: 1.0.2 + define-properties: 1.2.1 + es-abstract: 1.22.2 + get-intrinsic: 1.2.1 + is-array-buffer: 3.0.2 + is-shared-array-buffer: 1.0.2 dev: false - /async/2.6.3: - resolution: {integrity: sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==} - dependencies: - lodash: 4.17.21 + /asap@2.0.6: + resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} dev: false - /async/3.2.3: - resolution: {integrity: sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==} + /async@3.2.4: + resolution: {integrity: sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==} dev: false - /at-least-node/1.0.0: + /at-least-node@1.0.0: resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==} engines: {node: '>= 4.0.0'} dev: false - /autoprefixer/10.4.4_postcss@8.4.12: - resolution: {integrity: sha512-Tm8JxsB286VweiZ5F0anmbyGiNI3v3wGv3mz9W+cxEDYB/6jbnj6GM9H9mK3wIL8ftgl+C07Lcwb8PG5PCCPzA==} + /autoprefixer@10.4.15(postcss@8.4.29): + resolution: {integrity: sha512-KCuPB8ZCIqFdA4HwKXsvz7j6gvSDNhDP7WnUjBleRkKjPdvCmHFuQ77ocavI8FT6NdvlBnE2UFr2H4Mycn8Vew==} engines: {node: ^10 || ^12 || >=14} hasBin: true peerDependencies: postcss: ^8.1.0 dependencies: - browserslist: 4.20.2 - caniuse-lite: 1.0.30001319 - fraction.js: 4.2.0 + browserslist: 4.21.10 + caniuse-lite: 1.0.30001534 + fraction.js: 4.3.6 normalize-range: 0.1.2 picocolors: 1.0.0 - postcss: 8.4.12 + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /axios/0.25.0: + /available-typed-arrays@1.0.5: + resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} + engines: {node: '>= 0.4'} + dev: false + + /axios@0.25.0: resolution: {integrity: sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==} dependencies: - follow-redirects: 1.14.9 + follow-redirects: 1.15.2 transitivePeerDependencies: - debug dev: false - /babel-loader/8.2.4_7kihywspc3gmje7ccze4zrmvoq: - resolution: {integrity: sha512-8dytA3gcvPPPv4Grjhnt8b5IIiTcq/zeXOPk4iTYI0SVXcsmuGg7JtBRDp8S9X+gJfhQ8ektjXZlDu1Bb33U8A==} + /babel-loader@8.3.0(@babel/core@7.22.19)(webpack@5.88.2): + resolution: {integrity: sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==} engines: {node: '>= 8.9'} peerDependencies: '@babel/core': ^7.0.0 webpack: '>=2' dependencies: - '@babel/core': 7.17.8 + '@babel/core': 7.22.19 find-cache-dir: 3.3.2 - loader-utils: 2.0.2 + loader-utils: 2.0.4 make-dir: 3.1.0 schema-utils: 2.7.1 - webpack: 5.70.0 + webpack: 5.88.2 dev: false - /babel-plugin-apply-mdx-type-prop/1.6.22_@babel+core@7.12.9: + /babel-plugin-apply-mdx-type-prop@1.6.22(@babel/core@7.12.9): resolution: {integrity: sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==} peerDependencies: '@babel/core': ^7.11.6 @@ -3311,123 +3706,113 @@ packages: '@mdx-js/util': 1.6.22 dev: false - /babel-plugin-dynamic-import-node/2.3.0: - resolution: {integrity: sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ==} - dependencies: - object.assign: 4.1.2 - dev: false - - /babel-plugin-dynamic-import-node/2.3.3: + /babel-plugin-dynamic-import-node@2.3.3: resolution: {integrity: sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==} dependencies: - object.assign: 4.1.2 + object.assign: 4.1.4 dev: false - /babel-plugin-extract-import-names/1.6.22: + /babel-plugin-extract-import-names@1.6.22: resolution: {integrity: sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==} dependencies: '@babel/helper-plugin-utils': 7.10.4 dev: false - /babel-plugin-polyfill-corejs2/0.3.1_@babel+core@7.17.8: - resolution: {integrity: sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==} + /babel-plugin-polyfill-corejs2@0.4.5(@babel/core@7.22.19): + resolution: {integrity: sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/compat-data': 7.17.7 - '@babel/core': 7.17.8 - '@babel/helper-define-polyfill-provider': 0.3.1_@babel+core@7.17.8 - semver: 6.3.0 + '@babel/compat-data': 7.22.9 + '@babel/core': 7.22.19 + '@babel/helper-define-polyfill-provider': 0.4.2(@babel/core@7.22.19) + semver: 6.3.1 transitivePeerDependencies: - supports-color dev: false - /babel-plugin-polyfill-corejs3/0.5.2_@babel+core@7.17.8: - resolution: {integrity: sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ==} + /babel-plugin-polyfill-corejs3@0.8.3(@babel/core@7.22.19): + resolution: {integrity: sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-define-polyfill-provider': 0.3.1_@babel+core@7.17.8 - core-js-compat: 3.21.1 + '@babel/core': 7.22.19 + '@babel/helper-define-polyfill-provider': 0.4.2(@babel/core@7.22.19) + core-js-compat: 3.32.2 transitivePeerDependencies: - supports-color dev: false - /babel-plugin-polyfill-regenerator/0.3.1_@babel+core@7.17.8: - resolution: {integrity: sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==} + /babel-plugin-polyfill-regenerator@0.5.2(@babel/core@7.22.19): + resolution: {integrity: sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.17.8 - '@babel/helper-define-polyfill-provider': 0.3.1_@babel+core@7.17.8 + '@babel/core': 7.22.19 + '@babel/helper-define-polyfill-provider': 0.4.2(@babel/core@7.22.19) transitivePeerDependencies: - supports-color dev: false - /bail/1.0.5: + /bail@1.0.5: resolution: {integrity: sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==} dev: false - /balanced-match/1.0.2: + /balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} dev: false - /base16/1.0.0: - resolution: {integrity: sha1-4pf2DX7BAUp6lxo568ipjAtoHnA=} + /base16@1.0.0: + resolution: {integrity: sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ==} dev: false - /batch/0.6.1: - resolution: {integrity: sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=} + /batch@0.6.1: + resolution: {integrity: sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==} dev: false - /big.js/5.2.2: + /big.js@5.2.2: resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} dev: false - /binary-extensions/2.2.0: + /binary-extensions@2.2.0: resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} engines: {node: '>=8'} dev: false - /bluebird/3.7.2: - resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==} - dev: false - - /body-parser/1.19.2: - resolution: {integrity: sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==} - engines: {node: '>= 0.8'} + /body-parser@1.20.1: + resolution: {integrity: sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==} + engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} dependencies: bytes: 3.1.2 - content-type: 1.0.4 + content-type: 1.0.5 debug: 2.6.9 - depd: 1.1.2 - http-errors: 1.8.1 + depd: 2.0.0 + destroy: 1.2.0 + http-errors: 2.0.0 iconv-lite: 0.4.24 - on-finished: 2.3.0 - qs: 6.9.7 - raw-body: 2.4.3 + on-finished: 2.4.1 + qs: 6.11.0 + raw-body: 2.5.1 type-is: 1.6.18 + unpipe: 1.0.0 transitivePeerDependencies: - supports-color dev: false - /bonjour/3.5.0: - resolution: {integrity: sha1-jokKGD2O6aI5OzhExpGkK897yfU=} + /bonjour-service@1.1.1: + resolution: {integrity: sha512-Z/5lQRMOG9k7W+FkeGTNjh7htqn/2LMnfOvBZ8pynNZCM9MwkQkI3zeI4oz09uWdcgmgHugVvBqxGg4VQJ5PCg==} dependencies: array-flatten: 2.1.2 - deep-equal: 1.1.1 dns-equal: 1.0.0 - dns-txt: 2.0.2 - multicast-dns: 6.2.3 - multicast-dns-service-types: 1.1.0 + fast-deep-equal: 3.1.3 + multicast-dns: 7.2.5 dev: false - /boolbase/1.0.0: - resolution: {integrity: sha1-aN/1++YMUes3cl6p4+0xDcwed24=} + /boolbase@1.0.0: + resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} dev: false - /boxen/5.1.2: + /boxen@5.1.2: resolution: {integrity: sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==} engines: {node: '>=10'} dependencies: @@ -3441,7 +3826,7 @@ packages: wrap-ansi: 7.0.0 dev: false - /boxen/6.2.1: + /boxen@6.2.1: resolution: {integrity: sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: @@ -3450,123 +3835,118 @@ packages: chalk: 4.1.2 cli-boxes: 3.0.0 string-width: 5.1.2 - type-fest: 2.12.1 + type-fest: 2.19.0 widest-line: 4.0.1 - wrap-ansi: 8.0.1 + wrap-ansi: 8.1.0 dev: false - /brace-expansion/1.1.11: + /brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 dev: false - /brace-expansion/2.0.1: + /brace-expansion@2.0.1: resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} dependencies: balanced-match: 1.0.2 dev: false - /braces/3.0.2: + /braces@3.0.2: resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} engines: {node: '>=8'} dependencies: fill-range: 7.0.1 dev: false - /browserslist/4.20.2: - resolution: {integrity: sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==} + /browserslist@4.21.10: + resolution: {integrity: sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001319 - electron-to-chromium: 1.4.89 - escalade: 3.1.1 - node-releases: 2.0.2 - picocolors: 1.0.0 + caniuse-lite: 1.0.30001534 + electron-to-chromium: 1.4.523 + node-releases: 2.0.13 + update-browserslist-db: 1.0.11(browserslist@4.21.10) - /buffer-from/1.1.2: + /buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - /buffer-indexof/1.1.1: - resolution: {integrity: sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==} - dev: false - - /builtin-modules/3.2.0: - resolution: {integrity: sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==} + /builtin-modules@3.3.0: + resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} engines: {node: '>=6'} dev: false - /bytes/3.0.0: - resolution: {integrity: sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=} + /bytes@3.0.0: + resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==} engines: {node: '>= 0.8'} dev: false - /bytes/3.1.2: + /bytes@3.1.2: resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} engines: {node: '>= 0.8'} dev: false - /cacheable-request/6.1.0: + /cacheable-request@6.1.0: resolution: {integrity: sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==} engines: {node: '>=8'} dependencies: - clone-response: 1.0.2 + clone-response: 1.0.3 get-stream: 5.2.0 - http-cache-semantics: 4.1.0 + http-cache-semantics: 4.1.1 keyv: 3.1.0 lowercase-keys: 2.0.0 normalize-url: 4.5.1 responselike: 1.0.2 dev: false - /call-bind/1.0.2: + /call-bind@1.0.2: resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} dependencies: function-bind: 1.1.1 - get-intrinsic: 1.1.1 + get-intrinsic: 1.2.1 dev: false - /callsites/3.1.0: + /callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} dev: false - /camel-case/4.1.2: + /camel-case@4.1.2: resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==} dependencies: pascal-case: 3.1.2 - tslib: 2.3.1 + tslib: 2.6.2 dev: false - /camelcase-css/2.0.1: + /camelcase-css@2.0.1: resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} engines: {node: '>= 6'} dev: false - /camelcase/6.3.0: + /camelcase@6.3.0: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} dev: false - /caniuse-api/3.0.0: + /caniuse-api@3.0.0: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} dependencies: - browserslist: 4.20.2 - caniuse-lite: 1.0.30001319 + browserslist: 4.21.10 + caniuse-lite: 1.0.30001534 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 dev: false - /caniuse-lite/1.0.30001319: - resolution: {integrity: sha512-xjlIAFHucBRSMUo1kb5D4LYgcN1M45qdKP++lhqowDpwJwGkpIRTt5qQqnhxjj1vHcI7nrJxWhCC1ATrCEBTcw==} + /caniuse-lite@1.0.30001534: + resolution: {integrity: sha512-vlPVrhsCS7XaSh2VvWluIQEzVhefrUQcEsQWSS5A5V+dM07uv1qHeQzAOTGIMy9i3e9bH15+muvI/UHojVgS/Q==} - /ccount/1.1.0: + /ccount@1.1.0: resolution: {integrity: sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==} dev: false - /chalk/2.4.2: + /chalk@2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} engines: {node: '>=4'} dependencies: @@ -3575,7 +3955,7 @@ packages: supports-color: 5.5.0 dev: false - /chalk/4.1.2: + /chalk@4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} engines: {node: '>=10'} dependencies: @@ -3583,68 +3963,47 @@ packages: supports-color: 7.2.0 dev: false - /character-entities-legacy/1.1.4: + /character-entities-legacy@1.1.4: resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==} dev: false - /character-entities/1.2.4: + /character-entities@1.2.4: resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==} dev: false - /character-reference-invalid/1.1.4: + /character-reference-invalid@1.1.4: resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==} dev: false - /cheerio-select/1.5.0: - resolution: {integrity: sha512-qocaHPv5ypefh6YNxvnbABM07KMxExbtbfuJoIie3iZXX1ERwYmJcIiRrr9H05ucQP1k28dav8rpdDgjQd8drg==} + /cheerio-select@2.1.0: + resolution: {integrity: sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==} dependencies: - css-select: 4.2.1 - css-what: 5.1.0 - domelementtype: 2.2.0 - domhandler: 4.3.1 - domutils: 2.8.0 - dev: false - - /cheerio/0.22.0: - resolution: {integrity: sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=} - engines: {node: '>= 0.6'} - dependencies: - css-select: 1.2.0 - dom-serializer: 0.1.1 - entities: 1.1.2 - htmlparser2: 3.10.1 - lodash.assignin: 4.2.0 - lodash.bind: 4.2.1 - lodash.defaults: 4.2.0 - lodash.filter: 4.6.0 - lodash.flatten: 4.4.0 - lodash.foreach: 4.5.0 - lodash.map: 4.6.0 - lodash.merge: 4.6.2 - lodash.pick: 4.4.0 - lodash.reduce: 4.6.0 - lodash.reject: 4.6.0 - lodash.some: 4.6.0 + boolbase: 1.0.0 + css-select: 5.1.0 + css-what: 6.1.0 + domelementtype: 2.3.0 + domhandler: 5.0.3 + domutils: 3.1.0 dev: false - /cheerio/1.0.0-rc.10: - resolution: {integrity: sha512-g0J0q/O6mW8z5zxQ3A8E8J1hUgp4SMOvEoW/x84OwyHKe/Zccz83PVT4y5Crcr530FV6NgmKI1qvGTKVl9XXVw==} + /cheerio@1.0.0-rc.12: + resolution: {integrity: sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==} engines: {node: '>= 6'} dependencies: - cheerio-select: 1.5.0 - dom-serializer: 1.3.2 - domhandler: 4.3.1 - htmlparser2: 6.1.0 - parse5: 6.0.1 - parse5-htmlparser2-tree-adapter: 6.0.1 - tslib: 2.3.1 + cheerio-select: 2.1.0 + dom-serializer: 2.0.0 + domhandler: 5.0.3 + domutils: 3.1.0 + htmlparser2: 8.0.2 + parse5: 7.1.2 + parse5-htmlparser2-tree-adapter: 7.0.0 dev: false - /chokidar/3.5.3: + /chokidar@3.5.3: resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} engines: {node: '>= 8.10.0'} dependencies: - anymatch: 3.1.2 + anymatch: 3.1.3 braces: 3.0.2 glob-parent: 5.1.2 is-binary-path: 2.1.0 @@ -3652,49 +4011,54 @@ packages: normalize-path: 3.0.0 readdirp: 3.6.0 optionalDependencies: - fsevents: 2.3.2 + fsevents: 2.3.3 dev: false - /chrome-trace-event/1.0.3: + /chrome-trace-event@1.0.3: resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==} engines: {node: '>=6.0'} - /ci-info/2.0.0: + /ci-info@2.0.0: resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} dev: false - /clean-css/5.2.4: - resolution: {integrity: sha512-nKseG8wCzEuji/4yrgM/5cthL9oTDc5UOQyFMvW/Q53oP6gLH690o1NbuTh6Y18nujr7BxlsFuS7gXLnLzKJGg==} + /ci-info@3.8.0: + resolution: {integrity: sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==} + engines: {node: '>=8'} + dev: false + + /clean-css@5.3.2: + resolution: {integrity: sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==} engines: {node: '>= 10.0'} dependencies: source-map: 0.6.1 dev: false - /clean-stack/2.2.0: + /clean-stack@2.2.0: resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} engines: {node: '>=6'} dev: false - /cli-boxes/2.2.1: + /cli-boxes@2.2.1: resolution: {integrity: sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==} engines: {node: '>=6'} dev: false - /cli-boxes/3.0.0: + /cli-boxes@3.0.0: resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} engines: {node: '>=10'} dev: false - /cli-table3/0.6.1: - resolution: {integrity: sha512-w0q/enDHhPLq44ovMGdQeeDLvwxwavsJX7oQGYt/LrBlYsyaxyDnp6z3QzFut/6kLLKnlcUVJLrpB7KBfgG/RA==} + /cli-table3@0.6.3: + resolution: {integrity: sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==} engines: {node: 10.* || >= 12.*} dependencies: string-width: 4.2.3 optionalDependencies: - colors: 1.4.0 + '@colors/colors': 1.5.0 dev: false - /clone-deep/4.0.1: + /clone-deep@4.0.1: resolution: {integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==} engines: {node: '>=6'} dependencies: @@ -3702,100 +4066,93 @@ packages: kind-of: 6.0.3 shallow-clone: 3.0.1 - /clone-response/1.0.2: - resolution: {integrity: sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=} + /clone-response@1.0.3: + resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==} dependencies: mimic-response: 1.0.1 dev: false - /clsx/1.1.1: - resolution: {integrity: sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA==} + /clsx@1.2.1: + resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} engines: {node: '>=6'} dev: false - /collapse-white-space/1.0.6: + /collapse-white-space@1.0.6: resolution: {integrity: sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==} dev: false - /color-convert/1.9.3: + /color-convert@1.9.3: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} dependencies: color-name: 1.1.3 dev: false - /color-convert/2.0.1: + /color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} engines: {node: '>=7.0.0'} dependencies: color-name: 1.1.4 dev: false - /color-name/1.1.3: - resolution: {integrity: sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=} + /color-name@1.1.3: + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} dev: false - /color-name/1.1.4: + /color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} dev: false - /colord/2.9.2: - resolution: {integrity: sha512-Uqbg+J445nc1TKn4FoDPS6ZZqAvEDnwrH42yo8B40JSOgSLxMZ/gt3h4nmCtPLQeXhjJJkqBx7SCY35WnIixaQ==} - dev: false - - /colorette/2.0.16: - resolution: {integrity: sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==} + /colord@2.9.3: + resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==} dev: false - /colors/1.4.0: - resolution: {integrity: sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==} - engines: {node: '>=0.1.90'} - requiresBuild: true + /colorette@2.0.20: + resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} dev: false - optional: true - /combine-promises/1.1.0: - resolution: {integrity: sha512-ZI9jvcLDxqwaXEixOhArm3r7ReIivsXkpbyEWyeOhzz1QS0iSgBPnWvEqvIQtYyamGCYA88gFhmUrs9hrrQ0pg==} + /combine-promises@1.2.0: + resolution: {integrity: sha512-VcQB1ziGD0NXrhKxiwyNbCDmRzs/OShMs2GqW2DlU2A/Sd0nQxE1oWDAE5O0ygSx5mgQOn9eIFh7yKPgFRVkPQ==} engines: {node: '>=10'} dev: false - /comma-separated-tokens/1.0.8: + /comma-separated-tokens@1.0.8: resolution: {integrity: sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==} dev: false - /commander/2.20.3: + /commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} - /commander/5.1.0: + /commander@5.1.0: resolution: {integrity: sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==} engines: {node: '>= 6'} - /commander/7.2.0: + /commander@7.2.0: resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} engines: {node: '>= 10'} dev: false - /commander/8.3.0: + /commander@8.3.0: resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} engines: {node: '>= 12'} dev: false - /common-tags/1.8.2: + /common-tags@1.8.2: resolution: {integrity: sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==} engines: {node: '>=4.0.0'} dev: false - /commondir/1.0.1: - resolution: {integrity: sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=} + /commondir@1.0.1: + resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} dev: false - /compressible/2.0.18: + /compressible@2.0.18: resolution: {integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==} engines: {node: '>= 0.6'} dependencies: mime-db: 1.52.0 dev: false - /compression/1.7.4: + /compression@1.7.4: resolution: {integrity: sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==} engines: {node: '>= 0.8.0'} dependencies: @@ -3810,105 +4167,102 @@ packages: - supports-color dev: false - /concat-map/0.0.1: - resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=} + /concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} dev: false - /configstore/5.0.1: + /configstore@5.0.1: resolution: {integrity: sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==} engines: {node: '>=8'} dependencies: dot-prop: 5.3.0 - graceful-fs: 4.2.9 + graceful-fs: 4.2.11 make-dir: 3.1.0 unique-string: 2.0.0 write-file-atomic: 3.0.3 xdg-basedir: 4.0.0 dev: false - /connect-history-api-fallback/1.6.0: - resolution: {integrity: sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==} + /connect-history-api-fallback@2.0.0: + resolution: {integrity: sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==} engines: {node: '>=0.8'} dev: false - /consola/2.15.3: + /consola@2.15.3: resolution: {integrity: sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==} dev: false - /content-disposition/0.5.2: - resolution: {integrity: sha1-DPaLud318r55YcOoUXjLhdunjLQ=} + /content-disposition@0.5.2: + resolution: {integrity: sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==} engines: {node: '>= 0.6'} dev: false - /content-disposition/0.5.4: + /content-disposition@0.5.4: resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} engines: {node: '>= 0.6'} dependencies: safe-buffer: 5.2.1 dev: false - /content-type/1.0.4: - resolution: {integrity: sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==} + /content-type@1.0.5: + resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} engines: {node: '>= 0.6'} dev: false - /convert-source-map/1.8.0: - resolution: {integrity: sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==} - dependencies: - safe-buffer: 5.1.2 + /convert-source-map@1.9.0: + resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} dev: false - /cookie-signature/1.0.6: - resolution: {integrity: sha1-4wOogrNCzD7oylE6eZmXNNqzriw=} + /cookie-signature@1.0.6: + resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==} dev: false - /cookie/0.4.2: - resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==} + /cookie@0.5.0: + resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==} engines: {node: '>= 0.6'} dev: false - /copy-text-to-clipboard/3.0.1: - resolution: {integrity: sha512-rvVsHrpFcL4F2P8ihsoLdFHmd404+CMg71S756oRSeQgqk51U3kicGdnvfkrxva0xXH92SjGS62B0XIJsbh+9Q==} + /copy-text-to-clipboard@3.2.0: + resolution: {integrity: sha512-RnJFp1XR/LOBDckxTib5Qjr/PMfkatD0MUCQgdpqS8MdKiNUzBjAQBEN6oUy+jW7LI93BBG3DtMB2KOOKpGs2Q==} engines: {node: '>=12'} dev: false - /copy-webpack-plugin/10.2.4_webpack@5.70.0: - resolution: {integrity: sha512-xFVltahqlsRcyyJqQbDY6EYTtyQZF9rf+JPjwHObLdPFMEISqkFkr7mFoVOC6BfYS/dNThyoQKvziugm+OnwBg==} - engines: {node: '>= 12.20.0'} + /copy-webpack-plugin@11.0.0(webpack@5.88.2): + resolution: {integrity: sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==} + engines: {node: '>= 14.15.0'} peerDependencies: webpack: ^5.1.0 dependencies: - fast-glob: 3.2.11 + fast-glob: 3.3.1 glob-parent: 6.0.2 - globby: 12.2.0 + globby: 13.2.2 normalize-path: 3.0.0 - schema-utils: 4.0.0 - serialize-javascript: 6.0.0 - webpack: 5.70.0 + schema-utils: 4.2.0 + serialize-javascript: 6.0.1 + webpack: 5.88.2 dev: false - /core-js-compat/3.21.1: - resolution: {integrity: sha512-gbgX5AUvMb8gwxC7FLVWYT7Kkgu/y7+h/h1X43yJkNqhlK2fuYyQimqvKGNZFAY6CKii/GFKJ2cp/1/42TN36g==} + /core-js-compat@3.32.2: + resolution: {integrity: sha512-+GjlguTDINOijtVRUxrQOv3kfu9rl+qPNdX2LTbJ/ZyVTuxK+ksVSAGX1nHstu4hrv1En/uPTtWgq2gI5wt4AQ==} dependencies: - browserslist: 4.20.2 - semver: 7.0.0 + browserslist: 4.21.10 dev: false - /core-js-pure/3.21.1: - resolution: {integrity: sha512-12VZfFIu+wyVbBebyHmRTuEE/tZrB4tJToWcwAMcsp3h4+sHR+fMJWbKpYiCRWlhFBq+KNyO8rIV9rTkeVmznQ==} + /core-js-pure@3.32.2: + resolution: {integrity: sha512-Y2rxThOuNywTjnX/PgA5vWM6CZ9QB9sz9oGeCixV8MqXZO70z/5SHzf9EeBrEBK0PN36DnEBBu9O/aGWzKuMZQ==} requiresBuild: true dev: false - /core-js/3.21.1: - resolution: {integrity: sha512-FRq5b/VMrWlrmCzwRrpDYNxyHP9BcAZC+xHJaqTgIE5091ZV1NTmyh0sGOg5XqpnHvR0svdy0sv1gWA1zmhxig==} + /core-js@3.32.2: + resolution: {integrity: sha512-pxXSw1mYZPDGvTQqEc5vgIb83jGQKFGYWY76z4a7weZXUolw3G+OvpZqSRcfYOoOVUQJYEPsWeQK8pKEnUtWxQ==} requiresBuild: true dev: false - /core-util-is/1.0.3: + /core-util-is@1.0.3: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} dev: false - /cosmiconfig/6.0.0: + /cosmiconfig@6.0.0: resolution: {integrity: sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==} engines: {node: '>=8'} dependencies: @@ -3919,8 +4273,8 @@ packages: yaml: 1.10.2 dev: false - /cosmiconfig/7.0.1: - resolution: {integrity: sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==} + /cosmiconfig@7.1.0: + resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} engines: {node: '>=10'} dependencies: '@types/parse-json': 4.0.0 @@ -3930,19 +4284,35 @@ packages: yaml: 1.10.2 dev: false - /create-require/1.1.1: + /cosmiconfig@8.3.6(typescript@4.9.5): + resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} + engines: {node: '>=14'} + peerDependencies: + typescript: '>=4.9.5' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + import-fresh: 3.3.0 + js-yaml: 4.1.0 + parse-json: 5.2.0 + path-type: 4.0.0 + typescript: 4.9.5 + dev: false + + /create-require@1.1.1: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} dev: true - /cross-fetch/3.1.5: - resolution: {integrity: sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==} + /cross-fetch@3.1.8: + resolution: {integrity: sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg==} dependencies: - node-fetch: 2.6.7 + node-fetch: 2.7.0 transitivePeerDependencies: - encoding dev: false - /cross-spawn/7.0.3: + /cross-spawn@7.0.3: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} engines: {node: '>= 8'} dependencies: @@ -3951,87 +4321,93 @@ packages: which: 2.0.2 dev: false - /crypto-random-string/2.0.0: + /crypto-random-string@2.0.0: resolution: {integrity: sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==} engines: {node: '>=8'} dev: false - /css-declaration-sorter/6.1.4_postcss@8.4.12: - resolution: {integrity: sha512-lpfkqS0fctcmZotJGhnxkIyJWvBXgpyi2wsFd4J8VB7wzyrT6Ch/3Q+FMNJpjK4gu1+GN5khOnpU2ZVKrLbhCw==} - engines: {node: '>= 10'} + /css-declaration-sorter@6.4.1(postcss@8.4.29): + resolution: {integrity: sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g==} + engines: {node: ^10 || ^12 || >=14} peerDependencies: postcss: ^8.0.9 dependencies: - postcss: 8.4.12 - timsort: 0.3.0 + postcss: 8.4.29 dev: false - /css-loader/6.7.1_webpack@5.70.0: - resolution: {integrity: sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==} + /css-loader@6.8.1(webpack@5.88.2): + resolution: {integrity: sha512-xDAXtEVGlD0gJ07iclwWVkLoZOpEvAWaSyf6W18S2pOC//K8+qUDIx8IIT3D+HjnmkJPQeesOPv5aiUaJsCM2g==} engines: {node: '>= 12.13.0'} peerDependencies: webpack: ^5.0.0 dependencies: - icss-utils: 5.1.0_postcss@8.4.12 - postcss: 8.4.12 - postcss-modules-extract-imports: 3.0.0_postcss@8.4.12 - postcss-modules-local-by-default: 4.0.0_postcss@8.4.12 - postcss-modules-scope: 3.0.0_postcss@8.4.12 - postcss-modules-values: 4.0.0_postcss@8.4.12 + icss-utils: 5.1.0(postcss@8.4.29) + postcss: 8.4.29 + postcss-modules-extract-imports: 3.0.0(postcss@8.4.29) + postcss-modules-local-by-default: 4.0.3(postcss@8.4.29) + postcss-modules-scope: 3.0.0(postcss@8.4.29) + postcss-modules-values: 4.0.0(postcss@8.4.29) postcss-value-parser: 4.2.0 - semver: 7.3.5 - webpack: 5.70.0 + semver: 7.5.4 + webpack: 5.88.2 dev: false - /css-minimizer-webpack-plugin/3.4.1_35zgfab327w3ywmceygpdsm34e: - resolution: {integrity: sha512-1u6D71zeIfgngN2XNRJefc/hY7Ybsxd74Jm4qngIXyUEk7fss3VUzuHxLAq/R8NAba4QU9OUSaMZlbpRc7bM4Q==} - engines: {node: '>= 12.13.0'} + /css-minimizer-webpack-plugin@4.2.2(clean-css@5.3.2)(webpack@5.88.2): + resolution: {integrity: sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA==} + engines: {node: '>= 14.15.0'} peerDependencies: '@parcel/css': '*' + '@swc/css': '*' clean-css: '*' csso: '*' esbuild: '*' + lightningcss: '*' webpack: ^5.0.0 peerDependenciesMeta: '@parcel/css': optional: true + '@swc/css': + optional: true clean-css: optional: true csso: optional: true esbuild: optional: true + lightningcss: + optional: true dependencies: - clean-css: 5.2.4 - cssnano: 5.1.5_postcss@8.4.12 - jest-worker: 27.5.1 - postcss: 8.4.12 - schema-utils: 4.0.0 - serialize-javascript: 6.0.0 + clean-css: 5.3.2 + cssnano: 5.1.15(postcss@8.4.29) + jest-worker: 29.7.0 + postcss: 8.4.29 + schema-utils: 4.2.0 + serialize-javascript: 6.0.1 source-map: 0.6.1 - webpack: 5.70.0 + webpack: 5.88.2 dev: false - /css-select/1.2.0: - resolution: {integrity: sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=} + /css-select@4.3.0: + resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==} dependencies: boolbase: 1.0.0 - css-what: 2.1.3 - domutils: 1.5.1 - nth-check: 1.0.2 + css-what: 6.1.0 + domhandler: 4.3.1 + domutils: 2.8.0 + nth-check: 2.1.1 dev: false - /css-select/4.2.1: - resolution: {integrity: sha512-/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ==} + /css-select@5.1.0: + resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} dependencies: boolbase: 1.0.0 - css-what: 5.1.0 - domhandler: 4.3.1 - domutils: 2.8.0 - nth-check: 2.0.1 + css-what: 6.1.0 + domhandler: 5.0.3 + domutils: 3.1.0 + nth-check: 2.1.1 dev: false - /css-tree/1.1.3: + /css-tree@1.1.3: resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} engines: {node: '>=8.0.0'} dependencies: @@ -4039,106 +4415,102 @@ packages: source-map: 0.6.1 dev: false - /css-what/2.1.3: - resolution: {integrity: sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==} - dev: false - - /css-what/5.1.0: - resolution: {integrity: sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==} + /css-what@6.1.0: + resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} engines: {node: '>= 6'} dev: false - /cssesc/3.0.0: + /cssesc@3.0.0: resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} engines: {node: '>=4'} hasBin: true dev: false - /cssnano-preset-advanced/5.3.1_postcss@8.4.12: - resolution: {integrity: sha512-kfCknalY5VX/JKJ3Iri5/5rhZmQIqkbqgXsA6oaTnfA4flY/tt+w0hMxbExr0/fVuJL8w56j211op+pkQoNzoQ==} + /cssnano-preset-advanced@5.3.10(postcss@8.4.29): + resolution: {integrity: sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - autoprefixer: 10.4.4_postcss@8.4.12 - cssnano-preset-default: 5.2.5_postcss@8.4.12 - postcss: 8.4.12 - postcss-discard-unused: 5.1.0_postcss@8.4.12 - postcss-merge-idents: 5.1.1_postcss@8.4.12 - postcss-reduce-idents: 5.2.0_postcss@8.4.12 - postcss-zindex: 5.1.0_postcss@8.4.12 + autoprefixer: 10.4.15(postcss@8.4.29) + cssnano-preset-default: 5.2.14(postcss@8.4.29) + postcss: 8.4.29 + postcss-discard-unused: 5.1.0(postcss@8.4.29) + postcss-merge-idents: 5.1.1(postcss@8.4.29) + postcss-reduce-idents: 5.2.0(postcss@8.4.29) + postcss-zindex: 5.1.0(postcss@8.4.29) dev: false - /cssnano-preset-default/5.2.5_postcss@8.4.12: - resolution: {integrity: sha512-WopL7PzN7sos3X8B54/QGl+CZUh1f0qN4ds+y2d5EPwRSSc3jsitVw81O+Uyop0pXyOfPfZxnc+LmA8w/Ki/WQ==} + /cssnano-preset-default@5.2.14(postcss@8.4.29): + resolution: {integrity: sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - css-declaration-sorter: 6.1.4_postcss@8.4.12 - cssnano-utils: 3.1.0_postcss@8.4.12 - postcss: 8.4.12 - postcss-calc: 8.2.4_postcss@8.4.12 - postcss-colormin: 5.3.0_postcss@8.4.12 - postcss-convert-values: 5.1.0_postcss@8.4.12 - postcss-discard-comments: 5.1.1_postcss@8.4.12 - postcss-discard-duplicates: 5.1.0_postcss@8.4.12 - postcss-discard-empty: 5.1.1_postcss@8.4.12 - postcss-discard-overridden: 5.1.0_postcss@8.4.12 - postcss-merge-longhand: 5.1.3_postcss@8.4.12 - postcss-merge-rules: 5.1.1_postcss@8.4.12 - postcss-minify-font-values: 5.1.0_postcss@8.4.12 - postcss-minify-gradients: 5.1.1_postcss@8.4.12 - postcss-minify-params: 5.1.2_postcss@8.4.12 - postcss-minify-selectors: 5.2.0_postcss@8.4.12 - postcss-normalize-charset: 5.1.0_postcss@8.4.12 - postcss-normalize-display-values: 5.1.0_postcss@8.4.12 - postcss-normalize-positions: 5.1.0_postcss@8.4.12 - postcss-normalize-repeat-style: 5.1.0_postcss@8.4.12 - postcss-normalize-string: 5.1.0_postcss@8.4.12 - postcss-normalize-timing-functions: 5.1.0_postcss@8.4.12 - postcss-normalize-unicode: 5.1.0_postcss@8.4.12 - postcss-normalize-url: 5.1.0_postcss@8.4.12 - postcss-normalize-whitespace: 5.1.1_postcss@8.4.12 - postcss-ordered-values: 5.1.1_postcss@8.4.12 - postcss-reduce-initial: 5.1.0_postcss@8.4.12 - postcss-reduce-transforms: 5.1.0_postcss@8.4.12 - postcss-svgo: 5.1.0_postcss@8.4.12 - postcss-unique-selectors: 5.1.1_postcss@8.4.12 - dev: false - - /cssnano-utils/3.1.0_postcss@8.4.12: + css-declaration-sorter: 6.4.1(postcss@8.4.29) + cssnano-utils: 3.1.0(postcss@8.4.29) + postcss: 8.4.29 + postcss-calc: 8.2.4(postcss@8.4.29) + postcss-colormin: 5.3.1(postcss@8.4.29) + postcss-convert-values: 5.1.3(postcss@8.4.29) + postcss-discard-comments: 5.1.2(postcss@8.4.29) + postcss-discard-duplicates: 5.1.0(postcss@8.4.29) + postcss-discard-empty: 5.1.1(postcss@8.4.29) + postcss-discard-overridden: 5.1.0(postcss@8.4.29) + postcss-merge-longhand: 5.1.7(postcss@8.4.29) + postcss-merge-rules: 5.1.4(postcss@8.4.29) + postcss-minify-font-values: 5.1.0(postcss@8.4.29) + postcss-minify-gradients: 5.1.1(postcss@8.4.29) + postcss-minify-params: 5.1.4(postcss@8.4.29) + postcss-minify-selectors: 5.2.1(postcss@8.4.29) + postcss-normalize-charset: 5.1.0(postcss@8.4.29) + postcss-normalize-display-values: 5.1.0(postcss@8.4.29) + postcss-normalize-positions: 5.1.1(postcss@8.4.29) + postcss-normalize-repeat-style: 5.1.1(postcss@8.4.29) + postcss-normalize-string: 5.1.0(postcss@8.4.29) + postcss-normalize-timing-functions: 5.1.0(postcss@8.4.29) + postcss-normalize-unicode: 5.1.1(postcss@8.4.29) + postcss-normalize-url: 5.1.0(postcss@8.4.29) + postcss-normalize-whitespace: 5.1.1(postcss@8.4.29) + postcss-ordered-values: 5.1.3(postcss@8.4.29) + postcss-reduce-initial: 5.1.2(postcss@8.4.29) + postcss-reduce-transforms: 5.1.0(postcss@8.4.29) + postcss-svgo: 5.1.0(postcss@8.4.29) + postcss-unique-selectors: 5.1.1(postcss@8.4.29) + dev: false + + /cssnano-utils@3.1.0(postcss@8.4.29): resolution: {integrity: sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 dev: false - /cssnano/5.1.5_postcss@8.4.12: - resolution: {integrity: sha512-VZO1e+bRRVixMeia1zKagrv0lLN1B/r/u12STGNNUFxnp97LIFgZHQa0JxqlwEkvzUyA9Oz/WnCTAFkdEbONmg==} + /cssnano@5.1.15(postcss@8.4.29): + resolution: {integrity: sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - cssnano-preset-default: 5.2.5_postcss@8.4.12 - lilconfig: 2.0.4 - postcss: 8.4.12 + cssnano-preset-default: 5.2.14(postcss@8.4.29) + lilconfig: 2.1.0 + postcss: 8.4.29 yaml: 1.10.2 dev: false - /csso/4.2.0: + /csso@4.2.0: resolution: {integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==} engines: {node: '>=8.0.0'} dependencies: css-tree: 1.1.3 dev: false - /csstype/3.0.11: - resolution: {integrity: sha512-sa6P2wJ+CAbgyy4KFssIb/JNMLxFvKF1pCYCSXS8ZMuqZnMsrxqI2E5sPyoTpxoPU/gVZMzr2zjOfg8GIZOMsw==} + /csstype@3.1.2: + resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} - /debug/2.6.9: + /debug@2.6.9: resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} peerDependencies: supports-color: '*' @@ -4149,18 +4521,7 @@ packages: ms: 2.0.0 dev: false - /debug/3.2.7: - resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - dependencies: - ms: 2.1.3 - dev: false - - /debug/4.3.4: + /debug@4.3.4: resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} engines: {node: '>=6.0'} peerDependencies: @@ -4172,63 +4533,63 @@ packages: ms: 2.1.2 dev: false - /decompress-response/3.3.0: - resolution: {integrity: sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=} + /decompress-response@3.3.0: + resolution: {integrity: sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==} engines: {node: '>=4'} dependencies: mimic-response: 1.0.1 dev: false - /deep-equal/1.1.1: - resolution: {integrity: sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==} - dependencies: - is-arguments: 1.1.1 - is-date-object: 1.0.5 - is-regex: 1.1.4 - object-is: 1.1.5 - object-keys: 1.1.1 - regexp.prototype.flags: 1.4.1 - dev: false - - /deep-extend/0.6.0: + /deep-extend@0.6.0: resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} engines: {node: '>=4.0.0'} dev: false - /deepmerge/4.2.2: - resolution: {integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==} + /deepmerge@4.3.1: + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} engines: {node: '>=0.10.0'} dev: false - /default-gateway/6.0.3: + /default-gateway@6.0.3: resolution: {integrity: sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==} engines: {node: '>= 10'} dependencies: execa: 5.1.1 dev: false - /defer-to-connect/1.1.3: + /defer-to-connect@1.1.3: resolution: {integrity: sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==} dev: false - /define-lazy-prop/2.0.0: + /define-data-property@1.1.0: + resolution: {integrity: sha512-UzGwzcjyv3OtAvolTj1GoyNYzfFR+iqbGjcnBEENZVCpM4/Ng1yhGNvS3lR/xDS74Tb2wGG9WzNSNIOS9UVb2g==} + engines: {node: '>= 0.4'} + dependencies: + get-intrinsic: 1.2.1 + gopd: 1.0.1 + has-property-descriptors: 1.0.0 + dev: false + + /define-lazy-prop@2.0.0: resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} engines: {node: '>=8'} dev: false - /define-properties/1.1.3: - resolution: {integrity: sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==} + /define-properties@1.2.1: + resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} engines: {node: '>= 0.4'} dependencies: + define-data-property: 1.1.0 + has-property-descriptors: 1.0.0 object-keys: 1.1.1 dev: false - /del/6.0.0: - resolution: {integrity: sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==} + /del@6.1.1: + resolution: {integrity: sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==} engines: {node: '>=10'} dependencies: globby: 11.1.0 - graceful-fs: 4.2.9 + graceful-fs: 4.2.11 is-glob: 4.0.3 is-path-cwd: 2.2.0 is-path-inside: 3.0.3 @@ -4237,359 +4598,374 @@ packages: slash: 3.0.0 dev: false - /depd/1.1.2: - resolution: {integrity: sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=} + /depd@1.1.2: + resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==} engines: {node: '>= 0.6'} dev: false - /destroy/1.0.4: - resolution: {integrity: sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=} + /depd@2.0.0: + resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} + engines: {node: '>= 0.8'} dev: false - /detab/2.0.4: + /destroy@1.2.0: + resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} + engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} + dev: false + + /detab@2.0.4: resolution: {integrity: sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==} dependencies: repeat-string: 1.6.1 dev: false - /detect-node/2.1.0: + /detect-node@2.1.0: resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==} dev: false - /detect-port-alt/1.1.6: + /detect-port-alt@1.1.6: resolution: {integrity: sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==} engines: {node: '>= 4.2.1'} hasBin: true dependencies: - address: 1.1.2 + address: 1.2.2 debug: 2.6.9 transitivePeerDependencies: - supports-color dev: false - /detect-port/1.3.0: - resolution: {integrity: sha512-E+B1gzkl2gqxt1IhUzwjrxBKRqx1UzC3WLONHinn8S3T6lwV/agVCyitiFOsGJ/eYuEUBvD71MZHy3Pv1G9doQ==} - engines: {node: '>= 4.2.1'} + /detect-port@1.5.1: + resolution: {integrity: sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==} hasBin: true dependencies: - address: 1.1.2 - debug: 2.6.9 + address: 1.2.2 + debug: 4.3.4 transitivePeerDependencies: - supports-color dev: false - /diff/4.0.2: + /diff@4.0.2: resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} engines: {node: '>=0.3.1'} dev: true - /dir-glob/3.0.1: + /dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} dependencies: path-type: 4.0.0 dev: false - /dns-equal/1.0.0: - resolution: {integrity: sha1-s55/HabrCnW6nBcySzR1PEfgZU0=} + /dns-equal@1.0.0: + resolution: {integrity: sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==} dev: false - /dns-packet/1.3.4: - resolution: {integrity: sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==} - dependencies: - ip: 1.1.5 - safe-buffer: 5.2.1 - dev: false - - /dns-txt/2.0.2: - resolution: {integrity: sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=} + /dns-packet@5.6.1: + resolution: {integrity: sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==} + engines: {node: '>=6'} dependencies: - buffer-indexof: 1.1.1 + '@leichtgewicht/ip-codec': 2.0.4 dev: false - /dom-converter/0.2.0: + /dom-converter@0.2.0: resolution: {integrity: sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==} dependencies: utila: 0.4.0 dev: false - /dom-serializer/0.1.1: - resolution: {integrity: sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==} - dependencies: - domelementtype: 1.3.1 - entities: 1.1.2 - dev: false - - /dom-serializer/1.3.2: - resolution: {integrity: sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==} + /dom-serializer@1.4.1: + resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==} dependencies: - domelementtype: 2.2.0 + domelementtype: 2.3.0 domhandler: 4.3.1 entities: 2.2.0 dev: false - /domelementtype/1.3.1: - resolution: {integrity: sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==} + /dom-serializer@2.0.0: + resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==} + dependencies: + domelementtype: 2.3.0 + domhandler: 5.0.3 + entities: 4.5.0 dev: false - /domelementtype/2.2.0: - resolution: {integrity: sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==} + /domelementtype@2.3.0: + resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} dev: false - /domhandler/2.4.2: - resolution: {integrity: sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==} - dependencies: - domelementtype: 1.3.1 - dev: false - - /domhandler/4.3.1: + /domhandler@4.3.1: resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==} engines: {node: '>= 4'} dependencies: - domelementtype: 2.2.0 + domelementtype: 2.3.0 dev: false - /domutils/1.5.1: - resolution: {integrity: sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=} + /domhandler@5.0.3: + resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} + engines: {node: '>= 4'} dependencies: - dom-serializer: 0.1.1 - domelementtype: 1.3.1 + domelementtype: 2.3.0 dev: false - /domutils/1.7.0: - resolution: {integrity: sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==} + /domutils@2.8.0: + resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} dependencies: - dom-serializer: 0.1.1 - domelementtype: 1.3.1 + dom-serializer: 1.4.1 + domelementtype: 2.3.0 + domhandler: 4.3.1 dev: false - /domutils/2.8.0: - resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} + /domutils@3.1.0: + resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==} dependencies: - dom-serializer: 1.3.2 - domelementtype: 2.2.0 - domhandler: 4.3.1 + dom-serializer: 2.0.0 + domelementtype: 2.3.0 + domhandler: 5.0.3 dev: false - /dot-case/3.0.4: + /dot-case@3.0.4: resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==} dependencies: no-case: 3.0.4 - tslib: 2.3.1 + tslib: 2.6.2 dev: false - /dot-prop/5.3.0: + /dot-prop@5.3.0: resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==} engines: {node: '>=8'} dependencies: is-obj: 2.0.0 dev: false - /duplexer/0.1.2: - resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==} + /duplexer3@0.1.5: + resolution: {integrity: sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==} dev: false - /duplexer3/0.1.4: - resolution: {integrity: sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=} + /duplexer@0.1.2: + resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==} dev: false - /eastasianwidth/0.2.0: + /eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} dev: false - /ee-first/1.1.1: - resolution: {integrity: sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=} + /ee-first@1.1.1: + resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} dev: false - /ejs/3.1.7: - resolution: {integrity: sha512-BIar7R6abbUxDA3bfXrO4DSgwo8I+fB5/1zgujl3HLLjwd6+9iOnrT+t3grn2qbk9vOgBubXOFwX2m9axoFaGw==} + /ejs@3.1.9: + resolution: {integrity: sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ==} engines: {node: '>=0.10.0'} hasBin: true dependencies: - jake: 10.8.5 + jake: 10.8.7 dev: false - /electron-to-chromium/1.4.89: - resolution: {integrity: sha512-z1Axg0Fu54fse8wN4fd+GAINdU5mJmLtcl6bqIcYyzNVGONcfHAeeJi88KYMQVKalhXlYuVPzKkFIU5VD0raUw==} + /electron-to-chromium@1.4.523: + resolution: {integrity: sha512-9AreocSUWnzNtvLcbpng6N+GkXnCcBR80IQkxRC9Dfdyg4gaWNUPBujAHUpKkiUkoSoR9UlhA4zD/IgBklmhzg==} - /emoji-regex/8.0.0: + /emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} dev: false - /emoji-regex/9.2.2: + /emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} dev: false - /emojis-list/3.0.0: + /emojis-list@3.0.0: resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==} engines: {node: '>= 4'} dev: false - /emoticon/3.2.0: + /emoticon@3.2.0: resolution: {integrity: sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg==} dev: false - /encodeurl/1.0.2: - resolution: {integrity: sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=} + /encodeurl@1.0.2: + resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==} engines: {node: '>= 0.8'} dev: false - /end-of-stream/1.4.4: + /end-of-stream@1.4.4: resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} dependencies: once: 1.4.0 dev: false - /enhanced-resolve/5.9.2: - resolution: {integrity: sha512-GIm3fQfwLJ8YZx2smuHpBKkXC1yOk+OBEmKckVyL0i/ea8mqDEykK3ld5dgH1QYPNyT/lIllxV2LULnxCHaHkA==} + /enhanced-resolve@5.15.0: + resolution: {integrity: sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==} engines: {node: '>=10.13.0'} dependencies: - graceful-fs: 4.2.9 + graceful-fs: 4.2.11 tapable: 2.2.1 - /entities/1.1.2: - resolution: {integrity: sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==} - dev: false - - /entities/2.2.0: + /entities@2.2.0: resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==} dev: false - /entities/3.0.1: - resolution: {integrity: sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==} + /entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} dev: false - /error-ex/1.3.2: + /error-ex@1.3.2: resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} dependencies: is-arrayish: 0.2.1 dev: false - /es-abstract/1.19.5: - resolution: {integrity: sha512-Aa2G2+Rd3b6kxEUKTF4TaW67czBLyAv3z7VOhYRU50YBx+bbsYZ9xQP4lMNazePuFlybXI0V4MruPos7qUo5fA==} + /es-abstract@1.22.2: + resolution: {integrity: sha512-YoxfFcDmhjOgWPWsV13+2RNjq1F6UQnfs+8TftwNqtzlmFzEXvlUwdrNrYeaizfjQzRMxkZ6ElWMOJIFKdVqwA==} engines: {node: '>= 0.4'} dependencies: + array-buffer-byte-length: 1.0.0 + arraybuffer.prototype.slice: 1.0.2 + available-typed-arrays: 1.0.5 call-bind: 1.0.2 + es-set-tostringtag: 2.0.1 es-to-primitive: 1.2.1 - function-bind: 1.1.1 - get-intrinsic: 1.1.1 + function.prototype.name: 1.1.6 + get-intrinsic: 1.2.1 get-symbol-description: 1.0.0 + globalthis: 1.0.3 + gopd: 1.0.1 has: 1.0.3 + has-property-descriptors: 1.0.0 + has-proto: 1.0.1 has-symbols: 1.0.3 - internal-slot: 1.0.3 - is-callable: 1.2.4 + internal-slot: 1.0.5 + is-array-buffer: 3.0.2 + is-callable: 1.2.7 is-negative-zero: 2.0.2 is-regex: 1.1.4 is-shared-array-buffer: 1.0.2 is-string: 1.0.7 + is-typed-array: 1.1.12 is-weakref: 1.0.2 - object-inspect: 1.12.0 + object-inspect: 1.12.3 object-keys: 1.1.1 - object.assign: 4.1.2 - string.prototype.trimend: 1.0.4 - string.prototype.trimstart: 1.0.4 - unbox-primitive: 1.0.1 + object.assign: 4.1.4 + regexp.prototype.flags: 1.5.1 + safe-array-concat: 1.0.1 + safe-regex-test: 1.0.0 + string.prototype.trim: 1.2.8 + string.prototype.trimend: 1.0.7 + string.prototype.trimstart: 1.0.7 + typed-array-buffer: 1.0.0 + typed-array-byte-length: 1.0.0 + typed-array-byte-offset: 1.0.0 + typed-array-length: 1.0.4 + unbox-primitive: 1.0.2 + which-typed-array: 1.1.11 + dev: false + + /es-module-lexer@1.3.1: + resolution: {integrity: sha512-JUFAyicQV9mXc3YRxPnDlrfBKpqt6hUYzz9/boprUJHs4e4KVr3XwOF70doO6gwXUor6EWZJAyWAfKki84t20Q==} + + /es-set-tostringtag@2.0.1: + resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} + engines: {node: '>= 0.4'} + dependencies: + get-intrinsic: 1.2.1 + has: 1.0.3 + has-tostringtag: 1.0.0 dev: false - /es-module-lexer/0.9.3: - resolution: {integrity: sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==} - - /es-to-primitive/1.2.1: + /es-to-primitive@1.2.1: resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} engines: {node: '>= 0.4'} dependencies: - is-callable: 1.2.4 + is-callable: 1.2.7 is-date-object: 1.0.5 is-symbol: 1.0.4 dev: false - /escalade/3.1.1: + /escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} - /escape-goat/2.1.1: + /escape-goat@2.1.1: resolution: {integrity: sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==} engines: {node: '>=8'} dev: false - /escape-html/1.0.3: - resolution: {integrity: sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=} + /escape-html@1.0.3: + resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} dev: false - /escape-string-regexp/1.0.5: - resolution: {integrity: sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=} + /escape-string-regexp@1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} engines: {node: '>=0.8.0'} dev: false - /escape-string-regexp/4.0.0: + /escape-string-regexp@4.0.0: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} dev: false - /eslint-scope/5.1.1: + /eslint-scope@5.1.1: resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} engines: {node: '>=8.0.0'} dependencies: esrecurse: 4.3.0 estraverse: 4.3.0 - /esprima/4.0.1: + /esprima@4.0.1: resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} engines: {node: '>=4'} hasBin: true dev: false - /esrecurse/4.3.0: + /esrecurse@4.3.0: resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} engines: {node: '>=4.0'} dependencies: estraverse: 5.3.0 - /estraverse/4.3.0: + /estraverse@4.3.0: resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} engines: {node: '>=4.0'} - /estraverse/5.3.0: + /estraverse@5.3.0: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} - /estree-walker/1.0.1: + /estree-walker@1.0.1: resolution: {integrity: sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==} dev: false - /esutils/2.0.3: + /esutils@2.0.3: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} dev: false - /eta/1.12.3: - resolution: {integrity: sha512-qHixwbDLtekO/d51Yr4glcaUJCIjGVJyTzuqV4GPlgZo1YpgOKG+avQynErZIYrfM6JIJdtiG2Kox8tbb+DoGg==} + /eta@2.2.0: + resolution: {integrity: sha512-UVQ72Rqjy/ZKQalzV5dCCJP80GrmPrMxh6NlNf+erV6ObL0ZFkhCstWRawS85z3smdr3d2wXPsZEY7rDPfGd2g==} engines: {node: '>=6.0.0'} dev: false - /etag/1.8.1: - resolution: {integrity: sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=} + /etag@1.8.1: + resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} engines: {node: '>= 0.6'} dev: false - /eval/0.1.8: + /eval@0.1.8: resolution: {integrity: sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==} engines: {node: '>= 0.8'} dependencies: - '@types/node': 17.0.22 + '@types/node': 20.6.1 require-like: 0.1.2 dev: false - /eventemitter3/4.0.7: + /eventemitter3@4.0.7: resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==} dev: false - /events/3.3.0: + /events@3.3.0: resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} engines: {node: '>=0.8.x'} - /execa/5.1.1: + /execa@5.1.1: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} dependencies: @@ -4604,37 +4980,38 @@ packages: strip-final-newline: 2.0.0 dev: false - /express/4.17.3: - resolution: {integrity: sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg==} + /express@4.18.2: + resolution: {integrity: sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==} engines: {node: '>= 0.10.0'} dependencies: accepts: 1.3.8 array-flatten: 1.1.1 - body-parser: 1.19.2 + body-parser: 1.20.1 content-disposition: 0.5.4 - content-type: 1.0.4 - cookie: 0.4.2 + content-type: 1.0.5 + cookie: 0.5.0 cookie-signature: 1.0.6 debug: 2.6.9 - depd: 1.1.2 + depd: 2.0.0 encodeurl: 1.0.2 escape-html: 1.0.3 etag: 1.8.1 - finalhandler: 1.1.2 + finalhandler: 1.2.0 fresh: 0.5.2 + http-errors: 2.0.0 merge-descriptors: 1.0.1 methods: 1.1.2 - on-finished: 2.3.0 + on-finished: 2.4.1 parseurl: 1.3.3 path-to-regexp: 0.1.7 proxy-addr: 2.0.7 - qs: 6.9.7 + qs: 6.11.0 range-parser: 1.2.1 safe-buffer: 5.2.1 - send: 0.17.2 - serve-static: 1.14.2 + send: 0.18.0 + serve-static: 1.15.0 setprototypeof: 1.2.0 - statuses: 1.5.0 + statuses: 2.0.1 type-is: 1.6.18 utils-merge: 1.0.1 vary: 1.1.2 @@ -4642,22 +5019,22 @@ packages: - supports-color dev: false - /extend-shallow/2.0.1: - resolution: {integrity: sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=} + /extend-shallow@2.0.1: + resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} engines: {node: '>=0.10.0'} dependencies: is-extendable: 0.1.1 dev: false - /extend/3.0.2: + /extend@3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} dev: false - /fast-deep-equal/3.1.3: + /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - /fast-glob/3.2.11: - resolution: {integrity: sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==} + /fast-glob@3.3.1: + resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} engines: {node: '>=8.6.0'} dependencies: '@nodelib/fs.stat': 2.0.5 @@ -4667,106 +5044,106 @@ packages: micromatch: 4.0.5 dev: false - /fast-json-stable-stringify/2.1.0: + /fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} - /fast-url-parser/1.1.3: - resolution: {integrity: sha1-9K8+qfNNiicc9YrSs3WfQx8LMY0=} + /fast-url-parser@1.1.3: + resolution: {integrity: sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==} dependencies: punycode: 1.4.1 dev: false - /fastq/1.13.0: - resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==} + /fastq@1.15.0: + resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} dependencies: reusify: 1.0.4 dev: false - /faye-websocket/0.11.4: + /faye-websocket@0.11.4: resolution: {integrity: sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==} engines: {node: '>=0.8.0'} dependencies: websocket-driver: 0.7.4 dev: false - /fbemitter/3.0.0: + /fbemitter@3.0.0: resolution: {integrity: sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw==} dependencies: - fbjs: 3.0.4 + fbjs: 3.0.5 transitivePeerDependencies: - encoding dev: false - /fbjs-css-vars/1.0.2: + /fbjs-css-vars@1.0.2: resolution: {integrity: sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==} dev: false - /fbjs/3.0.4: - resolution: {integrity: sha512-ucV0tDODnGV3JCnnkmoszb5lf4bNpzjv80K41wd4k798Etq+UYD0y0TIfalLjZoKgjive6/adkRnszwapiDgBQ==} + /fbjs@3.0.5: + resolution: {integrity: sha512-ztsSx77JBtkuMrEypfhgc3cI0+0h+svqeie7xHbh1k/IKdcydnvadp/mUaGgjAOXQmQSxsqgaRhS3q9fy+1kxg==} dependencies: - cross-fetch: 3.1.5 + cross-fetch: 3.1.8 fbjs-css-vars: 1.0.2 loose-envify: 1.4.0 object-assign: 4.1.1 promise: 7.3.1 setimmediate: 1.0.5 - ua-parser-js: 0.7.31 + ua-parser-js: 1.0.36 transitivePeerDependencies: - encoding dev: false - /feed/4.2.2: + /feed@4.2.2: resolution: {integrity: sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==} engines: {node: '>=0.4.0'} dependencies: xml-js: 1.6.11 dev: false - /file-loader/6.2.0_webpack@5.70.0: + /file-loader@6.2.0(webpack@5.88.2): resolution: {integrity: sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==} engines: {node: '>= 10.13.0'} peerDependencies: webpack: ^4.0.0 || ^5.0.0 dependencies: - loader-utils: 2.0.2 - schema-utils: 3.1.1 - webpack: 5.70.0 + loader-utils: 2.0.4 + schema-utils: 3.3.0 + webpack: 5.88.2 dev: false - /filelist/1.0.3: - resolution: {integrity: sha512-LwjCsruLWQULGYKy7TX0OPtrL9kLpojOFKc5VCTxdFTV7w5zbsgqVKfnkKG7Qgjtq50gKfO56hJv88OfcGb70Q==} + /filelist@1.0.4: + resolution: {integrity: sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==} dependencies: - minimatch: 5.0.1 + minimatch: 5.1.6 dev: false - /filesize/8.0.7: + /filesize@8.0.7: resolution: {integrity: sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==} engines: {node: '>= 0.4.0'} dev: false - /fill-range/7.0.1: + /fill-range@7.0.1: resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} engines: {node: '>=8'} dependencies: to-regex-range: 5.0.1 dev: false - /finalhandler/1.1.2: - resolution: {integrity: sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==} + /finalhandler@1.2.0: + resolution: {integrity: sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==} engines: {node: '>= 0.8'} dependencies: debug: 2.6.9 encodeurl: 1.0.2 escape-html: 1.0.3 - on-finished: 2.3.0 + on-finished: 2.4.1 parseurl: 1.3.3 - statuses: 1.5.0 + statuses: 2.0.1 unpipe: 1.0.0 transitivePeerDependencies: - supports-color dev: false - /find-cache-dir/3.3.2: + /find-cache-dir@3.3.2: resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==} engines: {node: '>=8'} dependencies: @@ -4775,14 +5152,14 @@ packages: pkg-dir: 4.2.0 dev: false - /find-up/3.0.0: + /find-up@3.0.0: resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} engines: {node: '>=6'} dependencies: locate-path: 3.0.0 dev: false - /find-up/4.1.0: + /find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} dependencies: @@ -4790,7 +5167,7 @@ packages: path-exists: 4.0.0 dev: false - /find-up/5.0.0: + /find-up@5.0.0: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} dependencies: @@ -4798,20 +5175,20 @@ packages: path-exists: 4.0.0 dev: false - /flux/4.0.3_react@17.0.2: - resolution: {integrity: sha512-yKAbrp7JhZhj6uiT1FTuVMlIAT1J4jqEyBpFApi1kxpGZCvacMVc/t1pMQyotqHhAgvoE3bNvAykhCo2CLjnYw==} + /flux@4.0.4(react@17.0.2): + resolution: {integrity: sha512-NCj3XlayA2UsapRpM7va6wU1+9rE5FIL7qoMcmxWHRzbp0yujihMBm9BBHZ1MDIk5h5o2Bl6eGiCe8rYELAmYw==} peerDependencies: react: ^15.0.2 || ^16.0.0 || ^17.0.0 dependencies: fbemitter: 3.0.0 - fbjs: 3.0.4 + fbjs: 3.0.5 react: 17.0.2 transitivePeerDependencies: - encoding dev: false - /follow-redirects/1.14.9: - resolution: {integrity: sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==} + /follow-redirects@1.15.2: + resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==} engines: {node: '>=4.0'} peerDependencies: debug: '*' @@ -4820,8 +5197,14 @@ packages: optional: true dev: false - /fork-ts-checker-webpack-plugin/6.5.0_dowam63vmehxjyamkjde33fuby: - resolution: {integrity: sha512-cS178Y+xxtIjEUorcHddKS7yCMlrDPV31mt47blKKRfMd70Kxu5xruAFE2o9sDY6wVC5deuob/u/alD04YYHnw==} + /for-each@0.3.3: + resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} + dependencies: + is-callable: 1.2.7 + dev: false + + /fork-ts-checker-webpack-plugin@6.5.3(typescript@4.9.5)(webpack@5.88.2): + resolution: {integrity: sha512-SbH/l9ikmMWycd5puHJKTkZJKddF4iRLyW3DeZ08HTI7NGyLS38MXd/KGgeWumQO7YNQbW2u/NtPT2YowbPaGQ==} engines: {node: '>=10', yarn: '>=1.0.0'} peerDependencies: eslint: '>= 6' @@ -4834,143 +5217,158 @@ packages: vue-template-compiler: optional: true dependencies: - '@babel/code-frame': 7.16.7 - '@types/json-schema': 7.0.10 + '@babel/code-frame': 7.22.13 + '@types/json-schema': 7.0.12 chalk: 4.1.2 chokidar: 3.5.3 cosmiconfig: 6.0.0 - deepmerge: 4.2.2 + deepmerge: 4.3.1 fs-extra: 9.1.0 - glob: 7.2.0 - memfs: 3.4.1 + glob: 7.2.3 + memfs: 3.5.3 minimatch: 3.1.2 schema-utils: 2.7.0 - semver: 7.3.5 + semver: 7.5.4 tapable: 1.1.3 - typescript: 4.6.2 - webpack: 5.70.0 + typescript: 4.9.5 + webpack: 5.88.2 dev: false - /forwarded/0.2.0: + /forwarded@0.2.0: resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} engines: {node: '>= 0.6'} dev: false - /fraction.js/4.2.0: - resolution: {integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==} + /fraction.js@4.3.6: + resolution: {integrity: sha512-n2aZ9tNfYDwaHhvFTkhFErqOMIb8uyzSQ+vGJBjZyanAKZVbGUQ1sngfk9FdkBw7G26O7AgNjLcecLffD1c7eg==} dev: false - /fresh/0.5.2: - resolution: {integrity: sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=} + /fresh@0.5.2: + resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} engines: {node: '>= 0.6'} dev: false - /fs-extra/10.0.1: - resolution: {integrity: sha512-NbdoVMZso2Lsrn/QwLXOy6rm0ufY2zEOKCDzJR/0kBsb0E6qed0P3iYK+Ath3BfvXEeu4JhEtXLgILx5psUfag==} + /fs-extra@10.1.0: + resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} engines: {node: '>=12'} dependencies: - graceful-fs: 4.2.9 + graceful-fs: 4.2.11 jsonfile: 6.1.0 universalify: 2.0.0 dev: false - /fs-extra/9.1.0: + /fs-extra@9.1.0: resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==} engines: {node: '>=10'} dependencies: at-least-node: 1.0.0 - graceful-fs: 4.2.9 + graceful-fs: 4.2.11 jsonfile: 6.1.0 universalify: 2.0.0 dev: false - /fs-monkey/1.0.3: - resolution: {integrity: sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==} + /fs-monkey@1.0.4: + resolution: {integrity: sha512-INM/fWAxMICjttnD0DX1rBvinKskj5G1w+oy/pnm9u/tSlnBrzFonJMcalKJ30P8RRsPzKcCG7Q8l0jx5Fh9YQ==} dev: false - /fs.realpath/1.0.0: - resolution: {integrity: sha1-FQStJSMVjKpA20onh8sBQRmU6k8=} + /fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} dev: false - /fsevents/2.3.2: - resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} + /fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} os: [darwin] requiresBuild: true dev: false optional: true - /function-bind/1.1.1: + /function-bind@1.1.1: resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} dev: false - /gensync/1.0.0-beta.2: + /function.prototype.name@1.1.6: + resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.1 + es-abstract: 1.22.2 + functions-have-names: 1.2.3 + dev: false + + /functions-have-names@1.2.3: + resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + dev: false + + /gensync@1.0.0-beta.2: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} dev: false - /get-intrinsic/1.1.1: - resolution: {integrity: sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==} + /get-intrinsic@1.2.1: + resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} dependencies: function-bind: 1.1.1 has: 1.0.3 + has-proto: 1.0.1 has-symbols: 1.0.3 dev: false - /get-own-enumerable-property-symbols/3.0.2: + /get-own-enumerable-property-symbols@3.0.2: resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==} dev: false - /get-stream/4.1.0: + /get-stream@4.1.0: resolution: {integrity: sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==} engines: {node: '>=6'} dependencies: pump: 3.0.0 dev: false - /get-stream/5.2.0: + /get-stream@5.2.0: resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} engines: {node: '>=8'} dependencies: pump: 3.0.0 dev: false - /get-stream/6.0.1: + /get-stream@6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} dev: false - /get-symbol-description/1.0.0: + /get-symbol-description@1.0.0: resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - get-intrinsic: 1.1.1 + get-intrinsic: 1.2.1 dev: false - /github-slugger/1.4.0: - resolution: {integrity: sha512-w0dzqw/nt51xMVmlaV1+JRzN+oCa1KfcgGEWhxUG16wbdA+Xnt/yoFO8Z8x/V82ZcZ0wy6ln9QDup5avbhiDhQ==} + /github-slugger@1.5.0: + resolution: {integrity: sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==} dev: false - /glob-parent/5.1.2: + /glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} dependencies: is-glob: 4.0.3 dev: false - /glob-parent/6.0.2: + /glob-parent@6.0.2: resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} engines: {node: '>=10.13.0'} dependencies: is-glob: 4.0.3 dev: false - /glob-to-regexp/0.4.1: + /glob-to-regexp@0.4.1: resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} - /glob/7.2.0: - resolution: {integrity: sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==} + /glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 @@ -4980,21 +5378,21 @@ packages: path-is-absolute: 1.0.1 dev: false - /global-dirs/3.0.0: - resolution: {integrity: sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==} + /global-dirs@3.0.1: + resolution: {integrity: sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==} engines: {node: '>=10'} dependencies: ini: 2.0.0 dev: false - /global-modules/2.0.0: + /global-modules@2.0.0: resolution: {integrity: sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==} engines: {node: '>=6'} dependencies: global-prefix: 3.0.0 dev: false - /global-prefix/3.0.0: + /global-prefix@3.0.0: resolution: {integrity: sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==} engines: {node: '>=6'} dependencies: @@ -5003,36 +5401,48 @@ packages: which: 1.3.1 dev: false - /globals/11.12.0: + /globals@11.12.0: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} dev: false - /globby/11.1.0: + /globalthis@1.0.3: + resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} + engines: {node: '>= 0.4'} + dependencies: + define-properties: 1.2.1 + dev: false + + /globby@11.1.0: resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} engines: {node: '>=10'} dependencies: array-union: 2.1.0 dir-glob: 3.0.1 - fast-glob: 3.2.11 - ignore: 5.2.0 + fast-glob: 3.3.1 + ignore: 5.2.4 merge2: 1.4.1 slash: 3.0.0 dev: false - /globby/12.2.0: - resolution: {integrity: sha512-wiSuFQLZ+urS9x2gGPl1H5drc5twabmm4m2gTR27XDFyjUHJUNsS8o/2aKyIF6IoBaR630atdher0XJ5g6OMmA==} + /globby@13.2.2: + resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - array-union: 3.0.1 dir-glob: 3.0.1 - fast-glob: 3.2.11 - ignore: 5.2.0 + fast-glob: 3.3.1 + ignore: 5.2.4 merge2: 1.4.1 slash: 4.0.0 dev: false - /got/9.6.0: + /gopd@1.0.1: + resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} + dependencies: + get-intrinsic: 1.2.1 + dev: false + + /got@9.6.0: resolution: {integrity: sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==} engines: {node: '>=8.6'} dependencies: @@ -5042,7 +5452,7 @@ packages: '@types/responselike': 1.0.0 cacheable-request: 6.1.0 decompress-response: 3.3.0 - duplexer3: 0.1.4 + duplexer3: 0.1.5 get-stream: 4.1.0 lowercase-keys: 1.0.1 mimic-response: 1.0.1 @@ -5051,10 +5461,10 @@ packages: url-parse-lax: 3.0.0 dev: false - /graceful-fs/4.2.9: - resolution: {integrity: sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==} + /graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - /gray-matter/4.0.3: + /gray-matter@4.0.3: resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} engines: {node: '>=6.0'} dependencies: @@ -5064,58 +5474,69 @@ packages: strip-bom-string: 1.0.0 dev: false - /gzip-size/6.0.0: + /gzip-size@6.0.0: resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==} engines: {node: '>=10'} dependencies: duplexer: 0.1.2 dev: false - /handle-thing/2.0.1: + /handle-thing@2.0.1: resolution: {integrity: sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==} dev: false - /has-bigints/1.0.2: + /has-bigints@1.0.2: resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} dev: false - /has-flag/3.0.0: - resolution: {integrity: sha1-tdRU3CGZriJWmfNGfloH87lVuv0=} + /has-flag@3.0.0: + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} engines: {node: '>=4'} dev: false - /has-flag/4.0.0: + /has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} - /has-symbols/1.0.3: + /has-property-descriptors@1.0.0: + resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} + dependencies: + get-intrinsic: 1.2.1 + dev: false + + /has-proto@1.0.1: + resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} + engines: {node: '>= 0.4'} + dev: false + + /has-symbols@1.0.3: resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} engines: {node: '>= 0.4'} dev: false - /has-tostringtag/1.0.0: + /has-tostringtag@1.0.0: resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} engines: {node: '>= 0.4'} dependencies: has-symbols: 1.0.3 dev: false - /has-yarn/2.1.0: + /has-yarn@2.1.0: resolution: {integrity: sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==} engines: {node: '>=8'} dev: false - /has/1.0.3: + /has@1.0.3: resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} engines: {node: '>= 0.4.0'} dependencies: function-bind: 1.1.1 dev: false - /hast-to-hyperscript/9.0.1: + /hast-to-hyperscript@9.0.1: resolution: {integrity: sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==} dependencies: - '@types/unist': 2.0.6 + '@types/unist': 2.0.8 comma-separated-tokens: 1.0.8 property-information: 5.6.0 space-separated-tokens: 1.1.5 @@ -5124,17 +5545,7 @@ packages: web-namespaces: 1.1.4 dev: false - /hast-util-from-parse5/5.0.3: - resolution: {integrity: sha512-gOc8UB99F6eWVWFtM9jUikjN7QkWxB3nY0df5Z0Zq1/Nkwl5V4hAAsl0tmwlgWl/1shlTF8DnNYLO8X6wRV9pA==} - dependencies: - ccount: 1.1.0 - hastscript: 5.1.2 - property-information: 5.6.0 - web-namespaces: 1.1.4 - xtend: 4.0.2 - dev: false - - /hast-util-from-parse5/6.0.1: + /hast-util-from-parse5@6.0.1: resolution: {integrity: sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==} dependencies: '@types/parse5': 5.0.3 @@ -5145,14 +5556,14 @@ packages: web-namespaces: 1.1.4 dev: false - /hast-util-parse-selector/2.2.5: + /hast-util-parse-selector@2.2.5: resolution: {integrity: sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==} dev: false - /hast-util-raw/6.0.1: + /hast-util-raw@6.0.1: resolution: {integrity: sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==} dependencies: - '@types/hast': 2.3.4 + '@types/hast': 2.3.5 hast-util-from-parse5: 6.0.1 hast-util-to-parse5: 6.0.0 html-void-elements: 1.0.5 @@ -5164,7 +5575,7 @@ packages: zwitch: 1.0.5 dev: false - /hast-util-to-parse5/6.0.0: + /hast-util-to-parse5@6.0.0: resolution: {integrity: sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==} dependencies: hast-to-hyperscript: 9.0.1 @@ -5174,85 +5585,76 @@ packages: zwitch: 1.0.5 dev: false - /hastscript/5.1.2: - resolution: {integrity: sha512-WlztFuK+Lrvi3EggsqOkQ52rKbxkXL3RwB6t5lwoa8QLMemoWfBuL43eDrwOamJyR7uKQKdmKYaBH1NZBiIRrQ==} - dependencies: - comma-separated-tokens: 1.0.8 - hast-util-parse-selector: 2.2.5 - property-information: 5.6.0 - space-separated-tokens: 1.1.5 - dev: false - - /hastscript/6.0.0: + /hastscript@6.0.0: resolution: {integrity: sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==} dependencies: - '@types/hast': 2.3.4 + '@types/hast': 2.3.5 comma-separated-tokens: 1.0.8 hast-util-parse-selector: 2.2.5 property-information: 5.6.0 space-separated-tokens: 1.1.5 dev: false - /he/1.2.0: + /he@1.2.0: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} hasBin: true dev: false - /history/4.10.1: + /history@4.10.1: resolution: {integrity: sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==} dependencies: - '@babel/runtime': 7.17.8 + '@babel/runtime': 7.22.15 loose-envify: 1.4.0 resolve-pathname: 3.0.0 - tiny-invariant: 1.2.0 + tiny-invariant: 1.3.1 tiny-warning: 1.0.3 value-equal: 1.0.1 dev: false - /hoist-non-react-statics/3.3.2: + /hoist-non-react-statics@3.3.2: resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} dependencies: react-is: 16.13.1 dev: false - /hpack.js/2.1.6: - resolution: {integrity: sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=} + /hpack.js@2.1.6: + resolution: {integrity: sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==} dependencies: inherits: 2.0.4 obuf: 1.1.2 - readable-stream: 2.3.7 + readable-stream: 2.3.8 wbuf: 1.7.3 dev: false - /html-entities/2.3.2: - resolution: {integrity: sha512-c3Ab/url5ksaT0WyleslpBEthOzWhrjQbg75y7XUsfSzi3Dgzt0l8w5e7DylRn15MTlMMD58dTfzddNS2kcAjQ==} + /html-entities@2.4.0: + resolution: {integrity: sha512-igBTJcNNNhvZFRtm8uA6xMY6xYleeDwn3PeBCkDz7tHttv4F2hsDI2aPgNERWzvRcNYHNT3ymRaQzllmXj4YsQ==} dev: false - /html-minifier-terser/6.1.0: + /html-minifier-terser@6.1.0: resolution: {integrity: sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==} engines: {node: '>=12'} hasBin: true dependencies: camel-case: 4.1.2 - clean-css: 5.2.4 + clean-css: 5.3.2 commander: 8.3.0 he: 1.2.0 param-case: 3.0.4 relateurl: 0.2.7 - terser: 5.12.1 + terser: 5.19.4 dev: false - /html-tags/3.1.0: - resolution: {integrity: sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==} + /html-tags@3.3.1: + resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==} engines: {node: '>=8'} dev: false - /html-void-elements/1.0.5: + /html-void-elements@1.0.5: resolution: {integrity: sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==} dev: false - /html-webpack-plugin/5.5.0_webpack@5.70.0: - resolution: {integrity: sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==} + /html-webpack-plugin@5.5.3(webpack@5.88.2): + resolution: {integrity: sha512-6YrDKTuqaP/TquFH7h4srYWsZx+x6k6+FbsTm0ziCwGHDP78Unr1r9F/H4+sGmMbX08GQcJ+K64x55b+7VM/jg==} engines: {node: '>=10.13.0'} peerDependencies: webpack: ^5.20.0 @@ -5262,39 +5664,37 @@ packages: lodash: 4.17.21 pretty-error: 4.0.0 tapable: 2.2.1 - webpack: 5.70.0 - dev: false - - /htmlparser2/3.10.1: - resolution: {integrity: sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==} - dependencies: - domelementtype: 1.3.1 - domhandler: 2.4.2 - domutils: 1.7.0 - entities: 1.1.2 - inherits: 2.0.4 - readable-stream: 3.6.0 + webpack: 5.88.2 dev: false - /htmlparser2/6.1.0: + /htmlparser2@6.1.0: resolution: {integrity: sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==} dependencies: - domelementtype: 2.2.0 + domelementtype: 2.3.0 domhandler: 4.3.1 domutils: 2.8.0 entities: 2.2.0 dev: false - /http-cache-semantics/4.1.0: - resolution: {integrity: sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==} + /htmlparser2@8.0.2: + resolution: {integrity: sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==} + dependencies: + domelementtype: 2.3.0 + domhandler: 5.0.3 + domutils: 3.1.0 + entities: 4.5.0 + dev: false + + /http-cache-semantics@4.1.1: + resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} dev: false - /http-deceiver/1.2.7: - resolution: {integrity: sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=} + /http-deceiver@1.2.7: + resolution: {integrity: sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==} dev: false - /http-errors/1.6.3: - resolution: {integrity: sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=} + /http-errors@1.6.3: + resolution: {integrity: sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==} engines: {node: '>= 0.6'} dependencies: depd: 1.1.2 @@ -5303,23 +5703,23 @@ packages: statuses: 1.5.0 dev: false - /http-errors/1.8.1: - resolution: {integrity: sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==} - engines: {node: '>= 0.6'} + /http-errors@2.0.0: + resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==} + engines: {node: '>= 0.8'} dependencies: - depd: 1.1.2 + depd: 2.0.0 inherits: 2.0.4 setprototypeof: 1.2.0 - statuses: 1.5.0 + statuses: 2.0.1 toidentifier: 1.0.1 dev: false - /http-parser-js/0.5.6: - resolution: {integrity: sha512-vDlkRPDJn93swjcjqMSaGSPABbIarsr1TLAui/gLDXzV5VsJNdXNzMYDyNBLQkjWQCJ1uizu8T2oDMhmGt0PRA==} + /http-parser-js@0.5.8: + resolution: {integrity: sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==} dev: false - /http-proxy-middleware/2.0.4_@types+express@4.17.13: - resolution: {integrity: sha512-m/4FxX17SUvz4lJ5WPXOHDUuCwIqXLfLHs1s0uZ3oYjhoXlx9csYxaOa0ElDEJ+h8Q4iJ1s+lTMbiCa4EXIJqg==} + /http-proxy-middleware@2.0.6(@types/express@4.17.17): + resolution: {integrity: sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==} engines: {node: '>=12.0.0'} peerDependencies: '@types/express': ^4.17.13 @@ -5327,8 +5727,8 @@ packages: '@types/express': optional: true dependencies: - '@types/express': 4.17.13 - '@types/http-proxy': 1.17.8 + '@types/express': 4.17.17 + '@types/http-proxy': 1.17.11 http-proxy: 1.18.1 is-glob: 4.0.3 is-plain-obj: 3.0.0 @@ -5337,64 +5737,64 @@ packages: - debug dev: false - /http-proxy/1.18.1: + /http-proxy@1.18.1: resolution: {integrity: sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==} engines: {node: '>=8.0.0'} dependencies: eventemitter3: 4.0.7 - follow-redirects: 1.14.9 + follow-redirects: 1.15.2 requires-port: 1.0.0 transitivePeerDependencies: - debug dev: false - /human-signals/2.1.0: + /human-signals@2.1.0: resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} engines: {node: '>=10.17.0'} dev: false - /iconv-lite/0.4.24: + /iconv-lite@0.4.24: resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} engines: {node: '>=0.10.0'} dependencies: safer-buffer: 2.1.2 dev: false - /icss-utils/5.1.0_postcss@8.4.12: + /icss-utils@5.1.0(postcss@8.4.29): resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 dev: false - /idb/6.1.5: - resolution: {integrity: sha512-IJtugpKkiVXQn5Y+LteyBCNk1N8xpGV3wWZk9EVtZWH8DYkjBn0bX1XnGP9RkyZF0sAcywa6unHqSWKe7q4LGw==} + /idb@7.1.1: + resolution: {integrity: sha512-gchesWBzyvGHRO9W8tzUWFDycow5gwjvFKfyV9FF32Y7F50yZMp7mP+T2mJIWFx49zicqyC4uefHM17o6xKIVQ==} dev: false - /ignore/5.2.0: - resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==} + /ignore@5.2.4: + resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} engines: {node: '>= 4'} dev: false - /image-size/1.0.1: - resolution: {integrity: sha512-VAwkvNSNGClRw9mDHhc5Efax8PLlsOGcUTh0T/LIriC8vPA3U5PdqXWqkz406MoYHMKW8Uf9gWr05T/rYB44kQ==} - engines: {node: '>=12.0.0'} + /image-size@1.0.2: + resolution: {integrity: sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg==} + engines: {node: '>=14.0.0'} hasBin: true dependencies: queue: 6.0.2 dev: false - /immediate/3.3.0: + /immediate@3.3.0: resolution: {integrity: sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==} dev: false - /immer/9.0.12: - resolution: {integrity: sha512-lk7UNmSbAukB5B6dh9fnh5D0bJTOFKxVg2cyJWTYrWRfhLrLMBquONcUs3aFq507hNoIZEDDh8lb8UtOizSMhA==} + /immer@9.0.21: + resolution: {integrity: sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==} dev: false - /import-fresh/3.3.0: + /import-fresh@3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} engines: {node: '>=6'} dependencies: @@ -5402,124 +5802,120 @@ packages: resolve-from: 4.0.0 dev: false - /import-lazy/2.1.0: - resolution: {integrity: sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=} + /import-lazy@2.1.0: + resolution: {integrity: sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==} engines: {node: '>=4'} dev: false - /imurmurhash/0.1.4: - resolution: {integrity: sha1-khi5srkoojixPcT7a21XbyMUU+o=} + /imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} engines: {node: '>=0.8.19'} dev: false - /indent-string/4.0.0: + /indent-string@4.0.0: resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} engines: {node: '>=8'} dev: false - /infima/0.2.0-alpha.38: - resolution: {integrity: sha512-1WsmqSMI5IqzrUx3goq+miJznHBonbE3aoqZ1AR/i/oHhroxNeSV6Awv5VoVfXBhfTzLSnxkHaRI2qpAMYcCzw==} + /infima@0.2.0-alpha.43: + resolution: {integrity: sha512-2uw57LvUqW0rK/SWYnd/2rRfxNA5DDNOh33jxF7fy46VWoNhGxiUQyVZHbBMjQ33mQem0cjdDVwgWVAmlRfgyQ==} engines: {node: '>=12'} dev: false - /inflight/1.0.6: - resolution: {integrity: sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=} + /inflight@1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} dependencies: once: 1.4.0 wrappy: 1.0.2 dev: false - /inherits/2.0.3: - resolution: {integrity: sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=} + /inherits@2.0.3: + resolution: {integrity: sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==} dev: false - /inherits/2.0.4: + /inherits@2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} dev: false - /ini/1.3.8: + /ini@1.3.8: resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} dev: false - /ini/2.0.0: + /ini@2.0.0: resolution: {integrity: sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==} engines: {node: '>=10'} dev: false - /inline-style-parser/0.1.1: + /inline-style-parser@0.1.1: resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==} dev: false - /internal-slot/1.0.3: - resolution: {integrity: sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==} + /internal-slot@1.0.5: + resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} engines: {node: '>= 0.4'} dependencies: - get-intrinsic: 1.1.1 + get-intrinsic: 1.2.1 has: 1.0.3 side-channel: 1.0.4 dev: false - /interpret/1.4.0: + /interpret@1.4.0: resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} engines: {node: '>= 0.10'} dev: false - /invariant/2.2.4: + /invariant@2.2.4: resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} dependencies: loose-envify: 1.4.0 - /ip/1.1.5: - resolution: {integrity: sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=} - dev: false - - /ipaddr.js/1.9.1: + /ipaddr.js@1.9.1: resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} engines: {node: '>= 0.10'} dev: false - /ipaddr.js/2.0.1: - resolution: {integrity: sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==} + /ipaddr.js@2.1.0: + resolution: {integrity: sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ==} engines: {node: '>= 10'} dev: false - /is-alphabetical/1.0.4: + /is-alphabetical@1.0.4: resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==} dev: false - /is-alphanumerical/1.0.4: + /is-alphanumerical@1.0.4: resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==} dependencies: is-alphabetical: 1.0.4 is-decimal: 1.0.4 dev: false - /is-arguments/1.1.1: - resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} - engines: {node: '>= 0.4'} + /is-array-buffer@3.0.2: + resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} dependencies: call-bind: 1.0.2 - has-tostringtag: 1.0.0 + get-intrinsic: 1.2.1 + is-typed-array: 1.1.12 dev: false - /is-arrayish/0.2.1: - resolution: {integrity: sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=} + /is-arrayish@0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} dev: false - /is-bigint/1.0.4: + /is-bigint@1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} dependencies: has-bigints: 1.0.2 dev: false - /is-binary-path/2.1.0: + /is-binary-path@2.1.0: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} engines: {node: '>=8'} dependencies: binary-extensions: 2.2.0 dev: false - /is-boolean-object/1.1.2: + /is-boolean-object@1.1.2: resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} engines: {node: '>= 0.4'} dependencies: @@ -5527,143 +5923,148 @@ packages: has-tostringtag: 1.0.0 dev: false - /is-buffer/2.0.5: + /is-buffer@2.0.5: resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} engines: {node: '>=4'} dev: false - /is-callable/1.2.4: - resolution: {integrity: sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==} + /is-callable@1.2.7: + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} dev: false - /is-ci/2.0.0: + /is-ci@2.0.0: resolution: {integrity: sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==} hasBin: true dependencies: ci-info: 2.0.0 dev: false - /is-core-module/2.8.1: - resolution: {integrity: sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==} + /is-core-module@2.13.0: + resolution: {integrity: sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==} dependencies: has: 1.0.3 dev: false - /is-date-object/1.0.5: + /is-date-object@1.0.5: resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} engines: {node: '>= 0.4'} dependencies: has-tostringtag: 1.0.0 dev: false - /is-decimal/1.0.4: + /is-decimal@1.0.4: resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==} dev: false - /is-docker/2.2.1: + /is-docker@2.2.1: resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} engines: {node: '>=8'} hasBin: true dev: false - /is-extendable/0.1.1: - resolution: {integrity: sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=} + /is-extendable@0.1.1: + resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==} engines: {node: '>=0.10.0'} dev: false - /is-extglob/2.1.1: - resolution: {integrity: sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=} + /is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} dev: false - /is-fullwidth-code-point/3.0.0: + /is-fullwidth-code-point@3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} dev: false - /is-glob/4.0.3: + /is-glob@4.0.3: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} dependencies: is-extglob: 2.1.1 dev: false - /is-hexadecimal/1.0.4: + /is-hexadecimal@1.0.4: resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==} dev: false - /is-installed-globally/0.4.0: + /is-installed-globally@0.4.0: resolution: {integrity: sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==} engines: {node: '>=10'} dependencies: - global-dirs: 3.0.0 + global-dirs: 3.0.1 is-path-inside: 3.0.3 dev: false - /is-module/1.0.0: - resolution: {integrity: sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=} + /is-module@1.0.0: + resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} dev: false - /is-negative-zero/2.0.2: + /is-negative-zero@2.0.2: resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} engines: {node: '>= 0.4'} dev: false - /is-npm/5.0.0: + /is-npm@5.0.0: resolution: {integrity: sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==} engines: {node: '>=10'} dev: false - /is-number-object/1.0.7: + /is-number-object@1.0.7: resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} engines: {node: '>= 0.4'} dependencies: has-tostringtag: 1.0.0 dev: false - /is-number/7.0.0: + /is-number@7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} dev: false - /is-obj/1.0.1: - resolution: {integrity: sha1-PkcprB9f3gJc19g6iW2rn09n2w8=} + /is-obj@1.0.1: + resolution: {integrity: sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==} engines: {node: '>=0.10.0'} dev: false - /is-obj/2.0.0: + /is-obj@2.0.0: resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==} engines: {node: '>=8'} dev: false - /is-path-cwd/2.2.0: + /is-path-cwd@2.2.0: resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==} engines: {node: '>=6'} dev: false - /is-path-inside/3.0.3: + /is-path-inside@3.0.3: resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} engines: {node: '>=8'} dev: false - /is-plain-obj/2.1.0: + /is-plain-obj@2.1.0: resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} engines: {node: '>=8'} dev: false - /is-plain-obj/3.0.0: + /is-plain-obj@3.0.0: resolution: {integrity: sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==} engines: {node: '>=10'} dev: false - /is-plain-object/2.0.4: + /is-plain-object@2.0.4: resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==} engines: {node: '>=0.10.0'} dependencies: isobject: 3.0.1 - /is-regex/1.1.4: + /is-plain-object@5.0.0: + resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} + engines: {node: '>=0.10.0'} + dev: false + + /is-regex@1.1.4: resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} engines: {node: '>= 0.4'} dependencies: @@ -5671,127 +6072,165 @@ packages: has-tostringtag: 1.0.0 dev: false - /is-regexp/1.0.0: - resolution: {integrity: sha1-/S2INUXEa6xaYz57mgnof6LLUGk=} + /is-regexp@1.0.0: + resolution: {integrity: sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==} engines: {node: '>=0.10.0'} dev: false - /is-root/2.1.0: + /is-root@2.1.0: resolution: {integrity: sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==} engines: {node: '>=6'} dev: false - /is-shared-array-buffer/1.0.2: + /is-shared-array-buffer@1.0.2: resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} dependencies: call-bind: 1.0.2 dev: false - /is-stream/2.0.1: + /is-stream@2.0.1: resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} engines: {node: '>=8'} dev: false - /is-string/1.0.7: + /is-string@1.0.7: resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} engines: {node: '>= 0.4'} dependencies: has-tostringtag: 1.0.0 dev: false - /is-symbol/1.0.4: + /is-symbol@1.0.4: resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} engines: {node: '>= 0.4'} dependencies: has-symbols: 1.0.3 dev: false - /is-typedarray/1.0.0: - resolution: {integrity: sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=} + /is-typed-array@1.1.12: + resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==} + engines: {node: '>= 0.4'} + dependencies: + which-typed-array: 1.1.11 + dev: false + + /is-typedarray@1.0.0: + resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} dev: false - /is-weakref/1.0.2: + /is-weakref@1.0.2: resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} dependencies: call-bind: 1.0.2 dev: false - /is-whitespace-character/1.0.4: + /is-whitespace-character@1.0.4: resolution: {integrity: sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==} dev: false - /is-word-character/1.0.4: + /is-word-character@1.0.4: resolution: {integrity: sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==} dev: false - /is-wsl/2.2.0: + /is-wsl@2.2.0: resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} engines: {node: '>=8'} dependencies: is-docker: 2.2.1 dev: false - /is-yarn-global/0.3.0: + /is-yarn-global@0.3.0: resolution: {integrity: sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==} dev: false - /isarray/0.0.1: - resolution: {integrity: sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=} + /isarray@0.0.1: + resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==} + dev: false + + /isarray@1.0.0: + resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} dev: false - /isarray/1.0.0: - resolution: {integrity: sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=} + /isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} dev: false - /isexe/2.0.0: - resolution: {integrity: sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=} + /isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} dev: false - /isobject/3.0.1: - resolution: {integrity: sha1-TkMekrEalzFjaqH5yNHMvP2reN8=} + /isobject@3.0.1: + resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} engines: {node: '>=0.10.0'} - /jake/10.8.5: - resolution: {integrity: sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw==} + /jake@10.8.7: + resolution: {integrity: sha512-ZDi3aP+fG/LchyBzUM804VjddnwfSfsdeYkwt8NcbKRvo4rFkjhs456iLFn3k2ZUWvNe4i48WACDbza8fhq2+w==} engines: {node: '>=10'} hasBin: true dependencies: - async: 3.2.3 + async: 3.2.4 chalk: 4.1.2 - filelist: 1.0.3 + filelist: 1.0.4 minimatch: 3.1.2 dev: false - /jest-worker/26.6.2: + /jest-util@29.7.0: + resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/types': 29.6.3 + '@types/node': 20.6.1 + chalk: 4.1.2 + ci-info: 3.8.0 + graceful-fs: 4.2.11 + picomatch: 2.3.1 + dev: false + + /jest-worker@26.6.2: resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==} engines: {node: '>= 10.13.0'} dependencies: - '@types/node': 17.0.22 + '@types/node': 20.6.1 merge-stream: 2.0.0 supports-color: 7.2.0 dev: false - /jest-worker/27.5.1: + /jest-worker@27.5.1: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} dependencies: - '@types/node': 17.0.22 + '@types/node': 20.6.1 + merge-stream: 2.0.0 + supports-color: 8.1.1 + + /jest-worker@29.7.0: + resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@types/node': 20.6.1 + jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 + dev: false + + /jiti@1.20.0: + resolution: {integrity: sha512-3TV69ZbrvV6U5DfQimop50jE9Dl6J8O1ja1dvBbMba/sZ3YBEQqJ2VZRoQPVnhlzjNtU1vaXRZVrVjU4qtm8yA==} + hasBin: true + dev: false - /joi/17.6.0: - resolution: {integrity: sha512-OX5dG6DTbcr/kbMFj0KGYxuew69HPcAE3K/sZpEV2nP6e/j/C0HV+HNiBPCASxdx5T7DMoa0s8UeHWMnb6n2zw==} + /joi@17.10.1: + resolution: {integrity: sha512-vIiDxQKmRidUVp8KngT8MZSOcmRVm2zV7jbMjNYWuHcJWI0bUck3nRTGQjhpPlQenIQIBC5Vp9AhcnHbWQqafw==} dependencies: - '@hapi/hoek': 9.2.1 + '@hapi/hoek': 9.3.0 '@hapi/topo': 5.1.0 - '@sideway/address': 4.1.3 - '@sideway/formula': 3.0.0 + '@sideway/address': 4.1.4 + '@sideway/formula': 3.0.1 '@sideway/pinpoint': 2.0.0 - /js-tokens/4.0.0: + /js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - /js-yaml/3.14.1: + /js-yaml@3.14.1: resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} hasBin: true dependencies: @@ -5799,131 +6238,129 @@ packages: esprima: 4.0.1 dev: false - /js-yaml/4.1.0: + /js-yaml@4.1.0: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true dependencies: argparse: 2.0.1 dev: false - /jsesc/0.5.0: - resolution: {integrity: sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=} + /jsesc@0.5.0: + resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} hasBin: true dev: false - /jsesc/2.5.2: + /jsesc@2.5.2: resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} engines: {node: '>=4'} hasBin: true dev: false - /json-buffer/3.0.0: - resolution: {integrity: sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=} + /json-buffer@3.0.0: + resolution: {integrity: sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==} dev: false - /json-parse-better-errors/1.0.2: - resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} - - /json-parse-even-better-errors/2.3.1: + /json-parse-even-better-errors@2.3.1: resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} - dev: false - /json-schema-traverse/0.4.1: + /json-schema-traverse@0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} - /json-schema-traverse/1.0.0: + /json-schema-traverse@1.0.0: resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} dev: false - /json-schema/0.4.0: + /json-schema@0.4.0: resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==} dev: false - /json5/2.2.1: - resolution: {integrity: sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==} + /json5@2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} hasBin: true dev: false - /jsonfile/6.1.0: + /jsonfile@6.1.0: resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} dependencies: universalify: 2.0.0 optionalDependencies: - graceful-fs: 4.2.9 + graceful-fs: 4.2.11 dev: false - /jsonpointer/5.0.0: - resolution: {integrity: sha512-PNYZIdMjVIvVgDSYKTT63Y+KZ6IZvGRNNWcxwD+GNnUz1MKPfv30J8ueCjdwcN0nDx2SlshgyB7Oy0epAzVRRg==} + /jsonpointer@5.0.1: + resolution: {integrity: sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==} engines: {node: '>=0.10.0'} dev: false - /keyv/3.1.0: + /keyv@3.1.0: resolution: {integrity: sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==} dependencies: json-buffer: 3.0.0 dev: false - /kind-of/6.0.3: + /kind-of@6.0.3: resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} engines: {node: '>=0.10.0'} - /klaw-sync/6.0.0: + /klaw-sync@6.0.0: resolution: {integrity: sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==} dependencies: - graceful-fs: 4.2.9 + graceful-fs: 4.2.11 dev: false - /kleur/3.0.3: + /kleur@3.0.3: resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} engines: {node: '>=6'} dev: false - /klona/2.0.5: - resolution: {integrity: sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==} - engines: {node: '>= 8'} - dev: false - - /latest-version/5.1.0: + /latest-version@5.1.0: resolution: {integrity: sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==} engines: {node: '>=8'} dependencies: package-json: 6.5.0 dev: false - /leven/3.1.0: + /launch-editor@2.6.0: + resolution: {integrity: sha512-JpDCcQnyAAzZZaZ7vEiSqL690w7dAEyLao+KC96zBplnYbJS7TYNjvM3M7y3dGz+v7aIsJk3hllWuc0kWAjyRQ==} + dependencies: + picocolors: 1.0.0 + shell-quote: 1.8.1 + dev: false + + /leven@3.1.0: resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} engines: {node: '>=6'} dev: false - /lilconfig/2.0.4: - resolution: {integrity: sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA==} + /lilconfig@2.1.0: + resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} engines: {node: '>=10'} dev: false - /lines-and-columns/1.2.4: + /lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} dev: false - /loader-runner/4.2.0: - resolution: {integrity: sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==} + /loader-runner@4.3.0: + resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} engines: {node: '>=6.11.5'} - /loader-utils/2.0.2: - resolution: {integrity: sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==} + /loader-utils@2.0.4: + resolution: {integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==} engines: {node: '>=8.9.0'} dependencies: big.js: 5.2.2 emojis-list: 3.0.0 - json5: 2.2.1 + json5: 2.2.3 dev: false - /loader-utils/3.2.0: - resolution: {integrity: sha512-HVl9ZqccQihZ7JM85dco1MvO9G+ONvxoGa9rkhzFsneGLKSUg1gJf9bWzhRhcvm2qChhWpebQhP44qxjKIUCaQ==} + /loader-utils@3.2.1: + resolution: {integrity: sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==} engines: {node: '>= 12.13.0'} dev: false - /locate-path/3.0.0: + /locate-path@3.0.0: resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} engines: {node: '>=6'} dependencies: @@ -5931,175 +6368,153 @@ packages: path-exists: 3.0.0 dev: false - /locate-path/5.0.0: + /locate-path@5.0.0: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} engines: {node: '>=8'} dependencies: p-locate: 4.1.0 dev: false - /locate-path/6.0.0: + /locate-path@6.0.0: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} dependencies: p-locate: 5.0.0 dev: false - /lodash.assignin/4.2.0: - resolution: {integrity: sha1-uo31+4QesKPoBEIysOJjqNxqKKI=} - dev: false - - /lodash.bind/4.2.1: - resolution: {integrity: sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=} - dev: false - - /lodash.curry/4.1.1: - resolution: {integrity: sha1-JI42By7ekGUB11lmIAqG2riyMXA=} - dev: false - - /lodash.debounce/4.0.8: - resolution: {integrity: sha1-gteb/zCmfEAF/9XiUVMArZyk168=} - dev: false - - /lodash.defaults/4.2.0: - resolution: {integrity: sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=} - dev: false - - /lodash.filter/4.6.0: - resolution: {integrity: sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=} - dev: false - - /lodash.flatten/4.4.0: - resolution: {integrity: sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=} - dev: false - - /lodash.flow/3.5.0: - resolution: {integrity: sha1-h79AKSuM+D5OjOGjrkIJ4gBxZ1o=} + /lodash.curry@4.1.1: + resolution: {integrity: sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==} dev: false - /lodash.foreach/4.5.0: - resolution: {integrity: sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=} + /lodash.debounce@4.0.8: + resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} dev: false - /lodash.map/4.6.0: - resolution: {integrity: sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=} + /lodash.escape@4.0.1: + resolution: {integrity: sha512-nXEOnb/jK9g0DYMr1/Xvq6l5xMD7GDG55+GSYIYmS0G4tBk/hURD4JR9WCavs04t33WmJx9kCyp9vJ+mr4BOUw==} dev: false - /lodash.memoize/4.1.2: - resolution: {integrity: sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=} + /lodash.flatten@4.4.0: + resolution: {integrity: sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==} dev: false - /lodash.merge/4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + /lodash.flow@3.5.0: + resolution: {integrity: sha512-ff3BX/tSioo+XojX4MOsOMhJw0nZoUEF011LX8g8d3gvjVbxd89cCio4BCXronjxcTUIJUoqKEUA+n4CqvvRPw==} dev: false - /lodash.pick/4.4.0: - resolution: {integrity: sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=} + /lodash.invokemap@4.6.0: + resolution: {integrity: sha512-CfkycNtMqgUlfjfdh2BhKO/ZXrP8ePOX5lEU/g0R3ItJcnuxWDwokMGKx1hWcfOikmyOVx6X9IwWnDGlgKl61w==} dev: false - /lodash.reduce/4.6.0: - resolution: {integrity: sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=} + /lodash.memoize@4.1.2: + resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} dev: false - /lodash.reject/4.6.0: - resolution: {integrity: sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=} + /lodash.pullall@4.2.0: + resolution: {integrity: sha512-VhqxBKH0ZxPpLhiu68YD1KnHmbhQJQctcipvmFnqIBDYzcIHzf3Zpu0tpeOKtR4x76p9yohc506eGdOjTmyIBg==} dev: false - /lodash.some/4.6.0: - resolution: {integrity: sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=} + /lodash.sortby@4.7.0: + resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} dev: false - /lodash.sortby/4.7.0: - resolution: {integrity: sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=} + /lodash.uniq@4.5.0: + resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==} dev: false - /lodash.uniq/4.5.0: - resolution: {integrity: sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=} + /lodash.uniqby@4.7.0: + resolution: {integrity: sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww==} dev: false - /lodash/4.17.21: + /lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} dev: false - /loose-envify/1.4.0: + /loose-envify@1.4.0: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} hasBin: true dependencies: js-tokens: 4.0.0 - /lower-case/2.0.2: + /lower-case@2.0.2: resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} dependencies: - tslib: 2.3.1 + tslib: 2.6.2 dev: false - /lowercase-keys/1.0.1: + /lowercase-keys@1.0.1: resolution: {integrity: sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==} engines: {node: '>=0.10.0'} dev: false - /lowercase-keys/2.0.0: + /lowercase-keys@2.0.0: resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==} engines: {node: '>=8'} dev: false - /lru-cache/6.0.0: + /lru-cache@5.1.1: + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + dependencies: + yallist: 3.1.1 + dev: false + + /lru-cache@6.0.0: resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} engines: {node: '>=10'} dependencies: yallist: 4.0.0 dev: false - /lunr-languages/1.9.0: - resolution: {integrity: sha512-Be5vFuc8NAheOIjviCRms3ZqFFBlzns3u9DXpPSZvALetgnydAN0poV71pVLFn0keYy/s4VblMMkqewTLe+KPg==} + /lunr-languages@1.13.0: + resolution: {integrity: sha512-qgTOarcnAtVFKr0aJ2GuiqbBdhKF61jpF8OgFbnlSAb1t6kOiQW67q0hv0UQzzB+5+OwPpnZyFT/L0L9SQG1/A==} dev: false - /lunr/2.3.9: + /lunr@2.3.9: resolution: {integrity: sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==} dev: false - /magic-string/0.25.9: + /magic-string@0.25.9: resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} dependencies: sourcemap-codec: 1.4.8 dev: false - /make-dir/3.1.0: + /make-dir@3.1.0: resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} engines: {node: '>=8'} dependencies: - semver: 6.3.0 + semver: 6.3.1 dev: false - /make-error/1.3.6: + /make-error@1.3.6: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} dev: true - /mark.js/8.11.1: - resolution: {integrity: sha1-GA8fnr74sOY45BZq1S24eb6y/8U=} + /mark.js@8.11.1: + resolution: {integrity: sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==} dev: false - /markdown-escapes/1.0.4: + /markdown-escapes@1.0.4: resolution: {integrity: sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==} dev: false - /mdast-squeeze-paragraphs/4.0.0: + /mdast-squeeze-paragraphs@4.0.0: resolution: {integrity: sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==} dependencies: unist-util-remove: 2.1.0 dev: false - /mdast-util-definitions/4.0.0: + /mdast-util-definitions@4.0.0: resolution: {integrity: sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==} dependencies: unist-util-visit: 2.0.3 dev: false - /mdast-util-to-hast/10.0.1: + /mdast-util-to-hast@10.0.1: resolution: {integrity: sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==} dependencies: - '@types/mdast': 3.0.10 - '@types/unist': 2.0.6 + '@types/mdast': 3.0.12 + '@types/unist': 2.0.8 mdast-util-definitions: 4.0.0 mdurl: 1.0.1 unist-builder: 2.0.3 @@ -6108,48 +6523,48 @@ packages: unist-util-visit: 2.0.3 dev: false - /mdast-util-to-string/2.0.0: + /mdast-util-to-string@2.0.0: resolution: {integrity: sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==} dev: false - /mdn-data/2.0.14: + /mdn-data@2.0.14: resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} dev: false - /mdurl/1.0.1: - resolution: {integrity: sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=} + /mdurl@1.0.1: + resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==} dev: false - /media-typer/0.3.0: - resolution: {integrity: sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=} + /media-typer@0.3.0: + resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} engines: {node: '>= 0.6'} dev: false - /memfs/3.4.1: - resolution: {integrity: sha512-1c9VPVvW5P7I85c35zAdEr1TD5+F11IToIHIlrVIcflfnzPkJa0ZoYEoEdYDP8KgPFoSZ/opDrUsAoZWym3mtw==} + /memfs@3.5.3: + resolution: {integrity: sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==} engines: {node: '>= 4.0.0'} dependencies: - fs-monkey: 1.0.3 + fs-monkey: 1.0.4 dev: false - /merge-descriptors/1.0.1: - resolution: {integrity: sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=} + /merge-descriptors@1.0.1: + resolution: {integrity: sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==} dev: false - /merge-stream/2.0.0: + /merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} - /merge2/1.4.1: + /merge2@1.4.1: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} dev: false - /methods/1.1.2: - resolution: {integrity: sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=} + /methods@1.1.2: + resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} engines: {node: '>= 0.6'} dev: false - /micromatch/4.0.5: + /micromatch@4.0.5: resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} engines: {node: '>=8.6'} dependencies: @@ -6157,158 +6572,129 @@ packages: picomatch: 2.3.1 dev: false - /mime-db/1.33.0: + /mime-db@1.33.0: resolution: {integrity: sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==} engines: {node: '>= 0.6'} dev: false - /mime-db/1.52.0: + /mime-db@1.52.0: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} - /mime-types/2.1.18: + /mime-types@2.1.18: resolution: {integrity: sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==} engines: {node: '>= 0.6'} dependencies: mime-db: 1.33.0 dev: false - /mime-types/2.1.35: + /mime-types@2.1.35: resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} engines: {node: '>= 0.6'} dependencies: mime-db: 1.52.0 - /mime/1.6.0: + /mime@1.6.0: resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} engines: {node: '>=4'} hasBin: true dev: false - /mimic-fn/2.1.0: + /mimic-fn@2.1.0: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} dev: false - /mimic-response/1.0.1: + /mimic-response@1.0.1: resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} engines: {node: '>=4'} dev: false - /mini-create-react-context/0.4.1_at7mkepldmzoo6silmqc5bca74: - resolution: {integrity: sha512-YWCYEmd5CQeHGSAKrYvXgmzzkrvssZcuuQDDeqkT+PziKGMgE+0MCCtcKbROzocGBG1meBLl2FotlRwf4gAzbQ==} - peerDependencies: - prop-types: ^15.0.0 - react: ^0.14.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - dependencies: - '@babel/runtime': 7.17.8 - prop-types: 15.8.1 - react: 17.0.2 - tiny-warning: 1.0.3 - dev: false - - /mini-css-extract-plugin/2.6.0_webpack@5.70.0: - resolution: {integrity: sha512-ndG8nxCEnAemsg4FSgS+yNyHKgkTB4nPKqCOgh65j3/30qqC5RaSQQXMm++Y6sb6E1zRSxPkztj9fqxhS1Eo6w==} + /mini-css-extract-plugin@2.7.6(webpack@5.88.2): + resolution: {integrity: sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw==} engines: {node: '>= 12.13.0'} peerDependencies: webpack: ^5.0.0 dependencies: - schema-utils: 4.0.0 - webpack: 5.70.0 + schema-utils: 4.2.0 + webpack: 5.88.2 dev: false - /minimalistic-assert/1.0.1: + /minimalistic-assert@1.0.1: resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} dev: false - /minimatch/3.0.4: - resolution: {integrity: sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==} - dependencies: - brace-expansion: 1.1.11 - dev: false - - /minimatch/3.1.2: + /minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: brace-expansion: 1.1.11 dev: false - /minimatch/5.0.1: - resolution: {integrity: sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==} + /minimatch@5.1.6: + resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} engines: {node: '>=10'} dependencies: brace-expansion: 2.0.1 dev: false - /minimist/1.2.6: - resolution: {integrity: sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==} - dev: false - - /mkdirp/0.5.5: - resolution: {integrity: sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==} - hasBin: true - dependencies: - minimist: 1.2.6 + /minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} dev: false - /mrmime/1.0.0: - resolution: {integrity: sha512-a70zx7zFfVO7XpnQ2IX1Myh9yY4UYvfld/dikWRnsXxbyvMcfz+u6UfgNAtH+k2QqtJuzVpv6eLTx1G2+WKZbQ==} + /mrmime@1.0.1: + resolution: {integrity: sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==} engines: {node: '>=10'} dev: false - /ms/2.0.0: - resolution: {integrity: sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=} + /ms@2.0.0: + resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} dev: false - /ms/2.1.2: + /ms@2.1.2: resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} dev: false - /ms/2.1.3: + /ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} dev: false - /multicast-dns-service-types/1.1.0: - resolution: {integrity: sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=} - dev: false - - /multicast-dns/6.2.3: - resolution: {integrity: sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==} + /multicast-dns@7.2.5: + resolution: {integrity: sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==} hasBin: true dependencies: - dns-packet: 1.3.4 + dns-packet: 5.6.1 thunky: 1.1.0 dev: false - /nanoid/3.3.1: - resolution: {integrity: sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==} + /nanoid@3.3.6: + resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true dev: false - /negotiator/0.6.3: + /negotiator@0.6.3: resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} engines: {node: '>= 0.6'} dev: false - /neo-async/2.6.2: + /neo-async@2.6.2: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} - /no-case/3.0.4: + /no-case@3.0.4: resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} dependencies: lower-case: 2.0.2 - tslib: 2.3.1 + tslib: 2.6.2 dev: false - /node-emoji/1.11.0: + /node-emoji@1.11.0: resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==} dependencies: lodash: 4.17.21 dev: false - /node-fetch/2.6.7: - resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==} + /node-fetch@2.7.0: + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} engines: {node: 4.x || >=6.0.0} peerDependencies: encoding: ^0.1.0 @@ -6319,119 +6705,105 @@ packages: whatwg-url: 5.0.0 dev: false - /node-forge/1.3.0: - resolution: {integrity: sha512-08ARB91bUi6zNKzVmaj3QO7cr397uiDT2nJ63cHjyNtCTWIgvS47j3eT0WfzUwS9+6Z5YshRaoasFkXCKrIYbA==} + /node-forge@1.3.1: + resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==} engines: {node: '>= 6.13.0'} dev: false - /node-releases/2.0.2: - resolution: {integrity: sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==} + /node-releases@2.0.13: + resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} - /normalize-path/3.0.0: + /normalize-path@3.0.0: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} dev: false - /normalize-range/0.1.2: - resolution: {integrity: sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=} + /normalize-range@0.1.2: + resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} engines: {node: '>=0.10.0'} dev: false - /normalize-url/4.5.1: + /normalize-url@4.5.1: resolution: {integrity: sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==} engines: {node: '>=8'} dev: false - /normalize-url/6.1.0: + /normalize-url@6.1.0: resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} engines: {node: '>=10'} dev: false - /npm-run-path/4.0.1: + /npm-run-path@4.0.1: resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} engines: {node: '>=8'} dependencies: path-key: 3.1.1 dev: false - /nprogress/0.2.0: - resolution: {integrity: sha1-y480xTIT2JVyP8urkH6UIq28r7E=} - dev: false - - /nth-check/1.0.2: - resolution: {integrity: sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==} - dependencies: - boolbase: 1.0.0 + /nprogress@0.2.0: + resolution: {integrity: sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==} dev: false - /nth-check/2.0.1: - resolution: {integrity: sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==} + /nth-check@2.1.1: + resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} dependencies: boolbase: 1.0.0 dev: false - /object-assign/4.1.1: - resolution: {integrity: sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=} + /object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} - /object-inspect/1.12.0: - resolution: {integrity: sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==} + /object-inspect@1.12.3: + resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} dev: false - /object-is/1.1.5: - resolution: {integrity: sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.1.3 - dev: false - - /object-keys/1.1.1: + /object-keys@1.1.1: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} dev: false - /object.assign/4.1.2: - resolution: {integrity: sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==} + /object.assign@4.1.4: + resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.3 + define-properties: 1.2.1 has-symbols: 1.0.3 object-keys: 1.1.1 dev: false - /obuf/1.1.2: + /obuf@1.1.2: resolution: {integrity: sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==} dev: false - /on-finished/2.3.0: - resolution: {integrity: sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=} + /on-finished@2.4.1: + resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} engines: {node: '>= 0.8'} dependencies: ee-first: 1.1.1 dev: false - /on-headers/1.0.2: + /on-headers@1.0.2: resolution: {integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==} engines: {node: '>= 0.8'} dev: false - /once/1.4.0: - resolution: {integrity: sha1-WDsap3WWHUsROsF9nFC6753Xa9E=} + /once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} dependencies: wrappy: 1.0.2 dev: false - /onetime/5.1.2: + /onetime@5.1.2: resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} engines: {node: '>=6'} dependencies: mimic-fn: 2.1.0 dev: false - /open/8.4.0: - resolution: {integrity: sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==} + /open@8.4.2: + resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} engines: {node: '>=12'} dependencies: define-lazy-prop: 2.0.0 @@ -6439,96 +6811,96 @@ packages: is-wsl: 2.2.0 dev: false - /opener/1.5.2: + /opener@1.5.2: resolution: {integrity: sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==} hasBin: true dev: false - /p-cancelable/1.1.0: + /p-cancelable@1.1.0: resolution: {integrity: sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==} engines: {node: '>=6'} dev: false - /p-limit/2.3.0: + /p-limit@2.3.0: resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} engines: {node: '>=6'} dependencies: p-try: 2.2.0 dev: false - /p-limit/3.1.0: + /p-limit@3.1.0: resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} engines: {node: '>=10'} dependencies: yocto-queue: 0.1.0 dev: false - /p-locate/3.0.0: + /p-locate@3.0.0: resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} engines: {node: '>=6'} dependencies: p-limit: 2.3.0 dev: false - /p-locate/4.1.0: + /p-locate@4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} engines: {node: '>=8'} dependencies: p-limit: 2.3.0 dev: false - /p-locate/5.0.0: + /p-locate@5.0.0: resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} engines: {node: '>=10'} dependencies: p-limit: 3.1.0 dev: false - /p-map/4.0.0: + /p-map@4.0.0: resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} engines: {node: '>=10'} dependencies: aggregate-error: 3.1.0 dev: false - /p-retry/4.6.1: - resolution: {integrity: sha512-e2xXGNhZOZ0lfgR9kL34iGlU8N/KO0xZnQxVEwdeOvpqNDQfdnxIYizvWtK8RglUa3bGqI8g0R/BdfzLMxRkiA==} + /p-retry@4.6.2: + resolution: {integrity: sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==} engines: {node: '>=8'} dependencies: - '@types/retry': 0.12.1 + '@types/retry': 0.12.0 retry: 0.13.1 dev: false - /p-try/2.2.0: + /p-try@2.2.0: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} dev: false - /package-json/6.5.0: + /package-json@6.5.0: resolution: {integrity: sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==} engines: {node: '>=8'} dependencies: got: 9.6.0 - registry-auth-token: 4.2.1 + registry-auth-token: 4.2.2 registry-url: 5.1.0 - semver: 6.3.0 + semver: 6.3.1 dev: false - /param-case/3.0.4: + /param-case@3.0.4: resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==} dependencies: dot-case: 3.0.4 - tslib: 2.3.1 + tslib: 2.6.2 dev: false - /parent-module/1.0.1: + /parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} dependencies: callsites: 3.1.0 dev: false - /parse-entities/2.0.0: + /parse-entities@2.0.0: resolution: {integrity: sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==} dependencies: character-entities: 1.2.4 @@ -6539,579 +6911,574 @@ packages: is-hexadecimal: 1.0.4 dev: false - /parse-json/5.2.0: + /parse-json@5.2.0: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} dependencies: - '@babel/code-frame': 7.16.7 + '@babel/code-frame': 7.22.13 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 dev: false - /parse-numeric-range/1.3.0: + /parse-numeric-range@1.3.0: resolution: {integrity: sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==} dev: false - /parse5-htmlparser2-tree-adapter/6.0.1: - resolution: {integrity: sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==} + /parse5-htmlparser2-tree-adapter@7.0.0: + resolution: {integrity: sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==} dependencies: - parse5: 6.0.1 + domhandler: 5.0.3 + parse5: 7.1.2 dev: false - /parse5/5.1.1: - resolution: {integrity: sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==} + /parse5@6.0.1: + resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} dev: false - /parse5/6.0.1: - resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} + /parse5@7.1.2: + resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} + dependencies: + entities: 4.5.0 dev: false - /parseurl/1.3.3: + /parseurl@1.3.3: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} engines: {node: '>= 0.8'} dev: false - /pascal-case/3.1.2: + /pascal-case@3.1.2: resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} dependencies: no-case: 3.0.4 - tslib: 2.3.1 + tslib: 2.6.2 dev: false - /path-exists/3.0.0: - resolution: {integrity: sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=} + /path-exists@3.0.0: + resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} engines: {node: '>=4'} dev: false - /path-exists/4.0.0: + /path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} dev: false - /path-is-absolute/1.0.1: - resolution: {integrity: sha1-F0uSaHNVNP+8es5r9TpanhtcX18=} + /path-is-absolute@1.0.1: + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} engines: {node: '>=0.10.0'} dev: false - /path-is-inside/1.0.2: - resolution: {integrity: sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=} + /path-is-inside@1.0.2: + resolution: {integrity: sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==} dev: false - /path-key/3.1.1: + /path-key@3.1.1: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} dev: false - /path-parse/1.0.7: + /path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} dev: false - /path-to-regexp/0.1.7: - resolution: {integrity: sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=} + /path-to-regexp@0.1.7: + resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==} dev: false - /path-to-regexp/1.8.0: + /path-to-regexp@1.8.0: resolution: {integrity: sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==} dependencies: isarray: 0.0.1 dev: false - /path-to-regexp/2.2.1: + /path-to-regexp@2.2.1: resolution: {integrity: sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==} dev: false - /path-type/4.0.0: + /path-type@4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} dev: false - /picocolors/1.0.0: + /picocolors@1.0.0: resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} - /picomatch/2.3.1: + /picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} dev: false - /pkg-dir/4.2.0: + /pkg-dir@4.2.0: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} engines: {node: '>=8'} dependencies: find-up: 4.1.0 dev: false - /pkg-up/3.1.0: + /pkg-up@3.1.0: resolution: {integrity: sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==} engines: {node: '>=8'} dependencies: find-up: 3.0.0 dev: false - /portfinder/1.0.28: - resolution: {integrity: sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==} - engines: {node: '>= 0.12.0'} - dependencies: - async: 2.6.3 - debug: 3.2.7 - mkdirp: 0.5.5 - transitivePeerDependencies: - - supports-color - dev: false - - /postcss-calc/8.2.4_postcss@8.4.12: + /postcss-calc@8.2.4(postcss@8.4.29): resolution: {integrity: sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==} peerDependencies: postcss: ^8.2.2 dependencies: - postcss: 8.4.12 - postcss-selector-parser: 6.0.9 + postcss: 8.4.29 + postcss-selector-parser: 6.0.13 postcss-value-parser: 4.2.0 dev: false - /postcss-colormin/5.3.0_postcss@8.4.12: - resolution: {integrity: sha512-WdDO4gOFG2Z8n4P8TWBpshnL3JpmNmJwdnfP2gbk2qBA8PWwOYcmjmI/t3CmMeL72a7Hkd+x/Mg9O2/0rD54Pg==} + /postcss-colormin@5.3.1(postcss@8.4.29): + resolution: {integrity: sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.20.2 + browserslist: 4.21.10 caniuse-api: 3.0.0 - colord: 2.9.2 - postcss: 8.4.12 + colord: 2.9.3 + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-convert-values/5.1.0_postcss@8.4.12: - resolution: {integrity: sha512-GkyPbZEYJiWtQB0KZ0X6qusqFHUepguBCNFi9t5JJc7I2OTXG7C0twbTLvCfaKOLl3rSXmpAwV7W5txd91V84g==} + /postcss-convert-values@5.1.3(postcss@8.4.29): + resolution: {integrity: sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + browserslist: 4.21.10 + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-discard-comments/5.1.1_postcss@8.4.12: - resolution: {integrity: sha512-5JscyFmvkUxz/5/+TB3QTTT9Gi9jHkcn8dcmmuN68JQcv3aQg4y88yEHHhwFB52l/NkaJ43O0dbksGMAo49nfQ==} + /postcss-discard-comments@5.1.2(postcss@8.4.29): + resolution: {integrity: sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 dev: false - /postcss-discard-duplicates/5.1.0_postcss@8.4.12: + /postcss-discard-duplicates@5.1.0(postcss@8.4.29): resolution: {integrity: sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 dev: false - /postcss-discard-empty/5.1.1_postcss@8.4.12: + /postcss-discard-empty@5.1.1(postcss@8.4.29): resolution: {integrity: sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 dev: false - /postcss-discard-overridden/5.1.0_postcss@8.4.12: + /postcss-discard-overridden@5.1.0(postcss@8.4.29): resolution: {integrity: sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 dev: false - /postcss-discard-unused/5.1.0_postcss@8.4.12: + /postcss-discard-unused@5.1.0(postcss@8.4.29): resolution: {integrity: sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 - postcss-selector-parser: 6.0.9 + postcss: 8.4.29 + postcss-selector-parser: 6.0.13 dev: false - /postcss-loader/6.2.1_wn4p5kzkgq2ohl66pfawxjf2x4: - resolution: {integrity: sha512-WbbYpmAaKcux/P66bZ40bpWsBucjx/TTgVVzRZ9yUO8yQfVBlameJ0ZGVaPfH64hNSBh63a+ICP5nqOpBA0w+Q==} - engines: {node: '>= 12.13.0'} + /postcss-loader@7.3.3(postcss@8.4.29)(typescript@4.9.5)(webpack@5.88.2): + resolution: {integrity: sha512-YgO/yhtevGO/vJePCQmTxiaEwER94LABZN0ZMT4A0vsak9TpO+RvKRs7EmJ8peIlB9xfXCsS7M8LjqncsUZ5HA==} + engines: {node: '>= 14.15.0'} peerDependencies: postcss: ^7.0.0 || ^8.0.1 webpack: ^5.0.0 dependencies: - cosmiconfig: 7.0.1 - klona: 2.0.5 - postcss: 8.4.12 - semver: 7.3.5 - webpack: 5.70.0 + cosmiconfig: 8.3.6(typescript@4.9.5) + jiti: 1.20.0 + postcss: 8.4.29 + semver: 7.5.4 + webpack: 5.88.2 + transitivePeerDependencies: + - typescript dev: false - /postcss-merge-idents/5.1.1_postcss@8.4.12: + /postcss-merge-idents@5.1.1(postcss@8.4.29): resolution: {integrity: sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - cssnano-utils: 3.1.0_postcss@8.4.12 - postcss: 8.4.12 + cssnano-utils: 3.1.0(postcss@8.4.29) + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-merge-longhand/5.1.3_postcss@8.4.12: - resolution: {integrity: sha512-lX8GPGvZ0iGP/IboM7HXH5JwkXvXod1Rr8H8ixwiA372hArk0zP4ZcCy4z4Prg/bfNlbbTf0KCOjCF9kKnpP/w==} + /postcss-merge-longhand@5.1.7(postcss@8.4.29): + resolution: {integrity: sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 postcss-value-parser: 4.2.0 - stylehacks: 5.1.0_postcss@8.4.12 + stylehacks: 5.1.1(postcss@8.4.29) dev: false - /postcss-merge-rules/5.1.1_postcss@8.4.12: - resolution: {integrity: sha512-8wv8q2cXjEuCcgpIB1Xx1pIy8/rhMPIQqYKNzEdyx37m6gpq83mQQdCxgIkFgliyEnKvdwJf/C61vN4tQDq4Ww==} + /postcss-merge-rules@5.1.4(postcss@8.4.29): + resolution: {integrity: sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.20.2 + browserslist: 4.21.10 caniuse-api: 3.0.0 - cssnano-utils: 3.1.0_postcss@8.4.12 - postcss: 8.4.12 - postcss-selector-parser: 6.0.9 + cssnano-utils: 3.1.0(postcss@8.4.29) + postcss: 8.4.29 + postcss-selector-parser: 6.0.13 dev: false - /postcss-minify-font-values/5.1.0_postcss@8.4.12: + /postcss-minify-font-values@5.1.0(postcss@8.4.29): resolution: {integrity: sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-minify-gradients/5.1.1_postcss@8.4.12: + /postcss-minify-gradients@5.1.1(postcss@8.4.29): resolution: {integrity: sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - colord: 2.9.2 - cssnano-utils: 3.1.0_postcss@8.4.12 - postcss: 8.4.12 + colord: 2.9.3 + cssnano-utils: 3.1.0(postcss@8.4.29) + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-minify-params/5.1.2_postcss@8.4.12: - resolution: {integrity: sha512-aEP+p71S/urY48HWaRHasyx4WHQJyOYaKpQ6eXl8k0kxg66Wt/30VR6/woh8THgcpRbonJD5IeD+CzNhPi1L8g==} + /postcss-minify-params@5.1.4(postcss@8.4.29): + resolution: {integrity: sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.20.2 - cssnano-utils: 3.1.0_postcss@8.4.12 - postcss: 8.4.12 + browserslist: 4.21.10 + cssnano-utils: 3.1.0(postcss@8.4.29) + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-minify-selectors/5.2.0_postcss@8.4.12: - resolution: {integrity: sha512-vYxvHkW+iULstA+ctVNx0VoRAR4THQQRkG77o0oa4/mBS0OzGvvzLIvHDv/nNEM0crzN2WIyFU5X7wZhaUK3RA==} + /postcss-minify-selectors@5.2.1(postcss@8.4.29): + resolution: {integrity: sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 - postcss-selector-parser: 6.0.9 + postcss: 8.4.29 + postcss-selector-parser: 6.0.13 dev: false - /postcss-modules-extract-imports/3.0.0_postcss@8.4.12: + /postcss-modules-extract-imports@3.0.0(postcss@8.4.29): resolution: {integrity: sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 dev: false - /postcss-modules-local-by-default/4.0.0_postcss@8.4.12: - resolution: {integrity: sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==} + /postcss-modules-local-by-default@4.0.3(postcss@8.4.29): + resolution: {integrity: sha512-2/u2zraspoACtrbFRnTijMiQtb4GW4BvatjaG/bCjYQo8kLTdevCUlwuBHx2sCnSyrI3x3qj4ZK1j5LQBgzmwA==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - icss-utils: 5.1.0_postcss@8.4.12 - postcss: 8.4.12 - postcss-selector-parser: 6.0.9 + icss-utils: 5.1.0(postcss@8.4.29) + postcss: 8.4.29 + postcss-selector-parser: 6.0.13 postcss-value-parser: 4.2.0 dev: false - /postcss-modules-scope/3.0.0_postcss@8.4.12: + /postcss-modules-scope@3.0.0(postcss@8.4.29): resolution: {integrity: sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - postcss: 8.4.12 - postcss-selector-parser: 6.0.9 + postcss: 8.4.29 + postcss-selector-parser: 6.0.13 dev: false - /postcss-modules-values/4.0.0_postcss@8.4.12: + /postcss-modules-values@4.0.0(postcss@8.4.29): resolution: {integrity: sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - icss-utils: 5.1.0_postcss@8.4.12 - postcss: 8.4.12 + icss-utils: 5.1.0(postcss@8.4.29) + postcss: 8.4.29 dev: false - /postcss-normalize-charset/5.1.0_postcss@8.4.12: + /postcss-normalize-charset@5.1.0(postcss@8.4.29): resolution: {integrity: sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 dev: false - /postcss-normalize-display-values/5.1.0_postcss@8.4.12: + /postcss-normalize-display-values@5.1.0(postcss@8.4.29): resolution: {integrity: sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-positions/5.1.0_postcss@8.4.12: - resolution: {integrity: sha512-8gmItgA4H5xiUxgN/3TVvXRoJxkAWLW6f/KKhdsH03atg0cB8ilXnrB5PpSshwVu/dD2ZsRFQcR1OEmSBDAgcQ==} + /postcss-normalize-positions@5.1.1(postcss@8.4.29): + resolution: {integrity: sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-repeat-style/5.1.0_postcss@8.4.12: - resolution: {integrity: sha512-IR3uBjc+7mcWGL6CtniKNQ4Rr5fTxwkaDHwMBDGGs1x9IVRkYIT/M4NelZWkAOBdV6v3Z9S46zqaKGlyzHSchw==} + /postcss-normalize-repeat-style@5.1.1(postcss@8.4.29): + resolution: {integrity: sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-string/5.1.0_postcss@8.4.12: + /postcss-normalize-string@5.1.0(postcss@8.4.29): resolution: {integrity: sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-timing-functions/5.1.0_postcss@8.4.12: + /postcss-normalize-timing-functions@5.1.0(postcss@8.4.29): resolution: {integrity: sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-unicode/5.1.0_postcss@8.4.12: - resolution: {integrity: sha512-J6M3MizAAZ2dOdSjy2caayJLQT8E8K9XjLce8AUQMwOrCvjCHv24aLC/Lps1R1ylOfol5VIDMaM/Lo9NGlk1SQ==} + /postcss-normalize-unicode@5.1.1(postcss@8.4.29): + resolution: {integrity: sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.20.2 - postcss: 8.4.12 + browserslist: 4.21.10 + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-url/5.1.0_postcss@8.4.12: + /postcss-normalize-url@5.1.0(postcss@8.4.29): resolution: {integrity: sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: normalize-url: 6.1.0 - postcss: 8.4.12 + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-whitespace/5.1.1_postcss@8.4.12: + /postcss-normalize-whitespace@5.1.1(postcss@8.4.29): resolution: {integrity: sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-ordered-values/5.1.1_postcss@8.4.12: - resolution: {integrity: sha512-7lxgXF0NaoMIgyihL/2boNAEZKiW0+HkMhdKMTD93CjW8TdCy2hSdj8lsAo+uwm7EDG16Da2Jdmtqpedl0cMfw==} + /postcss-ordered-values@5.1.3(postcss@8.4.29): + resolution: {integrity: sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - cssnano-utils: 3.1.0_postcss@8.4.12 - postcss: 8.4.12 + cssnano-utils: 3.1.0(postcss@8.4.29) + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-reduce-idents/5.2.0_postcss@8.4.12: + /postcss-reduce-idents@5.2.0(postcss@8.4.29): resolution: {integrity: sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-reduce-initial/5.1.0_postcss@8.4.12: - resolution: {integrity: sha512-5OgTUviz0aeH6MtBjHfbr57tml13PuedK/Ecg8szzd4XRMbYxH4572JFG067z+FqBIf6Zp/d+0581glkvvWMFw==} + /postcss-reduce-initial@5.1.2(postcss@8.4.29): + resolution: {integrity: sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.20.2 + browserslist: 4.21.10 caniuse-api: 3.0.0 - postcss: 8.4.12 + postcss: 8.4.29 dev: false - /postcss-reduce-transforms/5.1.0_postcss@8.4.12: + /postcss-reduce-transforms@5.1.0(postcss@8.4.29): resolution: {integrity: sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: false - /postcss-selector-parser/6.0.9: - resolution: {integrity: sha512-UO3SgnZOVTwu4kyLR22UQ1xZh086RyNZppb7lLAKBFK8a32ttG5i87Y/P3+2bRSjZNyJ1B7hfFNo273tKe9YxQ==} + /postcss-selector-parser@6.0.13: + resolution: {integrity: sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==} engines: {node: '>=4'} dependencies: cssesc: 3.0.0 util-deprecate: 1.0.2 dev: false - /postcss-sort-media-queries/4.2.1_postcss@8.4.12: - resolution: {integrity: sha512-9VYekQalFZ3sdgcTjXMa0dDjsfBVHXlraYJEMiOJ/2iMmI2JGCMavP16z3kWOaRu8NSaJCTgVpB/IVpH5yT9YQ==} + /postcss-sort-media-queries@4.4.1(postcss@8.4.29): + resolution: {integrity: sha512-QDESFzDDGKgpiIh4GYXsSy6sek2yAwQx1JASl5AxBtU1Lq2JfKBljIPNdil989NcSKRQX1ToiaKphImtBuhXWw==} engines: {node: '>=10.0.0'} peerDependencies: - postcss: ^8.4.4 + postcss: ^8.4.16 dependencies: - postcss: 8.4.12 - sort-css-media-queries: 2.0.4 + postcss: 8.4.29 + sort-css-media-queries: 2.1.0 dev: false - /postcss-svgo/5.1.0_postcss@8.4.12: + /postcss-svgo@5.1.0(postcss@8.4.29): resolution: {integrity: sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 postcss-value-parser: 4.2.0 svgo: 2.8.0 dev: false - /postcss-unique-selectors/5.1.1_postcss@8.4.12: + /postcss-unique-selectors@5.1.1(postcss@8.4.29): resolution: {integrity: sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 - postcss-selector-parser: 6.0.9 + postcss: 8.4.29 + postcss-selector-parser: 6.0.13 dev: false - /postcss-value-parser/4.2.0: + /postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} dev: false - /postcss-zindex/5.1.0_postcss@8.4.12: + /postcss-zindex@5.1.0(postcss@8.4.29): resolution: {integrity: sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.12 + postcss: 8.4.29 dev: false - /postcss/8.4.12: - resolution: {integrity: sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg==} + /postcss@8.4.29: + resolution: {integrity: sha512-cbI+jaqIeu/VGqXEarWkRCCffhjgXc0qjBtXpqJhTBohMUjUQnbBr0xqX3vEKudc4iviTewcJo5ajcec5+wdJw==} engines: {node: ^10 || ^12 || >=14} dependencies: - nanoid: 3.3.1 + nanoid: 3.3.6 picocolors: 1.0.0 source-map-js: 1.0.2 dev: false - /prepend-http/2.0.0: - resolution: {integrity: sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=} + /prepend-http@2.0.0: + resolution: {integrity: sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==} engines: {node: '>=4'} dev: false - /pretty-bytes/5.6.0: + /pretty-bytes@5.6.0: resolution: {integrity: sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==} engines: {node: '>=6'} dev: false - /pretty-error/4.0.0: + /pretty-error@4.0.0: resolution: {integrity: sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==} dependencies: lodash: 4.17.21 renderkid: 3.0.0 dev: false - /pretty-time/1.1.0: + /pretty-time@1.1.0: resolution: {integrity: sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==} engines: {node: '>=4'} dev: false - /prism-react-renderer/1.3.1_react@17.0.2: - resolution: {integrity: sha512-xUeDMEz074d0zc5y6rxiMp/dlC7C+5IDDlaEUlcBOFE2wddz7hz5PNupb087mPwTt7T9BrFmewObfCBuf/LKwQ==} + /prism-react-renderer@1.3.5(react@17.0.2): + resolution: {integrity: sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg==} peerDependencies: react: '>=0.14.9' dependencies: react: 17.0.2 dev: false - /prismjs/1.27.0: - resolution: {integrity: sha512-t13BGPUlFDR7wRB5kQDG4jjl7XeuH6jbJGt11JHPL96qwsEHNX2+68tFXqc1/k+/jALsbSWJKUOT/hcYAZ5LkA==} + /prismjs@1.29.0: + resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} engines: {node: '>=6'} dev: false - /process-nextick-args/2.0.1: + /process-nextick-args@2.0.1: resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} dev: false - /promise/7.3.1: + /promise@7.3.1: resolution: {integrity: sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==} dependencies: asap: 2.0.6 dev: false - /prompts/2.4.2: + /prompts@2.4.2: resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} engines: {node: '>= 6'} dependencies: @@ -7119,20 +7486,20 @@ packages: sisteransi: 1.0.5 dev: false - /prop-types/15.8.1: + /prop-types@15.8.1: resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} dependencies: loose-envify: 1.4.0 object-assign: 4.1.1 react-is: 16.13.1 - /property-information/5.6.0: + /property-information@5.6.0: resolution: {integrity: sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==} dependencies: xtend: 4.0.2 dev: false - /proxy-addr/2.0.7: + /proxy-addr@2.0.7: resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} engines: {node: '>= 0.10'} dependencies: @@ -7140,84 +7507,86 @@ packages: ipaddr.js: 1.9.1 dev: false - /pump/3.0.0: + /pump@3.0.0: resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} dependencies: end-of-stream: 1.4.4 once: 1.4.0 dev: false - /punycode/1.4.1: - resolution: {integrity: sha1-wNWmOycYgArY4esPpSachN1BhF4=} + /punycode@1.4.1: + resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} dev: false - /punycode/2.1.1: - resolution: {integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==} + /punycode@2.3.0: + resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} engines: {node: '>=6'} - /pupa/2.1.1: + /pupa@2.1.1: resolution: {integrity: sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==} engines: {node: '>=8'} dependencies: escape-goat: 2.1.1 dev: false - /pure-color/1.3.0: - resolution: {integrity: sha1-H+Bk+wrIUfDeYTIKi/eWg2Qi8z4=} + /pure-color@1.3.0: + resolution: {integrity: sha512-QFADYnsVoBMw1srW7OVKEYjG+MbIa49s54w1MA1EDY6r2r/sTcKKYqRX1f4GYvnXP7eN/Pe9HFcX+hwzmrXRHA==} dev: false - /qs/6.9.7: - resolution: {integrity: sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==} + /qs@6.11.0: + resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==} engines: {node: '>=0.6'} + dependencies: + side-channel: 1.0.4 dev: false - /queue-microtask/1.2.3: + /queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} dev: false - /queue/6.0.2: + /queue@6.0.2: resolution: {integrity: sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==} dependencies: inherits: 2.0.4 dev: false - /randombytes/2.1.0: + /randombytes@2.1.0: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} dependencies: safe-buffer: 5.2.1 - /range-parser/1.2.0: - resolution: {integrity: sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=} + /range-parser@1.2.0: + resolution: {integrity: sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==} engines: {node: '>= 0.6'} dev: false - /range-parser/1.2.1: + /range-parser@1.2.1: resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} engines: {node: '>= 0.6'} dev: false - /raw-body/2.4.3: - resolution: {integrity: sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==} + /raw-body@2.5.1: + resolution: {integrity: sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==} engines: {node: '>= 0.8'} dependencies: bytes: 3.1.2 - http-errors: 1.8.1 + http-errors: 2.0.0 iconv-lite: 0.4.24 unpipe: 1.0.0 dev: false - /rc/1.2.8: + /rc@1.2.8: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} hasBin: true dependencies: deep-extend: 0.6.0 ini: 1.3.8 - minimist: 1.2.6 + minimist: 1.2.8 strip-json-comments: 2.0.1 dev: false - /react-base16-styling/0.6.0: - resolution: {integrity: sha1-7yFW1mz0E5aVyKFniGy2nqZgeSw=} + /react-base16-styling@0.6.0: + resolution: {integrity: sha512-yvh/7CArceR/jNATXOKDlvTnPKPmGZz7zsenQ3jUwLzHkNUR0CvY3yGYJbWJ/nnxsL8Sgmt5cO3/SILVuPO6TQ==} dependencies: base16: 1.0.0 lodash.curry: 4.1.1 @@ -7225,43 +7594,49 @@ packages: pure-color: 1.3.0 dev: false - /react-dev-utils/12.0.0_dowam63vmehxjyamkjde33fuby: - resolution: {integrity: sha512-xBQkitdxozPxt1YZ9O1097EJiVpwHr9FoAuEVURCKV0Av8NBERovJauzP7bo1ThvuhZ4shsQ1AJiu4vQpoT1AQ==} + /react-dev-utils@12.0.1(typescript@4.9.5)(webpack@5.88.2): + resolution: {integrity: sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==} engines: {node: '>=14'} + peerDependencies: + typescript: '>=2.7' + webpack: '>=4' + peerDependenciesMeta: + typescript: + optional: true dependencies: - '@babel/code-frame': 7.16.7 - address: 1.1.2 - browserslist: 4.20.2 + '@babel/code-frame': 7.22.13 + address: 1.2.2 + browserslist: 4.21.10 chalk: 4.1.2 cross-spawn: 7.0.3 detect-port-alt: 1.1.6 escape-string-regexp: 4.0.0 filesize: 8.0.7 find-up: 5.0.0 - fork-ts-checker-webpack-plugin: 6.5.0_dowam63vmehxjyamkjde33fuby + fork-ts-checker-webpack-plugin: 6.5.3(typescript@4.9.5)(webpack@5.88.2) global-modules: 2.0.0 globby: 11.1.0 gzip-size: 6.0.0 - immer: 9.0.12 + immer: 9.0.21 is-root: 2.1.0 - loader-utils: 3.2.0 - open: 8.4.0 + loader-utils: 3.2.1 + open: 8.4.2 pkg-up: 3.1.0 prompts: 2.4.2 - react-error-overlay: 6.0.10 - recursive-readdir: 2.2.2 - shell-quote: 1.7.3 + react-error-overlay: 6.0.11 + recursive-readdir: 2.2.3 + shell-quote: 1.8.1 strip-ansi: 6.0.1 text-table: 0.2.0 + typescript: 4.9.5 + webpack: 5.88.2 transitivePeerDependencies: - eslint - supports-color - - typescript - vue-template-compiler - - webpack dev: false - /react-dom/17.0.2_react@17.0.2: + /react-dom@17.0.2(react@17.0.2): resolution: {integrity: sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==} peerDependencies: react: 17.0.2 @@ -7270,133 +7645,130 @@ packages: object-assign: 4.1.1 react: 17.0.2 scheduler: 0.20.2 - dev: false - /react-error-overlay/6.0.10: - resolution: {integrity: sha512-mKR90fX7Pm5seCOfz8q9F+66VCc1PGsWSBxKbITjfKVQHMNF2zudxHnMdJiB1fRCb+XsbQV9sO9DCkgsMQgBIA==} + /react-error-overlay@6.0.11: + resolution: {integrity: sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==} dev: false - /react-fast-compare/3.2.0: - resolution: {integrity: sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==} + /react-fast-compare@3.2.2: + resolution: {integrity: sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==} - /react-helmet-async/1.2.3_sfoxds7t5ydpegc3knd667wn6m: - resolution: {integrity: sha512-mCk2silF53Tq/YaYdkl2sB+/tDoPnaxN7dFS/6ZLJb/rhUY2EWGI5Xj2b4jHppScMqY45MbgPSwTxDchKpZ5Kw==} + /react-helmet-async@1.3.0(react-dom@17.0.2)(react@17.0.2): + resolution: {integrity: sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg==} peerDependencies: - react: ^16.6.0 || ^17.0.0 - react-dom: ^16.6.0 || ^17.0.0 + react: ^16.6.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.6.0 || ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.17.8 + '@babel/runtime': 7.22.15 invariant: 2.2.4 prop-types: 15.8.1 react: 17.0.2 - react-dom: 17.0.2_react@17.0.2 - react-fast-compare: 3.2.0 + react-dom: 17.0.2(react@17.0.2) + react-fast-compare: 3.2.2 shallowequal: 1.1.0 - /react-is/16.13.1: + /react-is@16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} - /react-json-view/1.21.3_sfoxds7t5ydpegc3knd667wn6m: + /react-json-view@1.21.3(react-dom@17.0.2)(react@17.0.2): resolution: {integrity: sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw==} peerDependencies: react: ^17.0.0 || ^16.3.0 || ^15.5.4 react-dom: ^17.0.0 || ^16.3.0 || ^15.5.4 dependencies: - flux: 4.0.3_react@17.0.2 + flux: 4.0.4(react@17.0.2) react: 17.0.2 react-base16-styling: 0.6.0 - react-dom: 17.0.2_react@17.0.2 + react-dom: 17.0.2(react@17.0.2) react-lifecycles-compat: 3.0.4 - react-textarea-autosize: 8.3.3_react@17.0.2 + react-textarea-autosize: 8.5.3(react@17.0.2) transitivePeerDependencies: - '@types/react' - encoding dev: false - /react-lifecycles-compat/3.0.4: + /react-lifecycles-compat@3.0.4: resolution: {integrity: sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==} dev: false - /react-loadable-ssr-addon-v5-slorber/1.0.1_7rx3sysosxblb5ytgwvsqln3ni: + /react-loadable-ssr-addon-v5-slorber@1.0.1(@docusaurus/react-loadable@5.5.2)(webpack@5.88.2): resolution: {integrity: sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A==} engines: {node: '>=10.13.0'} peerDependencies: react-loadable: '*' webpack: '>=4.41.1 || 5.x' dependencies: - '@babel/runtime': 7.17.8 - react-loadable: /@docusaurus/react-loadable/5.5.2_react@17.0.2 - webpack: 5.70.0 + '@babel/runtime': 7.22.15 + react-loadable: /@docusaurus/react-loadable@5.5.2(react@17.0.2) + webpack: 5.88.2 dev: false - /react-router-config/5.1.1_eui4og74r262zsjriwu2mckbem: + /react-router-config@5.1.1(react-router@5.3.4)(react@17.0.2): resolution: {integrity: sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==} peerDependencies: react: '>=15' react-router: '>=5' dependencies: - '@babel/runtime': 7.17.8 + '@babel/runtime': 7.22.15 react: 17.0.2 - react-router: 5.2.1_react@17.0.2 + react-router: 5.3.4(react@17.0.2) dev: false - /react-router-dom/5.3.0_react@17.0.2: - resolution: {integrity: sha512-ObVBLjUZsphUUMVycibxgMdh5jJ1e3o+KpAZBVeHcNQZ4W+uUGGWsokurzlF4YOldQYRQL4y6yFRWM4m3svmuQ==} + /react-router-dom@5.3.4(react@17.0.2): + resolution: {integrity: sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==} peerDependencies: react: '>=15' dependencies: - '@babel/runtime': 7.17.8 + '@babel/runtime': 7.22.15 history: 4.10.1 loose-envify: 1.4.0 prop-types: 15.8.1 react: 17.0.2 - react-router: 5.2.1_react@17.0.2 - tiny-invariant: 1.2.0 + react-router: 5.3.4(react@17.0.2) + tiny-invariant: 1.3.1 tiny-warning: 1.0.3 dev: false - /react-router/5.2.1_react@17.0.2: - resolution: {integrity: sha512-lIboRiOtDLFdg1VTemMwud9vRVuOCZmUIT/7lUoZiSpPODiiH1UQlfXy+vPLC/7IWdFYnhRwAyNqA/+I7wnvKQ==} + /react-router@5.3.4(react@17.0.2): + resolution: {integrity: sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==} peerDependencies: react: '>=15' dependencies: - '@babel/runtime': 7.17.8 + '@babel/runtime': 7.22.15 history: 4.10.1 hoist-non-react-statics: 3.3.2 loose-envify: 1.4.0 - mini-create-react-context: 0.4.1_at7mkepldmzoo6silmqc5bca74 path-to-regexp: 1.8.0 prop-types: 15.8.1 react: 17.0.2 react-is: 16.13.1 - tiny-invariant: 1.2.0 + tiny-invariant: 1.3.1 tiny-warning: 1.0.3 dev: false - /react-textarea-autosize/8.3.3_react@17.0.2: - resolution: {integrity: sha512-2XlHXK2TDxS6vbQaoPbMOfQ8GK7+irc2fVK6QFIcC8GOnH3zI/v481n+j1L0WaPVvKxwesnY93fEfH++sus2rQ==} + /react-textarea-autosize@8.5.3(react@17.0.2): + resolution: {integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==} engines: {node: '>=10'} peerDependencies: - react: ^16.8.0 || ^17.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: - '@babel/runtime': 7.17.8 + '@babel/runtime': 7.22.15 react: 17.0.2 - use-composed-ref: 1.2.1_react@17.0.2 - use-latest: 1.2.0_react@17.0.2 + use-composed-ref: 1.3.0(react@17.0.2) + use-latest: 1.2.1(react@17.0.2) transitivePeerDependencies: - '@types/react' dev: false - /react/17.0.2: + /react@17.0.2: resolution: {integrity: sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==} engines: {node: '>=0.10.0'} dependencies: loose-envify: 1.4.0 object-assign: 4.1.1 - dev: false - /readable-stream/2.3.7: - resolution: {integrity: sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==} + /readable-stream@2.3.8: + resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} dependencies: core-util-is: 1.0.3 inherits: 2.0.4 @@ -7407,8 +7779,8 @@ packages: util-deprecate: 1.0.2 dev: false - /readable-stream/3.6.0: - resolution: {integrity: sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==} + /readable-stream@3.6.2: + resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} engines: {node: '>= 6'} dependencies: inherits: 2.0.4 @@ -7416,118 +7788,99 @@ packages: util-deprecate: 1.0.2 dev: false - /readdirp/3.6.0: + /readdirp@3.6.0: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} dependencies: picomatch: 2.3.1 dev: false - /reading-time/1.5.0: + /reading-time@1.5.0: resolution: {integrity: sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==} dev: false - /rechoir/0.6.2: - resolution: {integrity: sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=} + /rechoir@0.6.2: + resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} engines: {node: '>= 0.10'} dependencies: - resolve: 1.22.0 + resolve: 1.22.5 dev: false - /recursive-readdir/2.2.2: - resolution: {integrity: sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==} - engines: {node: '>=0.10.0'} + /recursive-readdir@2.2.3: + resolution: {integrity: sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==} + engines: {node: '>=6.0.0'} dependencies: - minimatch: 3.0.4 + minimatch: 3.1.2 dev: false - /regenerate-unicode-properties/10.0.1: - resolution: {integrity: sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==} + /regenerate-unicode-properties@10.1.1: + resolution: {integrity: sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==} engines: {node: '>=4'} dependencies: regenerate: 1.4.2 dev: false - /regenerate/1.4.2: + /regenerate@1.4.2: resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} dev: false - /regenerator-runtime/0.13.9: - resolution: {integrity: sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==} + /regenerator-runtime@0.14.0: + resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} - /regenerator-transform/0.14.5: - resolution: {integrity: sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==} + /regenerator-transform@0.15.2: + resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} dependencies: - '@babel/runtime': 7.17.8 + '@babel/runtime': 7.22.15 dev: false - /regexp.prototype.flags/1.4.1: - resolution: {integrity: sha512-pMR7hBVUUGI7PMA37m2ofIdQCsomVnas+Jn5UPGAHQ+/LlwKm/aTLJHdasmHRzlfeZwHiAOaRSo2rbBDm3nNUQ==} + /regexp.prototype.flags@1.5.1: + resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==} engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.3 + define-properties: 1.2.1 + set-function-name: 2.0.1 dev: false - /regexpu-core/5.0.1: - resolution: {integrity: sha512-CriEZlrKK9VJw/xQGJpQM5rY88BtuL8DM+AEwvcThHilbxiTAy8vq4iJnd2tqq8wLmjbGZzP7ZcKFjbGkmEFrw==} + /regexpu-core@5.3.2: + resolution: {integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==} engines: {node: '>=4'} dependencies: + '@babel/regjsgen': 0.8.0 regenerate: 1.4.2 - regenerate-unicode-properties: 10.0.1 - regjsgen: 0.6.0 - regjsparser: 0.8.4 + regenerate-unicode-properties: 10.1.1 + regjsparser: 0.9.1 unicode-match-property-ecmascript: 2.0.0 - unicode-match-property-value-ecmascript: 2.0.0 + unicode-match-property-value-ecmascript: 2.1.0 dev: false - /registry-auth-token/4.2.1: - resolution: {integrity: sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==} + /registry-auth-token@4.2.2: + resolution: {integrity: sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==} engines: {node: '>=6.0.0'} dependencies: rc: 1.2.8 dev: false - /registry-url/5.1.0: + /registry-url@5.1.0: resolution: {integrity: sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==} engines: {node: '>=8'} dependencies: rc: 1.2.8 dev: false - /regjsgen/0.6.0: - resolution: {integrity: sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==} - dev: false - - /regjsparser/0.8.4: - resolution: {integrity: sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==} + /regjsparser@0.9.1: + resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==} hasBin: true dependencies: jsesc: 0.5.0 dev: false - /rehype-parse/6.0.2: - resolution: {integrity: sha512-0S3CpvpTAgGmnz8kiCyFLGuW5yA4OQhyNTm/nwPopZ7+PI11WnGl1TTWTGv/2hPEe/g2jRLlhVVSsoDH8waRug==} - dependencies: - hast-util-from-parse5: 5.0.3 - parse5: 5.1.1 - xtend: 4.0.2 - dev: false - - /relateurl/0.2.7: - resolution: {integrity: sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=} + /relateurl@0.2.7: + resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==} engines: {node: '>= 0.10'} dev: false - /remark-admonitions/1.2.1: - resolution: {integrity: sha512-Ji6p68VDvD+H1oS95Fdx9Ar5WA2wcDA4kwrrhVU7fGctC6+d3uiMICu7w7/2Xld+lnU7/gi+432+rRbup5S8ow==} - dependencies: - rehype-parse: 6.0.2 - unified: 8.4.2 - unist-util-visit: 2.0.3 - dev: false - - /remark-emoji/2.2.0: + /remark-emoji@2.2.0: resolution: {integrity: sha512-P3cj9s5ggsUvWw5fS2uzCHJMGuXYRb0NnZqYlNecewXt8QBU9n5vW3DUUKOhepS8F9CwdMx9B8a3i7pqFWAI5w==} dependencies: emoticon: 3.2.0 @@ -7535,17 +7888,17 @@ packages: unist-util-visit: 2.0.3 dev: false - /remark-footnotes/2.0.0: + /remark-footnotes@2.0.0: resolution: {integrity: sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==} dev: false - /remark-mdx/1.6.22: + /remark-mdx@1.6.22: resolution: {integrity: sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==} dependencies: '@babel/core': 7.12.9 '@babel/helper-plugin-utils': 7.10.4 - '@babel/plugin-proposal-object-rest-spread': 7.12.1_@babel+core@7.12.9 - '@babel/plugin-syntax-jsx': 7.12.1_@babel+core@7.12.9 + '@babel/plugin-proposal-object-rest-spread': 7.12.1(@babel/core@7.12.9) + '@babel/plugin-syntax-jsx': 7.12.1(@babel/core@7.12.9) '@mdx-js/util': 1.6.22 is-alphabetical: 1.0.4 remark-parse: 8.0.3 @@ -7554,7 +7907,7 @@ packages: - supports-color dev: false - /remark-parse/8.0.3: + /remark-parse@8.0.3: resolution: {integrity: sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==} dependencies: ccount: 1.1.0 @@ -7575,186 +7928,208 @@ packages: xtend: 4.0.2 dev: false - /remark-squeeze-paragraphs/4.0.0: + /remark-squeeze-paragraphs@4.0.0: resolution: {integrity: sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==} dependencies: mdast-squeeze-paragraphs: 4.0.0 dev: false - /renderkid/3.0.0: + /renderkid@3.0.0: resolution: {integrity: sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==} dependencies: - css-select: 4.2.1 + css-select: 4.3.0 dom-converter: 0.2.0 htmlparser2: 6.1.0 lodash: 4.17.21 strip-ansi: 6.0.1 dev: false - /repeat-string/1.6.1: - resolution: {integrity: sha1-jcrkcOHIirwtYA//Sndihtp15jc=} + /repeat-string@1.6.1: + resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==} engines: {node: '>=0.10'} dev: false - /require-from-string/2.0.2: + /require-from-string@2.0.2: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} engines: {node: '>=0.10.0'} dev: false - /require-like/0.1.2: - resolution: {integrity: sha1-rW8wwTvs15cBDEaK+ndcDAprR/o=} + /require-like@0.1.2: + resolution: {integrity: sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==} dev: false - /requires-port/1.0.0: - resolution: {integrity: sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=} + /requires-port@1.0.0: + resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} dev: false - /resolve-from/4.0.0: + /resolve-from@4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} engines: {node: '>=4'} dev: false - /resolve-pathname/3.0.0: + /resolve-pathname@3.0.0: resolution: {integrity: sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==} dev: false - /resolve/1.22.0: - resolution: {integrity: sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==} + /resolve@1.22.5: + resolution: {integrity: sha512-qWhv7PF1V95QPvRoUGHxOtnAlEvlXBylMZcjUR9pAumMmveFtcHJRXGIr+TkjfNJVQypqv2qcDiiars2y1PsSg==} hasBin: true dependencies: - is-core-module: 2.8.1 + is-core-module: 2.13.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 dev: false - /responselike/1.0.2: - resolution: {integrity: sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=} + /responselike@1.0.2: + resolution: {integrity: sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==} dependencies: lowercase-keys: 1.0.1 dev: false - /retry/0.13.1: + /retry@0.13.1: resolution: {integrity: sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==} engines: {node: '>= 4'} dev: false - /reusify/1.0.4: + /reusify@1.0.4: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} dev: false - /rimraf/3.0.2: + /rimraf@3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} hasBin: true dependencies: - glob: 7.2.0 + glob: 7.2.3 dev: false - /rollup-plugin-terser/7.0.2_rollup@2.70.2: + /rollup-plugin-terser@7.0.2(rollup@2.79.1): resolution: {integrity: sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==} + deprecated: This package has been deprecated and is no longer maintained. Please use @rollup/plugin-terser peerDependencies: rollup: ^2.0.0 dependencies: - '@babel/code-frame': 7.16.7 + '@babel/code-frame': 7.22.13 jest-worker: 26.6.2 - rollup: 2.70.2 + rollup: 2.79.1 serialize-javascript: 4.0.0 - terser: 5.12.1 + terser: 5.19.4 dev: false - /rollup/2.70.2: - resolution: {integrity: sha512-EitogNZnfku65I1DD5Mxe8JYRUCy0hkK5X84IlDtUs+O6JRMpRciXTzyCUuX11b5L5pvjH+OmFXiQ3XjabcXgg==} + /rollup@2.79.1: + resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==} engines: {node: '>=10.0.0'} hasBin: true optionalDependencies: - fsevents: 2.3.2 + fsevents: 2.3.3 dev: false - /rtl-detect/1.0.4: + /rtl-detect@1.0.4: resolution: {integrity: sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ==} dev: false - /rtlcss/3.5.0: + /rtlcss@3.5.0: resolution: {integrity: sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==} hasBin: true dependencies: find-up: 5.0.0 picocolors: 1.0.0 - postcss: 8.4.12 + postcss: 8.4.29 strip-json-comments: 3.1.1 dev: false - /run-parallel/1.2.0: + /run-parallel@1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} dependencies: queue-microtask: 1.2.3 dev: false - /rxjs/7.5.5: - resolution: {integrity: sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==} + /rxjs@7.8.1: + resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} + dependencies: + tslib: 2.6.2 + dev: false + + /safe-array-concat@1.0.1: + resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} + engines: {node: '>=0.4'} dependencies: - tslib: 2.3.1 + call-bind: 1.0.2 + get-intrinsic: 1.2.1 + has-symbols: 1.0.3 + isarray: 2.0.5 dev: false - /safe-buffer/5.1.2: + /safe-buffer@5.1.2: resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} dev: false - /safe-buffer/5.2.1: + /safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - /safer-buffer/2.1.2: + /safe-regex-test@1.0.0: + resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} + dependencies: + call-bind: 1.0.2 + get-intrinsic: 1.2.1 + is-regex: 1.1.4 + dev: false + + /safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} dev: false - /sax/1.2.4: + /sax@1.2.4: resolution: {integrity: sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==} dev: false - /scheduler/0.20.2: + /scheduler@0.20.2: resolution: {integrity: sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==} dependencies: loose-envify: 1.4.0 object-assign: 4.1.1 - dev: false - /schema-utils/2.7.0: + /schema-utils@2.7.0: resolution: {integrity: sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==} engines: {node: '>= 8.9.0'} dependencies: - '@types/json-schema': 7.0.10 + '@types/json-schema': 7.0.12 ajv: 6.12.6 - ajv-keywords: 3.5.2_ajv@6.12.6 + ajv-keywords: 3.5.2(ajv@6.12.6) dev: false - /schema-utils/2.7.1: + /schema-utils@2.7.1: resolution: {integrity: sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==} engines: {node: '>= 8.9.0'} dependencies: - '@types/json-schema': 7.0.10 + '@types/json-schema': 7.0.12 ajv: 6.12.6 - ajv-keywords: 3.5.2_ajv@6.12.6 + ajv-keywords: 3.5.2(ajv@6.12.6) dev: false - /schema-utils/3.1.1: - resolution: {integrity: sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==} + /schema-utils@3.3.0: + resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==} engines: {node: '>= 10.13.0'} dependencies: - '@types/json-schema': 7.0.10 + '@types/json-schema': 7.0.12 ajv: 6.12.6 - ajv-keywords: 3.5.2_ajv@6.12.6 + ajv-keywords: 3.5.2(ajv@6.12.6) - /schema-utils/4.0.0: - resolution: {integrity: sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==} + /schema-utils@4.2.0: + resolution: {integrity: sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==} engines: {node: '>= 12.13.0'} dependencies: - '@types/json-schema': 7.0.10 - ajv: 8.10.0 - ajv-formats: 2.1.1 - ajv-keywords: 5.1.0_ajv@8.10.0 + '@types/json-schema': 7.0.12 + ajv: 8.12.0 + ajv-formats: 2.1.1(ajv@8.12.0) + ajv-keywords: 5.1.0(ajv@8.12.0) + dev: false + + /search-insights@2.8.2: + resolution: {integrity: sha512-PxA9M5Q2bpBelVvJ3oDZR8nuY00Z6qwOxL53wNpgzV28M/D6u9WUbImDckjLSILBF8F1hn/mgyuUaOPtjow4Qw==} dev: false - /section-matter/1.0.0: + /section-matter@1.0.0: resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==} engines: {node: '>=4'} dependencies: @@ -7762,94 +8137,89 @@ packages: kind-of: 6.0.3 dev: false - /select-hose/2.0.0: - resolution: {integrity: sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=} + /select-hose@2.0.0: + resolution: {integrity: sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==} dev: false - /selfsigned/2.0.0: - resolution: {integrity: sha512-cUdFiCbKoa1mZ6osuJs2uDHrs0k0oprsKveFiiaBKCNq3SYyb5gs2HxhQyDNLCmL51ZZThqi4YNDpCK6GOP1iQ==} + /selfsigned@2.1.1: + resolution: {integrity: sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==} engines: {node: '>=10'} dependencies: - node-forge: 1.3.0 + node-forge: 1.3.1 dev: false - /semver-diff/3.1.1: + /semver-diff@3.1.1: resolution: {integrity: sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==} engines: {node: '>=8'} dependencies: - semver: 6.3.0 - dev: false - - /semver/5.7.1: - resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==} - hasBin: true + semver: 6.3.1 dev: false - /semver/6.3.0: - resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==} + /semver@5.7.2: + resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} hasBin: true dev: false - /semver/7.0.0: - resolution: {integrity: sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==} + /semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true dev: false - /semver/7.3.5: - resolution: {integrity: sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==} + /semver@7.5.4: + resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} engines: {node: '>=10'} hasBin: true dependencies: lru-cache: 6.0.0 dev: false - /send/0.17.2: - resolution: {integrity: sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==} + /send@0.18.0: + resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} engines: {node: '>= 0.8.0'} dependencies: debug: 2.6.9 - depd: 1.1.2 - destroy: 1.0.4 + depd: 2.0.0 + destroy: 1.2.0 encodeurl: 1.0.2 escape-html: 1.0.3 etag: 1.8.1 fresh: 0.5.2 - http-errors: 1.8.1 + http-errors: 2.0.0 mime: 1.6.0 ms: 2.1.3 - on-finished: 2.3.0 + on-finished: 2.4.1 range-parser: 1.2.1 - statuses: 1.5.0 + statuses: 2.0.1 transitivePeerDependencies: - supports-color dev: false - /serialize-javascript/4.0.0: + /serialize-javascript@4.0.0: resolution: {integrity: sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==} dependencies: randombytes: 2.1.0 dev: false - /serialize-javascript/6.0.0: - resolution: {integrity: sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==} + /serialize-javascript@6.0.1: + resolution: {integrity: sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==} dependencies: randombytes: 2.1.0 - /serve-handler/6.1.3: - resolution: {integrity: sha512-FosMqFBNrLyeiIDvP1zgO6YoTzFYHxLDEIavhlmQ+knB2Z7l1t+kGLHkZIDN7UVWqQAmKI3D20A6F6jo3nDd4w==} + /serve-handler@6.1.5: + resolution: {integrity: sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==} dependencies: bytes: 3.0.0 content-disposition: 0.5.2 fast-url-parser: 1.1.3 mime-types: 2.1.18 - minimatch: 3.0.4 + minimatch: 3.1.2 path-is-inside: 1.0.2 path-to-regexp: 2.2.1 range-parser: 1.2.0 dev: false - /serve-index/1.9.1: - resolution: {integrity: sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=} + /serve-index@1.9.1: + resolution: {integrity: sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==} engines: {node: '>= 0.8.0'} dependencies: accepts: 1.3.8 @@ -7863,112 +8233,121 @@ packages: - supports-color dev: false - /serve-static/1.14.2: - resolution: {integrity: sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==} + /serve-static@1.15.0: + resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==} engines: {node: '>= 0.8.0'} dependencies: encodeurl: 1.0.2 escape-html: 1.0.3 parseurl: 1.3.3 - send: 0.17.2 + send: 0.18.0 transitivePeerDependencies: - supports-color dev: false - /setimmediate/1.0.5: - resolution: {integrity: sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=} + /set-function-name@2.0.1: + resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} + engines: {node: '>= 0.4'} + dependencies: + define-data-property: 1.1.0 + functions-have-names: 1.2.3 + has-property-descriptors: 1.0.0 + dev: false + + /setimmediate@1.0.5: + resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} dev: false - /setprototypeof/1.1.0: + /setprototypeof@1.1.0: resolution: {integrity: sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==} dev: false - /setprototypeof/1.2.0: + /setprototypeof@1.2.0: resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} dev: false - /shallow-clone/3.0.1: + /shallow-clone@3.0.1: resolution: {integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==} engines: {node: '>=8'} dependencies: kind-of: 6.0.3 - /shallowequal/1.1.0: + /shallowequal@1.1.0: resolution: {integrity: sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==} - /shebang-command/2.0.0: + /shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} dependencies: shebang-regex: 3.0.0 dev: false - /shebang-regex/3.0.0: + /shebang-regex@3.0.0: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} dev: false - /shell-quote/1.7.3: - resolution: {integrity: sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==} + /shell-quote@1.8.1: + resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} dev: false - /shelljs/0.8.5: + /shelljs@0.8.5: resolution: {integrity: sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==} engines: {node: '>=4'} hasBin: true dependencies: - glob: 7.2.0 + glob: 7.2.3 interpret: 1.4.0 rechoir: 0.6.2 dev: false - /side-channel/1.0.4: + /side-channel@1.0.4: resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} dependencies: call-bind: 1.0.2 - get-intrinsic: 1.1.1 - object-inspect: 1.12.0 + get-intrinsic: 1.2.1 + object-inspect: 1.12.3 dev: false - /signal-exit/3.0.7: + /signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} dev: false - /sirv/1.0.19: - resolution: {integrity: sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==} + /sirv@2.0.3: + resolution: {integrity: sha512-O9jm9BsID1P+0HOi81VpXPoDxYP374pkOLzACAoyUQ/3OUVndNpsz6wMnY2z+yOxzbllCKZrM+9QrWsv4THnyA==} engines: {node: '>= 10'} dependencies: - '@polka/url': 1.0.0-next.21 - mrmime: 1.0.0 - totalist: 1.1.0 + '@polka/url': 1.0.0-next.23 + mrmime: 1.0.1 + totalist: 3.0.1 dev: false - /sisteransi/1.0.5: + /sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} dev: false - /sitemap/7.1.1: + /sitemap@7.1.1: resolution: {integrity: sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg==} engines: {node: '>=12.0.0', npm: '>=5.6.0'} hasBin: true dependencies: - '@types/node': 17.0.22 + '@types/node': 17.0.45 '@types/sax': 1.2.4 - arg: 5.0.1 + arg: 5.0.2 sax: 1.2.4 dev: false - /slash/3.0.0: + /slash@3.0.0: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} dev: false - /slash/4.0.0: + /slash@4.0.0: resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} engines: {node: '>=12'} dev: false - /sockjs/0.3.24: + /sockjs@0.3.24: resolution: {integrity: sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==} dependencies: faye-websocket: 0.11.4 @@ -7976,68 +8355,61 @@ packages: websocket-driver: 0.7.4 dev: false - /sort-css-media-queries/2.0.4: - resolution: {integrity: sha512-PAIsEK/XupCQwitjv7XxoMvYhT7EAfyzI3hsy/MyDgTvc+Ft55ctdkctJLOy6cQejaIC+zjpUL4djFVm2ivOOw==} + /sort-css-media-queries@2.1.0: + resolution: {integrity: sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==} engines: {node: '>= 6.3.0'} dev: false - /source-list-map/2.0.1: - resolution: {integrity: sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==} - dev: false - - /source-map-js/1.0.2: + /source-map-js@1.0.2: resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} engines: {node: '>=0.10.0'} dev: false - /source-map-support/0.5.21: + /source-map-support@0.5.21: resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} dependencies: buffer-from: 1.1.2 source-map: 0.6.1 - /source-map/0.5.7: - resolution: {integrity: sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=} + /source-map@0.5.7: + resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} engines: {node: '>=0.10.0'} dev: false - /source-map/0.6.1: + /source-map@0.6.1: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} engines: {node: '>=0.10.0'} - /source-map/0.7.3: - resolution: {integrity: sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==} - engines: {node: '>= 8'} - - /source-map/0.8.0-beta.0: + /source-map@0.8.0-beta.0: resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} engines: {node: '>= 8'} dependencies: whatwg-url: 7.1.0 dev: false - /sourcemap-codec/1.4.8: + /sourcemap-codec@1.4.8: resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} + deprecated: Please use @jridgewell/sourcemap-codec instead dev: false - /space-separated-tokens/1.1.5: + /space-separated-tokens@1.1.5: resolution: {integrity: sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==} dev: false - /spdy-transport/3.0.0: + /spdy-transport@3.0.0: resolution: {integrity: sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==} dependencies: debug: 4.3.4 detect-node: 2.1.0 hpack.js: 2.1.6 obuf: 1.1.2 - readable-stream: 3.6.0 + readable-stream: 3.6.2 wbuf: 1.7.3 transitivePeerDependencies: - supports-color dev: false - /spdy/4.0.2: + /spdy@4.0.2: resolution: {integrity: sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==} engines: {node: '>=6.0.0'} dependencies: @@ -8050,28 +8422,34 @@ packages: - supports-color dev: false - /sprintf-js/1.0.3: - resolution: {integrity: sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=} + /sprintf-js@1.0.3: + resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} dev: false - /stable/0.1.8: + /stable@0.1.8: resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==} + deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility' dev: false - /state-toggle/1.0.3: + /state-toggle@1.0.3: resolution: {integrity: sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==} dev: false - /statuses/1.5.0: - resolution: {integrity: sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=} + /statuses@1.5.0: + resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} engines: {node: '>= 0.6'} dev: false - /std-env/3.0.1: - resolution: {integrity: sha512-mC1Ps9l77/97qeOZc+HrOL7TIaOboHqMZ24dGVQrlxFcpPpfCHpH+qfUT7Dz+6mlG8+JPA1KfBQo19iC/+Ngcw==} + /statuses@2.0.1: + resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} + engines: {node: '>= 0.8'} + dev: false + + /std-env@3.4.3: + resolution: {integrity: sha512-f9aPhy8fYBuMN+sNfakZV18U39PbalgjXG3lLB9WkaYTxijru61wb57V9wxxNthXM5Sd88ETBWi29qLAsHO52Q==} dev: false - /string-width/4.2.3: + /string-width@4.2.3: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} dependencies: @@ -8080,55 +8458,67 @@ packages: strip-ansi: 6.0.1 dev: false - /string-width/5.1.2: + /string-width@5.1.2: resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} engines: {node: '>=12'} dependencies: eastasianwidth: 0.2.0 emoji-regex: 9.2.2 - strip-ansi: 7.0.1 + strip-ansi: 7.1.0 dev: false - /string.prototype.matchall/4.0.7: - resolution: {integrity: sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==} + /string.prototype.matchall@4.0.10: + resolution: {integrity: sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==} dependencies: call-bind: 1.0.2 - define-properties: 1.1.3 - es-abstract: 1.19.5 - get-intrinsic: 1.1.1 + define-properties: 1.2.1 + es-abstract: 1.22.2 + get-intrinsic: 1.2.1 has-symbols: 1.0.3 - internal-slot: 1.0.3 - regexp.prototype.flags: 1.4.1 + internal-slot: 1.0.5 + regexp.prototype.flags: 1.5.1 + set-function-name: 2.0.1 side-channel: 1.0.4 dev: false - /string.prototype.trimend/1.0.4: - resolution: {integrity: sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==} + /string.prototype.trim@1.2.8: + resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.1 + es-abstract: 1.22.2 + dev: false + + /string.prototype.trimend@1.0.7: + resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==} dependencies: call-bind: 1.0.2 - define-properties: 1.1.3 + define-properties: 1.2.1 + es-abstract: 1.22.2 dev: false - /string.prototype.trimstart/1.0.4: - resolution: {integrity: sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==} + /string.prototype.trimstart@1.0.7: + resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==} dependencies: call-bind: 1.0.2 - define-properties: 1.1.3 + define-properties: 1.2.1 + es-abstract: 1.22.2 dev: false - /string_decoder/1.1.1: + /string_decoder@1.1.1: resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} dependencies: safe-buffer: 5.1.2 dev: false - /string_decoder/1.3.0: + /string_decoder@1.3.0: resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} dependencies: safe-buffer: 5.2.1 dev: false - /stringify-object/3.3.0: + /stringify-object@3.3.0: resolution: {integrity: sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==} engines: {node: '>=4'} dependencies: @@ -8137,120 +8527,120 @@ packages: is-regexp: 1.0.0 dev: false - /strip-ansi/6.0.1: + /strip-ansi@6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} dependencies: ansi-regex: 5.0.1 dev: false - /strip-ansi/7.0.1: - resolution: {integrity: sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==} + /strip-ansi@7.1.0: + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} engines: {node: '>=12'} dependencies: ansi-regex: 6.0.1 dev: false - /strip-bom-string/1.0.0: - resolution: {integrity: sha1-5SEekiQ2n7uB1jOi8ABE3IztrZI=} + /strip-bom-string@1.0.0: + resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==} engines: {node: '>=0.10.0'} dev: false - /strip-comments/2.0.1: + /strip-comments@2.0.1: resolution: {integrity: sha512-ZprKx+bBLXv067WTCALv8SSz5l2+XhpYCsVtSqlMnkAXMWDq+/ekVbl1ghqP9rUHTzv6sm/DwCOiYutU/yp1fw==} engines: {node: '>=10'} dev: false - /strip-final-newline/2.0.0: + /strip-final-newline@2.0.0: resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} engines: {node: '>=6'} dev: false - /strip-json-comments/2.0.1: - resolution: {integrity: sha1-PFMZQukIwml8DsNEhYwobHygpgo=} + /strip-json-comments@2.0.1: + resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} engines: {node: '>=0.10.0'} dev: false - /strip-json-comments/3.1.1: + /strip-json-comments@3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} dev: false - /style-to-object/0.3.0: + /style-to-object@0.3.0: resolution: {integrity: sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==} dependencies: inline-style-parser: 0.1.1 dev: false - /stylehacks/5.1.0_postcss@8.4.12: - resolution: {integrity: sha512-SzLmvHQTrIWfSgljkQCw2++C9+Ne91d/6Sp92I8c5uHTcy/PgeHamwITIbBW9wnFTY/3ZfSXR9HIL6Ikqmcu6Q==} + /stylehacks@5.1.1(postcss@8.4.29): + resolution: {integrity: sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.20.2 - postcss: 8.4.12 - postcss-selector-parser: 6.0.9 + browserslist: 4.21.10 + postcss: 8.4.29 + postcss-selector-parser: 6.0.13 dev: false - /supports-color/5.5.0: + /supports-color@5.5.0: resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} engines: {node: '>=4'} dependencies: has-flag: 3.0.0 dev: false - /supports-color/7.2.0: + /supports-color@7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} engines: {node: '>=8'} dependencies: has-flag: 4.0.0 dev: false - /supports-color/8.1.1: + /supports-color@8.1.1: resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} engines: {node: '>=10'} dependencies: has-flag: 4.0.0 - /supports-preserve-symlinks-flag/1.0.0: + /supports-preserve-symlinks-flag@1.0.0: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} dev: false - /svg-parser/2.0.4: + /svg-parser@2.0.4: resolution: {integrity: sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==} dev: false - /svgo/2.8.0: + /svgo@2.8.0: resolution: {integrity: sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==} engines: {node: '>=10.13.0'} hasBin: true dependencies: '@trysound/sax': 0.2.0 commander: 7.2.0 - css-select: 4.2.1 + css-select: 4.3.0 css-tree: 1.1.3 csso: 4.2.0 picocolors: 1.0.0 stable: 0.1.8 dev: false - /tapable/1.1.3: + /tapable@1.1.3: resolution: {integrity: sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==} engines: {node: '>=6'} dev: false - /tapable/2.2.1: + /tapable@2.2.1: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} engines: {node: '>=6'} - /temp-dir/2.0.0: + /temp-dir@2.0.0: resolution: {integrity: sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==} engines: {node: '>=8'} dev: false - /tempy/0.6.0: + /tempy@0.6.0: resolution: {integrity: sha512-G13vtMYPT/J8A4X2SjdtBTphZlrp1gKv6hZiOjw14RCWg6GbHuQBGtjlx75xLbYV/wEc0D7G5K4rxKP/cXk8Bw==} engines: {node: '>=10'} dependencies: @@ -8260,8 +8650,8 @@ packages: unique-string: 2.0.0 dev: false - /terser-webpack-plugin/5.3.1_webpack@5.70.0: - resolution: {integrity: sha512-GvlZdT6wPQKbDNW/GDQzZFg/j4vKU96yl2q6mcUkzKOgW4gwf1Z8cZToUCrz31XHlPWH8MVb1r2tFtdDtTGJ7g==} + /terser-webpack-plugin@5.3.9(webpack@5.88.2): + resolution: {integrity: sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==} engines: {node: '>= 10.13.0'} peerDependencies: '@swc/core': '*' @@ -8276,94 +8666,91 @@ packages: uglify-js: optional: true dependencies: + '@jridgewell/trace-mapping': 0.3.19 jest-worker: 27.5.1 - schema-utils: 3.1.1 - serialize-javascript: 6.0.0 - source-map: 0.6.1 - terser: 5.12.1 - webpack: 5.70.0 + schema-utils: 3.3.0 + serialize-javascript: 6.0.1 + terser: 5.19.4 + webpack: 5.88.2 - /terser/5.12.1: - resolution: {integrity: sha512-NXbs+7nisos5E+yXwAD+y7zrcTkMqb0dEJxIGtSKPdCBzopf7ni4odPul2aechpV7EXNvOudYOX2bb5tln1jbQ==} + /terser@5.19.4: + resolution: {integrity: sha512-6p1DjHeuluwxDXcuT9VR8p64klWJKo1ILiy19s6C9+0Bh2+NWTX6nD9EPppiER4ICkHDVB1RkVpin/YW2nQn/g==} engines: {node: '>=10'} hasBin: true dependencies: - acorn: 8.7.0 + '@jridgewell/source-map': 0.3.5 + acorn: 8.10.0 commander: 2.20.3 - source-map: 0.7.3 source-map-support: 0.5.21 - /text-table/0.2.0: - resolution: {integrity: sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=} + /text-table@0.2.0: + resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} dev: false - /thunky/1.1.0: + /thunky@1.1.0: resolution: {integrity: sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==} dev: false - /timsort/0.3.0: - resolution: {integrity: sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=} + /tiny-invariant@1.3.1: + resolution: {integrity: sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==} dev: false - /tiny-invariant/1.2.0: - resolution: {integrity: sha512-1Uhn/aqw5C6RI4KejVeTg6mIS7IqxnLJ8Mv2tV5rTc0qWobay7pDUz6Wi392Cnc8ak1H0F2cjoRzb2/AW4+Fvg==} - dev: false - - /tiny-warning/1.0.3: + /tiny-warning@1.0.3: resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==} dev: false - /to-fast-properties/2.0.0: - resolution: {integrity: sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=} + /to-fast-properties@2.0.0: + resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} dev: false - /to-readable-stream/1.0.0: + /to-readable-stream@1.0.0: resolution: {integrity: sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==} engines: {node: '>=6'} dev: false - /to-regex-range/5.0.1: + /to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} dependencies: is-number: 7.0.0 dev: false - /toidentifier/1.0.1: + /toidentifier@1.0.1: resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} engines: {node: '>=0.6'} dev: false - /totalist/1.1.0: - resolution: {integrity: sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==} + /totalist@3.0.1: + resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} engines: {node: '>=6'} dev: false - /tr46/0.0.3: - resolution: {integrity: sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=} + /tr46@0.0.3: + resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} dev: false - /tr46/1.0.1: - resolution: {integrity: sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=} + /tr46@1.0.1: + resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} dependencies: - punycode: 2.1.1 + punycode: 2.3.0 dev: false - /trim-trailing-lines/1.1.4: + /trim-trailing-lines@1.1.4: resolution: {integrity: sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==} dev: false - /trim/0.0.1: - resolution: {integrity: sha1-WFhUf2spB1fulczMZm+1AITEYN0=} + /trim@0.0.1: + resolution: {integrity: sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==} + deprecated: Use String.prototype.trim() instead dev: false - /trough/1.0.5: + /trough@1.0.5: resolution: {integrity: sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==} dev: false - /ts-node/10.7.0_typescript@4.6.2: - resolution: {integrity: sha512-TbIGS4xgJoX2i3do417KSaep1uRAW/Lu+WAL2doDHC0D6ummjirVOXU5/7aiZotbQ5p1Zp9tP7U6cYhA0O7M8A==} + /ts-node@10.9.1(@types/node@20.6.1)(typescript@4.9.5): + resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} hasBin: true peerDependencies: '@swc/core': '>=1.2.50' @@ -8376,42 +8763,43 @@ packages: '@swc/wasm': optional: true dependencies: - '@cspotcode/source-map-support': 0.7.0 - '@tsconfig/node10': 1.0.8 - '@tsconfig/node12': 1.0.9 - '@tsconfig/node14': 1.0.1 - '@tsconfig/node16': 1.0.2 - acorn: 8.7.0 + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.9 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 20.6.1 + acorn: 8.10.0 acorn-walk: 8.2.0 arg: 4.1.3 create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 4.6.2 + typescript: 4.9.5 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 dev: true - /tslib/2.3.1: - resolution: {integrity: sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==} + /tslib@2.6.2: + resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} dev: false - /type-fest/0.16.0: + /type-fest@0.16.0: resolution: {integrity: sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg==} engines: {node: '>=10'} dev: false - /type-fest/0.20.2: + /type-fest@0.20.2: resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} engines: {node: '>=10'} dev: false - /type-fest/2.12.1: - resolution: {integrity: sha512-AiknQSEqKVGDDjtZqeKrUoTlcj7FKhupmnVUgz6KoOKtvMwRGE6hUNJ/nVear+h7fnUPO1q/htSkYKb1pyntkQ==} + /type-fest@2.19.0: + resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} engines: {node: '>=12.20'} dev: false - /type-is/1.6.18: + /type-is@1.6.18: resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} engines: {node: '>= 0.6'} dependencies: @@ -8419,74 +8807,114 @@ packages: mime-types: 2.1.35 dev: false - /typedarray-to-buffer/3.1.5: + /typed-array-buffer@1.0.0: + resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + get-intrinsic: 1.2.1 + is-typed-array: 1.1.12 + dev: false + + /typed-array-byte-length@1.0.0: + resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + for-each: 0.3.3 + has-proto: 1.0.1 + is-typed-array: 1.1.12 + dev: false + + /typed-array-byte-offset@1.0.0: + resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} + engines: {node: '>= 0.4'} + dependencies: + available-typed-arrays: 1.0.5 + call-bind: 1.0.2 + for-each: 0.3.3 + has-proto: 1.0.1 + is-typed-array: 1.1.12 + dev: false + + /typed-array-length@1.0.4: + resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} + dependencies: + call-bind: 1.0.2 + for-each: 0.3.3 + is-typed-array: 1.1.12 + dev: false + + /typedarray-to-buffer@3.1.5: resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==} dependencies: is-typedarray: 1.0.0 dev: false - /typescript/4.6.2: - resolution: {integrity: sha512-HM/hFigTBHZhLXshn9sN37H085+hQGeJHJ/X7LpBWLID/fbc2acUMfU+lGD98X81sKP+pFa9f0DZmCwB9GnbAg==} + /typescript@4.9.5: + resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} engines: {node: '>=4.2.0'} hasBin: true - dev: true - /ua-parser-js/0.7.31: - resolution: {integrity: sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==} + /ua-parser-js@1.0.36: + resolution: {integrity: sha512-znuyCIXzl8ciS3+y3fHJI/2OhQIXbXw9MWC/o3qwyR+RGppjZHrM27CGFSKCJXi2Kctiz537iOu2KnXs1lMQhw==} dev: false - /unbox-primitive/1.0.1: - resolution: {integrity: sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==} + /unbox-primitive@1.0.2: + resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} dependencies: - function-bind: 1.1.1 + call-bind: 1.0.2 has-bigints: 1.0.2 has-symbols: 1.0.3 which-boxed-primitive: 1.0.2 dev: false - /unherit/1.1.3: + /unherit@1.1.3: resolution: {integrity: sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==} dependencies: inherits: 2.0.4 xtend: 4.0.2 dev: false - /unicode-canonical-property-names-ecmascript/2.0.0: + /unicode-canonical-property-names-ecmascript@2.0.0: resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} engines: {node: '>=4'} dev: false - /unicode-match-property-ecmascript/2.0.0: + /unicode-match-property-ecmascript@2.0.0: resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==} engines: {node: '>=4'} dependencies: unicode-canonical-property-names-ecmascript: 2.0.0 - unicode-property-aliases-ecmascript: 2.0.0 + unicode-property-aliases-ecmascript: 2.1.0 dev: false - /unicode-match-property-value-ecmascript/2.0.0: - resolution: {integrity: sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==} + /unicode-match-property-value-ecmascript@2.1.0: + resolution: {integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==} engines: {node: '>=4'} dev: false - /unicode-property-aliases-ecmascript/2.0.0: - resolution: {integrity: sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==} + /unicode-property-aliases-ecmascript@2.1.0: + resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} engines: {node: '>=4'} dev: false - /unified/8.4.2: - resolution: {integrity: sha512-JCrmN13jI4+h9UAyKEoGcDZV+i1E7BLFuG7OsaDvTXI5P0qhHX+vZO/kOhz9jn8HGENDKbwSeB0nVOg4gVStGA==} + /unified@9.2.0: + resolution: {integrity: sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==} dependencies: + '@types/unist': 2.0.8 bail: 1.0.5 extend: 3.0.2 + is-buffer: 2.0.5 is-plain-obj: 2.1.0 trough: 1.0.5 vfile: 4.2.1 dev: false - /unified/9.2.0: - resolution: {integrity: sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==} + /unified@9.2.2: + resolution: {integrity: sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==} dependencies: + '@types/unist': 2.0.8 bail: 1.0.5 extend: 3.0.2 is-buffer: 2.0.5 @@ -8495,78 +8923,88 @@ packages: vfile: 4.2.1 dev: false - /unique-string/2.0.0: + /unique-string@2.0.0: resolution: {integrity: sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==} engines: {node: '>=8'} dependencies: crypto-random-string: 2.0.0 dev: false - /unist-builder/2.0.3: + /unist-builder@2.0.3: resolution: {integrity: sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==} dev: false - /unist-util-generated/1.1.6: + /unist-util-generated@1.1.6: resolution: {integrity: sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==} dev: false - /unist-util-is/4.1.0: + /unist-util-is@4.1.0: resolution: {integrity: sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==} dev: false - /unist-util-position/3.1.0: + /unist-util-position@3.1.0: resolution: {integrity: sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==} dev: false - /unist-util-remove-position/2.0.1: + /unist-util-remove-position@2.0.1: resolution: {integrity: sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==} dependencies: unist-util-visit: 2.0.3 dev: false - /unist-util-remove/2.1.0: + /unist-util-remove@2.1.0: resolution: {integrity: sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==} dependencies: unist-util-is: 4.1.0 dev: false - /unist-util-stringify-position/2.0.3: + /unist-util-stringify-position@2.0.3: resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==} dependencies: - '@types/unist': 2.0.6 + '@types/unist': 2.0.8 dev: false - /unist-util-visit-parents/3.1.1: + /unist-util-visit-parents@3.1.1: resolution: {integrity: sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==} dependencies: - '@types/unist': 2.0.6 + '@types/unist': 2.0.8 unist-util-is: 4.1.0 dev: false - /unist-util-visit/2.0.3: + /unist-util-visit@2.0.3: resolution: {integrity: sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==} dependencies: - '@types/unist': 2.0.6 + '@types/unist': 2.0.8 unist-util-is: 4.1.0 unist-util-visit-parents: 3.1.1 dev: false - /universalify/2.0.0: + /universalify@2.0.0: resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} engines: {node: '>= 10.0.0'} dev: false - /unpipe/1.0.0: - resolution: {integrity: sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=} + /unpipe@1.0.0: + resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} engines: {node: '>= 0.8'} dev: false - /upath/1.2.0: + /upath@1.2.0: resolution: {integrity: sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==} engines: {node: '>=4'} dev: false - /update-notifier/5.1.0: + /update-browserslist-db@1.0.11(browserslist@4.21.10): + resolution: {integrity: sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + dependencies: + browserslist: 4.21.10 + escalade: 3.1.1 + picocolors: 1.0.0 + + /update-notifier@5.1.0: resolution: {integrity: sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==} engines: {node: '>=10'} dependencies: @@ -8581,17 +9019,17 @@ packages: is-yarn-global: 0.3.0 latest-version: 5.1.0 pupa: 2.1.1 - semver: 7.3.5 + semver: 7.5.4 semver-diff: 3.1.1 xdg-basedir: 4.0.0 dev: false - /uri-js/4.4.1: + /uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: - punycode: 2.1.1 + punycode: 2.3.0 - /url-loader/4.1.1_plzek67nbn24rjxjp577ruq77e: + /url-loader@4.1.1(file-loader@6.2.0)(webpack@5.88.2): resolution: {integrity: sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==} engines: {node: '>= 10.13.0'} peerDependencies: @@ -8601,33 +9039,33 @@ packages: file-loader: optional: true dependencies: - file-loader: 6.2.0_webpack@5.70.0 - loader-utils: 2.0.2 + file-loader: 6.2.0(webpack@5.88.2) + loader-utils: 2.0.4 mime-types: 2.1.35 - schema-utils: 3.1.1 - webpack: 5.70.0 + schema-utils: 3.3.0 + webpack: 5.88.2 dev: false - /url-parse-lax/3.0.0: - resolution: {integrity: sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=} + /url-parse-lax@3.0.0: + resolution: {integrity: sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==} engines: {node: '>=4'} dependencies: prepend-http: 2.0.0 dev: false - /use-composed-ref/1.2.1_react@17.0.2: - resolution: {integrity: sha512-6+X1FLlIcjvFMAeAD/hcxDT8tmyrWnbSPMU0EnxQuDLIxokuFzWliXBiYZuGIx+mrAMLBw0WFfCkaPw8ebzAhw==} + /use-composed-ref@1.3.0(react@17.0.2): + resolution: {integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==} peerDependencies: - react: ^16.8.0 || ^17.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: react: 17.0.2 dev: false - /use-isomorphic-layout-effect/1.1.1_react@17.0.2: - resolution: {integrity: sha512-L7Evj8FGcwo/wpbv/qvSfrkHFtOpCzvM5yl2KVyDJoylVuSvzphiiasmjgQPttIGBAy2WKiBNR98q8w7PiNgKQ==} + /use-isomorphic-layout-effect@1.1.2(react@17.0.2): + resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} peerDependencies: '@types/react': '*' - react: ^16.8.0 || ^17.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: '@types/react': optional: true @@ -8635,188 +9073,206 @@ packages: react: 17.0.2 dev: false - /use-latest/1.2.0_react@17.0.2: - resolution: {integrity: sha512-d2TEuG6nSLKQLAfW3By8mKr8HurOlTkul0sOpxbClIv4SQ4iOd7BYr7VIzdbktUCnv7dua/60xzd8igMU6jmyw==} + /use-latest@1.2.1(react@17.0.2): + resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} peerDependencies: '@types/react': '*' - react: ^16.8.0 || ^17.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 peerDependenciesMeta: '@types/react': optional: true dependencies: react: 17.0.2 - use-isomorphic-layout-effect: 1.1.1_react@17.0.2 + use-isomorphic-layout-effect: 1.1.2(react@17.0.2) + dev: false + + /use-sync-external-store@1.2.0(react@17.0.2): + resolution: {integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + dependencies: + react: 17.0.2 dev: false - /util-deprecate/1.0.2: - resolution: {integrity: sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=} + /util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} dev: false - /utila/0.4.0: - resolution: {integrity: sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=} + /utila@0.4.0: + resolution: {integrity: sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==} dev: false - /utility-types/3.10.0: + /utility-types@3.10.0: resolution: {integrity: sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==} engines: {node: '>= 4'} - /utils-merge/1.0.1: - resolution: {integrity: sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=} + /utils-merge@1.0.1: + resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} engines: {node: '>= 0.4.0'} dev: false - /uuid/8.3.2: + /uuid@8.3.2: resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} hasBin: true dev: false - /v8-compile-cache-lib/3.0.1: + /v8-compile-cache-lib@3.0.1: resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} dev: true - /value-equal/1.0.1: + /value-equal@1.0.1: resolution: {integrity: sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==} dev: false - /vary/1.1.2: - resolution: {integrity: sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=} + /vary@1.1.2: + resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} engines: {node: '>= 0.8'} dev: false - /vfile-location/3.2.0: + /vfile-location@3.2.0: resolution: {integrity: sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==} dev: false - /vfile-message/2.0.4: + /vfile-message@2.0.4: resolution: {integrity: sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==} dependencies: - '@types/unist': 2.0.6 + '@types/unist': 2.0.8 unist-util-stringify-position: 2.0.3 dev: false - /vfile/4.2.1: + /vfile@4.2.1: resolution: {integrity: sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==} dependencies: - '@types/unist': 2.0.6 + '@types/unist': 2.0.8 is-buffer: 2.0.5 unist-util-stringify-position: 2.0.3 vfile-message: 2.0.4 dev: false - /wait-on/6.0.1: + /wait-on@6.0.1: resolution: {integrity: sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==} engines: {node: '>=10.0.0'} hasBin: true dependencies: axios: 0.25.0 - joi: 17.6.0 + joi: 17.10.1 lodash: 4.17.21 - minimist: 1.2.6 - rxjs: 7.5.5 + minimist: 1.2.8 + rxjs: 7.8.1 transitivePeerDependencies: - debug dev: false - /watchpack/2.3.1: - resolution: {integrity: sha512-x0t0JuydIo8qCNctdDrn1OzH/qDzk2+rdCOC3YzumZ42fiMqmQ7T3xQurykYMhYfHaPHTp4ZxAx2NfUo1K6QaA==} + /watchpack@2.4.0: + resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==} engines: {node: '>=10.13.0'} dependencies: glob-to-regexp: 0.4.1 - graceful-fs: 4.2.9 + graceful-fs: 4.2.11 - /wbuf/1.7.3: + /wbuf@1.7.3: resolution: {integrity: sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==} dependencies: minimalistic-assert: 1.0.1 dev: false - /web-namespaces/1.1.4: + /web-namespaces@1.1.4: resolution: {integrity: sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==} dev: false - /webidl-conversions/3.0.1: - resolution: {integrity: sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=} + /webidl-conversions@3.0.1: + resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} dev: false - /webidl-conversions/4.0.2: + /webidl-conversions@4.0.2: resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} dev: false - /webpack-bundle-analyzer/4.5.0: - resolution: {integrity: sha512-GUMZlM3SKwS8Z+CKeIFx7CVoHn3dXFcUAjT/dcZQQmfSZGvitPfMob2ipjai7ovFFqPvTqkEZ/leL4O0YOdAYQ==} + /webpack-bundle-analyzer@4.9.1: + resolution: {integrity: sha512-jnd6EoYrf9yMxCyYDPj8eutJvtjQNp8PHmni/e/ulydHBWhT5J3menXt3HEkScsu9YqMAcG4CfFjs3rj5pVU1w==} engines: {node: '>= 10.13.0'} hasBin: true dependencies: - acorn: 8.7.0 + '@discoveryjs/json-ext': 0.5.7 + acorn: 8.10.0 acorn-walk: 8.2.0 - chalk: 4.1.2 commander: 7.2.0 + escape-string-regexp: 4.0.0 gzip-size: 6.0.0 - lodash: 4.17.21 + is-plain-object: 5.0.0 + lodash.debounce: 4.0.8 + lodash.escape: 4.0.1 + lodash.flatten: 4.4.0 + lodash.invokemap: 4.6.0 + lodash.pullall: 4.2.0 + lodash.uniqby: 4.7.0 opener: 1.5.2 - sirv: 1.0.19 - ws: 7.5.7 + picocolors: 1.0.0 + sirv: 2.0.3 + ws: 7.5.9 transitivePeerDependencies: - bufferutil - utf-8-validate dev: false - /webpack-dev-middleware/5.3.1_webpack@5.70.0: - resolution: {integrity: sha512-81EujCKkyles2wphtdrnPg/QqegC/AtqNH//mQkBYSMqwFVCQrxM6ktB2O/SPlZy7LqeEfTbV3cZARGQz6umhg==} + /webpack-dev-middleware@5.3.3(webpack@5.88.2): + resolution: {integrity: sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==} engines: {node: '>= 12.13.0'} peerDependencies: webpack: ^4.0.0 || ^5.0.0 dependencies: - colorette: 2.0.16 - memfs: 3.4.1 + colorette: 2.0.20 + memfs: 3.5.3 mime-types: 2.1.35 range-parser: 1.2.1 - schema-utils: 4.0.0 - webpack: 5.70.0 + schema-utils: 4.2.0 + webpack: 5.88.2 dev: false - /webpack-dev-server/4.7.4_webpack@5.70.0: - resolution: {integrity: sha512-nfdsb02Zi2qzkNmgtZjkrMOcXnYZ6FLKcQwpxT7MvmHKc+oTtDsBju8j+NMyAygZ9GW1jMEUpy3itHtqgEhe1A==} + /webpack-dev-server@4.15.1(webpack@5.88.2): + resolution: {integrity: sha512-5hbAst3h3C3L8w6W4P96L5vaV0PxSmJhxZvWKYIdgxOQm8pNZ5dEOmmSLBVpP85ReeyRt6AS1QJNyo/oFFPeVA==} engines: {node: '>= 12.13.0'} hasBin: true peerDependencies: webpack: ^4.37.0 || ^5.0.0 webpack-cli: '*' peerDependenciesMeta: + webpack: + optional: true webpack-cli: optional: true dependencies: '@types/bonjour': 3.5.10 - '@types/connect-history-api-fallback': 1.3.5 - '@types/express': 4.17.13 + '@types/connect-history-api-fallback': 1.5.1 + '@types/express': 4.17.17 '@types/serve-index': 1.9.1 + '@types/serve-static': 1.15.2 '@types/sockjs': 0.3.33 - '@types/ws': 8.5.3 + '@types/ws': 8.5.5 ansi-html-community: 0.0.8 - bonjour: 3.5.0 + bonjour-service: 1.1.1 chokidar: 3.5.3 - colorette: 2.0.16 + colorette: 2.0.20 compression: 1.7.4 - connect-history-api-fallback: 1.6.0 + connect-history-api-fallback: 2.0.0 default-gateway: 6.0.3 - del: 6.0.0 - express: 4.17.3 - graceful-fs: 4.2.9 - html-entities: 2.3.2 - http-proxy-middleware: 2.0.4_@types+express@4.17.13 - ipaddr.js: 2.0.1 - open: 8.4.0 - p-retry: 4.6.1 - portfinder: 1.0.28 - schema-utils: 4.0.0 - selfsigned: 2.0.0 + express: 4.18.2 + graceful-fs: 4.2.11 + html-entities: 2.4.0 + http-proxy-middleware: 2.0.6(@types/express@4.17.17) + ipaddr.js: 2.1.0 + launch-editor: 2.6.0 + open: 8.4.2 + p-retry: 4.6.2 + rimraf: 3.0.2 + schema-utils: 4.2.0 + selfsigned: 2.1.1 serve-index: 1.9.1 sockjs: 0.3.24 spdy: 4.0.2 - strip-ansi: 7.0.1 - webpack: 5.70.0 - webpack-dev-middleware: 5.3.1_webpack@5.70.0 - ws: 8.5.0 + webpack: 5.88.2 + webpack-dev-middleware: 5.3.3(webpack@5.88.2) + ws: 8.14.1 transitivePeerDependencies: - bufferutil - debug @@ -8824,26 +9280,19 @@ packages: - utf-8-validate dev: false - /webpack-merge/5.8.0: - resolution: {integrity: sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==} + /webpack-merge@5.9.0: + resolution: {integrity: sha512-6NbRQw4+Sy50vYNTw7EyOn41OZItPiXB8GNv3INSoe3PSFaHJEz3SHTrYVaRm2LilNGnFUzh0FAwqPEmU/CwDg==} engines: {node: '>=10.0.0'} dependencies: clone-deep: 4.0.1 - wildcard: 2.0.0 - - /webpack-sources/1.4.3: - resolution: {integrity: sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==} - dependencies: - source-list-map: 2.0.1 - source-map: 0.6.1 - dev: false + wildcard: 2.0.1 - /webpack-sources/3.2.3: + /webpack-sources@3.2.3: resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==} engines: {node: '>=10.13.0'} - /webpack/5.70.0: - resolution: {integrity: sha512-ZMWWy8CeuTTjCxbeaQI21xSswseF2oNOwc70QSKNePvmxE7XW36i7vpBMYZFAUHPwQiEbNGCEYIOOlyRbdGmxw==} + /webpack@5.88.2: + resolution: {integrity: sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==} engines: {node: '>=10.13.0'} hasBin: true peerDependencies: @@ -8852,36 +9301,36 @@ packages: webpack-cli: optional: true dependencies: - '@types/eslint-scope': 3.7.3 - '@types/estree': 0.0.51 - '@webassemblyjs/ast': 1.11.1 - '@webassemblyjs/wasm-edit': 1.11.1 - '@webassemblyjs/wasm-parser': 1.11.1 - acorn: 8.7.0 - acorn-import-assertions: 1.8.0_acorn@8.7.0 - browserslist: 4.20.2 + '@types/eslint-scope': 3.7.4 + '@types/estree': 1.0.1 + '@webassemblyjs/ast': 1.11.6 + '@webassemblyjs/wasm-edit': 1.11.6 + '@webassemblyjs/wasm-parser': 1.11.6 + acorn: 8.10.0 + acorn-import-assertions: 1.9.0(acorn@8.10.0) + browserslist: 4.21.10 chrome-trace-event: 1.0.3 - enhanced-resolve: 5.9.2 - es-module-lexer: 0.9.3 + enhanced-resolve: 5.15.0 + es-module-lexer: 1.3.1 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 - graceful-fs: 4.2.9 - json-parse-better-errors: 1.0.2 - loader-runner: 4.2.0 + graceful-fs: 4.2.11 + json-parse-even-better-errors: 2.3.1 + loader-runner: 4.3.0 mime-types: 2.1.35 neo-async: 2.6.2 - schema-utils: 3.1.1 + schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.1_webpack@5.70.0 - watchpack: 2.3.1 + terser-webpack-plugin: 5.3.9(webpack@5.88.2) + watchpack: 2.4.0 webpack-sources: 3.2.3 transitivePeerDependencies: - '@swc/core' - esbuild - uglify-js - /webpackbar/5.0.2_webpack@5.70.0: + /webpackbar@5.0.2(webpack@5.88.2): resolution: {integrity: sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==} engines: {node: '>=12'} peerDependencies: @@ -8890,32 +9339,32 @@ packages: chalk: 4.1.2 consola: 2.15.3 pretty-time: 1.1.0 - std-env: 3.0.1 - webpack: 5.70.0 + std-env: 3.4.3 + webpack: 5.88.2 dev: false - /websocket-driver/0.7.4: + /websocket-driver@0.7.4: resolution: {integrity: sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==} engines: {node: '>=0.8.0'} dependencies: - http-parser-js: 0.5.6 + http-parser-js: 0.5.8 safe-buffer: 5.2.1 websocket-extensions: 0.1.4 dev: false - /websocket-extensions/0.1.4: + /websocket-extensions@0.1.4: resolution: {integrity: sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==} engines: {node: '>=0.8.0'} dev: false - /whatwg-url/5.0.0: - resolution: {integrity: sha1-lmRU6HZUYuN2RNNib2dCzotwll0=} + /whatwg-url@5.0.0: + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} dependencies: tr46: 0.0.3 webidl-conversions: 3.0.1 dev: false - /whatwg-url/7.1.0: + /whatwg-url@7.1.0: resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} dependencies: lodash.sortby: 4.7.0 @@ -8923,7 +9372,7 @@ packages: webidl-conversions: 4.0.2 dev: false - /which-boxed-primitive/1.0.2: + /which-boxed-primitive@1.0.2: resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} dependencies: is-bigint: 1.0.4 @@ -8933,14 +9382,25 @@ packages: is-symbol: 1.0.4 dev: false - /which/1.3.1: + /which-typed-array@1.1.11: + resolution: {integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==} + engines: {node: '>= 0.4'} + dependencies: + available-typed-arrays: 1.0.5 + call-bind: 1.0.2 + for-each: 0.3.3 + gopd: 1.0.1 + has-tostringtag: 1.0.0 + dev: false + + /which@1.3.1: resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} hasBin: true dependencies: isexe: 2.0.0 dev: false - /which/2.0.2: + /which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} hasBin: true @@ -8948,170 +9408,171 @@ packages: isexe: 2.0.0 dev: false - /widest-line/3.1.0: + /widest-line@3.1.0: resolution: {integrity: sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==} engines: {node: '>=8'} dependencies: string-width: 4.2.3 dev: false - /widest-line/4.0.1: + /widest-line@4.0.1: resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==} engines: {node: '>=12'} dependencies: string-width: 5.1.2 dev: false - /wildcard/2.0.0: - resolution: {integrity: sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==} + /wildcard@2.0.1: + resolution: {integrity: sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==} - /workbox-background-sync/6.5.3: - resolution: {integrity: sha512-0DD/V05FAcek6tWv9XYj2w5T/plxhDSpclIcAGjA/b7t/6PdaRkQ7ZgtAX6Q/L7kV7wZ8uYRJUoH11VjNipMZw==} + /workbox-background-sync@6.6.0: + resolution: {integrity: sha512-jkf4ZdgOJxC9u2vztxLuPT/UjlH7m/nWRQ/MgGL0v8BJHoZdVGJd18Kck+a0e55wGXdqyHO+4IQTk0685g4MUw==} dependencies: - idb: 6.1.5 - workbox-core: 6.5.3 + idb: 7.1.1 + workbox-core: 6.6.0 dev: false - /workbox-broadcast-update/6.5.3: - resolution: {integrity: sha512-4AwCIA5DiDrYhlN+Miv/fp5T3/whNmSL+KqhTwRBTZIL6pvTgE4lVuRzAt1JltmqyMcQ3SEfCdfxczuI4kwFQg==} + /workbox-broadcast-update@6.6.0: + resolution: {integrity: sha512-nm+v6QmrIFaB/yokJmQ/93qIJ7n72NICxIwQwe5xsZiV2aI93MGGyEyzOzDPVz5THEr5rC3FJSsO3346cId64Q==} dependencies: - workbox-core: 6.5.3 + workbox-core: 6.6.0 dev: false - /workbox-build/6.5.3: - resolution: {integrity: sha512-8JNHHS7u13nhwIYCDea9MNXBNPHXCs5KDZPKI/ZNTr3f4sMGoD7hgFGecbyjX1gw4z6e9bMpMsOEJNyH5htA/w==} + /workbox-build@6.6.0: + resolution: {integrity: sha512-Tjf+gBwOTuGyZwMz2Nk/B13Fuyeo0Q84W++bebbVsfr9iLkDSo6j6PST8tET9HYA58mlRXwlMGpyWO8ETJiXdQ==} engines: {node: '>=10.0.0'} dependencies: - '@apideck/better-ajv-errors': 0.3.3_ajv@8.10.0 - '@babel/core': 7.17.8 - '@babel/preset-env': 7.16.11_@babel+core@7.17.8 - '@babel/runtime': 7.17.8 - '@rollup/plugin-babel': 5.3.1_lufgodn4kpczyathl2pjzkbs7y - '@rollup/plugin-node-resolve': 11.2.1_rollup@2.70.2 - '@rollup/plugin-replace': 2.4.2_rollup@2.70.2 + '@apideck/better-ajv-errors': 0.3.6(ajv@8.12.0) + '@babel/core': 7.22.19 + '@babel/preset-env': 7.22.15(@babel/core@7.22.19) + '@babel/runtime': 7.22.15 + '@rollup/plugin-babel': 5.3.1(@babel/core@7.22.19)(rollup@2.79.1) + '@rollup/plugin-node-resolve': 11.2.1(rollup@2.79.1) + '@rollup/plugin-replace': 2.4.2(rollup@2.79.1) '@surma/rollup-plugin-off-main-thread': 2.2.3 - ajv: 8.10.0 + ajv: 8.12.0 common-tags: 1.8.2 fast-json-stable-stringify: 2.1.0 fs-extra: 9.1.0 - glob: 7.2.0 + glob: 7.2.3 lodash: 4.17.21 pretty-bytes: 5.6.0 - rollup: 2.70.2 - rollup-plugin-terser: 7.0.2_rollup@2.70.2 + rollup: 2.79.1 + rollup-plugin-terser: 7.0.2(rollup@2.79.1) source-map: 0.8.0-beta.0 stringify-object: 3.3.0 strip-comments: 2.0.1 tempy: 0.6.0 upath: 1.2.0 - workbox-background-sync: 6.5.3 - workbox-broadcast-update: 6.5.3 - workbox-cacheable-response: 6.5.3 - workbox-core: 6.5.3 - workbox-expiration: 6.5.3 - workbox-google-analytics: 6.5.3 - workbox-navigation-preload: 6.5.3 - workbox-precaching: 6.5.3 - workbox-range-requests: 6.5.3 - workbox-recipes: 6.5.3 - workbox-routing: 6.5.3 - workbox-strategies: 6.5.3 - workbox-streams: 6.5.3 - workbox-sw: 6.5.3 - workbox-window: 6.5.3 + workbox-background-sync: 6.6.0 + workbox-broadcast-update: 6.6.0 + workbox-cacheable-response: 6.6.0 + workbox-core: 6.6.0 + workbox-expiration: 6.6.0 + workbox-google-analytics: 6.6.0 + workbox-navigation-preload: 6.6.0 + workbox-precaching: 6.6.0 + workbox-range-requests: 6.6.0 + workbox-recipes: 6.6.0 + workbox-routing: 6.6.0 + workbox-strategies: 6.6.0 + workbox-streams: 6.6.0 + workbox-sw: 6.6.0 + workbox-window: 6.6.0 transitivePeerDependencies: - '@types/babel__core' - supports-color dev: false - /workbox-cacheable-response/6.5.3: - resolution: {integrity: sha512-6JE/Zm05hNasHzzAGKDkqqgYtZZL2H06ic2GxuRLStA4S/rHUfm2mnLFFXuHAaGR1XuuYyVCEey1M6H3PdZ7SQ==} + /workbox-cacheable-response@6.6.0: + resolution: {integrity: sha512-JfhJUSQDwsF1Xv3EV1vWzSsCOZn4mQ38bWEBR3LdvOxSPgB65gAM6cS2CX8rkkKHRgiLrN7Wxoyu+TuH67kHrw==} + deprecated: workbox-background-sync@6.6.0 dependencies: - workbox-core: 6.5.3 + workbox-core: 6.6.0 dev: false - /workbox-core/6.5.3: - resolution: {integrity: sha512-Bb9ey5n/M9x+l3fBTlLpHt9ASTzgSGj6vxni7pY72ilB/Pb3XtN+cZ9yueboVhD5+9cNQrC9n/E1fSrqWsUz7Q==} + /workbox-core@6.6.0: + resolution: {integrity: sha512-GDtFRF7Yg3DD859PMbPAYPeJyg5gJYXuBQAC+wyrWuuXgpfoOrIQIvFRZnQ7+czTIQjIr1DhLEGFzZanAT/3bQ==} dev: false - /workbox-expiration/6.5.3: - resolution: {integrity: sha512-jzYopYR1zD04ZMdlbn/R2Ik6ixiXbi15c9iX5H8CTi6RPDz7uhvMLZPKEndZTpfgmUk8mdmT9Vx/AhbuCl5Sqw==} + /workbox-expiration@6.6.0: + resolution: {integrity: sha512-baplYXcDHbe8vAo7GYvyAmlS4f6998Jff513L4XvlzAOxcl8F620O91guoJ5EOf5qeXG4cGdNZHkkVAPouFCpw==} dependencies: - idb: 6.1.5 - workbox-core: 6.5.3 + idb: 7.1.1 + workbox-core: 6.6.0 dev: false - /workbox-google-analytics/6.5.3: - resolution: {integrity: sha512-3GLCHotz5umoRSb4aNQeTbILETcrTVEozSfLhHSBaegHs1PnqCmN0zbIy2TjTpph2AGXiNwDrWGF0AN+UgDNTw==} + /workbox-google-analytics@6.6.0: + resolution: {integrity: sha512-p4DJa6OldXWd6M9zRl0H6vB9lkrmqYFkRQ2xEiNdBFp9U0LhsGO7hsBscVEyH9H2/3eZZt8c97NB2FD9U2NJ+Q==} dependencies: - workbox-background-sync: 6.5.3 - workbox-core: 6.5.3 - workbox-routing: 6.5.3 - workbox-strategies: 6.5.3 + workbox-background-sync: 6.6.0 + workbox-core: 6.6.0 + workbox-routing: 6.6.0 + workbox-strategies: 6.6.0 dev: false - /workbox-navigation-preload/6.5.3: - resolution: {integrity: sha512-bK1gDFTc5iu6lH3UQ07QVo+0ovErhRNGvJJO/1ngknT0UQ702nmOUhoN9qE5mhuQSrnK+cqu7O7xeaJ+Rd9Tmg==} + /workbox-navigation-preload@6.6.0: + resolution: {integrity: sha512-utNEWG+uOfXdaZmvhshrh7KzhDu/1iMHyQOV6Aqup8Mm78D286ugu5k9MFD9SzBT5TcwgwSORVvInaXWbvKz9Q==} dependencies: - workbox-core: 6.5.3 + workbox-core: 6.6.0 dev: false - /workbox-precaching/6.5.3: - resolution: {integrity: sha512-sjNfgNLSsRX5zcc63H/ar/hCf+T19fRtTqvWh795gdpghWb5xsfEkecXEvZ8biEi1QD7X/ljtHphdaPvXDygMQ==} + /workbox-precaching@6.6.0: + resolution: {integrity: sha512-eYu/7MqtRZN1IDttl/UQcSZFkHP7dnvr/X3Vn6Iw6OsPMruQHiVjjomDFCNtd8k2RdjLs0xiz9nq+t3YVBcWPw==} dependencies: - workbox-core: 6.5.3 - workbox-routing: 6.5.3 - workbox-strategies: 6.5.3 + workbox-core: 6.6.0 + workbox-routing: 6.6.0 + workbox-strategies: 6.6.0 dev: false - /workbox-range-requests/6.5.3: - resolution: {integrity: sha512-pGCP80Bpn/0Q0MQsfETSfmtXsQcu3M2QCJwSFuJ6cDp8s2XmbUXkzbuQhCUzKR86ZH2Vex/VUjb2UaZBGamijA==} + /workbox-range-requests@6.6.0: + resolution: {integrity: sha512-V3aICz5fLGq5DpSYEU8LxeXvsT//mRWzKrfBOIxzIdQnV/Wj7R+LyJVTczi4CQ4NwKhAaBVaSujI1cEjXW+hTw==} dependencies: - workbox-core: 6.5.3 + workbox-core: 6.6.0 dev: false - /workbox-recipes/6.5.3: - resolution: {integrity: sha512-IcgiKYmbGiDvvf3PMSEtmwqxwfQ5zwI7OZPio3GWu4PfehA8jI8JHI3KZj+PCfRiUPZhjQHJ3v1HbNs+SiSkig==} + /workbox-recipes@6.6.0: + resolution: {integrity: sha512-TFi3kTgYw73t5tg73yPVqQC8QQjxJSeqjXRO4ouE/CeypmP2O/xqmB/ZFBBQazLTPxILUQ0b8aeh0IuxVn9a6A==} dependencies: - workbox-cacheable-response: 6.5.3 - workbox-core: 6.5.3 - workbox-expiration: 6.5.3 - workbox-precaching: 6.5.3 - workbox-routing: 6.5.3 - workbox-strategies: 6.5.3 + workbox-cacheable-response: 6.6.0 + workbox-core: 6.6.0 + workbox-expiration: 6.6.0 + workbox-precaching: 6.6.0 + workbox-routing: 6.6.0 + workbox-strategies: 6.6.0 dev: false - /workbox-routing/6.5.3: - resolution: {integrity: sha512-DFjxcuRAJjjt4T34RbMm3MCn+xnd36UT/2RfPRfa8VWJGItGJIn7tG+GwVTdHmvE54i/QmVTJepyAGWtoLPTmg==} + /workbox-routing@6.6.0: + resolution: {integrity: sha512-x8gdN7VDBiLC03izAZRfU+WKUXJnbqt6PG9Uh0XuPRzJPpZGLKce/FkOX95dWHRpOHWLEq8RXzjW0O+POSkKvw==} dependencies: - workbox-core: 6.5.3 + workbox-core: 6.6.0 dev: false - /workbox-strategies/6.5.3: - resolution: {integrity: sha512-MgmGRrDVXs7rtSCcetZgkSZyMpRGw8HqL2aguszOc3nUmzGZsT238z/NN9ZouCxSzDu3PQ3ZSKmovAacaIhu1w==} + /workbox-strategies@6.6.0: + resolution: {integrity: sha512-eC07XGuINAKUWDnZeIPdRdVja4JQtTuc35TZ8SwMb1ztjp7Ddq2CJ4yqLvWzFWGlYI7CG/YGqaETntTxBGdKgQ==} dependencies: - workbox-core: 6.5.3 + workbox-core: 6.6.0 dev: false - /workbox-streams/6.5.3: - resolution: {integrity: sha512-vN4Qi8o+b7zj1FDVNZ+PlmAcy1sBoV7SC956uhqYvZ9Sg1fViSbOpydULOssVJ4tOyKRifH/eoi6h99d+sJ33w==} + /workbox-streams@6.6.0: + resolution: {integrity: sha512-rfMJLVvwuED09CnH1RnIep7L9+mj4ufkTyDPVaXPKlhi9+0czCu+SJggWCIFbPpJaAZmp2iyVGLqS3RUmY3fxg==} dependencies: - workbox-core: 6.5.3 - workbox-routing: 6.5.3 + workbox-core: 6.6.0 + workbox-routing: 6.6.0 dev: false - /workbox-sw/6.5.3: - resolution: {integrity: sha512-BQBzm092w+NqdIEF2yhl32dERt9j9MDGUTa2Eaa+o3YKL4Qqw55W9yQC6f44FdAHdAJrJvp0t+HVrfh8AiGj8A==} + /workbox-sw@6.6.0: + resolution: {integrity: sha512-R2IkwDokbtHUE4Kus8pKO5+VkPHD2oqTgl+XJwh4zbF1HyjAbgNmK/FneZHVU7p03XUt9ICfuGDYISWG9qV/CQ==} dev: false - /workbox-window/6.5.3: - resolution: {integrity: sha512-GnJbx1kcKXDtoJBVZs/P7ddP0Yt52NNy4nocjBpYPiRhMqTpJCNrSL+fGHZ/i/oP6p/vhE8II0sA6AZGKGnssw==} + /workbox-window@6.6.0: + resolution: {integrity: sha512-L4N9+vka17d16geaJXXRjENLFldvkWy7JyGxElRD0JvBxvFEd8LOhr+uXCcar/NzAmIBRv9EZ+M+Qr4mOoBITw==} dependencies: - '@types/trusted-types': 2.0.2 - workbox-core: 6.5.3 + '@types/trusted-types': 2.0.4 + workbox-core: 6.6.0 dev: false - /wrap-ansi/7.0.0: + /wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} dependencies: @@ -9120,20 +9581,20 @@ packages: strip-ansi: 6.0.1 dev: false - /wrap-ansi/8.0.1: - resolution: {integrity: sha512-QFF+ufAqhoYHvoHdajT/Po7KoXVBPXS2bgjIam5isfWJPfIOnQZ50JtUiVvCv/sjgacf3yRrt2ZKUZ/V4itN4g==} + /wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} engines: {node: '>=12'} dependencies: - ansi-styles: 6.1.0 + ansi-styles: 6.2.1 string-width: 5.1.2 - strip-ansi: 7.0.1 + strip-ansi: 7.1.0 dev: false - /wrappy/1.0.2: - resolution: {integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=} + /wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} dev: false - /write-file-atomic/3.0.3: + /write-file-atomic@3.0.3: resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==} dependencies: imurmurhash: 0.1.4 @@ -9142,8 +9603,8 @@ packages: typedarray-to-buffer: 3.1.5 dev: false - /ws/7.5.7: - resolution: {integrity: sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A==} + /ws@7.5.9: + resolution: {integrity: sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==} engines: {node: '>=8.3.0'} peerDependencies: bufferutil: ^4.0.1 @@ -9155,12 +9616,12 @@ packages: optional: true dev: false - /ws/8.5.0: - resolution: {integrity: sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==} + /ws@8.14.1: + resolution: {integrity: sha512-4OOseMUq8AzRBI/7SLMUwO+FEDnguetSk7KMb1sHwvF2w2Wv5Hoj0nlifx8vtGsftE/jWHojPy8sMMzYLJ2G/A==} engines: {node: '>=10.0.0'} peerDependencies: bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 + utf-8-validate: '>=5.0.2' peerDependenciesMeta: bufferutil: optional: true @@ -9168,42 +9629,46 @@ packages: optional: true dev: false - /xdg-basedir/4.0.0: + /xdg-basedir@4.0.0: resolution: {integrity: sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==} engines: {node: '>=8'} dev: false - /xml-js/1.6.11: + /xml-js@1.6.11: resolution: {integrity: sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==} hasBin: true dependencies: sax: 1.2.4 dev: false - /xtend/4.0.2: + /xtend@4.0.2: resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} engines: {node: '>=0.4'} dev: false - /yallist/4.0.0: + /yallist@3.1.1: + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + dev: false + + /yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} dev: false - /yaml/1.10.2: + /yaml@1.10.2: resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} engines: {node: '>= 6'} dev: false - /yn/3.1.1: + /yn@3.1.1: resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} engines: {node: '>=6'} dev: true - /yocto-queue/0.1.0: + /yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} dev: false - /zwitch/1.0.5: + /zwitch@1.0.5: resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==} dev: false diff --git a/src/components/HomepageFeatures/index.tsx b/src/components/HomepageFeatures/index.tsx index 57603fe1..1fd136e2 100644 --- a/src/components/HomepageFeatures/index.tsx +++ b/src/components/HomepageFeatures/index.tsx @@ -10,21 +10,24 @@ type FeatureItem = { description: JSX.Element; }; -// Willl fill this in later const FeatureList: FeatureItem[] = [ { // https://dart.dev/brand - title: 'The power of Dart\u2122', + title: 'Powered by Dart\u2122', Svg: DartSvg, description: ( <> - Nyxx is a Dart library that provides a way to easily interact with the - Discord API. + Nyxx uses Dart, a fast and modern language by Google used by millions. ), }, { - title: 'You can use it in your project', + title: "Simple & easy to use", + Svg: NyxxSvg, + description: <>Nyxx is designed with ease of use in mind and exposes powerful APIs built in to the library., + }, + { + title: 'Open source', Svg: NyxxSvg, description: ( <> @@ -36,15 +39,10 @@ const FeatureList: FeatureItem[] = [ > open source {' '} - and can be used in your project. + and can be used for projects of any size, for free. ), }, - { - title: "It's easy to use", - Svg: NyxxSvg, - description: <>Nyxx is very powerful and easy to use., - }, ]; const FeatureItem: (items: FeatureItem) => React.ReactElement = ({ diff --git a/static/img/Dart_Logo.svg b/static/img/Dart_Logo.svg index 3f77e309..5c0b2c20 100644 --- a/static/img/Dart_Logo.svg +++ b/static/img/Dart_Logo.svg @@ -1,6 +1,26 @@ - - - - - \ No newline at end of file + + + + + + + + + + + + + + + + + + diff --git a/static/img/tutorial/bot_in_command_menu.png b/static/img/tutorial/bot_in_command_menu.png new file mode 100644 index 0000000000000000000000000000000000000000..57d1772bfd379fa31f862cafe5ad2cea554c8f20 GIT binary patch literal 22771 zcmZs@1yCGav^CneyAw17cL;$5C&Aqvg1ftuAPEp41b5fL-NHa{5AGJ+-R*C_TYug6 z>OHE9nwjo7zW3RCt#u|$NkI|=l@t{K01RoVPbvTay9>TvK!yeX8%88e000#r{Yg~K zGwoo>Ll0l_8R_Ks=rSmmNgWJUbm{RTpk# z52?uk0)eO+{?FI1$0K0J*Y1u+j-xxz8~HyV?_87ndpGd&^M8ZR>q6;WE0O*nMPZTAk8_wyhWy1NnBPvPuaBaf zP$}N$eq8ul)F%R$9yheb-jNh;#`aE8*t4A0)I=;>ez%r`4rw%~xQ(Xg%FPjUfeW1- z-}77R{mQAn{jvYyxzzd*TQJzGsk~?|HNkZDR(lG4Ydx)+gx9MQ%3_?v*L#k)o45h& zkxDFMfTNNElXy$iim?9=O+7}nK`&U=?>zX0*zxho{n{ymGt5sPUVk4|g1?h$hXp2K zSJju<9}clT&frnl#D@`Q}^Oi4Mj~2hWK13Q#UgEiS6{AL?+Ijc* zoN!qo@VxC1KrRsDxUyF~ckT`YJPqV@H&TnFkTlx0Smsks=I7z)`2n?`qPhG)E_D_bHJBMwN!S7~2);;xf zT8_R+tW@SbNybDTM=02T!ScNkdQ=`IESbvEQ%kwXgR_&=nXFg6h?bP$k`x)#0F}J_ zugs_oG3geeEs+P@CQN$Roj)XFN~)yEt7w+Kdqn{ zE7Si`HhazEcj0lf z+>4|JU#{niqu>$IdhNna7bk3V>R{}WH6u^XVNMy0%T;`{6nzQ_q?!%{KrGCh;UfXJ z4o@!%WB5+QhQ+UAX#HF>quq_t9F?%VuSEBh7>uDPA8harg+dO4*jso&rCj-HA^P;O zxww1@Hv@x}k?9{AJihoB4Wr4d&NML?I+J&ogHV!;if1Ll44UQ%WuwFi0#xiv*R1ss zJvsH=uNk1CZsLZMRK7)R~rs025X9gAe| zquE255JG$Mn`2#CZR_Z5A1|gs0;Z7iwO`Azq5NGA_or%iA`NoVReJe<0bn-T-z4Gf zUW(@`hl3=Js^k5iY;LdeQ8}`sOGHyWV=E^ANx41ud!S@6EH+9={@J(v8q2rVCFY~(l-5{m!GStu{p=bX=uuuT6%^HB z!=h&sM;W6aWx-(22*{$ZqpjFFj{P4whl3(p?qyyC(M9qx6ojJt$0| ziFS>P>5FF$)c2F904y%({8a0gti?`^pSRnk3wROkq0Qzl+hME9;scNvGt)F49nb1bw&&lF2WDpti(7 zmQ(*domiEH7e!J&(daf`d9CchrPaUL-y2&(!j**=-1eUxMS+kw_STb|B%l-l&<4!&gF97|90OU zF(Y&g`LS@j8D&WeNFlP`nz9{u-4`wGJ47C<_eNEeTH8>G44YJT#T`04TIDFceI9e|va$jsO5|wZS!e@15-Xs2q@RRDa=loSv-pk>rr@0otDD*2x!9|5RXiLW#tH0OMm517vmHbh>4kv=P?8CL$ z@ovu&%=?x(-^w$R_ixM5$7SH>O zld~&Mfj`crWA@08u&|>c8U0X?ilY*yiFG_Yig&-T03|10>JQ48z*u~gU&5WMQ`R~R z5QorTH5P&uaYZ7ynETp#q9;fi9r)Cn_E00w+|VTnOJ_PG&K0-^`hx_NY22<(Am8AI1;e!sEv)GOiBperTtx*0+PcJEuK|H$Om#mXg)Mon zdDwP4DzaWvvzbimjUI6^ybYjV=l`lvT-w(7X73`sV>FuV(Csp_)qCEi^lYH`dkiF0 zA!YMmM+dh`sH72Q#`2ttD-P}(n^t@Dk0^!4^wh)(VfDv37!imDS6Y9FlXM78P;;}W znlsHp7-;iTAIvWt<&*BF9{DbQb|^xhm-$CV6he`H|Nh$z=1{mAC& z+JV&0KYzw|kYRE(Ad#5!bMsT0vF*>diVrYA7MJs5A<{7b{H35i_QT2HXCD=CI}tVf zKGCP1`2!wUMHLHp_!rkD0}RLn9U(~=WW)P}IZasqriraQ?>rovnkh(YN}A_2efS%p zyGP;7MZSlmZgx(dRrqRS@j!6`n<=6nwjXqSlN9AJ}`N6p#4oq zk5bvlH@{j81-DoV2vqz-1Ny|m58sjw)j5XQSexUHs`J@db?=PH5%l!+1N5Osg_$$Y zRVJFU%Z)I#I_vBT0nf`V9*2u{=h6MD1=`x$yO=7qy9tUtJoy=O?rh|Mh;D+e-;cq_ zhjY)@>%;;!;U5>PDp^rb3I%>ug|EQzGhIa1_aM(H7Ut*Hq6*WM!yGE4E14MmA1++oPPH{b$n^ zDH)f`MQyTn!?fhCa0@O_I{@p#C}T_uWA+6%2;9E13yQ8InsyV|edgXac6HM)$~BvL z2Imyb82W66c#YN>$PP6dS_-hNAFbVHUJLE)9i5&>uf*ePMyKKvZlvm2%f)-p^UyMa z7ewh4bw_};Cn3MB6EEJ_>`s9@pxab@*}Fke|;)dy204Q;qCJ@MqCoHu+>?O1d>$>1)+d%dwXG* zF(-g6hKq-r;*$7_d96Qp8wu8!q|QB^74=)_v) z_K_(YQ;JLOU=Gg_y4?w~;@+ATbZbB$AR?gc>b*Rgn7N3%>4;UGsSuA(NJt{Igf~-> z3m=CbQ&rF)!2kz$!L5G_@6?pL?kX@%(-&*uwiNu#`&DoNOEemfqra@BzdXG6?fZvL zgT%IEM6`dB)}Lpd-)$!#9Ce%%!D~XLm+zM`r&ptHaSDw?SxGF_JzCxfW_p!dT<-sh z5cc=ttC`NJt9^4eD*uZ_6)`%KUn{F@sKw27;fv{#i$v{uyY@NKUiqf8qTi)mQirIS zwEg_9-M5idxN$IeN%_9_O6idmE*QJ$G*c&E1+uS~i~#@#{O^g$lLdWxT8>-I>Q7p4 zBN)T)TzWNXELQZ+GtrEQA~6Yxrp|{jfWFeweO410rueqIp46+W^r4JlsE5PjsBp^2 zvK;|#Z-!_mqA>a7M3`Z+xA(e(#oqG}SnXev?AndB^RjyPDaph0zoOl`fUq-GK=jk?fV!VXGd*e*!`hRF%_eS~^9C3AYd<+Wu zmXMe@)5!6lVpEIsU!{>6yB;VQf`&>;N&)WyoBeM!-seZlf&pt{|NBHgn|0k?tRmEM zk~a8fwD6N&ZpY*8OGK)cIPG1&eHIUa+RZMWobCJT1PFd8h$jsKZ)W!*j`q*h)w{5C zR@y!;j7a4Znn(9`b>WKLU1OEpJ4dbi-+4VorMFl!XQ@p>Z8D|alsBNiG<%*p{%p;^ z9XAXg&`Q`mzimzj_@aVRd|+#h-C+WEl4kSrHnQ3QG_-TGv!i9d>m{rxa$#-B$0Ys# zs?{>7kwp`*=&ELk?u8uMdUoYo6poMyT6g`V4)SaLotB=COx@(=5gY4Z*yg+W5E9|$ zKsH=m$L8|wft^2^s5yFzMDSyiA{) zD{Fn5thl%~+ErVT+CX@CbwUZo|I9|h;;58?da*|FC*vv+s?zoT+z*v3kSXg)CIU=? zmq+?a36~>cjB4cwdN5zgs!N!j#{*vO6!FwLLS=QSgKORJNadlQs9wgB6!Ttx9-T9r z|7d3iJ7E2;GW+9vy%%^x>3&l5USFpnvHNQQB3cLxtdR%IN^$`!11hi)ytv-@mK6^& z^~w6JbNS{%Rs?&lL}c9Hre<#Wl=9hO!!kO>JJ*5Q7mylh$tJK{Ddv;$9xd z#*SbDc>%wNZ6fjM`XlmAfKI0~+U{|E{d)K7@SN{YQDc9m6C zn8-UGSBvjGIf_i{XX_976DmCOm3jDGk6O2eXPkb47LXlP{&?MjZK=dA>lRkfO{yq# zOwP*bz+-d()H)|bIpw#O;vI^W#c&XumtHU`0qD(4$RJtFOnzV@y^R;H9%YM!CJ<*i+ z10@6_3JNGFVJc{7buwl~M#}2yQ+Y`uI0a|=wQxcH%EGa#e2P~oC( zIyW65%TL78$!oPe5G0s9A3u8VI^4N|(?dYeL+O51O7eWaGvUzo=)ZhE`WuWOaT3`! zx3=7lmk;;ZXY6MiZ*6y)LeLD7_>3MZ*K#=ehz-e#DjLii7J=gc|GV4PX!3A)%Sr z-Q-0J+N4leDmp`)Ge>ecGd{As#qspJOkR3=UiRaoL>pneh;HYm2k7&CV`*vYCFu{a zR6$bKpWwVd`MA4BqOyg$8vYLL5clXxX7?OietP^P7G-n0{c}OMOri{p?Opw}$MF&z zps0u?Dfw-oLA4~n1Tm)D)>pf6HRL8Z_}TwPxlkb;4Gk@G2>CncmQE*N=klZTyRow? zl@oWMRyMvcuPBhf#Dz;c`mB0~-r1dzdMcgGFyOYkM;_`DtXpMkB`w`wwNC#^D@cpw zYHxXIWmGX=LswTfJ}z!!o2b@06?9_Rl357VgHl#5GknxM6F=IpLTOBkCSNxEj{)AqD4z5OSh+^^}F5VB_JU9Tltu3zoL-L<8pVL%8LvSyA1yIrTMJ@xHMN#Tx@-yLez8xM>Jc7@P(ZUBRVIc-Ghy@xmrsOh2!J;B( zu3J)(0g}or;x6zEKniw><6CO{?7#^mA~9qRd_9f6#FeHA(#+P!)b}o1*DHS9Zu6xr z*GJ0uNo5U-{q9`vh{37oPXL z$~HSDDIY)ZM*4`fW@R~!q-j3}!7jD9W1ylFzjN)Y+aD_%R|3b^j-HC+dk(|1kl#Lo zs=9WQ*979yesayW3@eK@Gh?i_o0H2zwU>#pm~ZDorQ>M?2K%Bf>reDj2GXo%)j(K% zO;k%OgZF{${l&fQU%m?YWu@}J>DiVD)kTG8>E)C$yI#e~D-_;XGO_Q<|71|o>N6UX z;}r}CL;*0L108{cRyqY3e{^gyz9@)^>vwDw$(cbLht}Jk{R;p4Va@4j4RP^qqCad; z7w2~xRt(@8d-oa})#vsuUBHQjii+b-M~$482g}>+;NW0yr*<3dMkXYuYPhnd#^!)_ zcnsD=g400gEg*@58c2sP9tg`o6dq1S2K#g`J;<0`bT8AK!mSlImv<@3d@SYf{iIf(kbM^T}2Q86G@GaD*UjM`}ByUhmNLue``_Z z$1h1wRJ1IyY9yIF)`xSX2#%{_wLi?4MF@D zV>>&Sy^Yg_{)XV!W8<650ovD{V0h8uaoy~5Y_D#%c_i#{aWvtvQ@KXAhI)SfEa=-; z2D!fpizOo?JKoxS@^gG%?f7^L`$dkfrlux3BI36r8$R%Zt*X8%S;!=z<(q|uxrC1O z-mQy8>Iow$zj>F7vwK+?TY`~RLh*G1#P$#cfea%UmO^q2KJY7QcAw9koPiS6-%<&d z4U~M52>jr+8)FTstUyVWJSuz``5-B=PYLNEzy377G7hB%f^%x|EAhphD)X~eL&cU) zMulBxE8zktagl>((En{?377BB)yzyWYog1Bf657X68x2zni?OE04OLZko8VIQk~8^ zt(y-eHQhzd;Qd>dk&*fHhek#9*wn&;x6%%yDTG>9R#sny^8u;z0K|r+93HxUzN+GE zYI+}~5QQ7|mYyFC$nf?)xwKK<9?1x6!Qpp!`m?jM4`5FQh)hl~pE~jSdSAR?07*Oh z_4V$tbiyrO>lHKQ22M^+Zf=LTltifs340qGwRVH%`6{~;xrGU16pK*yy}ivf8VL=x zI8_l6eP{k#4Y`X;|3_H=$IZf_9~T9FsPQVr0jx1nFo9;;LYWo!3F~~AI=*cYn36ES zUwA-7R4Y3om%|iR3t99Hj*2lRG7?n|izPN(RTcvZWbJzbpool*0SkjpiK=iFFA$Y$ zRVOisyUJJHL=|xV*dsX2Z>7>#mX{Y6OE>OjF9`soky~A->&eNPr<*=y3ybY$ zb|+`&k&%%$(EX;Q%ol0!JP?Lj3klo1elpyuTBZeQ1f|0~m12tq`{po4&ap8VQPDe9 z5M>6kREoLA$D7^VczwKh*(*}R!kVWRD#Y~<=OBqzB>IBEKWCFHDKj%Lnl^AOzudBs zA&?=!Bg14d=*Z$U{oE7s#Xe!o0{8%lkKFL^wdFpciZB==FwvGIIr~!Ba7FKzJuy*32P)Ff+EhA9jMUo{_z7QihLKibu zLZ1i;DXQG=DVJJ2X2{XeqKQA)&R&pke;hRg0-;w&5zQ2bYilro%hrgX@5WB|ciDaa zySce;1fbsj+2l5y!0-MlvYFzyusPCh)s20hKzZ>CmE`=3wEJG4Cr2pouse0H0WZ8%zj z0b>*&_x+4?RTKLl4M@C9KJZf^-8cRJY5_7*_V%|&*G~beqUXSchFE!rY{<8qqQLen ze#QoymSA?vMclgKN!Ym%$w0}#*YJUs#C8M_0zUq)5!}d@f2~D}%h4nF&ewX^GW`+7 zyR%fj=pck#v-?(GO@7N%3pIpa4KxWX_#TT_QInezlzHyLOR#JsCQBD8_rdEQJdpOm z%Xp(mStUsP91)Ya(cyTRh={$UwCLvP8|CF-9ZY-Jdhgay1_A)lC`V4__+u=ZI3voJezj zi3Sfy3^q2qd!25Y4QjMHAM8Ny=zqAD8%Cr+E&CU@w?QCAuMNM-w!6fPS!2$l8j9~f zc0ous$m(ykYXg}9eU@2X;f#BKS!!5CYnwM{q-D2Gl-6H3X^IJnNkv5XP>KJPi0_0E$Yz`)4H#=-&wGO89l`JJpbxnu(;w}qJ*D1tMEikYu??fW*J%M!-o z$L4B{)`wGhVOA3}1D-Y}MuqM#Vx87|3k#O#+U#Bdwu7@=&KrHFcyzW)XDwr_q+bA~ zz)lG;Ec)SlKBd#yKug=b;&)C9JlqX_062U%K-TfO`Uq)hKlr9G_=az3zwuR-6R$A_ zGb1bGt;qu6(tfTaX6o|f#jkmp`V7K8Hmqq^FjKM&-#izggG)h72o!;5il6OKpxM$a zf;7+fiL@i}#As_Rv$5l$F}&{$)Il+3&Y1$b@%n5Tgq}A?Mp&Y42OSoZ#=4}b@x>39 z8VmzWRr*Z*+^O~4j>V;=rNR6W%+U6W20A*{hIS{KXX4}I&CJZAq7=+!ow1BHB)mUl zjy6Tndkkei4)R4qj}Q`{a5RPBY@Fs$_rh$(5WOo1YnH;SV`2a0LP%OIbE_Bwi)zt+d7U9&OXFgT&rD^W)SF-ZreNbk zks>pu8Ch6d4^BO~RF{8)Db83AbbqPoS-}&&zJSQ5uea~8!YO| z`7n{EmCii*lJ-X@6DA$!tigPQ1G15o1X8w6S-NrmR*Tg7qKcq>Hkr9^YSJ%|LrjJb z#>Ym4uk9>a^8??~&oD_0o&bR`63p@6Z{B9}X>?Ur%+Em=i?am@VPL+DjIbeH9Yass z=eRALU0moD(u$ZlTxU6ukR($IKr`0X(jtEK%EYrtEc>tJTR23_i?g%p%1S=pn@p<- z3v^1MKTAuGkI(m1puFg)2cza1BUwQE4X$+lIIXOKfCrmenMURZuknQipQo<~pn0Pa zvh5vhy6tU9gFU=$Si%;I*@>Ug)jwp(mTI`RNa~Rk*l-IR6Z-`T&7Rp zLM1Iis7Ct;cb`QXo}-nY!lo<|g3E^(CsU->pNl6VE1FM+PteZvMg40I>?HaL3#u_* zp7r!sOCYYjx}=n>tQs|N4Q>$0J>Rde`wA1osf;HJ!xQYc%l9=nnp4j+}C|CyNQ6Gv9UGgm#^^XY!po)3-n<;NzO(Eu zMVGEJ&G z@A!j`+uo8_@+bc&$-&1b)#x5Pf<6PVN-8R@|7OQ!dVsAeWC}OTbpD4n$P5;E(JPV-7dORs z6mgoMd$a+8PV4mE?)wrGu5xl0@qMx;JyB@rdlkwy8Kf5%PrrTG#P#3-X6F5EgCs@e zIEmc3`x!Pb^?2oV#&A-eEfNO@N--%3@4H=9`Ym?7gMa@%ICQ*T(jWy*5AP!#T%ZO- z(DQRrq6@06mjKN9e+ zzJ8)$bg|y-JomN%Tp^PbAUvsD-4%`m&k&yD8T^_lo|bhyAznL(anJuD-ym zC(YOF^61HA6zbLobEPIs74IY$c7!i%!-rWj5Ui>tXd?pt*Qt|elUlwfX zHa-oOj&-14VPfbz9`9!5<+W%JEG(aD^5z1Q)Lun2(?pd7w*s%J7DU*;zA}UT`GoD3 zYOtXo$j%V;7d_XUM9c}qE<^&U1@Z%x-^Z!ykQ9CR1<1P54I zSsBB*d@uSfx6v{w1Zmhq;DBBy&aoMvi=B9jlhpidWKfWYc%E;LzLU}r3MJErrS>oC8o zqcETs(M&oE4KOgUkIoSMIGSO%EC;?CBCf;JPIy08d7{DgrBa zc|j76o#iTy+>Nt(1JA+}$Cm3DjQtr@Z34YGsGeZD@hfNQEi{Cjm>P7aYew4`+bwTX zjtoN`bpuu=vry`r>vnT9L?6}mzLU&EN(|q zoYIM$p`8V+)Mk%_rp9C>d@%a=#vzje%!K4KxImn(D9HND_78+xPJyXd!5en`X2osvPn65)u?Ncr%2 zl?qrrM=QGyzzjQ8VDI`j!`9E9G7ab5m8)wB30zAfM7+i(Y3ce26}}+_ zyDu5~`}e@lxTMC%;yL&#J zd$tll444_&21W+P)2Hn6op{+jMvwG;+#lcD^{^xuSy4QWt{@FPF)5JobNOu@z`$kZ zSbexSAkpVF@Lj|Jr&C<~I`uvRj6^5LYTLQTfxlDZ&Z$8`g8DY>3T}~z4iH0C{OeVo zK_?IwL`G`Ib&eh@Z}zDOHdC`E=oNBWhlS1l+tV}hIj`tW(etFS)@Y61QGaQ5jb>nQ zQ2u)I#WAkEy&~BqB<6+0r< z6CroKF4lUDSTsUUEC*uE)E`*|$U3X#tj)~8D~RX=&ywNo+C9>3XinhCjW5MXcC$s1 zxiqYb>|jdoyit4hk0(T6fGR_2>R7H>+0}wE7F>eCfANY16=|~ry??5r`&dy>Ok1Rq z5`8(%zWQD=S1guH#z9PMeVq9s!}E^QF)z1wNkV5%ek}3l8_B=#%))O1wL~m##l}oqQAO4`iFJHIW!a zR(}@%qWqOJoTUyF1ActTWHR0!zHUh>PqUf5gvIAfTNP6Vx;|&1sn=}hlicG9yq16r z2nwi}EWI!3!2v5kR=2^L>mI6%**(xJF*g{q+q2|Q)fBdzw3qyGVcmuIC_1q7qd$*m zV$<~nAE#IH>0{fPO4?JQX$w^T3Nx`5?@s)As1P%k%%pWAVCkb6-)FGY9TYGX?;ab= ze-f*kK#KeNwMC-PI*L}Ar$x8@vt9_XB%EK775h*ydTt+VfoKm$j8Wl>1QH%#{iQF* zEg6gLaxXq};LFMVIgj1Epe?~teXyAJw}7uYP2Hq`4O`>qm&dc|Rqsi-x%l@HTvx_; zh*o%{II^I97bt0j_J%e^K3frU4Op1&!O<@~XWiGUSpD|A#QYwV*d;iIPAH{+d;=ur zwJKe-;0&L(Vbp(u&Xxf-B}reezcWhv+PP5vpYyOXhrRr(-(CW59VwqdHYE#Rm>_n0 z*b_(pA5ROd>Bn44?F7#IJN6x`Ai}qUGJ{!zw(}2d67Lgf^OouoWyMpZI@1el#cY{9B{qfP^k0NzVN>RB`mbf{=G>w-0j8KV#)0qEn0Z zQgU;J6u&Gxu1^haaHLTT0y036vEbcm4m4NlP2Mi%=`+R4?6Z*X4~BW4z=giw z;*8)@P>4ct8tdo`eYaQAFkLF-ca}7#dVh6r_fQkPUuLxNea%9FJUZg{)ltAQY~YTK z=GI8^RMESaEHPRHBssm~`bXDAX2!U@FBqEi{CW0Bf!X<47VXx*xqT~cpKPO{O+eVWsMTqLmr!-3fc7aFxU-SE!VoyEGi5zpPdgaxRQrz{lS#4 zOwa%5pdXUh391do78cL|jdCqQA|DJu=wbD->n7>v&oBv15`}`f28)>hVb9}l$IvDU z0xzM9i!(EJ;ddQ4Ab$Dnug)Wz-#vm{I_F@2f76#uFhUn>3~&Ic2pmA36-hP4 zq5|x{8)s$c?l>bR=3p1iJ0c`LLCUaIf6W$%%qO;39T(y4lT1x6U~^J^gTe6Y^v4 zd33?%g{ytU5+)!d97z(g+dqCqFPCz59FxoY?;o$7*7J7xl9ADxhl=XH{l?a721E*U=5oNMVC){5jA z>0D)sEB^9rdJOniXvn6u^N;seZ)<2(ie15yDjxqaFD*1SdP*W80pFv-7@3%+$saCi z*oi~Oe%IGmKkWoie(yGpmq7r`%r*x#N>v~{K$a52(|w1}vVlRU=qI|^;biW8Fxx%> zxdgzGXK%i#rcff9)az!2=K5$8PQ+VcYm-@X-)kr#QsM2K+3a6xSeWOaE%)D>ysQ z^p#@k=Jb~S{mVIq-d0yv=aiBDT?YB&Rilp|KaP@6m}(OOmMMik%!Co&uqdzg9a7y7 zmt$R-wTsnA3AfI@?q;6+{Q<{&cU0gfQYvHKqV$w?oq@p;Hy4+iFrcI}y>nn}W0D&n zXxcYHOG^tvIgw>xl#FeiQs2)8hA+^2>%;W8h5M)ZB{~etsK4BWZYFP8_lv*4v9Pj^ zrnh|d`2VlcqJzq=w8^fm=m1?5XV2HsAmaz3?zQF;+nbDtdYsk28jG2?@>3?#UqW zlItMiLiVBYd9r^!mG_}!%2KC(Yb;lCNk(A=#IH_1gZw->zlVG}*XHl*;L}Ev_6&}-GEAs(z3FdQhzw0?b&F_ z;nln0G)}*D2dG@i+cgj&TW-X$s27BmKHDwMT09*Ka@T;6=KI0zbLf-x;jBf^L-kX` zN`tLU%nI-&`Mo zs!peaJ}7l;;bK$l3*$uYrZZrQM#QT9eBPX3ZE7W5^;B1uE(lmoTE}RW>b_TpOnvQm zU5kHdxxF_{t~cLA^9^e^Xz*8J0x3eG`QAc9^zYw(mOHnErFh^PgAKIP}}D`_KrIx&gKe#yX89)z0Sy7-eIVh~BPq;*@%6X=(h%jwn!K zM69n74T{kTWy0^SLIX0}6UttS<%&y40c8-BHHFC31uoPe0c#DB$$fYJcAw__dv%17 zqxSiT4>@yV8lQWudXQ`{m(Njay*(@#c}V0k42+Hn3kqTY=t!X&6<+t>j@x!O_qTWF z4sWVxn*V?#&xFNLbgenx ztI|^rTX^Bmbu%<-r7Tz!E`4y>%R5>@|4&&PWqJB5Q9A*Y^Rx732)dL|C&u9uJ-1nP z?(sN08?4MKZI7h$Iy^+KH_j|;;kmCp-_|1<3O|FXgKLE%nXvcqvfyKJ z+JWs77s=+P8KFuAS@Z=DH3;z@)NeH1wYAe8z1Z+sIhsLm|{EH=9U zq(9S5EU*B0sa!U>=Hw(-Zsq6t>C2te7O28U!SI8BJ3ANC0m}jKyw;*?M4eG&Lh%1J zNRTZpE&av+Gi;#R*w_G$?(R6KHt;xN-=C~Z+p^M+?!MlWBs;x7!~HLcibh)UC5oa! z?<8A^7b+TCd>0xnnve z5+HZ5Zr@d}vRNkcI;K?Xa__g#HE4nJ&8&7qGo!-XH2T>}Z=og2es{|XZTVKa@>yVA zf?wv%DR6h_?ePtMM+!1E30Y#+ZNAYFndFcdLJ zTV1k@RzFht1v0wRvns?VnZ~(&XEw{xe4^s`8-Rdsr5ZRS>4$Zk_1{jI{ z?uHFQd|3HL$(!vD8v7xMd7^t)n<~A9MPgvPd)51P5H13bPH+l{DdUSP>$f!DU+h$Q zbyk3|OeVPF*AH5ZdV!pks_r`nGA`Go^mIQXBbZK(jHPB0_1RjaJ!*9H5)*NO z4s8}y{{!&KH}Qg_Ssyw|@eH==vEBJY+J1sOfO**jk{I^&3fLOVHmxT3Nj)C{OI zsjHji?=o5t&D7SaiAn9H$2sBA!M20+R==r6Gs?19_KvgZCtJDN$jHN`Rso=IV8GSc zor#e#D!OH?!tgVQKGHm~m}@W07A?4PM`_UFhmn2Y-`Lu!b^8bg>FS@|zvxQy!odcm zXiI}Z+PUsHJC)-~26RJR9R^0U`Cxo-W^@$V5E2rSpKs>mblUOgQ>Sw{plQ(J#$2r1 za70L$P^dsLV<$D%VA!r2l(EHk1S*{Zp5MR0MonzJaW*o_PERNAE^I{)VLW$hK}mCw6yLGDKyI8KU1af|VRfdQHHbbTmap?OTR=MC+8L2)Wef%SotC_T%+(bC*oSYq1#of8o`}Q#`>I zw_K|abaZzz8?=uF6aWW{XQN7St3NA~=^1{c#`@Y^S!LF0CKPMO8ZB8M#7rAWQqtyC zYVI=yCNg?;O-%&@`$CHaFTls&B8Q%g4(OC!t$y)4D`8@1KR%5W<4b7q;62X#h-AhE z`F~=_A$mgAL)^>DLcu?OTwF{PDgf=P*_{s$4^|Y>W7fIl2K|GBFR&&NFK%sEg^=;h_ZPewJkROX)U^F^G`#y?d_`MEOpHBs-OfbA%2p&4 zM=Ug&Y;${spLVl8H+P~uou7%BSu7)c?{I?VR%5*Dr-eyQMQ`sCc0@PCzy}ThVNL?n z&5R{s?E%yD4{qbU5=?bJ2O+K%y+6oj%5*&_qAS#xM!$t}{kT$)0l^zh4GlFify#>d z=o*J(LvT+4Z6pR~4J0aGV&Xg%M&JbsVCv52t-=tiba#t)cXuxf3A&Oq&1q{lSB!%)958wrv&)UoNI(Rb;+bez%Ru-Hupd`{QH~4Tr|iQIutO2 z2OGTjJ(6>gd~yecs-(vdt5~fBTvZ2ab9Sq$ir2df$9-!7uDyeUgGd)fsbl+K6SlG?Ab__09Y^60N{$V#a%^OV<^ysZ;1--1xmJk*`wisy2M9`aR ziQF*^H5@SoGU0IrI$|)>Li+=D$aVinT~Dvo=y9~U0XOX8&|`%N86E^~m(qLJt5{wU z&ps;*93pMD6fP;|Cr^0)8fB$K+mLHVve7dO{~&$aaT zXi!JXR$dN#ws1J!*hq8buF9e^e1_h`P|*moZp<-a*!n8C*RRzzXP~Hp%T?u9tPP~A zP;xZu32t#o(9@TKT1nZ!oq5-MBVRU>RLz>NOoKUIXUD+8-2CSDx-B`0Dn_cs-R=20 z6N({Aw<41Q%Iw&*Ky4=`GU~waa5lsL>E)^dqH3eF=10;1r3ML+P5~)tkQx*P z6eJ|2rA10|XoQh2si6mu6c9m)A%>I~x`vMX;eEcZ_iY~Le5dxe&suA*y$j4_`bP!t zRT&jO;~6gA!wg|th3teM8@|a0A3bEOj;s&5IL)*aj*dp$24z3zw`$J7sb*SN1N=tf zVq)%m51HAg6%W6#9619p{eIuCYPDl9F)reL>5G>a}SSOSoG}3=Dyv zfmcnzED9u9us>EtWPy#Hq(Zfxg5p1C{C2C>f7#maj`d?oGny2UfOG$9`X<8>3rr7d zQ^$ys4_4Ld8aG(XU%vDNj+dKNMo9gTbjj20?RfAzQ#?f8odH*IQQsjG@sEf9lHgaG>xfWZ9*eEtu#tWZe27Fg|<+XIDdwCkUiHJJi2wGCfJxjng?Uxo5 zaIr*Hn-AHrw=00$1!= znqI&J6L1qg{6)oM{SG5pB@*HmM_*ciSPwdM!1sEr4z#BY8i7Rsos+Z8Z(O|-0T44# zr-alQ8}o9#Y=r;K1ju8#C}_V)&S9rgmhYbP`rn3r_RJ?dG!M;R%C5TolYf=`LACP`j&hTN|VLd7)~LU2Q66{BYLPcuXEPYs3hh^_7#ka@Nb-R=`={ z>M`-R%|qEAm!)7dg*tAk+u5zhE>0fL=Oj-!w^ONyr`^BJMRld<+NY1spG!W-B1~Ty zV#KCcW8Zf96Fw{0KRpbox9W3WB<J^J3tVOsAhpRc=DR9jpeq01$i@jml3 zGl#=aUENmIrtk&x#U)*(imWGv(a|mV`DLkca!N+ZP!KA|FtgOTthoL?QNZKzlH?Z? zYRE)-O|K%9GcQ76tcnq$prVRH#9CO{s4{yj+K*HJO3ReW5OF};_$=hy7En0f0m5`9&E^1iUEoOV!ZVH9ZW!<;OmgA0w2E$WEq|P>_b8>P{ouk1O zeJ0pUqI6JKH%p?%ac(Y;9*Y298k_Wn^MtayQ^ibLl7uLa)|io#-_Q7 zbC_xQ0k)~h`?Mn>%)VMvmc5&n{a3n{V#d`{BYU1c-r zhnH2-B`BNDGoo(8)4flvRo=hHMBnN3pb+Ng&(Etl*vw>QVrJeY9~vGuZFD`&*f^cT zSJ`N5!|Xj*m;+!J&1lQ?flUs(_N>Y=fm3In??RtH4eMhA`(^tEdmB1!rB6?KV8asL z%ZrtaBLvM|U9Yi6WaN=gZKKeQwyIIbGROh#*w{!Gamor$`=|ito;_RR+^5$w#Jnxf zQ^|pL@Zlr8da}3I1dNaxz>%46MavV3dpS?ftt?J2y@$>87L8KwZy;#sX7K@@NT0Behw#N(J($F&q*Qs;)5al{Jt zdqpV@=pHjw2{)7mHG*IZwDeD32KCOPDOrlZ>S_&lcLu08nR#Z0^GkQNohJ!I2%i+R z>>JiwFg7ZQgm+d~8ZkH8X+Nuh-{%OcdaN}iM%BV0 zyRq`M?)kwphNzZ_Y{7g^1nkU_09tZB>dt$Zc+oF*)6sdy6i_(?%(%>Ru^JlzJRHKC3$J|WP~_|k45;ma>Rs_Fv$YkFOzt0K)<|v5G+Y{Fmf&yY z<-dcxR3SFMRsB}~lLr423G9efiIT>D{k7}OhcM=grhRsyXOy^ z9*HaPD3&2f@1siFd2n)sWiK$%6crY8_Wm0G=5Axx*T|jE`Rk+PgOA^)wICT@MWq;- zW&ON6%I>NwFMr6O35Q%7YlN}bB5|b~=Y$aH)t5udujvh{VIBOhY{kG{yM}W{3o}az z{$AwV1f)Or53X>yXw75R--9wjk^0jmmyHdVpt7>9gX`2GWEHr2IM_co?>=xFuzLIU zK4k@R<=c6fvO%pOus}B^$VfGZW?|#EsMu&QKzH}T{Hg_hEAxtKBBf66$lOpM6+MojWW3kfZ$Y&$u5ou1+g zT*~u1otha~qizQV(|9S}BqrGo%96Pp@OOUUzsXoAbE&Ni`BNZC^S@_$hS#A>e87=s zMjp~S?+C15KQMD#@z$ro>cD^t9C=LSk8t1Jt#cjEp_#<8xk{t8xlX**(@y@xUOg?F z<&~8~FSJqd8Lkt|>*;7~dj*g$51lGkykl(+1kxEDk5TWUF%=>2Evb^ay6(-wrPRh# z2Ms^Avt3TpP@oKs%OcL&UX|sjrTCmI&7gvci;IQ)6>|j#t!bf6UfxB;zFcAaeQsWL z^;#j@BT}G2-i%0ycey9I7F;q@hi8mr5_{5UTk~!wr5=4e*4^#l+Q#G$Wox@EFH&n{ z2&1qjJ}and^nq7MbC2=#ylu-|nc-^Mlu!1`v%%%6DAtjk_grkOaN5iztM?)p^>T52x z`^o;^78x2!wv(b}RVprjYhh7kuMuuk zOiq5C>^fP!Gk<8`^Fax(#AL6~pO&RlHMLn;sV~28?cBiBd(tb%+=~6);O(WV^2yBW z9cCtjT==168h)GGZkp76lwnpA)24pEuB0v0m(D9Ga6kBL z9iQYbE<^Jk?^sX~W&;?HQ86486k1sKRoSVO?k$Q&?}$yPus~p&G#xIJGzL``7Zv+p zno6@3(0_+4z}6%3#n{{0N^+a``FVSuTn==s_1aiBg}!-N=xS-b`0&JeZfvMwB9-zE z(~_bhG`+HTzGh$seA^m+^w7t4jlH(jLF=kmj*#QSV=L^BRDP#nzm5H>%C3(x4XHkydu?ruV;>>%_RkE_%EmoqoGsh)!RagEbG zr^8QrgThAh78X$d*qD))zOXsS`$6qteB@z96?D)NsbXK_TZrP($CTvsOEO5^?=y}B z%>x6tSF7&|Uf8OWK@#rU?+-R9b#m1CIANf-q~B#>@K>1{$7P6)&z*M>?&{+MgI+&0 zN*>5y5s0~~xp6fpFqr?pUR8QNsJVip7d+#xLy|W_Mq?2xwmo`Wv;i$k>rp-aoyL{# zIq`?^J#30?hjiU*AOIs3qYjUH&Qa2B&mZVo>xC498pIzvlgnT(P>RdFKdtg#dQ2V5 zH^7(H4ez*|r-dvvQJ&vAP%r1me|!mwr=54Yv$z8P`dcS4W6Fn!BJ{BwuPR}kEpPAw+mnPO4CnzJ9g5Ir6?U)yJ>6d&w`etv6tPow zRaI`53=J%cbwqHxITuYa51mfofJl8Esws#Rtdzx8Q_0V$hQRLG;WM}x!&W$G@rPbpN^v)7G z^9Bo!I`L~t9J?PM-$~-pzc=)s+QKY*X>wB18n!X^rpE6#aVqW-KI6Ul++V4b)%L5Y zkrafKVs9KZ9lFvJ(*S!sCI(@z0Q0pxwvtc<+B@JQ0Lm>$Od{*VSfZxRSc~dCKRSE) z#HdMR05N6~wRzmgUt+huLkG*c`W)n~*Dq}r=jUnZr116jXcLszJZNv^=I&OCy!ms+ zfnfTb_bIp2A|>HFeE0nD@bF&s1=TSUF>uoaHayy}c2?ibvq%l8iLDq&p zj(gI)*=M=dY!T6!*lY|ROyx_b2zBuhc?y*VZ(3pFHQZ^Z*Y zvUVM2hCV;JS(B5qus{brFb|ZM4@kWG5lK!geOm0pph82sc*D4UpKeDckA3T$0%d7d@< zTmEdTYa#nZAs4*H0YnVNr%Qr%IXE<`vMY=P00{3mm24B3+4i!4j*bp+J$Rnn*K7GP zYB6zeosO=-$?DgATHukUt9nOB z`Z&+TWXr^GRUPTBzFTs>5na+#i?Fq^0WjAxLSM&F3l{t1X7+E8G64pBEmYPSRWQWm zB)CJCf&%^uV;m0DSoVs;BaA2GRPF-YM*v+9@uD6;M^rUTa>i?;@$MJn1;8pR@MQ* z-8dBxOep)f*iexFdgk0S1sa#Z8q5|5TrTP5;^p?_pptRqw?>m0Ln_&)2~UfWHzt{gZ*n q*c1PEt@{9*UFbvq_YyJZM6(XhqrNOKf!SkV6rRG<$0c&l{r?9yBS$m< literal 0 HcmV?d00001 diff --git a/static/img/tutorial/ping_command_empty_selection.png b/static/img/tutorial/ping_command_empty_selection.png new file mode 100644 index 0000000000000000000000000000000000000000..1669632937647144c5a5509b3c86748af42954b6 GIT binary patch literal 15870 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 literal 0 HcmV?d00001 diff --git a/static/img/tutorial/ping_command_in_command_menu_with_arguments.png b/static/img/tutorial/ping_command_in_command_menu_with_arguments.png new file mode 100644 index 0000000000000000000000000000000000000000..f2a80d81f2b44f6954811c4771a0e051a51e1afb GIT binary patch literal 15158 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 SP__Z^kbS2lSuSq;>3;z76+N~9 literal 0 HcmV?d00001 diff --git a/static/img/tutorial/ping_command_in_command_menu_with_choices.png b/static/img/tutorial/ping_command_in_command_menu_with_choices.png new file mode 100644 index 0000000000000000000000000000000000000000..549f8bd8debc39b1c40a88033b4a23971e987969 GIT binary patch literal 20585 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

4Bb*jN&aCSL={=CnJDLwr`PMNs;VyhgmCAa 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

r}TRCja$3I7@lN5k*sALcw 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 literal 0 HcmV?d00001 diff --git a/static/img/tutorial/ping_command_multiple_selections_string.png b/static/img/tutorial/ping_command_multiple_selections_string.png new file mode 100644 index 0000000000000000000000000000000000000000..9825213726a9dfc1a6afd971e2655cb374d56a47 GIT binary patch literal 56050 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 E2ZT63^8f$< literal 0 HcmV?d00001 diff --git a/static/img/tutorial/simple_ping_command_executed.png b/static/img/tutorial/simple_ping_command_executed.png new file mode 100644 index 0000000000000000000000000000000000000000..5e9ad7d0f25a9ba1e0ce2942df3376339cb6ffeb GIT binary patch literal 10859 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 literal 0 HcmV?d00001 diff --git a/static/img/tutorial/simple_ping_command_executed_text_mode.png b/static/img/tutorial/simple_ping_command_executed_text_mode.png new file mode 100644 index 0000000000000000000000000000000000000000..af53ffccf75c1b27b725d61c4836e10b4f94d44a GIT binary patch literal 41372 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 j!Be^a8Grj<8@TqDNJ-?ohPyBWh)rHbS-MoxB