diff --git a/.npmrc b/.npmrc new file mode 100644 index 00000000..ebda5dac --- /dev/null +++ b/.npmrc @@ -0,0 +1 @@ +@buf:registry=https://buf.build/gen/npm/v1 \ No newline at end of file diff --git a/docs/about/introduction.mdx b/docs/about/introduction.mdx index 63be7c4e..0c313f53 100644 --- a/docs/about/introduction.mdx +++ b/docs/about/introduction.mdx @@ -11,9 +11,9 @@ Meshtastic® is a project that enables you to use inexpensive LoRa radios as a l ### Features -- Long range ([_206km record by StarWatcher, CVR, rook, kboxlabs_](/docs/overview/range-tests#current-record)) +- Long range ([_254km record by kboxlabs_](/docs/overview/range-tests#current-record)) - No phone required for mesh communication -- Decentralised communication - no dedicated router required +- Decentralized communication - no dedicated router required - Encrypted communication - Excellent battery life - Send and receive text messages between members of the mesh diff --git a/docs/about/overview/radio-settings.mdx b/docs/about/overview/radio-settings.mdx index fbb64302..62478b5d 100644 --- a/docs/about/overview/radio-settings.mdx +++ b/docs/about/overview/radio-settings.mdx @@ -109,7 +109,7 @@ Some example settings: The link budget used by these calculations assumes a transmit power of 17dBm and an antenna with 0dB gain. Adjust your link budget assumptions based on your actual devices. -These channel settings may not have been tested. Use at your own discretion. Share on with your successes or failure. +These channel settings may not have been tested. Use at your own discretion. Share on https://meshtastic.discourse.group with your successes or failure. ## Cryptography diff --git a/docs/about/overview/range-test.mdx b/docs/about/overview/range-test.mdx index 47bba5f4..87a2a075 100644 --- a/docs/about/overview/range-test.mdx +++ b/docs/about/overview/range-test.mdx @@ -8,9 +8,9 @@ sidebar_position: 4 ## Current Record -- **Range:** 206km (128 miles) -- **Record Holders:** _StarWatcher, CVR, rook, kboxlabs_ -- **Source:** [Meshtastic Discourse](https://meshtastic.discourse.group/t/practical-range-test-results/692/130) +- **Range:** 254km (158 miles) +- **Record Holders:** _kboxlabs_ +- **Source:** [Meshtastic Discourse](https://meshtastic.discourse.group/t/practical-range-test-results/692/137) ### Modem Settings @@ -22,10 +22,49 @@ Default Long_Fast ### Node A +- **Device:** [RAK4631 Core](https://meshtastic.org/docs/hardware/devices/rak/core-module) with [RAK 5005-O Base Board](https://meshtastic.org/docs/hardware/devices/rak/base-board) +- **Firmware Version:** 2.1.17 +- **Antenna:** 902-928MHz 5.8 dBi Slinkdsco Outdoor + +### Node B + +- **Device:** [RAK4631 Core](https://meshtastic.org/docs/hardware/devices/rak/core-module) with [RAK 19003 Mini Base Board](https://meshtastic.org/docs/hardware/devices/rak/base-board) +- **Firmware Version:** 2.1.18 +- **Antenna:** Standard LoRa 915MHz 60mm 2dBi Omnidirectional + +Sending Node + +Receiving Node + +Geographic Locations + + +## Previous Record + +- **Range:** 206km (128 miles) +- **Record Holders:** _StarWatcher, CVR, rook, kboxlabs_ +- **Source:** [Meshtastic Discourse](https://meshtastic.discourse.group/t/practical-range-test-results/692/130) + + + +### Modem Settings + +Default Long_Fast +- **Frequency:** 915MHz +- **Bandwidth:** 250 +- **Spread Factor:** 11 +- **Coding Rate:** 4/8 + + + +### Node A + - **Device:** [LILYGO TTGO T-Beam](/docs/hardware/devices/tbeam) - **Firmware Version:** 2.1.10 - **Antenna:** Stock Antenna + + ### Node B - **Device:** [LILYGO TTGO T-Beam](/docs/hardware/devices/tbeam) @@ -38,6 +77,7 @@ Default Long_Fast + ## Previous Record - **Range:** 166km (103 miles) diff --git a/docs/configuration/device-config/channels.mdx b/docs/configuration/device-config/channels.mdx index 2efe840f..1f0589b8 100644 --- a/docs/configuration/device-config/channels.mdx +++ b/docs/configuration/device-config/channels.mdx @@ -48,7 +48,7 @@ Each channel is assigned one of 3 roles: 1. `PRIMARY` or `1` - This is the first channel that is created for you on initial setup. - Only one primary channel can exist and can not be disabled. - - Direct messages are only available on this channel. + - Periodic broadcasts like position and telemetry are only sent over this channel. 2. `SECONDARY` or `2` - Can modify the encryption key (PSK). 3. `DISABLED` or `0` diff --git a/docs/configuration/device-config/device.mdx b/docs/configuration/device-config/device.mdx index 896326ea..bec43c9b 100644 --- a/docs/configuration/device-config/device.mdx +++ b/docs/configuration/device-config/device.mdx @@ -35,7 +35,7 @@ This setting defines the device's behavior for how messages are rebroadcasted. | Value | Description | | :-----------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | | `ALL` | ALL (Default) - This setting will rebroadcast ALL messages from its primary mesh as well as other meshes with the same modem settings, including when encryption settings differ. | -| `All_SKIP_DECODING` | ALL_SKIP_DECODING - Same as behavior as ALL, but skips packet decoding and simply rebroadcasts them. **Only available with Repeater role.** | +| `ALL_SKIP_DECODING` | ALL_SKIP_DECODING - Same as behavior as ALL, but skips packet decoding and simply rebroadcasts them. **Only available with Repeater role.** | | `LOCAL_ONLY` | LOCAL_ONLY - Ignores observed messages from foreign meshes that are open or those which it cannot decrypt. Only rebroadcasts message on the nodes local primary / secondary channels. | ### Serial Console diff --git a/docs/configuration/device-config/index.mdx b/docs/configuration/device-config/index.mdx index eb6f2a2c..54578d4d 100644 --- a/docs/configuration/device-config/index.mdx +++ b/docs/configuration/device-config/index.mdx @@ -17,5 +17,5 @@ There are several config sections in the Meshtastic firmware, these are broken o | [LoRa](/docs/settings/config/lora) | The LoRa config options are: Region, Modem Preset, Max Hops, Transmit Power, Bandwidth, Spread Factor, Coding Rate, Frequency Offset, Transmit Disabled and Ignore Incoming Array. | | [Network](/docs/settings/config/network) | Network config options are: WiFi Enabled, WiFi SSID, WiFi PSK, WiFi Mode and NTP Server. | | [Position](/docs/settings/config/position) | Position config options are: GPS Enabled, GPS Update Interval, GPS Attempt Time, Fixed Position, Smart Broadcast, Broadcast Interval and Position Packet Flags. | -| [Power](/docs/settings/config/power) | Power config options are: Charge Current, Power Saving, Shutdown after losing power, ADC Multiplier Override Wait Bluetooth Interval, Mesh Super Deep Sleep Timeout, Super Deep Sleep Interval, Light Sleep Interval and Minimum Wake Interval. | +| [Power](/docs/settings/config/power) | Power config options are: Charge Current, Power Saving, Shutdown after losing power, ADC Multiplier Override Wait Bluetooth Interval, Light Sleep Interval and Minimum Wake Interval. | | [User](/docs/settings/config/user) | The user config options are: Long Name, Short Name, and Is Licensed | diff --git a/docs/configuration/device-config/lora.mdx b/docs/configuration/device-config/lora.mdx index 43581c84..821e7a7c 100644 --- a/docs/configuration/device-config/lora.mdx +++ b/docs/configuration/device-config/lora.mdx @@ -36,7 +36,7 @@ The presets are designed to provide further options for optimizing either speed 1. A high number of devices exist in the mesh, or messages are sent very frequently. Faster speeds (and therefore lower radio time per device) can help with mesh network congestion. 2. Maximum range is desired, for long range scenarios where a several second delay in message receipt is acceptable (for instance, attempting to send messages from a town to a distant mountain top). -The Presets available are as follows, and follow a linear pattern of Fastest <--> Slowest, and Shortest <--> Longest range: +The Presets available are as follows, and follow a linear pattern of Fastest \<\-\-\> Slowest, and Shortest \<\-\-\> Longest range: 1. `SHORT_FAST` (Fastest, highest bandwidth, lowest airtime, shortest range) @@ -81,7 +81,7 @@ Please be aware that values < 62.5kHz may require a TCXO on some hardware device ### Spread Factor -A number from 7 to 12. Indicates the number of chirps per symbol as 1< Radio Configuration > User** @@ -63,7 +63,7 @@ User Config options are available for Android. :::info -`ShortName` and `LongName` User config options are available on iOS, iPadOS and macOS at `Settings > Radio Configuration > User`. +All User config options are available on iOS, iPadOS and macOS at `Settings > Radio Configuration > User`. ::: diff --git a/docs/configuration/gpio-peripherals.mdx b/docs/configuration/gpio-peripherals.mdx index 707b850a..e66e0446 100644 --- a/docs/configuration/gpio-peripherals.mdx +++ b/docs/configuration/gpio-peripherals.mdx @@ -6,26 +6,12 @@ slug: /hardware/peripheral/ sidebar_position: 6 --- -## Firmware Versions +## Remote Hardware :::warning GPIO access is fundamentally dangerous because invalid options can physically damage or destroy your hardware. Ensure that you fully understand the schematic for your particular device before trying this as we do not offer a warranty. Use at your own risk. ::: -The device firmware runs on the nodes to build the mesh for communication. Each different make and model of device requires a different build of the Meshtastic firmware in order to run properly. Thankfully, due to the design of Meshtastic, it is possible to port the firmware to new devices as they become available. The firmware currently runs on a range of ESP32 based devices, but there is also increasing support for the nRF52 microprocessor with some more recent devices coming to market. - -The current firmware has support for a screen to display received messages, along with information about nodes on the mesh, and more detailed information about the device on which it is running. - -The latest firmware can be downloaded from the [Downloads](/downloads) page. If you wish to view the code or contribute to development of the firmware, please visit the device code [GitHub page](https://github.com/meshtastic/firmware). - -:::info -Please be aware that there are significant changes between version branches 1.2.x and 1.3.x which mean that devices need to be running the same branch of firmware to be able to talk to each other. Python, Android, and other software applications will also need to be running the same branch to be able to talk to the device. - -This feature uses a preinstalled module in the device code and associated command line flags/classes in the python code. You'll need to be running at least version 1.2.23 (or later) of the python and device code to use this feature. -::: - -## Remote Hardware - ### Supported Operations - Set any GPIO diff --git a/docs/configuration/module-config/audio.mdx b/docs/configuration/module-config/audio.mdx index 6e13bc46..59f6cb03 100644 --- a/docs/configuration/module-config/audio.mdx +++ b/docs/configuration/module-config/audio.mdx @@ -95,29 +95,29 @@ All audio module config options are available in the python CLI. Example command ::: -| Setting | Acceptable Values | Default | -| :-----------: | :-----------------------------------------------------------------------------------------------------------------------------: | :----------------------: | -| audio.enabled | `true`, `false` | `false` | -| audio.ptt_pin | GPIO Pin Number 1-39 | Default of `39` is Unset | -| audio.bitrate | `CODEC2_DEFAULT` `CODEC2_3200` `CODEC2_2400` `CODEC2_1600` `CODEC2_1400` `CODEC2_1300` `CODEC2_1200` `CODEC2_700B` `CODEC2_700` | `CODEC2_DEFAULT` | -| audio.i2s_ws | GPIO Pin Number 1-34 | no Default | -| audio.i2s_sd | GPIO Pin Number 1-39 | no Default | -| audio.i2s_din | GPIO Pin Number 1-34 | no Default | -| audio.i2s_sck | GPIO Pin Number 1-34 | no Default | +| Setting | Acceptable Values | Default | +| :----------------: | :-----------------------------------------------------------------------------------------------------------------------------: | :----------------------: | +|audio.codec2_enabled| `true`, `false` | `false` | +| audio.ptt_pin | GPIO Pin Number 1-39 | Default of `39` is Unset | +| audio.bitrate | `CODEC2_DEFAULT` `CODEC2_3200` `CODEC2_2400` `CODEC2_1600` `CODEC2_1400` `CODEC2_1300` `CODEC2_1200` `CODEC2_700B` `CODEC2_700` | `CODEC2_DEFAULT` | +| audio.i2s_ws | GPIO Pin Number 1-34 | no Default | +| audio.i2s_sd | GPIO Pin Number 1-39 | no Default | +| audio.i2s_din | GPIO Pin Number 1-34 | no Default | +| audio.i2s_sck | GPIO Pin Number 1-34 | no Default | :::tip Because the device will reboot after each command is sent via CLI, it is recommended when setting multiple values in a config section that commands be chained together as one. ```shell title="Example:" -meshtastic --set audio.enabled true --set audio.bitrate CODEC2_1400 +meshtastic --set audio.codec2_enabled true --set audio.bitrate CODEC2_1400 ``` ::: ```shell title="Enable / Disable Module" -meshtastic --set audio.enabled true -meshtastic --set audio.enabled false +meshtastic --set audio.codec2_enabled true +meshtastic --set audio.codec2_enabled false ``` ```shell title="Set WS to GPIO pin number 7" diff --git a/docs/configuration/module-config/canned-message.mdx b/docs/configuration/module-config/canned-message.mdx index 72161cea..5eb94b93 100644 --- a/docs/configuration/module-config/canned-message.mdx +++ b/docs/configuration/module-config/canned-message.mdx @@ -10,7 +10,7 @@ import TabItem from "@theme/TabItem"; The Canned Message Module will allow you to send messages to the mesh network from the device without using the phone app. You can predefine text messages to choose from. -The canned message module config options are: Enabled, Save, and Sender. Range Test Module config uses an admin message sending a `ConfigModule.CannedMessage` protobuf. +The canned message module config options are: Enabled, Send Bell, Messages, Input Source, Rotary Encoder Enabled, Up Down Encoder Enabled, Input Broker Pin A, Input Broker Pin B, Input Broker Pin Press, Input Broker Event Clockwise, Input Broker Event Counter Clockwise, and Input Broker Event Press. Canned Message config uses an admin message sending a `ConfigModule.CannedMessage` protobuf. @@ -25,7 +25,7 @@ Enables the canned message module. Sends a bell character with each message. The [External Notification Module](external-notification) can be set up to beep when a new message arrives. -This module can also be configured to beep only when message contains the bell character. +This module can also be configured to beep only when a message contains the bell character. ### Messages @@ -119,7 +119,7 @@ Example commands are below: | canned_message.enabled | `true`, `false` | `false` | | canned_message.send_bell | `true`, `false` | `false` | | canned_message.allow_input_source | `rotEnc1`, `_any`, `upDownEnc1`, `cardkb` | `_any` | -| canned_message.messages | `string` | `""` (separate using pipes) | +| --set-canned-message | `string` | `""` (separate using pipes) | | canned_message.inputbroker_event_cw | `InputEventChar` | (not defined) | | canned_message.inputbroker_event_ccw | `InputEventChar` | (not defined) | | canned_message.inputbroker_event_press | `InputEventChar` | (not defined) | diff --git a/docs/configuration/module-config/external-notification.mdx b/docs/configuration/module-config/external-notification.mdx index 2efed457..79ccf02f 100644 --- a/docs/configuration/module-config/external-notification.mdx +++ b/docs/configuration/module-config/external-notification.mdx @@ -10,6 +10,8 @@ import TabItem from "@theme/TabItem"; The External Notification Module will allow you to connect a buzzer, speaker, LED, or other device to notify you when a message has been received from the mesh network. You can enable up to 3 pins independently from each other. +The External Notification Module config options are: Enabled, Active, Alert Bell (General),Alert Bell Vibra, Alert Bell Buzzer, Alert Message (General), Alert Message Vibra, Alert Message Buzzer, Output (General), Output Vibra, Output Buzzer, Output Milliseconds, Use PWM, and Nag Timeout. External Notification config uses an admin message sending a `ConfigModule.ExternalNotificationConfig` protobuf. + ## External Notification Module Config Values @@ -18,6 +20,10 @@ The External Notification Module will allow you to connect a buzzer, speaker, LE Enables the external notification module. +### Active (general / LED only) + +Specifies whether the external circuit is active when the device's GPIO is low or high. If this is set true, the pin will be pulled active high, false means active low. + ### Alert when receiving a bell (general / LED, Vibra and Buzzer) Specifies if an alert should be triggered when receiving an incoming bell. @@ -26,10 +32,6 @@ Specifies if an alert should be triggered when receiving an incoming bell. Specifies if an alert should be triggered when receiving an incoming message. -### Active (general / LED only) - -Specifies whether the external circuit is active when the device's GPIO is low or high. - ### GPIO Pins (general / LED, Vibra and Buzzer) Specifies the GPIO that your external circuit is attached to on the device. On devices that have a PWM buzzer, you can use the buzzer for notifications by setting the use_pwm property to TRUE. The Buzzer Pin will be ignored and the device.buzzer_gpio is used instead. If you enable PWM mode, the device will use diff --git a/docs/configuration/module-config/mqtt.mdx b/docs/configuration/module-config/mqtt.mdx index f56e89f2..b4f70b72 100644 --- a/docs/configuration/module-config/mqtt.mdx +++ b/docs/configuration/module-config/mqtt.mdx @@ -8,9 +8,9 @@ sidebar_label: MQTT import Tabs from "@theme/Tabs"; import TabItem from "@theme/TabItem"; -If your device is connected to Internet via wifi or ethernet, you can enable it to forward packets along to an MQTT server. This allows users on the local mesh to communicate with users on the internet. One or more channels must be enabled as uplink and/or downlink for protobufs to be transmitted from and/or to the mesh (See [channels](/docs/settings/config/channels#downlink-enabled)). Without these settings the node will still connect to MQTT server and send status messages. +If your device is connected to Internet via wifi or ethernet, you can enable it to forward packets along to an MQTT server. This allows users on the local mesh to communicate with users on the internet. One or more channels must also be enabled as uplink and/or downlink for packets to be transmitted from and/or to your mesh (See [channels](/docs/settings/config/channels#downlink-enabled)). Without these settings enabled, the node will still connect to the MQTT server but only send status messages. -The MQTT module config options are: Enabled, Server Address, Username, Password, Encryption Enabled and JSON Enabled. MQTT Module config uses an admin message sending a `ConfigModule.MQTT` protobuf. +The MQTT module config options are: Enabled, Server Address, Username, Password, Encryption Enabled, JSON Enabled, TLS Enabled, and Root Topic. MQTT Module config uses an admin message sending a `ConfigModule.MQTT` protobuf. ## Settings @@ -22,7 +22,7 @@ Enables the MQTT module. ### Server Address -The server to use for MQTT. If not set, the default server public will be used. +The server to use for MQTT. If not set, the default public server will be used. ### Username @@ -30,16 +30,24 @@ MQTT Server username to use (most useful for a custom MQTT server). If using a c ### Password -MQTT password to use (most useful for a custom MQTT server). If using a custom server, this will be honored even if empty. If using the default server, this will only be honored if set, otherwise the device will use the default password +MQTT password to use (most useful for a custom MQTT server). If using a custom server, this will be honored even if empty. If using the default server, this will only be honored if set, otherwise the device will use the default password. ### Encryption Enabled -Whether to send encrypted or decrypted packets to MQTT. This parameter is only honored if you also set server (the default official mqtt.meshtastic.org server can handle encrypted packets) Decrypted packets may be useful for external systems that want to consume meshtastic packets. +Whether to send encrypted or unencrypted packets to MQTT. This parameter is only honored if you also set server (the default official mqtt.meshtastic.org server can handle encrypted packets). Unencrypted packets may be useful for external systems that want to consume meshtastic packets. ### JSON Enabled Enable the sending / consumption of JSON packets on MQTT. These packets are not encrypted, but offer an easy way to integrate with systems that can read JSON. +### TLS Enabled + +If true, we attempt to establish a secure connection using TLS. + +### Root Topic + +The root topic to use for MQTT messages. This is useful if you want to use a single MQTT server for multiple meshtastic networks and separate them via ACLs. + ## MQTT Module Config Client Availability :::info -MQTT module config is not available for Apple. + +MQTT Config options are available on iOS, iPadOS and macOS at Settings > Modules > MQTT. + ::: @@ -78,14 +88,16 @@ All MQTT module config options are available in the python CLI. Example commands ::: -| Setting | Acceptable Values | Default | -| :---------------------: | :---------------: | :-----: | -| mqtt.enabled | `true`, `false` | `false` | -| mqtt.address | `string` | | -| mqtt.username | `string` | | -| mqtt.password | `string` | | -| mqtt.encryption_enabled | `string` | | -| mqtt.json_enabled | `true`, `false` | `false` | +| Setting | Acceptable Values | Default | +| :---------------------: | :---------------: | :-----------------: | +| mqtt.enabled | `true`, `false` | `false` | +| mqtt.address | `string` |`mqtt.meshtastic.org`| +| mqtt.username | `string` | `meshdev` | +| mqtt.password | `string` | `large4cats` | +| mqtt.encryption_enabled | `true`, `false` | `false` | +| mqtt.json_enabled | `true`, `false` | `false` | +| mqtt.tls_enabled | `true`, `false` | `false` | +| mqtt.root | `string` | | :::tip diff --git a/docs/configuration/module-config/range-test.mdx b/docs/configuration/module-config/range-test.mdx index be08c540..0177b933 100644 --- a/docs/configuration/module-config/range-test.mdx +++ b/docs/configuration/module-config/range-test.mdx @@ -8,7 +8,16 @@ sidebar_label: Range Test import Tabs from "@theme/Tabs"; import TabItem from "@theme/TabItem"; -This module allows you to test the range of your Meshtastic nodes. It requires at least two nodes, a sender and a receiver. The receiving node then saves the messages along with the GPS coordinates at which they were received into a .csv file. This .csv file can then be integrated into [Google Earth](https://earth.google.com), [Google Maps - My Maps](https://mymaps.google.com), or any other program capable of processing .csv files. This can enable you to visualize your mesh. +This module allows you to test the range of your Meshtastic nodes. It requires at least two nodes, a sender and a receiver. The receiving node saves the messages along with the GPS coordinates at which they were received into a .csv file. This .csv file can then be integrated into [Google Earth](https://earth.google.com), [Google Maps - My Maps](https://mymaps.google.com), or any other program capable of processing .csv files. This can enable you to visualize your mesh. + +While a minimum of two radios is required, more can be used. You can have any number of receivers and senders that your mesh is able to handle. You can test having a single sender with multiple receivers or a single receiver with multiple senders. Let us know on the [forum thread](https://meshtastic.discourse.group/t/new-plugin-rangetestplugin/2591) the results of your configuration. + +:::info + +Be sure to turn off the module or disable sending when not in use. This will use a lot of time on air, slow down your mesh, and spam your channel. + +::: + The range test module config options are: Enabled, Save, and Sender. Range Test Module config uses an admin message sending a `ConfigModule.RangeTest` protobuf. @@ -18,13 +27,33 @@ The range test module config options are: Enabled, Save, and Sender. Range Test Enables the range test module. -### Save CSV File `ESP32 Only Setting` +### Save CSV File -If enabled, we will save a log of all received messages to a file named rangetest.csv which you can access from the web server Extensions > File Browser > rangetest.csv. The file will be created after receiving messages. The device will abort writing if there is less than 50k of space on the filesystem to prevent filling up the storage. +:::info + +Saving files is only available on ESP32-based devises + +::: + +If enabled, a log of all received messages will be saved to a file named rangetest.csv. + +To access this file, first turn on the WiFi on your device and connect to your network. Once you can connect to your device, navigate to `meshtastic.local/rangetest.csv` (or your_device_ip/rangetest.csv) and the file will be downloaded automatically. This file will only be created after receiving initial messages. + +To prevent filling up the storage, the device will abort writing if there is less than 50kb of space on the filesystem. ### Sender Interval -How long to wait between sending test packets. 0 is default which disables sending messages. +How long to wait between sending sequential test packets. 0 is default which disables sending messages. + +### Recommended Sender Settings + +| Radio Setting | `range_test.sender` | +| :-----------: | :-----------------: | +| Long Slow | 60 | +| Long Alt | 30 | +| Medium | 15 | +| Short Fast | 15 | + ## Range Test Module Config Client Availability @@ -48,6 +77,8 @@ Range Test Config options are available for Android. ::: +Android also had the option to download a rangetest.csv file which is stored on your phone. This file does not require the Range Test module to be active and will log all incoming Nodeinfo, Position, Telemetry and Messages. + @@ -55,6 +86,8 @@ Range Test Config options are available for Android. All range test module config options are available on iOS, iPadOS and macOS at Settings > Modules > Range Test. ::: +Apple apps also have the option to download logged position data which is stored on your iPhone/iPad/Mac. Access this by clicking on the Nodes tab, selecting a node, then select Position Log and click Save. This data file does not require the Range Test module to be active. + @@ -103,42 +136,13 @@ meshtastic --set range_test.sender 0 :::info -No range test module config options are available in the Web UI. +All range test module config options are available in the Web UI. ::: -## Examples - -While a minimum of two radios is required, more can be used. You can have any number of receivers and senders that your mesh is able to handle. You can test having a single sender with multiple receivers or a single receiver with multiple senders. Let us know on the [forum thread](https://meshtastic.discourse.group/t/new-plugin-rangetestplugin/2591) the results of your configuration. - -Be sure to turn off either the module configured as a sender or the device where the module setup as sender when not in use. This will use a lot of time on air and will spam your channel. - -Also be mindful of your space usage on the file system. It has protections from filling up the space but it's best to delete old range test results. - -:::note -Leaving this module on can slow down your mesh. Currently, the messages are sent using the same `TEXT_MESSAGE_APP` [port that all other messages](https://buf.build/meshtastic/protobufs/docs/main:meshtastic#meshtastic.PortNum) are sent on. -::: - -### Accessing your CSV - -Connect to your device over WiFi, either using the [software access point](/docs/settings/config/network#software-access-point) or [WiFi Client](/docs/settings/config/network#wifi-client). Then navigate to `meshtastic.local` (or your IP address). Your file will be available for download under `Extensions > File Browser > rangetest.csv` once it has been created by receiving messages. - -```plaintext title="Example URLs" -http://meshtastic.local -http://198.168.0.15 -``` - -### Recommended Sender Settings - -| Radio Setting | `range_test.sender` | -| :-----------: | :-----------------: | -| Long Slow | 60 | -| Long Alt | 30 | -| Medium | 15 | -| Short Fast | 15 | ## Application Examples @@ -169,10 +173,6 @@ You can style the ranges differently based on the values, so you can have the pi ## FAQ -Q: Where is rangetest.csv saved? - -- Turn on the WiFi on your device as either a WiFi client or a WiFi AP. Once you can connect to your device, navigate to `Extensions > File Browser` and you will see `rangetest.csv` once messages have been saved and the file has been created. - Q: Do I need to have WiFi turned on for the file to be saved? - Nope, it'll just work. @@ -191,7 +191,7 @@ Q: What will happen if I run out of space on my device? Q: What do I do with the rangetest.csv file when I'm done? -- Go to /static and delete the file. +- Currently the only way to erase the file is to perform a factory reset. Q: Can I use this as a sender while on battery power? diff --git a/docs/configuration/module-config/serial.mdx b/docs/configuration/module-config/serial.mdx index 33961ba9..fb01189c 100644 --- a/docs/configuration/module-config/serial.mdx +++ b/docs/configuration/module-config/serial.mdx @@ -8,7 +8,7 @@ sidebar_label: Serial import Tabs from "@theme/Tabs"; import TabItem from "@theme/TabItem"; -The serial module config options are: Enabled, Echo, Mode, Receive GPIO, Transmit GPIO and Sender. Serial Module config uses an admin message sending a `ConfigModule.Serial` protobuf. +The serial module config options are: Enabled, Echo, Mode, Receive GPIO, Transmit GPIO, Baud Rate, Timeout, and Override Console Serial Port. Serial Module config uses an admin message sending a `ConfigModule.Serial` protobuf. This is a simple interface to send messages over the mesh network by sending strings over a serial port. Anything you send the node will be turned into a message sent out over the mesh, and anything received from the mesh will be sent to the serial port. Note that this module does not (yet) allow arbitrary protobuf commands to be sent over the serial connection. @@ -196,13 +196,7 @@ Default is to use RX GPIO 16 and TX GPIO 17. ### Interfacing PIR Sensor With External Microcontroller -The following is an example of using a Raspberry Pi Pico connected to a PIR sensor to detect motion. When motion is detected, a message is sent via. serial to the T-Beam. The T-Beam transmits the message as text over the default channel by utilizing the serial module in TXTMSG mode. - -#### BOM - -- Raspberry Pi Pico running [CircuitPython](https://learn.adafruit.com/getting-started-with-raspberry-pi-pico-circuitpython) -- T-Beam V1.1 running Meshtastic -- PIR Sensor ([Adafruit Breadboard Model](https://www.adafruit.com/product/4871)) +The following are examples of using either a Raspberry Pi Pico or Arduino Mini Pro connected to a PIR sensor to detect motion. When motion is detected, a message is sent via serial to the T-Beam. The T-Beam transmits the message as text over the default channel by utilizing the serial module in TXTMSG mode. #### Meshtastic Software Configuration @@ -210,9 +204,15 @@ The following is an example of using a Raspberry Pi Pico connected to a PIR sens - GPIO Pins (For T-Beam) RX 13, TX 14 - 38400 Baud -#### Wiring +#### Rasberry Pi Pico BOM -![image](https://user-images.githubusercontent.com/2799310/210852481-21ea76e5-ecaa-40c1-8f34-635ef2a1c95b.png) +- A Raspberry Pi Pico running [CircuitPython](https://learn.adafruit.com/getting-started-with-raspberry-pi-pico-circuitpython) +- T-Beam V1.1 running Meshtastic +- PIR Sensor ([Adafruit Breadboard Model](https://www.adafruit.com/product/4871)) + +#### Raspberry Pi Pico Wiring + +![image](/img/modules/Serial/pico-pir-wiring.png) - TX pin 14 on the T-Beam to RX pin 2 on the Pico - RX pin 13 on the T-Beam to TX pin 1 on the Pico @@ -245,3 +245,52 @@ while True: time.sleep(30) time.sleep(0.5) ``` + +#### Arduino Mini Pro BOM +- An Arduino Mini Pro with example sketch from below uploaded to it. +- T-Beam V1.1 running Meshtastic +- PIR Sensor ([Adafruit Breadboard Model](https://www.adafruit.com/product/4871)) + +#### Arduino Mini Pro Wiring + +![image](/img/modules/Serial/arduino-mini-pro-pir-wiring.png) + +- T-BEAM RX PIN 13 to TX PIN on the ARDUINO MINI +- T-BEAM TX PIN 14 to RX PINon the ARDUINO MINI +- T-BEAM PIN 3.3V to 3.3V PIN on the ARDUINO MINI +- T-BEAM PIN GND to GND PIN on the ARDUINO MINI +- ARDUINO MINI PIN 2 to OUT PIN on the PIR SENSOR +- ARDUINO MINI PIN 3.3V to 3.3V on the PIR SENSOR +- ARDUINO MINI PIN GND to GND PIN on the PIR SENSOR + +#### Arduino Mini Pro Code + +```cpp +int LED = 13; // the pin to which the LED is connected +int PIR = 2; // the pin to which the sensor is connected +int previousState = LOW; // previous state of the sensor + + +void setup() { +pinMode(LED, OUTPUT); // initialize the LED as an output +pinMode(PIR, INPUT); // initialize the sensor as an input +Serial.begin(9600); // initialize serial communication +} + +void loop(){ + int currentState = digitalRead(PIR); // read the current state of the sensor + if (currentState != previousState) { // check if the state has changed + if (currentState == HIGH) { // check if there is motion + digitalWrite(LED, HIGH); // turn the LED on + Serial.println("Motion Detected"); +} + else { + digitalWrite(LED, LOW); // turn the LED off + Serial.println("No Motion"); + } +previousState = currentState; // update the previous state + } + delay(100); // small delay to avoid false sensor readings + +} +``` diff --git a/docs/development/device/http-api.mdx b/docs/development/device/http-api.mdx index 833dfc13..454d8054 100644 --- a/docs/development/device/http-api.mdx +++ b/docs/development/device/http-api.mdx @@ -84,13 +84,13 @@ Since authentication is also eventually needed for our other transports (TCP and ### JavaScript -See: +See: https://github.com/meshtastic/meshtastic.js A reference client written in JavaScript will provide a JavaScript API for using this transport. That client will do HTTP connections, use the generated protobuf JavaScript code and provide an API that hides all of this REST plumbing. The two key methods will be `sendToRadio(packet)` and `onFromRadio(callback)`. ### Protoman -See: +See: [https://github.com/spluxx/Protoman] Protoman is able to interface with the Meshtastic REST API out of the box. This is useful for manual testing of the endpoints. @@ -100,4 +100,4 @@ HTTP and HTTPS are both supported on the ESP32 using self signed certificates on ## Related documents -- Interesting slide pack on the concept: +- Interesting slide pack on the concept: [https://www.slideshare.net/mokeefe/javaone-2009-ts5276-restful-protocol-buffers] diff --git a/docs/development/python/library.mdx b/docs/development/python/library.mdx index bbec7753..ab00a66b 100644 --- a/docs/development/python/library.mdx +++ b/docs/development/python/library.mdx @@ -20,14 +20,14 @@ interface = meshtastic.serial_interface.SerialInterface() interface.sendText("hello mesh") ourNode = interface.getNode('^local') -print(f'Our node preferences:{ourNode.radioConfig.preferences}') +print(f'Our node preferences:{ourNode.localConfig}') # update a value print('Changing a preference...') -ourNode.radioConfig.preferences.gps_update_interval = 60 +ourNode.localConfig.position.gps_update_interval = 60 -print(f'Our node preferences now:{ourNode.radioConfig.preferences}') -ourNode.writeConfig() +print(f'Our node preferences now:{ourNode.localConfig}') +ourNode.writeConfig("position") interface.close() ``` @@ -57,23 +57,7 @@ interface.close() Note: Be sure to change the IP address in the code above to a valid IP address for your setup. -You can get and update settings like this: - -```python -import meshtastic -import meshtastic.serial_interface -interface = meshtastic.serial_interface.SerialInterface() - -ourNode = interface.getNode('^local') -print(ourNode.radioConfig.preferences) -ourNode.radioConfig.preferences.gps_update_interval = 60 -print(ourNode.radioConfig.preferences) -ourNode.writeConfig() - -interface.close() -``` - -For the rough notes/implementation plan see [TODO](https://github.com/meshtastic/Meshtastic-python/blob/master/TODO). See the API for full details of how to use the library. +For the rough notes/implementation plan see [TODO](https://github.com/meshtastic/python/blob/master/TODO.md). See the API for full details of how to use the library. ## A note to developers of this lib diff --git a/docs/development/reference/protobufs.mdx b/docs/development/reference/protobufs.mdx index c8b76931..2603c7cc 100644 --- a/docs/development/reference/protobufs.mdx +++ b/docs/development/reference/protobufs.mdx @@ -5,4 +5,4 @@ title: Protobufs Protobufs are used by Meshtastic software to send and receive data between App and Device and Device to Device. -Documentation on the Meshtastic Protobuf messages can be fund on the [BSR(Buf Schema Registry)](https://buf.build/meshtastic/protobufs). +Documentation on the Meshtastic Protobuf messages can be found on the [BSR(Buf Schema Registry)](https://buf.build/meshtastic/protobufs). diff --git a/docs/development/web/building.mdx b/docs/development/web/building.mdx deleted file mode 100644 index e44865f3..00000000 --- a/docs/development/web/building.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -id: building -title: Building -sidebar_label: Building ---- - -Releases are automatically generated for every commit as per out [CI](https://github.com/meshtastic/web/blob/master/.github/workflows/main.yml). This performs two actions: - -1. Generates a perpetually updated [GitHub release](https://github.com/meshtastic/web/releases/tag/latest) with an accompanying `build.tar` that a automatically get's pulled by the firmware CI at build time. -2. A hosted version is deployed to [client.meshtastic.org](https://client.meshtastic.org). diff --git a/docs/development/web/index.mdx b/docs/development/web/index.mdx index 47a237ed..9f4c5be6 100644 --- a/docs/development/web/index.mdx +++ b/docs/development/web/index.mdx @@ -1,100 +1,66 @@ --- id: web-interface -title: Development Overview of the Web Interface -sidebar_label: Web Interface +title: Web Client Development +sidebar_label: Web Client sidebar_position: 4 --- -## Considerations +## Overview -We have a total of 458,752 bytes (448KB) available on the SPIFFS (Serial Peripheral Interface Flash File System) -- the on-board storage of the ESP32. Of that space, let's not use more than half of that (224KB) in order to leave space for other uses. +The Meshtastic web interface can be hosted or served from a node. -Right now, the Meshtastic Device Preferences as well as SSL keys use that space. We can imagine other future uses as well, such as logging chat messages and possibly saving received signal strength with GPS coordinates to create coverage heat maps. +The official hosted version can be found at [https://client.meshtastic.org](https://client.meshtastic.org). -## Static Files +The version served from a node can be accessed by first [connecting your node to your network](/docs/settings/config/network) and then navigating to http://meshtastic.local (or your_node_ip.local). -Static files can be placed in the /data folder. All files should be compressed in the .gz format with a .gz extension regardless of the file type. -As an example, this would mean we will have files such as: +## Development & Building -- style.css.gz -- meshtastic.js.gz -- meshtasticlogo.png.gz +### Development -Unless otherwise stated, files in the `/data` folder of the source code will be stored in `/static` on the device. +Clone the [Meshtastic Web Repo](https://github.com/meshtastic/web) repository + ```shell + git clone https://github.com/meshtastic/web.git + cd web + ``` -## Application Interface +Install the dependencies. -We make extensive use of [Meshtastic.js](https://github.com/meshtastic/meshtastic.js). +```bash +pnpm i +``` +### Building -## Embedded Server +Build the project: -### Root +```bash +pnpm build +``` -When requesting to the root of the web server, the either /static/index.html or /static/index.html.gz will be fetched from the file system and served to the client. We require that the file is in the gzip format. Serving an uncompressed file is not supported. If both index.html and index.html.gz are on the filesystem, index.html will be served and index.html.gz will be ignored. +Start the development server: -### /static +```bash +pnpm dev +``` -All files stored in /data/static in the Meshtastic source code will be available in /static on the Meshtastic device. +### Packaging -If a file is uploaded in a .gz format, the .gz extension will be stripped prior to being served to the client. Keep your filenames as short as possible. Short filenames work better than long file names. +Build the project: -An experimental file system browser with upload and delete capability is available by going to either: +```bash +pnpm build +``` -- http://meshtastic.local/static -- https://meshtastic.local/static +GZip the output: -There are known issues with uploading files with large file sizes. +```bash +pnpm package +``` -The current preferred method to upload data is through PlatformIO and the file system browser is provided without guarantees. -### /restart +## Releases -A post to this location will cause the device to restart. +Releases are automatically generated for every commit as per out [CI](https://github.com/meshtastic/web/blob/master/.github/workflows/main.yml). This performs two actions: -### /favicon.ico - -The Meshtastic logo in .ico format. - -### /hotspot-detect.html - -Used by the Apple Captive Portal Assistant. - -### /upload - -Endpoint to upload files. Used by the file manager. - -### /json/report - -Return a report of airtime statistics and current status. - -Formula to calculate when the current time period will roll over: - -`data.airtime.seconds_per_period - (data.airtime.seconds_since_boot % data.airtime.seconds_per_period)` - -### /json/scanNetworks - -Returns a json data structure of WiFi networks in the area. It's recommended to call this at least 2 or 3 times and combine the results. - -We purposely exclude open (insecure) networks from the list. - -### /json/spiffs/browse/static - -Returns a json data structure with the contents of /static. - -If a filename includes a '.gz' extension, will also return a modified version of the filename with the extension stripped. This is to support the functionality in /static (see above). - -### /json/spiffs/delete/static - -Delete file specified by the parameter "delete". Use the method "DELETE". - -eg: /json/spiffs/delete/static?delete=static/something.txt - -### Performance - -As a general guide, the ESP32 will return HTTP requests significantly faster than HTTPS requests. For responses of 1kb or less, expect the following for real world performance: - -HTTP - 3.0 requests / sec -HTTPS - 0.4 requests / sec - -The bottleneck of HTTPS is with the SSL handshake. We will get better performance serving one large file rather than multiple small files. +1. Generates a perpetually updated [GitHub release](https://github.com/meshtastic/web/releases/tag/latest) with an accompanying `build.tar` that a automatically get's pulled by the firmware CI at build time. +2. A hosted version is deployed to [client.meshtastic.org](https://client.meshtastic.org). diff --git a/docs/development/web/partitions.mdx b/docs/development/web/partitions.mdx deleted file mode 100644 index 17db326c..00000000 --- a/docs/development/web/partitions.mdx +++ /dev/null @@ -1,67 +0,0 @@ ---- -id: esp32-partitions -title: Managing ESP32 partitions -sidebar_label: ESP32 partitions ---- - -:::caution -It has been reported that some of this information is out of date. -FIXME - Investigate and rewrite document to reflect the current ESP32 Partition mitigation. -::: - -## Insufficient space to upload web interface files - -This problem seems to occur when your board has the partitioning structure set incorrectly. This typically occurs when the board has had a firmware other than Meshtastic on it previously. In this situation, the file upload page on the device typically shows a free space of around 48,000 bytes, rather than the ~300,000 bytes that it should have free. - -![Meshtastic.local's upload page showing insufficient storage space](/img/insufficient-space.png) - -There are a number of methods that essentially involve erasing the flash and then re-uploading the Meshtastic firmware. - -## Install Script - -The most reliable way to fix this problem is to use the install script that is included in the meshtastic firmware zip. If that doesn’t work, these other methods may work: - -## Alternative methods - -### Using the Arduino IDE: - -https://meshtastic.discourse.group/t/solved-help-installing-with-other-than-esphome-flasher/2214/9 - -### Using Pio in Windows - -```powershell -pio run --target erase --environment tbeam -``` - -Then re-install the firmware ie using ESPHome Flasher. - -Requires: [Python](https://www.python.org), [Pio](https://pypi.org/project/pio), command to be run in the root directory of the firmware project once you’ve cloned it (this last requirement is an assumption based on pio not knowing what a tbeam is, may also require Visual Studio Code and PlatformIO as these were installed during use). - -### Esptool.py - -@1984 posted another method using the python based esptool.py to erase and re-flash the firmware: - -```shell -esptool.py --baud 921600 erase_flash -esptool.py --baud 921600 write_flash 0x1000 system-info.bin -esptool.py --baud 921600 write_flash 0x00390000 spiffs-*.bin -esptool.py --baud 921600 write_flash 0x10000 firmware-tbeam-EU865-1.1.42.bin -``` - -Requires: [Python](https://www.python.org) and [esptool.py](https://github.com/espressif/esptool) - -### Visual Studio & PlatformIO - -There is also the method of using the Visual Studio IDE. This requires having Visual Studio and PlatformIO installed, along with having cloned the firmware code as per the [build instructions](/docs/development/firmware/build). After loading the project in Visual Studio, select the PlatformIO alien icon, then find the appropriate device, and then click the Erase Flash command. - -![Erasing the flash using PlatformIO in Visual Studio Code](/img/platformio-erase.png) - -https://meshtastic.discourse.group/t/configuring-channel-via-python-api/1948/17 - -Requires: [Visual Studio Code](https://code.visualstudio.com), [PlatformIO](https://platformio.org), cloned copy of the Meshtastic Firmware project - -## How do I know it's worked? - -Once it has been successfully erased and re-flashed, visiting https://192.168.42.1/static should leave you with free space on the order of 300,000 bytes, rather than the ~48,000 bytes you currently have. You can then upload the files from the meshtastic web release. - -Occasionally, this may glitch may appear when uploading the larger app.js.gz file, but a further erase and flash typically solves this. diff --git a/docs/getting-started/flashing-firmware/nrf52/index.mdx b/docs/getting-started/flashing-firmware/nrf52/index.mdx index e9ecd803..1052e98e 100644 --- a/docs/getting-started/flashing-firmware/nrf52/index.mdx +++ b/docs/getting-started/flashing-firmware/nrf52/index.mdx @@ -12,6 +12,9 @@ The nRF52 based devices have the easiest firmware upgrade process. No driver or ### Drag & Drop nRF52 devices use the [Drag & Drop](/docs/getting-started/flashing-firmware/nrf52/drag-n-drop) installation method to install firmware releases. +### Over-The-Air (OTA) +nRF52 devices are able to accept [OTA firmware updates](/docs/getting-started/flashing-firmware/nrf52/ota) from a mobile device over bluetooth. + ### Factory Erase You may wish to perform a [Factory Erase](/docs/getting-started/flashing-firmware/nrf52/nrf52-erase) prior to installing firmware to clear data that may change format and location between releases. diff --git a/docs/getting-started/flashing-firmware/nrf52/ota.mdx b/docs/getting-started/flashing-firmware/nrf52/ota.mdx new file mode 100644 index 00000000..941f9769 --- /dev/null +++ b/docs/getting-started/flashing-firmware/nrf52/ota.mdx @@ -0,0 +1,50 @@ +--- +id: ota +title: nRF52 OTA Firmware Updates +sidebar_label: Over-The-Air +sidebar_position: 2 +--- + +import Tabs from "@theme/Tabs"; +import TabItem from "@theme/TabItem"; + +nRF52 devices from RAK are able to accept OTA firmware updates from a mobile device over bluetooth. The T-Echo bootloader does not have OTA support. + + + + + +:::info +As of this writing, the current Android release of the nRF DFU app (v2.3.0) is not compatible with Meshtastic firmware updates. Please use the instructions below for updating via OTA with the nRF Connect App. +::: + +OTA firmware updates are available for Android using an older release of the more advanced nRF Connect App __version 4.24.3__ which is available for download from the [Nordic Semiconductor GitHub page](https://github.com/NordicSemiconductor/Android-nRF-Connect/releases/tag/v4.24.3). + +1. Download the firmware release you wish to install from the [Meshtastic Download Page](/downloads) or [Meshtastic GitHub](https://github.com/meshtastic/firmware/releases). +2. Unzip the firmware folder +3. Open the nRF Connect App and select CONNECT on your device from the SCANNER tab +4. Select the DFU icon from the top-right of the screen +5. Select the correct device firmware file (will end with -ota.zip) +6. The update will start automatically + + + + + + +OTA firmware updates are available on iOS & iPadOS using the nRF Device Firmware Update App available through the [Apple App Store](https://apps.apple.com/us/app/nrf-device-firmware-update/id1624454660) + +1. Download the firmware release you wish to install from the [Meshtastic Download Page](/downloads), [Meshtastic GitHub](https://github.com/meshtastic/firmware/releases), or via the iOS or iPadOS app. +2. Unzip the firmware folder +3. Open the nRF DFU App and select the correct device firmware file (will end with -ota.zip) +4. Connect to your device +5. Upload the firmware + + + diff --git a/docs/getting-started/index.mdx b/docs/getting-started/index.mdx index 77e7c7fb..5def31c1 100644 --- a/docs/getting-started/index.mdx +++ b/docs/getting-started/index.mdx @@ -18,25 +18,33 @@ This guide assumes that you have already purchased the devices you will be using to see your options. ::: -Before you begin, it's important to determine which kind of hardware you're using. Meshtastic works with devices that have either of these two types of Micro-Controller Units (MCU): +Before you begin, it's important to determine which kind of hardware you're using. Meshtastic works with devices that have these types of Micro-Controller Units (MCU): ### ESP32 -The ESP32 chip is older and consumes more power than the nRF52 chip, but is equipped with both WiFi and Bluetooth. Supported ESP32 devices: +The ESP32 chip is older and consumes more power than the nRF52 chip, but is equipped with both WiFi and Bluetooth. Supported ESP32 devices include: - LILYGO® TTGO T-Beam - LILYGO® TTGO Lora - Nano G1 - Station G1 - Heltec V3 and Wireless Stick Lite V3 +- RAK11200 Core module for RAK WisBlock modular boards ### nRF52 -The nRF52 chip is much more power efficient than the ESP32 chip and easier to update, but is only equipped with Bluetooth. Supported nRF52 devices: +The nRF52 chip is much more power efficient than the ESP32 chip and easier to update, but is only equipped with Bluetooth. Supported nRF52 devices include: -- RAK WisBlock +- RAK4631 Core module for RAK WisBlock modular boards - LILYGO® TTGO T-Echo +### RP2040 + +The RP2040 is a dual-core ARM chip developed by Raspberry Pi. Supported RP2040 devices include: + + - Raspberry Pi Pico + Waveshare LoRa Module (Note: **Bluetooth and Wi-Fi on the Pico W is not yet supported by Meshtastic**) + - RAK11310 Core module for RAK WisBlock modular boards + :::info If your device is not listed above, please review our [supported devices](/docs/supported-hardware) to determine which MCU your device has or contact us in [Discord](https://discord.gg/ktMAKGBnBs) with any questions. diff --git a/docs/hardware/antennas/antenna-report.mdx b/docs/hardware/antennas/antenna-report.mdx index cb339e85..06e74868 100644 --- a/docs/hardware/antennas/antenna-report.mdx +++ b/docs/hardware/antennas/antenna-report.mdx @@ -7,6 +7,6 @@ sidebar_position: 2 ## RicInNewMexico -[_RicInNewMexico_](https://github.com/RicInNewMexico) has gone through the trouble of testing a number of commonly purchased antennas in the Meshtastic community and given an opinion on whether or not a given antenna is performing optimally. +[_RicInNewMexico_](https://github.com/RicInNewMexico) and others have gone through the trouble of testing a number of commonly purchased antennas in the Meshtastic community and given an opinion on whether or not a given antenna is performing optimally. Please check out the project on Github: [Meshtastic-Antenna-Reports](https://github.com/RicInNewMexico/Meshtastic-Antenna-Reports) diff --git a/docs/hardware/antennas/lora-antennas.mdx b/docs/hardware/antennas/lora-antennas.mdx index 2ae8781d..cba40f2a 100644 --- a/docs/hardware/antennas/lora-antennas.mdx +++ b/docs/hardware/antennas/lora-antennas.mdx @@ -17,7 +17,7 @@ The antenna's design will affect: - Amount of signal which is reflected back to the device itself :::caution -While the LoRa devices we use for Meshtastic are relatively low power radios, care should be taken _not_ to operate any radio transmission device without an antenna or with a poorly matched antenna. Un-transmitted radio signal reflected back to the transmitter can damage the device. +While the LoRa devices we use for Meshtastic are relatively low power radios, care should be taken _not_ to operate any radio transmission device without an antenna or with a poorly matched antenna. Radio signals transmitted without an antenna can reflect back and damage the device. ::: diff --git a/docs/hardware/antennas/testing.mdx b/docs/hardware/antennas/testing.mdx index 40ecf34b..f69e16fa 100644 --- a/docs/hardware/antennas/testing.mdx +++ b/docs/hardware/antennas/testing.mdx @@ -9,8 +9,8 @@ Testing of antennas can be both simple and complex. At its simplest, testing inv If you have sufficient range with your existing aerial, skip this section. If you don't, consider either getting more nodes and / or replace the stock aerial with one tuned (to your region transmitter's frequency): -- A quarter wave _tuned_ stubby aerial (<10cm for fit-in-pocket) should have a real-world range of a couple of km without significant obstacles (buildings / hills). -- Aerial criteria: 50 Ohm, appropriate connector (usually SMA male or U.FL), low VSWR (<2) (at tuning frequency - see its datasheet), gain > 0 dBi . +- A quarter wave _tuned_ stubby aerial (\<10cm for fit-in-pocket) should have a real-world range of a couple of km without significant obstacles (buildings / hills). +- Aerial criteria: 50 Ohm, appropriate connector (usually SMA male or U.FL), low VSWR (\<2) (at tuning frequency - see its datasheet), gain > 0 dBi . - Caution, avoid suppliers who: - don't state the aerial's tuned frequency and its specific purpose (LoRa network) - claim huge gain figures on omni-directional aerials @@ -27,7 +27,7 @@ Some understanding of the factors affecting radio communications will help achie The Meshtastic devices (of various flavors) lend themselves to experimentation, not only because you can replace their aerials, but also because of their mesh operation. All nodes will, without alteration, relay communications from any other members of the mesh around obstacles and over greater distances. The cost of aerial investment should be weighed against investment in additional low-cost nodes. :::caution -While the LoRa devices we are using for Meshtastic are relatively low power radios, care should be taken _not_ to operate any radio transmission device without an aerial or with a poorly matched aerial. Un-transmitted radio signal reflected back to the transmitter can damage the device. +While the LoRa devices we are using for Meshtastic are relatively low power radios, care should be taken _not_ to operate any radio transmission device without an aerial or with a poorly matched aerial. Radio signals transmitted without an antenna can reflect back and damage the device. ::: The information collected here is by no means definitive, and necessarily abbreviated (it's a huge topic). @@ -72,7 +72,7 @@ Unless you're using your devices in a vacuum, with clear line of sight between a - Absorption by materials (with varying degrees attenuation, by material and depth), - Reflection off surfaces (and channeling through material tunnels, including warm / cold air tunnels commonly present in the atmosphere), - Diffraction around obstacles (over forests and around corners). -- [Fresnel Zone](They may not have been selected for your given frequency range, tuned or of a quality design.) - Football shape between antennas that must be clear of obstructions or else the signal is attenuated. +- Fresnel Zone - A football shape between antennas that must be clear of obstructions or else the signal is attenuated. ### Environmental Factors diff --git a/docs/hardware/devices/heltec/index.mdx b/docs/hardware/devices/heltec/index.mdx index 3acaecdd..fba1b584 100644 --- a/docs/hardware/devices/heltec/index.mdx +++ b/docs/hardware/devices/heltec/index.mdx @@ -1,7 +1,7 @@ --- id: heltec -title: HELTEC® Lora 32 -sidebar_label: HELTEC® Lora 32 +title: HELTEC® LoRa 32 +sidebar_label: HELTEC® LoRa 32 sidebar_position: 7 --- @@ -12,91 +12,35 @@ import TabItem from "@theme/TabItem"; groupId="heltec" defaultValue="v3" values={[ -{label: 'Lora32 V1', value: 'v1'}, -{label: 'Lora32 V2.0', value: 'v2.0'}, -{label: 'Lora32 V2.1', value: 'v2.1'}, -{label: 'Lora32 V3', value:'v3'}, -{label: 'Wireless Stick Lite V3', value:'Wireless Stick Lite V3'} +{label: 'LoRa32 V2.1', value: 'v2.1'}, +{label: 'LoRa32 V3', value:'v3'}, +{label: 'Wireless Stick Lite V3', value:'Wireless Stick Lite V3'}, +{label: 'Wireless Tracker', value: 'tracker'}, +{label: 'Wireless Paper', value: 'paper'} ]}> - - -:::warning -Not recommended! Very old board with design issues. Support is being phased out. Use V3 in new projects. -::: - -- **MCU** - - ESP32 (WiFi & Bluetooth) -- **LoRa Transceiver** - - Semtech SX1276 -- **Frequency options** - - 433 MHz - - 915 MHz - - 868 MHz -- **Connectors** - - Micro USB - - Antenna: U.FL antenna connector - -## Features - -- Built in 0.96 inch OLED display -- User and Reset switches -- No GPS - -## Resources - -- Firmware file: `firmware-heltec-v1-X.X.X.xxxxxxx.bin` - - - - -:::warning -Not recommended because of design issues! Support is being phased out. Use V3 in new projects. -::: - -- **MCU** - - ESP32 (WiFi & Bluetooth) -- **LoRa Transceiver** - - Semtech SX127x -- **Frequency options** - - 915 MHz - - 868 MHz -- **Connectors** - - Micro USB - - Antenna: U.FL antenna connector - -## Features - -- Built in 0.96 inch OLED display -- User and Reset switches -- No GPS - -## Resources - -- Firmware file: `firmware-heltec-v2.0-X.X.X.xxxxxxx.bin` - - :::warning Not recommended because of design issues! Support is being phased out. Use V3 in new projects. ::: -- **MCU** +- **MCU:** - ESP32 (WiFi & Bluetooth) -- **LoRa Transceiver** +- **LoRa Transceiver:** - Semtech SX127x -- **Frequency options** +- **Frequency Options:** - 433 MHz - 868 MHz - 915 MHz -- **Connectors** +- **Connectors:** - Micro USB - - Antenna: U.FL antenna connector + - Antenna: + - U.FL/IPEX antenna connector for LoRa ## Features - Built in 0.96 inch OLED display -- User and Reset switches +- User and Reset Buttons - No GPS ## Resources @@ -106,64 +50,168 @@ Not recommended because of design issues! Support is being phased out. Use V3 in -- **MCU** - - ESP32-S3 (WiFi & Bluetooth) -- **LoRa Transceiver** - - Semtech SX126x -- **Frequency options** - - 868 MHz - - 915 MHz -- **Connectors** - - USB-C - - Antenna: U.FL antenna connector +:::info +This device may have issues charging a connected battery if utilizing a USB-C to USB-C cable. It's recommended to use a USB-A to USB-C cable. +::: +- **MCU:** + - ESP32-S3FN8 (WiFi & Bluetooth) +- **LoRa Transceiver:** + - Semtech SX1262 +- **Frequency Options:** + - 433 MHz + - 470 - 510 MHz + - 863 - 870 MHz + - 902 - 928 MHz +- **Connectors:** + - USB-C + - Antenna: + - Dedicated 2.4 GHz metal spring antenna for WiFi/Bluetooth + - U.FL/IPEX antenna connector for LoRa + + ## Features - Built in 0.96 inch OLED display -- User and Reset switches +- User and Reset Buttons - No GPS +### Pin Map + +![HTIT-WSL_V3_PIN_MAP](/img/hardware/HTIT-WB32LA(F)_V3.png) + +Image Source: [Heltec](https://resource.heltec.cn/download/WiFi_LoRa32_V3/HTIT-WB32LA(F)_V3.png) + + ## Resources - Firmware file: `firmware-heltec-v3-X.X.X.xxxxxxx.bin` -- Purchase link: [AliExpress](https://www.aliexpress.com/item/1005004970848837.html) +- Purchase link: [Heltec](https://heltec.org/project/wifi-lora-32-v3/) +- Purchase link: [AliExpress](https://www.aliexpress.us/item/3256805256690400.html) -- **MCU** - - ESP32-S3 (WiFi & Bluetooth) -- **LoRa Transceiver** - - Semtech SX126x -- **Frequency options** - - 433 MHz - - 868 MHz - - 915 MHz -- **Connectors** - - USB-C - - Antenna: IPEX/u.FL antenna connector +:::info +This device may have issues charging a connected battery if utilizing a USB-C to USB-C cable. It's recommended to use a USB-A to USB-C cable. +::: +- **MCU:** + - ESP32-S3FN8 (WiFi & Bluetooth) +- **LoRa Transceiver:** + - Semtech SX1262 +- **Frequency Options:** + - 433 MHz + - 470 - 510 MHz + - 863 - 870 MHz + - 902 - 928 MHz +- **Connectors:** + - USB-C + - Antenna: + - Dedicated 2.4 GHz stamped metal antenna for WiFi/Bluetooth + - U.FL/IPEX antenna connector for LoRa + + ## Features - No display. -- User and Reset switches. -- Additional GPIO availability. -- No GPS. +- User and Reset Buttons +- Additional GPIO availability +- No GPS ### Meshtastic I2C Definitions - SCL: GPIO47 - SDA: GPIO48 + ### Pin Map ![HTIT-WSL_V3_PIN_MAP](/img/hardware/HTIT-WSL_V3_PIN_MAP.png) Image Source: [Heltec](https://resource.heltec.cn/download/Wireless_Stick_Lite_V3/HTIT-WSL_V3.png) + ## Resources - Firmware file: `firmware-heltec-wsl-v3-X.X.X.xxxxxxx.bin` -- Purchase link: [AliExpress](https://www.aliexpress.com/item/1005004839521502.html) +- Purchase link: [Heltec](https://heltec.org/project/wireless-stick-lite-v2/) +- Purchase link: [AliExpress](https://www.aliexpress.us/item/3256805256996507.html) + + + + +:::info +This device may have issues charging a connected battery if utilizing a USB-C to USB-C cable. It's recommended to use a USB-A to USB-C cable. +::: + +- **MCU:** + - ESP32-S3FN8 (WiFi & Bluetooth) +- **LoRa Transceiver:** + - Semtech SX1262 +- **Frequency Options:** + - 470 - 510 MHz + - 863 - 870 MHz + - 902 - 928 MHz +- **Connectors:** + - USB-C + - Antenna: + - Dedicated 2.4 GHz metal spring antenna for WiFi/Bluetooth + - U.FL/IPEX antenna connector for LoRa and GNSS + + +## Features + +- Onboard 0.96-inch LCD display +- User and Reset Buttons + + +## Pin Map + +![HT-Tracker_V1 Pin Map](/img/hardware/HT-Tracker_V1_Pin_Map.png) + +Image Source: [Heltec](https://heltec.org/project/wireless-tracker/) + + +## Resources + +- Firmware file: `firmware-heltec-wireless-tracker-X.X.X.xxxxxxx.bin` +- Purchase link: [Heltec](https://heltec.org/project/wireless-tracker/) +- Purchase link: [AliExpress](https://www.aliexpress.us/item/3256805495189423.html) + + + + +:::info +This device may have issues charging a connected battery if utilizing a USB-C to USB-C cable. It's recommended to use a USB-A to USB-C cable. +::: + +- **MCU:** + - ESP32-S3FN8 (WiFi & Bluetooth) +- **LoRa Transceiver:** + - Semtech SX1262 +- **Frequency Options:** + - 470 - 510 MHz + - 863 - 870 MHz + - 902 - 928 MHz +- **Connectors:** + - USB-C + - Antenna: + - U.FL/IPEX antenna connector for LoRa + - Integrated 2.4 GHz PCB antenna + + +## Features + +- Onboard 2.13-inch black and white E-Ink display screen +- User and Reset switches +- No GPS + + +## Resources + +- Firmware file: `firmware-heltec-wireless-paper-X.X.X.xxxxxxx.bin` +- Purchase link: [Heltec](https://heltec.org/project/wireless-paper/) +- Purchase link: [AliExpress](https://www.aliexpress.us/item/3256805461611876.html) diff --git a/docs/hardware/devices/lora/index.mdx b/docs/hardware/devices/lora/index.mdx index 80b9f6dd..85fdd8b9 100644 --- a/docs/hardware/devices/lora/index.mdx +++ b/docs/hardware/devices/lora/index.mdx @@ -84,7 +84,6 @@ This board is still in production but for various reasons not recommended for ne - Firmware file: `firmware-tlora_v1_3-X.X.X.xxxxxxx.bin` - Purchase link: [AliExpress](https://www.aliexpress.com/item/4000628100802.html) -- US Distributor - Purchase link: [Rokland](https://store.rokland.com/products/lilygo-lora-v1-3-esp32-sx1276-915mhz-wifi-wireless-bluetooth-module-0-96-inch-oled-screen-support-arduino-development-board-q312?ref=8Bb2mUO5i-jKwt) ![LILYGO® TTGO Lora V1.3](/img/hardware/lora-v1.3.png) ![LILYGO® TTGO Lora V1.3 pin map](/img/hardware/lora-v1.3_pinmap.webp) @@ -190,7 +189,6 @@ Early versions of some of these boards contained the wrong component in the LiPo ## Resources - Firmware file: `firmware-tlora-v2-1-1.8-X.X.X.xxxxxxx.bin` -- Purchase link: [Banggood](https://www.banggood.com/LILYGO-LORA-H570-V1_8-SX1280-ESP32-2_4G-Smart-WiFi-bluetooth-Wireless-Module-0_96inch-OLED-Display-Development-Board-with-Antenna-Type-C-p-1969395.html) ![TTGO Lora V2.1-1.8](/img/hardware/lora-v2.1-1.8.jpg) diff --git a/docs/hardware/devices/nano-g1-explorer/index.mdx b/docs/hardware/devices/nano-g1-explorer/index.mdx index 99b3beda..39320f6a 100644 --- a/docs/hardware/devices/nano-g1-explorer/index.mdx +++ b/docs/hardware/devices/nano-g1-explorer/index.mdx @@ -35,7 +35,7 @@ The Nano G1 Explorer, powered by Meshtastic, is a significant upgrade from the N ### Resources -- Firmware file: `firmware-nano-g1-explorer-x.x.x.bin` +- Firmware file: `firmware-nano-g1-explorer-X.X.X.xxxxxxx.bin` - Official Purchase Links: - [Official Store](https://shop.uniteng.com/product/meshtastic-mesh-device-nano-edition/) - [Official Tindie Store](https://www.tindie.com/products/neilhao/meshtastic-mesh-device-nano-g1-explorer/) diff --git a/docs/hardware/devices/nano-g1/index.mdx b/docs/hardware/devices/nano-g1/index.mdx index d3a485f8..9e990c2d 100644 --- a/docs/hardware/devices/nano-g1/index.mdx +++ b/docs/hardware/devices/nano-g1/index.mdx @@ -20,7 +20,7 @@ The Nano G1 is the first dedicated hardware device to be designed from scratch p - **Navigation Module** - ATGM336H-5N-71 (Supports GPS, BDS and GLONASS) - **Antenna** - - Built in 915Mhz Lora PCB Antenna (VSWR <=1.5 @ 915 MHz) + - Built in 915Mhz Lora PCB Antenna (VSWR \<=1.5 @ 915 MHz) - **Connectors** - USB-C @@ -33,8 +33,7 @@ The Nano G1 is the first dedicated hardware device to be designed from scratch p ### Resources -- Firmware file: `firmware-nano-g1-1.x.x.bin` -- [Purchase link](https://www.tindie.com/products/neilhao/meshtastic-mesh-device-nano-edition/) +- Firmware file: `firmware-nano-g1-X.X.X.xxxxxxx.bin` Further information on the Nano G1 can be found on [Unit Engineering's Wiki](https://uniteng.com/wiki/doku.php?id=meshtastic:nano). diff --git a/docs/hardware/devices/rak/core-modules.mdx b/docs/hardware/devices/rak/core-modules.mdx index fdd1e785..5c720622 100644 --- a/docs/hardware/devices/rak/core-modules.mdx +++ b/docs/hardware/devices/rak/core-modules.mdx @@ -15,27 +15,26 @@ groupId="rakcore" defaultValue="RAK4631" values={[ {label: 'RAK4631', value: 'RAK4631'}, -{label: 'RAK11200', value: 'RAK11200'} +{label: 'RAK11200', value: 'RAK11200'}, +{label: 'RAK11310', value: 'RAK11310'} ]}> -### RAK4631 +## RAK4631 - nRF52 :::info Please be aware of the difference between the RAK4631 (Arduino bootloader) and the RAK4631-R (RUI3 bootloader). Meshtastic requires the Arduino bootloader. If you have a RAK4631-R, please see the [instructions for converting the bootloader](/docs/getting-started/flashing-firmware/nrf52/convert-rak4631r). ::: -- [RAK4631](https://store.rakwireless.com/products/rak4631-lpwan-node?variant=37505443856582) +- RAK4631 - **MCU** - nRF52840 - Bluetooth BLE 5.0 - Very low power consumption - - **Meshtastic Firmware** - - [`firmware-rak4631-2.X.X.xxxxxxx.uf2`](/downloads) - - **LoRa transceiver** + - **LoRa Transceiver:** - SX1262 - - **Frequency Options** + - **Frequency Options:** - 433 MHz - 470 MHz - 799 MHz @@ -44,12 +43,16 @@ Please be aware of the difference between the RAK4631 (Arduino bootloader) and t - 915 MHz - 920 MHz - 923 MHz - - **Connectors** - - U.FL antenna + - **Connectors:** + - U.FL/IPEX antenna connector for LoRa -Further information on the RAK4631 can be found on the [RAK Documentation Center](https://docs.rakwireless.com/Product-Categories/WisBlock/RAK4631/Overview/#product-description). +### RAK4631 Resources -US Distributor - Purchase link: [Rokland - US915 Mhz](https://store.rokland.com/products/rak-wireless-rak4631-nordic-nrf52840-ble-core-module-for-lorawan-with-lora-sx1262) +- Firmware file: `firmware-rak4631-X.X.X.xxxxxxx.uf2` +- Further information on the RAK4631 can be found on the [RAK Documentation Center](https://docs.rakwireless.com/Product-Categories/WisBlock/RAK4631/Overview/#product-description). +- US Distributor - Purchase link: [Rokland - US915 Mhz](https://store.rokland.com/products/rak-wireless-rak4631-nordic-nrf52840-ble-core-module-for-lorawan-with-lora-sx1262) +- Purchase Link: [RAK Wireless Store](https://store.rakwireless.com/products/rak4631-lpwan-node?variant=37505443856582) +- Purchase Link: [RAK Wireless Aliexpress](https://www.aliexpress.us/item/3256801470104151.html) RAK4631 Core Module -### RAK11200 / RAK13300 +## RAK11200 - ESP32 -:::caution Note -Only supported on the RAK5005-O / RAK19007 and the RAK19001 base board. +:::info +Only supported on the RAK5005-O / RAK19007 and the RAK19001 base boards. ::: The RAK11200 does not contain a LoRa transceiver, and thus needs to be added separately in the form of the [RAK13300 LPWAN module](https://store.rakwireless.com/products/rak13300-wisblock-lpwan). This occupies the IO Port of the base board. -- [RAK11200](https://store.rakwireless.com/products/wiscore-esp32-module-rak11200) - - **MCU** +- RAK11200 + - **MCU:** - ESP32-WROVER - Bluetooth 4.2 - WiFi 802.11 b/g/n - High power consumption (relative to nRF52) - - **Meshtastic Firmware** - - [`firmware-rak11200-2.X.X.xxxxxx.bin`](/downloads) -Further information on the RAK11200 can be found on the [RAK Documentation Center](https://docs.rakwireless.com/Product-Categories/WisBlock/RAK11200/Overview/#product-description). +### RAK11200 Resources -- [RAK13300](https://store.rakwireless.com/products/rak13300-wisblock-lpwan) - - **LoRa transceiver** - - SX1262 - - **Frequency Options** - - 433 MHz - - 470 MHz - - 864 MHz - - 865 MHz - - 868 MHz - - 915 MHz - - 920 MHz - - 923 MHz - - **Connectors** - - U.FL antenna - -Further information on the RAK13300 can be found on the [RAK Documentation Center](https://docs.rakwireless.com/Product-Categories/WisBlock/RAK13300/Overview/#product-description). +- Firmware file: `firmware-rak11200-X.X.X.xxxxxxx.bin` +- Further information on the RAK11200 can be found on the [RAK Documentation Center](https://docs.rakwireless.com/Product-Categories/WisBlock/RAK11200/Overview/#product-description). +- Purchase Link: [RAK Wireless Store](https://store.rakwireless.com/products/wiscore-esp32-module-rak11200) +- Purchase Link: [RAK Wireless Aliexpress](https://www.aliexpress.us/item/3256802312474717.html) RAK4631 5005 11200 + + + + +## RAK11310 - RP2040 + +:::info + +**Please note, this core module does NOT include BLE/WiFi.** + +::: + + - **MCU:** + - Raspberry Pi RP2040 + - Dual M0+ Core + - 133MHz CPU Clock + - **LoRa Transceiver:** + - SX1262 + - **Frequency Options:** + - 433 MHz + - 470 MHz + - 864 MHz + - 865 MHz + - 868 MHz + - 915 MHz + - 920 MHz + - 923 MHz + - **Connectors:** + - U.FL/IPEX antenna connector for LoRa + +### RAK11310 Resources + +- Firmware file: `firmware-rak11310-X.X.X.xxxxxxx.uf2` +- Further information on the RAK11310 can be found on the [RAK Documentation Center](https://docs.rakwireless.com/Product-Categories/WisBlock/RAK11310/Overview/#product-description). +- Purchase Link: [RAK Wireless Store](https://store.rakwireless.com/products/rak11310-wisblock-lpwan-module) +- Purchase Link: [RAK Wireless Aliexpress](https://www.aliexpress.us/item/3256803225175784.html) + diff --git a/docs/hardware/devices/rak/index.mdx b/docs/hardware/devices/rak/index.mdx index c6999dfe..27a99064 100644 --- a/docs/hardware/devices/rak/index.mdx +++ b/docs/hardware/devices/rak/index.mdx @@ -18,7 +18,7 @@ If you wish to purchase parts separately, you will need a [WisBlock Base Board]( You can optionally purchase peripherals such as a GPS module, Screen, Sensor, or other various modules. -Please see the RAK documentation for the correct way to connect your hardware to ensure that you do not damage the device. There is currently no pin required to pair RAK devices via BLE. +Please see the RAK documentation for the correct way to connect your hardware to the baseboard to ensure that you do not damage the device. ## Resources diff --git a/docs/hardware/devices/rak/screens.mdx b/docs/hardware/devices/rak/screens.mdx index a339bb59..9d5ad5a0 100644 --- a/docs/hardware/devices/rak/screens.mdx +++ b/docs/hardware/devices/rak/screens.mdx @@ -43,7 +43,7 @@ The [RAK1400 EPD module](https://store.rakwireless.com/products/wisblock-epd-mod - Resolution 212 x 104 pixels - Occupies the IO Port of a Wisblock Base -- Firmware for 5005 with RAK14000 e-paper: [`firmware-rak4631_eink-1.3.x.uf2`](/downloads) +- Firmware for 5005 with RAK14000 e-paper: [`firmware-rak4631_eink-X.X.X.xxxxxxx.uf2`](/downloads) RAK4631 5005 14000 @@ -75,12 +77,14 @@ This is an earlier version of the T-Beam board. Due to changes in the design thi - Micro USB - Antenna: SMA antenna connector + ## Features - Meshtastic preinstalled - Power, Program and Reset switches - **Comes with 0.96 inch OLED display** (soldering required to assemble) + ## Resources - Firmware file: `firmware-tbeam-X.X.X.xxxxxxx.bin` @@ -109,12 +113,14 @@ This is an earlier version of the T-Beam board. Due to changes in the design thi - Micro USB - Antenna: U.FL antenna connector + ## Features - Meshtastic preinstalled - Power, Program and Reset switches - Screen sold separately + ## Resources - Firmware file: `firmware-tbeam-X.X.X.xxxxxxx.bin` @@ -141,12 +147,14 @@ This is an earlier version of the T-Beam board. Due to changes in the design thi - Micro USB - Antenna: U.FL antenna connector + ## Features - Meshtastic preinstalled - Power, Program and Reset switches - Screen sold separately + ## Resources - Firmware file: `firmware-tbeam-X.X.X.xxxxxxx.bin` @@ -156,4 +164,77 @@ This is an earlier version of the T-Beam board. Due to changes in the design thi ![T-Beam M8N & SX1262](/img/hardware/t-beam-sx1262.png) + + + - **MCU** + - ESP32-S3 (WiFi & Bluetooth 5LE) +- **LoRa Transceiver** + - **Semtech SX1262** (improved performance) +- **Frequency options** + - 433 MHz + - 868 MHz + - 915 MHz +- **Navigation Module** + - **NEO-M10S - GNSS receiver (supports GPS, GLONASS, Galileo, BeiDou)** (better GPS sensitivity) + - **Quectel L76K - (supports GPS, Beidou, GLONASS)** (lower price) +- **Connectors** + - USB-C + - Antenna: U.FL antenna connector + + +## Features + +- SoftRF preinstalled (flashing to Meshtastic required) +- Boot and Reset switches +- Can be used standalone without 'Supreme' daughterboard in a headless configuration + + +## Resources + + - Firmware file: `firmware-tbeam-s3-core-X.X.X.xxxxxxx.bin` + - Purchase Link: [AliExpress](https://www.aliexpress.com/item/1005005418286231.html) + +![T-Beam S3-Core](/img/hardware/T-BEAM-S3Core.jpg) + + + + + - **MCU** + - ESP32-S3 (WiFi & Bluetooth 5LE) +- **LoRa Transceiver** + - **Semtech SX1262** (improved performance) +- **Frequency options** + - 433 MHz + - 868 MHz + - 915 MHz +- **Navigation Module** + - **NEO-M10S - GNSS receiver (supports GPS, GLONASS, Galileo, BeiDou)** (better GPS sensitivity) + - **Quectel L76K - (supports GPS, Beidou, GLONASS)** (lower price) +- **Connectors** + - USB-C + - Antenna: U.FL antenna connector + + +## Features + +- Includes T-Beam S3-Core Module +- SoftRF preinstalled (flashing to Meshtastic required) +- Power, Boot and Reset switches +- 1.3" OLED included +- BME280 Air pressure sensor +- QMI8658 IMU +- QMC6310 Magnetometer +- PCF8563 RTC +- Micro-SD reader (not implemented in Meshtastic) + + +## Resources + + - Firmware file: `firmware-tbeam-s3-core-X.X.X.xxxxxxx.bin` + - Purchase Link: [AliExpress](https://www.aliexpress.com/item/1005005418286231.html) + +![T-Beam Supreme](/img/hardware/T-BEAM-S3-Supreme.jpg) + + + diff --git a/docs/legal/trademark-grants.mdx b/docs/legal/trademark-grants.mdx index 7cd59bd8..13b70880 100644 --- a/docs/legal/trademark-grants.mdx +++ b/docs/legal/trademark-grants.mdx @@ -14,3 +14,13 @@ sidebar_label: Trademark Grants - Details: Tony is an admin and contributer of computer aided design (CAD)/3D designs primarily for device enclosures and accessories, and runs an online shop for Meshtastic powered devices which carry the "Meshtastic" and "M" logos. The use of the Meshtastic Logo and Trademarks does not imply Tony is sponsored or endorsed by Meshtastic. Tony also agrees to maintain compliance with the Meshtastic Legal requirements. This grant is revokable at any time for any reason. - Grant: http://k9rocket.tech - Details: K9 Rocket Technologies is an open technology development company selling and implementing Meshtastic-powered devices. The devices and their respective promotional content carry the "Powered by Meshtastic", "Meshtastic", & "M" logos. The use of the Meshtastic Logo and Trademarks does not imply K9 Rocket Technologies is sponsored or endorsed by Meshtastic. K9 Rocket Technologies also agrees to maintain compliance with the Meshtastic Legal requirements. This grant is revokable at any time for any reason +- Grant: Ben Lipsey + - Details: Ben Lipsey is a Meshtastic Contributor and Promotional Materials Distributor. Promotional materials carry the "Meshtastic" and "M" logos. Materials also carry the Meshtastic.org URL. The use of the Meshtastic Logo and Trademarks does not imply Ben Lipsey is sponsored or endorsed by Meshtastic. Ben Lipsey also agrees to maintain compliance with the Meshtastic Legal requirements. This grant is revokable at any time for any reason. +- Grant: Mark Birss + - Details: Mark Birss is a Meshtastic contributor/developer of DIY devices that carry the "Meshtastic" , Meshtastic.org URL and "M" logos. The use of the Meshtastic Logo and Trademarks does not imply Mark Birss is sponsored or endorsed by Meshtastic. Mark Birss also agrees to maintain compliance with the Meshtastic Legal requirements. This grant is revokable at any time for any reason. +- Grant [Paul Carney](https://www.etsy.com/shop/3Dsafe) + - Details: Paul primarily designs enclosures and assembles complete Meshtastic Radios for sale using modules from TTGO, Heltec and RAK. He runs an online shop for Meshtastic powered devices which carry the "Meshtastic" and M logos. The use of the Meshtastic Logo and Trademarks does not imply Paul is sponsored or endorsed by Meshtastic. Paul also agrees to maintain compliance with the Meshtastic Legal requirements. This grant is revokable at any time for any reason. +- Grant: [Keith Monaghan](http://voltaicenclosures.com/) + - Details: Keith is a contributer of computer aided design (CAD)/3D designs primarily for device enclosures and accessories, and runs an online shop for Meshtastic powered devices which carry the "Meshtastic" and "M" logos. The use of the Meshtastic Logo and Trademarks does not imply Keith is sponsored or endorsed by Meshtastic. Keith also agrees to maintain compliance with the Meshtastic Legal requirements. This grant is revokable at any time for any reason. +- Grant: [Neil Hao](https://shop.uniteng.com/) + - Details: Neil is a contributer of hardware designs, and runs an online shop for Meshtastic powered devices which carry the "Meshtastic" and "M" logos. The use of the Meshtastic Logo and Trademarks does not imply Neil is sponsored or endorsed by Meshtastic. Neil also agrees to maintain compliance with the Meshtastic Legal requirements. This grant is revokable at any time for any reason. \ No newline at end of file diff --git a/docs/software/linux-native.mdx b/docs/software/linux-native.mdx index 05269262..d26ae683 100644 --- a/docs/software/linux-native.mdx +++ b/docs/software/linux-native.mdx @@ -87,6 +87,8 @@ type this in the host machine: `meshtastic --info --host localhost` +While you can interact with it in the same way as a normal device using a client that supports TCP connections, the application has its limitations. For example, rebooting is not implemented, so for some settings to apply you have to restart the application. + ### Stop the container Run this to get the ID: diff --git a/docs/software/mqtt/index.mdx b/docs/software/mqtt/index.mdx index 125afba1..a47854f0 100644 --- a/docs/software/mqtt/index.mdx +++ b/docs/software/mqtt/index.mdx @@ -17,22 +17,29 @@ You can find the settings available for MQTT [here](/docs/settings/moduleconfig/ Using or emitting packets directly in/from smart home control software such as Home Assistant or other consumers that can work with JSON messages. -When MQTT is enabled, the Meshtastic device simply uplinks and/or downlinks every raw protobuf packet that it sees to the MQTT broker. In addition, some packet types are serialized or deserialized from/to JSON messages for easier use in consumers. All packets are sent to the broker, whether they originate from another device on the mesh, or the gateway node itself. +When MQTT is enabled, the Meshtastic device simply uplinks and/or downlinks every raw protobuf MeshPacket that it sees to the MQTT broker, encapsulated in a [ServiceEnvelope protobuf](https://buf.build/meshtastic/protobufs/docs/main:meshtastic#meshtastic.ServiceEnvelope). In addition, some packet types are serialized or deserialized from/to JSON messages for easier use in consumers. All packets are sent to the broker, whether they originate from another device on the mesh, or the gateway node itself. Packets may be encrypted. If you use the default meshtastic MQTT server, packets are always encrypted. If you use a custom MQTT broker (ie set `mqtt.address`), the `mqtt.encryption_enabled` setting applies, which by default is false. IMPORTANT: When MQTT is turned on, you are potentially broadcasting your entire mesh traffic onto the public internet. This includes messages and position information. -### MQTT Topics +### MQTT [Topics](https://www.hivemq.com/blog/mqtt-essentials-part-5-mqtt-topics-best-practices) -The device will uplink and downlink raw ([protobuf](https://developers.google.com/protocol-buffers)) packets to the `msh/` prefix: +If no specific [root topic](/docs/settings/moduleconfig/mqtt#root-topic) is configured, the default root topic will be `msh/`. +Each device that is connected to MQTT will publish its MQTT state ("`online`"/"`offline`") to: -`msh/2/c/ShortFast/!12345678` where +`msh/2/stat/USERID`, where `USERID` is the user ID of the gateway device (the one connected to MQTT). -- `!12345678` is the address of the gateway device. -- `ShortFast` is the channel name. +For each channel where uplink and/or downlink is enabled two other topics might be used. -The payload is a raw protobuf. Looking at the MQTT traffic with a program like `mosquitto_sub` will tell you it's working, but you won't get much useful information out of it. For example: +#### Protobufs topic +A gateway node will uplink and/or downlink raw ([protobuf](https://developers.google.com/protocol-buffers)) MeshPackets to the topic: + +`msh/2/c/CHANNELNAME/USERID`, where `CHANNELNAME` is the name of the channel. + +For example: `msh/2/c/LongFast/!abcd1234` + +The payload is a raw protobuf, whose definitions for Meshtastic can be found [here](https://github.com/meshtastic/protobufs/blob/master/meshtastic). Reference guides for working with protobufs in several popular programming languages can be found [here](https://protobuf.dev/reference/). Looking at the MQTT traffic with a program like `mosquitto_sub` will tell you it's working, but you won't get much useful information out of it. For example: ```text 苓????"! @@ -40,7 +47,12 @@ The payload is a raw protobuf. Looking at the MQTT traffic with a program like ` ShortFast !937bed1c ``` -Packets from the following [port numbers](/docs/development/firmware/portnum) are serialized to JSON and then forwarded to the `msh/2/json/CHANNELID/DEVICEID` topic: `TEXT_MESSAGE_APP`, `ENVIRONMENTAL_MEASUREMENT_APP`, `NODEINFO_APP` and `POSITION_APP`. +If [encryption_enabled](/docs/settings/moduleconfig/mqtt#encryption-enabled) is set to true, the payload of the MeshPacket will remain encrypted with the key for the specified channel. + +#### JSON topic +If [JSON is enabled](/docs/settings/moduleconfig/mqtt/#json-enabled), packets from the following [port numbers](/docs/development/firmware/portnum) are serialized to JSON: `TEXT_MESSAGE_APP`, `ENVIRONMENTAL_MEASUREMENT_APP`, `NODEINFO_APP` and `POSITION_APP`. These are then forwarded to the topic: + +`msh/2/json/CHANNELNAME/USERID`. An example of a received `NODEINFO_APP` message: @@ -62,6 +74,22 @@ An example of a received `NODEINFO_APP` message: } ``` +The meaning of these fields is as follows: + +- "`id`" is the unique ID for this message. +- "`channel`" is the channel index this message was received on. +- "`from`" is the unique node number of the node on the mesh that sent this message, represented as a signed decimal number. +- "`id`" inside the payload of a `NODEINFO_APP` message is the user ID of the node that sent it, which is currently just the hexadecimal representation of the node number. +- "`hardware`" is the [hardware model](https://github.com/meshtastic/protobufs/blob/master/meshtastic/mesh.proto#L215) of the node sending the `NODEINFO_APP` message. +- "`longname`" is the long name of the device that sent the `NODEINFO_APP` message. +- "`shortname`" is the short name of the device that sent the `NODEINFO_APP` message. +- "`sender`" is the user ID of the gateway device, which is in this case the same node that sent the `NODEINFO_APP` message (the hexadecimal value `7efeee00` represented by an integer in decimal is `2130636288`). +- "`timestamp`" is the Unix Epoch when the message was received, represented as an integer in decimal. +- "`to`" is the node number of the destination of the message. In this case, "-1" means it was a broadcast message (this is the decimal integer representation of `0xFFFFFFFF`). +- "`type`" is the type of the message, in this case it was a `NODEINFO_APP` message. + +The "from" field can thus be used as a stable identifier for a specific node. Note that (like the "`id`" and "`to`" fields) in JSON this is a signed value, whereas in protobufs it is unsigned. + If the message received contains valid JSON in the payload, the JSON is deserialized and added as a JSON object rather than a string containing the serialized JSON. **Sent messages** will be checked if the MQTT payload contains a valid JSON-encoded envelope: @@ -90,34 +118,6 @@ Check out [MQTT Settings](/docs/settings/moduleconfig/mqtt) for full information `uplink_enabled` will tell the device to publish mesh packets to MQTT. `downlink_enabled` will tell the device to subscribe to MQTT, and forward any packets from there onto the mesh. -### Topics - -The "mesh/crypt/CHANNELID/NODEID/PORTID" [topic](https://www.hivemq.com/blog/mqtt-essentials-part-5-mqtt-topics-best-practices) will be used for messages sent from/to a mesh. - -Gateway nodes will forward any MeshPacket from a local mesh channel with uplink_enabled. The packet (encapsulated in a ServiceEnvelope) will remain encrypted with the key for the specified channel. - -For any channels in the local node with downlink_enabled, the gateway node will forward packets from MQTT to the local mesh. It will do this by subscribing to mesh/crypt/CHANNELID/# and forwarding relevant packets. - -If the channelid 'well known'/public it could be decrypted by a web service (if the web service was provided with the associated channel key), in which case it will be decrypted by a web service and appear at "mesh/clear/CHANNELID/NODEID/PORTID". Note: This is not in the initial deliverable. - -#### Service Envelope - -The payload published on mesh/... will always be wrapped in a [ServiceEnvelope protobuf](https://buf.build/meshtastic/protobufs/docs/main:meshtastic#meshtastic.ServiceEnvelope). - -ServiceEnvelope will include the message, and full information about arrival time, who forwarded it, source channel, source mesh id, etc... - -#### NODEID - -The unique ID for a node. A hex string that starts with an ! symbol. - -#### USERID - -A user ID string. This string is either a user ID if known or a nodeid to simply deliver the message to whoever the local user is of a particular device (i.e. person who might see the screen). FIXME, see what riot.im uses and perhaps use that convention? Or use the signal +phone number convention? Or the email address? - -#### CHANNELID - -FIXME, figure out how channelids work - ### Gateway nodes Any meshtastic node that has a direct connection to the internet (either via a helper app or installed WiFi/4G/satellite hardware) can function as a "Gateway node". diff --git a/docs/software/python-cli/index.mdx b/docs/software/python-cli/index.mdx index 23fe0c95..6235fec6 100644 --- a/docs/software/python-cli/index.mdx +++ b/docs/software/python-cli/index.mdx @@ -17,6 +17,27 @@ Shows a help message that describes the arguments. ```shell title="Usage" meshtastic -h ``` +### --export-config + +Export the configuration of the device. (to be consumed by the '--configure' command). + +To create to a file with the connected device's configuration, this command's output must be piped to a yaml file. + +```shell title="Usage" +meshtastic --export-config > example_config.yaml +``` + +```title="Usage"shell +meshtastic --export-config +``` + +### --configure + +Configure radio using a yaml file. + +```shell title="Usage" +meshtastic --configure example_config.yaml +``` ### --port PORT @@ -51,6 +72,38 @@ Read and display the radio config information. meshtastic --port /dev/ttyUSB0 --info ``` +### --set-canned-message + +Set the canned message plugin messages separated by pipes `|` (up to 200 characters). + +```shell title="Usage" +meshtastic --set-canned-message "I need an alpinist!|Call Me|Roger Roger|Keep Calm|On my way" +``` + +### --get-canned-message + +Show the canned message plugin message. + +```shell title="Usage" +meshtastic --get-canned-message +``` + +### --set-ringtone RINGTONE + +Set the Notification Ringtone (up to 230 characters). + +```shell title="Usage" +meshtastic --set-ringtone "LeisureSuit:d=16,o=6,b=56:f.5,f#.5,g.5,g#5,32a#5,f5,g#.5,a#.5,32f5,g#5,32a#5,g#5,8c#.,a#5,32c#,a5,a#.5,c#.,32a5,a#5,32c#,d#,8e,c#.,f.,f.,f.,f.,f,32e,d#,8d,a#.5,e,32f,e,32f,c#,d#.,c#" +``` + +### --get-ringtone + +Show the stored ringtone. + +```shell title="Usage" +meshtastic --get-ringtone +``` + ### --nodes Prints a node list in a pretty, formatted table. @@ -67,19 +120,22 @@ Displays the QR code that corresponds to the current channel. meshtastic --qr ``` -### --get GET +### --get [config_section] Gets a preferences field. +Configuration values are described in: [Configuration](https://meshtastic.org/docs/settings). + ```shell title="Usage" +meshtastic --get lora meshtastic --get lora.region ``` -### --set [config_section].[option] [value] +### --set [config_section].[option]  [value] Sets a preferences field. -Configuration values are described in this section: [Configuration Sections](https://meshtastic.org/docs/settings/config) +Configuration values are described in: [Configuration](https://meshtastic.org/docs/settings). ```shell title="Usage" meshtastic --set lora.region Unset @@ -95,7 +151,7 @@ meshtastic --seturl https://www.meshtastic.org/c/GAMiIE67C6zsNmlWQ-KE1tKt0fRKFci ### --ch-index CH_INDEX -Set the specified channel index +Set the specified channel index. ```shell title="Usage" meshtastic --ch-index 1 --ch-disable @@ -141,17 +197,57 @@ Set a channel parameter. meshtastic --ch-set id 1234 --ch-index 0 ``` +### --ch-vlongslow + +Change modem preset to `VERY_LONG_SLOW`. + +```shell title="Usage" +meshtastic --ch-vlongslow +``` + ### --ch-longslow -Change to the standard long-range (but slow) channel. +Change modem preset to `LONG_SLOW`. ```shell title="Usage" meshtastic --ch-longslow ``` +### --ch-longfast + +Change modem preset to (the default) `LONG_FAST`. + +```shell title="Usage" +meshtastic --ch-longfast +``` + +### --ch-medslow + +Change modem preset to `MEDIUM_SLOW`. + +```shell title="Usage" +meshtastic --ch-medslow +``` + +### --ch-medfast + +Change modem preset to `MEDIUM_FAST`. + +```shell title="Usage" +meshtastic --ch-medfast +``` + +### --ch-shortslow + +Change modem preset to `SHORT_SLOW`. + +```shell title="Usage" +meshtastic --ch-shortslow +``` + ### --ch-shortfast -Change to the standard fast (but short range) channel. +Change modem preset to `SHORT_FAST`. ```shell title="Usage" meshtastic --ch-shortfast @@ -162,7 +258,15 @@ meshtastic --ch-shortfast Set device owner name. ```shell title="Usage" -meshtastic --dest '!28979058' --set-owner "MeshyJohn" +meshtastic --set-owner "MeshyJohn" +``` + +### --set-owner-short SET_OWNER_SHORT + +Set device owner short name (4 characters max). + +```shell title="Usage" +meshtastic --set-owner-short "MJ" ``` ### --set-ham SET_HAM @@ -175,7 +279,7 @@ meshtastic --set-ham KI1345 ### --dest DEST -The destination node id for any sent commands +The destination node id for any sent commands. Used for [Remote Node Administration](/docs/configuration/remote-admin) ```shell title="Usage" meshtastic --dest '!28979058' --set-owner "MeshyJohn" @@ -183,7 +287,7 @@ meshtastic --dest '!28979058' --set-owner "MeshyJohn" ### --sendtext SENDTEXT -Send a text message. Can specify a channel index ('--ch-index') or a destination ('--dest') +Send a text message. Can specify a channel index ('--ch-index') or a destination ('--dest'). ```shell title="Usage" meshtastic --sendtext "Hello Mesh!" @@ -197,12 +301,52 @@ Send a ping message (which requests a reply). meshtastic --sendping ``` -### --reboot +### --traceroute TRACEROUTE -Tell the destination node to reboot. +Traceroute from connected node to a destination. You need pass the destination ID as an argument. Only nodes that have the encryption key can be traced. ```shell title="Usage" -meshtastic --dest '!28979058' --reboot +meshtastic --traceroute 'ba4bf9d0' +``` + +### --ack + +Used in combination with --sendtext to wait for an acknowledgment. + +```shell title="Usage" +meshtastic --sendtext "Hello Mesh!" --ack +``` + +### --reboot + +Tell the node to reboot. + +```shell title="Usage" +meshtastic --reboot +``` + +### --shutdown + +Tell the node to shutdown. + +```shell title="Usage" +meshtastic --shutdown +``` + +### --factory-reset + +Tell the node to install the default config. + +```shell title="Usage" +meshtastic --factory-reset +``` + +### --reset-nodedb + +Tell the node to clear its list of nodes. + +```shell title="Usage" +meshtastic --reset-nodedb ``` ### --reply @@ -309,46 +453,10 @@ Show program's version number and exit. meshtastic --version ``` -### --configure - -Configure all of the radio configuration from a yaml file. - -```shell title="Usage" -meshtastic --configure example_config.yaml -``` - -### --export-config - -Export the configuration of the device. (to be consumed by the '--configure' command) - -To create to a file with the connected device's configuration, this command's output must be piped to a yaml file - -```shell title="Usage" -meshtastic --export-config > example_config.yaml -``` - -```title="Usage"shell -meshtastic --export-config -``` - ### --support Print out info that would be helpful supporting any issues. ```shell title="Usage" meshtastic --support -``` - -## Deprecated Arguments - -### --setchan - -Deprecated - use "--ch-set param value" instead. - -### --set-router - -Deprecated - use "--set is_router true" instead. - -### --unset-router - -Deprecated - use "--set is_router false" instead. +``` \ No newline at end of file diff --git a/docs/software/python-cli/installation.mdx b/docs/software/python-cli/installation.mdx index ffa63540..dd2ba9d9 100644 --- a/docs/software/python-cli/installation.mdx +++ b/docs/software/python-cli/installation.mdx @@ -9,7 +9,7 @@ sidebar_position: 1 import Tabs from "@theme/Tabs"; import TabItem from "@theme/TabItem"; -This library provides a command line interface (CLI) for Meshtastic nodes and provides an easy API for sending and receiving messages over mesh radios, in addition to changing user settings. Using the command line is currently the most powerful. Events are delivered using a publish-subscribe model, and you can subscribe to only the message types you are interested in. +This library provides a command line interface (CLI) for managing the user settings of Meshtastic nodes and provides an easy API for sending and receiving messages over mesh radios. Events are delivered using a publish-subscribe model, and you can subscribe to only the message types you are interested in. The [Meshtastic-python repo](https://github.com/meshtastic/Meshtastic-python) and [API documentation](https://python.meshtastic.org) are excellent sources of information. diff --git a/docs/software/python-cli/usage.mdx b/docs/software/python-cli/usage.mdx index 76d350da..13bd32b0 100644 --- a/docs/software/python-cli/usage.mdx +++ b/docs/software/python-cli/usage.mdx @@ -27,9 +27,9 @@ to keep the Bluetooth link alive for eight hours (any usage of the Bluetooth pro ```shell title="Expected Output" # You should see a result similar to this: -mydir$ meshtastic --set bluetooth.wait_bluetooth_secs 28800 +mydir$ meshtastic --set power.wait_bluetooth_secs 28800 Connected to radio... -Setting bluetooth.wait_bluetooth_secs to 28800 +Setting power.wait_bluetooth_secs to 28800 Writing modified preferences to device... ``` @@ -51,14 +51,14 @@ For a full list of preferences which can be set (and their documentation) can be ### Changing channel settings -The channel settings can also be changed, either by using a standard (shareable) meshtastic URL or you can set particular channel parameter (for advanced users). +The channel settings can also be changed, either by using a standard (shareable) meshtastic URL or you can set a particular channel parameter (for advanced users). :::warning Meshtastic encodes the radio channel and PSK in the channel's URL. All nodes must connect to the channel again by using the URL provided after a change in this section by performing the `--info` switch. ::: ```shell -meshtastic --ch-set name mychan --ch-index 1 --ch-set channel_num 4 --info +meshtastic --ch-set name mychan --ch-index 1 --info ``` You can even set the channel preshared key to a particular AES128 or AES256 sequence. @@ -69,14 +69,14 @@ meshtastic --ch-index 1 --ch-set psk 0x1a1a1a1a2b2b2b2b1a1a1a1a2b2b2b2b1a1a1a1a2 Use `--ch-set psk none --ch-index 0` to turn off encryption. -Use `--ch-set psk random --ch-index 0` will assign a new (high quality) random AES256 key to the primary channel (similar to what the Android app does when making new channels). +Use `--ch-set psk random --ch-index 0` to assign a new (high quality) random AES256 key to the primary channel (similar to what the Android app does when making new channels). Use `--ch-set psk default --ch-index 0` to restore the standard 'default' (minimally secure, because it is in the source code for anyone to read) AES128 key. All `ch-set` commands need to have the `ch-index` parameter specified: ```shell -meshtastic --ch-index 1 --ch-set name mychan --ch-set channel_num 4 --info +meshtastic --ch-index 1 --ch-set name mychan --info ``` ### Ham radio support @@ -85,7 +85,7 @@ Meshtastic is designed to be used without a radio operator license. If you do ha ```shell title="Expected Output" # You should see a result similar to this: -mydir$ meshtastic --port /dev/ttyUSB1 --set-ham KI1345 +mydir$ meshtastic --set-ham KI1345 Connected to radio Setting Ham ID to KI1345 and turning off encryption Writing modified channels to device @@ -130,7 +130,7 @@ This indicates an OS permission problem for access by your user to the USB seria sudo usermod -a -G dialout ``` -If the adding the user to the dialout group does not work, you can use the following command to find out which group to add your user to. +If adding your user to the dialout group does not work, you can use the following command to find out which group to add your user to. In this example (from Arch Linux) the group was "uucp" ```shell diff --git a/package.json b/package.json index 95f832b4..88a5ea21 100644 --- a/package.json +++ b/package.json @@ -15,39 +15,39 @@ "crowdin:sync": "docusaurus write-translations && crowdin upload && crowdin download" }, "dependencies": { - "@algolia/client-search": "^4.17.0", "@crowdin/cli": "^3.2.2", - "@docusaurus/core": "2.4.1", - "@docusaurus/plugin-content-docs": "2.4.1", - "@docusaurus/preset-classic": "2.4.1", - "@docusaurus/theme-common": "^2.4.1", - "@docusaurus/theme-mermaid": "^2.4.1", - "@headlessui/react": "^1.7.14", + "@algolia/client-search": "^4.19.1", + "@docusaurus/core": "3.0.0-alpha.0", + "@docusaurus/plugin-content-docs": "3.0.0-alpha.0", + "@docusaurus/preset-classic": "3.0.0-alpha.0", + "@docusaurus/theme-common": "3.0.0-alpha.0", + "@docusaurus/theme-mermaid": "3.0.0-alpha.0", + "@headlessui/react": "^1.7.16", "@heroicons/react": "^2.0.18", - "@mdx-js/react": "^1.6.22", - "@meshtastic/meshtasticjs": "2.1.9-0", + "@mdx-js/react": "^2.3.0", + "@meshtastic/meshtasticjs": "2.2.0-0", "autoprefixer": "^10.4.14", "base64-js": "^1.5.1", - "dotenv": "^16.0.3", + "dotenv": "^16.3.1", "framer-motion": "^6.5.1", - "postcss": "^8.4.23", - "react": "^17.0.2", - "react-dom": "^17.0.2", - "react-icons": "^4.8.0", + "postcss": "^8.4.27", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "react-icons": "^4.10.1", "react-responsive-carousel": "^3.2.23", - "swr": "^2.1.5", - "tailwindcss": "^3.3.2", - "url-search-params-polyfill": "^8.1.1", - "use-breakpoint": "^3.0.7" + "swr": "^2.2.0", + "tailwindcss": "^3.3.3", + "url-search-params-polyfill": "^8.2.4", + "use-breakpoint": "^3.1.1" }, "devDependencies": { - "@docusaurus/module-type-aliases": "2.4.1", + "@docusaurus/module-type-aliases": "3.0.0-alpha.0", "@tailwindcss/typography": "^0.5.9", - "@tsconfig/docusaurus": "^1.0.7", - "@types/node": "^20.1.7", - "@types/react": "^18.2.6", - "@types/react-dom": "^18.2.4", - "rome": "^12.1.0", - "typescript": "^5.0.4" + "@tsconfig/docusaurus": "^2.0.0", + "@types/node": "^20.4.8", + "@types/react": "^18.2.18", + "@types/react-dom": "^18.2.7", + "rome": "^12.1.3", + "typescript": "^5.1.6" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c39ee35a..279fc072 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,104 +1,108 @@ lockfileVersion: '6.0' +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + dependencies: '@algolia/client-search': - specifier: ^4.17.0 - version: 4.17.0 + specifier: ^4.19.1 + version: 4.19.1 '@crowdin/cli': specifier: ^3.2.2 version: 3.2.2 '@docusaurus/core': - specifier: 2.4.1 - version: 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) + specifier: 3.0.0-alpha.0 + version: 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) '@docusaurus/plugin-content-docs': - specifier: 2.4.1 - version: 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) + specifier: 3.0.0-alpha.0 + version: 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) '@docusaurus/preset-classic': - specifier: 2.4.1 - version: 2.4.1(@algolia/client-search@4.17.0)(@types/react@18.2.6)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) + specifier: 3.0.0-alpha.0 + version: 3.0.0-alpha.0(@algolia/client-search@4.19.1)(@types/react@18.2.18)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) '@docusaurus/theme-common': - specifier: ^2.4.1 - version: 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) + specifier: 3.0.0-alpha.0 + version: 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) '@docusaurus/theme-mermaid': - specifier: ^2.4.1 - version: 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) + specifier: 3.0.0-alpha.0 + version: 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) '@headlessui/react': - specifier: ^1.7.14 - version: 1.7.14(react-dom@17.0.2)(react@17.0.2) + specifier: ^1.7.16 + version: 1.7.16(react-dom@18.2.0)(react@18.2.0) '@heroicons/react': specifier: ^2.0.18 - version: 2.0.18(react@17.0.2) + version: 2.0.18(react@18.2.0) '@mdx-js/react': - specifier: ^1.6.22 - version: 1.6.22(react@17.0.2) + specifier: ^2.3.0 + version: 2.3.0(react@18.2.0) '@meshtastic/meshtasticjs': - specifier: 2.1.9-0 - version: 2.1.9-0 + specifier: 2.2.0-0 + version: 2.2.0-0 autoprefixer: specifier: ^10.4.14 - version: 10.4.14(postcss@8.4.23) + version: 10.4.14(postcss@8.4.27) base64-js: specifier: ^1.5.1 version: 1.5.1 dotenv: - specifier: ^16.0.3 - version: 16.0.3 + specifier: ^16.3.1 + version: 16.3.1 framer-motion: specifier: ^6.5.1 - version: 6.5.1(react-dom@17.0.2)(react@17.0.2) + version: 6.5.1(react-dom@18.2.0)(react@18.2.0) postcss: - specifier: ^8.4.23 - version: 8.4.23 + specifier: ^8.4.27 + version: 8.4.27 react: - specifier: ^17.0.2 - version: 17.0.2 + specifier: ^18.2.0 + version: 18.2.0 react-dom: - specifier: ^17.0.2 - version: 17.0.2(react@17.0.2) + specifier: ^18.2.0 + version: 18.2.0(react@18.2.0) react-icons: - specifier: ^4.8.0 - version: 4.8.0(react@17.0.2) + specifier: ^4.10.1 + version: 4.10.1(react@18.2.0) react-responsive-carousel: specifier: ^3.2.23 version: 3.2.23 swr: - specifier: ^2.1.5 - version: 2.1.5(react@17.0.2) + specifier: ^2.2.0 + version: 2.2.0(react@18.2.0) tailwindcss: - specifier: ^3.3.2 - version: 3.3.2 + specifier: ^3.3.3 + version: 3.3.3 url-search-params-polyfill: - specifier: ^8.1.1 - version: 8.1.1 + specifier: ^8.2.4 + version: 8.2.4 use-breakpoint: - specifier: ^3.0.7 - version: 3.0.7(react-dom@17.0.2)(react@17.0.2) + specifier: ^3.1.1 + version: 3.1.1(react-dom@18.2.0)(react@18.2.0) devDependencies: '@docusaurus/module-type-aliases': - specifier: 2.4.1 - version: 2.4.1(react-dom@17.0.2)(react@17.0.2) + specifier: 3.0.0-alpha.0 + version: 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) '@tailwindcss/typography': specifier: ^0.5.9 - version: 0.5.9(tailwindcss@3.3.2) + version: 0.5.9(tailwindcss@3.3.3) '@tsconfig/docusaurus': - specifier: ^1.0.7 - version: 1.0.7 + specifier: ^2.0.0 + version: 2.0.0 '@types/node': - specifier: ^20.1.7 - version: 20.1.7 + specifier: ^20.4.8 + version: 20.4.8 '@types/react': - specifier: ^18.2.6 - version: 18.2.6 + specifier: ^18.2.18 + version: 18.2.18 '@types/react-dom': - specifier: ^18.2.4 - version: 18.2.4 + specifier: ^18.2.7 + version: 18.2.7 rome: - specifier: ^12.1.0 - version: 12.1.0 + specifier: ^12.1.3 + version: 12.1.3 typescript: - specifier: ^5.0.4 - version: 5.0.4 + specifier: ^5.1.6 + version: 5.1.6 packages: @@ -108,14 +112,14 @@ packages: '@algolia/autocomplete-shared': 1.8.2 dev: false - /@algolia/autocomplete-preset-algolia@1.8.2(@algolia/client-search@4.17.0)(algoliasearch@4.17.0): + /@algolia/autocomplete-preset-algolia@1.8.2(@algolia/client-search@4.19.1)(algoliasearch@4.17.0): resolution: {integrity: sha512-J0oTx4me6ZM9kIKPuL3lyU3aB8DEvpVvR6xWmHVROx5rOYJGQcZsdG4ozxwcOyiiu3qxMkIbzntnV1S1VWD8yA==} peerDependencies: '@algolia/client-search': '>= 4.9.1 < 6' algoliasearch: '>= 4.9.1 < 6' dependencies: '@algolia/autocomplete-shared': 1.8.2 - '@algolia/client-search': 4.17.0 + '@algolia/client-search': 4.19.1 algoliasearch: 4.17.0 dev: false @@ -133,6 +137,10 @@ packages: resolution: {integrity: sha512-g8mXzkrcUBIPZaulAuqE7xyHhLAYAcF2xSch7d9dABheybaU3U91LjBX6eJTEB7XVhEsgK4Smi27vWtAJRhIKQ==} dev: false + /@algolia/cache-common@4.19.1: + resolution: {integrity: sha512-XGghi3l0qA38HiqdoUY+wvGyBsGvKZ6U3vTiMBT4hArhP3fOGLXpIINgMiiGjTe4FVlTa5a/7Zf2bwlIHfRqqg==} + dev: false + /@algolia/cache-in-memory@4.17.0: resolution: {integrity: sha512-PT32ciC/xI8z919d0oknWVu3kMfTlhQn3MKxDln3pkn+yA7F7xrxSALysxquv+MhFfNAcrtQ/oVvQVBAQSHtdw==} dependencies: @@ -163,6 +171,13 @@ packages: '@algolia/transporter': 4.17.0 dev: false + /@algolia/client-common@4.19.1: + resolution: {integrity: sha512-3kAIVqTcPrjfS389KQvKzliC559x+BDRxtWamVJt8IVp7LGnjq+aVAXg4Xogkur1MUrScTZ59/AaUd5EdpyXgA==} + dependencies: + '@algolia/requester-common': 4.19.1 + '@algolia/transporter': 4.19.1 + dev: false + /@algolia/client-personalization@4.17.0: resolution: {integrity: sha512-RMzN4dZLIta1YuwT7QC9o+OeGz2cU6eTOlGNE/6RcUBLOU3l9tkCOdln5dPE2jp8GZXPl2yk54b2nSs1+pAjqw==} dependencies: @@ -179,6 +194,14 @@ packages: '@algolia/transporter': 4.17.0 dev: false + /@algolia/client-search@4.19.1: + resolution: {integrity: sha512-mBecfMFS4N+yK/p0ZbK53vrZbL6OtWMk8YmnOv1i0LXx4pelY8TFhqKoTit3NPVPwoSNN0vdSN9dTu1xr1XOVw==} + dependencies: + '@algolia/client-common': 4.19.1 + '@algolia/requester-common': 4.19.1 + '@algolia/transporter': 4.19.1 + dev: false + /@algolia/events@4.0.1: resolution: {integrity: sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==} dev: false @@ -187,6 +210,10 @@ packages: resolution: {integrity: sha512-DGuoZqpTmIKJFDeyAJ7M8E/LOenIjWiOsg1XJ1OqAU/eofp49JfqXxbfgctlVZVmDABIyOz8LqEoJ6ZP4DTyvw==} dev: false + /@algolia/logger-common@4.19.1: + resolution: {integrity: sha512-i6pLPZW/+/YXKis8gpmSiNk1lOmYCmRI6+x6d2Qk1OdfvX051nRVdalRbEcVTpSQX6FQAoyeaui0cUfLYW5Elw==} + dev: false + /@algolia/logger-console@4.17.0: resolution: {integrity: sha512-zMPvugQV/gbXUvWBCzihw6m7oxIKp48w37QBIUu/XqQQfxhjoOE9xyfJr1KldUt5FrYOKZJVsJaEjTsu+bIgQg==} dependencies: @@ -203,6 +230,10 @@ packages: resolution: {integrity: sha512-XJjmWFEUlHu0ijvcHBoixuXfEoiRUdyzQM6YwTuB8usJNIgShua8ouFlRWF8iCeag0vZZiUm4S2WCVBPkdxFgg==} dev: false + /@algolia/requester-common@4.19.1: + resolution: {integrity: sha512-BisRkcWVxrDzF1YPhAckmi2CFYK+jdMT60q10d7z3PX+w6fPPukxHRnZwooiTUrzFe50UBmLItGizWHP5bDzVQ==} + dev: false + /@algolia/requester-node-http@4.17.0: resolution: {integrity: sha512-bpb/wDA1aC6WxxM8v7TsFspB7yBN3nqCGs2H1OADolQR/hiAIjAxusbuMxVbRFOdaUvAIqioIIkWvZdpYNIn8w==} dependencies: @@ -217,6 +248,14 @@ packages: '@algolia/requester-common': 4.17.0 dev: false + /@algolia/transporter@4.19.1: + resolution: {integrity: sha512-nkpvPWbpuzxo1flEYqNIbGz7xhfhGOKGAZS7tzC+TELgEmi7z99qRyTfNSUlW7LZmB3ACdnqAo+9A9KFBENviQ==} + dependencies: + '@algolia/cache-common': 4.19.1 + '@algolia/logger-common': 4.19.1 + '@algolia/requester-common': 4.19.1 + dev: false + /@alloc/quick-lru@5.2.0: resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} engines: {node: '>=10'} @@ -241,30 +280,6 @@ packages: engines: {node: '>=6.9.0'} dev: false - /@babel/core@7.12.9: - resolution: {integrity: sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/code-frame': 7.21.4 - '@babel/generator': 7.21.5 - '@babel/helper-module-transforms': 7.21.5 - '@babel/helpers': 7.21.5 - '@babel/parser': 7.21.8 - '@babel/template': 7.20.7 - '@babel/traverse': 7.21.5 - '@babel/types': 7.21.5 - convert-source-map: 1.9.0 - debug: 4.3.4 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - lodash: 4.17.21 - resolve: 1.22.2 - semver: 5.7.1 - source-map: 0.5.7 - transitivePeerDependencies: - - supports-color - dev: false - /@babel/core@7.21.8: resolution: {integrity: sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==} engines: {node: '>=6.9.0'} @@ -368,7 +383,7 @@ packages: '@babel/helper-plugin-utils': 7.21.5 debug: 4.3.4 lodash.debounce: 4.0.8 - resolve: 1.22.2 + resolve: 1.22.4 semver: 6.3.0 transitivePeerDependencies: - supports-color @@ -431,10 +446,6 @@ packages: '@babel/types': 7.21.5 dev: false - /@babel/helper-plugin-utils@7.10.4: - resolution: {integrity: sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==} - dev: false - /@babel/helper-plugin-utils@7.21.5: resolution: {integrity: sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==} engines: {node: '>=6.9.0'} @@ -675,17 +686,6 @@ packages: '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.21.8) dev: false - /@babel/plugin-proposal-object-rest-spread@7.12.1(@babel/core@7.12.9): - resolution: {integrity: sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.10.4 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.12.9) - '@babel/plugin-transform-parameters': 7.21.3(@babel/core@7.12.9) - dev: false - /@babel/plugin-proposal-object-rest-spread@7.20.7(@babel/core@7.21.8): resolution: {integrity: sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==} engines: {node: '>=6.9.0'} @@ -836,15 +836,6 @@ packages: '@babel/helper-plugin-utils': 7.21.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.21.5 - dev: false - /@babel/plugin-syntax-jsx@7.21.4(@babel/core@7.21.8): resolution: {integrity: sha512-5hewiLct5OKyh6PLKEYaFclcqtIgCb6bmELouxjF6up5q3Sov7rOayW4RwhbaBL0dit8rA80GNfY+UuDp2mBbQ==} engines: {node: '>=6.9.0'} @@ -882,15 +873,6 @@ packages: '@babel/helper-plugin-utils': 7.21.5 dev: false - /@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.12.9 - '@babel/helper-plugin-utils': 7.21.5 - dev: false - /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.21.8): resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} peerDependencies: @@ -1196,16 +1178,6 @@ packages: - supports-color dev: false - /@babel/plugin-transform-parameters@7.21.3(@babel/core@7.12.9): - resolution: {integrity: sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.21.5 - dev: false - /@babel/plugin-transform-parameters@7.21.3(@babel/core@7.21.8): resolution: {integrity: sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ==} engines: {node: '>=6.9.0'} @@ -1595,16 +1567,16 @@ packages: resolution: {integrity: sha512-Tbsj02wXCbqGmzdnXNk0SOF19ChhRU70BsroIi4Pm6Ehp56in6vch94mfbdQ17DozxkL3BAVjbZ4Qc1a0HFRAg==} dev: false - /@buf/meshtastic_protobufs.bufbuild_es@1.2.0-20230417204104-5e504ea6e3e3.1(@bufbuild/protobuf@1.2.0): - resolution: {registry: https://buf.build/gen/npm/v1/, tarball: https://buf.build/gen/npm/v1/@buf/meshtastic_protobufs.bufbuild_es/-/meshtastic_protobufs.bufbuild_es-1.2.0-20230417204104-5e504ea6e3e3.1.tgz} + /@buf/meshtastic_protobufs.bufbuild_es@1.3.0-20230807174505-db3cb0c7cf53.1(@bufbuild/protobuf@1.3.0): + resolution: {registry: https://buf.build/gen/npm/v1, tarball: https://buf.build/gen/npm/v1/@buf/meshtastic_protobufs.bufbuild_es/-/meshtastic_protobufs.bufbuild_es-1.3.0-20230807174505-db3cb0c7cf53.1.tgz} peerDependencies: - '@bufbuild/protobuf': ^1.2.0 + '@bufbuild/protobuf': ^1.3.0 dependencies: - '@bufbuild/protobuf': 1.2.0 + '@bufbuild/protobuf': 1.3.0 dev: false - /@bufbuild/protobuf@1.2.0: - resolution: {integrity: sha512-MBVuQMOBHxgGnZ9XCUIi8WOy5O/T4ma3TduCRhRvndv3UDbG9cHgd8h6nOYSGyBYPEvXf1z9nTwhp8mVIDbq2g==} + /@bufbuild/protobuf@1.3.0: + resolution: {integrity: sha512-G372ods0pLt46yxVRsnP/e2btVPuuzArcMPFpIDeIwiGPuuglEs9y75iG0HMvZgncsj5TvbYRWqbVyOe3PLCWQ==} dev: false /@colors/colors@1.5.0: @@ -1630,7 +1602,7 @@ packages: resolution: {integrity: sha512-vDwCDoVXDgopw/hvr0zEADew2wWaGP8Qq0Bxhgii1Ewz2t4fQeyJwIRN/mWADeLFYPVkpz8TpEbxya/i6Tm0WA==} dev: false - /@docsearch/react@3.3.4(@algolia/client-search@4.17.0)(@types/react@18.2.6)(react-dom@17.0.2)(react@17.0.2): + /@docsearch/react@3.3.4(@algolia/client-search@4.19.1)(@types/react@18.2.18)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-aeOf1WC5zMzBEi2SI6WWznOmIo9rnpN4p7a3zHXxowVciqlI4HsZGtOR9nFOufLeolv7HibwLlaM0oyUqJxasw==} peerDependencies: '@types/react': '>= 16.8.0 < 19.0.0' @@ -1645,23 +1617,23 @@ packages: optional: true dependencies: '@algolia/autocomplete-core': 1.8.2 - '@algolia/autocomplete-preset-algolia': 1.8.2(@algolia/client-search@4.17.0)(algoliasearch@4.17.0) + '@algolia/autocomplete-preset-algolia': 1.8.2(@algolia/client-search@4.19.1)(algoliasearch@4.17.0) '@docsearch/css': 3.3.4 - '@types/react': 18.2.6 + '@types/react': 18.2.18 algoliasearch: 4.17.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) transitivePeerDependencies: - '@algolia/client-search' dev: false - /@docusaurus/core@2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4): - resolution: {integrity: sha512-SNsY7PshK3Ri7vtsLXVeAJGS50nJN3RgF836zkyUfAD01Fq+sAk5EwWgLw+nnm5KVNGDu7PRR2kRGDsWvqpo0g==} + /@docusaurus/core@3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6): + resolution: {integrity: sha512-e1P/PpQqy0DFnYmE6Mv7Dv0RhhA0nF5G+jwkMEEOrztRKaDOqHzWZYy7IC0s+63YizCzgYYuyD02QMhgr77Yhg==} engines: {node: '>=16.14'} hasBin: true peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: '@babel/core': 7.21.8 '@babel/generator': 7.21.5 @@ -1673,17 +1645,17 @@ packages: '@babel/runtime': 7.21.5 '@babel/runtime-corejs3': 7.21.5 '@babel/traverse': 7.21.5 - '@docusaurus/cssnano-preset': 2.4.1 - '@docusaurus/logger': 2.4.1 - '@docusaurus/mdx-loader': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/react-loadable': 5.5.2(react@17.0.2) - '@docusaurus/utils': 2.4.1(@docusaurus/types@2.4.1) - '@docusaurus/utils-common': 2.4.1(@docusaurus/types@2.4.1) - '@docusaurus/utils-validation': 2.4.1(@docusaurus/types@2.4.1) + '@docusaurus/cssnano-preset': 3.0.0-alpha.0 + '@docusaurus/logger': 3.0.0-alpha.0 + '@docusaurus/mdx-loader': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/react-loadable': 5.5.2(react@18.2.0) + '@docusaurus/utils': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + '@docusaurus/utils-common': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + '@docusaurus/utils-validation': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) '@slorber/static-site-generator-webpack-plugin': 4.0.7 '@svgr/webpack': 6.5.1 - autoprefixer: 10.4.14(postcss@8.4.23) - babel-loader: 8.3.0(@babel/core@7.21.8)(webpack@5.82.1) + autoprefixer: 10.4.14(postcss@8.4.27) + babel-loader: 9.1.3(@babel/core@7.21.8)(webpack@5.82.1) babel-plugin-dynamic-import-node: 2.3.3 boxen: 6.2.1 chalk: 4.1.2 @@ -1696,41 +1668,41 @@ packages: core-js: 3.30.2 css-loader: 6.7.3(webpack@5.82.1) css-minimizer-webpack-plugin: 4.2.2(clean-css@5.3.2)(webpack@5.82.1) - cssnano: 5.1.15(postcss@8.4.23) + cssnano: 5.1.15(postcss@8.4.27) del: 6.1.1 detect-port: 1.5.1 escape-html: 1.0.3 eta: 2.2.0 file-loader: 6.2.0(webpack@5.82.1) - fs-extra: 10.1.0 - html-minifier-terser: 6.1.0 + fs-extra: 11.1.1 + html-minifier-terser: 7.2.0 html-tags: 3.3.1 html-webpack-plugin: 5.5.1(webpack@5.82.1) import-fresh: 3.3.0 leven: 3.1.0 lodash: 4.17.21 mini-css-extract-plugin: 2.7.5(webpack@5.82.1) - postcss: 8.4.23 - postcss-loader: 7.3.0(postcss@8.4.23)(webpack@5.82.1) + postcss: 8.4.27 + postcss-loader: 7.3.0(postcss@8.4.27)(webpack@5.82.1) prompts: 2.4.2 - react: 17.0.2 - react-dev-utils: 12.0.1(typescript@5.0.4)(webpack@5.82.1) - 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: 18.2.0 + react-dev-utils: 12.0.1(typescript@5.1.6)(webpack@5.82.1) + react-dom: 18.2.0(react@18.2.0) + react-helmet-async: 1.3.0(react-dom@18.2.0)(react@18.2.0) + react-loadable: /@docusaurus/react-loadable@5.5.2(react@18.2.0) react-loadable-ssr-addon-v5-slorber: 1.0.1(@docusaurus/react-loadable@5.5.2)(webpack@5.82.1) - 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) + react-router: 5.3.4(react@18.2.0) + react-router-config: 5.1.1(react-router@5.3.4)(react@18.2.0) + react-router-dom: 5.3.4(react@18.2.0) rtl-detect: 1.0.4 semver: 7.5.1 serve-handler: 6.1.5 shelljs: 0.8.5 terser-webpack-plugin: 5.3.8(webpack@5.82.1) - tslib: 2.5.0 - update-notifier: 5.1.0 + tslib: 2.6.1 + update-notifier: 6.0.2 url-loader: 4.1.1(file-loader@6.2.0)(webpack@5.82.1) - wait-on: 6.0.1 + wait-on: 7.0.1 webpack: 5.82.1 webpack-bundle-analyzer: 4.8.0 webpack-dev-server: 4.15.0(webpack@5.82.1) @@ -1755,47 +1727,55 @@ packages: - webpack-cli dev: false - /@docusaurus/cssnano-preset@2.4.1: - resolution: {integrity: sha512-ka+vqXwtcW1NbXxWsh6yA1Ckii1klY9E53cJ4O9J09nkMBgrNX3iEFED1fWdv8wf4mJjvGi5RLZ2p9hJNjsLyQ==} + /@docusaurus/cssnano-preset@3.0.0-alpha.0: + resolution: {integrity: sha512-W+rCRAAv/AIePyWk62tYUxZBRJojBWwIW0/olhhjoEyI4cyLrfUXE1be8gilu0SoDw6S1WukDCoEf+31+9+ZJg==} engines: {node: '>=16.14'} dependencies: - cssnano-preset-advanced: 5.3.10(postcss@8.4.23) - postcss: 8.4.23 - postcss-sort-media-queries: 4.4.1(postcss@8.4.23) - tslib: 2.5.0 + cssnano-preset-advanced: 5.3.10(postcss@8.4.27) + postcss: 8.4.27 + postcss-sort-media-queries: 4.4.1(postcss@8.4.27) + tslib: 2.6.1 dev: false - /@docusaurus/logger@2.4.1: - resolution: {integrity: sha512-5h5ysIIWYIDHyTVd8BjheZmQZmEgWDR54aQ1BX9pjFfpyzFo5puKXKYrYJXbjEHGyVhEzmB9UXwbxGfaZhOjcg==} + /@docusaurus/logger@3.0.0-alpha.0: + resolution: {integrity: sha512-atQzfn8A5A95qOIgTU8+YQts0eWwv7jru9NLp+Jauu0ykWVjKP0IXFHrtHkpLi96gUjIgdRb0AYaLZFGME74ZQ==} engines: {node: '>=16.14'} dependencies: chalk: 4.1.2 - tslib: 2.5.0 + tslib: 2.6.1 dev: false - /@docusaurus/mdx-loader@2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-4KhUhEavteIAmbBj7LVFnrVYDiU51H5YWW1zY6SmBSte/YLhDutztLTBE0PQl1Grux1jzUJeaSvAzHpTn6JJDQ==} + /@docusaurus/mdx-loader@3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-R4NUhQldtTdoxLq5C1QgTmX+qAmH0S3RBQHnGhlNjnK1ZUUzrbZvl4luTQ5OziQ2eQDuDmwpPPZqYKbeuKLNcw==} engines: {node: '>=16.14'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: '@babel/parser': 7.21.8 '@babel/traverse': 7.21.5 - '@docusaurus/logger': 2.4.1 - '@docusaurus/utils': 2.4.1(@docusaurus/types@2.4.1) - '@mdx-js/mdx': 1.6.22 + '@docusaurus/logger': 3.0.0-alpha.0 + '@docusaurus/utils': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + '@docusaurus/utils-validation': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + '@mdx-js/mdx': 2.3.0 escape-html: 1.0.3 + estree-util-value-to-estree: 2.1.0 file-loader: 6.2.0(webpack@5.82.1) - fs-extra: 10.1.0 + fs-extra: 11.1.1 + hastscript: 7.2.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) + mdast-util-mdx: 2.0.1 + mdast-util-to-string: 3.2.0 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + rehype-raw: 6.1.1 + remark-comment: 1.0.0 + remark-directive: 2.0.1 remark-emoji: 2.2.0 + remark-gfm: 3.0.1 stringify-object: 3.3.0 - tslib: 2.5.0 - unified: 9.2.2 + tslib: 2.6.1 + unified: 10.1.2 unist-util-visit: 2.0.3 url-loader: 4.1.1(file-loader@6.2.0)(webpack@5.82.1) webpack: 5.82.1 @@ -1808,50 +1788,50 @@ packages: - webpack-cli dev: false - /@docusaurus/module-type-aliases@2.4.1(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-gLBuIFM8Dp2XOCWffUDSjtxY7jQgKvYujt7Mx5s4FCTfoL5dN1EVbnrn+O2Wvh8b0a77D57qoIDY7ghgmatR1A==} + /@docusaurus/module-type-aliases@3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-9Uko9ndSSsRFFpw23zCw0TuzQOrHuYwfuA1gxDoATSGmWdSu8+EVGBV7TP3EHKb8s9EImlZ6I+3CROuoM1fvDQ==} peerDependencies: react: '*' react-dom: '*' dependencies: - '@docusaurus/react-loadable': 5.5.2(react@17.0.2) - '@docusaurus/types': 2.4.1(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/react-loadable': 5.5.2(react@18.2.0) + '@docusaurus/types': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) '@types/history': 4.7.11 - '@types/react': 18.2.6 + '@types/react': 18.2.18 '@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.3.0(react-dom@17.0.2)(react@17.0.2) - react-loadable: /@docusaurus/react-loadable@5.5.2(react@17.0.2) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-helmet-async: 1.3.0(react-dom@18.2.0)(react@18.2.0) + react-loadable: /@docusaurus/react-loadable@5.5.2(react@18.2.0) transitivePeerDependencies: - '@swc/core' - esbuild - uglify-js - webpack-cli - /@docusaurus/plugin-content-blog@2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4): - resolution: {integrity: sha512-E2i7Knz5YIbE1XELI6RlTnZnGgS52cUO4BlCiCUCvQHbR+s1xeIWz4C6BtaVnlug0Ccz7nFSksfwDpVlkujg5Q==} + /@docusaurus/plugin-content-blog@3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6): + resolution: {integrity: sha512-ZKYq0Q888AeIPrTUhw6igq/e2Ee5WLENaOSy2uzVtPLieXu0BAw4gQqV2qyhZr0vwvMYhJ4Ke7KTMFSAgBXdyg==} engines: {node: '>=16.14'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/logger': 2.4.1 - '@docusaurus/mdx-loader': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/types': 2.4.1(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.1(@docusaurus/types@2.4.1) - '@docusaurus/utils-common': 2.4.1(@docusaurus/types@2.4.1) - '@docusaurus/utils-validation': 2.4.1(@docusaurus/types@2.4.1) + '@docusaurus/core': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/logger': 3.0.0-alpha.0 + '@docusaurus/mdx-loader': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/types': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + '@docusaurus/utils-common': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + '@docusaurus/utils-validation': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) cheerio: 1.0.0-rc.12 feed: 4.2.2 - fs-extra: 10.1.0 + fs-extra: 11.1.1 lodash: 4.17.21 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) reading-time: 1.5.0 - tslib: 2.5.0 + tslib: 2.6.1 unist-util-visit: 2.0.3 utility-types: 3.10.0 webpack: 5.82.1 @@ -1873,29 +1853,29 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-content-docs@2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4): - resolution: {integrity: sha512-Lo7lSIcpswa2Kv4HEeUcGYqaasMUQNpjTXpV0N8G6jXgZaQurqp7E8NGYeGbDXnb48czmHWbzDL4S3+BbK0VzA==} + /@docusaurus/plugin-content-docs@3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6): + resolution: {integrity: sha512-dlxgXsbvjl4jARJi32dn5BAU7LgQRJX18pC/jsrq3IeHQNS9sXSBFmHItK66JtqwXTdhpipkui3iIari2NNpFQ==} engines: {node: '>=16.14'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/logger': 2.4.1 - '@docusaurus/mdx-loader': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/module-type-aliases': 2.4.1(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/types': 2.4.1(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.1(@docusaurus/types@2.4.1) - '@docusaurus/utils-validation': 2.4.1(@docusaurus/types@2.4.1) + '@docusaurus/core': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/logger': 3.0.0-alpha.0 + '@docusaurus/mdx-loader': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/module-type-aliases': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/types': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + '@docusaurus/utils-validation': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) '@types/react-router-config': 5.0.7 combine-promises: 1.1.0 - fs-extra: 10.1.0 + fs-extra: 11.1.1 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) - tslib: 2.5.0 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + tslib: 2.6.1 utility-types: 3.10.0 webpack: 5.82.1 transitivePeerDependencies: @@ -1916,22 +1896,22 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-content-pages@2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4): - resolution: {integrity: sha512-/UjuH/76KLaUlL+o1OvyORynv6FURzjurSjvn2lbWTFc4tpYY2qLYTlKpTCBVPhlLUQsfyFnshEJDLmPneq2oA==} + /@docusaurus/plugin-content-pages@3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6): + resolution: {integrity: sha512-yoTfh+xBZaOM3tBJFBpwYsDqnK4zAJjJtAJ80MnnnXIZ9gw640T9F+OjIqwFwp3rphpdONGg1QmeEnmAzy64QA==} engines: {node: '>=16.14'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/mdx-loader': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/types': 2.4.1(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.1(@docusaurus/types@2.4.1) - '@docusaurus/utils-validation': 2.4.1(@docusaurus/types@2.4.1) - fs-extra: 10.1.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.5.0 + '@docusaurus/core': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/mdx-loader': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/types': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + '@docusaurus/utils-validation': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + fs-extra: 11.1.1 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + tslib: 2.6.1 webpack: 5.82.1 transitivePeerDependencies: - '@parcel/css' @@ -1951,21 +1931,21 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-debug@2.4.1(@types/react@18.2.6)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4): - resolution: {integrity: sha512-7Yu9UPzRShlrH/G8btOpR0e6INFZr0EegWplMjOqelIwAcx3PKyR8mgPTxGTxcqiYj6hxSCRN0D8R7YrzImwNA==} + /@docusaurus/plugin-debug@3.0.0-alpha.0(@types/react@18.2.18)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6): + resolution: {integrity: sha512-2dNVjl//5G5djj1+YZ3aqaAmxNGGQydzUr3tZnaGfej7Z2NrhYrGo1LFKI+EgB5TpX/Pu9zIhGi/D0kS8j7BlA==} engines: {node: '>=16.14'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/types': 2.4.1(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.1(@docusaurus/types@2.4.1) - fs-extra: 10.1.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - react-json-view: 1.21.3(@types/react@18.2.6)(react-dom@17.0.2)(react@17.0.2) - tslib: 2.5.0 + '@docusaurus/core': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/types': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + fs-extra: 11.1.1 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-json-view: 1.21.3(@types/react@18.2.18)(react-dom@18.2.0)(react@18.2.0) + tslib: 2.6.1 transitivePeerDependencies: - '@parcel/css' - '@swc/core' @@ -1986,19 +1966,19 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-google-analytics@2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4): - resolution: {integrity: sha512-dyZJdJiCoL+rcfnm0RPkLt/o732HvLiEwmtoNzOoz9MSZz117UH2J6U2vUDtzUzwtFLIf32KkeyzisbwUCgcaQ==} + /@docusaurus/plugin-google-analytics@3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6): + resolution: {integrity: sha512-ybaJQBHGzMNWOEPMEQ9jhln0pxBrLgWIbj7YlzjKjfHCKZ1FYEKlvQBrps8MPfH+d3LhwS7f9dd7Z1sJs3GUlA==} engines: {node: '>=16.14'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/types': 2.4.1(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils-validation': 2.4.1(@docusaurus/types@2.4.1) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.5.0 + '@docusaurus/core': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/types': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils-validation': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + tslib: 2.6.1 transitivePeerDependencies: - '@parcel/css' - '@swc/core' @@ -2017,19 +1997,20 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-google-gtag@2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4): - resolution: {integrity: sha512-mKIefK+2kGTQBYvloNEKtDmnRD7bxHLsBcxgnbt4oZwzi2nxCGjPX6+9SQO2KCN5HZbNrYmGo5GJfMgoRvy6uA==} + /@docusaurus/plugin-google-gtag@3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6): + resolution: {integrity: sha512-IJkZuBf4bIjKWUWe6qg82tSTjTI06rqIWPbw2wCW6H/m+rgI0jbinpR3pmrFl1agVi3dWtn731CVXV4lSvv7cg==} engines: {node: '>=16.14'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/types': 2.4.1(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils-validation': 2.4.1(@docusaurus/types@2.4.1) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.5.0 + '@docusaurus/core': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/types': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils-validation': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + '@types/gtag.js': 0.0.12 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + tslib: 2.6.1 transitivePeerDependencies: - '@parcel/css' - '@swc/core' @@ -2048,19 +2029,19 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-google-tag-manager@2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4): - resolution: {integrity: sha512-Zg4Ii9CMOLfpeV2nG74lVTWNtisFaH9QNtEw48R5QE1KIwDBdTVaiSA18G1EujZjrzJJzXN79VhINSbOJO/r3g==} + /@docusaurus/plugin-google-tag-manager@3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6): + resolution: {integrity: sha512-y/9jcokUjreRHghWrhMe6hy2G768JaEdmqie6X5OmXM2Lr+L3H4W4tJiRacqkW+/K5BsrVudOzxAqtXTwfBGvA==} engines: {node: '>=16.14'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/types': 2.4.1(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils-validation': 2.4.1(@docusaurus/types@2.4.1) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.5.0 + '@docusaurus/core': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/types': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils-validation': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + tslib: 2.6.1 transitivePeerDependencies: - '@parcel/css' - '@swc/core' @@ -2079,24 +2060,24 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-sitemap@2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4): - resolution: {integrity: sha512-lZx+ijt/+atQ3FVE8FOHV/+X3kuok688OydDXrqKRJyXBJZKgGjA2Qa8RjQ4f27V2woaXhtnyrdPop/+OjVMRg==} + /@docusaurus/plugin-sitemap@3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6): + resolution: {integrity: sha512-UftoalMEWAeKPf80tdt0Olfg82V0SyeDEVpf9epRanT9fkr1DaF5lTWhJIgjFdou5XboW7feUeGPOZ78DWQr0w==} engines: {node: '>=16.14'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/logger': 2.4.1 - '@docusaurus/types': 2.4.1(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.1(@docusaurus/types@2.4.1) - '@docusaurus/utils-common': 2.4.1(@docusaurus/types@2.4.1) - '@docusaurus/utils-validation': 2.4.1(@docusaurus/types@2.4.1) - fs-extra: 10.1.0 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) + '@docusaurus/core': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/logger': 3.0.0-alpha.0 + '@docusaurus/types': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + '@docusaurus/utils-common': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + '@docusaurus/utils-validation': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + fs-extra: 11.1.1 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) sitemap: 7.1.1 - tslib: 2.5.0 + tslib: 2.6.1 transitivePeerDependencies: - '@parcel/css' - '@swc/core' @@ -2115,28 +2096,28 @@ packages: - webpack-cli dev: false - /@docusaurus/preset-classic@2.4.1(@algolia/client-search@4.17.0)(@types/react@18.2.6)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4): - resolution: {integrity: sha512-P4//+I4zDqQJ+UDgoFrjIFaQ1MeS9UD1cvxVQaI6O7iBmiHQm0MGROP1TbE7HlxlDPXFJjZUK3x3cAoK63smGQ==} + /@docusaurus/preset-classic@3.0.0-alpha.0(@algolia/client-search@4.19.1)(@types/react@18.2.18)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6): + resolution: {integrity: sha512-NH2Ufv0jSGiPwBD/+JhS3pbedsyUpAU33IzRouVFniQDwBr/n//yJNXTQBW7ZTUeCSebxr4cEABArAVg+RTmQA==} engines: {node: '>=16.14'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/plugin-content-blog': 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/plugin-content-docs': 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/plugin-content-pages': 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/plugin-debug': 2.4.1(@types/react@18.2.6)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/plugin-google-analytics': 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/plugin-google-gtag': 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/plugin-google-tag-manager': 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/plugin-sitemap': 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/theme-classic': 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/theme-common': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/theme-search-algolia': 2.4.1(@algolia/client-search@4.17.0)(@docusaurus/types@2.4.1)(@types/react@18.2.6)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/types': 2.4.1(react-dom@17.0.2)(react@17.0.2) - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) + '@docusaurus/core': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/plugin-content-blog': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/plugin-content-docs': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/plugin-content-pages': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/plugin-debug': 3.0.0-alpha.0(@types/react@18.2.18)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/plugin-google-analytics': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/plugin-google-gtag': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/plugin-google-tag-manager': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/plugin-sitemap': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/theme-classic': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/theme-common': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/theme-search-algolia': 3.0.0-alpha.0(@algolia/client-search@4.19.1)(@docusaurus/types@3.0.0-alpha.0)(@types/react@18.2.18)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/types': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) transitivePeerDependencies: - '@algolia/client-search' - '@parcel/css' @@ -2158,48 +2139,48 @@ packages: - webpack-cli dev: false - /@docusaurus/react-loadable@5.5.2(react@17.0.2): + /@docusaurus/react-loadable@5.5.2(react@18.2.0): resolution: {integrity: sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==} peerDependencies: react: '*' dependencies: - '@types/react': 18.2.6 + '@types/react': 18.2.18 prop-types: 15.8.1 - react: 17.0.2 + react: 18.2.0 - /@docusaurus/theme-classic@2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4): - resolution: {integrity: sha512-Rz0wKUa+LTW1PLXmwnf8mn85EBzaGSt6qamqtmnh9Hflkc+EqiYMhtUJeLdV+wsgYq4aG0ANc+bpUDpsUhdnwg==} + /@docusaurus/theme-classic@3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6): + resolution: {integrity: sha512-EKH1UAi/5I4gy3cpcfAnGBDfX3N5lfdg9NlXIMI5m1337n4QlbfF5f5NPnXwq7F5oWXniyeNAPQnhba/ELTNHA==} engines: {node: '>=16.14'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/mdx-loader': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/module-type-aliases': 2.4.1(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/plugin-content-blog': 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/plugin-content-docs': 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/plugin-content-pages': 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/theme-common': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/theme-translations': 2.4.1 - '@docusaurus/types': 2.4.1(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils': 2.4.1(@docusaurus/types@2.4.1) - '@docusaurus/utils-common': 2.4.1(@docusaurus/types@2.4.1) - '@docusaurus/utils-validation': 2.4.1(@docusaurus/types@2.4.1) - '@mdx-js/react': 1.6.22(react@17.0.2) + '@docusaurus/core': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/mdx-loader': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/module-type-aliases': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/plugin-content-blog': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/plugin-content-docs': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/plugin-content-pages': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/theme-common': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/theme-translations': 3.0.0-alpha.0 + '@docusaurus/types': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + '@docusaurus/utils-common': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + '@docusaurus/utils-validation': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + '@mdx-js/react': 2.3.0(react@18.2.0) clsx: 1.2.1 copy-text-to-clipboard: 3.1.0 infima: 0.2.0-alpha.43 lodash: 4.17.21 nprogress: 0.2.0 - postcss: 8.4.23 - prism-react-renderer: 1.3.5(react@17.0.2) + postcss: 8.4.27 + prism-react-renderer: 1.3.5(react@18.2.0) prismjs: 1.29.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.5.0 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-router-dom: 5.3.4(react@18.2.0) + rtlcss: 4.1.0 + tslib: 2.6.1 utility-types: 3.10.0 transitivePeerDependencies: - '@parcel/css' @@ -2219,30 +2200,30 @@ packages: - webpack-cli dev: false - /@docusaurus/theme-common@2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4): - resolution: {integrity: sha512-G7Zau1W5rQTaFFB3x3soQoZpkgMbl/SYNG8PfMFIjKa3M3q8n0m/GRf5/H/e5BqOvt8c+ZWIXGCiz+kUCSHovA==} + /@docusaurus/theme-common@3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6): + resolution: {integrity: sha512-dEMSB0G+ZigAb9KqQ+yztz2BiXbAX3/vFlE5xpNbH8nSahSfIwF9QG5f+5DON99+0VnpF3fMmLLq6lQR5/LVMQ==} engines: {node: '>=16.14'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/mdx-loader': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/module-type-aliases': 2.4.1(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/plugin-content-blog': 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/plugin-content-docs': 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/plugin-content-pages': 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/utils': 2.4.1(@docusaurus/types@2.4.1) - '@docusaurus/utils-common': 2.4.1(@docusaurus/types@2.4.1) + '@docusaurus/mdx-loader': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/module-type-aliases': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/plugin-content-blog': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/plugin-content-docs': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/plugin-content-pages': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/utils': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + '@docusaurus/utils-common': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) '@types/history': 4.7.11 - '@types/react': 18.2.6 + '@types/react': 18.2.18 '@types/react-router-config': 5.0.7 clsx: 1.2.1 parse-numeric-range: 1.3.0 - 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.5.0 - use-sync-external-store: 1.2.0(react@17.0.2) + prism-react-renderer: 1.3.5(react@18.2.0) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + tslib: 2.6.1 + use-sync-external-store: 1.2.0(react@18.2.0) utility-types: 3.10.0 transitivePeerDependencies: - '@docusaurus/types' @@ -2263,23 +2244,22 @@ packages: - webpack-cli dev: false - /@docusaurus/theme-mermaid@2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4): - resolution: {integrity: sha512-cM0ImKIqZfjmlaC+uAjep39kNBvb1bjz429QBHGs32maob4+UnRzVPPpCUCltyPVb4xjG5h1Tyq4pHzhtIikqA==} + /@docusaurus/theme-mermaid@3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6): + resolution: {integrity: sha512-Y6rq0639aqgDRSifZCpzxrq26wnF2SzFvXr7x5AlvbznoZFXIi/O7mlPZb+LRFxw3xt2/ws3eZiDlOPmDhWbZA==} engines: {node: '>=16.14'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docusaurus/core': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/module-type-aliases': 2.4.1(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/theme-common': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/types': 2.4.1(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/utils-validation': 2.4.1(@docusaurus/types@2.4.1) - '@mdx-js/react': 1.6.22(react@17.0.2) + '@docusaurus/core': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/module-type-aliases': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/theme-common': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/types': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/utils-validation': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) mermaid: 9.4.3 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.5.0 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + tslib: 2.6.1 transitivePeerDependencies: - '@parcel/css' - '@swc/core' @@ -2298,30 +2278,30 @@ packages: - webpack-cli dev: false - /@docusaurus/theme-search-algolia@2.4.1(@algolia/client-search@4.17.0)(@docusaurus/types@2.4.1)(@types/react@18.2.6)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4): - resolution: {integrity: sha512-6BcqW2lnLhZCXuMAvPRezFs1DpmEKzXFKlYjruuas+Xy3AQeFzDJKTJFIm49N77WFCTyxff8d3E4Q9pi/+5McQ==} + /@docusaurus/theme-search-algolia@3.0.0-alpha.0(@algolia/client-search@4.19.1)(@docusaurus/types@3.0.0-alpha.0)(@types/react@18.2.18)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6): + resolution: {integrity: sha512-tOtcer8YUA1c1JUsE5UuXYMn4/PvwMXo1/2NFhws3S2+K6mh+1axongRJ8frKf0xMWWTnswtFsLBhwhG8aTwMA==} engines: {node: '>=16.14'} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: - '@docsearch/react': 3.3.4(@algolia/client-search@4.17.0)(@types/react@18.2.6)(react-dom@17.0.2)(react@17.0.2) - '@docusaurus/core': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/logger': 2.4.1 - '@docusaurus/plugin-content-docs': 2.4.1(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/theme-common': 2.4.1(@docusaurus/types@2.4.1)(react-dom@17.0.2)(react@17.0.2)(typescript@5.0.4) - '@docusaurus/theme-translations': 2.4.1 - '@docusaurus/utils': 2.4.1(@docusaurus/types@2.4.1) - '@docusaurus/utils-validation': 2.4.1(@docusaurus/types@2.4.1) + '@docsearch/react': 3.3.4(@algolia/client-search@4.19.1)(@types/react@18.2.18)(react-dom@18.2.0)(react@18.2.0) + '@docusaurus/core': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/logger': 3.0.0-alpha.0 + '@docusaurus/plugin-content-docs': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/theme-common': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0)(react-dom@18.2.0)(react@18.2.0)(typescript@5.1.6) + '@docusaurus/theme-translations': 3.0.0-alpha.0 + '@docusaurus/utils': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) + '@docusaurus/utils-validation': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) algoliasearch: 4.17.0 algoliasearch-helper: 3.13.0(algoliasearch@4.17.0) clsx: 1.2.1 eta: 2.2.0 - fs-extra: 10.1.0 + fs-extra: 11.1.1 lodash: 4.17.21 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) - tslib: 2.5.0 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + tslib: 2.6.1 utility-types: 3.10.0 transitivePeerDependencies: - '@algolia/client-search' @@ -2344,27 +2324,27 @@ packages: - webpack-cli dev: false - /@docusaurus/theme-translations@2.4.1: - resolution: {integrity: sha512-T1RAGP+f86CA1kfE8ejZ3T3pUU3XcyvrGMfC/zxCtc2BsnoexuNI9Vk2CmuKCb+Tacvhxjv5unhxXce0+NKyvA==} + /@docusaurus/theme-translations@3.0.0-alpha.0: + resolution: {integrity: sha512-32s4dxdz3F8p/6WsYdiNlnV0W3glHyG1qDM3SngZLp7sihgmvAIFzLhrbTLYqZhR8DXqy6QdiD7utRN1oQrWUg==} engines: {node: '>=16.14'} dependencies: - fs-extra: 10.1.0 - tslib: 2.5.0 + fs-extra: 11.1.1 + tslib: 2.6.1 dev: false - /@docusaurus/types@2.4.1(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-0R+cbhpMkhbRXX138UOc/2XZFF8hiZa6ooZAEEJFp5scytzCw4tC1gChMFXrpa3d2tYE6AX8IrOEpSonLmfQuQ==} + /@docusaurus/types@3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-DdLoy6U6KzHxYYEgBN9AG5Xv2yrDXil4EhL+QUui5cGk/BrBDoADmLJ9c/6dQcqThVEqgmAl5tf19tG9P6atgw==} peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 + react: ^18.0.0 + react-dom: ^18.0.0 dependencies: '@types/history': 4.7.11 - '@types/react': 18.2.6 + '@types/react': 18.2.18 commander: 5.1.0 joi: 17.9.2 - 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) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-helmet-async: 1.3.0(react-dom@18.2.0)(react@18.2.0) utility-types: 3.10.0 webpack: 5.82.1 webpack-merge: 5.8.0 @@ -2374,8 +2354,8 @@ packages: - uglify-js - webpack-cli - /@docusaurus/utils-common@2.4.1(@docusaurus/types@2.4.1): - resolution: {integrity: sha512-bCVGdZU+z/qVcIiEQdyx0K13OC5mYwxhSuDUR95oFbKVuXYRrTVrwZIqQljuo1fyJvFTKHiL9L9skQOPokuFNQ==} + /@docusaurus/utils-common@3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0): + resolution: {integrity: sha512-Q50+OHy1HNR0L1PZSe+eOwqSDXeZdUHkHcfQcIEmoSH7pGB4Wr2TRPUyHgzCkkVhWbqzsgprWH/u6+JmNCV84Q==} engines: {node: '>=16.14'} peerDependencies: '@docusaurus/types': '*' @@ -2383,19 +2363,19 @@ packages: '@docusaurus/types': optional: true dependencies: - '@docusaurus/types': 2.4.1(react-dom@17.0.2)(react@17.0.2) - tslib: 2.5.0 + '@docusaurus/types': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) + tslib: 2.6.1 dev: false - /@docusaurus/utils-validation@2.4.1(@docusaurus/types@2.4.1): - resolution: {integrity: sha512-unII3hlJlDwZ3w8U+pMO3Lx3RhI4YEbY3YNsQj4yzrkZzlpqZOLuAiZK2JyULnD+TKbceKU0WyWkQXtYbLNDFA==} + /@docusaurus/utils-validation@3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0): + resolution: {integrity: sha512-xqe2ekhMg3HQa/PwqZncP/KlI7wofYSrgjIwWZywLAb1ZhOwZngRBOUMCAVTgeJekq7+waVVb5wXqNSqt/hahw==} engines: {node: '>=16.14'} dependencies: - '@docusaurus/logger': 2.4.1 - '@docusaurus/utils': 2.4.1(@docusaurus/types@2.4.1) + '@docusaurus/logger': 3.0.0-alpha.0 + '@docusaurus/utils': 3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0) joi: 17.9.2 js-yaml: 4.1.0 - tslib: 2.5.0 + tslib: 2.6.1 transitivePeerDependencies: - '@docusaurus/types' - '@swc/core' @@ -2405,8 +2385,8 @@ packages: - webpack-cli dev: false - /@docusaurus/utils@2.4.1(@docusaurus/types@2.4.1): - resolution: {integrity: sha512-1lvEZdAQhKNht9aPXPoh69eeKnV0/62ROhQeFKKxmzd0zkcuE/Oc5Gpnt00y/f5bIsmOsYMY7Pqfm/5rteT5GA==} + /@docusaurus/utils@3.0.0-alpha.0(@docusaurus/types@3.0.0-alpha.0): + resolution: {integrity: sha512-+dtf9zxLUkgQFf4qOgz1r812EMrVMDPdxlHkZ6Hr/QqDI0XlpFCTBmmngFDGpkvInji40gP7QORxqOrP03r4Bw==} engines: {node: '>=16.14'} peerDependencies: '@docusaurus/types': '*' @@ -2414,12 +2394,12 @@ packages: '@docusaurus/types': optional: true dependencies: - '@docusaurus/logger': 2.4.1 - '@docusaurus/types': 2.4.1(react-dom@17.0.2)(react@17.0.2) + '@docusaurus/logger': 3.0.0-alpha.0 + '@docusaurus/types': 3.0.0-alpha.0(react-dom@18.2.0)(react@18.2.0) '@svgr/webpack': 6.5.1 escape-string-regexp: 4.0.0 file-loader: 6.2.0(webpack@5.82.1) - fs-extra: 10.1.0 + fs-extra: 11.1.1 github-slugger: 1.5.0 globby: 11.1.0 gray-matter: 4.0.3 @@ -2428,7 +2408,7 @@ packages: micromatch: 4.0.5 resolve-pathname: 3.0.0 shelljs: 0.8.5 - tslib: 2.5.0 + tslib: 2.6.1 url-loader: 4.1.1(file-loader@6.2.0)(webpack@5.82.1) webpack: 5.82.1 transitivePeerDependencies: @@ -2449,6 +2429,7 @@ packages: /@emotion/memoize@0.7.4: resolution: {integrity: sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==} + requiresBuild: true dev: false optional: true @@ -2460,24 +2441,24 @@ packages: dependencies: '@hapi/hoek': 9.3.0 - /@headlessui/react@1.7.14(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-znzdq9PG8rkwcu9oQ2FwIy0ZFtP9Z7ycS+BAqJ3R5EIqC/0bJGvhT7193rFf+45i9nnPsYvCQVW4V/bB9Xc+gA==} + /@headlessui/react@1.7.16(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-2MphIAZdSUacZBT6EXk8AJkj+EuvaaJbtCyHTJrPsz8inhzCl7qeNPI1uk1AUvCgWylVtdN8cVVmnhUDPxPy3g==} engines: {node: '>=10'} peerDependencies: react: ^16 || ^17 || ^18 react-dom: ^16 || ^17 || ^18 dependencies: client-only: 0.0.1 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) dev: false - /@heroicons/react@2.0.18(react@17.0.2): + /@heroicons/react@2.0.18(react@18.2.0): resolution: {integrity: sha512-7TyMjRrZZMBPa+/5Y8lN0iyvUU/01PeMGX2+RE7cQWpEUIcb4QotzUObFkJDejj/HUH4qjP/eQ0gzzKs2f+6Yw==} peerDependencies: react: '>= 16' dependencies: - react: 17.0.2 + react: 18.2.0 dev: false /@jest/schemas@29.4.3: @@ -2494,7 +2475,7 @@ packages: '@jest/schemas': 29.4.3 '@types/istanbul-lib-coverage': 2.0.4 '@types/istanbul-reports': 3.0.1 - '@types/node': 20.1.7 + '@types/node': 20.4.8 '@types/yargs': 17.0.24 chalk: 4.1.2 dev: false @@ -2537,52 +2518,49 @@ packages: resolution: {integrity: sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==} dev: false - /@mdx-js/mdx@1.6.22: - resolution: {integrity: sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==} + /@mdx-js/mdx@2.3.0: + resolution: {integrity: sha512-jLuwRlz8DQfQNiUCJR50Y09CGPq3fLtmtUQfVrj79E0JWu3dvsVcxVIcfhR5h0iXu+/z++zDrYeiJqifRynJkA==} 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) - '@mdx-js/util': 1.6.22 - 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 - hast-util-raw: 6.0.1 - lodash.uniq: 4.5.0 - mdast-util-to-hast: 10.0.1 - remark-footnotes: 2.0.0 - remark-mdx: 1.6.22 - remark-parse: 8.0.3 - remark-squeeze-paragraphs: 4.0.0 - style-to-object: 0.3.0 - unified: 9.2.0 - unist-builder: 2.0.3 - unist-util-visit: 2.0.3 + '@types/estree-jsx': 1.0.0 + '@types/mdx': 2.0.5 + estree-util-build-jsx: 2.2.2 + estree-util-is-identifier-name: 2.1.0 + estree-util-to-js: 1.2.0 + estree-walker: 3.0.3 + hast-util-to-estree: 2.3.3 + markdown-extensions: 1.1.1 + periscopic: 3.1.0 + remark-mdx: 2.3.0 + remark-parse: 10.0.2 + remark-rehype: 10.1.0 + unified: 10.1.2 + unist-util-position-from-estree: 1.1.2 + unist-util-stringify-position: 3.0.3 + unist-util-visit: 4.1.2 + vfile: 5.3.7 transitivePeerDependencies: - supports-color dev: false - /@mdx-js/react@1.6.22(react@17.0.2): - resolution: {integrity: sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==} + /@mdx-js/react@2.3.0(react@18.2.0): + resolution: {integrity: sha512-zQH//gdOmuu7nt2oJR29vFhDv88oGPmVw6BggmrHeMI+xgEkp1B2dX9/bMBSYtK0dyLX/aOmesKS09g222K1/g==} peerDependencies: - react: ^16.13.1 || ^17.0.0 + react: '>=16' dependencies: - react: 17.0.2 + '@types/mdx': 2.0.5 + '@types/react': 18.2.18 + react: 18.2.0 dev: false - /@mdx-js/util@1.6.22: - resolution: {integrity: sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==} - dev: false - - /@meshtastic/meshtasticjs@2.1.9-0: - resolution: {integrity: sha512-1Xdpzt9ZgyeVY5sOaDRJ/se4dZfgTRrUg7Xs9fW/+4dIsnIoL2pa/c65p8LkGrvkNZf+FNReTCFre3G+KMDCfw==} + /@meshtastic/meshtasticjs@2.2.0-0: + resolution: {integrity: sha512-8CIoTVza6I5w39FNI2vz9DXUHYDvMByrPogj7Mxfe6ia9VtRWcz6rw/3SFs8AhokdOBZhI4eIyqaN5sFhpexGA==} dependencies: - '@buf/meshtastic_protobufs.bufbuild_es': 1.2.0-20230417204104-5e504ea6e3e3.1(@bufbuild/protobuf@1.2.0) - '@bufbuild/protobuf': 1.2.0 + '@buf/meshtastic_protobufs.bufbuild_es': 1.3.0-20230807174505-db3cb0c7cf53.1(@bufbuild/protobuf@1.3.0) + '@bufbuild/protobuf': 1.3.0 crc: 4.3.2 sub-events: 1.9.0 - tslog: 4.8.2 + tslib: 2.6.1 + tslog: 4.9.0 transitivePeerDependencies: - buffer dev: false @@ -2652,52 +2630,73 @@ packages: '@nodelib/fs.scandir': 2.1.5 fastq: 1.15.0 + /@pnpm/config.env-replace@1.1.0: + resolution: {integrity: sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==} + engines: {node: '>=12.22.0'} + dev: false + + /@pnpm/network.ca-file@1.0.2: + resolution: {integrity: sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==} + engines: {node: '>=12.22.0'} + dependencies: + graceful-fs: 4.2.10 + dev: false + + /@pnpm/npm-conf@2.2.2: + resolution: {integrity: sha512-UA91GwWPhFExt3IizW6bOeY/pQ0BkuNwKjk9iQW9KqxluGCrg4VenZ0/L+2Y0+ZOtme72EVvg6v0zo3AMQRCeA==} + engines: {node: '>=12'} + dependencies: + '@pnpm/config.env-replace': 1.1.0 + '@pnpm/network.ca-file': 1.0.2 + config-chain: 1.1.13 + dev: false + /@polka/url@1.0.0-next.21: resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==} dev: false - /@rometools/cli-darwin-arm64@12.1.0: - resolution: {integrity: sha512-U9trIXqE+WVsPUQRE8vooh97jNcyC1cvhNO91Q31FfWgccfbiJbfiQzPewpQ1+UseyJIdpWFAYLs8VFykhAl3g==} + /@rometools/cli-darwin-arm64@12.1.3: + resolution: {integrity: sha512-AmFTUDYjBuEGQp/Wwps+2cqUr+qhR7gyXAUnkL5psCuNCz3807TrUq/ecOoct5MIavGJTH6R4aaSL6+f+VlBEg==} cpu: [arm64] os: [darwin] requiresBuild: true dev: true optional: true - /@rometools/cli-darwin-x64@12.1.0: - resolution: {integrity: sha512-ePyRJwprT+POsGue1gdqPYOHojXfDz/OJI18renU0NI2CHeeeMhnquu+MZJaiBGyBd1ezIgWZWiQ4DhLFOaCUg==} + /@rometools/cli-darwin-x64@12.1.3: + resolution: {integrity: sha512-k8MbWna8q4LRlb005N2X+JS1UQ+s3ZLBBvwk4fP8TBxlAJXUz17jLLu/Fi+7DTTEmMhM84TWj4FDKW+rNar28g==} cpu: [x64] os: [darwin] requiresBuild: true dev: true optional: true - /@rometools/cli-linux-arm64@12.1.0: - resolution: {integrity: sha512-j/pF6pF+lKihw7CIvwQZqQG9gpaUy2FyO9+nu5dvCChblXNEaA2zMnpLnDlCue0B7xY0jZkk1EZdF49ztEZZFA==} + /@rometools/cli-linux-arm64@12.1.3: + resolution: {integrity: sha512-X/uLhJ2/FNA3nu5TiyeNPqiD3OZoFfNfRvw6a3ut0jEREPvEn72NI7WPijH/gxSz55znfQ7UQ6iM4DZumUknJg==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /@rometools/cli-linux-x64@12.1.0: - resolution: {integrity: sha512-zh6tW0JumP/rQkFDdsg6FEDBv0ZPvPLFirfHqzJA8VDNRBHkOTq27oVCbTJIGyUCGm9VvIzG8sJFVKkYpxkl2g==} + /@rometools/cli-linux-x64@12.1.3: + resolution: {integrity: sha512-csP17q1eWiUXx9z6Jr/JJPibkplyKIwiWPYNzvPCGE8pHlKhwZj3YHRuu7Dm/4EOqx0XFIuqqWZUYm9bkIC8xg==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /@rometools/cli-win32-arm64@12.1.0: - resolution: {integrity: sha512-ggug6gUWFnO2QK0KC5XsYRhuZ22jeLksebdHMnkaHzZBtxXnKMC7yXnYwU/Lg2fGAwmMsluIbaqFYgen4+c8RA==} + /@rometools/cli-win32-arm64@12.1.3: + resolution: {integrity: sha512-RymHWeod57EBOJY4P636CgUwYA6BQdkQjh56XKk4pLEHO6X1bFyMet2XL7KlHw5qOTalzuzf5jJqUs+vf3jdXQ==} cpu: [arm64] os: [win32] requiresBuild: true dev: true optional: true - /@rometools/cli-win32-x64@12.1.0: - resolution: {integrity: sha512-TnurdnlzBwcvRSsgmNz9Gorffnjr5cS8TdHo9w+3pT4GdSsrLZqvd1IV2tj4uRKkNn6OJtSqW3tZ5SiTrf0LuA==} + /@rometools/cli-win32-x64@12.1.3: + resolution: {integrity: sha512-yHSKYidqJMV9nADqg78GYA+cZ0hS1twANAjiFibQdXj9aGzD+s/IzIFEIi/U/OBLvWYg/SCw0QVozi2vTlKFDQ==} cpu: [x64] os: [win32] requiresBuild: true @@ -2719,9 +2718,9 @@ packages: resolution: {integrity: sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==} dev: false - /@sindresorhus/is@0.14.0: - resolution: {integrity: sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==} - engines: {node: '>=6'} + /@sindresorhus/is@5.6.0: + resolution: {integrity: sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==} + engines: {node: '>=14.16'} dev: false /@slorber/static-site-generator-webpack-plugin@4.0.7: @@ -2886,14 +2885,14 @@ packages: - supports-color dev: false - /@szmarczak/http-timer@1.1.2: - resolution: {integrity: sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==} - engines: {node: '>=6'} + /@szmarczak/http-timer@5.0.1: + resolution: {integrity: sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==} + engines: {node: '>=14.16'} dependencies: - defer-to-connect: 1.1.3 + defer-to-connect: 2.0.1 dev: false - /@tailwindcss/typography@0.5.9(tailwindcss@3.3.2): + /@tailwindcss/typography@0.5.9(tailwindcss@3.3.3): resolution: {integrity: sha512-t8Sg3DyynFysV9f4JDOVISGsjazNb48AeIYQwcL+Bsq5uf4RYL75C1giZ43KISjeDGBaTN3Kxh7Xj/vRSMJUUg==} peerDependencies: tailwindcss: '>=3.0.0 || insiders' @@ -2902,7 +2901,7 @@ packages: lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 postcss-selector-parser: 6.0.10 - tailwindcss: 3.3.2 + tailwindcss: 3.3.3 dev: true /@trysound/sax@0.2.0: @@ -2910,34 +2909,46 @@ packages: engines: {node: '>=10.13.0'} dev: false - /@tsconfig/docusaurus@1.0.7: - resolution: {integrity: sha512-ffTXxGIP/IRMCjuzHd6M4/HdIrw1bMfC7Bv8hMkTadnePkpe0lG0oDSdbRpSDZb2rQMAgpbWiR10BvxvNYwYrg==} + /@tsconfig/docusaurus@2.0.0: + resolution: {integrity: sha512-X5wptT7pXA/46/IRFTW76oR5GNjoy9qjNM/1JGhFV4QAsmLh3YUpJJA+Vpx7Ds6eEBxSxz1QrgoNEBy6rLVs8w==} dev: true + /@types/acorn@4.0.6: + resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} + dependencies: + '@types/estree': 1.0.1 + dev: false + /@types/body-parser@1.19.2: resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==} dependencies: '@types/connect': 3.4.35 - '@types/node': 20.1.7 + '@types/node': 20.4.8 dev: false /@types/bonjour@3.5.10: resolution: {integrity: sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==} dependencies: - '@types/node': 20.1.7 + '@types/node': 20.4.8 dev: false /@types/connect-history-api-fallback@1.5.0: resolution: {integrity: sha512-4x5FkPpLipqwthjPsF7ZRbOv3uoLUFkTA9G9v583qi4pACvq0uTELrB8OLUzPWUI4IJIyvM85vzkV1nyiI2Lig==} dependencies: '@types/express-serve-static-core': 4.17.35 - '@types/node': 20.1.7 + '@types/node': 20.4.8 dev: false /@types/connect@3.4.35: resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==} dependencies: - '@types/node': 20.1.7 + '@types/node': 20.4.8 + dev: false + + /@types/debug@4.1.8: + resolution: {integrity: sha512-/vPO1EPOs306Cvhwv7KfVfYvOJqA/S/AXjaHQiJboCZzcNDb+TIJFN9/2C9DZ//ijSKWioNyUxD792QmDJ+HKQ==} + dependencies: + '@types/ms': 0.7.31 dev: false /@types/eslint-scope@3.7.4: @@ -2952,13 +2963,19 @@ packages: '@types/estree': 1.0.1 '@types/json-schema': 7.0.11 + /@types/estree-jsx@1.0.0: + resolution: {integrity: sha512-3qvGd0z8F2ENTGr/GG1yViqfiKmRfrXVx5sJyHGFu3z7m5g5utCQtGp/g29JnjflhtQJBv1WDQukHiT58xPcYQ==} + dependencies: + '@types/estree': 1.0.1 + dev: false + /@types/estree@1.0.1: resolution: {integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==} /@types/express-serve-static-core@4.17.35: resolution: {integrity: sha512-wALWQwrgiB2AWTT91CB62b6Yt0sNHpznUXeZEcnPU3DRdlDIz74x8Qg1UUYKSVFi+va5vKOLYRBI1bRKiLLKIg==} dependencies: - '@types/node': 20.1.7 + '@types/node': 20.4.8 '@types/qs': 6.9.7 '@types/range-parser': 1.2.4 '@types/send': 0.17.1 @@ -2973,6 +2990,10 @@ packages: '@types/serve-static': 1.15.1 dev: false + /@types/gtag.js@0.0.12: + resolution: {integrity: sha512-YQV9bUsemkzG81Ea295/nF/5GijnD2Af7QhEofh7xu+kvCN6RdodgNwwGWXB5GMI3NoyvQo0odNctoH/qLMIpg==} + dev: false + /@types/hast@2.3.4: resolution: {integrity: sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==} dependencies: @@ -2986,10 +3007,14 @@ packages: resolution: {integrity: sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==} dev: false + /@types/http-cache-semantics@4.0.1: + resolution: {integrity: sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==} + dev: false + /@types/http-proxy@1.17.11: resolution: {integrity: sha512-HC8G7c1WmaF2ekqpnFq626xd3Zz0uvaqFmBJNRZCGEZCXkvSdJoNFn/8Ygbd9fKNQj8UzLdCETaI0UWPAjK7IA==} dependencies: - '@types/node': 20.1.7 + '@types/node': 20.4.8 dev: false /@types/istanbul-lib-coverage@2.0.4: @@ -3011,18 +3036,16 @@ packages: /@types/json-schema@7.0.11: resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==} - /@types/keyv@3.1.4: - resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} - dependencies: - '@types/node': 20.1.7 - dev: false - /@types/mdast@3.0.11: resolution: {integrity: sha512-Y/uImid8aAwrEA24/1tcRZwpxX3pIFTSilcNDKSPn+Y2iDywSEachzRuvgAYYLR3wpGXAsMbv5lvKLDZLeYPAw==} dependencies: '@types/unist': 2.0.6 dev: false + /@types/mdx@2.0.5: + resolution: {integrity: sha512-76CqzuD6Q7LC+AtbPqrvD9AqsN0k8bsYo2bM2J8pmNldP1aIPAbzUQ7QbobyXL4eLr1wK5x8FZFe8eF/ubRuBg==} + dev: false + /@types/mime@1.3.2: resolution: {integrity: sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==} dev: false @@ -3031,19 +3054,23 @@ packages: resolution: {integrity: sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==} dev: false + /@types/ms@0.7.31: + resolution: {integrity: sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==} + dev: false + /@types/node@17.0.45: resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} dev: false - /@types/node@20.1.7: - resolution: {integrity: sha512-WCuw/o4GSwDGMoonES8rcvwsig77dGCMbZDrZr2x4ZZiNW4P/gcoZXe/0twgtobcTkmg9TuKflxYL/DuwDyJzg==} + /@types/node@20.4.8: + resolution: {integrity: sha512-0mHckf6D2DiIAzh8fM8f3HQCvMKDpK94YQ0DSVkfWTG9BZleYIWudw9cJxX8oCk9bM+vAkDyujDV6dmKHbvQpg==} /@types/parse-json@4.0.0: resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==} dev: false - /@types/parse5@5.0.3: - resolution: {integrity: sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==} + /@types/parse5@6.0.3: + resolution: {integrity: sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==} dev: false /@types/prop-types@15.7.5: @@ -3057,45 +3084,39 @@ packages: resolution: {integrity: sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==} dev: false - /@types/react-dom@18.2.4: - resolution: {integrity: sha512-G2mHoTMTL4yoydITgOGwWdWMVd8sNgyEP85xVmMKAPUBwQWm9wBPQUmvbeF4V3WBY1P7mmL4BkjQ0SqUpf1snw==} + /@types/react-dom@18.2.7: + resolution: {integrity: sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA==} dependencies: - '@types/react': 18.2.6 + '@types/react': 18.2.18 dev: true /@types/react-router-config@5.0.7: resolution: {integrity: sha512-pFFVXUIydHlcJP6wJm7sDii5mD/bCmmAY0wQzq+M+uX7bqS95AQqHZWP1iNMKrWVQSuHIzj5qi9BvrtLX2/T4w==} dependencies: '@types/history': 4.7.11 - '@types/react': 18.2.6 + '@types/react': 18.2.18 '@types/react-router': 5.1.20 /@types/react-router-dom@5.3.3: resolution: {integrity: sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==} dependencies: '@types/history': 4.7.11 - '@types/react': 18.2.6 + '@types/react': 18.2.18 '@types/react-router': 5.1.20 /@types/react-router@5.1.20: resolution: {integrity: sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==} dependencies: '@types/history': 4.7.11 - '@types/react': 18.2.6 + '@types/react': 18.2.18 - /@types/react@18.2.6: - resolution: {integrity: sha512-wRZClXn//zxCFW+ye/D2qY65UsYP1Fpex2YXorHc8awoNamkMZSvBxwxdYVInsHOZZd2Ppq8isnSzJL5Mpf8OA==} + /@types/react@18.2.18: + resolution: {integrity: sha512-da4NTSeBv/P34xoZPhtcLkmZuJ+oYaCxHmyHzwaDQo9RQPBeXV+06gEk2FpqEcsX9XrnNLvRpVh6bdavDSjtiQ==} dependencies: '@types/prop-types': 15.7.5 '@types/scheduler': 0.16.3 csstype: 3.1.2 - /@types/responselike@1.0.0: - resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==} - dependencies: - '@types/node': 20.1.7 - dev: false - /@types/retry@0.12.0: resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==} dev: false @@ -3103,7 +3124,7 @@ packages: /@types/sax@1.2.4: resolution: {integrity: sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==} dependencies: - '@types/node': 20.1.7 + '@types/node': 20.4.8 dev: false /@types/scheduler@0.16.3: @@ -3113,7 +3134,7 @@ packages: resolution: {integrity: sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q==} dependencies: '@types/mime': 1.3.2 - '@types/node': 20.1.7 + '@types/node': 20.4.8 dev: false /@types/serve-index@1.9.1: @@ -3126,13 +3147,13 @@ packages: resolution: {integrity: sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==} dependencies: '@types/mime': 3.0.1 - '@types/node': 20.1.7 + '@types/node': 20.4.8 dev: false /@types/sockjs@0.3.33: resolution: {integrity: sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==} dependencies: - '@types/node': 20.1.7 + '@types/node': 20.4.8 dev: false /@types/unist@2.0.6: @@ -3142,7 +3163,7 @@ packages: /@types/ws@8.5.4: resolution: {integrity: sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==} dependencies: - '@types/node': 20.1.7 + '@types/node': 20.4.8 dev: false /@types/yargs-parser@21.0.0: @@ -3267,6 +3288,14 @@ packages: dependencies: acorn: 8.8.2 + /acorn-jsx@5.3.2(acorn@8.8.2): + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + acorn: 8.8.2 + dev: false + /acorn-walk@8.2.0: resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} engines: {node: '>=0.4.0'} @@ -3443,12 +3472,21 @@ packages: resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} dev: false + /astring@1.8.6: + resolution: {integrity: sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==} + hasBin: true + dev: false + + /asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + dev: false + /at-least-node@1.0.0: resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==} engines: {node: '>= 4.0.0'} dev: false - /autoprefixer@10.4.14(postcss@8.4.23): + /autoprefixer@10.4.14(postcss@8.4.27): resolution: {integrity: sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==} engines: {node: ^10 || ^12 || >=14} hasBin: true @@ -3460,55 +3498,38 @@ packages: fraction.js: 4.2.0 normalize-range: 0.1.2 picocolors: 1.0.0 - postcss: 8.4.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /axios@0.25.0: - resolution: {integrity: sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==} + /axios@0.27.2: + resolution: {integrity: sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==} dependencies: follow-redirects: 1.15.2 + form-data: 4.0.0 transitivePeerDependencies: - debug dev: false - /babel-loader@8.3.0(@babel/core@7.21.8)(webpack@5.82.1): - resolution: {integrity: sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==} - engines: {node: '>= 8.9'} + /babel-loader@9.1.3(@babel/core@7.21.8)(webpack@5.82.1): + resolution: {integrity: sha512-xG3ST4DglodGf8qSwv0MdeWLhrDsw/32QMdTO5T1ZIp9gQur0HkCyFs7Awskr10JKXFXwpAhiCuYX5oGXnRGbw==} + engines: {node: '>= 14.15.0'} peerDependencies: - '@babel/core': ^7.0.0 - webpack: '>=2' + '@babel/core': ^7.12.0 + webpack: '>=5' dependencies: '@babel/core': 7.21.8 - find-cache-dir: 3.3.2 - loader-utils: 2.0.4 - make-dir: 3.1.0 - schema-utils: 2.7.1 + find-cache-dir: 4.0.0 + schema-utils: 4.0.1 webpack: 5.82.1 dev: false - /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 - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.10.4 - '@mdx-js/util': 1.6.22 - dev: false - /babel-plugin-dynamic-import-node@2.3.3: resolution: {integrity: sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==} dependencies: object.assign: 4.1.4 dev: false - /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.3(@babel/core@7.21.8): resolution: {integrity: sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==} peerDependencies: @@ -3545,8 +3566,8 @@ packages: - supports-color dev: false - /bail@1.0.5: - resolution: {integrity: sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==} + /bail@2.0.2: + resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} dev: false /balanced-match@1.0.2: @@ -3605,20 +3626,6 @@ packages: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} dev: false - /boxen@5.1.2: - resolution: {integrity: sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==} - engines: {node: '>=10'} - dependencies: - ansi-align: 3.0.1 - camelcase: 6.3.0 - chalk: 4.1.2 - cli-boxes: 2.2.1 - string-width: 4.2.3 - type-fest: 0.20.2 - widest-line: 3.1.0 - wrap-ansi: 7.0.0 - dev: false - /boxen@6.2.1: resolution: {integrity: sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -3633,6 +3640,20 @@ packages: wrap-ansi: 8.1.0 dev: false + /boxen@7.1.1: + resolution: {integrity: sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==} + engines: {node: '>=14.16'} + dependencies: + ansi-align: 3.0.1 + camelcase: 7.0.1 + chalk: 5.3.0 + cli-boxes: 3.0.0 + string-width: 5.1.2 + type-fest: 2.19.0 + widest-line: 4.0.1 + wrap-ansi: 8.1.0 + dev: false + /brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} dependencies: @@ -3668,17 +3689,22 @@ packages: engines: {node: '>= 0.8'} dev: false - /cacheable-request@6.1.0: - resolution: {integrity: sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==} - engines: {node: '>=8'} + /cacheable-lookup@7.0.0: + resolution: {integrity: sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==} + engines: {node: '>=14.16'} + dev: false + + /cacheable-request@10.2.13: + resolution: {integrity: sha512-3SD4rrMu1msNGEtNSt8Od6enwdo//U9s4ykmXfA2TD58kcLkCobtCDiby7kNyj7a/Q7lz/mAesAFI54rTdnvBA==} + engines: {node: '>=14.16'} dependencies: - clone-response: 1.0.3 - get-stream: 5.2.0 + '@types/http-cache-semantics': 4.0.1 + get-stream: 6.0.1 http-cache-semantics: 4.1.1 - keyv: 3.1.0 - lowercase-keys: 2.0.0 - normalize-url: 4.5.1 - responselike: 1.0.2 + keyv: 4.5.3 + mimic-response: 4.0.0 + normalize-url: 8.0.0 + responselike: 3.0.0 dev: false /call-bind@1.0.2: @@ -3709,6 +3735,11 @@ packages: engines: {node: '>=10'} dev: false + /camelcase@7.0.1: + resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==} + engines: {node: '>=14.16'} + dev: false + /caniuse-api@3.0.0: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} dependencies: @@ -3725,8 +3756,8 @@ packages: resolution: {integrity: sha512-83564Z3yWGqXsh2vaH/mhXfEM0wX+NlBCm1jYHOb97TrTWJEmPTccZgeLTPBUUb0PNVo+oomb7wkimZBIERClA==} dev: false - /ccount@1.1.0: - resolution: {integrity: sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==} + /ccount@2.0.1: + resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} dev: false /chalk@2.4.2: @@ -3746,16 +3777,25 @@ packages: supports-color: 7.2.0 dev: false - /character-entities-legacy@1.1.4: - resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==} + /chalk@5.3.0: + resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} dev: false - /character-entities@1.2.4: - resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==} + /character-entities-html4@2.1.0: + resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} dev: false - /character-reference-invalid@1.1.4: - resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==} + /character-entities-legacy@3.0.0: + resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} + dev: false + + /character-entities@2.0.2: + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} + dev: false + + /character-reference-invalid@2.0.1: + resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} dev: false /cheerio-select@2.1.0: @@ -3800,10 +3840,6 @@ packages: resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==} engines: {node: '>=6.0'} - /ci-info@2.0.0: - resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} - dev: false - /ci-info@3.8.0: resolution: {integrity: sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==} engines: {node: '>=8'} @@ -3825,11 +3861,6 @@ packages: engines: {node: '>=6'} dev: false - /cli-boxes@2.2.1: - resolution: {integrity: sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==} - engines: {node: '>=6'} - dev: false - /cli-boxes@3.0.0: resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} engines: {node: '>=10'} @@ -3856,21 +3887,11 @@ packages: kind-of: 6.0.3 shallow-clone: 3.0.1 - /clone-response@1.0.3: - resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==} - dependencies: - mimic-response: 1.0.1 - dev: false - /clsx@1.2.1: resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} engines: {node: '>=6'} dev: false - /collapse-white-space@1.0.6: - resolution: {integrity: sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==} - dev: false - /color-convert@1.9.3: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} dependencies: @@ -3905,8 +3926,20 @@ packages: engines: {node: '>=10'} dev: false - /comma-separated-tokens@1.0.8: - resolution: {integrity: sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==} + /combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + dependencies: + delayed-stream: 1.0.0 + dev: false + + /comma-separated-tokens@2.0.3: + resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} + dev: false + + /commander@10.0.1: + resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} + engines: {node: '>=14'} dev: false /commander@2.20.3: @@ -3930,8 +3963,8 @@ packages: engines: {node: '>= 12'} dev: false - /commondir@1.0.1: - resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} + /common-path-prefix@3.0.0: + resolution: {integrity: sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==} dev: false /compressible@2.0.18: @@ -3959,16 +3992,22 @@ packages: /concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - /configstore@5.0.1: - resolution: {integrity: sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==} - engines: {node: '>=8'} + /config-chain@1.1.13: + resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==} dependencies: - dot-prop: 5.3.0 + ini: 1.3.8 + proto-list: 1.2.4 + dev: false + + /configstore@6.0.0: + resolution: {integrity: sha512-cD31W1v3GqUlQvbBCGcXmd2Nj9SvLDOP1oQ0YFuLETufzSPaKp11rYBsSOm7rCsW3OnIRAFM3OxRhceaXNYHkA==} + engines: {node: '>=12'} + dependencies: + dot-prop: 6.0.1 graceful-fs: 4.2.11 - make-dir: 3.1.0 - unique-string: 2.0.0 + unique-string: 3.0.0 write-file-atomic: 3.0.3 - xdg-basedir: 4.0.0 + xdg-basedir: 5.1.0 dev: false /connect-history-api-fallback@2.0.0: @@ -4021,7 +4060,7 @@ packages: peerDependencies: webpack: ^5.1.0 dependencies: - fast-glob: 3.2.12 + fast-glob: 3.3.1 glob-parent: 6.0.2 globby: 13.1.4 normalize-path: 3.0.0 @@ -4121,18 +4160,20 @@ packages: which: 2.0.2 dev: false - /crypto-random-string@2.0.0: - resolution: {integrity: sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==} - engines: {node: '>=8'} + /crypto-random-string@4.0.0: + resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==} + engines: {node: '>=12'} + dependencies: + type-fest: 1.4.0 dev: false - /css-declaration-sorter@6.4.0(postcss@8.4.23): + /css-declaration-sorter@6.4.0(postcss@8.4.27): resolution: {integrity: sha512-jDfsatwWMWN0MODAFuHszfjphEXfNw9JUAhmY4pLu3TyTU+ohUpsbVtbU+1MZn4a47D9kqh03i4eyOm+74+zew==} engines: {node: ^10 || ^12 || >=14} peerDependencies: postcss: ^8.0.9 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 dev: false /css-loader@6.7.3(webpack@5.82.1): @@ -4141,12 +4182,12 @@ packages: peerDependencies: webpack: ^5.0.0 dependencies: - icss-utils: 5.1.0(postcss@8.4.23) - postcss: 8.4.23 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.23) - postcss-modules-local-by-default: 4.0.0(postcss@8.4.23) - postcss-modules-scope: 3.0.0(postcss@8.4.23) - postcss-modules-values: 4.0.0(postcss@8.4.23) + icss-utils: 5.1.0(postcss@8.4.27) + postcss: 8.4.27 + postcss-modules-extract-imports: 3.0.0(postcss@8.4.27) + postcss-modules-local-by-default: 4.0.0(postcss@8.4.27) + postcss-modules-scope: 3.0.0(postcss@8.4.27) + postcss-modules-values: 4.0.0(postcss@8.4.27) postcss-value-parser: 4.2.0 semver: 7.5.1 webpack: 5.82.1 @@ -4178,9 +4219,9 @@ packages: optional: true dependencies: clean-css: 5.3.2 - cssnano: 5.1.15(postcss@8.4.23) + cssnano: 5.1.15(postcss@8.4.27) jest-worker: 29.5.0 - postcss: 8.4.23 + postcss: 8.4.27 schema-utils: 4.0.1 serialize-javascript: 6.0.1 source-map: 0.6.1 @@ -4225,77 +4266,77 @@ packages: engines: {node: '>=4'} hasBin: true - /cssnano-preset-advanced@5.3.10(postcss@8.4.23): + /cssnano-preset-advanced@5.3.10(postcss@8.4.27): resolution: {integrity: sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - autoprefixer: 10.4.14(postcss@8.4.23) - cssnano-preset-default: 5.2.14(postcss@8.4.23) - postcss: 8.4.23 - postcss-discard-unused: 5.1.0(postcss@8.4.23) - postcss-merge-idents: 5.1.1(postcss@8.4.23) - postcss-reduce-idents: 5.2.0(postcss@8.4.23) - postcss-zindex: 5.1.0(postcss@8.4.23) + autoprefixer: 10.4.14(postcss@8.4.27) + cssnano-preset-default: 5.2.14(postcss@8.4.27) + postcss: 8.4.27 + postcss-discard-unused: 5.1.0(postcss@8.4.27) + postcss-merge-idents: 5.1.1(postcss@8.4.27) + postcss-reduce-idents: 5.2.0(postcss@8.4.27) + postcss-zindex: 5.1.0(postcss@8.4.27) dev: false - /cssnano-preset-default@5.2.14(postcss@8.4.23): + /cssnano-preset-default@5.2.14(postcss@8.4.27): resolution: {integrity: sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - css-declaration-sorter: 6.4.0(postcss@8.4.23) - cssnano-utils: 3.1.0(postcss@8.4.23) - postcss: 8.4.23 - postcss-calc: 8.2.4(postcss@8.4.23) - postcss-colormin: 5.3.1(postcss@8.4.23) - postcss-convert-values: 5.1.3(postcss@8.4.23) - postcss-discard-comments: 5.1.2(postcss@8.4.23) - postcss-discard-duplicates: 5.1.0(postcss@8.4.23) - postcss-discard-empty: 5.1.1(postcss@8.4.23) - postcss-discard-overridden: 5.1.0(postcss@8.4.23) - postcss-merge-longhand: 5.1.7(postcss@8.4.23) - postcss-merge-rules: 5.1.4(postcss@8.4.23) - postcss-minify-font-values: 5.1.0(postcss@8.4.23) - postcss-minify-gradients: 5.1.1(postcss@8.4.23) - postcss-minify-params: 5.1.4(postcss@8.4.23) - postcss-minify-selectors: 5.2.1(postcss@8.4.23) - postcss-normalize-charset: 5.1.0(postcss@8.4.23) - postcss-normalize-display-values: 5.1.0(postcss@8.4.23) - postcss-normalize-positions: 5.1.1(postcss@8.4.23) - postcss-normalize-repeat-style: 5.1.1(postcss@8.4.23) - postcss-normalize-string: 5.1.0(postcss@8.4.23) - postcss-normalize-timing-functions: 5.1.0(postcss@8.4.23) - postcss-normalize-unicode: 5.1.1(postcss@8.4.23) - postcss-normalize-url: 5.1.0(postcss@8.4.23) - postcss-normalize-whitespace: 5.1.1(postcss@8.4.23) - postcss-ordered-values: 5.1.3(postcss@8.4.23) - postcss-reduce-initial: 5.1.2(postcss@8.4.23) - postcss-reduce-transforms: 5.1.0(postcss@8.4.23) - postcss-svgo: 5.1.0(postcss@8.4.23) - postcss-unique-selectors: 5.1.1(postcss@8.4.23) + css-declaration-sorter: 6.4.0(postcss@8.4.27) + cssnano-utils: 3.1.0(postcss@8.4.27) + postcss: 8.4.27 + postcss-calc: 8.2.4(postcss@8.4.27) + postcss-colormin: 5.3.1(postcss@8.4.27) + postcss-convert-values: 5.1.3(postcss@8.4.27) + postcss-discard-comments: 5.1.2(postcss@8.4.27) + postcss-discard-duplicates: 5.1.0(postcss@8.4.27) + postcss-discard-empty: 5.1.1(postcss@8.4.27) + postcss-discard-overridden: 5.1.0(postcss@8.4.27) + postcss-merge-longhand: 5.1.7(postcss@8.4.27) + postcss-merge-rules: 5.1.4(postcss@8.4.27) + postcss-minify-font-values: 5.1.0(postcss@8.4.27) + postcss-minify-gradients: 5.1.1(postcss@8.4.27) + postcss-minify-params: 5.1.4(postcss@8.4.27) + postcss-minify-selectors: 5.2.1(postcss@8.4.27) + postcss-normalize-charset: 5.1.0(postcss@8.4.27) + postcss-normalize-display-values: 5.1.0(postcss@8.4.27) + postcss-normalize-positions: 5.1.1(postcss@8.4.27) + postcss-normalize-repeat-style: 5.1.1(postcss@8.4.27) + postcss-normalize-string: 5.1.0(postcss@8.4.27) + postcss-normalize-timing-functions: 5.1.0(postcss@8.4.27) + postcss-normalize-unicode: 5.1.1(postcss@8.4.27) + postcss-normalize-url: 5.1.0(postcss@8.4.27) + postcss-normalize-whitespace: 5.1.1(postcss@8.4.27) + postcss-ordered-values: 5.1.3(postcss@8.4.27) + postcss-reduce-initial: 5.1.2(postcss@8.4.27) + postcss-reduce-transforms: 5.1.0(postcss@8.4.27) + postcss-svgo: 5.1.0(postcss@8.4.27) + postcss-unique-selectors: 5.1.1(postcss@8.4.27) dev: false - /cssnano-utils@3.1.0(postcss@8.4.23): + /cssnano-utils@3.1.0(postcss@8.4.27): resolution: {integrity: sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 dev: false - /cssnano@5.1.15(postcss@8.4.23): + /cssnano@5.1.15(postcss@8.4.27): 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.14(postcss@8.4.23) + cssnano-preset-default: 5.2.14(postcss@8.4.27) lilconfig: 2.1.0 - postcss: 8.4.23 + postcss: 8.4.27 yaml: 1.10.2 dev: false @@ -4617,11 +4658,17 @@ packages: ms: 2.1.2 dev: false - /decompress-response@3.3.0: - resolution: {integrity: sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==} - engines: {node: '>=4'} + /decode-named-character-reference@1.0.2: + resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} dependencies: - mimic-response: 1.0.1 + character-entities: 2.0.2 + dev: false + + /decompress-response@6.0.0: + resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} + engines: {node: '>=10'} + dependencies: + mimic-response: 3.1.0 dev: false /deep-extend@0.6.0: @@ -4641,8 +4688,9 @@ packages: execa: 5.1.1 dev: false - /defer-to-connect@1.1.3: - resolution: {integrity: sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==} + /defer-to-connect@2.0.1: + resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==} + engines: {node: '>=10'} dev: false /define-lazy-prop@2.0.0: @@ -4678,6 +4726,11 @@ packages: robust-predicates: 3.0.1 dev: false + /delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + dev: false + /depd@1.1.2: resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==} engines: {node: '>= 0.6'} @@ -4688,17 +4741,16 @@ packages: engines: {node: '>= 0.8'} dev: false + /dequal@2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} + dev: false + /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: resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==} dev: false @@ -4727,6 +4779,11 @@ packages: /didyoumean@1.2.2: resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} + /diff@5.1.0: + resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==} + engines: {node: '>=0.3.1'} + dev: false + /dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -4815,22 +4872,18 @@ packages: tslib: 2.5.0 dev: false - /dot-prop@5.3.0: - resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==} - engines: {node: '>=8'} + /dot-prop@6.0.1: + resolution: {integrity: sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==} + engines: {node: '>=10'} dependencies: is-obj: 2.0.0 dev: false - /dotenv@16.0.3: - resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==} + /dotenv@16.3.1: + resolution: {integrity: sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==} engines: {node: '>=12'} dev: false - /duplexer3@0.1.5: - resolution: {integrity: sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==} - dev: false - /duplexer@0.1.2: resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==} dev: false @@ -4872,12 +4925,6 @@ packages: engines: {node: '>= 0.8'} dev: false - /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.14.0: resolution: {integrity: sha512-+DCows0XNwLDcUhbFJPdlQEVnT2zXlCv7hPxemTz86/O+B/hCQ+mb7ydkPKiflpVraqLPCAfu7lDy+hBXueojw==} engines: {node: '>=10.13.0'} @@ -4907,9 +4954,9 @@ packages: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} - /escape-goat@2.1.1: - resolution: {integrity: sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==} - engines: {node: '>=8'} + /escape-goat@4.0.0: + resolution: {integrity: sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg==} + engines: {node: '>=12'} dev: false /escape-html@1.0.3: @@ -4926,6 +4973,11 @@ packages: engines: {node: '>=10'} dev: false + /escape-string-regexp@5.0.0: + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} + engines: {node: '>=12'} + dev: false + /eslint-scope@5.1.1: resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} engines: {node: '>=8.0.0'} @@ -4953,6 +5005,53 @@ packages: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} + /estree-util-attach-comments@2.1.1: + resolution: {integrity: sha512-+5Ba/xGGS6mnwFbXIuQiDPTbuTxuMCooq3arVv7gPZtYpjp+VXH/NkHAP35OOefPhNG/UGqU3vt/LTABwcHX0w==} + dependencies: + '@types/estree': 1.0.1 + dev: false + + /estree-util-build-jsx@2.2.2: + resolution: {integrity: sha512-m56vOXcOBuaF+Igpb9OPAy7f9w9OIkb5yhjsZuaPm7HoGi4oTOQi0h2+yZ+AtKklYFZ+rPC4n0wYCJCEU1ONqg==} + dependencies: + '@types/estree-jsx': 1.0.0 + estree-util-is-identifier-name: 2.1.0 + estree-walker: 3.0.3 + dev: false + + /estree-util-is-identifier-name@2.1.0: + resolution: {integrity: sha512-bEN9VHRyXAUOjkKVQVvArFym08BTWB0aJPppZZr0UNyAqWsLaVfAqP7hbaTJjzHifmB5ebnR8Wm7r7yGN/HonQ==} + dev: false + + /estree-util-to-js@1.2.0: + resolution: {integrity: sha512-IzU74r1PK5IMMGZXUVZbmiu4A1uhiPgW5hm1GjcOfr4ZzHaMPpLNJjR7HjXiIOzi25nZDrgFTobHTkV5Q6ITjA==} + dependencies: + '@types/estree-jsx': 1.0.0 + astring: 1.8.6 + source-map: 0.7.4 + dev: false + + /estree-util-value-to-estree@2.1.0: + resolution: {integrity: sha512-fcAWmZilY1+tEt7GSeLZoHDvp2NNgLkJznBRYkEpaholas41d+Y0zd/Acch7+qzZdxLtxLi+m04KjHFJSoMa6A==} + engines: {node: '>=14.0.0'} + dependencies: + '@types/estree': 1.0.1 + is-plain-obj: 4.1.0 + dev: false + + /estree-util-visit@1.2.1: + resolution: {integrity: sha512-xbgqcrkIVbIG+lI/gzbvd9SGTJL4zqJKBFttUl5pP27KhAjtMKbX/mQXJ7qgyXpMgVy/zvpm0xoQQaGL8OloOw==} + dependencies: + '@types/estree-jsx': 1.0.0 + '@types/unist': 2.0.6 + dev: false + + /estree-walker@3.0.3: + resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} + dependencies: + '@types/estree': 1.0.1 + dev: false + /esutils@2.0.3: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} @@ -4972,7 +5071,7 @@ packages: resolution: {integrity: sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==} engines: {node: '>= 0.8'} dependencies: - '@types/node': 20.1.7 + '@types/node': 20.4.8 require-like: 0.1.2 dev: false @@ -5052,8 +5151,8 @@ packages: /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - /fast-glob@3.2.12: - resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==} + /fast-glob@3.3.1: + resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} engines: {node: '>=8.6.0'} dependencies: '@nodelib/fs.stat': 2.0.5 @@ -5153,13 +5252,12 @@ packages: - supports-color dev: false - /find-cache-dir@3.3.2: - resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==} - engines: {node: '>=8'} + /find-cache-dir@4.0.0: + resolution: {integrity: sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==} + engines: {node: '>=14.16'} dependencies: - commondir: 1.0.1 - make-dir: 3.1.0 - pkg-dir: 4.2.0 + common-path-prefix: 3.0.0 + pkg-dir: 7.0.0 dev: false /find-up@3.0.0: @@ -5169,14 +5267,6 @@ packages: locate-path: 3.0.0 dev: false - /find-up@4.1.0: - resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} - engines: {node: '>=8'} - dependencies: - locate-path: 5.0.0 - path-exists: 4.0.0 - dev: false - /find-up@5.0.0: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} @@ -5185,14 +5275,22 @@ packages: path-exists: 4.0.0 dev: false - /flux@4.0.4(react@17.0.2): + /find-up@6.3.0: + resolution: {integrity: sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + locate-path: 7.2.0 + path-exists: 5.0.0 + dev: false + + /flux@4.0.4(react@18.2.0): 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 - react: 17.0.2 + react: 18.2.0 transitivePeerDependencies: - encoding dev: false @@ -5207,7 +5305,7 @@ packages: optional: true dev: false - /fork-ts-checker-webpack-plugin@6.5.3(typescript@5.0.4)(webpack@5.82.1): + /fork-ts-checker-webpack-plugin@6.5.3(typescript@5.1.6)(webpack@5.82.1): resolution: {integrity: sha512-SbH/l9ikmMWycd5puHJKTkZJKddF4iRLyW3DeZ08HTI7NGyLS38MXd/KGgeWumQO7YNQbW2u/NtPT2YowbPaGQ==} engines: {node: '>=10', yarn: '>=1.0.0'} peerDependencies: @@ -5234,10 +5332,24 @@ packages: schema-utils: 2.7.0 semver: 7.5.1 tapable: 1.1.3 - typescript: 5.0.4 + typescript: 5.1.6 webpack: 5.82.1 dev: false + /form-data-encoder@2.1.4: + resolution: {integrity: sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw==} + engines: {node: '>= 14.17'} + dev: false + + /form-data@4.0.0: + resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} + engines: {node: '>= 6'} + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + mime-types: 2.1.35 + dev: false + /forwarded@0.2.0: resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} engines: {node: '>= 0.6'} @@ -5247,7 +5359,7 @@ packages: resolution: {integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==} dev: false - /framer-motion@6.5.1(react-dom@17.0.2)(react@17.0.2): + /framer-motion@6.5.1(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-o1BGqqposwi7cgDrtg0dNONhkmPsUFDaLcKXigzuTFC5x58mE8iyTazxSudFzmT6MEyJKfjjU8ItoMe3W+3fiw==} peerDependencies: react: '>=16.8 || ^17.0.0 || ^18.0.0' @@ -5257,8 +5369,8 @@ packages: framesync: 6.0.1 hey-listen: 1.0.8 popmotion: 11.0.3 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) style-value-types: 5.0.0 tslib: 2.5.0 optionalDependencies: @@ -5276,9 +5388,9 @@ packages: engines: {node: '>= 0.6'} dev: false - /fs-extra@10.1.0: - resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} - engines: {node: '>=12'} + /fs-extra@11.1.1: + resolution: {integrity: sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==} + engines: {node: '>=14.14'} dependencies: graceful-fs: 4.2.11 jsonfile: 6.1.0 @@ -5330,20 +5442,6 @@ packages: resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==} dev: false - /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: - resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} - engines: {node: '>=8'} - dependencies: - pump: 3.0.0 - dev: false - /get-stream@6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} @@ -5423,7 +5521,7 @@ packages: dependencies: array-union: 2.1.0 dir-glob: 3.0.1 - fast-glob: 3.2.12 + fast-glob: 3.3.1 ignore: 5.2.4 merge2: 1.4.1 slash: 3.0.0 @@ -5434,29 +5532,31 @@ packages: engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: dir-glob: 3.0.1 - fast-glob: 3.2.12 + fast-glob: 3.3.1 ignore: 5.2.4 merge2: 1.4.1 slash: 4.0.0 dev: false - /got@9.6.0: - resolution: {integrity: sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==} - engines: {node: '>=8.6'} + /got@12.6.1: + resolution: {integrity: sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ==} + engines: {node: '>=14.16'} dependencies: - '@sindresorhus/is': 0.14.0 - '@szmarczak/http-timer': 1.1.2 - '@types/keyv': 3.1.4 - '@types/responselike': 1.0.0 - cacheable-request: 6.1.0 - decompress-response: 3.3.0 - duplexer3: 0.1.5 - get-stream: 4.1.0 - lowercase-keys: 1.0.1 - mimic-response: 1.0.1 - p-cancelable: 1.1.0 - to-readable-stream: 1.0.0 - url-parse-lax: 3.0.0 + '@sindresorhus/is': 5.6.0 + '@szmarczak/http-timer': 5.0.1 + cacheable-lookup: 7.0.0 + cacheable-request: 10.2.13 + decompress-response: 6.0.0 + form-data-encoder: 2.1.4 + get-stream: 6.0.1 + http2-wrapper: 2.2.0 + lowercase-keys: 3.0.0 + p-cancelable: 3.0.0 + responselike: 3.0.0 + dev: false + + /graceful-fs@4.2.10: + resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} dev: false /graceful-fs@4.2.11: @@ -5508,9 +5608,9 @@ packages: engines: {node: '>= 0.4'} dev: false - /has-yarn@2.1.0: - resolution: {integrity: sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==} - engines: {node: '>=8'} + /has-yarn@3.0.0: + resolution: {integrity: sha512-IrsVwUHhEULx3R8f/aA8AHuEzAorplsab/v8HBzEiIukwq5i/EC+xmOW+HfP1OaDP+2JkgT1yILHN2O3UFIbcA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: false /has@1.0.3: @@ -5519,66 +5619,85 @@ packages: dependencies: function-bind: 1.1.1 - /hast-to-hyperscript@9.0.1: - resolution: {integrity: sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==} + /hast-util-from-parse5@7.1.2: + resolution: {integrity: sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw==} dependencies: + '@types/hast': 2.3.4 '@types/unist': 2.0.6 - comma-separated-tokens: 1.0.8 - property-information: 5.6.0 - space-separated-tokens: 1.1.5 - style-to-object: 0.3.0 - unist-util-is: 4.1.0 - web-namespaces: 1.1.4 + hastscript: 7.2.0 + property-information: 6.2.0 + vfile: 5.3.7 + vfile-location: 4.1.0 + web-namespaces: 2.0.1 dev: false - /hast-util-from-parse5@6.0.1: - resolution: {integrity: sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==} - dependencies: - '@types/parse5': 5.0.3 - hastscript: 6.0.0 - property-information: 5.6.0 - vfile: 4.2.1 - vfile-location: 3.2.0 - web-namespaces: 1.1.4 - dev: false - - /hast-util-parse-selector@2.2.5: - resolution: {integrity: sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==} - dev: false - - /hast-util-raw@6.0.1: - resolution: {integrity: sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==} + /hast-util-parse-selector@3.1.1: + resolution: {integrity: sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==} dependencies: '@types/hast': 2.3.4 - hast-util-from-parse5: 6.0.1 - hast-util-to-parse5: 6.0.0 - html-void-elements: 1.0.5 + dev: false + + /hast-util-raw@7.2.3: + resolution: {integrity: sha512-RujVQfVsOrxzPOPSzZFiwofMArbQke6DJjnFfceiEbFh7S05CbPt0cYN+A5YeD3pso0JQk6O1aHBnx9+Pm2uqg==} + dependencies: + '@types/hast': 2.3.4 + '@types/parse5': 6.0.3 + hast-util-from-parse5: 7.1.2 + hast-util-to-parse5: 7.1.0 + html-void-elements: 2.0.1 parse5: 6.0.1 - unist-util-position: 3.1.0 - vfile: 4.2.1 - web-namespaces: 1.1.4 - xtend: 4.0.2 - zwitch: 1.0.5 + unist-util-position: 4.0.4 + unist-util-visit: 4.1.2 + vfile: 5.3.7 + web-namespaces: 2.0.1 + zwitch: 2.0.4 dev: false - /hast-util-to-parse5@6.0.0: - resolution: {integrity: sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==} + /hast-util-to-estree@2.3.3: + resolution: {integrity: sha512-ihhPIUPxN0v0w6M5+IiAZZrn0LH2uZomeWwhn7uP7avZC6TE7lIiEh2yBMPr5+zi1aUCXq6VoYRgs2Bw9xmycQ==} dependencies: - hast-to-hyperscript: 9.0.1 - property-information: 5.6.0 - web-namespaces: 1.1.4 - xtend: 4.0.2 - zwitch: 1.0.5 + '@types/estree': 1.0.1 + '@types/estree-jsx': 1.0.0 + '@types/hast': 2.3.4 + '@types/unist': 2.0.6 + comma-separated-tokens: 2.0.3 + estree-util-attach-comments: 2.1.1 + estree-util-is-identifier-name: 2.1.0 + hast-util-whitespace: 2.0.1 + mdast-util-mdx-expression: 1.3.2 + mdast-util-mdxjs-esm: 1.3.1 + property-information: 6.2.0 + space-separated-tokens: 2.0.2 + style-to-object: 0.4.2 + unist-util-position: 4.0.4 + zwitch: 2.0.4 + transitivePeerDependencies: + - supports-color dev: false - /hastscript@6.0.0: - resolution: {integrity: sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==} + /hast-util-to-parse5@7.1.0: + resolution: {integrity: sha512-YNRgAJkH2Jky5ySkIqFXTQiaqcAtJyVE+D5lkN6CdtOqrnkLfGYYrEcKuHOJZlp+MwjSwuD3fZuawI+sic/RBw==} dependencies: '@types/hast': 2.3.4 - comma-separated-tokens: 1.0.8 - hast-util-parse-selector: 2.2.5 - property-information: 5.6.0 - space-separated-tokens: 1.1.5 + comma-separated-tokens: 2.0.3 + property-information: 6.2.0 + space-separated-tokens: 2.0.2 + web-namespaces: 2.0.1 + zwitch: 2.0.4 + dev: false + + /hast-util-whitespace@2.0.1: + resolution: {integrity: sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==} + dev: false + + /hastscript@7.2.0: + resolution: {integrity: sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==} + dependencies: + '@types/hast': 2.3.4 + comma-separated-tokens: 2.0.3 + hast-util-parse-selector: 3.1.1 + property-information: 6.2.0 + space-separated-tokens: 2.0.2 dev: false /he@1.2.0: @@ -5638,13 +5757,27 @@ packages: terser: 5.17.4 dev: false + /html-minifier-terser@7.2.0: + resolution: {integrity: sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA==} + engines: {node: ^14.13.1 || >=16.0.0} + hasBin: true + dependencies: + camel-case: 4.1.2 + clean-css: 5.3.2 + commander: 10.0.1 + entities: 4.5.0 + param-case: 3.0.4 + relateurl: 0.2.7 + terser: 5.17.4 + dev: false + /html-tags@3.3.1: resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==} engines: {node: '>=8'} dev: false - /html-void-elements@1.0.5: - resolution: {integrity: sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==} + /html-void-elements@2.0.1: + resolution: {integrity: sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==} dev: false /html-webpack-plugin@5.5.1(webpack@5.82.1): @@ -5742,6 +5875,14 @@ packages: - debug dev: false + /http2-wrapper@2.2.0: + resolution: {integrity: sha512-kZB0wxMo0sh1PehyjJUWRFEd99KC5TLjZ2cULC4f9iqJBAmKQQXEICjxl5iPJRwP40dpeHFqqhm7tYCvODpqpQ==} + engines: {node: '>=10.19.0'} + dependencies: + quick-lru: 5.1.1 + resolve-alpn: 1.2.1 + dev: false + /human-signals@2.1.0: resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} engines: {node: '>=10.17.0'} @@ -5761,13 +5902,13 @@ packages: safer-buffer: 2.1.2 dev: false - /icss-utils@5.1.0(postcss@8.4.23): + /icss-utils@5.1.0(postcss@8.4.27): resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 dev: false /ignore@5.2.4: @@ -5795,9 +5936,9 @@ packages: resolve-from: 4.0.0 dev: false - /import-lazy@2.1.0: - resolution: {integrity: sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==} - engines: {node: '>=4'} + /import-lazy@4.0.0: + resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==} + engines: {node: '>=8'} dev: false /imurmurhash@0.1.4: @@ -5866,15 +6007,15 @@ packages: engines: {node: '>= 10'} dev: false - /is-alphabetical@1.0.4: - resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==} + /is-alphabetical@2.0.1: + resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} dev: false - /is-alphanumerical@1.0.4: - resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==} + /is-alphanumerical@2.0.1: + resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} dependencies: - is-alphabetical: 1.0.4 - is-decimal: 1.0.4 + is-alphabetical: 2.0.1 + is-decimal: 2.0.1 dev: false /is-arrayish@0.2.1: @@ -5892,20 +6033,20 @@ packages: engines: {node: '>=4'} dev: false - /is-ci@2.0.0: - resolution: {integrity: sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==} + /is-ci@3.0.1: + resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==} hasBin: true dependencies: - ci-info: 2.0.0 + ci-info: 3.8.0 dev: false - /is-core-module@2.12.0: - resolution: {integrity: sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==} + /is-core-module@2.13.0: + resolution: {integrity: sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==} dependencies: has: 1.0.3 - /is-decimal@1.0.4: - resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==} + /is-decimal@2.0.1: + resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} dev: false /is-docker@2.2.1: @@ -5934,8 +6075,8 @@ packages: dependencies: is-extglob: 2.1.1 - /is-hexadecimal@1.0.4: - resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==} + /is-hexadecimal@2.0.1: + resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} dev: false /is-installed-globally@0.4.0: @@ -5946,9 +6087,9 @@ packages: is-path-inside: 3.0.3 dev: false - /is-npm@5.0.0: - resolution: {integrity: sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==} - engines: {node: '>=10'} + /is-npm@6.0.0: + resolution: {integrity: sha512-JEjxbSmtPSt1c8XTkVrlujcXdKV1/tvuQ7GwKcAlyiVLeYFQ2VHat8xfrDJsIkhCdF/tZ7CiIR3sy141c6+gPQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: false /is-number@7.0.0: @@ -5975,22 +6116,28 @@ packages: engines: {node: '>=8'} dev: false - /is-plain-obj@2.1.0: - resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} - engines: {node: '>=8'} - dev: false - /is-plain-obj@3.0.0: resolution: {integrity: sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==} engines: {node: '>=10'} dev: false + /is-plain-obj@4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} + engines: {node: '>=12'} + dev: false + /is-plain-object@2.0.4: resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==} engines: {node: '>=0.10.0'} dependencies: isobject: 3.0.1 + /is-reference@3.0.1: + resolution: {integrity: sha512-baJJdQLiYaJdvFbJqXrcGv3WU3QCzBlUcI5QhbesIm6/xPsvmO+2CDoi/GMOFBQEQm+PXkwOPrp9KK5ozZsp2w==} + dependencies: + '@types/estree': 1.0.1 + dev: false + /is-regexp@1.0.0: resolution: {integrity: sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==} engines: {node: '>=0.10.0'} @@ -6010,14 +6157,6 @@ packages: resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} dev: false - /is-whitespace-character@1.0.4: - resolution: {integrity: sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==} - dev: false - - /is-word-character@1.0.4: - resolution: {integrity: sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==} - dev: false - /is-wsl@2.2.0: resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} engines: {node: '>=8'} @@ -6025,8 +6164,9 @@ packages: is-docker: 2.2.1 dev: false - /is-yarn-global@0.3.0: - resolution: {integrity: sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==} + /is-yarn-global@0.4.1: + resolution: {integrity: sha512-/kppl+R+LO5VmhYSEWARUFjodS25D68gvj8W7z0I7OWhUla5xWu8KL6CtB2V0R6yqhnRgbcaREMr4EEM6htLPQ==} + engines: {node: '>=12'} dev: false /isarray@0.0.1: @@ -6050,7 +6190,7 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@jest/types': 29.5.0 - '@types/node': 20.1.7 + '@types/node': 20.4.8 chalk: 4.1.2 ci-info: 3.8.0 graceful-fs: 4.2.11 @@ -6061,7 +6201,7 @@ packages: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} dependencies: - '@types/node': 20.1.7 + '@types/node': 20.4.8 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -6069,14 +6209,14 @@ packages: resolution: {integrity: sha512-NcrQnevGoSp4b5kg+akIpthoAFHxPBcb5P6mYPY0fUNT+sSvmtu6jlkEle3anczUKIKEbMxFimk9oTP/tpIPgA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@types/node': 20.1.7 + '@types/node': 20.4.8 jest-util: 29.5.0 merge-stream: 2.0.0 supports-color: 8.1.1 dev: false - /jiti@1.18.2: - resolution: {integrity: sha512-QAdOptna2NYiSSpv0O/BwoHBSmz4YhpzJHyi+fnMRTXFjp7B8i/YG5Z8IfusxB1ufjcD2Sre1F3R+nX3fvy7gg==} + /jiti@1.19.1: + resolution: {integrity: sha512-oVhqoRDaBXf7sjkll95LHVS6Myyyb1zaunVwk4Z0+WPSW4gjS0pl01zYKHScTuyEhQsFxV5L4DR5r+YqSyqyyg==} hasBin: true /joi@17.9.2: @@ -6117,8 +6257,8 @@ packages: hasBin: true dev: false - /json-buffer@3.0.0: - resolution: {integrity: sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==} + /json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} dev: false /json-parse-even-better-errors@2.3.1: @@ -6145,10 +6285,10 @@ packages: graceful-fs: 4.2.11 dev: false - /keyv@3.1.0: - resolution: {integrity: sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==} + /keyv@4.5.3: + resolution: {integrity: sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==} dependencies: - json-buffer: 3.0.0 + json-buffer: 3.0.1 dev: false /khroma@2.0.0: @@ -6164,16 +6304,21 @@ packages: engines: {node: '>=6'} dev: false + /kleur@4.1.5: + resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} + engines: {node: '>=6'} + dev: false + /klona@2.0.6: resolution: {integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==} engines: {node: '>= 8'} dev: false - /latest-version@5.1.0: - resolution: {integrity: sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==} - engines: {node: '>=8'} + /latest-version@7.0.0: + resolution: {integrity: sha512-KvNT4XqAMzdcL6ka6Tl3i2lYeFDgXNCuIX+xNx6ZMVR1dFq+idXd9FLKNMOIx0t9mJ9/HudyX4oZWXZQ0UJHeg==} + engines: {node: '>=14.16'} dependencies: - package-json: 6.5.0 + package-json: 8.1.1 dev: false /launch-editor@2.6.0: @@ -6229,13 +6374,6 @@ packages: path-exists: 3.0.0 dev: false - /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: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} @@ -6243,6 +6381,13 @@ packages: p-locate: 5.0.0 dev: false + /locate-path@7.2.0: + resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + p-locate: 6.0.0 + dev: false + /lodash-es@4.17.21: resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} dev: false @@ -6283,6 +6428,10 @@ packages: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} dev: false + /longest-streak@3.1.0: + resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} + dev: false + /loose-envify@1.4.0: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} hasBin: true @@ -6295,14 +6444,9 @@ packages: tslib: 2.5.0 dev: false - /lowercase-keys@1.0.1: - resolution: {integrity: sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==} - engines: {node: '>=0.10.0'} - dev: false - - /lowercase-keys@2.0.0: - resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==} - engines: {node: '>=8'} + /lowercase-keys@3.0.0: + resolution: {integrity: sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: false /lru-cache@5.1.1: @@ -6318,54 +6462,219 @@ packages: yallist: 4.0.0 dev: false - /make-dir@3.1.0: - resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} - engines: {node: '>=8'} - dependencies: - semver: 6.3.0 + /markdown-extensions@1.1.1: + resolution: {integrity: sha512-WWC0ZuMzCyDHYCasEGs4IPvLyTGftYwh6wIEOULOF0HXcqZlhwRzrK0w2VUlxWA98xnvb/jszw4ZSkJ6ADpM6Q==} + engines: {node: '>=0.10.0'} dev: false - /markdown-escapes@1.0.4: - resolution: {integrity: sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==} + /markdown-table@3.0.3: + resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==} dev: false - /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: - 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: - resolution: {integrity: sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==} + /mdast-util-definitions@5.1.2: + resolution: {integrity: sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==} dependencies: '@types/mdast': 3.0.11 '@types/unist': 2.0.6 - mdast-util-definitions: 4.0.0 - mdurl: 1.0.1 - unist-builder: 2.0.3 - unist-util-generated: 1.1.6 - unist-util-position: 3.1.0 - unist-util-visit: 2.0.3 + unist-util-visit: 4.1.2 dev: false - /mdast-util-to-string@2.0.0: - resolution: {integrity: sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==} + /mdast-util-directive@2.2.4: + resolution: {integrity: sha512-sK3ojFP+jpj1n7Zo5ZKvoxP1MvLyzVG63+gm40Z/qI00avzdPCYxt7RBMgofwAva9gBjbDBWVRB/i+UD+fUCzQ==} + dependencies: + '@types/mdast': 3.0.11 + '@types/unist': 2.0.6 + mdast-util-from-markdown: 1.3.1 + mdast-util-to-markdown: 1.5.0 + parse-entities: 4.0.1 + stringify-entities: 4.0.3 + unist-util-visit-parents: 5.1.3 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-find-and-replace@2.2.2: + resolution: {integrity: sha512-MTtdFRz/eMDHXzeK6W3dO7mXUlF82Gom4y0oOgvHhh/HXZAGvIQDUvQ0SuUx+j2tv44b8xTHOm8K/9OoRFnXKw==} + dependencies: + '@types/mdast': 3.0.11 + escape-string-regexp: 5.0.0 + unist-util-is: 5.2.1 + unist-util-visit-parents: 5.1.3 + dev: false + + /mdast-util-from-markdown@1.3.1: + resolution: {integrity: sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==} + dependencies: + '@types/mdast': 3.0.11 + '@types/unist': 2.0.6 + decode-named-character-reference: 1.0.2 + mdast-util-to-string: 3.2.0 + micromark: 3.2.0 + micromark-util-decode-numeric-character-reference: 1.1.0 + micromark-util-decode-string: 1.1.0 + micromark-util-normalize-identifier: 1.1.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + unist-util-stringify-position: 3.0.3 + uvu: 0.5.6 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-gfm-autolink-literal@1.0.3: + resolution: {integrity: sha512-My8KJ57FYEy2W2LyNom4n3E7hKTuQk/0SES0u16tjA9Z3oFkF4RrC/hPAPgjlSpezsOvI8ObcXcElo92wn5IGA==} + dependencies: + '@types/mdast': 3.0.11 + ccount: 2.0.1 + mdast-util-find-and-replace: 2.2.2 + micromark-util-character: 1.2.0 + dev: false + + /mdast-util-gfm-footnote@1.0.2: + resolution: {integrity: sha512-56D19KOGbE00uKVj3sgIykpwKL179QsVFwx/DCW0u/0+URsryacI4MAdNJl0dh+u2PSsD9FtxPFbHCzJ78qJFQ==} + dependencies: + '@types/mdast': 3.0.11 + mdast-util-to-markdown: 1.5.0 + micromark-util-normalize-identifier: 1.1.0 + dev: false + + /mdast-util-gfm-strikethrough@1.0.3: + resolution: {integrity: sha512-DAPhYzTYrRcXdMjUtUjKvW9z/FNAMTdU0ORyMcbmkwYNbKocDpdk+PX1L1dQgOID/+vVs1uBQ7ElrBQfZ0cuiQ==} + dependencies: + '@types/mdast': 3.0.11 + mdast-util-to-markdown: 1.5.0 + dev: false + + /mdast-util-gfm-table@1.0.7: + resolution: {integrity: sha512-jjcpmNnQvrmN5Vx7y7lEc2iIOEytYv7rTvu+MeyAsSHTASGCCRA79Igg2uKssgOs1i1po8s3plW0sTu1wkkLGg==} + dependencies: + '@types/mdast': 3.0.11 + markdown-table: 3.0.3 + mdast-util-from-markdown: 1.3.1 + mdast-util-to-markdown: 1.5.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-gfm-task-list-item@1.0.2: + resolution: {integrity: sha512-PFTA1gzfp1B1UaiJVyhJZA1rm0+Tzn690frc/L8vNX1Jop4STZgOE6bxUhnzdVSB+vm2GU1tIsuQcA9bxTQpMQ==} + dependencies: + '@types/mdast': 3.0.11 + mdast-util-to-markdown: 1.5.0 + dev: false + + /mdast-util-gfm@2.0.2: + resolution: {integrity: sha512-qvZ608nBppZ4icQlhQQIAdc6S3Ffj9RGmzwUKUWuEICFnd1LVkN3EktF7ZHAgfcEdvZB5owU9tQgt99e2TlLjg==} + dependencies: + mdast-util-from-markdown: 1.3.1 + mdast-util-gfm-autolink-literal: 1.0.3 + mdast-util-gfm-footnote: 1.0.2 + mdast-util-gfm-strikethrough: 1.0.3 + mdast-util-gfm-table: 1.0.7 + mdast-util-gfm-task-list-item: 1.0.2 + mdast-util-to-markdown: 1.5.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-mdx-expression@1.3.2: + resolution: {integrity: sha512-xIPmR5ReJDu/DHH1OoIT1HkuybIfRGYRywC+gJtI7qHjCJp/M9jrmBEJW22O8lskDWm562BX2W8TiAwRTb0rKA==} + dependencies: + '@types/estree-jsx': 1.0.0 + '@types/hast': 2.3.4 + '@types/mdast': 3.0.11 + mdast-util-from-markdown: 1.3.1 + mdast-util-to-markdown: 1.5.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-mdx-jsx@2.1.4: + resolution: {integrity: sha512-DtMn9CmVhVzZx3f+optVDF8yFgQVt7FghCRNdlIaS3X5Bnym3hZwPbg/XW86vdpKjlc1PVj26SpnLGeJBXD3JA==} + dependencies: + '@types/estree-jsx': 1.0.0 + '@types/hast': 2.3.4 + '@types/mdast': 3.0.11 + '@types/unist': 2.0.6 + ccount: 2.0.1 + mdast-util-from-markdown: 1.3.1 + mdast-util-to-markdown: 1.5.0 + parse-entities: 4.0.1 + stringify-entities: 4.0.3 + unist-util-remove-position: 4.0.2 + unist-util-stringify-position: 3.0.3 + vfile-message: 3.1.4 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-mdx@2.0.1: + resolution: {integrity: sha512-38w5y+r8nyKlGvNjSEqWrhG0w5PmnRA+wnBvm+ulYCct7nsGYhFVb0lljS9bQav4psDAS1eGkP2LMVcZBi/aqw==} + dependencies: + mdast-util-from-markdown: 1.3.1 + mdast-util-mdx-expression: 1.3.2 + mdast-util-mdx-jsx: 2.1.4 + mdast-util-mdxjs-esm: 1.3.1 + mdast-util-to-markdown: 1.5.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-mdxjs-esm@1.3.1: + resolution: {integrity: sha512-SXqglS0HrEvSdUEfoXFtcg7DRl7S2cwOXc7jkuusG472Mmjag34DUDeOJUZtl+BVnyeO1frIgVpHlNRWc2gk/w==} + dependencies: + '@types/estree-jsx': 1.0.0 + '@types/hast': 2.3.4 + '@types/mdast': 3.0.11 + mdast-util-from-markdown: 1.3.1 + mdast-util-to-markdown: 1.5.0 + transitivePeerDependencies: + - supports-color + dev: false + + /mdast-util-phrasing@3.0.1: + resolution: {integrity: sha512-WmI1gTXUBJo4/ZmSk79Wcb2HcjPJBzM1nlI/OUWA8yk2X9ik3ffNbBGsU+09BFmXaL1IBb9fiuvq6/KMiNycSg==} + dependencies: + '@types/mdast': 3.0.11 + unist-util-is: 5.2.1 + dev: false + + /mdast-util-to-hast@12.3.0: + resolution: {integrity: sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==} + dependencies: + '@types/hast': 2.3.4 + '@types/mdast': 3.0.11 + mdast-util-definitions: 5.1.2 + micromark-util-sanitize-uri: 1.2.0 + trim-lines: 3.0.1 + unist-util-generated: 2.0.1 + unist-util-position: 4.0.4 + unist-util-visit: 4.1.2 + dev: false + + /mdast-util-to-markdown@1.5.0: + resolution: {integrity: sha512-bbv7TPv/WC49thZPg3jXuqzuvI45IL2EVAr/KxF0BSdHsU0ceFHOmwQn6evxAh1GaoK/6GQ1wp4R4oW2+LFL/A==} + dependencies: + '@types/mdast': 3.0.11 + '@types/unist': 2.0.6 + longest-streak: 3.1.0 + mdast-util-phrasing: 3.0.1 + mdast-util-to-string: 3.2.0 + micromark-util-decode-string: 1.1.0 + unist-util-visit: 4.1.2 + zwitch: 2.0.4 + dev: false + + /mdast-util-to-string@3.2.0: + resolution: {integrity: sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==} + dependencies: + '@types/mdast': 3.0.11 dev: false /mdn-data@2.0.14: resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} dev: false - /mdurl@1.0.1: - resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==} - dev: false - /media-typer@0.3.0: resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} engines: {node: '>= 0.6'} @@ -6415,6 +6724,352 @@ packages: engines: {node: '>= 0.6'} dev: false + /micromark-core-commonmark@1.1.0: + resolution: {integrity: sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==} + dependencies: + decode-named-character-reference: 1.0.2 + micromark-factory-destination: 1.1.0 + micromark-factory-label: 1.1.0 + micromark-factory-space: 1.1.0 + micromark-factory-title: 1.1.0 + micromark-factory-whitespace: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-chunked: 1.1.0 + micromark-util-classify-character: 1.1.0 + micromark-util-html-tag-name: 1.2.0 + micromark-util-normalize-identifier: 1.1.0 + micromark-util-resolve-all: 1.1.0 + micromark-util-subtokenize: 1.1.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + uvu: 0.5.6 + dev: false + + /micromark-extension-directive@2.2.1: + resolution: {integrity: sha512-ZFKZkNaEqAP86IghX1X7sE8NNnx6kFNq9mSBRvEHjArutTCJZ3LYg6VH151lXVb1JHpmIcW/7rX25oMoIHuSug==} + dependencies: + micromark-factory-space: 1.1.0 + micromark-factory-whitespace: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + parse-entities: 4.0.1 + uvu: 0.5.6 + dev: false + + /micromark-extension-gfm-autolink-literal@1.0.5: + resolution: {integrity: sha512-z3wJSLrDf8kRDOh2qBtoTRD53vJ+CWIyo7uyZuxf/JAbNJjiHsOpG1y5wxk8drtv3ETAHutCu6N3thkOOgueWg==} + dependencies: + micromark-util-character: 1.2.0 + micromark-util-sanitize-uri: 1.2.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + dev: false + + /micromark-extension-gfm-footnote@1.1.2: + resolution: {integrity: sha512-Yxn7z7SxgyGWRNa4wzf8AhYYWNrwl5q1Z8ii+CSTTIqVkmGZF1CElX2JI8g5yGoM3GAman9/PVCUFUSJ0kB/8Q==} + dependencies: + micromark-core-commonmark: 1.1.0 + micromark-factory-space: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-normalize-identifier: 1.1.0 + micromark-util-sanitize-uri: 1.2.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + uvu: 0.5.6 + dev: false + + /micromark-extension-gfm-strikethrough@1.0.7: + resolution: {integrity: sha512-sX0FawVE1o3abGk3vRjOH50L5TTLr3b5XMqnP9YDRb34M0v5OoZhG+OHFz1OffZ9dlwgpTBKaT4XW/AsUVnSDw==} + dependencies: + micromark-util-chunked: 1.1.0 + micromark-util-classify-character: 1.1.0 + micromark-util-resolve-all: 1.1.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + uvu: 0.5.6 + dev: false + + /micromark-extension-gfm-table@1.0.7: + resolution: {integrity: sha512-3ZORTHtcSnMQEKtAOsBQ9/oHp9096pI/UvdPtN7ehKvrmZZ2+bbWhi0ln+I9drmwXMt5boocn6OlwQzNXeVeqw==} + dependencies: + micromark-factory-space: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + uvu: 0.5.6 + dev: false + + /micromark-extension-gfm-tagfilter@1.0.2: + resolution: {integrity: sha512-5XWB9GbAUSHTn8VPU8/1DBXMuKYT5uOgEjJb8gN3mW0PNW5OPHpSdojoqf+iq1xo7vWzw/P8bAHY0n6ijpXF7g==} + dependencies: + micromark-util-types: 1.1.0 + dev: false + + /micromark-extension-gfm-task-list-item@1.0.5: + resolution: {integrity: sha512-RMFXl2uQ0pNQy6Lun2YBYT9g9INXtWJULgbt01D/x8/6yJ2qpKyzdZD3pi6UIkzF++Da49xAelVKUeUMqd5eIQ==} + dependencies: + micromark-factory-space: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + uvu: 0.5.6 + dev: false + + /micromark-extension-gfm@2.0.3: + resolution: {integrity: sha512-vb9OoHqrhCmbRidQv/2+Bc6pkP0FrtlhurxZofvOEy5o8RtuuvTq+RQ1Vw5ZDNrVraQZu3HixESqbG+0iKk/MQ==} + dependencies: + micromark-extension-gfm-autolink-literal: 1.0.5 + micromark-extension-gfm-footnote: 1.1.2 + micromark-extension-gfm-strikethrough: 1.0.7 + micromark-extension-gfm-table: 1.0.7 + micromark-extension-gfm-tagfilter: 1.0.2 + micromark-extension-gfm-task-list-item: 1.0.5 + micromark-util-combine-extensions: 1.1.0 + micromark-util-types: 1.1.0 + dev: false + + /micromark-extension-mdx-expression@1.0.8: + resolution: {integrity: sha512-zZpeQtc5wfWKdzDsHRBY003H2Smg+PUi2REhqgIhdzAa5xonhP03FcXxqFSerFiNUr5AWmHpaNPQTBVOS4lrXw==} + dependencies: + '@types/estree': 1.0.1 + micromark-factory-mdx-expression: 1.0.9 + micromark-factory-space: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-events-to-acorn: 1.2.3 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + uvu: 0.5.6 + dev: false + + /micromark-extension-mdx-jsx@1.0.5: + resolution: {integrity: sha512-gPH+9ZdmDflbu19Xkb8+gheqEDqkSpdCEubQyxuz/Hn8DOXiXvrXeikOoBA71+e8Pfi0/UYmU3wW3H58kr7akA==} + dependencies: + '@types/acorn': 4.0.6 + '@types/estree': 1.0.1 + estree-util-is-identifier-name: 2.1.0 + micromark-factory-mdx-expression: 1.0.9 + micromark-factory-space: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + uvu: 0.5.6 + vfile-message: 3.1.4 + dev: false + + /micromark-extension-mdx-md@1.0.1: + resolution: {integrity: sha512-7MSuj2S7xjOQXAjjkbjBsHkMtb+mDGVW6uI2dBL9snOBCbZmoNgDAeZ0nSn9j3T42UE/g2xVNMn18PJxZvkBEA==} + dependencies: + micromark-util-types: 1.1.0 + dev: false + + /micromark-extension-mdxjs-esm@1.0.5: + resolution: {integrity: sha512-xNRBw4aoURcyz/S69B19WnZAkWJMxHMT5hE36GtDAyhoyn/8TuAeqjFJQlwk+MKQsUD7b3l7kFX+vlfVWgcX1w==} + dependencies: + '@types/estree': 1.0.1 + micromark-core-commonmark: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-events-to-acorn: 1.2.3 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + unist-util-position-from-estree: 1.1.2 + uvu: 0.5.6 + vfile-message: 3.1.4 + dev: false + + /micromark-extension-mdxjs@1.0.1: + resolution: {integrity: sha512-7YA7hF6i5eKOfFUzZ+0z6avRG52GpWR8DL+kN47y3f2KhxbBZMhmxe7auOeaTBrW2DenbbZTf1ea9tA2hDpC2Q==} + dependencies: + acorn: 8.8.2 + acorn-jsx: 5.3.2(acorn@8.8.2) + micromark-extension-mdx-expression: 1.0.8 + micromark-extension-mdx-jsx: 1.0.5 + micromark-extension-mdx-md: 1.0.1 + micromark-extension-mdxjs-esm: 1.0.5 + micromark-util-combine-extensions: 1.1.0 + micromark-util-types: 1.1.0 + dev: false + + /micromark-factory-destination@1.1.0: + resolution: {integrity: sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==} + dependencies: + micromark-util-character: 1.2.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + dev: false + + /micromark-factory-label@1.1.0: + resolution: {integrity: sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==} + dependencies: + micromark-util-character: 1.2.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + uvu: 0.5.6 + dev: false + + /micromark-factory-mdx-expression@1.0.9: + resolution: {integrity: sha512-jGIWzSmNfdnkJq05c7b0+Wv0Kfz3NJ3N4cBjnbO4zjXIlxJr+f8lk+5ZmwFvqdAbUy2q6B5rCY//g0QAAaXDWA==} + dependencies: + '@types/estree': 1.0.1 + micromark-util-character: 1.2.0 + micromark-util-events-to-acorn: 1.2.3 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + unist-util-position-from-estree: 1.1.2 + uvu: 0.5.6 + vfile-message: 3.1.4 + dev: false + + /micromark-factory-space@1.1.0: + resolution: {integrity: sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==} + dependencies: + micromark-util-character: 1.2.0 + micromark-util-types: 1.1.0 + dev: false + + /micromark-factory-title@1.1.0: + resolution: {integrity: sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==} + dependencies: + micromark-factory-space: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + dev: false + + /micromark-factory-whitespace@1.1.0: + resolution: {integrity: sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==} + dependencies: + micromark-factory-space: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + dev: false + + /micromark-util-character@1.2.0: + resolution: {integrity: sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==} + dependencies: + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + dev: false + + /micromark-util-chunked@1.1.0: + resolution: {integrity: sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==} + dependencies: + micromark-util-symbol: 1.1.0 + dev: false + + /micromark-util-classify-character@1.1.0: + resolution: {integrity: sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==} + dependencies: + micromark-util-character: 1.2.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + dev: false + + /micromark-util-combine-extensions@1.1.0: + resolution: {integrity: sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==} + dependencies: + micromark-util-chunked: 1.1.0 + micromark-util-types: 1.1.0 + dev: false + + /micromark-util-decode-numeric-character-reference@1.1.0: + resolution: {integrity: sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==} + dependencies: + micromark-util-symbol: 1.1.0 + dev: false + + /micromark-util-decode-string@1.1.0: + resolution: {integrity: sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==} + dependencies: + decode-named-character-reference: 1.0.2 + micromark-util-character: 1.2.0 + micromark-util-decode-numeric-character-reference: 1.1.0 + micromark-util-symbol: 1.1.0 + dev: false + + /micromark-util-encode@1.1.0: + resolution: {integrity: sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==} + dev: false + + /micromark-util-events-to-acorn@1.2.3: + resolution: {integrity: sha512-ij4X7Wuc4fED6UoLWkmo0xJQhsktfNh1J0m8g4PbIMPlx+ek/4YdW5mvbye8z/aZvAPUoxgXHrwVlXAPKMRp1w==} + dependencies: + '@types/acorn': 4.0.6 + '@types/estree': 1.0.1 + '@types/unist': 2.0.6 + estree-util-visit: 1.2.1 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + uvu: 0.5.6 + vfile-message: 3.1.4 + dev: false + + /micromark-util-html-tag-name@1.2.0: + resolution: {integrity: sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==} + dev: false + + /micromark-util-normalize-identifier@1.1.0: + resolution: {integrity: sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==} + dependencies: + micromark-util-symbol: 1.1.0 + dev: false + + /micromark-util-resolve-all@1.1.0: + resolution: {integrity: sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==} + dependencies: + micromark-util-types: 1.1.0 + dev: false + + /micromark-util-sanitize-uri@1.2.0: + resolution: {integrity: sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==} + dependencies: + micromark-util-character: 1.2.0 + micromark-util-encode: 1.1.0 + micromark-util-symbol: 1.1.0 + dev: false + + /micromark-util-subtokenize@1.1.0: + resolution: {integrity: sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==} + dependencies: + micromark-util-chunked: 1.1.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + uvu: 0.5.6 + dev: false + + /micromark-util-symbol@1.1.0: + resolution: {integrity: sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==} + dev: false + + /micromark-util-types@1.1.0: + resolution: {integrity: sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==} + dev: false + + /micromark@3.2.0: + resolution: {integrity: sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==} + dependencies: + '@types/debug': 4.1.8 + debug: 4.3.4 + decode-named-character-reference: 1.0.2 + micromark-core-commonmark: 1.1.0 + micromark-factory-space: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-chunked: 1.1.0 + micromark-util-combine-extensions: 1.1.0 + micromark-util-decode-numeric-character-reference: 1.1.0 + micromark-util-encode: 1.1.0 + micromark-util-normalize-identifier: 1.1.0 + micromark-util-resolve-all: 1.1.0 + micromark-util-sanitize-uri: 1.2.0 + micromark-util-subtokenize: 1.1.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + uvu: 0.5.6 + transitivePeerDependencies: + - supports-color + dev: false + /micromatch@4.0.5: resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} engines: {node: '>=8.6'} @@ -6455,9 +7110,14 @@ packages: engines: {node: '>=6'} dev: false - /mimic-response@1.0.1: - resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} - engines: {node: '>=4'} + /mimic-response@3.1.0: + resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} + engines: {node: '>=10'} + dev: false + + /mimic-response@4.0.0: + resolution: {integrity: sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: false /mini-css-extract-plugin@2.7.5(webpack@5.82.1): @@ -6483,6 +7143,11 @@ packages: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} dev: false + /mri@1.2.0: + resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} + engines: {node: '>=4'} + dev: false + /mrmime@1.0.1: resolution: {integrity: sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==} engines: {node: '>=10'} @@ -6574,16 +7239,16 @@ packages: engines: {node: '>=0.10.0'} dev: false - /normalize-url@4.5.1: - resolution: {integrity: sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==} - engines: {node: '>=8'} - dev: false - /normalize-url@6.1.0: resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} engines: {node: '>=10'} dev: false + /normalize-url@8.0.0: + resolution: {integrity: sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw==} + engines: {node: '>=14.16'} + dev: false + /npm-run-path@4.0.1: resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} engines: {node: '>=8'} @@ -6670,9 +7335,9 @@ packages: hasBin: true dev: false - /p-cancelable@1.1.0: - resolution: {integrity: sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==} - engines: {node: '>=6'} + /p-cancelable@3.0.0: + resolution: {integrity: sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==} + engines: {node: '>=12.20'} dev: false /p-limit@2.3.0: @@ -6689,6 +7354,13 @@ packages: yocto-queue: 0.1.0 dev: false + /p-limit@4.0.0: + resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + yocto-queue: 1.0.0 + dev: false + /p-locate@3.0.0: resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} engines: {node: '>=6'} @@ -6696,13 +7368,6 @@ packages: p-limit: 2.3.0 dev: false - /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: resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} engines: {node: '>=10'} @@ -6710,6 +7375,13 @@ packages: p-limit: 3.1.0 dev: false + /p-locate@6.0.0: + resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + p-limit: 4.0.0 + dev: false + /p-map@4.0.0: resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} engines: {node: '>=10'} @@ -6730,14 +7402,14 @@ packages: engines: {node: '>=6'} dev: false - /package-json@6.5.0: - resolution: {integrity: sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==} - engines: {node: '>=8'} + /package-json@8.1.1: + resolution: {integrity: sha512-cbH9IAIJHNj9uXi196JVsRlt7cHKak6u/e6AkL/bkRelZ7rlL3X1YKxsZwa36xipOEKAsdtmaG6aAJoM1fx2zA==} + engines: {node: '>=14.16'} dependencies: - got: 9.6.0 - registry-auth-token: 4.2.2 - registry-url: 5.1.0 - semver: 6.3.0 + got: 12.6.1 + registry-auth-token: 5.0.2 + registry-url: 6.0.1 + semver: 7.5.1 dev: false /param-case@3.0.4: @@ -6754,15 +7426,17 @@ packages: callsites: 3.1.0 dev: false - /parse-entities@2.0.0: - resolution: {integrity: sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==} + /parse-entities@4.0.1: + resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==} dependencies: - character-entities: 1.2.4 - character-entities-legacy: 1.1.4 - character-reference-invalid: 1.1.4 - is-alphanumerical: 1.0.4 - is-decimal: 1.0.4 - is-hexadecimal: 1.0.4 + '@types/unist': 2.0.6 + character-entities: 2.0.2 + character-entities-legacy: 3.0.0 + character-reference-invalid: 2.0.1 + decode-named-character-reference: 1.0.2 + is-alphanumerical: 2.0.1 + is-decimal: 2.0.1 + is-hexadecimal: 2.0.1 dev: false /parse-json@5.2.0: @@ -6818,6 +7492,11 @@ packages: engines: {node: '>=8'} dev: false + /path-exists@5.0.0: + resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: false + /path-is-absolute@1.0.1: resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} engines: {node: '>=0.10.0'} @@ -6853,6 +7532,14 @@ packages: engines: {node: '>=8'} dev: false + /periscopic@3.1.0: + resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} + dependencies: + '@types/estree': 1.0.1 + estree-walker: 3.0.3 + is-reference: 3.0.1 + dev: false + /picocolors@1.0.0: resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} @@ -6864,15 +7551,15 @@ packages: resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} engines: {node: '>=0.10.0'} - /pirates@4.0.5: - resolution: {integrity: sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==} + /pirates@4.0.6: + resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} engines: {node: '>= 6'} - /pkg-dir@4.2.0: - resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} - engines: {node: '>=8'} + /pkg-dir@7.0.0: + resolution: {integrity: sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==} + engines: {node: '>=14.16'} dependencies: - find-up: 4.1.0 + find-up: 6.3.0 dev: false /pkg-up@3.1.0: @@ -6891,17 +7578,17 @@ packages: tslib: 2.5.0 dev: false - /postcss-calc@8.2.4(postcss@8.4.23): + /postcss-calc@8.2.4(postcss@8.4.27): resolution: {integrity: sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==} peerDependencies: postcss: ^8.2.2 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-selector-parser: 6.0.13 postcss-value-parser: 4.2.0 dev: false - /postcss-colormin@5.3.1(postcss@8.4.23): + /postcss-colormin@5.3.1(postcss@8.4.27): resolution: {integrity: sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: @@ -6910,88 +7597,88 @@ packages: browserslist: 4.21.5 caniuse-api: 3.0.0 colord: 2.9.3 - postcss: 8.4.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /postcss-convert-values@5.1.3(postcss@8.4.23): + /postcss-convert-values@5.1.3(postcss@8.4.27): resolution: {integrity: sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: browserslist: 4.21.5 - postcss: 8.4.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /postcss-discard-comments@5.1.2(postcss@8.4.23): + /postcss-discard-comments@5.1.2(postcss@8.4.27): resolution: {integrity: sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 dev: false - /postcss-discard-duplicates@5.1.0(postcss@8.4.23): + /postcss-discard-duplicates@5.1.0(postcss@8.4.27): resolution: {integrity: sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 dev: false - /postcss-discard-empty@5.1.1(postcss@8.4.23): + /postcss-discard-empty@5.1.1(postcss@8.4.27): resolution: {integrity: sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 dev: false - /postcss-discard-overridden@5.1.0(postcss@8.4.23): + /postcss-discard-overridden@5.1.0(postcss@8.4.27): resolution: {integrity: sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 dev: false - /postcss-discard-unused@5.1.0(postcss@8.4.23): + /postcss-discard-unused@5.1.0(postcss@8.4.27): resolution: {integrity: sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-selector-parser: 6.0.13 dev: false - /postcss-import@15.1.0(postcss@8.4.23): + /postcss-import@15.1.0(postcss@8.4.27): resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} engines: {node: '>=14.0.0'} peerDependencies: postcss: ^8.0.0 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 read-cache: 1.0.0 - resolve: 1.22.2 + resolve: 1.22.4 - /postcss-js@4.0.1(postcss@8.4.23): + /postcss-js@4.0.1(postcss@8.4.27): resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} engines: {node: ^12 || ^14 || >= 16} peerDependencies: postcss: ^8.4.21 dependencies: camelcase-css: 2.0.1 - postcss: 8.4.23 + postcss: 8.4.27 - /postcss-load-config@4.0.1(postcss@8.4.23): + /postcss-load-config@4.0.1(postcss@8.4.27): resolution: {integrity: sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==} engines: {node: '>= 14'} peerDependencies: @@ -7004,10 +7691,10 @@ packages: optional: true dependencies: lilconfig: 2.1.0 - postcss: 8.4.23 - yaml: 2.2.2 + postcss: 8.4.27 + yaml: 2.3.1 - /postcss-loader@7.3.0(postcss@8.4.23)(webpack@5.82.1): + /postcss-loader@7.3.0(postcss@8.4.27)(webpack@5.82.1): resolution: {integrity: sha512-qLAFjvR2BFNz1H930P7mj1iuWJFjGey/nVhimfOAAQ1ZyPpcClAxP8+A55Sl8mBvM+K2a9Pjgdj10KpANWrNfw==} engines: {node: '>= 14.15.0'} peerDependencies: @@ -7015,36 +7702,36 @@ packages: webpack: ^5.0.0 dependencies: cosmiconfig: 8.1.3 - jiti: 1.18.2 + jiti: 1.19.1 klona: 2.0.6 - postcss: 8.4.23 + postcss: 8.4.27 semver: 7.5.1 webpack: 5.82.1 dev: false - /postcss-merge-idents@5.1.1(postcss@8.4.23): + /postcss-merge-idents@5.1.1(postcss@8.4.27): 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.23) - postcss: 8.4.23 + cssnano-utils: 3.1.0(postcss@8.4.27) + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /postcss-merge-longhand@5.1.7(postcss@8.4.23): + /postcss-merge-longhand@5.1.7(postcss@8.4.27): resolution: {integrity: sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 - stylehacks: 5.1.1(postcss@8.4.23) + stylehacks: 5.1.1(postcss@8.4.27) dev: false - /postcss-merge-rules@5.1.4(postcss@8.4.23): + /postcss-merge-rules@5.1.4(postcss@8.4.27): resolution: {integrity: sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: @@ -7052,218 +7739,218 @@ packages: dependencies: browserslist: 4.21.5 caniuse-api: 3.0.0 - cssnano-utils: 3.1.0(postcss@8.4.23) - postcss: 8.4.23 + cssnano-utils: 3.1.0(postcss@8.4.27) + postcss: 8.4.27 postcss-selector-parser: 6.0.13 dev: false - /postcss-minify-font-values@5.1.0(postcss@8.4.23): + /postcss-minify-font-values@5.1.0(postcss@8.4.27): resolution: {integrity: sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /postcss-minify-gradients@5.1.1(postcss@8.4.23): + /postcss-minify-gradients@5.1.1(postcss@8.4.27): resolution: {integrity: sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: colord: 2.9.3 - cssnano-utils: 3.1.0(postcss@8.4.23) - postcss: 8.4.23 + cssnano-utils: 3.1.0(postcss@8.4.27) + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /postcss-minify-params@5.1.4(postcss@8.4.23): + /postcss-minify-params@5.1.4(postcss@8.4.27): resolution: {integrity: sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: browserslist: 4.21.5 - cssnano-utils: 3.1.0(postcss@8.4.23) - postcss: 8.4.23 + cssnano-utils: 3.1.0(postcss@8.4.27) + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /postcss-minify-selectors@5.2.1(postcss@8.4.23): + /postcss-minify-selectors@5.2.1(postcss@8.4.27): resolution: {integrity: sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-selector-parser: 6.0.13 dev: false - /postcss-modules-extract-imports@3.0.0(postcss@8.4.23): + /postcss-modules-extract-imports@3.0.0(postcss@8.4.27): resolution: {integrity: sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 dev: false - /postcss-modules-local-by-default@4.0.0(postcss@8.4.23): + /postcss-modules-local-by-default@4.0.0(postcss@8.4.27): resolution: {integrity: sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - icss-utils: 5.1.0(postcss@8.4.23) - postcss: 8.4.23 + icss-utils: 5.1.0(postcss@8.4.27) + postcss: 8.4.27 postcss-selector-parser: 6.0.13 postcss-value-parser: 4.2.0 dev: false - /postcss-modules-scope@3.0.0(postcss@8.4.23): + /postcss-modules-scope@3.0.0(postcss@8.4.27): resolution: {integrity: sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-selector-parser: 6.0.13 dev: false - /postcss-modules-values@4.0.0(postcss@8.4.23): + /postcss-modules-values@4.0.0(postcss@8.4.27): 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.23) - postcss: 8.4.23 + icss-utils: 5.1.0(postcss@8.4.27) + postcss: 8.4.27 dev: false - /postcss-nested@6.0.1(postcss@8.4.23): + /postcss-nested@6.0.1(postcss@8.4.27): resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} engines: {node: '>=12.0'} peerDependencies: postcss: ^8.2.14 dependencies: - postcss: 8.4.23 - postcss-selector-parser: 6.0.12 + postcss: 8.4.27 + postcss-selector-parser: 6.0.13 - /postcss-normalize-charset@5.1.0(postcss@8.4.23): + /postcss-normalize-charset@5.1.0(postcss@8.4.27): resolution: {integrity: sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 dev: false - /postcss-normalize-display-values@5.1.0(postcss@8.4.23): + /postcss-normalize-display-values@5.1.0(postcss@8.4.27): resolution: {integrity: sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-positions@5.1.1(postcss@8.4.23): + /postcss-normalize-positions@5.1.1(postcss@8.4.27): resolution: {integrity: sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-repeat-style@5.1.1(postcss@8.4.23): + /postcss-normalize-repeat-style@5.1.1(postcss@8.4.27): resolution: {integrity: sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-string@5.1.0(postcss@8.4.23): + /postcss-normalize-string@5.1.0(postcss@8.4.27): resolution: {integrity: sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-timing-functions@5.1.0(postcss@8.4.23): + /postcss-normalize-timing-functions@5.1.0(postcss@8.4.27): resolution: {integrity: sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-unicode@5.1.1(postcss@8.4.23): + /postcss-normalize-unicode@5.1.1(postcss@8.4.27): resolution: {integrity: sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: browserslist: 4.21.5 - postcss: 8.4.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-url@5.1.0(postcss@8.4.23): + /postcss-normalize-url@5.1.0(postcss@8.4.27): 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.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /postcss-normalize-whitespace@5.1.1(postcss@8.4.23): + /postcss-normalize-whitespace@5.1.1(postcss@8.4.27): resolution: {integrity: sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /postcss-ordered-values@5.1.3(postcss@8.4.23): + /postcss-ordered-values@5.1.3(postcss@8.4.27): 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.23) - postcss: 8.4.23 + cssnano-utils: 3.1.0(postcss@8.4.27) + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /postcss-reduce-idents@5.2.0(postcss@8.4.23): + /postcss-reduce-idents@5.2.0(postcss@8.4.27): resolution: {integrity: sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false - /postcss-reduce-initial@5.1.2(postcss@8.4.23): + /postcss-reduce-initial@5.1.2(postcss@8.4.27): resolution: {integrity: sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: @@ -7271,16 +7958,16 @@ packages: dependencies: browserslist: 4.21.5 caniuse-api: 3.0.0 - postcss: 8.4.23 + postcss: 8.4.27 dev: false - /postcss-reduce-transforms@5.1.0(postcss@8.4.23): + /postcss-reduce-transforms@5.1.0(postcss@8.4.27): resolution: {integrity: sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 dev: false @@ -7292,77 +7979,64 @@ packages: util-deprecate: 1.0.2 dev: true - /postcss-selector-parser@6.0.12: - resolution: {integrity: sha512-NdxGCAZdRrwVI1sy59+Wzrh+pMMHxapGnpfenDVlMEXoOcvt4pGE0JLK9YY2F5dLxcFYA/YbVQKhcGU+FtSYQg==} - engines: {node: '>=4'} - dependencies: - cssesc: 3.0.0 - util-deprecate: 1.0.2 - /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.4.1(postcss@8.4.23): + /postcss-sort-media-queries@4.4.1(postcss@8.4.27): resolution: {integrity: sha512-QDESFzDDGKgpiIh4GYXsSy6sek2yAwQx1JASl5AxBtU1Lq2JfKBljIPNdil989NcSKRQX1ToiaKphImtBuhXWw==} engines: {node: '>=10.0.0'} peerDependencies: postcss: ^8.4.16 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 sort-css-media-queries: 2.1.0 dev: false - /postcss-svgo@5.1.0(postcss@8.4.23): + /postcss-svgo@5.1.0(postcss@8.4.27): resolution: {integrity: sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-value-parser: 4.2.0 svgo: 2.8.0 dev: false - /postcss-unique-selectors@5.1.1(postcss@8.4.23): + /postcss-unique-selectors@5.1.1(postcss@8.4.27): resolution: {integrity: sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 postcss-selector-parser: 6.0.13 dev: false /postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - /postcss-zindex@5.1.0(postcss@8.4.23): + /postcss-zindex@5.1.0(postcss@8.4.27): resolution: {integrity: sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.23 + postcss: 8.4.27 dev: false - /postcss@8.4.23: - resolution: {integrity: sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==} + /postcss@8.4.27: + resolution: {integrity: sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ==} engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.6 picocolors: 1.0.0 source-map-js: 1.0.2 - /prepend-http@2.0.0: - resolution: {integrity: sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==} - engines: {node: '>=4'} - dev: false - /pretty-error@4.0.0: resolution: {integrity: sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==} dependencies: @@ -7375,12 +8049,12 @@ packages: engines: {node: '>=4'} dev: false - /prism-react-renderer@1.3.5(react@17.0.2): + /prism-react-renderer@1.3.5(react@18.2.0): resolution: {integrity: sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg==} peerDependencies: react: '>=0.14.9' dependencies: - react: 17.0.2 + react: 18.2.0 dev: false /prismjs@1.29.0: @@ -7413,10 +8087,12 @@ packages: object-assign: 4.1.1 react-is: 16.13.1 - /property-information@5.6.0: - resolution: {integrity: sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==} - dependencies: - xtend: 4.0.2 + /property-information@6.2.0: + resolution: {integrity: sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==} + dev: false + + /proto-list@1.2.4: + resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} dev: false /proxy-addr@2.0.7: @@ -7427,13 +8103,6 @@ packages: ipaddr.js: 1.9.1 dev: false - /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: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} dev: false @@ -7442,11 +8111,11 @@ packages: resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} engines: {node: '>=6'} - /pupa@2.1.1: - resolution: {integrity: sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==} - engines: {node: '>=8'} + /pupa@3.1.0: + resolution: {integrity: sha512-FLpr4flz5xZTSJxSeaheeMKN/EDzMdK7b8PTOC6a5PYFKTucWbdqjgqaEyH0shFiSJrVB1+Qqi4Tk19ccU6Aug==} + engines: {node: '>=12.20'} dependencies: - escape-goat: 2.1.1 + escape-goat: 4.0.0 dev: false /pure-color@1.3.0: @@ -7469,6 +8138,11 @@ packages: inherits: 2.0.4 dev: false + /quick-lru@5.1.1: + resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} + engines: {node: '>=10'} + dev: false + /randombytes@2.1.0: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} dependencies: @@ -7513,7 +8187,7 @@ packages: pure-color: 1.3.0 dev: false - /react-dev-utils@12.0.1(typescript@5.0.4)(webpack@5.82.1): + /react-dev-utils@12.0.1(typescript@5.1.6)(webpack@5.82.1): resolution: {integrity: sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==} engines: {node: '>=14'} peerDependencies: @@ -7532,7 +8206,7 @@ packages: escape-string-regexp: 4.0.0 filesize: 8.0.7 find-up: 5.0.0 - fork-ts-checker-webpack-plugin: 6.5.3(typescript@5.0.4)(webpack@5.82.1) + fork-ts-checker-webpack-plugin: 6.5.3(typescript@5.1.6)(webpack@5.82.1) global-modules: 2.0.0 globby: 11.1.0 gzip-size: 6.0.0 @@ -7547,7 +8221,7 @@ packages: shell-quote: 1.8.1 strip-ansi: 6.0.1 text-table: 0.2.0 - typescript: 5.0.4 + typescript: 5.1.6 webpack: 5.82.1 transitivePeerDependencies: - eslint @@ -7555,15 +8229,14 @@ packages: - vue-template-compiler dev: false - /react-dom@17.0.2(react@17.0.2): - resolution: {integrity: sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==} + /react-dom@18.2.0(react@18.2.0): + resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} peerDependencies: - react: 17.0.2 + react: ^18.2.0 dependencies: loose-envify: 1.4.0 - object-assign: 4.1.1 - react: 17.0.2 - scheduler: 0.20.2 + react: 18.2.0 + scheduler: 0.23.0 /react-easy-swipe@0.0.21: resolution: {integrity: sha512-OeR2jAxdoqUMHIn/nS9fgreI5hSpgGoL5ezdal4+oO7YSSgJR8ga+PkYGJrSrJ9MKlPcQjMQXnketrD7WNmNsg==} @@ -7579,7 +8252,7 @@ packages: /react-fast-compare@3.2.1: resolution: {integrity: sha512-xTYf9zFim2pEif/Fw16dBiXpe0hoy5PxcD8+OwBnTtNLfIm3g6WxhKNurY+6OmdH1u6Ta/W/Vl6vjbYP1MFnDg==} - /react-helmet-async@1.3.0(react-dom@17.0.2)(react@17.0.2): + /react-helmet-async@1.3.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg==} peerDependencies: react: ^16.6.0 || ^17.0.0 || ^18.0.0 @@ -7588,34 +8261,34 @@ packages: '@babel/runtime': 7.21.5 invariant: 2.2.4 prop-types: 15.8.1 - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) react-fast-compare: 3.2.1 shallowequal: 1.1.0 - /react-icons@4.8.0(react@17.0.2): - resolution: {integrity: sha512-N6+kOLcihDiAnj5Czu637waJqSnwlMNROzVZMhfX68V/9bu9qHaMIJC4UdozWoOk57gahFCNHwVvWzm0MTzRjg==} + /react-icons@4.10.1(react@18.2.0): + resolution: {integrity: sha512-/ngzDP/77tlCfqthiiGNZeYFACw85fUjZtLbedmJ5DTlNDIwETxhwBzdOJ21zj4iJdvc0J3y7yOsX3PpxAJzrw==} peerDependencies: react: '*' dependencies: - react: 17.0.2 + react: 18.2.0 dev: false /react-is@16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} - /react-json-view@1.21.3(@types/react@18.2.6)(react-dom@17.0.2)(react@17.0.2): + /react-json-view@1.21.3(@types/react@18.2.18)(react-dom@18.2.0)(react@18.2.0): 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.4(react@17.0.2) - react: 17.0.2 + flux: 4.0.4(react@18.2.0) + react: 18.2.0 react-base16-styling: 0.6.0 - react-dom: 17.0.2(react@17.0.2) + react-dom: 18.2.0(react@18.2.0) react-lifecycles-compat: 3.0.4 - react-textarea-autosize: 8.4.1(@types/react@18.2.6)(react@17.0.2) + react-textarea-autosize: 8.4.1(@types/react@18.2.18)(react@18.2.0) transitivePeerDependencies: - '@types/react' - encoding @@ -7633,7 +8306,7 @@ packages: webpack: '>=4.41.1 || 5.x' dependencies: '@babel/runtime': 7.21.5 - react-loadable: /@docusaurus/react-loadable@5.5.2(react@17.0.2) + react-loadable: /@docusaurus/react-loadable@5.5.2(react@18.2.0) webpack: 5.82.1 dev: false @@ -7645,18 +8318,18 @@ packages: react-easy-swipe: 0.0.21 dev: false - /react-router-config@5.1.1(react-router@5.3.4)(react@17.0.2): + /react-router-config@5.1.1(react-router@5.3.4)(react@18.2.0): resolution: {integrity: sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==} peerDependencies: react: '>=15' react-router: '>=5' dependencies: '@babel/runtime': 7.21.5 - react: 17.0.2 - react-router: 5.3.4(react@17.0.2) + react: 18.2.0 + react-router: 5.3.4(react@18.2.0) dev: false - /react-router-dom@5.3.4(react@17.0.2): + /react-router-dom@5.3.4(react@18.2.0): resolution: {integrity: sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==} peerDependencies: react: '>=15' @@ -7665,13 +8338,13 @@ packages: history: 4.10.1 loose-envify: 1.4.0 prop-types: 15.8.1 - react: 17.0.2 - react-router: 5.3.4(react@17.0.2) + react: 18.2.0 + react-router: 5.3.4(react@18.2.0) tiny-invariant: 1.3.1 tiny-warning: 1.0.3 dev: false - /react-router@5.3.4(react@17.0.2): + /react-router@5.3.4(react@18.2.0): resolution: {integrity: sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==} peerDependencies: react: '>=15' @@ -7682,32 +8355,31 @@ packages: loose-envify: 1.4.0 path-to-regexp: 1.8.0 prop-types: 15.8.1 - react: 17.0.2 + react: 18.2.0 react-is: 16.13.1 tiny-invariant: 1.3.1 tiny-warning: 1.0.3 dev: false - /react-textarea-autosize@8.4.1(@types/react@18.2.6)(react@17.0.2): + /react-textarea-autosize@8.4.1(@types/react@18.2.18)(react@18.2.0): resolution: {integrity: sha512-aD2C+qK6QypknC+lCMzteOdIjoMbNlgSFmJjCV+DrfTPwp59i/it9mMNf2HDzvRjQgKAyBDPyLJhcrzElf2U4Q==} engines: {node: '>=10'} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: '@babel/runtime': 7.21.5 - react: 17.0.2 - use-composed-ref: 1.3.0(react@17.0.2) - use-latest: 1.2.1(@types/react@18.2.6)(react@17.0.2) + react: 18.2.0 + use-composed-ref: 1.3.0(react@18.2.0) + use-latest: 1.2.1(@types/react@18.2.18)(react@18.2.0) transitivePeerDependencies: - '@types/react' dev: false - /react@17.0.2: - resolution: {integrity: sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==} + /react@18.2.0: + resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} engines: {node: '>=0.10.0'} dependencies: loose-envify: 1.4.0 - object-assign: 4.1.1 /read-cache@1.0.0: resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} @@ -7749,7 +8421,7 @@ packages: resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} engines: {node: '>= 0.10'} dependencies: - resolve: 1.22.2 + resolve: 1.22.4 dev: false /recursive-readdir@2.2.3: @@ -7791,16 +8463,16 @@ packages: unicode-match-property-value-ecmascript: 2.1.0 dev: false - /registry-auth-token@4.2.2: - resolution: {integrity: sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==} - engines: {node: '>=6.0.0'} + /registry-auth-token@5.0.2: + resolution: {integrity: sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==} + engines: {node: '>=14'} dependencies: - rc: 1.2.8 + '@pnpm/npm-conf': 2.2.2 dev: false - /registry-url@5.1.0: - resolution: {integrity: sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==} - engines: {node: '>=8'} + /registry-url@6.0.1: + resolution: {integrity: sha512-+crtS5QjFRqFCoQmvGduwYWEBng99ZvmFvF+cUJkGYF1L1BfU8C6Zp9T7f5vPAwyLkUExpvK+ANVZmGU49qi4Q==} + engines: {node: '>=12'} dependencies: rc: 1.2.8 dev: false @@ -7812,11 +8484,38 @@ packages: jsesc: 0.5.0 dev: false + /rehype-raw@6.1.1: + resolution: {integrity: sha512-d6AKtisSRtDRX4aSPsJGTfnzrX2ZkHQLE5kiUuGOeEoLpbEulFF4hj0mLPbsa+7vmguDKOVVEQdHKDSwoaIDsQ==} + dependencies: + '@types/hast': 2.3.4 + hast-util-raw: 7.2.3 + unified: 10.1.2 + dev: false + /relateurl@0.2.7: resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==} engines: {node: '>= 0.10'} dev: false + /remark-comment@1.0.0: + resolution: {integrity: sha512-k8YPo5MGvl8l4gGxOH6Zk4Fa2AhDACN5eqKnKZcHDORZQS15hlnezlBHj2lqyDiqzApNmYOMTibkEJbMSKU25w==} + dependencies: + micromark-factory-space: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-symbol: 1.1.0 + dev: false + + /remark-directive@2.0.1: + resolution: {integrity: sha512-oosbsUAkU/qmUE78anLaJePnPis4ihsE7Agp0T/oqTzvTea8pOiaYEtfInU/+xMOVTS9PN5AhGOiaIVe4GD8gw==} + dependencies: + '@types/mdast': 3.0.11 + mdast-util-directive: 2.2.4 + micromark-extension-directive: 2.2.1 + unified: 10.1.2 + transitivePeerDependencies: + - supports-color + dev: false + /remark-emoji@2.2.0: resolution: {integrity: sha512-P3cj9s5ggsUvWw5fS2uzCHJMGuXYRb0NnZqYlNecewXt8QBU9n5vW3DUUKOhepS8F9CwdMx9B8a3i7pqFWAI5w==} dependencies: @@ -7825,50 +8524,43 @@ packages: unist-util-visit: 2.0.3 dev: false - /remark-footnotes@2.0.0: - resolution: {integrity: sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==} - dev: false - - /remark-mdx@1.6.22: - resolution: {integrity: sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==} + /remark-gfm@3.0.1: + resolution: {integrity: sha512-lEFDoi2PICJyNrACFOfDD3JlLkuSbOa5Wd8EPt06HUdptv8Gn0bxYTdbU/XXQ3swAPkEaGxxPN9cbnMHvVu1Ig==} 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) - '@mdx-js/util': 1.6.22 - is-alphabetical: 1.0.4 - remark-parse: 8.0.3 - unified: 9.2.0 + '@types/mdast': 3.0.11 + mdast-util-gfm: 2.0.2 + micromark-extension-gfm: 2.0.3 + unified: 10.1.2 transitivePeerDependencies: - supports-color dev: false - /remark-parse@8.0.3: - resolution: {integrity: sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==} + /remark-mdx@2.3.0: + resolution: {integrity: sha512-g53hMkpM0I98MU266IzDFMrTD980gNF3BJnkyFcmN+dD873mQeD5rdMO3Y2X+x8umQfbSE0PcoEDl7ledSA+2g==} dependencies: - ccount: 1.1.0 - collapse-white-space: 1.0.6 - is-alphabetical: 1.0.4 - is-decimal: 1.0.4 - is-whitespace-character: 1.0.4 - is-word-character: 1.0.4 - markdown-escapes: 1.0.4 - parse-entities: 2.0.0 - repeat-string: 1.6.1 - state-toggle: 1.0.3 - trim: 0.0.1 - trim-trailing-lines: 1.1.4 - unherit: 1.1.3 - unist-util-remove-position: 2.0.1 - vfile-location: 3.2.0 - xtend: 4.0.2 + mdast-util-mdx: 2.0.1 + micromark-extension-mdxjs: 1.0.1 + transitivePeerDependencies: + - supports-color dev: false - /remark-squeeze-paragraphs@4.0.0: - resolution: {integrity: sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==} + /remark-parse@10.0.2: + resolution: {integrity: sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==} dependencies: - mdast-squeeze-paragraphs: 4.0.0 + '@types/mdast': 3.0.11 + mdast-util-from-markdown: 1.3.1 + unified: 10.1.2 + transitivePeerDependencies: + - supports-color + dev: false + + /remark-rehype@10.1.0: + resolution: {integrity: sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==} + dependencies: + '@types/hast': 2.3.4 + '@types/mdast': 3.0.11 + mdast-util-to-hast: 12.3.0 + unified: 10.1.2 dev: false /renderkid@3.0.0: @@ -7881,11 +8573,6 @@ packages: strip-ansi: 6.0.1 dev: false - /repeat-string@1.6.1: - resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==} - engines: {node: '>=0.10'} - dev: false - /require-from-string@2.0.2: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} engines: {node: '>=0.10.0'} @@ -7899,6 +8586,10 @@ packages: resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} dev: false + /resolve-alpn@1.2.1: + resolution: {integrity: sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==} + dev: false + /resolve-from@4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} engines: {node: '>=4'} @@ -7908,18 +8599,19 @@ packages: resolution: {integrity: sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==} dev: false - /resolve@1.22.2: - resolution: {integrity: sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==} + /resolve@1.22.4: + resolution: {integrity: sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==} hasBin: true dependencies: - is-core-module: 2.12.0 + is-core-module: 2.13.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 - /responselike@1.0.2: - resolution: {integrity: sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==} + /responselike@3.0.0: + resolution: {integrity: sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==} + engines: {node: '>=14.16'} dependencies: - lowercase-keys: 1.0.1 + lowercase-keys: 3.0.0 dev: false /retry@0.13.1: @@ -7942,31 +8634,32 @@ packages: resolution: {integrity: sha512-ndEIpszUHiG4HtDsQLeIuMvRsDnn8c8rYStabochtUeCvfuvNptb5TUbVD68LRAILPX7p9nqQGh4xJgn3EHS/g==} dev: false - /rome@12.1.0: - resolution: {integrity: sha512-inIBYc2/Das6LDXcw8IQp7yeXth6Rhmj9y8sS/Y/0g5/29Lyzr785SjCmKyiN2No4MNsaP3YJNm2QZAs2UpR2w==} + /rome@12.1.3: + resolution: {integrity: sha512-e+ff72hxDpe/t5/Us7YRBVw3PBET7SeczTQNn6tvrWdrCaAw3qOukQQ+tDCkyFtS4yGsnhjrJbm43ctNbz27Yg==} engines: {node: '>=14.*'} hasBin: true requiresBuild: true optionalDependencies: - '@rometools/cli-darwin-arm64': 12.1.0 - '@rometools/cli-darwin-x64': 12.1.0 - '@rometools/cli-linux-arm64': 12.1.0 - '@rometools/cli-linux-x64': 12.1.0 - '@rometools/cli-win32-arm64': 12.1.0 - '@rometools/cli-win32-x64': 12.1.0 + '@rometools/cli-darwin-arm64': 12.1.3 + '@rometools/cli-darwin-x64': 12.1.3 + '@rometools/cli-linux-arm64': 12.1.3 + '@rometools/cli-linux-x64': 12.1.3 + '@rometools/cli-win32-arm64': 12.1.3 + '@rometools/cli-win32-x64': 12.1.3 dev: true /rtl-detect@1.0.4: resolution: {integrity: sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ==} dev: false - /rtlcss@3.5.0: - resolution: {integrity: sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==} + /rtlcss@4.1.0: + resolution: {integrity: sha512-W+N4hh0nVqVrrn3mRkHakxpB+c9cQ4CRT67O39kgA+1DjyhrdsqyCqIuHXyvWaXn4/835n+oX3fYJCi4+G/06A==} + engines: {node: '>=12.0.0'} hasBin: true dependencies: - find-up: 5.0.0 + escalade: 3.1.1 picocolors: 1.0.0 - postcss: 8.4.23 + postcss: 8.4.27 strip-json-comments: 3.1.1 dev: false @@ -7985,6 +8678,13 @@ packages: tslib: 2.5.0 dev: false + /sade@1.8.1: + resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} + engines: {node: '>=6'} + dependencies: + mri: 1.2.0 + dev: false + /safe-buffer@5.1.2: resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} dev: false @@ -8000,11 +8700,10 @@ packages: resolution: {integrity: sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==} dev: false - /scheduler@0.20.2: - resolution: {integrity: sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==} + /scheduler@0.23.0: + resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} dependencies: loose-envify: 1.4.0 - object-assign: 4.1.1 /schema-utils@2.7.0: resolution: {integrity: sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==} @@ -8015,15 +8714,6 @@ packages: ajv-keywords: 3.5.2(ajv@6.12.6) dev: false - /schema-utils@2.7.1: - resolution: {integrity: sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==} - engines: {node: '>= 8.9.0'} - dependencies: - '@types/json-schema': 7.0.11 - ajv: 6.12.6 - ajv-keywords: 3.5.2(ajv@6.12.6) - dev: false - /schema-utils@3.1.2: resolution: {integrity: sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==} engines: {node: '>= 10.13.0'} @@ -8061,16 +8751,11 @@ packages: node-forge: 1.3.1 dev: false - /semver-diff@3.1.1: - resolution: {integrity: sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==} - engines: {node: '>=8'} + /semver-diff@4.0.0: + resolution: {integrity: sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==} + engines: {node: '>=12'} dependencies: - semver: 6.3.0 - dev: false - - /semver@5.7.1: - resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==} - hasBin: true + semver: 7.5.1 dev: false /semver@6.3.0: @@ -8278,17 +8963,17 @@ packages: buffer-from: 1.1.2 source-map: 0.6.1 - /source-map@0.5.7: - resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} - engines: {node: '>=0.10.0'} - dev: false - /source-map@0.6.1: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} engines: {node: '>=0.10.0'} - /space-separated-tokens@1.1.5: - resolution: {integrity: sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==} + /source-map@0.7.4: + resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} + engines: {node: '>= 8'} + dev: false + + /space-separated-tokens@2.0.2: + resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} dev: false /spdy-transport@3.0.0: @@ -8326,10 +9011,6 @@ packages: 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: - resolution: {integrity: sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==} - dev: false - /statuses@1.5.0: resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} engines: {node: '>= 0.6'} @@ -8374,6 +9055,13 @@ packages: safe-buffer: 5.2.1 dev: false + /stringify-entities@4.0.3: + resolution: {integrity: sha512-BP9nNHMhhfcMbiuQKCqMjhDP5yBCAxsPu4pHFFzJ6Alo9dZgY4VLDPutXqIjpRiMoKdp7Av85Gr73Q5uH9k7+g==} + dependencies: + character-entities-html4: 2.1.0 + character-entities-legacy: 3.0.0 + dev: false + /stringify-object@3.3.0: resolution: {integrity: sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==} engines: {node: '>=4'} @@ -8417,8 +9105,8 @@ packages: engines: {node: '>=8'} dev: false - /style-to-object@0.3.0: - resolution: {integrity: sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==} + /style-to-object@0.4.2: + resolution: {integrity: sha512-1JGpfPB3lo42ZX8cuPrheZbfQ6kqPPnPHlKMyeRYtfKD+0jG+QsXgXN57O/dvJlzlB2elI6dGmrPnl5VPQFPaA==} dependencies: inline-style-parser: 0.1.1 dev: false @@ -8430,14 +9118,14 @@ packages: tslib: 2.5.0 dev: false - /stylehacks@5.1.1(postcss@8.4.23): + /stylehacks@5.1.1(postcss@8.4.27): resolution: {integrity: sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: browserslist: 4.21.5 - postcss: 8.4.23 + postcss: 8.4.27 postcss-selector-parser: 6.0.13 dev: false @@ -8450,8 +9138,8 @@ packages: engines: {node: '>=10.0.0'} dev: false - /sucrase@3.32.0: - resolution: {integrity: sha512-ydQOU34rpSyj2TGyz4D2p8rbktIOZ8QY9s+DGLvFU1i5pWJE8vkpruCjGCMHsdXwnD7JDcS+noSwM/a7zyNFDQ==} + /sucrase@3.34.0: + resolution: {integrity: sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==} engines: {node: '>=8'} hasBin: true dependencies: @@ -8460,7 +9148,7 @@ packages: glob: 7.1.6 lines-and-columns: 1.2.4 mz: 2.7.0 - pirates: 4.0.5 + pirates: 4.0.6 ts-interface-checker: 0.1.13 /supports-color@5.5.0: @@ -8505,17 +9193,17 @@ packages: stable: 0.1.8 dev: false - /swr@2.1.5(react@17.0.2): - resolution: {integrity: sha512-/OhfZMcEpuz77KavXST5q6XE9nrOBOVcBLWjMT+oAE/kQHyE3PASrevXCtQDZ8aamntOfFkbVJp7Il9tNBQWrw==} + /swr@2.2.0(react@18.2.0): + resolution: {integrity: sha512-AjqHOv2lAhkuUdIiBu9xbuettzAzWXmCEcLONNKJRba87WAefz8Ca9d6ds/SzrPc235n1IxWYdhJ2zF3MNUaoQ==} peerDependencies: react: ^16.11.0 || ^17.0.0 || ^18.0.0 dependencies: - react: 17.0.2 - use-sync-external-store: 1.2.0(react@17.0.2) + react: 18.2.0 + use-sync-external-store: 1.2.0(react@18.2.0) dev: false - /tailwindcss@3.3.2: - resolution: {integrity: sha512-9jPkMiIBXvPc2KywkraqsUfbfj+dHDb+JPWtSJa9MLFdrPyazI7q6WX2sUrm7R9eVR7qqv3Pas7EvQFzxKnI6w==} + /tailwindcss@3.3.3: + resolution: {integrity: sha512-A0KgSkef7eE4Mf+nKJ83i75TMyq8HqY3qmFIJSWy8bNt0v1lG7jUcpGpoTFxAwYcWOphcTBLPPJg+bDfhDf52w==} engines: {node: '>=14.0.0'} hasBin: true dependencies: @@ -8524,24 +9212,23 @@ packages: chokidar: 3.5.3 didyoumean: 1.2.2 dlv: 1.1.3 - fast-glob: 3.2.12 + fast-glob: 3.3.1 glob-parent: 6.0.2 is-glob: 4.0.3 - jiti: 1.18.2 + jiti: 1.19.1 lilconfig: 2.1.0 micromatch: 4.0.5 normalize-path: 3.0.0 object-hash: 3.0.0 picocolors: 1.0.0 - postcss: 8.4.23 - postcss-import: 15.1.0(postcss@8.4.23) - postcss-js: 4.0.1(postcss@8.4.23) - postcss-load-config: 4.0.1(postcss@8.4.23) - postcss-nested: 6.0.1(postcss@8.4.23) - postcss-selector-parser: 6.0.12 - postcss-value-parser: 4.2.0 - resolve: 1.22.2 - sucrase: 3.32.0 + postcss: 8.4.27 + postcss-import: 15.1.0(postcss@8.4.27) + postcss-js: 4.0.1(postcss@8.4.27) + postcss-load-config: 4.0.1(postcss@8.4.27) + postcss-nested: 6.0.1(postcss@8.4.27) + postcss-selector-parser: 6.0.13 + resolve: 1.22.4 + sucrase: 3.34.0 transitivePeerDependencies: - ts-node @@ -8619,11 +9306,6 @@ packages: engines: {node: '>=4'} dev: false - /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: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} @@ -8644,17 +9326,12 @@ packages: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} dev: false - /trim-trailing-lines@1.1.4: - resolution: {integrity: sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==} + /trim-lines@3.0.1: + resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} dev: false - /trim@0.0.1: - resolution: {integrity: sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==} - deprecated: Use String.prototype.trim() instead - dev: false - - /trough@1.0.5: - resolution: {integrity: sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==} + /trough@2.1.0: + resolution: {integrity: sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==} dev: false /ts-dedent@2.2.0: @@ -8669,13 +9346,17 @@ packages: resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} dev: false - /tslog@4.8.2: - resolution: {integrity: sha512-eAKIRjxfSKYLs06r1wT7oou6Uv9VN6NW9g0JPidBlqQwPBBl5+84dm7r8zSOPVq1kyfEw1P6B3/FLSpZCorAgA==} + /tslib@2.6.1: + resolution: {integrity: sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==} + dev: false + + /tslog@4.9.0: + resolution: {integrity: sha512-YEb55YxukbKO0bSAAsd9eSnw6RA0e3jt3cniZ00wj9offySAbp20lBrjOh1OTn11L51r58V4kFy8h7dMPnbpmg==} engines: {node: '>=16'} dev: false - /type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + /type-fest@1.4.0: + resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==} engines: {node: '>=10'} dev: false @@ -8698,22 +9379,15 @@ packages: is-typedarray: 1.0.0 dev: false - /typescript@5.0.4: - resolution: {integrity: sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==} - engines: {node: '>=12.20'} + /typescript@5.1.6: + resolution: {integrity: sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==} + engines: {node: '>=14.17'} hasBin: true /ua-parser-js@0.7.35: resolution: {integrity: sha512-veRf7dawaj9xaWEu9HoTVn5Pggtc/qj+kqTOFvNiN1l0YdxwC1kvel57UCjThjGa3BHBihE8/UJAHI+uQHmd/g==} dev: false - /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: resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} engines: {node: '>=4'} @@ -8737,67 +9411,60 @@ packages: engines: {node: '>=4'} dev: false - /unified@9.2.0: - resolution: {integrity: sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==} + /unified@10.1.2: + resolution: {integrity: sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==} dependencies: '@types/unist': 2.0.6 - bail: 1.0.5 + bail: 2.0.2 extend: 3.0.2 is-buffer: 2.0.5 - is-plain-obj: 2.1.0 - trough: 1.0.5 - vfile: 4.2.1 + is-plain-obj: 4.1.0 + trough: 2.1.0 + vfile: 5.3.7 dev: false - /unified@9.2.2: - resolution: {integrity: sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==} + /unique-string@3.0.0: + resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==} + engines: {node: '>=12'} dependencies: - '@types/unist': 2.0.6 - 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 + crypto-random-string: 4.0.0 dev: false - /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: - resolution: {integrity: sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==} - dev: false - - /unist-util-generated@1.1.6: - resolution: {integrity: sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==} + /unist-util-generated@2.0.1: + resolution: {integrity: sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==} dev: false /unist-util-is@4.1.0: resolution: {integrity: sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==} dev: false - /unist-util-position@3.1.0: - resolution: {integrity: sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==} - dev: false - - /unist-util-remove-position@2.0.1: - resolution: {integrity: sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==} + /unist-util-is@5.2.1: + resolution: {integrity: sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==} dependencies: - unist-util-visit: 2.0.3 + '@types/unist': 2.0.6 dev: false - /unist-util-remove@2.1.0: - resolution: {integrity: sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==} + /unist-util-position-from-estree@1.1.2: + resolution: {integrity: sha512-poZa0eXpS+/XpoQwGwl79UUdea4ol2ZuCYguVaJS4qzIOMDzbqz8a3erUCOmubSZkaOuGamb3tX790iwOIROww==} dependencies: - unist-util-is: 4.1.0 + '@types/unist': 2.0.6 dev: false - /unist-util-stringify-position@2.0.3: - resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==} + /unist-util-position@4.0.4: + resolution: {integrity: sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==} + dependencies: + '@types/unist': 2.0.6 + dev: false + + /unist-util-remove-position@4.0.2: + resolution: {integrity: sha512-TkBb0HABNmxzAcfLf4qsIbFbaPDvMO6wa3b3j4VcEzFVaw1LBKwnW4/sRJ/atSLSzoIg41JWEdnE7N6DIhGDGQ==} + dependencies: + '@types/unist': 2.0.6 + unist-util-visit: 4.1.2 + dev: false + + /unist-util-stringify-position@3.0.3: + resolution: {integrity: sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==} dependencies: '@types/unist': 2.0.6 dev: false @@ -8809,6 +9476,13 @@ packages: unist-util-is: 4.1.0 dev: false + /unist-util-visit-parents@5.1.3: + resolution: {integrity: sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==} + dependencies: + '@types/unist': 2.0.6 + unist-util-is: 5.2.1 + dev: false + /unist-util-visit@2.0.3: resolution: {integrity: sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==} dependencies: @@ -8817,6 +9491,14 @@ packages: unist-util-visit-parents: 3.1.1 dev: false + /unist-util-visit@4.1.2: + resolution: {integrity: sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==} + dependencies: + '@types/unist': 2.0.6 + unist-util-is: 5.2.1 + unist-util-visit-parents: 5.1.3 + dev: false + /universalify@2.0.0: resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} engines: {node: '>= 10.0.0'} @@ -8837,24 +9519,24 @@ packages: escalade: 3.1.1 picocolors: 1.0.0 - /update-notifier@5.1.0: - resolution: {integrity: sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==} - engines: {node: '>=10'} + /update-notifier@6.0.2: + resolution: {integrity: sha512-EDxhTEVPZZRLWYcJ4ZXjGFN0oP7qYvbXWzEgRm/Yql4dHX5wDbvh89YHP6PK1lzZJYrMtXUuZZz8XGK+U6U1og==} + engines: {node: '>=14.16'} dependencies: - boxen: 5.1.2 - chalk: 4.1.2 - configstore: 5.0.1 - has-yarn: 2.1.0 - import-lazy: 2.1.0 - is-ci: 2.0.0 + boxen: 7.1.1 + chalk: 5.3.0 + configstore: 6.0.0 + has-yarn: 3.0.0 + import-lazy: 4.0.0 + is-ci: 3.0.1 is-installed-globally: 0.4.0 - is-npm: 5.0.0 - is-yarn-global: 0.3.0 - latest-version: 5.1.0 - pupa: 2.1.1 + is-npm: 6.0.0 + is-yarn-global: 0.4.1 + latest-version: 7.0.0 + pupa: 3.1.0 semver: 7.5.1 - semver-diff: 3.1.1 - xdg-basedir: 4.0.0 + semver-diff: 4.0.0 + xdg-basedir: 5.1.0 dev: false /uri-js@4.4.1: @@ -8879,37 +9561,30 @@ packages: webpack: 5.82.1 dev: false - /url-parse-lax@3.0.0: - resolution: {integrity: sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==} - engines: {node: '>=4'} - dependencies: - prepend-http: 2.0.0 + /url-search-params-polyfill@8.2.4: + resolution: {integrity: sha512-6jWpuCn5DD+bUuqQK7yIzhE2lxkrDhxCVAj+STTl0DuBGIr3F1ptaIo14KHlngU1w5XmvhwsmH4wzSyyrZK7Tg==} dev: false - /url-search-params-polyfill@8.1.1: - resolution: {integrity: sha512-KmkCs6SjE6t4ihrfW9JelAPQIIIFbJweaaSLTh/4AO+c58JlDcb+GbdPt8yr5lRcFg4rPswRFRRhBGpWwh0K/Q==} - dev: false - - /use-breakpoint@3.0.7(react-dom@17.0.2)(react@17.0.2): - resolution: {integrity: sha512-9jAE9fY6N+PYhAMrzJ7BjYmGB1aXuizv3LiZvMPIpQKuaimc1uYAvEmpXLwmxhRujb/4uMFjj/pNso9pAGt1XQ==} + /use-breakpoint@3.1.1(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-zJ2a9sqdiOnsYwjZryOuq+SIDRP2vWsl7iWDUJ7Xid9t29zF1oLZjkEE+uRooPB/98YT+784rCFIvmKhV6VqLg==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} peerDependencies: react: '>=16.8' react-dom: '>=16.8' dependencies: - react: 17.0.2 - react-dom: 17.0.2(react@17.0.2) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) dev: false - /use-composed-ref@1.3.0(react@17.0.2): + /use-composed-ref@1.3.0(react@18.2.0): resolution: {integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: - react: 17.0.2 + react: 18.2.0 dev: false - /use-isomorphic-layout-effect@1.1.2(@types/react@18.2.6)(react@17.0.2): + /use-isomorphic-layout-effect@1.1.2(@types/react@18.2.18)(react@18.2.0): resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} peerDependencies: '@types/react': '*' @@ -8918,11 +9593,11 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.6 - react: 17.0.2 + '@types/react': 18.2.18 + react: 18.2.0 dev: false - /use-latest@1.2.1(@types/react@18.2.6)(react@17.0.2): + /use-latest@1.2.1(@types/react@18.2.18)(react@18.2.0): resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} peerDependencies: '@types/react': '*' @@ -8931,17 +9606,17 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.2.6 - react: 17.0.2 - use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.6)(react@17.0.2) + '@types/react': 18.2.18 + react: 18.2.0 + use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.18)(react@18.2.0) dev: false - /use-sync-external-store@1.2.0(react@17.0.2): + /use-sync-external-store@1.2.0(react@18.2.0): resolution: {integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: - react: 17.0.2 + react: 18.2.0 dev: false /util-deprecate@1.0.2: @@ -8970,6 +9645,17 @@ packages: hasBin: true dev: false + /uvu@0.5.6: + resolution: {integrity: sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==} + engines: {node: '>=8'} + hasBin: true + dependencies: + dequal: 2.0.3 + diff: 5.1.0 + kleur: 4.1.5 + sade: 1.8.1 + dev: false + /value-equal@1.0.1: resolution: {integrity: sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==} dev: false @@ -8979,32 +9665,35 @@ packages: engines: {node: '>= 0.8'} dev: false - /vfile-location@3.2.0: - resolution: {integrity: sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==} - dev: false - - /vfile-message@2.0.4: - resolution: {integrity: sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==} + /vfile-location@4.1.0: + resolution: {integrity: sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw==} dependencies: '@types/unist': 2.0.6 - unist-util-stringify-position: 2.0.3 + vfile: 5.3.7 dev: false - /vfile@4.2.1: - resolution: {integrity: sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==} + /vfile-message@3.1.4: + resolution: {integrity: sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==} + dependencies: + '@types/unist': 2.0.6 + unist-util-stringify-position: 3.0.3 + dev: false + + /vfile@5.3.7: + resolution: {integrity: sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==} dependencies: '@types/unist': 2.0.6 is-buffer: 2.0.5 - unist-util-stringify-position: 2.0.3 - vfile-message: 2.0.4 + unist-util-stringify-position: 3.0.3 + vfile-message: 3.1.4 dev: false - /wait-on@6.0.1: - resolution: {integrity: sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==} - engines: {node: '>=10.0.0'} + /wait-on@7.0.1: + resolution: {integrity: sha512-9AnJE9qTjRQOlTZIldAaf/da2eW0eSRSgcqq85mXQja/DW3MriHxkpODDSUEg+Gri/rKEcXUZHe+cevvYItaog==} + engines: {node: '>=12.0.0'} hasBin: true dependencies: - axios: 0.25.0 + axios: 0.27.2 joi: 17.9.2 lodash: 4.17.21 minimist: 1.2.8 @@ -9026,8 +9715,8 @@ packages: minimalistic-assert: 1.0.1 dev: false - /web-namespaces@1.1.4: - resolution: {integrity: sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==} + /web-namespaces@2.0.1: + resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==} dev: false /web-worker@1.2.0: @@ -9222,13 +9911,6 @@ packages: isexe: 2.0.0 dev: false - /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: resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==} engines: {node: '>=12'} @@ -9239,15 +9921,6 @@ packages: /wildcard@2.0.1: resolution: {integrity: sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==} - /wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - dev: false - /wrap-ansi@8.1.0: resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} engines: {node: '>=12'} @@ -9295,9 +9968,9 @@ packages: optional: true dev: false - /xdg-basedir@4.0.0: - resolution: {integrity: sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==} - engines: {node: '>=8'} + /xdg-basedir@5.1.0: + resolution: {integrity: sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ==} + engines: {node: '>=12'} dev: false /xml-js@1.6.11: @@ -9307,11 +9980,6 @@ packages: sax: 1.2.4 dev: false - /xtend@4.0.2: - resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} - engines: {node: '>=0.4'} - dev: false - /yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} dev: false @@ -9325,8 +9993,8 @@ packages: engines: {node: '>= 6'} dev: false - /yaml@2.2.2: - resolution: {integrity: sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA==} + /yaml@2.3.1: + resolution: {integrity: sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==} engines: {node: '>= 14'} /yocto-queue@0.1.0: @@ -9334,6 +10002,11 @@ packages: engines: {node: '>=10'} dev: false - /zwitch@1.0.5: - resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==} + /yocto-queue@1.0.0: + resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} + engines: {node: '>=12.20'} + dev: false + + /zwitch@2.0.4: + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} dev: false diff --git a/static/img/hardware/HT-Tracker_V1_Pin_Map.png b/static/img/hardware/HT-Tracker_V1_Pin_Map.png new file mode 100644 index 00000000..27f8c26d Binary files /dev/null and b/static/img/hardware/HT-Tracker_V1_Pin_Map.png differ diff --git a/static/img/hardware/HTIT-WB32LA(F)_V3.png b/static/img/hardware/HTIT-WB32LA(F)_V3.png new file mode 100644 index 00000000..de1ce271 Binary files /dev/null and b/static/img/hardware/HTIT-WB32LA(F)_V3.png differ diff --git a/static/img/hardware/T-BEAM-S3-Supreme.jpg b/static/img/hardware/T-BEAM-S3-Supreme.jpg new file mode 100644 index 00000000..9cff296e Binary files /dev/null and b/static/img/hardware/T-BEAM-S3-Supreme.jpg differ diff --git a/static/img/hardware/T-BEAM-S3Core.jpg b/static/img/hardware/T-BEAM-S3Core.jpg new file mode 100644 index 00000000..e66227b4 Binary files /dev/null and b/static/img/hardware/T-BEAM-S3Core.jpg differ diff --git a/static/img/modules/Serial/arduino-mini-pro-pir-wiring.png b/static/img/modules/Serial/arduino-mini-pro-pir-wiring.png new file mode 100644 index 00000000..9a2dd261 Binary files /dev/null and b/static/img/modules/Serial/arduino-mini-pro-pir-wiring.png differ diff --git a/static/img/modules/Serial/pico-pir-wiring.png b/static/img/modules/Serial/pico-pir-wiring.png new file mode 100644 index 00000000..54c2a01d Binary files /dev/null and b/static/img/modules/Serial/pico-pir-wiring.png differ diff --git a/static/img/records/kboxlabs_map.png b/static/img/records/kboxlabs_map.png new file mode 100644 index 00000000..c239cbcd Binary files /dev/null and b/static/img/records/kboxlabs_map.png differ diff --git a/static/img/records/kboxlabs_receiver.png b/static/img/records/kboxlabs_receiver.png new file mode 100644 index 00000000..48c28604 Binary files /dev/null and b/static/img/records/kboxlabs_receiver.png differ diff --git a/static/img/records/kboxlabs_sender.png b/static/img/records/kboxlabs_sender.png new file mode 100644 index 00000000..2dbae5e7 Binary files /dev/null and b/static/img/records/kboxlabs_sender.png differ diff --git a/static/img/webUI.png b/static/img/webUI.png index dc398f4d..e515b9c8 100644 Binary files a/static/img/webUI.png and b/static/img/webUI.png differ